<div dir="ltr"><div class="markdown-here-wrapper" style="font-family:Verdana,Arial,sans-serif;color:rgb(11,83,148)"><p style="margin:0px 0px 1.2em!important">Hi Brian,</p>
<p style="margin:0px 0px 1.2em!important">VTK would work fine with an offscreen render window which inherently does not get any user interaction.</p>
<p style="margin:0px 0px 1.2em!important">What is your use case for using widgets? Using the offscreen approach you would have to maintain app-side widgets and then directly feed the relevant values to the VTK objects.</p>
<p style="margin:0px 0px 1.2em!important">For example, If you’d like to use the box widget to crop a volume, you can have an app-side widget that computes the bounds for the crop and directly use those bounds for cropping the volume in VTK.</p>
<p style="margin:0px 0px 1.2em!important">Hope that helps.</p>
<p style="margin:0px 0px 1.2em!important">Thanks,<br>Sankhesh</p>
<div title="MDH:SGkgQnJpYW4sPGRpdj48YnI+PC9kaXY+PGRpdj5WVEsgd291bGQgd29yayBmaW5lIHdpdGggYW4g
b2Zmc2NyZWVuIHJlbmRlciB3aW5kb3cgd2hpY2ggaW5oZXJlbnRseSBkb2VzIG5vdCBnZXQgYW55
IHVzZXIgaW50ZXJhY3Rpb24uPC9kaXY+PGRpdj48YnI+PC9kaXY+PGRpdj5XaGF0IGlzIHlvdXIg
dXNlIGNhc2UgZm9yIHVzaW5nIHdpZGdldHM/IFVzaW5nIHRoZSBvZmZzY3JlZW4gYXBwcm9hY2gg
eW91IHdvdWxkIGhhdmUgdG8gbWFpbnRhaW4gYXBwLXNpZGUgd2lkZ2V0cyBhbmQgdGhlbiBkaXJl
Y3RseSBmZWVkIHRoZSByZWxldmFudCB2YWx1ZXMgdG8gdGhlIFZUSyBvYmplY3RzLjwvZGl2Pjxk
aXY+PGJyPjwvZGl2PjxkaXY+Rm9yIGV4YW1wbGUsIElmIHlvdSdkIGxpa2UgdG8gdXNlIHRoZSBi
b3ggd2lkZ2V0IHRvIGNyb3AgYSB2b2x1bWUsIHlvdSBjYW4gaGF2ZSBhbiBhcHAtc2lkZSB3aWRn
ZXQgdGhhdCBjb21wdXRlcyB0aGUgYm91bmRzIGZvciB0aGUgY3JvcCBhbmQgZGlyZWN0bHkgdXNl
IHRob3NlIGJvdW5kcyBmb3IgY3JvcHBpbmcgdGhlIHZvbHVtZSBpbiBWVEsuPC9kaXY+PGRpdj48
YnI+PC9kaXY+PGRpdj5Ib3BlIHRoYXQgaGVscHMuPC9kaXY+PGRpdj48YnI+PC9kaXY+PGRpdj5U
aGFua3MsPC9kaXY+PGRpdj5TYW5raGVzaDwvZGl2Pg==" style="height:0;width:0;max-height:0;max-width:0;overflow:hidden;font-size:0em;padding:0;margin:0">​</div></div></div><br><div class="gmail_quote"><div dir="ltr">On Tue, Jan 31, 2017 at 11:44 PM Brian Davis <<a href="mailto:bitminer@gmail.com">bitminer@gmail.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr" class="gmail_msg"><div class="gmail_msg"><div class="gmail_msg"><div class="gmail_msg"><div class="gmail_msg"><div class="gmail_msg"><div class="gmail_msg"><br class="gmail_msg"></div>Investigating</div></div></div></div></div></div><div dir="ltr" class="gmail_msg"><div class="gmail_msg"><div class="gmail_msg"><div class="gmail_msg"><div class="gmail_msg"><div class="gmail_msg"><br class="gmail_msg"><div class="gmail_msg"><br class="gmail_msg">​GetPlanes()
: <a class="m_3555242967327447843el gmail_msg" href="http://www.vtk.org/doc/nightly/html/classvtkBoxRepresentation.html#a215b315283dbd5bf07d9e998d6e423bd" target="_blank">vtkBoxRepresentation</a>
, <a class="m_3555242967327447843el gmail_msg" href="http://www.vtk.org/doc/nightly/html/classvtkBoxWidget.html#aff329326cf6d9539bdf73d8471034623" target="_blank">vtkBoxWidget</a>
, <a class="m_3555242967327447843el gmail_msg" href="http://www.vtk.org/doc/nightly/html/classvtkClipConvexPolyData.html#a9c8386b8399a92d7715ca0accde83d7b" target="_blank">vtkClipConvexPolyData</a>
, <a class="m_3555242967327447843el gmail_msg" href="http://www.vtk.org/doc/nightly/html/classvtkFrustumSource.html#ad258e57d67508896a08a24c4c9e1b88a" target="_blank">vtkFrustumSource</a><br class="gmail_msg"><br class="gmail_msg"></div></div></div></div></div></div></div><div dir="ltr" class="gmail_msg"><div class="gmail_msg"><div class="gmail_msg"><div class="gmail_msg"><div class="gmail_msg"><div class="gmail_msg"><div class="gmail_msg">a little further reveals<br class="gmail_msg"><br class="gmail_msg">virtual <a class="m_3555242967327447843el gmail_msg" href="http://www.vtk.org/doc/nightly/html/classvtkPlaneCollection.html" target="_blank">vtkPlaneCollection</a>* vtkClipConvexPolyData::GetPlanes 
          (
          )
          <br class="gmail_msg"><br class="gmail_msg"></div><div class="gmail_msg">is not the same as <br class="gmail_msg"></div><div class="gmail_msg"><br class="gmail_msg">void vtkBoxRepresentation::GetPlanes 
          (
          <a class="m_3555242967327447843el gmail_msg" href="http://www.vtk.org/doc/nightly/html/classvtkPlanes.html" target="_blank">vtkPlanes</a> * 
          <em class="gmail_msg">planes</em>)
          <br class="gmail_msg"><br class="gmail_msg"></div>and<br class="gmail_msg"><br class="gmail_msg">void vtkBoxWidget::GetPlanes 
          (
          <a class="m_3555242967327447843el gmail_msg" href="http://www.vtk.org/doc/nightly/html/classvtkPlanes.html" target="_blank">vtkPlanes</a> * 
          <em class="gmail_msg">planes</em>)
          <br class="gmail_msg"><br class="gmail_msg"></div>and hey... why would it be for consistency sake?<br class="gmail_msg"><br class="gmail_msg"></div>or for that matter: <br class="gmail_msg"><br class="gmail_msg">virtual <a class="m_3555242967327447843el gmail_msg" href="http://www.vtk.org/doc/nightly/html/classvtkPlanes.html" target="_blank">vtkPlanes</a>* vtkFrustumSource::GetPlanes 
          (
          )<br class="gmail_msg"><br class="gmail_msg"></div>Not that I need a Frustrum.<br class="gmail_msg"><br class="gmail_msg"></div>So I look into vtkClipConvexPolyData and vtkPlaneCollecion to see if I can get vtkPlanes* and of course I can't.  I get the feeling that vtk is a bit fractured. <br class="gmail_msg"><br class="gmail_msg"></div>Can someone explain to me why what is seemingly similar things in vtk have such different interfaces that don't seem to play nice with (itself) it's own api?<br class="gmail_msg"><br class="gmail_msg"><div class="gmail_msg"><div class="gmail_msg"><div class="gmail_msg"><div class="gmail_msg"><br class="gmail_msg"><br class="gmail_msg"><br class="gmail_msg"><br class="gmail_msg"><br class="gmail_msg"><div class="gmail_msg"><br class="gmail_msg"><div class="gmail_msg"><br class="gmail_msg"> <br class="gmail_msg"></div><div class="gmail_msg"><br class="gmail_msg"></div></div></div></div></div></div></div>
