HDK
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
GEO_Profiles Class Reference

#include <GEO_Profiles.h>

+ Inheritance diagram for GEO_Profiles:

Public Member Functions

 GEO_Profiles (GEO_TPSurf &tpsurf)
 
virtual ~GEO_Profiles ()
 
virtual GA_DetailcloneEmptyDetail (bool clone_attributes) const
 
GD_Facemap (const GEO_Face &face, UT_Axis3::axis uaxis, UT_Axis3::axis vaxis, float umin, float umax, float vmin, float vmax, int unif, UT_BoundingBox *bbox=0)
 
GD_Facemap (const GEO_Face &face, UT_Axis3::axis uaxis=UT_Axis3::XAXIS, UT_Axis3::axis vaxis=UT_Axis3::YAXIS)
 
int map (const GA_PrimitiveGroup &faces, UT_Axis3::axis uaxis, UT_Axis3::axis vaxis, float umin, float umax, float vmin, float vmax, int unif, const GEO_Detail *gdp=0)
 
int remap (GD_Primitive &profile, float umin, float umax, float vmin, float vmax, int unif)
 
int remap (int profileidx, float umin, float umax, float vmin, float vmax, int unif)
 
void reverseU (void)
 
void reverseV (void)
 
virtual void getDomainBBox (float &u0, float &v0, float &u1, float &v1) const
 
GD_TrimLoopgetTrimLoops (GD_TrimRule rule)
 
int getMaxHeight ()
 
int getBaseDir ()
 
const GEO_TPSurfgetSurf () const
 
virtual int64 getMemoryUsage (bool inclusive) const
 Compute memory usage (includes all shared memory) More...
 
virtual void countMemory (UT_MemoryCounter &counter, bool inclusive) const
 
- Public Member Functions inherited from GD_Detail
 GD_Detail ()
 
virtual ~GD_Detail ()
 
void clearAndDestroy ()
 
GA_Detail::IOStatus saveH9Stream (std::ostream &os, bool binary, const GA_SaveOptions *options) const
 
GA_Detail::IOStatus loadH9 (UT_IStream &is, const GA_LoadOptions *options)
 
void merge (const GD_Detail &src, bool onlyvisible=false)
 
void transform (const UT_Matrix3 &matx, GA_PrimitiveGroup *primgroup=0, GA_PointGroup *pointclosure=0)
 
void translate (const UT_Vector2 &delta, GA_PrimitiveGroup *primgroup=0, GA_PointGroup *pointclosure=0)
 
void transformPoints (const UT_Matrix3 &matx, GA_PointGroup *pointgroup=0)
 
void translatePoints (const UT_Vector2 &delta, GA_PointGroup *pointGroup=0)
 
GA_Offset insertPointOffset (GA_Index before=GA_INVALID_INDEX)
 
GA_Offset insertPointOffset (const UT_Vector3 &pos, GA_Index before=GA_INVALID_INDEX)
 
GA_Offset appendPointOffset ()
 
GA_Offset appendPointOffset (const UT_Vector3 &pos)
 
GD_PrimitivegetGDPrimitive (GA_Offset offset)
 
const GD_PrimitivegetGDPrimitive (GA_Offset offset) const
 
GD_PrimitiveinsertPrimitive (const GA_PrimitiveTypeId &type, const GD_Primitive *before=0)
 
GD_PrimitiveappendPrimitive (const GA_PrimitiveTypeId &type)
 
GD_TrimRegionappendTrimRegion (int opencasual=0)
 
void deleteTrimRegion (GD_TrimRegion &region)
 
void deleteTrimRegion (unsigned int num)
 
GD_TrimLoopgenerateTrimLoops (const UT_BoundingRect &brect, float offset=1e-4F, float tol=1e-4F)
 
void destroyTrimRegions (int deletecurves=1)
 
void createTrimRegion (GD_TrimLoop *loop)
 
int getPointBBox (UT_BoundingBox *bbox, const GA_PointGroup *g=0) const
 
int getPointBBox (UT_BoundingBox &bbox, const UT_Matrix4R &transform, const GA_PointGroup *g=0) const
 
int getPointBSphere (UT_BoundingSphere *bsphere, const GA_PointGroup *g=0, int updateRequired=0) const
 
void getDomainBounds (UT_BoundingRect &rect) const
 
int getNumFaces (int *visible=0) const
 
int hasTrimLoops (void) const
 
int hasTrimRegions (void) const
 
const UT_ValArray
< GD_TrimRegion * > & 
trimRegions (void) const
 
GD_TrimRegionappendOuterLoop (float tol=0, int checkduplicate=1)
 
int altitude (void) const
 
void altitude (int a)
 
UT_ValArray< GD_TrimRegion * > & trimRegions (void)
 
GA_PointGroupnewPointGroup (const char *name, int internal)
 
GA_PrimitiveGroupnewPrimitiveGroup (const char *name, int internal)
 
GA_PointGroupnewInternalPointGroup ()
 
GA_PrimitiveGroupnewInternalPrimitiveGroup ()
 
void destroyPointGroup (GA_PointGroup *g)
 
void destroyPrimitiveGroup (GA_PrimitiveGroup *g)
 
bool destroyPointGroup (const char *name)
 
bool destroyPrimitiveGroup (const char *name)
 
bool loadTrimRegions (int n, UT_IStream &is)
 
int saveTrimRegions (int n, std::ostream &os, int b=0) const
 
bool loadTrimRegions (UT_JSONParser &p, const GA_LoadMap &map)
 
bool saveTrimRegions (UT_JSONWriter &w, const GA_SaveMap &map) const
 
- Public Member Functions inherited from GA_Detail
 GA_Detail (GA_PrimitiveFactory &factory, GA_Storage Pstorage=GA_STORE_REAL32, bool isprimary=true, bool full_topology=true)
 
