| 
    OpenVDB
    13.0.0
    
   | 
 
Implements linear iterative search for an iso-value of the level set along the direction of the ray. More...
#include <openvdb/tools/RayIntersector.h>
Public Types | |
| using | RayT = math::Ray< RealT > | 
| using | VecT = math::Vec3< RealT > | 
| using | ValueT = typename GridT::ValueType | 
| using | AccessorT = typename GridT::ConstAccessor | 
| using | StencilT = math::BoxStencil< GridT > | 
Public Member Functions | |
| LinearSearchImpl (const GridT &grid, const ValueT &isoValue=zeroVal< ValueT >()) | |
| Constructor from a grid.  More... | |
| const ValueT & | getIsoValue () const | 
| Return the iso-value used for ray-intersections.  More... | |
| bool | setIndexRay (const RayT &iRay) | 
Return false if the ray misses the bbox of the grid.  More... | |
| bool | setWorldRay (const RayT &wRay) | 
Return false if the ray misses the bbox of the grid.  More... | |
| void | getIndexPos (VecT &xyz) const | 
| Get the intersection point in index space.  More... | |
| void | getWorldPos (VecT &xyz) const | 
| Get the intersection point in world space.  More... | |
| void | getWorldPosAndNml (VecT &xyz, VecT &nml) | 
| Get the intersection point and normal in world space.  More... | |
| RealT | getIndexTime () const | 
| Return the time of intersection along the index ray.  More... | |
| RealT | getWorldTime () const | 
| Return the time of intersection along the world ray.  More... | |
Friends | |
| template<typename , int > | |
| struct | math::LevelSetHDDA | 
Implements linear iterative search for an iso-value of the level set along the direction of the ray.
It is approximate due to the limited number of iterations which can can be defined with a template parameter. However the default value has proven surprisingly accurate and fast. In fact more iterations are not guaranteed to give significantly better results.
| using AccessorT = typename GridT::ConstAccessor | 
| using StencilT = math::BoxStencil<GridT> | 
| using ValueT = typename GridT::ValueType | 
| using VecT = math::Vec3<RealT> | 
      
  | 
  inline | 
Constructor from a grid.
| RunTimeError | if the grid is empty. | 
| ValueError | if the isoValue is not inside the narrow-band. | 
      
  | 
  inline | 
Get the intersection point in index space.
| xyz | The position in index space of the intersection. | 
      
  | 
  inline | 
Return the time of intersection along the index ray.
      
  | 
  inline | 
Return the iso-value used for ray-intersections.
      
  | 
  inline | 
Get the intersection point in world space.
| xyz | The position in world space of the intersection. | 
Get the intersection point and normal in world space.
| xyz | The position in world space of the intersection. | 
| nml | The surface normal in world space of the intersection. | 
      
  | 
  inline | 
Return the time of intersection along the world ray.
Return false if the ray misses the bbox of the grid. 
| iRay | Ray represented in index space. | 
Return false if the ray misses the bbox of the grid. 
| wRay | Ray represented in world space. | 
      
  | 
  friend | 
 1.8.11