Open CASCADE Technology 7.8.0
|
Triangle set corresponding to specific face. More...
#include <BRepExtrema_TriangleSet.hxx>
Public Member Functions | |
BRepExtrema_TriangleSet () | |
Creates empty triangle set. | |
BRepExtrema_TriangleSet (const BRepExtrema_ShapeList &theFaces) | |
Creates triangle set from the given face. | |
~BRepExtrema_TriangleSet () | |
Releases resources of triangle set. | |
Public Member Functions inherited from BVH_PrimitiveSet< T, N > | |
BVH_PrimitiveSet () | |
Creates set of abstract primitives. | |
BVH_PrimitiveSet (const opencascade::handle< BVH_Builder< T, N > > &theBuilder) | |
Creates set of abstract primitives. | |
virtual | ~BVH_PrimitiveSet () |
Releases resources of set of abstract primitives. | |
virtual const opencascade::handle< BVH_Tree< T, N > > & | BVH () |
Returns BVH tree (and builds it if necessary). | |
virtual const opencascade::handle< BVH_Builder< T, N > > & | Builder () const |
Returns the method (builder) used to construct BVH. | |
virtual void | SetBuilder (const opencascade::handle< BVH_Builder< T, N > > &theBuilder) |
Sets the method (builder) used to construct BVH. | |
Public Member Functions inherited from BVH_Object< T, N > | |
BVH_Object () | |
Creates new abstract geometric object. | |
virtual | ~BVH_Object () |
Releases resources of geometric object. | |
Public Member Functions inherited from BVH_ObjectTransient | |
virtual const Handle< BVH_Properties > & | Properties () const |
Returns properties of the geometric object. | |
virtual void | SetProperties (const Handle< BVH_Properties > &theProperties) |
Sets properties of the geometric object. | |
virtual Standard_Boolean | IsDirty () const |
Returns TRUE if object state should be updated. | |
virtual void | MarkDirty () |
Marks object state as outdated (needs BVH rebuilding). | |
Public Member Functions inherited from Standard_Transient | |
Standard_Transient () | |
Empty constructor. | |
Standard_Transient (const Standard_Transient &) | |
Copy constructor – does nothing. | |
Standard_Transient & | operator= (const Standard_Transient &) |
Assignment operator, needed to avoid copying reference counter. | |
virtual | ~Standard_Transient () |
Destructor must be virtual. | |
virtual const opencascade::handle< Standard_Type > & | DynamicType () const |
Returns a type descriptor about this object. | |
Standard_Boolean | IsInstance (const opencascade::handle< Standard_Type > &theType) const |
Returns a true value if this is an instance of Type. | |
Standard_Boolean | IsInstance (const Standard_CString theTypeName) const |
Returns a true value if this is an instance of TypeName. | |
Standard_Boolean | IsKind (const opencascade::handle< Standard_Type > &theType) const |
Returns true if this is an instance of Type or an instance of any class that inherits from Type. Note that multiple inheritance is not supported by OCCT RTTI mechanism. | |
Standard_Boolean | IsKind (const Standard_CString theTypeName) const |
Returns true if this is an instance of TypeName or an instance of any class that inherits from TypeName. Note that multiple inheritance is not supported by OCCT RTTI mechanism. | |
Standard_Transient * | This () const |
Returns non-const pointer to this object (like const_cast). For protection against creating handle to objects allocated in stack or call from constructor, it will raise exception Standard_ProgramError if reference counter is zero. | |
Standard_Integer | GetRefCount () const noexcept |
Get the reference counter of this object. | |
void | IncrementRefCounter () noexcept |
Increments the reference counter of this object. | |
Standard_Integer | DecrementRefCounter () noexcept |
Decrements the reference counter of this object; returns the decremented value. | |
virtual void | Delete () const |
Memory deallocator for transient classes. | |
Public Member Functions inherited from BVH_Set< T, N > | |
BVH_Set () | |
Creates new abstract set of objects. | |
virtual | ~BVH_Set () |
Releases resources of set of objects. | |
methods implementing BVH set interface | |
BVH_Array4i | myTriangles |
Array of vertex indices. | |
BVH_Array3d | myVertexArray |
Array of vertex coordinates. | |
NCollection_Vector< Standard_Integer > | myShapeIdxOfVtxVec |
Vector of shapes' indices where index of item corresponds to index of vertex, belonging to this shape. | |
NCollection_Vector< Standard_Integer > | myNumVtxInShapeVec |
Vector of vertexes' number belonging to shape which index corresponds item's index. | |
NCollection_Vector< Standard_Integer > | myNumTrgInShapeVec |
Vector of triangles' number belonging to shape which index corresponds item's index. | |
TColStd_DataMapOfIntegerInteger | myTrgIdxMap |
Map of triangles' indices after (key) and before (value) swapping. | |
Standard_Integer | Size () const override |
Returns total number of triangles. | |
BVH_Box< Standard_Real, 3 > | Box (const Standard_Integer theIndex) const override |
Returns AABB of the given triangle. | |
Standard_Real | Center (const Standard_Integer theIndex, const Standard_Integer theAxis) const override |
Returns centroid position along specified axis. | |
void | Swap (const Standard_Integer theIndex1, const Standard_Integer theIndex2) override |
Swaps indices of two specified triangles. | |
void | Clear () |
Clears triangle set data. | |
Standard_Boolean | Init (const BRepExtrema_ShapeList &theShapes) |
Initializes triangle set. | |
const BVH_Array3d & | GetVertices () const |
Returns all vertices. | |
void | GetVertices (const Standard_Integer theIndex, BVH_Vec3d &theVertex1, BVH_Vec3d &theVertex2, BVH_Vec3d &theVertex3) const |
Returns vertices of the given triangle. | |
void | GetVtxIndices (const Standard_Integer theIndex, NCollection_Array1< Standard_Integer > &theVtxIndices) const |
Returns vertex indices of the given triangle. | |
Standard_Integer | GetFaceID (const Standard_Integer theIndex) const |
Returns face ID of the given triangle. | |
Standard_Integer | GetShapeIDOfVtx (const Standard_Integer theIndex) const |
Returns shape ID of the given vertex index. | |
Standard_Integer | GetVtxIdxInShape (const Standard_Integer theIndex) const |
Returns vertex index in tringulation of the shape, which vertex belongs, with the given vtx ID in whole set. | |
Standard_Integer | GetTrgIdxInShape (const Standard_Integer theIndex) const |
Returns triangle index (before swapping) in tringulation of the shape, which triangle belongs, with the given trg ID in whole set (after swapping). | |
virtual BVH_Box< T, N > | Box () const override |
Make inherited method Box() visible to avoid CLang warning. | |
Additional Inherited Members | |
Public Types inherited from Standard_Transient | |
typedef void | base_type |
Returns a type descriptor about this object. | |
Public Types inherited from BVH_Set< T, N > | |
typedef BVH_Box< T, N > | BVH_BoxNt |
Static Public Member Functions inherited from Standard_Transient | |
static constexpr const char * | get_type_name () |
Returns a type descriptor about this object. | |
static const opencascade::handle< Standard_Type > & | get_type_descriptor () |
Returns type descriptor of Standard_Transient class. | |
Static Public Attributes inherited from BVH_PrimitiveSet< T, N > | |
static const Standard_Integer | MaxTreeDepth = BVH_Constants_MaxTreeDepth |
Protected Member Functions inherited from BVH_PrimitiveSet< T, N > | |
virtual void | Update () |
Updates BVH of primitive set. | |
Protected Member Functions inherited from BVH_ObjectTransient | |
BVH_ObjectTransient () | |
Creates new abstract geometric object. | |
Protected Attributes inherited from BVH_PrimitiveSet< T, N > | |
opencascade::handle< BVH_Tree< T, N > > | myBVH |
Constructed bottom-level BVH. | |
opencascade::handle< BVH_Builder< T, N > > | myBuilder |
Builder for bottom-level BVH. | |
BVH_Box< T, N > | myBox |
Cached bounding box of geometric primitives. | |
Protected Attributes inherited from BVH_ObjectTransient | |
Standard_Boolean | myIsDirty |
Marks internal object state as outdated. | |
Handle< BVH_Properties > | myProperties |
Generic properties assigned to the object. | |
Triangle set corresponding to specific face.
BRepExtrema_TriangleSet::BRepExtrema_TriangleSet | ( | ) |
Creates empty triangle set.
BRepExtrema_TriangleSet::BRepExtrema_TriangleSet | ( | const BRepExtrema_ShapeList & | theFaces | ) |
Creates triangle set from the given face.
BRepExtrema_TriangleSet::~BRepExtrema_TriangleSet | ( | ) |
Releases resources of triangle set.
|
inlineoverridevirtual |
Make inherited method Box() visible to avoid CLang warning.
Reimplemented from BVH_PrimitiveSet< T, N >.
|
overridevirtual |
Returns AABB of the given triangle.
Implements BVH_Set< T, N >.
|
overridevirtual |
Returns centroid position along specified axis.
Implements BVH_Set< T, N >.
void BRepExtrema_TriangleSet::Clear | ( | ) |
Clears triangle set data.
Standard_Integer BRepExtrema_TriangleSet::GetFaceID | ( | const Standard_Integer | theIndex | ) | const |
Returns face ID of the given triangle.
Standard_Integer BRepExtrema_TriangleSet::GetShapeIDOfVtx | ( | const Standard_Integer | theIndex | ) | const |
Returns shape ID of the given vertex index.
Standard_Integer BRepExtrema_TriangleSet::GetTrgIdxInShape | ( | const Standard_Integer | theIndex | ) | const |
Returns triangle index (before swapping) in tringulation of the shape, which triangle belongs, with the given trg ID in whole set (after swapping).
|
inline |
Returns all vertices.
void BRepExtrema_TriangleSet::GetVertices | ( | const Standard_Integer | theIndex, |
BVH_Vec3d & | theVertex1, | ||
BVH_Vec3d & | theVertex2, | ||
BVH_Vec3d & | theVertex3 | ||
) | const |
Returns vertices of the given triangle.
Standard_Integer BRepExtrema_TriangleSet::GetVtxIdxInShape | ( | const Standard_Integer | theIndex | ) | const |
Returns vertex index in tringulation of the shape, which vertex belongs, with the given vtx ID in whole set.
void BRepExtrema_TriangleSet::GetVtxIndices | ( | const Standard_Integer | theIndex, |
NCollection_Array1< Standard_Integer > & | theVtxIndices | ||
) | const |
Returns vertex indices of the given triangle.
Standard_Boolean BRepExtrema_TriangleSet::Init | ( | const BRepExtrema_ShapeList & | theShapes | ) |
Initializes triangle set.
|
overridevirtual |
Returns total number of triangles.
Implements BVH_Set< T, N >.
|
overridevirtual |
Swaps indices of two specified triangles.
Implements BVH_Set< T, N >.
|
protected |
Vector of triangles' number belonging to shape which index corresponds item's index.
|
protected |
Vector of vertexes' number belonging to shape which index corresponds item's index.
|
protected |
Vector of shapes' indices where index of item corresponds to index of vertex, belonging to this shape.
|
protected |
Map of triangles' indices after (key) and before (value) swapping.
|
protected |
Array of vertex indices.
|
protected |
Array of vertex coordinates.