virtual ~GA_Detail ()
 Destructor. More...
 
exint getUniqueId () const
 
void clear ()
 
bool isEmpty () const
 
GA_AttributegetP ()
 Convenience method to access the P attribute. More...
 
const GA_AttributegetP () const
 
UT_Vector2 getPos2 (GA_Offset ptoff) const
 The ptoff passed is the point offset. More...
 
SYS_FORCE_INLINE UT_Vector3 getPos3 (GA_Offset ptoff) const
 The ptoff passed is the point offset. More...
 
template<typename T >
bool getPos3AsArray (const GA_Range &ptrange, UT_Array< UT_Vector3T< T > > &positions) const
 
template<typename T >
bool setPos3FromArray (const GA_Range &ptrange, const UT_Array< UT_Vector3T< T > > &positions)
 
void setPos2 (GA_Offset ptoff, const UT_Vector2 &P)
 Set P from a UT_Vector2. More...
 
SYS_FORCE_INLINE void setPos3 (GA_Offset ptoff, const UT_Vector3 &P)
 Set P from a UT_Vector3. More...
 
SYS_FORCE_INLINE void setPos3 (GA_Offset ptoff, fpreal x, fpreal y, fpreal z)
 Set P given the x, y, z components. More...
 
SYS_FORCE_INLINE void translatePoint (GA_Offset ptoff, const UT_Vector3 &delta)
 
fpreal getPw (GA_Offset ptoff) const
 Get the homogeneous coordinate for a point. More...
 
void setPw (GA_Offset ptoff, fpreal w)
 Set the homogeneous coordinate for a point. More...
 
UT_Vector4 getPos4 (GA_Offset ptoff) const
 The ptoff passed is the point offset. More...
 
void setPos4 (GA_Offset ptoff, const UT_Vector4 &P)
 Set P from a UT_Vector4. More...
 
void setPos4 (GA_Offset ptoff, fpreal x, fpreal y, fpreal z, fpreal w)
 Set P given the x, y, z, w components. More...
 
SYS_FORCE_INLINE GA_Offset appendPoint ()
 Append a new point, returning its new data offset. More...
 
SYS_FORCE_INLINE GA_Offset appendPointBlock (GA_Size npoints)
 Append new points, returning the first offset of the contiguous block. More...
 
SYS_FORCE_INLINE GA_Size getNumPoints () const
 Return the number of points. More...
 
SYS_FORCE_INLINE GA_Offset getNumPointOffsets () const
 
SYS_FORCE_INLINE GA_Offset pointOffset (GA_Index index) const
 Given a point's index (in append order), return its data offset. More...
 
SYS_FORCE_INLINE GA_Index pointIndex (GA_Offset offset) const
 Given a point's data offset, return its index. More...
 
GA_Index reorderPoint (GA_Offset ptoff, GA_Index new_order)
 
GA_PrimitiveappendPrimitive (const GA_PrimitiveTypeId &type)
 Append a primitive by GA_PrimitiveTypeId. More...
 
GA_PrimitiveappendPrimitive (const UT_StringRef &type)
 Append a primitive by type name string. More...
 
GA_Offset appendPrimitiveBlock (const GA_PrimitiveTypeId &type, GA_Size nprimitives)
 Append a contiguous block of primitives by GA_PrimitiveTypeId. More...
 
GA_Offset appendPrimitivesAndVertices (const GA_PrimitiveTypeId &type, GA_Size nprimitives, GA_Size nvertices_each, GA_Offset &vertex_block_start, bool closed_flag=false)
 
GA_Offset appendPrimitivesAndVertices (const GA_PrimitiveTypeId &type, const GA_PolyCounts &vertex_counts, GA_Offset &vertex_block_start, bool closed_flag=false)
 
SYS_FORCE_INLINE GA_Size getNumPrimitives () const
 Return the number of primitives. More...
 
SYS_FORCE_INLINE GA_Offset getNumPrimitiveOffsets () const
 
SYS_FORCE_INLINE GA_Offset primitiveOffset (GA_Index index) const
 Given a primitive's index (in append order), return its data offset. More...
 
SYS_FORCE_INLINE GA_Index primitiveIndex (GA_Offset offset) const
 Given a primitive's data offset, return its index. More...
 
SYS_FORCE_INLINE GA_OffsetListRef getPrimitiveVertexList (GA_Offset primoff) const
 
SYS_FORCE_INLINE GA_Size getPrimitiveVertexCount (GA_Offset primoff) const
 
SYS_FORCE_INLINE GA_Offset getPrimitiveVertexOffset (GA_Offset primoff, GA_Size i) const
 
SYS_FORCE_INLINE int getPrimitiveTypeId (GA_Offset primoff) const
 
SYS_FORCE_INLINE bool getPrimitiveClosedFlag (GA_Offset primoff) const
 
SYS_FORCE_INLINE void setPrimitiveClosedFlag (GA_Offset primoff, bool closed)
 
GA_Index reorderPrimitive (GA_Offset offset, GA_Index new_order)
 
bool swapPrimitiveOrder (GA_Offset offset1, GA_Offset offset2)
 Swap the order of the two specified primitive data offsets. More...
 
SYS_FORCE_INLINE GA_Offset appendVertex ()
 Append a vertex (for the entire detail) More...
 
SYS_FORCE_INLINE GA_Offset appendVertexBlock (GA_Size nvertices)
 Append new vertices, returning the first offset of the contiguous block. More...
 
SYS_FORCE_INLINE GA_Size getNumVertices () const
 Return the number verticies in the entire detail. More...
 
SYS_FORCE_INLINE GA_Offset getNumVertexOffsets () const
 
