I have some unexpected behavior which is illustrated by the following code:
Code: stationaryModels.push_back(new MillModel("../Models/bigservo.osgb", osg::Matrix::translate(6000.0f, 0.0f, 200.0f), osg::Matrix::rotate(osg::inDegrees(0.0f),0.0f,0.0f,1.0f), MillModel::GREEN_OUTLINE, std::string(" ") )); for(int i = 0; i < stationaryModels.size(); i++) //todo use an iterator { if (stationaryModels[i]->proxNode) { tmp_root->addChild(stationaryModels[i]->modelTrans.get()); } } // todo Why isn't the outline shown in the following? //for(std::vector<MillModel*>::iterator it = stationaryModels.begin(); it != stationaryModels.end(); it++) //{ // if ((*it)->proxNode) // { // tmp_root->addChild((*it)->transform.get()); // } //} My MillModel class creates osg::ref_ptr 's to transformations whose children are my proxyNode models and adds some text and the osg::outline to the models. Why would stationaryModels[i]->transform.get() be any different from (*it)->transform.get()? I thought they were equivalent. Everything is fine with the second (preferred) option except the osg::outline. PK ------------------ Read this topic online here: http://forum.openscenegraph.org/viewtopic.php?p=52721#52721 Attachments: http://forum.openscenegraph.org//files/stepper1_355.png _______________________________________________ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org