HDK
|
#include <GEO_AttributeHandleList.h>
Classes | |
class | VertexArrayAdapter |
Protected Member Functions | |
void | setDetail (const GEO_Detail *gdp) |
void | setDetail (GEO_Detail *gdp) |
void | setTempDetail (const GEO_Detail *gdp) |
const GEO_Detail * | getBoundDetail () const |
void | invalidateCachedLists () |
bool | appendAttribute (GEO_AttributeHandle *h) |
bool | removeAttribute (int i) |
bool | removeAttribute (const char *name) |
GEO_AttributeHandle * | getEntry (int i) const |
GEO_AttributeHandle * | getEntry (const char *name) const |
void | clearAttributes () |
Removes the attributes. More... | |
Definition at line 38 of file GEO_AttributeHandleList.h.
GEO_AttributeHandleList::GEO_AttributeHandleList | ( | ) |
|
virtual |
|
inline |
Definition at line 262 of file GEO_AttributeHandleList.h.
|
inline |
Definition at line 278 of file GEO_AttributeHandleList.h.
|
inline |
Definition at line 330 of file GEO_AttributeHandleList.h.
|
inline |
Definition at line 353 of file GEO_AttributeHandleList.h.
|
inline |
Definition at line 386 of file GEO_AttributeHandleList.h.
|
inline |
Definition at line 409 of file GEO_AttributeHandleList.h.
|
inline |
Definition at line 343 of file GEO_AttributeHandleList.h.
|
inline |
Definition at line 372 of file GEO_AttributeHandleList.h.
|
inline |
Definition at line 399 of file GEO_AttributeHandleList.h.
|
inline |
Definition at line 421 of file GEO_AttributeHandleList.h.
void GEO_AttributeHandleList::addHScale | ( | const GEO_Primitive * | p, |
const GEO_Vertex & | v, | ||
fpreal | s | ||
) |
void GEO_AttributeHandleList::addScale | ( | const GEO_Primitive * | p, |
const GEO_Vertex * | v, | ||
fpreal | s | ||
) |
void GEO_AttributeHandleList::addScale | ( | const GEO_Primitive * | p, |
const GEO_Vertex & | v, | ||
fpreal | s | ||
) |
void GEO_AttributeHandleList::addScale | ( | const GEO_Vertex * | ppt, |
fpreal | scale | ||
) |
|
inline |
Definition at line 356 of file GEO_AttributeHandleList.h.
void GEO_AttributeHandleList::addScale | ( | const GEO_Primitive * | ppt, |
fpreal | scale | ||
) |
void GEO_AttributeHandleList::addScale | ( | const GEO_Detail * | ppt, |
fpreal | scale | ||
) |
void GEO_AttributeHandleList::addScaleDest | ( | const GEO_Vertex * | ppt, |
fpreal | scale | ||
) |
|
inline |
Definition at line 375 of file GEO_AttributeHandleList.h.
void GEO_AttributeHandleList::addScaleDest | ( | const GEO_Primitive * | ppt, |
fpreal | scale | ||
) |
void GEO_AttributeHandleList::addScaleDest | ( | const GEO_Detail * | ppt, |
fpreal | scale | ||
) |
int GEO_AttributeHandleList::appendAllAttributes | ( | GA_AttributeOwner | owner | ) |
bool GEO_AttributeHandleList::appendAttribute | ( | const GA_Attribute * | attrib | ) |
bool GEO_AttributeHandleList::appendAttribute | ( | GA_Attribute * | attrib | ) |
bool GEO_AttributeHandleList::appendAttribute | ( | const GA_Attribute & | attrib | ) |
bool GEO_AttributeHandleList::appendAttribute | ( | GA_Attribute & | attrib | ) |
|
protected |
bool GEO_AttributeHandleList::appendAttributeByName | ( | const char * | name, |
GA_AttributeOwner | o | ||
) |
int GEO_AttributeHandleList::appendAttributes | ( | GA_AttributeOwner | , |
const GA_AttributeFilter & | filter, | ||
GA_AttributeScope | scope = GA_SCOPE_INVALID |
||
) |
int GEO_AttributeHandleList::appendAttributesByPattern | ( | const char * | pattern, |
GA_AttributeOwner | o, | ||
GA_AttributeScope | s = GA_SCOPE_INVALID |
||
) |
int GEO_AttributeHandleList::appendAttributesByType | ( | const char * | type, |
GA_AttributeOwner | o | ||
) |
int GEO_AttributeHandleList::appendAttributesByTypeInfo | ( | GA_TypeInfo | i, |
GA_AttributeOwner | o | ||
) |
int GEO_AttributeHandleList::appendFloatAttributes | ( | GA_AttributeOwner | owner, |
int | includeP = GEO_AHANDLE_LIST_INCLUDE_P |
||
) |
int GEO_AttributeHandleList::appendPointP | ( | ) |
void GEO_AttributeHandleList::appendSourceMap | ( | const GEO_Detail * | gdp, |
GA_AttributeOwner | o | ||
) |
void GEO_AttributeHandleList::appendSourceMap | ( | const GEO_AttributeHandleList & | hlist | ) |
|
inline |
Allocate a temporary vertex/point
Definition at line 94 of file GEO_AttributeHandleList.h.
|
inline |
Allocate a temporary vertex/point
Definition at line 91 of file GEO_AttributeHandleList.h.
void GEO_AttributeHandleList::bindDetail | ( | const GEO_Detail * | gdp | ) |
Binding a const detail pointer will create read-only handles, while binding a non-const detail pointer will create read-write handles.
void GEO_AttributeHandleList::bindDetail | ( | GEO_Detail * | gdp | ) |
void GEO_AttributeHandleList::bindMutableTemp | ( | const GEO_Detail * | gdp | ) |
Binding a mutable copy of a const detail creates an empty writable detail, that is automatically populated with copies of attributes from the original detail as this handle list is populated.
In addition, the source mapping will be automatically built from the original detail. Consequently users of this handle list must be careful to distinguish between destination and source elements for an operation, exactly as if the handle list was explicitly bound to a mutable detail with the source mapping explicitly built from another detail. In fact, this method is simply a conveniently wrapped shorthand for that very sequence of actions.
void GEO_AttributeHandleList::childSourceMapChanged | ( | ) |
Call this method whenever a child handle's source mapping is changed outside of this list.
void GEO_AttributeHandleList::clearAllAttributes | ( | ) |
|
protected |
Removes the attributes.
void GEO_AttributeHandleList::clearSourceMap | ( | ) |
GEO_AttributeHandleList* GEO_AttributeHandleList::clone | ( | ) | const |
void GEO_AttributeHandleList::copyDataFrom | ( | const GEO_Primitive * | p, |
const GEO_Vertex * | v | ||
) |
void GEO_AttributeHandleList::copyDataFrom | ( | const GEO_Primitive * | p, |
const GEO_Vertex & | v | ||
) |
void GEO_AttributeHandleList::copyDataFrom | ( | const GEO_Vertex * | ppt | ) |
|
inline |
Definition at line 368 of file GEO_AttributeHandleList.h.
void GEO_AttributeHandleList::copyDataFrom | ( | const GEO_Primitive * | ppt | ) |
void GEO_AttributeHandleList::copyDataFrom | ( | const GEO_Detail * | ppt | ) |
void GEO_AttributeHandleList::copyDestData | ( | const GEO_Vertex * | ppt | ) |
|
inline |
Definition at line 381 of file GEO_AttributeHandleList.h.
void GEO_AttributeHandleList::copyDestData | ( | const GEO_Primitive * | ppt | ) |
void GEO_AttributeHandleList::dump | ( | const char * | msg = "" | ) | const |
|
inline |
Definition at line 126 of file GEO_AttributeHandleList.h.
void GEO_AttributeHandleList::fillAttributeRefMap | ( | GA_AttributeRefMap & | map | ) | const |
Fill a GA_AttributeRefMap. This method can be used to adapt code that used to work with a GEO_AttributeHandleList to use a GA_AttributeRefMap instead.
void GEO_AttributeHandleList::fillAttributeRefMap | ( | GA_AttributeRefMap & | map, |
GA_AttributeOwner | source_owner | ||
) | const |
Fill a GA_AttributeRefMap, but only with source attributes that match the source_owner
. For example, consider the code:
With the code above, the rmap will only contain point/vertex attributes.
void GEO_AttributeHandleList::floatsToMatrix | ( | UT_MatrixF & | matrix, |
int | row, | ||
bool | includePw = true |
||
) | const |
Move all the floating point data into a matrix column.
|
inline |
Free a temporary vertex/point
Definition at line 103 of file GEO_AttributeHandleList.h.
|
inline |
Free a temporary vertex/point
Definition at line 100 of file GEO_AttributeHandleList.h.
GEO_AttributeHandleList* GEO_AttributeHandleList::getBoundClosure | ( | ) |
Returns a pointer to an equivalent handle list for performing all operations using the bound mutable detail as both the destination and source.
More specifically, the returned handle list is bound to the same mutable detail as this list, populated with the same attributes, with a default source map from that same mutable detail. A NULL will be returned from an unbound list.
|
inlineprotected |
Definition at line 490 of file GEO_AttributeHandleList.h.
|
inline |
Get a pointer to the currently bound mutable detail, if any. Note that this may be NULL for a list bound to a const detail.
Definition at line 120 of file GEO_AttributeHandleList.h.
|
inlineprotected |
Definition at line 500 of file GEO_AttributeHandleList.h.
|
protected |
int GEO_AttributeHandleList::getFloatCount | ( | bool | includePw = true | ) | const |
Return the total number of floating point attributes in the list.
|
inline |
Map from a GA_VertexPoolIndex to a GA_Offset
Definition at line 85 of file GEO_AttributeHandleList.h.
|
inline |
Map from a GA_VertexPoolIndex to a GA_Offset
Definition at line 82 of file GEO_AttributeHandleList.h.
|
inline |
Access to the vertex pool. Under no circumstances are you allowed to change the detail binding. Also note that the vertex pool may be unbound in the case of a list of read-only handles.
Definition at line 78 of file GEO_AttributeHandleList.h.
bool GEO_AttributeHandleList::hasVectorAttributes | ( | GA_AttributeOwner | owner | ) | const |
void GEO_AttributeHandleList::invalidate | ( | ) |
|
protected |
|
inline |
Query whether the specified detail is the "destination" detail of this handle list.
Definition at line 114 of file GEO_AttributeHandleList.h.
bool GEO_AttributeHandleList::isCommonSourceMapDetail | ( | const GEO_Detail * | gdp | ) | const |
Query whether the specified detail is the common origin of all the source map attributes (trivially true if no source attributes).
|
inline |
Definition at line 128 of file GEO_AttributeHandleList.h.
void GEO_AttributeHandleList::lerp | ( | const GEO_Primitive * | p, |
const GEO_Vertex * | v, | ||
fpreal | w | ||
) |
void GEO_AttributeHandleList::lerp | ( | const GEO_Primitive * | p0, |
const GEO_Vertex * | v0, | ||
const GEO_Primitive * | p1, | ||
const GEO_Vertex * | v1, | ||
fpreal | weight | ||
) |
void GEO_AttributeHandleList::lerp | ( | const GEO_Primitive * | p, |
const GEO_Vertex & | v, | ||
fpreal | w | ||
) |
void GEO_AttributeHandleList::lerp | ( | const GEO_Primitive * | p0, |
const GEO_Vertex & | v0, | ||
const GEO_Primitive * | p1, | ||
const GEO_Vertex & | v1, | ||
fpreal | weight | ||
) |
void GEO_AttributeHandleList::lerp | ( | const GEO_Vertex * | ppt, |
fpreal | w | ||
) |
void GEO_AttributeHandleList::lerp | ( | const GEO_Vertex * | p0, |
const GEO_Vertex * | p1, | ||
fpreal | w | ||
) |
|
inline |
Definition at line 359 of file GEO_AttributeHandleList.h.
|
inline |
Definition at line 362 of file GEO_AttributeHandleList.h.
void GEO_AttributeHandleList::lerp | ( | const GEO_Primitive * | ppt, |
fpreal | w | ||
) |
void GEO_AttributeHandleList::lerp | ( | const GEO_Primitive * | p0, |
const GEO_Primitive * | p1, | ||
fpreal | w | ||
) |
void GEO_AttributeHandleList::lerp | ( | const GEO_Detail * | ppt, |
fpreal | w | ||
) |
void GEO_AttributeHandleList::matrixToFloats | ( | const UT_MatrixF & | matrix, |
int | row, | ||
bool | includePw = true |
||
) |
Extract the floats from the given row of the matrix.
void GEO_AttributeHandleList::multiply | ( | const GEO_Primitive * | p, |
const GEO_Vertex * | v | ||
) |
void GEO_AttributeHandleList::multiply | ( | const GEO_Primitive * | p, |
const GEO_Vertex & | v | ||
) |
void GEO_AttributeHandleList::multiply | ( | const GEO_Vertex * | ppt | ) |
|
inline |
Definition at line 365 of file GEO_AttributeHandleList.h.
void GEO_AttributeHandleList::multiply | ( | const GEO_Primitive * | ppt | ) |
void GEO_AttributeHandleList::multiply | ( | const GEO_Detail * | ppt | ) |
void GEO_AttributeHandleList::multiplyDest | ( | const GEO_Vertex * | ppt | ) |
|
inline |
Definition at line 378 of file GEO_AttributeHandleList.h.
void GEO_AttributeHandleList::multiplyDest | ( | const GEO_Primitive * | ppt | ) |
void GEO_AttributeHandleList::multiplyDest | ( | const GEO_Detail * | ppt | ) |
GEO_AttributeHandleList& GEO_AttributeHandleList::operator= | ( | const GEO_AttributeHandleList & | h | ) |
Assignment with a handle list bound to a mutable copy of a const detail will bind to that mutable copy of the detail, so h cannot be destroyed or rebound before this handle list is destroyed or rebound.
|
inline |
Definition at line 224 of file GEO_AttributeHandleList.h.
|
inline |
Definition at line 227 of file GEO_AttributeHandleList.h.
|
inline |
Definition at line 230 of file GEO_AttributeHandleList.h.
|
inline |
Definition at line 233 of file GEO_AttributeHandleList.h.
|
protected |
|
protected |
bool GEO_AttributeHandleList::removeAttributeByName | ( | const char * | name | ) |
int GEO_AttributeHandleList::removeAttributes | ( | const GA_AttributeFilter & | filter | ) |
int GEO_AttributeHandleList::removeMissingAttributes | ( | const GEO_Detail * | other | ) |
|
protected |
|
protected |
void GEO_AttributeHandleList::setElement | ( | GEO_Primitive * | prim, |
GEO_Vertex * | v | ||
) |
void GEO_AttributeHandleList::setElement | ( | const GEO_Primitive * | prim, |
const GEO_Vertex * | v | ||
) |
void GEO_AttributeHandleList::setElement | ( | GEO_Primitive * | prim, |
const GEO_Vertex & | v | ||
) |
void GEO_AttributeHandleList::setElement | ( | const GEO_Primitive * | prim, |
const GEO_Vertex & | v | ||
) |
void GEO_AttributeHandleList::setElement | ( | GEO_Vertex * | vtx | ) |
void GEO_AttributeHandleList::setElement | ( | const GEO_Vertex * | vtx | ) |
void GEO_AttributeHandleList::setElement | ( | GEO_Vertex | vtx | ) |
void GEO_AttributeHandleList::setElement | ( | GEO_Primitive * | prim | ) |
void GEO_AttributeHandleList::setElement | ( | const GEO_Primitive * | prim | ) |
void GEO_AttributeHandleList::setElement | ( | GEO_Detail * | gdp | ) |
void GEO_AttributeHandleList::setElement | ( | const GEO_Detail * | gdp | ) |
void GEO_AttributeHandleList::setGlobal | ( | ) |
|
protected |