Hi, I am trying to get uv coordinates and color of a point I found using the LineSegmentIntersector. My problem is that the found intersection has no indexList so I cannot use the code used in osgmovie.
This short code example should boil down to the point: Code: osg::Box* b = new osg::Box( osg::Vec3d(0,0,0), 1.0f); osg::Geode* g = new osg::Geode(); g->addDrawable( new osg::ShapeDrawable( b ) ); osg::ref_ptr< osgUtil::LineSegmentIntersector> lineSeg = new osgUtil::LineSegmentIntersector(osg::Vec3d(0,-2,0), osg::Vec3d(0,0,0)); osgUtil::IntersectionVisitor findIntersections(lineSeg.get()); g->accept(findIntersections); osgUtil::LineSegmentIntersector::Intersection currHit = lineSeg->getFirstIntersection(); osg::Vec3d intersecPnt = currHit.getWorldIntersectPoint(); int vecArraySize = currHit.indexList.size(); int vecRatioSize = currHit.ratioList.size(); intersecPnt is correctly found, but vecArraySize and vecRatioSize is zero. I read through some layers of osg code and it seems my proble is the treatVertexDataAsTemporary variable. It prevents at the end of TriangleIntersector::operator () (part of LineSegmentIntersectorUtils in linesegmentintersector.cpp) that the found three vertices used to compute the intersection are inserted into the result as they are "temporary". How do I get the correct uv coordinates in such a situation or how do I force the inclusion of the needed vertices? Cheers, Oliver ------------------ Read this topic online here: http://forum.openscenegraph.org/viewtopic.php?p=35293#35293 _______________________________________________ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org