<html xmlns:v="urn:schemas-microsoft-com:vml" xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:w="urn:schemas-microsoft-com:office:word" xmlns="http://www.w3.org/TR/REC-html40">
<head>
<meta http-equiv=Content-Type content="text/html; charset=iso-8859-1">
<meta name=Generator content="Microsoft Word 11 (filtered medium)">
<!--[if !mso]>
<style>
v\:* {behavior:url(#default#VML);}
o\:* {behavior:url(#default#VML);}
w\:* {behavior:url(#default#VML);}
.shape {behavior:url(#default#VML);}
</style>
<![endif]-->
<style>
<!--
/* Font Definitions */
@font-face
        {font-family:Tahoma;
        panose-1:2 11 6 4 3 5 4 4 2 4;}
@font-face
        {font-family:Calibri;
        panose-1:2 15 5 2 2 2 4 3 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:blue;
        text-decoration:underline;}
p
        {mso-margin-top-alt:auto;
        margin-right:0cm;
        mso-margin-bottom-alt:auto;
        margin-left:0cm;
        font-size:12.0pt;
        font-family:"Times New Roman";}
span.EmailStyle18
        {mso-style-type:personal;
        font-family:Arial;
        color:navy;}
span.EmailStyle19
        {mso-style-type:personal-reply;
        font-family:Arial;
        color:navy;}
@page Section1
        {size:595.3pt 841.9pt;
        margin:70.85pt 70.85pt 70.85pt 70.85pt;}
div.Section1
        {page:Section1;}
-->
</style>
</head>
<body lang=FR link=blue vlink=blue>
<div class=Section1>
<p class=MsoNormal><font size=2 color=navy face=Arial><span lang=EN-GB
style='font-size:10.0pt;font-family:Arial;color:navy'>If I comment this line:<o:p></o:p></span></font></p>
<p class=MsoNormal><font size=2 color=navy face=Arial><span lang=EN-GB
style='font-size:10.0pt;font-family:Arial;color:navy'>==<o:p></o:p></span></font></p>
<p class=MsoNormal><font size=2 color=navy face=Arial><span lang=EN-GB
style='font-size:10.0pt;font-family:Arial;color:navy'>renWin->SetParentId(hWnd);
//<-- hWnd : handle of my windows where I display my rendering<o:p></o:p></span></font></p>
<p class=MsoNormal><font size=2 color=navy face=Arial><span lang=EN-GB
style='font-size:10.0pt;font-family:Arial;color:navy'>==<o:p></o:p></span></font></p>
<p class=MsoNormal><font size=2 color=navy face=Arial><span lang=EN-GB
style='font-size:10.0pt;font-family:Arial;color:navy'>I intercept all events
!!!<o:p></o:p></span></font></p>
<p class=MsoNormal><font size=2 color=navy face=Arial><span lang=EN-GB
style='font-size:10.0pt;font-family:Arial;color:navy'><o:p> </o:p></span></font></p>
<p class=MsoNormal><font size=2 color=navy face=Arial><span lang=EN-GB
style='font-size:10.0pt;font-family:Arial;color:navy'>In fact, I create a view
under my MFC project. Then I call my C++ method with handle of my View.<o:p></o:p></span></font></p>
<p class=MsoNormal><font size=2 color=navy face=Arial><span lang=EN-GB
style='font-size:10.0pt;font-family:Arial;color:navy'>I don’t understand why
if I display the rendered on my window (View under MFC) I can’t capture
events?<o:p></o:p></span></font></p>
<p class=MsoNormal><font size=2 color=navy face=Arial><span lang=EN-GB
style='font-size:10.0pt;font-family:Arial;color:navy'><o:p> </o:p></span></font></p>
<p class=MsoNormal><font size=2 color=navy face=Arial><span lang=EN-GB
style='font-size:10.0pt;font-family:Arial;color:navy'>Any Idea.<o:p></o:p></span></font></p>
<p class=MsoNormal><font size=2 color=navy face=Arial><span lang=EN-GB
style='font-size:10.0pt;font-family:Arial;color:navy'><o:p> </o:p></span></font></p>
<p class=MsoNormal><font size=2 color=navy face=Arial><span lang=EN-GB
style='font-size:10.0pt;font-family:Arial;color:navy'><o:p> </o:p></span></font></p>
<div>
<div class=MsoNormal align=center style='text-align:center'><font size=3
face="Times New Roman"><span style='font-size:12.0pt'>
<hr size=2 width="100%" align=center tabindex=-1>
</span></font></div>
<p class=MsoNormal><b><font size=2 face=Tahoma><span lang=EN-GB
style='font-size:10.0pt;font-family:Tahoma;font-weight:bold'>De :</span></font></b><font
size=2 face=Tahoma><span lang=EN-GB style='font-size:10.0pt;font-family:Tahoma'>
toulgen [mailto:toulgen@gmail.com] <br>
<b><span style='font-weight:bold'>Envoyé :</span></b> lundi 6 juillet 2009
15:33<br>
<b><span style='font-weight:bold'>À </span></b></span></font><b><font
size=2 face=Tahoma><span style='font-size:10.0pt;font-family:Tahoma;font-weight:
bold'>:</span></font></b><font size=2 face=Tahoma><span style='font-size:10.0pt;
font-family:Tahoma'> 'Will Schroeder'<br>
<b><span style='font-weight:bold'>Cc :</span></b> 'vtkusers@vtk.org'<br>
<b><span style='font-weight:bold'>Objet :</span></b> RE: [vtk-users]
capture mouse event</span></font><o:p></o:p></p>
</div>
<p class=MsoNormal><font size=3 face="Times New Roman"><span style='font-size:
12.0pt'><o:p> </o:p></span></font></p>
<p class=MsoNormal><font size=2 color=navy face=Arial><span lang=EN-GB
style='font-size:10.0pt;font-family:Arial;color:navy'>No, I don’t receive
answer.<o:p></o:p></span></font></p>
<p class=MsoNormal><font size=2 color=navy face=Arial><span lang=EN-GB
style='font-size:10.0pt;font-family:Arial;color:navy'><o:p> </o:p></span></font></p>
<p class=MsoNormal><font size=2 color=navy face=Arial><span lang=EN-GB
style='font-size:10.0pt;font-family:Arial;color:navy'>I try this code :<o:p></o:p></span></font></p>
<p class=MsoNormal><font size=2 color=navy face=Arial><span lang=EN-GB
style='font-size:10.0pt;font-family:Arial;color:navy'><o:p> </o:p></span></font></p>
<p class=MsoNormal><font size=2 color=navy face=Arial><span lang=EN-GB
style='font-size:10.0pt;font-family:Arial;color:navy'>My code:<o:p></o:p></span></font></p>
<p class=MsoNormal><font size=2 color=navy face=Arial><span lang=EN-GB
style='font-size:10.0pt;font-family:Arial;color:navy'>========<o:p></o:p></span></font></p>
<p class=MsoNormal><font size=2 color=navy face=Arial><span lang=EN-GB
style='font-size:10.0pt;font-family:Arial;color:navy'>vtkConeSource *cone =
vtkConeSource::New();<o:p></o:p></span></font></p>
<p class=MsoNormal><font size=2 color=navy face=Arial><span lang=EN-GB
style='font-size:10.0pt;font-family:Arial;color:navy'>cone->SetHeight( 3.0
);<o:p></o:p></span></font></p>
<p class=MsoNormal><font size=2 color=navy face=Arial><span lang=EN-GB
style='font-size:10.0pt;font-family:Arial;color:navy'>cone->SetRadius( 1.0
);<o:p></o:p></span></font></p>
<p class=MsoNormal><font size=2 color=navy face=Arial><span lang=EN-GB
style='font-size:10.0pt;font-family:Arial;color:navy'>cone->SetResolution(
10 );<o:p></o:p></span></font></p>
<p class=MsoNormal><font size=2 color=navy face=Arial><span lang=EN-GB
style='font-size:10.0pt;font-family:Arial;color:navy'><o:p> </o:p></span></font></p>
<p class=MsoNormal><font size=2 color=navy face=Arial><span lang=EN-GB
style='font-size:10.0pt;font-family:Arial;color:navy'>vtkPolyDataMapper
*coneMapper = vtkPolyDataMapper::New();<o:p></o:p></span></font></p>
<p class=MsoNormal><font size=2 color=navy face=Arial><span lang=EN-GB
style='font-size:10.0pt;font-family:Arial;color:navy'>coneMapper->SetInputConnection(
cone->GetOutputPort() );<o:p></o:p></span></font></p>
<p class=MsoNormal><font size=2 color=navy face=Arial><span lang=EN-GB
style='font-size:10.0pt;font-family:Arial;color:navy'><o:p> </o:p></span></font></p>
<p class=MsoNormal><font size=2 color=navy face=Arial><span lang=EN-GB
style='font-size:10.0pt;font-family:Arial;color:navy'>vtkActor *coneActor =
vtkActor::New();<o:p></o:p></span></font></p>
<p class=MsoNormal><font size=2 color=navy face=Arial><span lang=EN-GB
style='font-size:10.0pt;font-family:Arial;color:navy'>coneActor->SetMapper(
coneMapper );<o:p></o:p></span></font></p>
<p class=MsoNormal><font size=2 color=navy face=Arial><span lang=EN-GB
style='font-size:10.0pt;font-family:Arial;color:navy'><o:p> </o:p></span></font></p>
<p class=MsoNormal><font size=2 color=navy face=Arial><span lang=EN-GB
style='font-size:10.0pt;font-family:Arial;color:navy'><o:p> </o:p></span></font></p>
<p class=MsoNormal><font size=2 color=navy face=Arial><span lang=EN-GB
style='font-size:10.0pt;font-family:Arial;color:navy'>vtkRenderer *ren1=
vtkRenderer::New();<o:p></o:p></span></font></p>
<p class=MsoNormal><font size=2 color=navy face=Arial><span lang=EN-GB
style='font-size:10.0pt;font-family:Arial;color:navy'>ren1->AddActor(
coneActor );<o:p></o:p></span></font></p>
<p class=MsoNormal><font size=2 color=navy face=Arial><span lang=EN-GB
style='font-size:10.0pt;font-family:Arial;color:navy'>ren1->AddActor(
coneActor2 );<o:p></o:p></span></font></p>
<p class=MsoNormal><font size=2 color=navy face=Arial><span lang=EN-GB
style='font-size:10.0pt;font-family:Arial;color:navy'>ren1->SetBackground(
0.1, 0.2, 0.4 );<o:p></o:p></span></font></p>
<p class=MsoNormal><font size=2 color=navy face=Arial><span lang=EN-GB
style='font-size:10.0pt;font-family:Arial;color:navy'><o:p> </o:p></span></font></p>
<p class=MsoNormal><font size=2 color=navy face=Arial><span lang=EN-GB
style='font-size:10.0pt;font-family:Arial;color:navy'>vtkRenderWindow *renWin =
vtkRenderWindow::New();<o:p></o:p></span></font></p>
<p class=MsoNormal><font size=2 color=navy face=Arial><span lang=EN-GB
style='font-size:10.0pt;font-family:Arial;color:navy'>renWin->AddRenderer(
ren1 );<o:p></o:p></span></font></p>
<p class=MsoNormal><font size=2 color=navy face=Arial><span lang=EN-GB
style='font-size:10.0pt;font-family:Arial;color:navy'>renWin->SetSize( 300,
300 );<o:p></o:p></span></font></p>
<p class=MsoNormal><font size=2 color=navy face=Arial><span lang=EN-GB
style='font-size:10.0pt;font-family:Arial;color:navy'>renWin->SetParentId(hWnd);
//<-- hWnd : handle of my windows where I display my rendering<o:p></o:p></span></font></p>
<p class=MsoNormal><font size=2 color=navy face=Arial><span lang=EN-GB
style='font-size:10.0pt;font-family:Arial;color:navy'> <o:p></o:p></span></font></p>
<p class=MsoNormal><font size=2 color=navy face=Arial><span lang=EN-GB
style='font-size:10.0pt;font-family:Arial;color:navy'>vtkRenderWindowInteractor
*iren = vtkRenderWindowInteractor::New();<o:p></o:p></span></font></p>
<p class=MsoNormal><font size=2 color=navy face=Arial><span lang=EN-GB
style='font-size:10.0pt;font-family:Arial;color:navy'>iren->SetRenderWindow(renWin);<o:p></o:p></span></font></p>
<p class=MsoNormal><font size=2 color=navy face=Arial><span lang=EN-GB
style='font-size:10.0pt;font-family:Arial;color:navy'><o:p> </o:p></span></font></p>
<p class=MsoNormal><font size=2 color=navy face=Arial><span lang=EN-GB
style='font-size:10.0pt;font-family:Arial;color:navy'>vtkMyCallback *callb =
vtkMyCallback::New();<o:p></o:p></span></font></p>
<p class=MsoNormal><font size=2 color=navy face=Arial><span lang=EN-GB
style='font-size:10.0pt;font-family:Arial;color:navy'>vtkInteractorStyleUser
*style = vtkInteractorStyleUser::New();<o:p></o:p></span></font></p>
<p class=MsoNormal><font size=2 color=navy face=Arial><span lang=EN-GB
style='font-size:10.0pt;font-family:Arial;color:navy'>style->AddObserver(vtkCommand::AnyEvent,
callb);<o:p></o:p></span></font></p>
<p class=MsoNormal><font size=2 color=navy face=Arial><span lang=EN-GB
style='font-size:10.0pt;font-family:Arial;color:navy'>iren->SetInteractorStyle(style);<o:p></o:p></span></font></p>
<p class=MsoNormal><font size=2 color=navy face=Arial><span lang=EN-GB
style='font-size:10.0pt;font-family:Arial;color:navy'> <o:p></o:p></span></font></p>
<p class=MsoNormal><font size=2 color=navy face=Arial><span lang=EN-GB
style='font-size:10.0pt;font-family:Arial;color:navy'>iren->Initialize();<o:p></o:p></span></font></p>
<p class=MsoNormal><font size=2 color=navy face=Arial><span lang=EN-GB
style='font-size:10.0pt;font-family:Arial;color:navy'>//iren->Start();
//<- Not used<o:p></o:p></span></font></p>
<p class=MsoNormal><font size=2 color=navy face=Arial><span lang=EN-GB
style='font-size:10.0pt;font-family:Arial;color:navy'><o:p> </o:p></span></font></p>
<p class=MsoNormal><font size=2 color=navy face=Arial><span lang=EN-GB
style='font-size:10.0pt;font-family:Arial;color:navy'><o:p> </o:p></span></font></p>
<p class=MsoNormal><font size=2 color=navy face=Arial><span lang=EN-GB
style='font-size:10.0pt;font-family:Arial;color:navy'><o:p> </o:p></span></font></p>
<p class=MsoNormal><font size=2 color=navy face=Arial><span lang=EN-GB
style='font-size:10.0pt;font-family:Arial;color:navy'>vtkMyCallback Class:<o:p></o:p></span></font></p>
<p class=MsoNormal><font size=2 color=navy face=Arial><span lang=EN-GB
style='font-size:10.0pt;font-family:Arial;color:navy'>====================<o:p></o:p></span></font></p>
<p class=MsoNormal><font size=2 color=navy face=Arial><span lang=EN-GB
style='font-size:10.0pt;font-family:Arial;color:navy'>class vtkMyCallback :
public vtkCommand<o:p></o:p></span></font></p>
<p class=MsoNormal><font size=2 color=navy face=Arial><span lang=EN-GB
style='font-size:10.0pt;font-family:Arial;color:navy'>{<o:p></o:p></span></font></p>
<p class=MsoNormal><font size=2 color=navy face=Arial><span lang=EN-GB
style='font-size:10.0pt;font-family:Arial;color:navy'>public:<o:p></o:p></span></font></p>
<p class=MsoNormal><font size=2 color=navy face=Arial><span lang=EN-GB
style='font-size:10.0pt;font-family:Arial;color:navy'> static
vtkMyCallback *New() <o:p></o:p></span></font></p>
<p class=MsoNormal><font size=2 color=navy face=Arial><span lang=EN-GB
style='font-size:10.0pt;font-family:Arial;color:navy'> { <o:p></o:p></span></font></p>
<p class=MsoNormal><font size=2 color=navy face=Arial><span lang=EN-GB
style='font-size:10.0pt;font-family:Arial;color:navy'>
<o:p></o:p></span></font></p>
<p class=MsoNormal><font size=2 color=navy face=Arial><span lang=EN-GB
style='font-size:10.0pt;font-family:Arial;color:navy'>
return new vtkMyCallback; <o:p></o:p></span></font></p>
<p class=MsoNormal><font size=2 color=navy face=Arial><span lang=EN-GB
style='font-size:10.0pt;font-family:Arial;color:navy'> }<o:p></o:p></span></font></p>
<p class=MsoNormal><font size=2 color=navy face=Arial><span lang=EN-GB
style='font-size:10.0pt;font-family:Arial;color:navy'><o:p> </o:p></span></font></p>
<p class=MsoNormal><font size=2 color=navy face=Arial><span lang=EN-GB
style='font-size:10.0pt;font-family:Arial;color:navy'> virtual void
Execute(vtkObject *caller, unsigned long Id, void* ptVal)<o:p></o:p></span></font></p>
<p class=MsoNormal><font size=2 color=navy face=Arial><span lang=EN-GB
style='font-size:10.0pt;font-family:Arial;color:navy'> {<o:p></o:p></span></font></p>
<p class=MsoNormal><font size=2 color=navy face=Arial><span lang=EN-GB
style='font-size:10.0pt;font-family:Arial;color:navy'>
vtkInteractorStyleUser *style = static_cast< vtkInteractorStyleUser*
>(caller);<o:p></o:p></span></font></p>
<p class=MsoNormal><font size=2 color=navy face=Arial><span lang=EN-GB
style='font-size:10.0pt;font-family:Arial;color:navy'><o:p> </o:p></span></font></p>
<p class=MsoNormal><font size=2 color=navy face=Arial><span lang=EN-GB
style='font-size:10.0pt;font-family:Arial;color:navy'>
switch( Id)<o:p></o:p></span></font></p>
<p class=MsoNormal><font size=2 color=navy face=Arial><span lang=EN-GB
style='font-size:10.0pt;font-family:Arial;color:navy'>
{ <o:p></o:p></span></font></p>
<p class=MsoNormal><font size=2 color=navy face=Arial><span lang=EN-GB
style='font-size:10.0pt;font-family:Arial;color:navy'>
case vtkCommand::CharEvent: // <-- Never captured event <o:p></o:p></span></font></p>
<p class=MsoNormal><font size=2 color=navy face=Arial><span lang=EN-GB
style='font-size:10.0pt;font-family:Arial;color:navy'>
switch( style->GetChar() )<o:p></o:p></span></font></p>
<p class=MsoNormal><font size=2 color=navy face=Arial><span lang=EN-GB
style='font-size:10.0pt;font-family:Arial;color:navy'>
{ <o:p></o:p></span></font></p>
<p class=MsoNormal><font size=2 color=navy face=Arial><span lang=EN-GB
style='font-size:10.0pt;font-family:Arial;color:navy'>
case 'h': <o:p></o:p></span></font></p>
<p class=MsoNormal><font size=2 color=navy face=Arial><span lang=EN-GB
style='font-size:10.0pt;font-family:Arial;color:navy'>
OutputDebugString("*********** >>> h <<<**************
\n\n\n");<o:p></o:p></span></font></p>
<p class=MsoNormal><font size=2 color=navy face=Arial><span lang=EN-GB
style='font-size:10.0pt;font-family:Arial;color:navy'>
break; <o:p></o:p></span></font></p>
<p class=MsoNormal><font size=2 color=navy face=Arial><span lang=EN-GB
style='font-size:10.0pt;font-family:Arial;color:navy'>
} <o:p></o:p></span></font></p>
<p class=MsoNormal><font size=2 color=navy face=Arial><span lang=EN-GB
style='font-size:10.0pt;font-family:Arial;color:navy'>
break; <o:p></o:p></span></font></p>
<p class=MsoNormal><font size=2 color=navy face=Arial><span lang=EN-GB
style='font-size:10.0pt;font-family:Arial;color:navy'><o:p> </o:p></span></font></p>
<p class=MsoNormal><font size=2 color=navy face=Arial><span lang=EN-GB
style='font-size:10.0pt;font-family:Arial;color:navy'>
case vtkCommand::MouseWheelBackwardEvent: // <-- Never captured event<o:p></o:p></span></font></p>
<p class=MsoNormal><font size=2 color=navy face=Arial><span lang=EN-GB
style='font-size:10.0pt;font-family:Arial;color:navy'>
OutputDebugString("MouseWheelBackwardEvent \n");<o:p></o:p></span></font></p>
<p class=MsoNormal><font size=2 color=navy face=Arial><span lang=EN-GB
style='font-size:10.0pt;font-family:Arial;color:navy'>
break;<o:p></o:p></span></font></p>
<p class=MsoNormal><font size=2 color=navy face=Arial><span lang=EN-GB
style='font-size:10.0pt;font-family:Arial;color:navy'><o:p> </o:p></span></font></p>
<p class=MsoNormal><font size=2 color=navy face=Arial><span lang=EN-GB
style='font-size:10.0pt;font-family:Arial;color:navy'>
case vtkCommand::MouseWheelForwardEvent: // <-- Never captured event<o:p></o:p></span></font></p>
<p class=MsoNormal><font size=2 color=navy face=Arial><span lang=EN-GB
style='font-size:10.0pt;font-family:Arial;color:navy'>
OutputDebugString("MouseWheelForwardEvent \n");<o:p></o:p></span></font></p>
<p class=MsoNormal><font size=2 color=navy face=Arial><span lang=EN-GB
style='font-size:10.0pt;font-family:Arial;color:navy'>
break;<o:p></o:p></span></font></p>
<p class=MsoNormal><font size=2 color=navy face=Arial><span lang=EN-GB
style='font-size:10.0pt;font-family:Arial;color:navy'><o:p> </o:p></span></font></p>
<p class=MsoNormal><font size=2 color=navy face=Arial><span lang=EN-GB
style='font-size:10.0pt;font-family:Arial;color:navy'>
case vtkCommand::MouseMoveEvent: // <-- OK<o:p></o:p></span></font></p>
<p class=MsoNormal><font size=2 color=navy face=Arial><span lang=EN-GB
style='font-size:10.0pt;font-family:Arial;color:navy'>
OutputDebugString("MouseMoveEvent\n");<o:p></o:p></span></font></p>
<p class=MsoNormal><font size=2 color=navy face=Arial><span lang=EN-GB
style='font-size:10.0pt;font-family:Arial;color:navy'>
break;<o:p></o:p></span></font></p>
<p class=MsoNormal><font size=2 color=navy face=Arial><span lang=EN-GB
style='font-size:10.0pt;font-family:Arial;color:navy'><o:p> </o:p></span></font></p>
<p class=MsoNormal><font size=2 color=navy face=Arial><span lang=EN-GB
style='font-size:10.0pt;font-family:Arial;color:navy'>
case vtkCommand::LeftButtonPressEvent: // <-- OK<o:p></o:p></span></font></p>
<p class=MsoNormal><font size=2 color=navy face=Arial><span lang=EN-GB
style='font-size:10.0pt;font-family:Arial;color:navy'>
OutputDebugString("LeftButtonPressEvent \n");<o:p></o:p></span></font></p>
<p class=MsoNormal><font size=2 color=navy face=Arial><span lang=EN-GB
style='font-size:10.0pt;font-family:Arial;color:navy'>
break;<o:p></o:p></span></font></p>
<p class=MsoNormal><font size=2 color=navy face=Arial><span lang=EN-GB
style='font-size:10.0pt;font-family:Arial;color:navy'><o:p> </o:p></span></font></p>
<p class=MsoNormal><font size=2 color=navy face=Arial><span lang=EN-GB
style='font-size:10.0pt;font-family:Arial;color:navy'>
case vtkCommand::RightButtonPressEvent: // <-- OK<o:p></o:p></span></font></p>
<p class=MsoNormal><font size=2 color=navy face=Arial><span lang=EN-GB
style='font-size:10.0pt;font-family:Arial;color:navy'>
OutputDebugString("RightButtonPressEvent \n");<o:p></o:p></span></font></p>
<p class=MsoNormal><font size=2 color=navy face=Arial><span lang=EN-GB
style='font-size:10.0pt;font-family:Arial;color:navy'>
break;<o:p></o:p></span></font></p>
<p class=MsoNormal><font size=2 color=navy face=Arial><span lang=EN-GB
style='font-size:10.0pt;font-family:Arial;color:navy'>
} <o:p></o:p></span></font></p>
<p class=MsoNormal><font size=2 color=navy face=Arial><span lang=EN-GB
style='font-size:10.0pt;font-family:Arial;color:navy'> }<o:p></o:p></span></font></p>
<p class=MsoNormal><font size=2 color=navy face=Arial><span lang=EN-GB
style='font-size:10.0pt;font-family:Arial;color:navy'>};<o:p></o:p></span></font></p>
<p class=MsoNormal><font size=2 color=navy face=Arial><span lang=EN-GB
style='font-size:10.0pt;font-family:Arial;color:navy'><o:p> </o:p></span></font></p>
<p class=MsoNormal><font size=2 color=navy face=Arial><span lang=EN-GB
style='font-size:10.0pt;font-family:Arial;color:navy'><o:p> </o:p></span></font></p>
<p class=MsoNormal><font size=2 color=navy face=Arial><span lang=EN-GB
style='font-size:10.0pt;font-family:Arial;color:navy'>I can intercept
MouseMoveEvent, LeftButtonPressEvent and RightButtonPressEvent events. But
never with this events: MouseWheelBackwardEvent, MouseWheelForwardEvent and
CharEvent.<o:p></o:p></span></font></p>
<p class=MsoNormal><font size=2 color=navy face=Arial><span lang=EN-GB
style='font-size:10.0pt;font-family:Arial;color:navy'><o:p> </o:p></span></font></p>
<p class=MsoNormal><font size=2 color=navy face=Arial><span lang=EN-GB
style='font-size:10.0pt;font-family:Arial;color:navy'>Have you any idea ? or
examples ?<o:p></o:p></span></font></p>
<p class=MsoNormal><font size=2 color=navy face=Arial><span lang=EN-GB
style='font-size:10.0pt;font-family:Arial;color:navy'><o:p> </o:p></span></font></p>
<p class=MsoNormal><font size=2 color=navy face=Arial><span lang=EN-GB
style='font-size:10.0pt;font-family:Arial;color:navy'>Thank you,<o:p></o:p></span></font></p>
<p class=MsoNormal><font size=2 color=navy face=Arial><span lang=EN-GB
style='font-size:10.0pt;font-family:Arial;color:navy'>ToulGen<o:p></o:p></span></font></p>
<div>
<div class=MsoNormal align=center style='text-align:center'><font size=3
face="Times New Roman"><span style='font-size:12.0pt'>
<hr size=2 width="100%" align=center tabindex=-1>
</span></font></div>
<p class=MsoNormal><b><font size=2 face=Tahoma><span style='font-size:10.0pt;
font-family:Tahoma;font-weight:bold'>De :</span></font></b><font size=2
face=Tahoma><span style='font-size:10.0pt;font-family:Tahoma'> Will Schroeder
[mailto:will.schroeder@kitware.com] <br>
<b><span style='font-weight:bold'>Envoyé :</span></b> mercredi 1 juillet
2009 12:53<br>
<b><span style='font-weight:bold'>À :</span></b> toulgen<br>
<b><span style='font-weight:bold'>Objet :</span></b> Re: [vtk-developers]
capture mouse event</span></font><o:p></o:p></p>
</div>
<p class=MsoNormal><font size=3 face="Times New Roman"><span style='font-size:
12.0pt'><o:p> </o:p></span></font></p>
<p class=MsoNormal style='margin-bottom:12.0pt'><font size=3
face="Times New Roman"><span style='font-size:12.0pt'>Did you receive an
answer? If not you have some studying to do :-) You will want to start with the
interactor styles.<br>
<br>
Will<o:p></o:p></span></font></p>
<div>
<p class=MsoNormal><font size=3 face="Times New Roman"><span style='font-size:
12.0pt'>On Thu, Jun 25, 2009 at 11:20 AM, toulgen <<a
href="mailto:toulgen@gmail.com">toulgen@gmail.com</a>> wrote:<o:p></o:p></span></font></p>
<div link=blue vlink=purple>
<div>
<p><font size=2 face=Arial><span style='font-size:10.0pt;font-family:Arial'>Hi,</span></font><o:p></o:p></p>
<p><font size=2 face=Arial><span style='font-size:10.0pt;font-family:Arial'> </span></font><o:p></o:p></p>
<p><font size=2 face=Arial><span lang=EN-GB style='font-size:10.0pt;font-family:
Arial'>I use this pipeline to render volume.</span></font><o:p></o:p></p>
<p><font size=2 face=Arial><span lang=EN-GB style='font-size:10.0pt;font-family:
Arial'> </span></font><o:p></o:p></p>
<p><font size=2 face=Arial><span lang=EN-GB style='font-size:10.0pt;font-family:
Arial'>My question is: how I can capture a mouse event? I want to zoom in/zoom
out my volume with mouse wheel scrolls.</span></font><o:p></o:p></p>
<p><font size=2 face=Arial><span lang=EN-GB style='font-size:10.0pt;font-family:
Arial'> </span></font><o:p></o:p></p>
<p><font size=2 face=Arial><span lang=EN-GB style='font-size:10.0pt;font-family:
Arial'>Thx,</span></font><o:p></o:p></p>
<p><font size=2 face=Arial><span lang=EN-GB style='font-size:10.0pt;font-family:
Arial'>ToulGen</span></font><o:p></o:p></p>
<p><font size=2 face=Arial><span lang=EN-GB style='font-size:10.0pt;font-family:
Arial'> </span></font><o:p></o:p></p>
<p><font size=3 color=black face=Calibri><span lang=EN-GB style='font-size:
12.0pt;font-family:Calibri;color:black'>My code :</span></font><o:p></o:p></p>
<p><font size=3 color=black face=Calibri><span lang=EN-GB style='font-size:
12.0pt;font-family:Calibri;color:black'>========</span></font><o:p></o:p></p>
<p><font size=3 face="Times New Roman"><span lang=EN-GB style='font-size:12.0pt'>
this->m_vtkpRendererVolume = vtkRenderer::New();</span><o:p></o:p></font></p>
<p><font size=3 face="Times New Roman"><span lang=EN-GB style='font-size:12.0pt'> </span><o:p></o:p></font></p>
<p><font size=3 face="Times New Roman"><span lang=EN-GB style='font-size:12.0pt'>
this->m_vtkpRenWin = vtkRenderWindow::New();</span><o:p></o:p></font></p>
<p><font size=3 face="Times New Roman"><span lang=EN-GB style='font-size:12.0pt'>
this->m_vtkpRenWin->DoubleBufferOn();</span><o:p></o:p></font></p>
<p><font size=3 face="Times New Roman"><span lang=EN-GB style='font-size:12.0pt'>
this->m_vtkpRenWin->SetDesiredUpdateRate(1);</span><o:p></o:p></font></p>
<p><font size=3 face="Times New Roman"><span lang=EN-GB style='font-size:12.0pt'>
this->m_vtkpRenWin->SetSize(this->m_Width, this->m_Height);</span><o:p></o:p></font></p>
<p><font size=3 face="Times New Roman"><span lang=EN-GB style='font-size:12.0pt'>
this->m_vtkpRenWin->AddRenderer( this->m_vtkpRendererVolume );</span><o:p></o:p></font></p>
<p><font size=3 face="Times New Roman"><span lang=EN-GB style='font-size:12.0pt'> </span><o:p></o:p></font></p>
<p><font size=3 face="Times New Roman"><span lang=EN-GB style='font-size:12.0pt'>
this->m_vtkpRenWin ->SetParentId(hWnd); </span><o:p></o:p></font></p>
<p><font size=3 face="Times New Roman"><span lang=EN-GB style='font-size:12.0pt'>
</span><o:p></o:p></font></p>
<p><font size=3 face="Times New Roman"><span lang=EN-GB style='font-size:12.0pt'>
// Make interactive</span><o:p></o:p></font></p>
<p><font size=3 face="Times New Roman"><span lang=EN-GB style='font-size:12.0pt'>
vtkRenderWindowInteractor *iren = vtkRenderWindowInteractor::New();</span><o:p></o:p></font></p>
<p><font size=3 face="Times New Roman"><span lang=EN-GB style='font-size:12.0pt'>
iren->SetStillUpdateRate(1); </span><o:p></o:p></font></p>
<p><font size=3 face="Times New Roman"><span lang=EN-GB style='font-size:12.0pt'>
iren->SetDesiredUpdateRate(10); </span><o:p></o:p></font></p>
<p><font size=3 face="Times New Roman"><span lang=EN-GB style='font-size:12.0pt'>
iren->SetRenderWindow(this->m_vtkpRenWin);</span><o:p></o:p></font></p>
<p><font size=3 face="Times New Roman"><span lang=EN-GB style='font-size:12.0pt'> </span><o:p></o:p></font></p>
<p><font size=3 face="Times New Roman"><span lang=EN-GB style='font-size:12.0pt'>
// Standard transfer functions</span><o:p></o:p></font></p>
<p><font size=3 face="Times New Roman"><span lang=EN-GB style='font-size:12.0pt'>
...</span><o:p></o:p></font></p>
<p><font size=3 face="Times New Roman"><span lang=EN-GB style='font-size:12.0pt'> </span><o:p></o:p></font></p>
<p><font size=3 face="Times New Roman"><span lang=EN-GB style='font-size:12.0pt'>
vtkVolumeRayCastCompositeFunction *compositeFunction =
vtkVolumeRayCastCompositeFunction::New();</span><o:p></o:p></font></p>
<p><font size=3 face="Times New Roman"><span lang=EN-GB style='font-size:12.0pt'>
compositeFunction->SetCompositeMethodToInterpolateFirst();</span><o:p></o:p></font></p>
<p><font size=3 face="Times New Roman"><span lang=EN-GB style='font-size:12.0pt'> </span><o:p></o:p></font></p>
<p><font size=3 face="Times New Roman"><span lang=EN-GB style='font-size:12.0pt'>
vtkVolumeRayCastMapper *volumeMapper = vtkVolumeRayCastMapper::New();</span><o:p></o:p></font></p>
<p><font size=3 face="Times New Roman"><span lang=EN-GB style='font-size:12.0pt'>
volumeMapper->SetVolumeRayCastFunction(compositeFunction);</span><o:p></o:p></font></p>
<p><font size=3 face="Times New Roman"><span lang=EN-GB style='font-size:12.0pt'>
volumeMapper->SetInput(this->m_vtkpVolume->GetOutput());</span><o:p></o:p></font></p>
<p><font size=3 face="Times New Roman"><span lang=EN-GB style='font-size:12.0pt'> </span><o:p></o:p></font></p>
<p><font size=3 face="Times New Roman"><span lang=EN-GB style='font-size:12.0pt'>
m_vtkpVolumeForDisplay = vtkVolume::New();</span><o:p></o:p></font></p>
<p><font size=3 face="Times New Roman"><span lang=EN-GB style='font-size:12.0pt'>
m_vtkpVolumeForDisplay->SetMapper(volumeMapper);</span><o:p></o:p></font></p>
<p><font size=3 face="Times New Roman"><span lang=EN-GB style='font-size:12.0pt'>
m_vtkpVolumeForDisplay->SetProperty(volumeProperty);</span><o:p></o:p></font></p>
<p><font size=3 face="Times New Roman"><span lang=EN-GB style='font-size:12.0pt'> </span><o:p></o:p></font></p>
<p><font size=3 face="Times New Roman"><span lang=EN-GB style='font-size:12.0pt'>
this->m_vtkpRendererVolume->AddVolume(m_vtkpVolumeForDisplay);</span><o:p></o:p></font></p>
<p><font size=3 face="Times New Roman"><span lang=EN-GB style='font-size:12.0pt'>
</span><o:p></o:p></font></p>
<p><font size=3 face="Times New Roman"><span lang=EN-GB style='font-size:12.0pt'>
</span>this->m_vtkpRenWin->Render();<o:p></o:p></font></p>
</div>
</div>
<p class=MsoNormal style='margin-bottom:12.0pt'><font size=3
face="Times New Roman"><span style='font-size:12.0pt'><br>
_______________________________________________<br>
Powered by <a href="http://www.kitware.com" target="_blank">www.kitware.com</a><br>
<br>
Visit other Kitware open-source projects at <a
href="http://www.kitware.com/opensource/opensource.html" target="_blank">http://www.kitware.com/opensource/opensource.html</a><br>
<br>
Follow this link to subscribe/unsubscribe:<br>
<a href="http://www.vtk.org/mailman/listinfo/vtk-developers" target="_blank">http://www.vtk.org/mailman/listinfo/vtk-developers</a><o:p></o:p></span></font></p>
</div>
<p class=MsoNormal><font size=3 face="Times New Roman"><span style='font-size:
12.0pt'><br>
<br clear=all>
<br>
-- <br>
William J. Schroeder, PhD<br>
Kitware, Inc.<br>
28 Corporate Drive<br>
Clifton Park, NY 12065<br>
<a href="mailto:will.schroeder@kitware.com">will.schroeder@kitware.com</a><br>
<a href="http://www.kitware.com">http://www.kitware.com</a><br>
(518) 881-4902<o:p></o:p></span></font></p>
</div>
</body>
</html>