2009/5/22 Paul Griffiths <[email protected]>: > Im clipping an osg::group with an osg::ClipNode so parts of it is invisible > on screen but when i click on the invisible parts the picker is still picking > the object . i dont want it like that, i want the invisible parts to be > invisible to the mouse as well. so i wish to create an aabb around the parent > picked node the same size and position as the clipNode and check if > getWorldIntersectPoint is within this aabb. > > if there is a way to check if getWorldIntersectPoint is outside a clipnodes > assigned bounding box then that would be even better. > > > It's for a scrollpanel for my new 3d gui system. >
If you have a clip node in world coordinates, you can just test the world intersect point against that. for each clip plane in the clip node, call getClipPlane, this gives you a vec4d which is the plane equation. calc the distance from the plane and if it's negative it's outside. distance is pt.x() * pl.x() + pt.y() * pl.y() + pt.z() * pl.z() + pl.w() where pt is the intersection point and pl is the vec4 of the plane -- http://www.ssTk.co.uk _______________________________________________ osg-users mailing list [email protected] http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org

