This class provides the public API for intersecting a ray with a narrow-band level set. More...
#include <openvdb/tools/RayIntersector.h>
| Public Types | |
| using | GridType = GridT | 
| using | RayType = RayT | 
| using | RealType = typename RayT::RealType | 
| using | Vec3Type = typename RayT::Vec3T | 
| using | ValueT = typename GridT::ValueType | 
| using | TreeT = typename GridT::TreeType | 
| Public Member Functions | |
| LevelSetRayIntersector (const GridT &grid, const ValueT &isoValue=zeroVal< ValueT >()) | |
| Constructor. | |
| const ValueT & | getIsoValue () const | 
| Return the iso-value used for ray-intersections. | |
| bool | intersectsIS (const RayType &iRay) const | 
| Return trueif the index-space ray intersects the level set. | |
| bool | intersectsIS (const RayType &iRay, RealType &iTime) const | 
| Return trueif the index-space ray intersects the level set. | |
| bool | intersectsIS (const RayType &iRay, Vec3Type &xyz) const | 
| Return trueif the index-space ray intersects the level set. | |
| bool | intersectsIS (const RayType &iRay, Vec3Type &xyz, RealType &iTime) const | 
| Return trueif the index-space ray intersects the level set. | |
| bool | intersectsWS (const RayType &wRay) const | 
| Return trueif the world-space ray intersects the level set. | |
| bool | intersectsWS (const RayType &wRay, RealType &wTime) const | 
| Return trueif the world-space ray intersects the level set. | |
| bool | intersectsWS (const RayType &wRay, Vec3Type &world) const | 
| Return trueif the world-space ray intersects the level set. | |
| bool | intersectsWS (const RayType &wRay, Vec3Type &world, RealType &wTime) const | 
| Return trueif the world-space ray intersects the level set. | |
| bool | intersectsWS (const RayType &wRay, Vec3Type &world, Vec3Type &normal) const | 
| Return trueif the world-space ray intersects the level set. | |
| bool | intersectsWS (const RayType &wRay, Vec3Type &world, Vec3Type &normal, RealType &wTime) const | 
| Return trueif the world-space ray intersects the level set. | |
This class provides the public API for intersecting a ray with a narrow-band level set.
It wraps a SearchImplT with a simple public API and performs the actual hierarchical tree node and voxel traversal.
| using GridType = GridT | 
| using RayType = RayT | 
| using RealType = typename RayT::RealType | 
| using TreeT = typename GridT::TreeType | 
| using ValueT = typename GridT::ValueType | 
| using Vec3Type = typename RayT::Vec3T | 
| 
 | inline | 
Constructor.
| grid | level set grid to intersect rays against. | 
| isoValue | optional iso-value for the ray-intersection. | 
| 
 | inline | 
Return the iso-value used for ray-intersections.
| 
 | inline | 
Return true if the index-space ray intersects the level set. 
| iRay | ray represented in index space. | 
| 
 | inline | 
Return true if the index-space ray intersects the level set. 
| iRay | ray represented in index space. | 
| iTime | if an intersection was found it is assigned the time of the intersection along the index ray. | 
| 
 | inline | 
Return true if the index-space ray intersects the level set. 
| iRay | ray represented in index space. | 
| xyz | if an intersection was found it is assigned the intersection point in index space, otherwise it is unchanged. | 
| 
 | inline | 
Return true if the index-space ray intersects the level set. 
| iRay | ray represented in index space. | 
| xyz | if an intersection was found it is assigned the intersection point in index space, otherwise it is unchanged. | 
| iTime | if an intersection was found it is assigned the time of the intersection along the index ray. | 
| 
 | inline | 
Return true if the world-space ray intersects the level set. 
| wRay | ray represented in world space. | 
| 
 | inline | 
Return true if the world-space ray intersects the level set. 
| wRay | ray represented in world space. | 
| wTime | if an intersection was found it is assigned the time of the intersection along the world ray. | 
| 
 | inline | 
Return true if the world-space ray intersects the level set. 
| wRay | ray represented in world space. | 
| world | if an intersection was found it is assigned the intersection point in world space, otherwise it is unchanged | 
| 
 | inline | 
Return true if the world-space ray intersects the level set. 
| wRay | ray represented in world space. | 
| world | if an intersection was found it is assigned the intersection point in world space, otherwise it is unchanged. | 
| wTime | if an intersection was found it is assigned the time of the intersection along the world ray. | 
| 
 | inline | 
Return true if the world-space ray intersects the level set. 
| wRay | ray represented in world space. | 
| world | if an intersection was found it is assigned the intersection point in world space, otherwise it is unchanged. | 
| normal | if an intersection was found it is assigned the normal of the level set surface in world space, otherwise it is unchanged. | 
| 
 | inline | 
Return true if the world-space ray intersects the level set. 
| wRay | ray represented in world space. | 
| world | if an intersection was found it is assigned the intersection point in world space, otherwise it is unchanged. | 
| normal | if an intersection was found it is assigned the normal of the level set surface in world space, otherwise it is unchanged. | 
| wTime | if an intersection was found it is assigned the time of the intersection along the world ray. |