FW: vtkAssembly Woes

Gerald Dalley dalleyg at ee.eng.ohio-state.edu
Wed May 17 17:20:39 EDT 2000


I just added a few extra features to my VTK-based application such as point
normals generated by vtkGlyph3D, etc.  In order to keep everything together,
I've begun using vtkAssembly objects.  Using vtkAssembly instead of actually
merging the data allows me to more easily and efficiently turn on and off
various sub-actors, etc.  Unfortunately, I've noticed two problems with
doing so:

1) The render window interactors don't seem to be able to move the entire
assembly around as a single unit.  For example, if I spin the main object
while in actor-select mode, just the main object spins, but not the other
objects in the assembly such as the point normals.  If I turn off the
pickability on all of the actors in the assembly but leave the visibility on
for the assembly as a whole, nothing is pickable.  What I'd really like to
be able to do is only make certain actors in the assembly pickable, and then
be able to control whether interactions modify just that one actor, or the
entire assembly.

2) The much bigger problem for me is that I need to have the ability to read
back the view transformations from the actors.  My application allows the
user to manipulate the position and orientation of individual actors, then
performs operations that are dependent on that information.  After digging
through the source code with a debugger, I found out that vtkAssembly makes
copies of the actors, and those copies are the actors accessed by the render
window interactors.  I don't see a good, reliable way of getting at those
actors programmatically without reverse-engineering BuildPaths or something
like that.

I'm currently using VTK 2.4 with VC++ 6.0.  Does anybody know if VTK 3.1
fixed any of these problems, or have any ideas how to get around them other
than switching to use vtkAppendFilter instead of vtkAssembly?

--Gerald Dalley
  dalleyg at ee.eng.ohio-state.edu
  dalleyg at dma.org

--------------------------------------------------------------------
This is the private VTK discussion list. Please keep messages on-topic.
Check the FAQ at: <http://public.kitware.com/cgi-bin/vtkfaq>
To UNSUBSCRIBE, send message body containing "unsubscribe vtkusers" to
<majordomo at public.kitware.com>. For help, send message body containing
"info vtkusers" to the same address.
--------------------------------------------------------------------



More information about the vtkusers mailing list