HDK
|
#include <UT_SolidAngle.h>
Public Member Functions | |
UT_SubtendedAngle () | |
This is outlined so that we don't need to include UT_BVHImpl.h. More... | |
~UT_SubtendedAngle () | |
This is outlined so that we don't need to include UT_BVHImpl.h. More... | |
UT_SubtendedAngle (const int nsegments, const int *const segment_points, const int npoints, const UT_Vector2T< S > *const positions, const int order=2) | |
void | init (const int nsegments, const int *const segment_points, const int npoints, const UT_Vector2T< S > *const positions, const int order=2) |
void | clear () |
Frees myTree and myData, and clears the rest. More... | |
bool | isClear () const |
Returns true if this is clear. More... | |
T | computeAngle (const UT_Vector2T< T > &query_point, const T accuracy_scale=T(2.0)) const |
Class for quickly approximating signed subtended angle of a large curve from many query points. This is useful for computing the generalized winding number at many points.
NOTE: This is currently only instantiated for <float,float>.
Definition at line 288 of file UT_SolidAngle.h.
UT_SubtendedAngle< T, S >::UT_SubtendedAngle | ( | ) |
This is outlined so that we don't need to include UT_BVHImpl.h.
UT_SubtendedAngle< T, S >::~UT_SubtendedAngle | ( | ) |
This is outlined so that we don't need to include UT_BVHImpl.h.
|
inline |
NOTE: This does not take ownership over segment_points or positions, but does keep pointers to them, so the caller must keep them in scope for the lifetime of this structure.
Definition at line 299 of file UT_SolidAngle.h.
void UT_SubtendedAngle< T, S >::clear | ( | ) |
Frees myTree and myData, and clears the rest.
T UT_SubtendedAngle< T, S >::computeAngle | ( | const UT_Vector2T< T > & | query_point, |
const T | accuracy_scale = T(2.0) |
||
) | const |
Returns an approximation of the signed solid angle of the mesh from the specified query_point accuracy_scale is the value of (maxP/q) beyond which the approximation of the box will be used.
void UT_SubtendedAngle< T, S >::init | ( | const int | nsegments, |
const int *const | segment_points, | ||
const int | npoints, | ||
const UT_Vector2T< S > *const | positions, | ||
const int | order = 2 |
||
) |
Initialize the tree and data. NOTE: It is safe to call init on a UT_SolidAngle that has had init called on it before, to re-initialize it.
|
inline |
Returns true if this is clear.
Definition at line 322 of file UT_SolidAngle.h.