<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html>

<head>
<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=iso-8859-1">


<meta name=Generator content="Microsoft Word 10 (filtered)">

<style>
<!--
 /* Font Definitions */
 @font-face
        {font-family:Tahoma;
        panose-1:2 11 6 4 3 5 4 4 2 4;}
 /* Style Definitions */
 p.MsoNormal, li.MsoNormal, div.MsoNormal
        {margin:0cm;
        margin-bottom:.0001pt;
        font-size:12.0pt;
        font-family:"Times New Roman";}
a:link, span.MsoHyperlink
        {color:blue;
        text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
        {color:purple;
        text-decoration:underline;}
span.emailstyle17
        {font-family:Arial;
        color:windowtext;}
span.EmailStyle18
        {font-family:Arial;
        color:navy;}
@page Section1
        {size:612.0pt 792.0pt;
        margin:72.0pt 90.0pt 72.0pt 90.0pt;}
div.Section1
        {page:Section1;}
-->
</style>

</head>

<body lang=EN-US link=blue vlink=purple>

<div class=Section1>

<p class=MsoNormal><font size=2 color=navy face=Arial><span style='font-size:
10.0pt;font-family:Arial;color:navy'>Hi </span></font><font size=2 face=Tahoma><span
style='font-size:10.0pt;font-family:Tahoma'>Thierry,</span></font></p>

<p class=MsoNormal><font size=2 face=Tahoma><span style='font-size:10.0pt;
font-family:Tahoma'> </span></font></p>

<p class=MsoNormal><font size=2 face=Tahoma><span style='font-size:10.0pt;
font-family:Tahoma'>Thank you for your suggestion. I am not sure this will cure
the problem of 2 events easily. After mouse move, the widget sends this->Interactor->Render().
If the widget is observing StartEvent on the render window, this may have been
fired by mouse move or a window resize.</span></font></p>

<p class=MsoNormal><font size=2 face=Tahoma><span style='font-size:10.0pt;
font-family:Tahoma'> </span></font></p>

<p class=MsoNormal><font size=2 face=Tahoma><span style='font-size:10.0pt;
font-family:Tahoma'>However, I can filter the ModifiedEvent sent by </span></font><font
size=2 face=Arial><span lang=EN-GB style='font-size:10.0pt;font-family:Arial'>vtkRect2DActor::SizeRect2D()
in the widget to eat it if the left mouse button is not down. Doing this just
gives 2 events when the widget is enabled which is much better.</span></font></p>

<p class=MsoNormal><font size=2 face=Arial><span lang=EN-GB style='font-size:
10.0pt;font-family:Arial'> </span></font></p>

<p class=MsoNormal><font size=2 face=Arial><span lang=EN-GB style='font-size:
10.0pt;font-family:Arial'>Thanks.</span></font></p>

<p class=MsoNormal><font size=2 face=Arial><span lang=EN-GB style='font-size:
10.0pt;font-family:Arial'> </span></font></p>

<p class=MsoNormal><font size=2 face=Arial><span lang=EN-GB style='font-size:
10.0pt;font-family:Arial'>John. </span></font></p>

<p class=MsoNormal><font size=2 color=navy face=Arial><span style='font-size:
10.0pt;font-family:Arial;color:navy'> </span></font></p>

<p class=MsoNormal style='margin-left:36.0pt'><font size=2 face=Tahoma><span
style='font-size:10.0pt;font-family:Tahoma'>-----Original Message-----<br>
<b><span style='font-weight:bold'>From:</span></b> Thierry CARRARD
[mailto:thierry.carrard@cea.fr] <br>
<b><span style='font-weight:bold'>Sent:</span></b> 19 April 2005 08:00<br>
<b><span style='font-weight:bold'>To:</span></b> 'John Platt'<br>
<b><span style='font-weight:bold'>Subject:</span></b> RE: [vtk-developers]
vtkRect2DWidget & window resize</span></font></p>

<p class=MsoNormal style='margin-left:36.0pt'><font size=3
face="Times New Roman"><span style='font-size:12.0pt'> </span></font></p>

<p class=MsoNormal style='margin-left:36.0pt'><font size=2 color=blue
face=Arial><span style='font-size:10.0pt;font-family:Arial;color:blue'>Hi,</span></font></p>

<p class=MsoNormal style='margin-left:36.0pt'><font size=3
face="Times New Roman"><span style='font-size:12.0pt'> </span></font></p>

<p class=MsoNormal style='margin-left:36.0pt'><font size=2 color=blue
face=Arial><span style='font-size:10.0pt;font-family:Arial;color:blue'>Since
window resize triggers a render, you could use the StartEvent from the render
window and track "rewin->GetSize()" changes.</span></font></p>

<p class=MsoNormal style='margin-left:36.0pt'><font size=3
face="Times New Roman"><span style='font-size:12.0pt'> </span></font></p>

<div class=MsoNormal align=center style='margin-left:36.0pt;text-align:center'><font
size=3 face="Times New Roman"><span lang=FR style='font-size:12.0pt'>

<hr size=2 width="100%" align=center>

</span></font></div>

<p class=MsoNormal style='margin-right:0cm;margin-bottom:12.0pt;margin-left:
36.0pt'><b><font size=2 face=Tahoma><span lang=FR style='font-size:10.0pt;
font-family:Tahoma;font-weight:bold'>De :</span></font></b><font size=2
face=Tahoma><span lang=FR style='font-size:10.0pt;font-family:Tahoma'>
vtk-developers-bounces@vtk.org [mailto:vtk-developers-bounces@vtk.org] <b><span
style='font-weight:bold'>De la part de</span></b> John Platt<br>
<b><span style='font-weight:bold'>Envoyé :</span></b> lundi 18 avril 2005
10:43<br>
<b><span style='font-weight:bold'>À :</span></b> vtk-developers@vtk.org<br>
<b><span style='font-weight:bold'>Objet :</span></b> [vtk-developers]
vtkRect2DWidget & window resize</span></font></p>

<p class=MsoNormal style='margin-left:36.0pt'><font size=2 face=Arial><span
lang=EN-GB style='font-size:10.0pt;font-family:Arial'>Hi,</span></font></p>

<p class=MsoNormal style='margin-left:36.0pt'><font size=3
face="Times New Roman"><span style='font-size:12.0pt'> </span></font></p>

<p class=MsoNormal style='margin-left:36.0pt'><font size=2 face=Arial><span
lang=EN-GB style='font-size:10.0pt;font-family:Arial'>Attached is a 2D widget
for interactively changing a rectangular selection in a viewport. I am
currently using it with vtkSelectVisiblePoints to specify a region for
labelling. I would like to submit this code but have a problem handling resize
of the render window.</span></font></p>

<p class=MsoNormal style='margin-left:36.0pt'><font size=3
face="Times New Roman"><span style='font-size:12.0pt'> </span></font></p>

<p class=MsoNormal style='margin-left:36.0pt'><font size=2 face=Arial><span
lang=EN-GB style='font-size:10.0pt;font-family:Arial'>The classes follow the
same model as vtkScalarBarActor & vtkScalarBarWidget. Changes in the
rectangle actor due to mouse interaction events are caught by the widget but I
can’t find an event to observe for resizing the window. The present
solution is for vtkRect2DActor::SizeRect2D() to send a Modified event to the
widget which then invokes a Modified event for observers of the widget. The
problem is that any interaction with the widget now fires 2 events, an
Interaction event and a Modified event. I would be grateful for suggestions on
alternative solutions.</span></font></p>

<p class=MsoNormal style='margin-left:36.0pt'><font size=3
face="Times New Roman"><span style='font-size:12.0pt'> </span></font></p>

<p class=MsoNormal style='margin-left:36.0pt'><font size=2 face=Arial><span
lang=EN-GB style='font-size:10.0pt;font-family:Arial'>There is also a minor
problem with the cursor shape changing as it passes over the rectangle when
interacting with the camera (this is also a feature of vtkScalarBarWidget).</span></font></p>

<p class=MsoNormal style='margin-left:36.0pt'><font size=3
face="Times New Roman"><span style='font-size:12.0pt'> </span></font></p>

<p class=MsoNormal style='margin-left:36.0pt'><font size=2 face=Arial><span
lang=EN-GB style='font-size:10.0pt;font-family:Arial'>I have also noticed that
the bottom right pixel of the rectangle frame is always missing. I am hoping
this is a problem with my graphics card.</span></font></p>

<p class=MsoNormal style='margin-left:36.0pt'><font size=3
face="Times New Roman"><span style='font-size:12.0pt'> </span></font></p>

<p class=MsoNormal style='margin-left:36.0pt'><font size=2 face=Arial><span
lang=EN-GB style='font-size:10.0pt;font-family:Arial'>Any other comments are
also welcomed.</span></font></p>

<p class=MsoNormal style='margin-left:36.0pt'><font size=3
face="Times New Roman"><span style='font-size:12.0pt'> </span></font></p>

<p class=MsoNormal style='margin-left:36.0pt'><font size=2 face=Arial><span
lang=EN-GB style='font-size:10.0pt;font-family:Arial'>John. </span></font></p>

<p class=MsoNormal style='margin-left:36.0pt'><font size=3
face="Times New Roman"><span style='font-size:12.0pt'> </span></font></p>

<p class=MsoNormal style='margin-left:36.0pt'><font size=3
face="Times New Roman"><span style='font-size:12.0pt'> </span></font></p>

</div>

</body>

</html>