<html>
<head>
<style><!--
.hmmessage P
{
margin:0px;
padding:0px
}
body.hmmessage
{
font-size: 12pt;
font-family:Calibri
}
--></style></head>
<body class='hmmessage'><div dir='ltr'><div>Hi Adrian,</div><div>Thanks for the entry point.</div><div><br>> I just recently used CompassWidget in my ActiViz Application, but I strongly<br>> believe its the same in c++/py.<br>> I think you need a vtkOrientationMarkerWidget on top of your vtkAxesActor<br><br></div><div>Is this totally new widget that has no relevance or anything in common with CompasWidget?</div><div>If so from which VTK class should I derive the new class? </div><div><br></div><div>Concisely studying your code, it outlines that you embed the AxesActor into newly derived class,</div><div>the connection with renderer is established by <span style="font-size: 12pt;">passing vtkRenderer into constructor as reference argument. </span></div><div><span style="font-size: 12pt;"><br></span></div><div><span style="font-size: 12pt;">The key point here AFAIU is </span><span style="font-size: 12pt;">vtkOrientationMarkerWidget which is supposed to deal with applying the </span></div><div><span style="font-size: 12pt;">scene transformation to the widget, please confirm?</span></div><div><span style="font-size: 12pt;"><br></span></div><div><span style="font-size: 12pt;">Regards,</span></div><div><span style="font-size: 12pt;"><br></span></div><div>> 1) created a Class having those privates:<br>>  private readonly vtkAxesActor _actor = vtkAxesActor.New();<br>>  private readonly vtkOrientationMarkerWidget _widget =<br>> vtkOrientationMarkerWidget.New();<br>> <br>> 2) constructor with vtkRenderer<br>> public CoordinateAxes( vtkRenderer renderer )<br>>         {<br>>             _actor.SetScale( 0.5, 0.5, 0.5 );<br>> <br>>             _widget.SetOrientationMarker(_actor);<br>>            <br>> _widget.SetInteractor(renderer.GetRenderWindow().GetInteractor());<br>>             _widget.SetViewport(0.0, 0.0, 0.25, 0.25);<br>>             _widget.EnabledOn();<br>>             _widget.InteractiveOff();<br>>         }<br>> <br>> 3) creating your class when your main vtk window is created, I just did so<br>> upon RenderViewOnHandleCreated() event by<br>> _orientationAxis = new CoordinateAxes( renderer );<br>> <br>> Thats all I needed to do, updates from your interactive Widget get through<br>> the renderer/main interactor of your renderer ( SetInteractor() )<br>> <br>> Best Regards<br>> Adrian<br>> <br>> <br>> <br>> --<br>> View this message in context: http://vtk.1045678.n5.nabble.com/How-to-use-CompassWidget-for-scene-orientation-tp5727577p5727580.html<br>> Sent from the VTK - Users mailing list archive at Nabble.com.<br>> _______________________________________________<br>> Powered by www.kitware.com<br>> <br>> Visit other Kitware open-source projects at http://www.kitware.com/opensource/opensource.html<br>> <br>> Please keep messages on-topic and check the VTK FAQ at: http://www.vtk.org/Wiki/VTK_FAQ<br>> <br>> Follow this link to subscribe/unsubscribe:<br>> http://public.kitware.com/mailman/listinfo/vtkusers<br></div>                                           </div></body>
</html>