Complex Hierarchical Structures
1 Attachment(s)
Hi,
I'm creating a series of canned animations in Vizard using your vizacts class to control mechanical equipment. I'm getting a bit confused when it comes to what is shown me in the vizard inspector vs. what I am actually altering in my vizard code. For instance, take the image attached ( yes I am using Vizard 5 but I assume nothign changes with how scene graphs hierarchies function I felt it more pertinent to throw this in Vizard 4's forum). I have watched your video tutorial, however it does not cover hierarchies with more than 1 parented object, which is what I am dealing with. I have a blue box with a door, latch and handle, each parented (linked) in Max with their pivots placed where I want their rotations to be performed. And I have reset the xForm many times. When I view this in the inspector, I can see the transform node labeled 'BlueMLabOven_LabHandle' and when I select the transform I am able to pivot about the expected location and the child comes along for the ride as I'd expect. Same thing with the door labeled 'BlueMLabOven_Door', when I rotate about the transform in the inspector all the child components come along and the pivot is about the correct location. When I move into Vizard... things don't act as friendly as in the inspector. I load my model and extract the child objects I want to modify: Code:
self.oven = vizfx.addChild('BlueMLabOven.OSGB') I don't want to rotate the geode, since the hierarchy doesn't work if I do that. I want to rotate using the transform so that all the child objects come along for the ride. How do I do this in Vizard? So far all of my transforms seem to only rotate around the parent system when I set up the following: Code:
open_door = vizact.spinTo( euler = [ door_angle, 0, 0], time = rotate_door_time, interpolate = vizact.easeInOutCubic ,mode = viz.ABS_LOCAL ) George |
Calling node.getChild() will insert a transform above the specified sub-node. From the documentation:
Quote:
In Vizard 5 you can use the node.getTransform() command to get a handle to the specified sub-transform node. Transforming this object should provide similar behavior to transforming the node in Inspector. |
Great, thank you.
Just for kicks, I'm guessing there is no easy way to do this in Vizard 4? I seem to remember at one point many years ago putting the parent's pivot where I wanted the child to pivot from to get this to work... but it only works when you have one child per object. |
All times are GMT -7. The time now is 04:26 AM. |
Powered by vBulletin® Version 3.8.7
Copyright ©2000 - 2024, vBulletin Solutions, Inc.
Copyright 2002-2023 WorldViz LLC