SYS_FORCE_INLINE GA_Offset vertexOffset (GA_Index index) const
 Given a vertex's index (in append order), return its data offset. More...
 
SYS_FORCE_INLINE GA_Index vertexIndex (GA_Offset offset) const
 Given a vertex's data offset, return its index. More...
 
SYS_FORCE_INLINE GA_Offset vertexPoint (GA_Offset vertex) const
 Given a vertex, return the point it references. More...
 
SYS_FORCE_INLINE GA_Offset vertexPrimitive (GA_Offset vertex) const
 
SYS_FORCE_INLINE GA_Offset pointVertex (GA_Offset point) const
 
SYS_FORCE_INLINE GA_Offset vertexToNextVertex (GA_Offset vtx) const
 
SYS_FORCE_INLINE GA_Offset vertexToPrevVertex (GA_Offset vtx) const
 
GA_Offset getVertexReferencingPoint (GA_Offset ptoff, GA_Offset primoff=GA_INVALID_OFFSET) const
 
GA_Size getVerticesReferencingPoint (GA_OffsetArray &vertices, GA_Offset point_offset) const
 
GA_Size getPrimitivesReferencingPoint (GA_OffsetArray &primitives, GA_Offset point_offset) const
 
bool hasNoSharedPoints () const
 
bool destroyVertexOffset (GA_Offset offset)
 
bool destroyPrimitiveIndex (GA_Index index, bool and_points=false)
 
bool destroyPrimitive (GA_Primitive &prim, bool and_points=false)
 
GA_Size destroyPrimitives (const GA_Range &it, bool and_points=false)
 
GA_Size destroyDegeneratePrimitives (const GA_Range &it, bool and_points=false)
 
GA_Size destroyDegeneratePrimitives (const GA_PrimitiveGroup *prims=0, bool and_points=false)
 
GA_Size destroyUnusedPoints (const GA_PointGroup *ptgrp=0)
 Destroy unused points. If ptgrp is given, then only within the group. More...
 
GA_Size destroyVertexOffsets (const GA_Range &range)
 
GA_Size destroyVertices (const GA_Range &range)
 
bool isPointUsed (GA_Offset point) const
 
bool isPointUsedFast (GA_Offset point) const
 
bool findUnusedPoints (GA_OffsetList *unused=nullptr) const
 
const GA_IndexMapgetIndexMap (GA_AttributeOwner owner) const
 
GA_IndexMapgetIndexMap (GA_AttributeOwner owner)
 
const GA_IndexMapgetPointMap () const
 
const GA_IndexMapgetVertexMap () const
 
const GA_IndexMapgetPrimitiveMap () const
 
const GA_IndexMapgetGlobalMap () const
 
const GA_PrimitiveListgetPrimitiveList () const
 
GA_PrimitiveListgetPrimitiveList ()
 
GA_AttributeSetgetAttributes ()
 
const GA_AttributeSetgetAttributes () const
 
GA_TopologygetTopology ()
 
const GA_TopologygetTopology () const
 
bool checkValidTopology () const
 
void createTopologyAttributes ()
 
void clearTopologyAttributes ()
 
void bumpAllDataIds ()
 
void bumpDataIdsForRewire ()
 
void bumpDataIdsForAddOrRemove (bool added_or_removed_points, bool added_or_removed_vertices, bool added_or_removed_primitives)
 
bool defragment (GA_AttributeOwner owner, const UT_Options *options=nullptr)
 
bool defragment (const UT_Options *options=nullptr)
 
void sortVertexMapByPrimitiveUse ()
 
SYS_FORCE_INLINE bool destroyAttribute (GA_AttributeOwner owner, GA_AttributeScope scope, const UT_StringRef &name)
 
SYS_FORCE_INLINE bool destroyAttribute (GA_AttributeOwner owner, const UT_StringRef &name)
 
SYS_FORCE_INLINE bool renameAttribute (GA_AttributeOwner owner, GA_AttributeScope scope, const UT_StringRef &fromName, const UT_StringHolder &toName)
 
GA_AttributecreateTupleAttribute (GA_AttributeOwner owner, GA_AttributeScope scope, const UT_StringHolder &name, GA_Storage storage, int tuple_size, const GA_Defaults &defaults=GA_Defaults(0.0f), const UT_Options *create_args=nullptr, const GA_AttributeOptions *attribute_options=nullptr)
 
GA_AttributecreateTupleAttribute (GA_AttributeOwner owner, const UT_StringHolder &name, GA_Storage storage, int tuple_size, const GA_Defaults &defaults=GA_Defaults(0.0f), const UT_Options *create_args=nullptr, const GA_AttributeOptions *attribute_options=nullptr)
 
GA_AttributecreateStringAttribute (GA_AttributeOwner owner, GA_AttributeScope scope, const UT_StringHolder &name, const UT_Options *create_args=nullptr, const GA_AttributeOptions *attribute_options=nullptr)
 
GA_AttributecreateStringAttribute (GA_AttributeOwner owner, const UT_StringHolder &name, const UT_Options *create_args=nullptr, const GA_AttributeOptions *attribute_options=nullptr)
 
SYS_FORCE_INLINE const
GA_Attribute
findAttribute (GA_AttributeScope scope, const UT_StringRef &name, const GA_AttributeOwner search_order[], int search_size) const
 
SYS_FORCE_INLINE const
GA_Attribute
findAttribute (const UT_StringRef &name, const GA_AttributeOwner search_order[], int search_size) const
 
SYS_FORCE_INLINE const
GA_Attribute
findAttribute (GA_AttributeOwner owner, GA_AttributeScope scope, const UT_StringRef &name) const
 
SYS_FORCE_INLINE const
GA_Attribute
findAttribute (GA_AttributeOwner owner, const UT_StringRef &name) const
 
