HDK
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
UT_GeometryPredicates< REAL, USEFILTER, EXACT > Class Template Reference

#include <UT_GeometryPredicate.h>

Public Member Functions

 UT_GeometryPredicates (const UT_Vector3T< REAL > &bbox_size)
 
 UT_GeometryPredicates (const REAL bbox_size[3])
 
 UT_GeometryPredicates ()
 
 ~UT_GeometryPredicates ()
 
void exactinit (const UT_Vector3T< REAL > &bbox_size)
 
void exactinit (const REAL bbox_size[3])
 
void exactinit ()
 
REAL orient2d (const UT_Vector2T< REAL > &pa, const UT_Vector2T< REAL > &pb, const UT_Vector2T< REAL > &pc) const
 
REAL orient2d (const REAL pa[2], const REAL pb[2], const REAL pc[2]) const
 
REAL orient3d (const UT_Vector3T< REAL > &pa, const UT_Vector3T< REAL > &pb, const UT_Vector3T< REAL > &pc, const UT_Vector3T< REAL > &pd) const
 
REAL orient3d (const REAL pa[3], const REAL pb[3], const REAL pc[3], const REAL pd[3]) const
 
REAL incircle (const UT_Vector2T< REAL > &pa, const UT_Vector2T< REAL > &pb, const UT_Vector2T< REAL > &pc, const UT_Vector2T< REAL > &pd) const
 
REAL incircle (const REAL pa[2], const REAL pb[2], const REAL pc[2], const REAL pd[2]) const
 
REAL insphere (const UT_Vector3T< REAL > &pa, const UT_Vector3T< REAL > &pb, const UT_Vector3T< REAL > &pc, const UT_Vector3T< REAL > &pd, const UT_Vector3T< REAL > &pe) const
 
REAL insphere (const REAL pa[3], const REAL pb[3], const REAL pc[3], const REAL pd[3], const REAL pe[3]) const
 
REAL orient4d (const UT_Vector3T< REAL > &pa, const UT_Vector3T< REAL > &pb, const UT_Vector3T< REAL > &pc, const UT_Vector3T< REAL > &pd, const UT_Vector3T< REAL > &pe, REAL ah, REAL bh, REAL ch, REAL dh, REAL eh) const
 
REAL orient4d (const REAL pa[3], const REAL pb[3], const REAL pc[3], const REAL pd[3], const REAL pe[3], REAL ah, REAL bh, REAL ch, REAL dh, REAL eh) const
 

Protected Attributes

REAL splitter
 
REAL epsilon
 
REAL resulterrbound
 
REAL ccwerrboundA
 
REAL ccwerrboundB
 
REAL ccwerrboundC
 
REAL o3derrboundA
 
REAL o3derrboundB
 
REAL o3derrboundC
 
REAL iccerrboundA
 
REAL iccerrboundB
 
REAL iccerrboundC
 
REAL isperrboundA
 
REAL isperrboundB
 
REAL isperrboundC
 
REAL filter1
 
REAL filter2
 

Detailed Description

template<typename REAL, bool USEFILTER = true, bool EXACT = true>
class UT_GeometryPredicates< REAL, USEFILTER, EXACT >

