Hi Robert,
I am back from my holidays, now trying to sketch new RayIntersector according
to our discussion. Sorry, the topic seems difficult:
- RayIntersector (start and direction) is good and easy to understand by
users. Finally, using it in CameraManipulators would make Manipulators
compatible with shadow volumes and would make them robust for any homogeneous
transformation. Potential problems: Somebody might want to limit the length of
the ray. Solution - use LineSegmentIntersector, but this one is not an option
with shadow volumes as it is not robust. Solution 2 - maybe, we can append
length class member that would specify the length of the ray (in the current
coordinate frame) with the default value of +INF.
Does it seems a good solution for you?
Or you prefer to not have the length member? (This would force the people to
use LineSegmentIntersector, probably.)
I still think about LineSegmentIntersector, as it will became unusable for me,
as it is not robust against all types of transformations that can appear in
the scene graph. In the presence of homogeneous transformations, line with one
point at infinity is just a special case of line for me. The same with point,
it is just a special case of line. Just thinking if LineSegmentIntersector can
be made robust for such cases. Maybe LineSegmentIntersectorRobust, or
LineSegmentIntersector4, or some other approach, or we can leave the problem
without solving it.
Quick question: For very long time, I do not understand following line of
LineSegmentIntersector:
inline Intersections& getIntersections() { return _parent ?
_parent->_intersections : _intersections; }
It returns the active list of intersections (used for appending and
intersection retrieval). If there is stack of Intersectors, the intersections
should be put into the most bottom one, isn't it? Why are they put to the
second most top intersector, that will be popped and intersections destroyed
before the end of traversal? Please, what am I missing on this point?
John
_______________________________________________
osg-submissions mailing list
[email protected]
http://lists.openscenegraph.org/listinfo.cgi/osg-submissions-openscenegraph.org