SYS_FORCE_INLINE const
GA_Attribute
findPointAttribute (GA_AttributeScope s, const UT_StringRef &name) const
 
SYS_FORCE_INLINE const
GA_Attribute
findPointAttribute (const UT_StringRef &name) const
 
SYS_FORCE_INLINE const
GA_Attribute
findVertexAttribute (GA_AttributeScope s, const UT_StringRef &name) const
 
SYS_FORCE_INLINE const
GA_Attribute
findVertexAttribute (const UT_StringRef &name) const
 
SYS_FORCE_INLINE const
GA_Attribute
findPrimitiveAttribute (GA_AttributeScope s, const UT_StringRef &name) const
 
SYS_FORCE_INLINE const
GA_Attribute
findPrimitiveAttribute (const UT_StringRef &name) const
 
SYS_FORCE_INLINE const
GA_Attribute
findGlobalAttribute (GA_AttributeScope s, const UT_StringRef &name) const
 
SYS_FORCE_INLINE const
GA_Attribute
findGlobalAttribute (const UT_StringRef &name) const
 
SYS_FORCE_INLINE GA_AttributefindAttribute (GA_AttributeScope scope, const UT_StringRef &name, const GA_AttributeOwner search_order[], int search_size)
 
SYS_FORCE_INLINE GA_AttributefindAttribute (const UT_StringRef &name, const GA_AttributeOwner search_order[], int search_size)
 
SYS_FORCE_INLINE GA_AttributefindAttribute (GA_AttributeOwner owner, GA_AttributeScope scope, const UT_StringRef &name)
 
SYS_FORCE_INLINE GA_AttributefindAttribute (GA_AttributeOwner owner, const UT_StringRef &name)
 
SYS_FORCE_INLINE GA_AttributefindPointAttribute (GA_AttributeScope s, const UT_StringRef &name)
 
SYS_FORCE_INLINE GA_AttributefindPointAttribute (const UT_StringRef &name)
 
SYS_FORCE_INLINE GA_AttributefindVertexAttribute (GA_AttributeScope s, const UT_StringRef &name)
 
SYS_FORCE_INLINE GA_AttributefindVertexAttribute (const UT_StringRef &name)
 
SYS_FORCE_INLINE GA_AttributefindPrimitiveAttribute (GA_AttributeScope s, const UT_StringRef &name)
 
SYS_FORCE_INLINE GA_AttributefindPrimitiveAttribute (const UT_StringRef &name)
 
SYS_FORCE_INLINE GA_AttributefindGlobalAttribute (GA_AttributeScope s, const UT_StringRef &name)
 
SYS_FORCE_INLINE GA_AttributefindGlobalAttribute (const UT_StringRef &name)
 
GA_ElementGroupcreateElementGroup (GA_AttributeOwner owner, const UT_StringHolder &name, bool ordered=false)
 
GA_ElementGroupcreateInternalElementGroup (GA_AttributeOwner owner, bool ordered=false)
 
GA_ElementGroupfindElementGroup (GA_AttributeOwner owner, const UT_StringRef &name)
 
const GA_ElementGroupfindElementGroup (GA_AttributeOwner owner, const UT_StringRef &name) const
 
const GA_ElementGroupTablegetElementGroupTable (GA_AttributeOwner owner) const
 
SYS_FORCE_INLINE
GA_ElementGroupTable
getElementGroupTable (GA_AttributeOwner owner)
 
GA_GroupTablegetGroupTable (GA_GroupType group_type)
 
const GA_GroupTablegetGroupTable (GA_GroupType group_type) const
 
template<GA_AttributeOwner OWNER>
SYS_FORCE_INLINE
GA_ElementGroupTableT< OWNER >
::GROUP_TYPE * 
createElementGroup (const UT_StringHolder &name, bool ordered=false)
 
template<GA_AttributeOwner OWNER>
SYS_FORCE_INLINE
GA_ElementGroupTableT< OWNER >
::GROUP_TYPE * 
createInternalElementGroup (bool ordered=false)
 
template<GA_AttributeOwner OWNER>
SYS_FORCE_INLINE
GA_ElementGroupTableT< OWNER >
::GROUP_TYPE * 
findElementGroup (const UT_StringRef &name)
 
template<GA_AttributeOwner OWNER>
SYS_FORCE_INLINE const
GA_ElementGroupTableT< OWNER >
::GROUP_TYPE * 
findElementGroup (const UT_StringRef &name) const
 
void getElementGroupList (GA_AttributeOwner owner, UT_Array< const GA_ElementGroup * > &list) const
 
void getElementGroupList (GA_AttributeOwner owner, UT_Array< GA_ElementGroup * > &list)
 
SYS_FORCE_INLINE bool destroyElementGroup (GA_AttributeOwner owner, const UT_StringRef &name)
 
SYS_FORCE_INLINE bool destroyElementGroup (GA_AttributeOwner owner, const char *name)
 
bool destroyElementGroup (GA_ElementGroup *group)
 
bool destroyGroup (GA_Group *group)
 
SYS_FORCE_INLINE const
GA_PointGroup
findPointGroup (const UT_StringRef &name) const
 
SYS_FORCE_INLINE const
GA_VertexGroup
findVertexGroup (const UT_StringRef &name) const
 
SYS_FORCE_INLINE const
GA_PrimitiveGroup
findPrimitiveGroup (const UT_StringRef &name) const
 
SYS_FORCE_INLINE GA_PointGroupfindPointGroup (const UT_StringRef &name)
 
SYS_FORCE_INLINE GA_VertexGroupfindVertexGroup (const UT_StringRef &name)
 
SYS_FORCE_INLINE
GA_PrimitiveGroup
findPrimitiveGroup (const UT_StringRef &name)
 
GA_EdgeGroupcreateEdgeGroup (const UT_StringHolder &name)
 