Use the following class in places where you can specify the bounding box of all the points you will use with these geometry predicates. If the bounding box is not known, use the functions at the global scope (note that those will be slower since there are additional static filters based on the bounding box size used in this class.

Definition at line 34 of file UT_GeometryPredicate.h.

Constructor & Destructor Documentation

template<typename REAL, bool USEFILTER = true, bool EXACT = true>
UT_GeometryPredicates< REAL, USEFILTER, EXACT >::UT_GeometryPredicates ( const UT_Vector3T< REAL > &  bbox_size)
template<typename REAL, bool USEFILTER = true, bool EXACT = true>
UT_GeometryPredicates< REAL, USEFILTER, EXACT >::UT_GeometryPredicates ( const REAL  bbox_size[3])
template<typename REAL, bool USEFILTER = true, bool EXACT = true>
UT_GeometryPredicates< REAL, USEFILTER, EXACT >::UT_GeometryPredicates ( )
template<typename REAL, bool USEFILTER = true, bool EXACT = true>
UT_GeometryPredicates< REAL, USEFILTER, EXACT >::~UT_GeometryPredicates ( )

Member Function Documentation

template<typename REAL, bool USEFILTER = true, bool EXACT = true>
void UT_GeometryPredicates< REAL, USEFILTER, EXACT >::exactinit ( const UT_Vector3T< REAL > &  bbox_size)
template<typename REAL, bool USEFILTER = true, bool EXACT = true>
void UT_GeometryPredicates< REAL, USEFILTER, EXACT >::exactinit ( const REAL  bbox_size[3])
template<typename REAL, bool USEFILTER = true, bool EXACT = true>
void UT_GeometryPredicates< REAL, USEFILTER, EXACT >::exactinit ( )
template<typename REAL, bool USEFILTER = true, bool EXACT = true>
REAL UT_GeometryPredicates< REAL, USEFILTER, EXACT >::incircle ( const UT_Vector2T< REAL > &  pa,
const UT_Vector2T< REAL > &  pb,
const UT_Vector2T< REAL > &  pc,
const UT_Vector2T< REAL > &  pd 
) const
inline

Definition at line 75 of file UT_GeometryPredicate.h.

template<typename REAL, bool USEFILTER = true, bool EXACT = true>
REAL UT_GeometryPredicates< REAL, USEFILTER, EXACT >::incircle ( const REAL  pa[2],
const REAL  pb[2],
const REAL  pc[2],
const REAL  pd[2] 
) const
template<typename REAL, bool USEFILTER = true, bool EXACT = true>
REAL UT_GeometryPredicates< REAL, USEFILTER, EXACT >::insphere ( const UT_Vector3T< REAL > &  pa,
const UT_Vector3T< REAL > &  pb,
const UT_Vector3T< REAL > &  pc,
const UT_Vector3T< REAL > &  pd,
const UT_Vector3T< REAL > &  pe 
) const
inline

Definition at line 89 of file UT_GeometryPredicate.h.

template<typename REAL, bool USEFILTER = true, bool EXACT = true>
REAL UT_GeometryPredicates< REAL, USEFILTER, EXACT >::insphere ( const REAL  pa[3],
const REAL  pb[3],
const REAL  pc[3],
const REAL  pd[3],
const REAL  pe[3] 
) const
template<typename REAL, bool USEFILTER = true, bool EXACT = true>
REAL UT_GeometryPredicates< REAL, USEFILTER, EXACT >::orient2d ( const UT_Vector2T< REAL > &  pa,
const UT_Vector2T< REAL > &  pb,
const UT_Vector2T< REAL > &  pc 
) const
inline

Definition at line 49 of file UT_GeometryPredicate.h.

template<typename REAL, bool USEFILTER = true, bool EXACT = true>
REAL UT_GeometryPredicates< REAL, USEFILTER, EXACT >::orient2d ( const REAL  pa[2],
const REAL  pb[2],
const REAL  pc[2] 
) const
template<typename REAL, bool USEFILTER = true, bool EXACT = true>
REAL UT_GeometryPredicates< REAL, USEFILTER, EXACT >::orient3d ( const UT_Vector3T< REAL > &  pa,
const UT_Vector3T< REAL > &  pb,
const UT_Vector3T< REAL > &  pc,
const UT_Vector3T< REAL > &  pd 
) const
inline

Definition at line 61 of file UT_GeometryPredicate.h.

template<typename REAL, bool USEFILTER = true, bool EXACT = true>
REAL UT_GeometryPredicates< REAL, USEFILTER, EXACT >::orient3d ( const REAL  pa[3],
const REAL  pb[3],
const REAL  pc[3],
const REAL  pd[3] 
) const
template<typename REAL, bool USEFILTER = true, bool EXACT = true>
REAL UT_GeometryPredicates< REAL, USEFILTER, EXACT >::orient4d ( const UT_Vector3T< REAL > &  pa,
const UT_Vector3T< REAL > &  pb,
const UT_Vector3T< REAL > &  pc,
const UT_Vector3T< REAL > &  pd,
const UT_Vector3T< REAL > &  pe,
REAL  ah,
REAL  bh,
REAL  ch,
REAL  dh,
REAL  eh 
) const
inline

Definition at line 105 of file UT_GeometryPredicate.h.

template<typename REAL, bool USEFILTER = true, bool EXACT = true>
REAL UT_GeometryPredicates< REAL, USEFILTER, EXACT >::orient4d ( const REAL  pa[3],
const REAL  pb[3],
const REAL  pc[3],
const REAL  pd[3],
const REAL  pe[3],
REAL  ah,
REAL  bh,
REAL  ch,
REAL  dh,
REAL  eh 
) const

Member Data Documentation

template<typename REAL, bool USEFILTER = true, bool EXACT = true>
REAL UT_GeometryPredicates< REAL, USEFILTER, EXACT >::ccwerrboundA
protected

Definition at line 127 of file UT_GeometryPredicate.h.

template<typename REAL, bool USEFILTER = true, bool EXACT = true>
REAL UT_GeometryPredicates< REAL, USEFILTER, EXACT >::ccwerrboundB
protected

Definition at line 127 of file UT_GeometryPredicate.h.

template<typename REAL, bool USEFILTER = true, bool EXACT = true>
REAL UT_GeometryPredicates< REAL, USEFILTER, EXACT >::ccwerrboundC
protected

Definition at line 127 of file UT_GeometryPredicate.h.

template<typename REAL, bool USEFILTER = true, bool EXACT = true>
REAL UT_GeometryPredicates< REAL, USEFILTER, EXACT >::epsilon
protected

Definition at line 124 of file UT_GeometryPredicate.h.

template<typename REAL, bool USEFILTER = true, bool EXACT = true>
REAL UT_GeometryPredicates< REAL, USEFILTER, EXACT >::filter1
protected

Definition at line 133 of file UT_GeometryPredicate.h.

template<typename REAL, bool USEFILTER = true, bool EXACT = true>
REAL UT_GeometryPredicates< REAL, USEFILTER, EXACT >::filter2
protected

Definition at line 133 of file UT_GeometryPredicate.h.

template<typename REAL, bool USEFILTER = true, bool EXACT = true>
REAL UT_GeometryPredicates< REAL, USEFILTER, EXACT >::iccerrboundA
protected

Definition at line 129 of file UT_GeometryPredicate.h.

template<typename REAL, bool USEFILTER = true, bool EXACT = true>
REAL UT_GeometryPredicates< REAL, USEFILTER, EXACT >::iccerrboundB
protected

Definition at line 129 of file UT_GeometryPredicate.h.

template<typename REAL, bool USEFILTER = true, bool EXACT = true>
REAL UT_GeometryPredicates< REAL, USEFILTER, EXACT >::iccerrboundC
protected

Definition at line 129 of file UT_GeometryPredicate.h.

template<typename REAL, bool USEFILTER = true, bool EXACT = true>
REAL UT_GeometryPredicates< REAL, USEFILTER, EXACT >::isperrboundA
protected

Definition at line 130 of file UT_GeometryPredicate.h.

template<typename REAL, bool USEFILTER = true, bool EXACT = true>
REAL UT_GeometryPredicates< REAL, USEFILTER, EXACT >::isperrboundB
protected

Definition at line 130 of file UT_GeometryPredicate.h.

template<typename REAL, bool USEFILTER = true, bool EXACT = true>
REAL UT_GeometryPredicates< REAL, USEFILTER, EXACT >::isperrboundC
protected

Definition at line 130 of file UT_GeometryPredicate.h.

template<typename REAL, bool USEFILTER = true, bool EXACT = true>
REAL UT_GeometryPredicates< REAL, USEFILTER, EXACT >::o3derrboundA
protected

Definition at line 128 of file UT_GeometryPredicate.h.

template<typename REAL, bool USEFILTER = true, bool EXACT = true>
REAL UT_GeometryPredicates< REAL, USEFILTER, EXACT >::o3derrboundB
protected

Definition at line 128 of file UT_GeometryPredicate.h.

template<typename REAL, bool USEFILTER = true, bool EXACT = true>
REAL UT_GeometryPredicates< REAL, USEFILTER, EXACT >::o3derrboundC
protected

Definition at line 128 of file UT_GeometryPredicate.h.

template<typename REAL, bool USEFILTER = true, bool EXACT = true>
REAL UT_GeometryPredicates< REAL, USEFILTER, EXACT >::resulterrbound
protected

Definition at line 126 of file UT_GeometryPredicate.h.

template<typename REAL, bool USEFILTER = true, bool EXACT = true>
REAL UT_GeometryPredicates< REAL, USEFILTER, EXACT >::splitter
protected

Definition at line 123 of file UT_GeometryPredicate.h.


The documentation for this class was generated from the following file: