HDK
|
#include <GEO_VolumeElement.h>
Static Public Member Functions | |
template<typename OP > | |
static void | dispatch (GA_PrimitiveTypeId type, const GA_Detail *gdp, GA_Offset offset, OP op) |
template<typename OP > | |
static void | dispatch (const GA_Detail *gdp, GA_Offset offset, OP op) |
template<typename OP > | |
static void | dispatch (GA_PrimitiveTypeId type, const GA_Primitive *baseprim, OP op) |
static GA_Size | getVertexCount (GA_PrimitiveTypeId type, const GA_Detail *gdp, GA_Offset offset) |
static GA_OffsetListRef | getVertexList (const GA_Detail *gdp, GA_Offset offset) |
Return shallow copy of the vertex list. More... | |
static GA_Offset | getVertexOffset (const GA_Detail *gdp, GA_Offset offset, GA_Size index) |
Return the vertex offset from a given vertex index. More... | |
static GA_Offset | getPointOffset (const GA_Detail *gdp, GA_Offset offset, GA_Size index) |
Return the point offset from a given vertex index. More... | |
static GA_Size | getFaceCount (GA_PrimitiveTypeId type, const GA_Detail *d, GA_Offset offset) |
The number of faces that make up this volume. More... | |
static int | getFaceIndices (GA_PrimitiveTypeId type, const GA_Detail *gdp, GA_Offset offset, GA_Size faceno, UT_Array< int > &vtxlist) |
Returns the indices to the vertices, not the vertex offsets! More... | |
static int | getFaceIndexCount (GA_PrimitiveTypeId type, const GA_Detail *gdp, GA_Offset offset, GA_Size faceno) |
Returns the number of indices in specified face. More... | |
static GA_Offset | findSharedFace (GA_PrimitiveTypeId type, const GA_Detail *gdp, GA_Offset offset, GA_Size faceno) |
static GA_Size | getEdgeCount (GA_PrimitiveTypeId type, const GA_Detail *gdp, GA_Offset offset) |
The number of edges in this volume. More... | |
static void | getEdgeIndices (GA_PrimitiveTypeId type, const GA_Detail *gdp, GA_Offset offset, GA_Size edgeno, int &e0, int &e1) |
static void | computeInteriorPointWeights (GA_PrimitiveTypeId type, const GA_Detail *gdp, GA_Offset offset, UT_Array< GA_Offset > &vtxlist, UT_Array< float > &weightlist, fpreal u, fpreal v, fpreal w) |
Evaluate the interior point weights. More... | |
Protected Attributes | |
const GA_Detail * | myDetail |
GA_Offset | myOffset |
GA_PrimitiveTypeId | myType |
Definition at line 37 of file GEO_VolumeElement.h.
|
inline |
Definition at line 41 of file GEO_VolumeElement.h.
|
inline |
Definition at line 49 of file GEO_VolumeElement.h.
Definition at line 142 of file GEO_VolumeElement.h.
|
inlinestatic |
Evaluate the interior point weights.
Definition at line 227 of file GEO_VolumeElement.h.
|
inline |
Definition at line 229 of file GEO_VolumeElement.h.
|
inline |
Definition at line 164 of file GEO_VolumeElement.h.
|
inlinestatic |
This lets you create a stack-version of the primitive so you can duck-type directly to GEO_PrimTetrahedron, GEO_PrimHexahedron, etc. Usage: GEO_VolumeElement::dispatch(type, gdp, primoff, [&](auto &prim) { prim.normal(comp); }); will be the equivalent of creating a stack GEO_PrimTetrahedon(gdp, primoff) and calling normal on it.
To retreive the actual type you can use decltype
GEO_VolumeElement::dispatch(type, gdp, primoff, [&](auto &prim) { using PrimT = SYS_RemoveCVRef_t<decltype(prim)>; typename PrimT::Face face(prim, i); });
Definition at line 74 of file GEO_VolumeElement.h.
|
inlinestatic |
Definition at line 101 of file GEO_VolumeElement.h.
|
inlinestatic |
Definition at line 109 of file GEO_VolumeElement.h.
|
static |
Definition at line 210 of file GEO_VolumeElement.h.
|
inlinestatic |
The number of edges in this volume.
Definition at line 214 of file GEO_VolumeElement.h.
|
inline |
Definition at line 216 of file GEO_VolumeElement.h.
|
inlinestatic |
Returns the indices of the edge. Note each edge shows up once and due to the nature of volumes, is undirected.
Definition at line 221 of file GEO_VolumeElement.h.
Definition at line 223 of file GEO_VolumeElement.h.
|
inlinestatic |
The number of faces that make up this volume.
Definition at line 192 of file GEO_VolumeElement.h.
|
inline |
Definition at line 194 of file GEO_VolumeElement.h.
|
inlinestatic |
Returns the number of indices in specified face.
Definition at line 204 of file GEO_VolumeElement.h.
Definition at line 206 of file GEO_VolumeElement.h.
|
inlinestatic |
Returns the indices to the vertices, not the vertex offsets!
Definition at line 198 of file GEO_VolumeElement.h.
Definition at line 200 of file GEO_VolumeElement.h.
|
inline |
Definition at line 165 of file GEO_VolumeElement.h.
|
inlinestatic |
Return the point offset from a given vertex index.
Definition at line 186 of file GEO_VolumeElement.h.
Definition at line 188 of file GEO_VolumeElement.h.
|
inlinestatic |
Definition at line 168 of file GEO_VolumeElement.h.
|
inline |
Definition at line 170 of file GEO_VolumeElement.h.
|
inlinestatic |
Return shallow copy of the vertex list.
Definition at line 174 of file GEO_VolumeElement.h.
|
inline |
Definition at line 176 of file GEO_VolumeElement.h.
|
inlinestatic |
Return the vertex offset from a given vertex index.
Definition at line 180 of file GEO_VolumeElement.h.
Definition at line 182 of file GEO_VolumeElement.h.
|
inline |
Definition at line 134 of file GEO_VolumeElement.h.
Update the element to point to another primitive in same detail.
Definition at line 154 of file GEO_VolumeElement.h.
|
inline |
Definition at line 166 of file GEO_VolumeElement.h.
|
protected |
Definition at line 233 of file GEO_VolumeElement.h.
|
protected |
Definition at line 234 of file GEO_VolumeElement.h.
|
protected |
Definition at line 235 of file GEO_VolumeElement.h.