_______________________________________________<br class="gmail_msg">
Powered by <a href="http://www.kitware.com" rel="noreferrer" class="gmail_msg" target="_blank">www.kitware.com</a><br class="gmail_msg">
<br class="gmail_msg">
Visit other Kitware open-source projects at <a href="http://www.kitware.com/opensource/opensource.html" rel="noreferrer" class="gmail_msg" target="_blank">http://www.kitware.com/opensource/opensource.html</a><br class="gmail_msg">
<br class="gmail_msg">
Please keep messages on-topic and check the VTK FAQ at: <a href="http://www.vtk.org/Wiki/VTK_FAQ" rel="noreferrer" class="gmail_msg" target="_blank">http://www.vtk.org/Wiki/VTK_FAQ</a><br class="gmail_msg">
<br class="gmail_msg">
Search the list archives at: <a href="http://markmail.org/search/?q=vtkusers" rel="noreferrer" class="gmail_msg" target="_blank">http://markmail.org/search/?q=vtkusers</a><br class="gmail_msg">
<br class="gmail_msg">
Follow this link to subscribe/unsubscribe:<br class="gmail_msg">
<a href="http://public.kitware.com/mailman/listinfo/vtkusers" rel="noreferrer" class="gmail_msg" target="_blank">http://public.kitware.com/mailman/listinfo/vtkusers</a><br class="gmail_msg">
</blockquote></div><div dir="ltr">-- <br></div><div data-smartmail="gmail_signature"><div dir="ltr"><div class="inbox-markdown-here-wrapper" style="font-family:'proza libre',sans-serif;color:rgb(0,56,107)"><h5 id="inbox-sankhesh-jhaveri" style="margin:1.3em 0px 1em;padding:0px;font-size:1.1em;border-bottom-width:1px;border-bottom-style:solid;border-bottom-color:rgb(238,238,238);font-weight:bold;color:rgb(11,65,148)">Sankhesh Jhaveri</h5>
<h6 id="inbox--sr-research-development-engineer-kitware-http-www-kitware-com-518-881-4417" style="margin:1.3em 0px 1em;padding:0px;font-size:1em;color:rgb(11,83,148);font-family:'open sans',sans-serif;font-weight:normal"><em>Sr. Research & Development Engineer</em> | <a href="http://www.kitware.com/">Kitware</a> | (518) 881-4417</h6>
<div title="MDH:PGIgc3R5bGU9ImZvbnQtZmFtaWx5OiB2ZXJkYW5hLCBzYW5zLXNlcmlmOyBjb2xvcjogcmdiKDEx
LCA4MywgMTQ4KTsiPjxmb250IHNpemU9IjIiPiMjIyMjU2Fua2hlc2ggSmhhdmVyaTwvZm9udD48
L2I+PGRpdj48Zm9udCBjb2xvcj0iIzBiNTM5NCIgZmFjZT0idmVyZGFuYSwgc2Fucy1zZXJpZiIg
c2l6ZT0iMiI+PGI+PGJyPjwvYj48L2ZvbnQ+PGRpdj48c3BhbiBzdHlsZT0iZm9udC1mYW1pbHk6
IGFyaWFsLCBzYW5zLXNlcmlmOyBjb2xvcjogcmdiKDExLCA4MywgMTQ4KTsiPjxzcGFuIHN0eWxl
PSJmb250LWZhbWlseTogdmVyZGFuYSwgc2Fucy1zZXJpZjsiPjxpPiMjIyMjIypTci4gUmVzZWFy
Y2ggJmFtcDsgRGV2ZWxvcG1lbnQgRW5naW5lZXIqPC9pPiZuYnNwO3wmbmJzcDs8L3NwYW4+PC9z
cGFuPjxzcGFuIHN0eWxlPSJmb250LWZhbWlseTogdmVyZGFuYSwgc2Fucy1zZXJpZjsgY29sb3I6
IHJnYigxMSwgODMsIDE0OCk7Ij48YSBocmVmPSJodHRwOi8vd3d3LmtpdHdhcmUuY29tLyIgdGFy
Z2V0PSJfYmxhbmsiIHN0eWxlPSJjb2xvcjogcmdiKDE3LCA4NSwgMjA0KTsiPktpdHdhcmU8L2E+
Jm5ic3A7fCZuYnNwOzwvc3Bhbj48c3BhbiBzdHlsZT0iZm9udC1mYW1pbHk6IHZlcmRhbmEsIHNh
bnMtc2VyaWY7IGNvbG9yOiByZ2IoMTEsIDgzLCAxNDgpOyI+KDUxOCkgODgxLTQ0MTc8L3NwYW4+
PGJyPjwvZGl2PjxkaXY+PGRpdj48ZGl2PjxzcGFuIHN0eWxlPSJmb250LWZhbWlseTogdmVyZGFu
YSwgc2Fucy1zZXJpZjsgY29sb3I6IHJnYigxMSwgODMsIDE0OCk7Ij48L3NwYW4+PC9kaXY+PC9k
aXY+PC9kaXY+PC9kaXY+" style="height:0px;width:0px;max-height:0px;max-width:0px;overflow:hidden;font-size:0em;padding:0px;margin:0px">​</div></div></div></div>