GA_EdgeGroupcreateInternalEdgeGroup ()
 
const GA_EdgeGroupfindEdgeGroup (const UT_StringRef &name) const
 
GA_EdgeGroupfindEdgeGroup (const UT_StringRef &name)
 
void getEdgeGroupList (UT_Array< const GA_EdgeGroup * > &list) const
 
void getEdgeGroupList (UT_Array< GA_EdgeGroup * > &list)
 
SYS_FORCE_INLINE bool destroyEdgeGroup (const UT_StringRef &name)
 
SYS_FORCE_INLINE bool destroyEdgeGroup (GA_EdgeGroup *g)
 
GA_Size destroyEmptyGroups (GA_AttributeOwner owner)
 
GA_Size destroyAllEmptyGroups ()
 
const GA_IntrinsicManagergetIntrinsicManager () const
 
template<typename FUNCTOR >
SYS_FORCE_INLINE void forEachPoint (FUNCTOR &&functor) const
 
template<typename FUNCTOR >
SYS_FORCE_INLINE void forEachPoint (const GA_PointGroup *group, FUNCTOR &&functor) const
 
template<typename FUNCTOR >
SYS_FORCE_INLINE void forEachPoint (const GA_PointGroup *group, bool complement, FUNCTOR &&functor) const
 
template<typename FUNCTOR >
SYS_FORCE_INLINE void forEachPrimitive (FUNCTOR &&functor) const
 
template<typename FUNCTOR >
SYS_FORCE_INLINE void forEachPrimitive (const GA_PrimitiveGroup *group, FUNCTOR &&functor) const
 
template<typename FUNCTOR >
SYS_FORCE_INLINE void forEachPrimitive (const GA_PrimitiveGroup *group, bool complement, FUNCTOR &&functor) const
 
GA_Range getPointRange (const GA_PointGroup *group=0) const
 Get a range of all points in the detail. More...
 
GA_Range getPrimitiveRange (const GA_PrimitiveGroup *group=0) const
 Get a range of all primitives in the detail. More...
 
GA_Range getPointRangeSlice (GA_Index begin_ptnum, GA_Index end_ptnum=GA_INVALID_INDEX) const
 Get ordered point range from base_ptnum to end_ptnum, or the end. More...
 
GA_Range getPrimitiveRangeSlice (GA_Index begin_prim, GA_Index end_prim=GA_INVALID_INDEX) const
 Get ordered primitive range from base_prim to end_prim, or the end. More...
 
GA_Range getVertexRange (const GA_VertexGroup *group=0) const
 Get a range of all vertices in the detail. More...
 
GA_Range getGlobalRange () const
 Get a range representing the global (detail) data. More...
 
bool enlargeBoundingBox (UT_BoundingRect &box, const GA_Range &range) const
 
bool enlargeBoundingBox (UT_BoundingRect &box, const GA_Range &range, const GA_Attribute *P) const
 
bool enlargeBoundingBox (UT_BoundingBox &box, const GA_Range &range) const
 
bool enlargeBoundingBox (UT_BoundingBox &box, const GA_Range &range, const GA_Attribute *P) const
 
void computeQuickBounds (UT_BoundingBox &box) const
 
void computeQuickBounds (UT_BoundingBox &box, GA_Size counts[], GA_Size count_buf_size) const
 
void cloneCopyGroupsAndAttributes (const GA_Detail &src, bool copydetailattribs=false)
 
SYS_FORCE_INLINE void copyPoint (GA_Offset destptoff, GA_Offset srcptoff, const GA_AttributeFilter *filter=nullptr)
 
void copyVertex (GA_Offset destvtxoff, GA_Offset srcvtxoff, bool ref_point_dont_copy, const GA_AttributeFilter *filter=nullptr)
 
void baseMerge (const GA_Detail &src)
 Merge the source detail into this detail (using default options) More...
 
void baseMerge (const GA_Detail &src, GA_MergeOptions &options)
 Merge the source detail into this detail with options. More...
 
void replaceWith (const GA_Detail &src, GA_AttributeFilter *skip=nullptr)
 
void replaceWithPoints (const GA_Detail &src, GA_AttributeFilter *skip=nullptr)
 
virtual void clearCaches ()
 
void mergeGlobalAttributes (const GA_Detail &src)
 Merge global attributes (using default options) More...
 
void mergeGlobalAttributes (const GA_Detail &src, GA_MergeOptions &options)
 Merge source global attributes using options. More...
 
void cloneMissingAttributes (const GA_Detail &src, GA_AttributeOwner owner, const GA_AttributeFilter &filter)
 
void cloneMissingGroups (const GA_Detail &src, GA_AttributeOwner owner, const GA_AttributeFilter &filter)
 Clone any missing groups from the source detail. More...
 
bool registerIO (GA_IO *io) const
 Register an IO file format. More...
 
const GA_IOfindIO (const char *name=nullptr) const
 
void getIONames (UT_StringArray &names) const
 
IOStatus save (const char *filename, const GA_SaveOptions *options, UT_StringArray *errors=0) const
 
IOStatus save (std::ostream &os, bool binary, const GA_SaveOptions *options, UT_StringArray *errors=0) const
 
IOStatus save (UT_JSONWriter &w, const GA_SaveOptions *opts=0) const
 
IOStatus load (const char *filename, const GA_LoadOptions *opts=0, UT_StringArray *errors=0)
 Load a geometry file. More...
 
IOStatus load (UT_IStream &is, const GA_LoadOptions *opts=0, UT_StringArray *errors=0)
 Load a geometry file given a UT_IStream. More...
 
IOStatus load (UT_JSONParser &p, const GA_LoadOptions *opts=0, UT_StringArray *errors=0)
 
bool stat (GA_Stat &stat, uint level=0xffff) const
 
