|
| void | copyPrimitive (const GEO_Primitive *src) override |
| |
| bool | isDegenerate () const override |
| | Is the primitive degenerate. More...
|
| |
| GEO_Primitive * | copy (int preserve_shared_pts=0) const override |
| |
| void | copySubclassData (const GA_Primitive *source) override |
| |
| void | fillTSPrim (TS_MetaSuperQuadric &tsprim) const |
| |
| GEO_MetaPrim * | castToMetaPrim () override |
| |
| const GEO_MetaPrim * | castToMetaPrim () const override |
| |
| TS_MetaPrimitive * | getNewMetaPrim () const override |
| |
| float | density (const UT_Vector3 &pos) const override |
| |
| void | getBBox (UT_BoundingBox &bbox) const override |
| |
| bool | getBBox (UT_BoundingBox *bbox) const override |
| |
| void | setXYexp (float v) |
| |
| void | setZexp (float v) |
| |
| float | getXYexp () const |
| |
| float | getZexp () const |
| |
| const GA_PrimitiveJSON * | getJSON () const override |
| |
| int | evaluateNormalVector (UT_Vector3 &nml, float u, float v=0, float w=0) const override |
| |
| bool | getBBox (UT_BoundingBox *bbox) const override |
| |
| void | addToBSphere (UT_BoundingSphere *bsphere) const override |
| |
| bool | hasGuideEdge (int edgeid, UT_Vector3 &a, UT_Vector3 &b) const override |
| |
| bool | hasXsectPoint (int pointid, UT_Vector3 &p) const override |
| |
| fpreal | calcVolume (const UT_Vector3 &refpt) const override |
| |
| fpreal | calcArea () const override |
| |
| fpreal | calcPerimeter () const override |
| |
| const GA_PrimitiveJSON * | getJSON () const override |
| |
| bool | enlargeBoundingSphere (UT_BoundingSphere &b, const GA_Attribute *P) const override |
| |
| UT_Vector3 | baryCenter () const override |
| |
| UT_Vector3 | computeNormal () const override |
| | Return a normal vector for the primitive. More...
|
| |
| UT_Vector3D | computeNormalD () const override |
| |
| bool | saveH9 (std::ostream &os, bool binary, const UT_Array< GA_AttribSaveDataH9 > &prim_attribs, const UT_Array< GA_AttribSaveDataH9 > &vtx_attribs) const override |
| |
| bool | loadH9 (UT_IStream &is, const UT_Array< GA_AttribLoadDataH9 > &prim_attribs, const UT_Array< GA_AttribLoadDataH9 > &vtx_attribs) override |
| |
| void | transform (const UT_Matrix4 &mat) override |
| |
| GEO_Primitive * | copy (int preserve_shared_pts=0) const override |
| |
| void | copyPrimitive (const GEO_Primitive *src) override |
| |
| void | copySubclassData (const GA_Primitive *source) override |
| |
| void | reverse () override |
| | Reverse the order of vertices. More...
|
| |
| SYS_FORCE_INLINE GA_Size | getFastVertexCount () const |
| | NOTE: Getting the vertex count of a quadric is rather unnecessary. More...
|
| |
| SYS_FORCE_INLINE GA_Offset | getVertexOffset () const |
| | The fast vertex offset accessor. More...
|
| |
| SYS_FORCE_INLINE GA_Index | getVertexIndex () const |
| | The fast vertex index accessor. More...
|
| |
| SYS_FORCE_INLINE GA_Offset | getPointOffset () const |
| | The fast point offset accessor. More...
|
| |
| SYS_FORCE_INLINE GA_Index | getPointIndex () const |
| | The fast point index accessor. More...
|
| |
| SYS_FORCE_INLINE UT_Vector3 | getPos3 () const |
| | The fast point position accessor. More...
|
| |
| SYS_FORCE_INLINE void | setPos3 (const UT_Vector3 &pos) const |
| |
| SYS_FORCE_INLINE UT_Vector4 | getPos4 () const |
| |
| SYS_FORCE_INLINE void | setPos4 (const UT_Vector4 &pos) const |
| |
| SYS_FORCE_INLINE void | setPointOffset (GA_Offset ptoff) |
| |
| int | detachPoints (GA_PointGroup &grp) override |
| |
| GA_DereferenceStatus | dereferencePoint (GA_Offset point, bool dry_run=false) override |
| |
| GA_DereferenceStatus | dereferencePoints (const GA_RangeMemberQuery &pt_q, bool dry_run=false) override |
| |
| bool | isDegenerate () const override |
| | Is the primitive degenerate. More...
|
| |
| void | getAxes (UT_Vector3 &x, UT_Vector3 &y, UT_Vector3 &z) const |
| |
| void | getXAxis (UT_Vector3 &x) const |
| |
| void | getYAxis (UT_Vector3 &y) const |
| |
| void | getZAxis (UT_Vector3 &z) const |
| |
| void | setAxes (const UT_Vector3 &x, const UT_Vector3 &y, const UT_Vector3 &z) |
| |
| void | setXAxis (const UT_Vector3 &x) |
| |
| void | setYAxis (const UT_Vector3 &y) |
| |
| void | setZAxis (const UT_Vector3 &z) |
| |
| const UT_Matrix3 & | getTransform () const |
| |
| void | setTransform (const UT_Matrix3 &m) |
| |
| void | getTransform4 (UT_Matrix4 &matx) const |
| |
| void | setTransform4 (const UT_Matrix4 &matx) |
| |
| void | getLocalTransform (UT_Matrix3D &x) const override |
| |
| void | setLocalTransform (const UT_Matrix3D &x) override |
| | Set the local transform. The default implementation does nothing. More...
|
| |
| SYS_FORCE_INLINE void | setVertexPoint (GA_Offset pt) |
| |
| void | assignVertex (GA_Offset new_vtx, bool update_topology) |
| |
| void | stashed (bool beingstashed, GA_Offset offset=GA_INVALID_OFFSET) override |
| |
| void | unitLengthToUnitPair (float ulength, float vlength, float &uparm, float &vparm) const override |
| |
| void | unitLengthToUnitPair (float ulength, float vlength, float &uparm, float &vparm, float tolerance) const override |
| |
| void | unitToUnitLengthPair (float uparm, float vparm, float &ulength, float &vlength) const override |
| |
| bool | isQuadric () const override |
| |
| bool | enlargeBoundingBox (UT_BoundingRect &b, const GA_Attribute *P) const override |
| |
| bool | enlargeBoundingBox (UT_BoundingBox &b, const GA_Attribute *P) const override |
| |
| void | enlargePointBounds (UT_BoundingBox &e) const override |
| |
| GA_PrimCompat::TypeMask | getPrimitiveId () const override |
| |
| void | copyAttributesAndGroups (const GEO_Primitive &src, bool copy_groups=true) |
| |
| void | copyAttributesAndGroups (const GEO_Primitive &src, GA_AttributeRefMap &gah, bool copy_groups=true) |
| |
| void | copyAttributesAndGroups (const GEO_Primitive &src, GA_PrimitiveWrangler &wrangler, bool copy_groups=true) |
| | NOTE: The copying of groups only works if src is in the same detail. More...
|
| |
| void | copyAttributeData (const GEO_Primitive &src) |
| |
| void | copyAttributeData (const GEO_Primitive &src, GA_AttributeRefMap &gah) |
| |
| void | copyAttributeData (const GEO_Primitive &src, GA_PrimitiveWrangler &wrangler) |
| |
| void | copyAttributeValues (const GEO_Primitive &src, GA_PrimitiveWrangler &wrangler) |
| |
| void | copyGroupMembership (const GEO_Primitive &src) |
| |
| virtual void | realToUnitPair (float ureal, float vreal, float &uunit, float &vunit) const |
| |
| virtual void | unitToRealPair (float uunit, float vunit, float &ureal, float &vreal) const |
| |
| bool | evaluateBaryCenter (GA_Offset result_vtx, GA_AttributeRefMap &map) const |
| |
| bool | evaluatePoint (GA_Offset result_vtx, GA_AttributeRefMap &map, fpreal u, fpreal v=0, uint du=0, uint dv=0) const |
| |
| int | evaluatePoint (UT_Vector4 &pos, float u, float v=0, unsigned du=0, unsigned dv=0) const |
| |
| bool | evaluateInteriorPoint (GA_Offset result_vtx, GA_AttributeRefMap &map, fpreal u, fpreal v, fpreal w=0) const |
| |
| int | evaluateInteriorPoint (UT_Vector4 &pos, fpreal u, fpreal v, fpreal w=0) const |
| |
| virtual void | computeInteriorPointWeights (UT_Array< GA_Offset > &vtxlist, UT_Array< float > &weightlist, fpreal u, fpreal v, fpreal w) const |
| |
| SYS_FORCE_INLINE GEO_Detail * | getParent () const |
| |
| virtual bool | getVisibleBBox (UT_BoundingBox *bbox) const |
| |
| bool | enlargeVisibleBoundingBox (UT_BoundingBox &b, const GA_Attribute *P) const override |
| |
| virtual UT_Vector3D | baryCenterD () const |
| |
| template<typename T > |
| UT_Vector3T< T > | baryCenterT () const |
| |
| virtual void | isolate () |
| | Method to isolate a pasted surface. More...
|
| |
| bool | hasEdge (const GA_Edge &edge) const override |
| | Method to determine if a primitive has an edge (undirected). More...
|
| |
| virtual bool | vertexApply (bool(*apply)(GA_Offset vtx, void *), void *data=0) const |
| |
| GEO_Vertex | getVertexElement (GA_Size i) const |
| |
| virtual int | parametricBBox (float u, float v, float *u0, float *u1, float *v0, float *v1) |
| |
| virtual float | uvDist (float u1, float v1, float u2, float v2) const |
| |
| int | bboxIntersectRay (const UT_Vector3 &rayorig, const UT_Vector3 &raydir, int maxtries=10, float tmax=1E17F, float *distance=0, UT_Vector3 *nml=0) const |
| |
| virtual void | normal (NormalComp &output) const =0 |
| |
| virtual void | normal (NormalCompD &output) const =0 |
| |
| virtual GEO_Primitive * | convert (GEO_ConvertParms &parms, GA_PointGroup *usedpts=0)=0 |
| |
| virtual GEO_Primitive * | convertNew (GEO_ConvertParms &parms)=0 |
| |
| virtual void | clip (UT_Vector3 normal, float distance=0, GA_PrimitiveGroup *clipgrp=NULL) |
| |
| virtual int | intersectRay (const UT_Vector3 &o, const UT_Vector3 &d, float tmax=1E17F, float tol=1E-12F, float *distance=0, UT_Vector3 *pos=0, UT_Vector3 *nml=0, int accurate=0, float *u=0, float *v=0, int ignoretrim=1) const |
| |
| virtual | ~GA_Primitive () |
| |
virtual const
GA_PrimitiveDefinition & | getTypeDef () const =0 |
| |
| const char * | getTypeName () const |
| |
| SYS_FORCE_INLINE GA_Detail & | getDetail () const |
| |
| SYS_FORCE_INLINE GA_Offset | getMapOffset () const |
| | Gets the offset of this primitive in the detail containing it. More...
|
| |
| SYS_FORCE_INLINE GA_Index | getMapIndex () const |
| | Gets the index of this primitive in the detail containing it. More...
|
| |
SYS_FORCE_INLINE const
GA_IndexMap & | getIndexMap () const |
| | Gets the index map for primitives in the detail containing this primitive. More...
|
| |
| GA_Index | getNum () const |
| |
| void | swapOffsetValue (const GA_Defragment &defrag) |
| | For defragmentation, we need to update the offset. More...
|
| |
| bool | isPrimary () const |
| |
SYS_FORCE_INLINE const
GA_PrimitiveTypeId & | getTypeId () const |
| |
| GA_PrimitiveFamilyMask | getFamilyMask () const |
| |
| bool | isFamily (unsigned family_mask) const |
| |
| bool | hasLocalTransform () const |
| | Whether the primitive has a transform associated with it. More...
|
| |
| virtual void | getLocalTransform4 (UT_Matrix4D &matrix) const |
| |
| virtual int64 | getMemoryUsage () const |
| |
| virtual int64 | getDeviceMemoryUsage () const |
| |
| virtual void | countMemory (UT_MemoryCounter &counter) const |
| |
| SYS_FORCE_INLINE GA_Size | getVertexCount () const |
| | Return the number of vertices used by this primitive. More...
|
| |
| SYS_FORCE_INLINE GA_Offset | getVertexOffset (GA_Size primvertexnum) const |
| |
| SYS_FORCE_INLINE GA_Index | getVertexIndex (GA_Size primvertexnum) const |
| |
| SYS_FORCE_INLINE GA_Offset | getPointOffset (GA_Size i) const |
| |
| SYS_FORCE_INLINE void | setPointOffset (GA_Size i, GA_Offset ptoff) |
| |
| SYS_FORCE_INLINE GA_Index | getPointIndex (GA_Size i) const |
| |
| SYS_FORCE_INLINE UT_Vector3 | getPos3 (GA_Size i) const |
| |
| SYS_FORCE_INLINE UT_Vector3D | getPos3D (GA_Size i) const |
| |
| template<typename T > |
| UT_Vector3T< T > | getPos3T (GA_Size i) const |
| |
| SYS_FORCE_INLINE void | setPos3 (GA_Size i, const UT_Vector3 &pos) const |
| |
| SYS_FORCE_INLINE void | setPos3 (GA_Size i, const UT_Vector3D &pos) const |
| |
| SYS_FORCE_INLINE UT_Vector4 | getPos4 (GA_Size i) const |
| |
| SYS_FORCE_INLINE UT_Vector4D | getPos4D (GA_Size i) const |
| |
| SYS_FORCE_INLINE void | setPos4 (GA_Size i, const UT_Vector4 &pos) const |
| |
| SYS_FORCE_INLINE void | setPos4 (GA_Size i, const UT_Vector4D &pos) const |
| |
| GA_Range | getVertexRange (bool harden=false) const |
| | Get a range of all the vertices accessed by the primitive. More...
|
| |
| GA_Range | getPointRange (bool harden=false) const |
| |
| bool | isPointUsed (GA_Offset ptoff) const |
| |
| void | addPointRefToGroup (GA_PointGroup &grp) const |
| |
| void | edgeApply (GA_EdgeApplyFunc apply, void *data=nullptr) const |
| |
| void | edgeApplyIndex (GA_EdgeApplyIndexFunc apply, void *data=nullptr) const |
| |
| virtual void | iterateEdges (GA_IterateEdgesFunc apply_func) const |
| |
| virtual void | iterateEdgesByVertex (GA_IterateEdgesByVertexFunc apply_func) const |
| |
| bool | findEdgePoints (GA_Offset ptoff0, GA_Offset ptoff1, GA_Size &vtx0, GA_Size &vtx1) const |
| |
| void | copyUnwiredForMerge (const GA_Primitive *src, const GA_MergeMap &map) |
| |
| virtual bool | saveSharedLoadData (UT_JSONWriter &w, GA_SaveMap &save, GA_GeometryIndex *geo_index) const |
| |
| virtual bool | registerSharedLoadData (int load_data_type, GA_SharedDataHandlePtr item) |
| |
| const GA_IntrinsicManager & | getIntrinsicManager () const |
| |
| virtual void | clearForDeletion () |
| |
| virtual void | getAdjacentBoundaryVertices (GA_Offset vtx, GA_Offset &prev_vtx, GA_Offset &next_vtx) const |
| |
| virtual bool | supportsHedge () const |
| |
| virtual GA_Offset | releaseVertex (GA_Offset vtx) |
| |
| virtual int | isVisible () const |
| |
| virtual unsigned | getNumSecondaryDetails () const |
| | A primitive may support any number of secondary details. More...
|
| |
| virtual const GA_Detail * | getSecondaryDetail (GA_Index i) const |
| |
| virtual GA_Detail * | getSecondaryDetail (GA_Index i) |
| |
| GA_Index | getNumSecondary (GA_Index detail) const |
| |
| const GA_Primitive * | getSecondaryByIndex (GA_Index detail, GA_Index i) const |
| |
| GA_Primitive * | getSecondaryByIndex (GA_Index detail, GA_Index i) |
| |
| const GA_Primitive * | getSecondaryByOffset (GA_Index detail, GA_Offset o) const |
| |
| GA_Primitive * | getSecondaryByOffset (GA_Index detail, GA_Offset o) |
| |
| SYS_FORCE_INLINE bool | isVertexListTrivial () const |
| |
| bool | isPointListTrivial () const |
| |
| template<typename FUNCTOR > |
| SYS_FORCE_INLINE void | forEachVertex (FUNCTOR &&functor) const |
| |
| template<typename FUNCTOR > |
| SYS_FORCE_INLINE void | forEachPoint (FUNCTOR &&functor) const |
| |
| bool | vertexApply (bool(*apply)(GA_Offset vtx, void *), void *data=nullptr) const |
| |
| virtual void | flushCEWriteCaches () |
| | Copy any modified caches from the GPU back to CPU cache. More...
|
| |
| virtual void | flushCECaches () |
| |
| virtual void | stealCEBuffers (const GA_Primitive *src) |
| | Steal the underlying CE buffer from the source. More...
|
| |
| virtual void | swapVertexOffsets (const GA_Defragment &defrag) |
| |
| GA_LocalIntrinsic | findIntrinsic (const UT_StringRef &nm) const |
| |
| GA_LocalIntrinsic | findIntrinsic (GA_GlobalIntrinsic h) const |
| |
| GA_GlobalIntrinsic | findGlobalIntrinsic (GA_LocalIntrinsic h) const |
| |
| const char * | getIntrinsicName (GA_LocalIntrinsic h) const |
| |
| GA_Size | getIntrinsicTupleSize (GA_LocalIntrinsic h) const |
| |
| bool | getIntrinsicCollapseSingletons (GA_LocalIntrinsic h) const |
| |
| GA_StorageClass | getIntrinsicStorage (GA_LocalIntrinsic h) const |
| |
| bool | getIntrinsicReadOnly (GA_LocalIntrinsic h) const |
| |
| const UT_Options * | getIntrinsicOptions (GA_LocalIntrinsic h) const |
| |
| GA_Size | getIntrinsic (GA_LocalIntrinsic h, UT_String &val) const |
| |
| GA_Size | getIntrinsic (GA_LocalIntrinsic h, UT_StringArray &val) const |
| |
| GA_Size | getIntrinsic (GA_LocalIntrinsic h, UT_OptionsHolder &val) const |
| |
| GA_Size | getIntrinsic (GA_LocalIntrinsic h, UT_Array< UT_OptionsHolder > &val) const |
| |
| GA_Size | getIntrinsic (GA_LocalIntrinsic h, int64 *v, GA_Size size) const |
| |
| GA_Size | getIntrinsic (GA_LocalIntrinsic h, fpreal64 *v, GA_Size sz) const |
| |
| bool | getIntrinsic (GA_LocalIntrinsic h, float &v) const |
| |
| bool | getIntrinsic (GA_LocalIntrinsic h, int &v) const |
| |
| bool | getIntrinsic (GA_LocalIntrinsic h, UT_Vector2 &v) const |
| |
| bool | getIntrinsic (GA_LocalIntrinsic h, UT_Vector3 &v) const |
| |
| bool | getIntrinsic (GA_LocalIntrinsic h, UT_Vector4 &v) const |
| |
| bool | getIntrinsic (GA_LocalIntrinsic h, UT_Matrix2 &v) const |
| |
| bool | getIntrinsic (GA_LocalIntrinsic h, UT_Matrix3 &v) const |
| |
| bool | getIntrinsic (GA_LocalIntrinsic h, UT_Matrix4 &v) const |
| |
| bool | getIntrinsic (GA_LocalIntrinsic h, double &v) const |
| |
| bool | getIntrinsic (GA_LocalIntrinsic h, int64 &v) const |
| |
| bool | getIntrinsic (GA_LocalIntrinsic h, UT_Vector2D &v) const |
| |
| bool | getIntrinsic (GA_LocalIntrinsic h, UT_Vector3D &v) const |
| |
| bool | getIntrinsic (GA_LocalIntrinsic h, UT_Vector4D &v) const |
| |
| bool | getIntrinsic (GA_LocalIntrinsic h, UT_Matrix2D &v) const |
| |
| bool | getIntrinsic (GA_LocalIntrinsic h, UT_Matrix3D &v) const |
| |
| bool | getIntrinsic (GA_LocalIntrinsic h, UT_Matrix4D &v) const |
| |
| GA_Size | setIntrinsic (GA_LocalIntrinsic h, const char *value) |
| |
| GA_Size | setIntrinsic (GA_LocalIntrinsic h, const UT_StringArray &value) |
| |
| GA_Size | setIntrinsic (GA_LocalIntrinsic h, const char **val, GA_Size s) |
| |
| GA_Size | setIntrinsic (GA_LocalIntrinsic h, const UT_OptionsHolder &value) |
| |
| GA_Size | setIntrinsic (GA_LocalIntrinsic h, const UT_Array< UT_OptionsHolder > &value) |
| |
| GA_Size | setIntrinsic (GA_LocalIntrinsic h, const UT_OptionsHolder *value, GA_Size s) |
| |
| GA_Size | setIntrinsic (GA_LocalIntrinsic h, const int64 val) |
| |
| GA_Size | setIntrinsic (GA_LocalIntrinsic h, const fpreal64 val) |
| |
| GA_Size | setIntrinsic (GA_LocalIntrinsic h, const int64 *val, GA_Size sz) |
| |
| GA_Size | setIntrinsic (GA_LocalIntrinsic h, const fpreal64 *v, GA_Size sz) |
| |
| | GEO_MetaPrim () |
| |
| virtual | ~GEO_MetaPrim () |
| |
| bool | setMetaKernel (const char *type) |
| |
| const char * | getMetaKernel () const |
| |
| void | setWeight (float w) |
| |
| float | getWeight () const |
| |