I attach my example file (convertedModel.osg) so everybody can test what i've said...
Thanks in advance, Leo
From: "Robert Osfield" <[EMAIL PROTECTED]> Reply-To: osg users <[email protected]> To: "osg users" <[email protected]> Subject: Re: [osg-users] PagedLOD...problem with setFileName() method Date: Fri, 6 Oct 2006 19:50:19 +0100 Hi Leo, Add some debugging info into your traversal to print out which PageLOD's it finds. Also double check the file has PagedLOD's in it. Robert. On 10/6/06, Leo Orlandini <[EMAIL PROTECTED]> wrote:Hi Robert, you're right, in this file I've deleted many things and I've deleted the traverse() method call also...You're right...but I've just tried to execute the application with the same code (adding the traverse method) and it doesn't work...the code is this: #include <osg/Notify> #include <osgDB/ReadFile> #include <osgDB/WriteFile> class ProvaVisitor : public osg::NodeVisitor { public: ProvaVisitor(): osg::NodeVisitor(osg::NodeVisitor::TRAVERSE_ALL_CHILDREN) { } virtual void apply(osg::PagedLOD& plod) { plod.setFileName(0,"a"); traverse(plod); } }; int main( int argc, char **argv ) { osg::notify(osg::NOTICE)<<"Charging the model..."; osg::ref_ptr<osg::Node> root = osgDB::readNodeFile(" exampleModel.osg"); osg::notify(osg::NOTICE)<<"Done"<< std::endl; ProvaVisitor v; root->accept(v); return 0; } the problem isn't the traverse() method... >From: "Robert Osfield" <[EMAIL PROTECTED]> >Reply-To: osg users <[email protected]> >To: "osg users" <[email protected]> >Subject: Re: [osg-users] PagedLOD...problem with setFileName() method >Date: Fri, 6 Oct 2006 18:57:05 +0100 > >Hi Leo, > >Is it that the visitor isn't traversing all the scene? If so then its >because you haven't included a traverse(..) calling the the apply() >method. Traversal is your responsibility in either custom NodeVisitor or >callbacks. Have a look at the source code to other NodeVisitors and you'll >spot calls to NodeVisitr::traverse(..) or the nodes traverse method. > >Robert. > >On 10/6/06, Leo Orlandini <[EMAIL PROTECTED]> wrote: >>>>I try to explain better my problem...I've written a simple file defining>>only one visitor, which change the filename associated with the first >>child>>of every pagedLOD in the scenegraph... I test it on a model that contain>>some pagedlod (exampleModel.osg) but the visitor has no effect.... can >>someone explain me the reason of this fact ? >> >>the file I've written is: >> >>#include <osg/Notify> >>#include <osgDB/ReadFile> >>#include <osgDB/WriteFile> >> >>class ProvaVisitor : public osg::NodeVisitor >>{ >>public: >> ProvaVisitor(): >> osg::NodeVisitor(osg::NodeVisitor::TRAVERSE_ALL_CHILDREN) >> { >> } >> >> virtual void apply(osg::PagedLOD& plod) >> { >> plod.setFileName(0,"a"); >> } >>}; >> >>int main( int argc, char **argv ) >>{ >> osg::notify(osg::NOTICE)<<"Charging the model..."; >> osg::ref_ptr<osg::Node> root = osgDB::readNodeFile(" >>exampleModel.osg"); >> osg::notify(osg::NOTICE)<<"Done"<< std::endl; >> >> ProvaVisitor v; >> root->accept(v); >> >> return 0; >>} >> >>thanks >>Leo >> >> >> >From: "Leo Orlandini" <[EMAIL PROTECTED]> >> >Reply-To: osg users <[email protected]> >> >To: [email protected] >> >Subject: [osg-users] PagedLOD...problem with setFileName() method >> >Date: Thu, 05 Oct 2006 17:41:16 +0000 >> > >> >Hello everybody, >> > >> >I need to define a visitor which, in certain case, have to change the >>file >> >referred to some children of pagedLOD nodes in the scenegraph...so in my>> >visitor I define an apply() method for pagedLOD in which body I made a>>call >> >of setFileName() method... >> > >> > virtual void apply(osg::PagedLOD& plod) >> > { >> > ................... >> > plod.setFileName(i,sameFile); >> > ................... >> > } >> > >> >where "i" is an integer and "sameFile" is a std::string... >> > >> >after the visitor's traverse there is no change in the name of the file >> >associated with the child in question...what I wrong ? >> > >> >Thanks in advance >> >Leo >> > >> >_________________________________________________________________ >> >Bolletta del telefono pesante? Risparmia con il nuovo Messenger >> >http://imagine-msn.com/messenger/launch80/?locale=it-it >> > >> >_______________________________________________ >> >osg-users mailing list >> >[email protected] >> >http://openscenegraph.net/mailman/listinfo/osg-users >> >http://www.openscenegraph.org/ >> >>_________________________________________________________________ >>Personalizza MSN Messenger con sfondi e fotografie! >>http://www.ilovemessenger.msn.it/ >> >>_______________________________________________ >>osg-users mailing list >>[email protected] >>http://openscenegraph.net/mailman/listinfo/osg-users >>http://www.openscenegraph.org/ >> >_______________________________________________ >osg-users mailing list >[email protected] >http://openscenegraph.net/mailman/listinfo/osg-users >http://www.openscenegraph.org/ _________________________________________________________________ Ami viaggiare?Ma non sai dove andare? http://search.msn.it/results.aspx?q=viaggiare&FORM=QBRE _______________________________________________ osg-users mailing list [email protected] http://openscenegraph.net/mailman/listinfo/osg-users http://www.openscenegraph.org/
_______________________________________________ osg-users mailing list [email protected] http://openscenegraph.net/mailman/listinfo/osg-users http://www.openscenegraph.org/
_________________________________________________________________Vuoi vedere la reazione dei tuoi amici? http://imagine-msn.com/messenger/launch80/?locale=it-it
convertedModel.osg
Description: Binary data
_______________________________________________ osg-users mailing list [email protected] http://openscenegraph.net/mailman/listinfo/osg-users http://www.openscenegraph.org/
