Hoi,
Bokhorst,Rene R. wrote:
I've been browsing the mail archive to find the answer to my question but I
haven't found anything at all. I basically want to manipulate the vertices of a
model loaded by the osgDB::ReadNodeFile() function. ReadNodeFile() returns a
osg::Node. I was hoping this might actually be a osg::Geode, but apparently it
isn't.
A Geode is a subclass of Node, but osgDB::readNodeFile always returns a
Node*. You can check if you actually get back a Geode by doing a dynamic
cast, e.g.
osg::Node* node = osgDB::readNodeFile(...);
osg::Geode* geode = dynamic_cast<osg::Geode*>(node);
if (geode) { // it's a Geode... }
Reason I want to do this is because I have 1600 different building models. But
all of these building models are already positioned in their correct position
and rotation (instead of each building being built around 0,0,0). So basically
if I load my 1600 models and all position them on 0,0,0 I have a complete and
perfectly aligned town. I want to move every building back to 0,0,0 so that I
can re-use them. I've already used osg to find their position by finding the
center of their bounding box. And now I want to substract that position from
the vertices of every building and save them. Anyone know how to achieve this?
You can try to add a separate MatrixTransform above each building's root
node and set its DataVariance to STATIC followed by running
osgUtil::Optimizer on the subgraph with option
FLATTEN_STATIC_TRANSFORMS. If all other transforms in the subgraph also
have static variance then this should 'push' the transform into the
vertices by transforming them to their final positions. You can then
save each building's subgraph with writeNodeFile()
Paul
Thank you in advance,
Rene
----------------------------------------------------------------
Op deze e-mail zijn de volgende voorwaarden van toepassing:
http://www.fontys.nl/disclaimer
The above disclaimer applies to this e-mail message.
----------------------------------------------------------------
_______________________________________________
osg-users mailing list
[email protected]
http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
_______________________________________________
osg-users mailing list
[email protected]
http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org