[osg-users] Edit 3D (osgt) model to add DOFTransform and perform "node" rotation
OpenSceneGraph Users
osg-users at lists.openscenegraph.org
Thu Apr 16 01:55:11 PDT 2020
Hi Jeremy,
editing your helicopter.osgt should work, and while I never work with
osgSim::DOFTransform
(I alway use osg::MatixTransform) both descend from osg::Group, and can be
used in osg text files to replace a group.
However, the optimizer might find a transform with an identity matrix, and
optimize it to a Group again.
To test your edits, use these commands:
set OSG_OPTIMIZER=OFF
osgconv helicopter.osgt rw_test.osgt
winmerge helicopter.osgt rw_test.osgt
You should find all default values filled in the rw_test.osgt.
Laurens.
On Wed, Apr 15, 2020 at 10:17 PM OpenSceneGraph Users <
osg-users at lists.openscenegraph.org> wrote:
> First off, I hope everyone is staying sane and healthy during this
> pandemic.
>
>
>
> I’m working with a collection of 3D models that have come from a variety
> of different source but are now all in osgb format. For several of the
> models I’d like to grab a “node” and apply rotation.
>
>
>
> As I’m working through my understanding of the approach, I’ve created a
> simple application that loads the model, traverses the scene, returns a
> pointer to the “node”, casts to a DOFTransform and manipulate the “node”
> (DOFTransform). Snippet:
>
> FindNamedNodeVisitor fnnv("turret");
>
> scene->accept(fnnv);
>
> osg::ref_ptr<osgSim::DOFTransform> dofTrans = new osgSim::DOFTransform();
>
> dofTrans =
> dynamic_cast<osgSim::DOFTransform*>(fnnv.getFoundNode()->asTransform());
>
> if(dofTrans != NULL)
>
> //manipulate (rotate)
>
>
>
> This approach works for the tank.osg model. Now I’m trying to apply this
> approach to a different model (helicopter for example). When I access the
> “node” of interest, “Main_Hub” which is an osg::Group I obviously can’t
> cast that to a osgSim::DOFTransform. I’m trying to get an understand of how
> I can change the model, now in osgt (readable) format, to a structure that
> can be used. I’ve been using the tank.osg as a guide and attempted to
> recreate a similar structure in the helicopter.osgt. I’m trying to take
> logical stabs in the dark, in the helicopter model I’ve attempted to simply
> renamed the “node” of interest from an osg::Group to osgSim::DOFTransform.
> The model still displays correctly, but the cast to osgSim::DOFTransform
> returns NULL. I thought there may be some required variables at are needed
> as part of the osgSim::DOFTransform structure, so I began adding
> currentHPR, currentTranslate, and currentScale and continued to add more
> bringing it in line with the tank.osg example. Through all the attempts I
> still getting NULL when casting.
>
>
>
> I’m looking for any guidance/suggestions/lessons learned on how to
> properly do this.
>
>
> Thanks in advance
>
>
>
> Jeremy
>
> --
> You received this message because you are subscribed to the Google Groups
> "OpenSceneGraph Users" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to osg-users+unsubscribe at googlegroups.com.
> To view this discussion on the web visit
> https://groups.google.com/d/msgid/osg-users/cbb4b132-24a7-4e75-b10f-7474c1a99378%40googlegroups.com
> <https://groups.google.com/d/msgid/osg-users/cbb4b132-24a7-4e75-b10f-7474c1a99378%40googlegroups.com?utm_medium=email&utm_source=footer>
> .
> _______________________________________________
> osg-users mailing list
> osg-users at lists.openscenegraph.org
> http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
>
--
You received this message because you are subscribed to the Google Groups "OpenSceneGraph Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to osg-users+unsubscribe at googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/osg-users/CAG7xrZczmUnpT7T0BoFgOWAcmqUeST8XrMaEXYG2kq-wYFKCaQ%40mail.gmail.com.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.openscenegraph.org/pipermail/osg-users-openscenegraph.org/attachments/20200416/cd1254e0/attachment.html>
More information about the osg-users
mailing list