void statAttributes (GA_Stat &stat, uint level=0xffff) const
 Fill out only the attribute information on the stat. More...
 
void statGroups (GA_Stat &stat, uint level=0xffff) const
 Fill out only the group information on the stat. More...
 
virtual void statVolumes (GA_Stat &stat, uint level=0xffff) const
 Fill out only the volume information. More...
 
const GA_PrimitiveFactorygetPrimitiveFactory () const
 
virtual void refreshCachedHandles ()
 
void refreshCachedAttributes ()
 Refreshes the cached myP attribute. More...
 
void constructTailInitializers (GA_AttributeOwner owner, GA_Offset start, GA_Offset size=GA_Offset(1))
 
bool containsPrimitiveType (const GA_PrimitiveTypeId &type) const
 
GA_Size countPrimitiveType (const GA_PrimitiveTypeId &type) const
 
bool containsLocalTransformPrimitive () const
 
bool getPrimitivesOfType (const GA_PrimitiveTypeId &type, UT_Array< const GA_Primitive * > &prims) const
 
GA_PrimitiveTypeMask getPrimitiveTypeMaskAll () const
 
GA_PrimitiveTypeMask getPrimitiveTypeMask (const GA_PrimitiveGroup *group=0) const
 
const GA_AttributeInstanceMatrixgetInstanceMatrix () const
 Return cached attribute instance matrix pointer. More...
 
void clearInstanceMatrix ()
 
bool isPrimary () const
 
void flushCEWriteCaches ()
 
void flushCECaches ()
 
void copyChangedNonTransforming (const GA_Detail *inputgeo, GA_AttributeOwner owner)
 
void incrementMetaCacheCount ()
 
int64 getMetaCacheCount () const
 
void stashAll ()
 
void destroyStashed ()
 
const GA_AttributegetPwAttribute () const
 
GA_AttributegetPwAttribute ()
 
SYS_FORCE_INLINE GA_PrimitivegetPrimitive (GA_Offset prim_off)
 
SYS_FORCE_INLINE const
GA_Primitive
getPrimitive (GA_Offset prim_off) const
 
GA_PrimitivegetPrimitiveByIndex (GA_Index prim_idx)
 
const GA_PrimitivegetPrimitiveByIndex (GA_Index prim_idx) const
 
bool destroyPointOffset (GA_Offset ptoff, GA_DestroyPointMode mode=GA_LEAVE_PRIMITIVES, bool guarantee_no_vertex_references=false)
 
bool destroyPointIndex (GA_Index index, GA_DestroyPointMode mode=GA_LEAVE_PRIMITIVES, bool guarantee_no_vertex_references=false)
 
GA_Size destroyUnusedPoints (const GA_Range &point_range)
 
GA_Size destroyPointOffsets (const GA_Range &range, GA_DestroyPointMode mode=GA_LEAVE_PRIMITIVES, bool guarantee_no_vertex_references=false)
 
GA_Size destroyPoints (const GA_Range &range, GA_DestroyPointMode mode=GA_LEAVE_PRIMITIVES, bool guarantee_no_vertex_references=false)
 
GA_AttributeOwner getAttributeOwner (const GA_AttributeDict &dict) const
 
const GA_AttributeDictgetAttributeDict (GA_AttributeOwner owner) const
 
GA_AttributecreateAttribute (GA_AttributeOwner owner, GA_AttributeScope scope, const UT_StringHolder &name, const UT_Options *create_args, const GA_AttributeOptions *attribute_options, const UT_StringRef &attribtype)
 
GA_AttributecreateAttribute (GA_AttributeOwner owner, const UT_StringHolder &name, const UT_Options *create_args, const GA_AttributeOptions *attribute_options, const UT_StringRef &attribtype)
 
SYS_FORCE_INLINE GA_ATINumericcreateDetachedTupleAttribute (GA_AttributeOwner owner, GA_Storage storage, int tuple_size, const GA_Defaults &defaults=GA_Defaults(0.0f), const GA_AttributeOptions *attribute_options=nullptr) const
 
SYS_FORCE_INLINE GA_AttributecreateDetachedAttribute (GA_AttributeOwner owner, const UT_StringRef &attribtype, const UT_Options *create_args=nullptr, const GA_AttributeOptions *attribute_options=nullptr) const
 
SYS_FORCE_INLINE GA_AttributecreateDetachedAttribute (GA_AttributeOwner owner, const GA_AttributeType &attribtype, const UT_Options *create_args=nullptr, const GA_AttributeOptions *attribute_options=nullptr) const
 
template<typename T >
bool getAttributeAsArray (const GA_Attribute *atr, const GA_Range &range, UT_Array< T > &result) const
 Get/set all the point attribute data from/to a contiguous array. More...
 
template<typename T >
bool setAttributeFromArray (GA_Attribute *atr, const GA_Range &range, const UT_Array< T > &src)
 
GA_PointGroupTablepointGroups ()
 
const GA_PointGroupTablepointGroups () const
 
GA_PrimitiveGroupTableprimitiveGroups ()
 
const GA_PrimitiveGroupTableprimitiveGroups () const
 
GA_VertexGroupTablevertexGroups ()
 
const GA_VertexGroupTablevertexGroups () const
 
GA_EdgeGroupTableedgeGroups ()
 
const GA_EdgeGroupTableedgeGroups () const
 
GA_PointGroupnewPointGroup (const UT_StringHolder &name)
 
GA_VertexGroupnewVertexGroup (const UT_StringHolder &name)
 
GA_PrimitiveGroupnewPrimitiveGroup (const UT_StringHolder &name)
 
GA_EdgeGroupnewEdgeGroup (const UT_StringHolder &name)
 
GA_PointGroupnewInternalPointGroup ()
 
GA_VertexGroupnewInternalVertexGroup ()
 
GA_PrimitiveGroupnewInternalPrimitiveGroup ()
 
GA_EdgeGroupnewInternalEdgeGroup ()
 
GA_PointGroupnewDetachedPointGroup () const
 
GA_PrimitiveGroupnewDetachedPrimitiveGroup () const
 
GA_VertexGroupnewDetachedVertexGroup () const
 
GA_EdgeGroupnewDetachedEdgeGroup () const
 
GA_PointGroupnewPointGroup (const UT_StringHolder &name, bool internal)
 
GA_PrimitiveGroupnewPrimitiveGroup (const UT_StringHolder &name, bool internal)
 
GA_VertexGroupnewVertexGroup (const UT_StringHolder &name, bool internal)
 
GA_EdgeGroupnewEdgeGroup (const UT_StringHolder &name, bool internal)
 
GA_LocalIntrinsic findIntrinsic (const char *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
 
GA_StorageClass getIntrinsicStorage (GA_LocalIntrinsic h) const
 
bool getIntrinsicReadOnly (GA_LocalIntrinsic h) const
 
const UT_OptionsgetIntrinsicOptions (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, 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
 
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 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)
 
template<typename FUNCTOR >
SYS_FORCE_INLINE void forEachPointBreak (FUNCTOR &&functor) const
 
template<typename FUNCTOR >
SYS_FORCE_INLINE void forEachPointBreak (const GA_PointGroup *group, FUNCTOR &&functor) const
 
template<typename FUNCTOR >
SYS_FORCE_INLINE void forEachPointBreak (const GA_PointGroup *group, bool complement, FUNCTOR &&functor) const
 
template<typename FUNCTOR >
SYS_FORCE_INLINE void forEachPrimitiveBreak (FUNCTOR &&functor) const
 
template<typename FUNCTOR >
SYS_FORCE_INLINE void forEachPrimitiveBreak (const GA_PrimitiveGroup *group, FUNCTOR &&functor) const
 
template<typename FUNCTOR >
SYS_FORCE_INLINE void forEachPrimitiveBreak (const GA_PrimitiveGroup *group, bool complement, FUNCTOR &&functor) const
 
void copyAttributes (GA_AttributeOwner owner, GA_Offset destoff, GA_Offset srcoff, const GA_AttributeFilter *filter=nullptr)
 
void copyAttributes (GA_AttributeOwner owner, GA_Offset destoff, const GA_Detail &srcdetail, GA_Offset srcoff, const GA_AttributeFilter *filter=nullptr)
 
IOStatus saveClassic (const char *, const GA_SaveOptions *) const
 
IOStatus saveClassic (std::ostream &os, bool, const GA_SaveOptions *) const
 
IOStatus statFile (const char *filename, GA_Stat &stat, uint level=0xffff, const GA_LoadOptions *opts=nullptr) const
 
IOStatus stat (UT_JSONParser &p, GA_Stat &stat, uint level) const
 
void addTailInitializer (GA_Attribute *attrib)
 
bool removeTailInitializer (GA_Attribute *attrib)
 
MantraGeometry * mantraGeometry ()
 
const MantraGeometry * mantraGeometry () const
 
void setMantraGeometry (MantraGeometry *m)
 
bool saveVertexPointReferenceH9 (std::ostream &os, int binary, GA_Offset vertex_offset) const
 
bool loadVertexH9 (UT_IStream &is, GA_Offset vertex_offset, const UT_Array< GA_AttribLoadDataH9 > &vtx_l)
 
bool saveVertexH9 (std::ostream &os, int binary, GA_Offset vertex_offset, const UT_Array< GA_AttribSaveDataH9 > &vtx_l) const
 

Friends

class GEO_TPSurf
 
std::ostream & operator<< (std::ostream &os, const GEO_Profiles &d)
 

Additional Inherited Members

- Public Types inherited from GD_Detail
typedef GD_Primitive GB_MACRO_PRIM_TYPE
 
- Public Types inherited from GA_Detail
enum  GA_DestroyPointMode { GA_LEAVE_PRIMITIVES, GA_DESTROY_DEGENERATE, GA_DESTROY_DEGENERATE_INCOMPATIBLE }
 
typedef GA_Primitive GB_MACRO_PRIM_TYPE
 
- Static Public Member Functions inherited from GD_Detail
static void registerFactory ()
 
- Static Public Member Functions inherited from GA_Detail
static
GA_IntrinsicManager::Registrar 
registerIntrinsics (GA_PrimitiveFactory &factory)
 
template<typename FUNCTOR >
static void forEachOffset (FUNCTOR &&functor, const GA_IndexMap &index_map, const GA_ElementGroup *group=nullptr, bool complement=false)
 
template<typename FUNCTOR >
static void forEachOffsetBreak (FUNCTOR &&functor, const GA_IndexMap &index_map, const GA_ElementGroup *group=nullptr, bool complement=false)
 
static int64 printMemory (UT_WorkBuffer &buffer, bool include_total=true, int indent=3, const char *title="Geometry Memory Tracking")
 Debugging output of detail. More...
 
template<typename T >
static const
T::GB_MACRO_PRIM_TYPE * 
GB_MACRO_CAST (const T *, const GA_Primitive *prim)
 
template<typename T >
static T::GB_MACRO_PRIM_TYPE * GB_MACRO_CAST (const T *, GA_Primitive *prim)
 
static bool loadAttribDataH9 (UT_IStream &is, GA_Offset offset, const UT_Array< GA_AttribLoadDataH9 > &l)
 
static bool saveAttribDataH9 (std::ostream &os, int binary, GA_Offset offset, const UT_Array< GA_AttribSaveDataH9 > &l, char delim_ch= '(')
 
- Static Public Attributes inherited from GA_Detail
static const int64 INVALID_CACHE_COUNT = -1
 
- Protected Member Functions inherited from GA_Detail
void doConstructTailInitializers (GA_AttributeOwner owner, GA_Offset start, GA_Offset size)
 
bool loadPrimitivesH9 (UT_IStream &is, int count, const GA_FileFormatH9::PrimTypeXlate &type_map, const UT_Array< GA_AttribLoadDataH9 > &prim_attribs, const UT_Array< GA_AttribLoadDataH9 > &vtx_attribs)
 
bool savePrimitivesH9 (std::ostream &os, int binary, const UT_Array< const GA_Primitive * > &list, const GA_FileFormatH9::PrimTypeXlate &type_map, const UT_Array< GA_AttribSaveDataH9 > &prim_attribs, const UT_Array< GA_AttribSaveDataH9 > &vx_attribs) const
 
virtual void privateComputeNormal (const GA_RWHandleV3 &normalattrib, const GA_Group *group, const float cuspangledegrees, const int method) const
 
void splitAnyFloat4P ()
 
virtual GA_Size localIntrinsicTupleSize (GA_IntrinsicEval &eval) const
 
virtual GA_Size localGetIntrinsicS (GA_IntrinsicEval &eval, UT_String &value) const
 
virtual GA_Size localGetIntrinsicSA (GA_IntrinsicEval &eval, UT_StringArray &value) const
 
virtual GA_Size localGetIntrinsicI (GA_IntrinsicEval &eval, int64 *value, GA_Size size) const
 
virtual GA_Size localGetIntrinsicF (GA_IntrinsicEval &eval, fpreal64 *value, GA_Size size) const
 
virtual GA_Size localSetIntrinsicS (GA_IntrinsicEval &eval, const char *value)
 
virtual GA_Size localSetIntrinsicSA (GA_IntrinsicEval &eval, const UT_StringArray &value)
 
virtual GA_Size localSetIntrinsicSS (GA_IntrinsicEval &eval, const char **value, GA_Size size)
 
virtual GA_Size localSetIntrinsicI (GA_IntrinsicEval &eval, const int64 *value, GA_Size size)
 
virtual GA_Size localSetIntrinsicF (GA_IntrinsicEval &eval, const fpreal64 *value, GA_Size size)
 
- Static Protected Member Functions inherited from GA_Detail
static void finishLoadH9 (const UT_Array< GA_AttribLoadDataH9 > &attribs)
 

Detailed Description

Definition at line 29 of file GEO_Profiles.h.

Constructor & Destructor Documentation

GEO_Profiles::GEO_Profiles ( GEO_TPSurf tpsurf)
virtual GEO_Profiles::~GEO_Profiles ( )
virtual

Member Function Documentation

virtual GA_Detail* GEO_Profiles::cloneEmptyDetail ( bool  clone_attributes) const
virtual

Create a new detail that has all the same attributes, groups, etc. but has no elements. Subclasses should look at: cloneCopyGroupsAndAttributes()

Implements GA_Detail.

virtual void GEO_Profiles::countMemory ( UT_MemoryCounter counter,
bool  inclusive 
) const
virtual

Count memory usage using a UT_MemoryCounter in order to count shared memory correctly. If inclusive is true, the size of this object is counted, else only memory owned by this object is counted. If this is pointed to by the calling object, inclusive should be true. If this is contained in the calling object, inclusive should be false. (Its memory was already counted in the size of the calling object.)

Reimplemented from GD_Detail.

int GEO_Profiles::getBaseDir ( )
virtual void GEO_Profiles::getDomainBBox ( float &  u0,
float &  v0,
float &  u1,
float &  v1 
) const
virtual

Implements GD_Detail.

int GEO_Profiles::getMaxHeight ( )
virtual int64 GEO_Profiles::getMemoryUsage ( bool  inclusive) const
inlinevirtual

Compute memory usage (includes all shared memory)

Reimplemented from GD_Detail.

Definition at line 92 of file GEO_Profiles.h.

const GEO_TPSurf& GEO_Profiles::getSurf ( ) const
inline

Definition at line 90 of file GEO_Profiles.h.

GD_TrimLoop* GEO_Profiles::getTrimLoops ( GD_TrimRule  rule)
GD_Face* GEO_Profiles::map ( const GEO_Face face,
UT_Axis3::axis  uaxis,
UT_Axis3::axis  vaxis,
float  umin,
float  umax,
float  vmin,
float  vmax,
int  unif,
UT_BoundingBox bbox = 0 
)
GD_Face* GEO_Profiles::map ( const GEO_Face face,
UT_Axis3::axis  uaxis = UT_Axis3::XAXIS,
UT_Axis3::axis  vaxis = UT_Axis3::YAXIS 
)
int GEO_Profiles::map ( const GA_PrimitiveGroup faces,
UT_Axis3::axis  uaxis,
UT_Axis3::axis  vaxis,
float  umin,
float  umax,
float  vmin,
float  vmax,
int  unif,
const GEO_Detail gdp = 0 
)
int GEO_Profiles::remap ( GD_Primitive profile,
float  umin,
float  umax,
float  vmin,
float  vmax,
int  unif 
)
inline

Definition at line 66 of file GEO_Profiles.h.

int GEO_Profiles::remap ( int  profileidx,
float  umin,
float  umax,
float  vmin,
float  vmax,
int  unif 
)
void GEO_Profiles::reverseU ( void  )
void GEO_Profiles::reverseV ( void  )

Friends And Related Function Documentation

friend class GEO_TPSurf
friend

Definition at line 31 of file GEO_Profiles.h.

std::ostream& operator<< ( std::ostream &  os,
const GEO_Profiles d 
)
friend

Definition at line 135 of file GEO_Profiles.h.


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