C3D Toolkit  Kernel - 117982, Vision -

Loop. More...

#include <contour_graph.h>

+ Inheritance diagram for MpLoop:
+ Collaboration diagram for MpLoop:

Public Member Functions

 MpLoop (MpEdge *initEdge, int m)
 Constructor. More...
 MpLoop (const MpLoop &)
virtual ~MpLoop ()
Functions for access to data.
ptrdiff_t GetEdgesCount () const
 Count of edges.
MpEdgeGetEdge (ptrdiff_t index) const
 Edge by index. More...
MpEdge *& GetEdge (ptrdiff_t index)
 Edge by index to change. More...
MpEdgeGetEdge () const
 Get the last edge.
bool GetOrientation () const
 Get the orientation.
int GetMode () const
 Construction direction.
void GetVerticesArray (RPArray< MpVertex > &vertices) const
 Get vertex array.
void GetCurvesArray (RPArray< const MbCurve > &curves) const
 Get curve array.
void SetCurvesArray (RPArray< MbCurve > &curves)
 Get curve array.
Functions for changing data.
void AddEdge (MpEdge *edge)
 Add an edge.
void DeleteEdge ()
 Delete the last edge.
void DeleteEdge (ptrdiff_t index)
 Delete an edge by index. More...
void SetOrientation (bool s)
 Set the orientation.
void SetMode (int m)
 Set the traverse direction. More...
void Reverse ()
 Change the edge orientation.
void CreateVertices ()
 Construct vertices.
MbContourMakeContour (double epsilon=METRIC_ACCURACY) const
 Create a contour by the loop.
Transformation operations.
void Transform (const MbMatrix &matr)
 Transformation. More...
void Move (const MbVector &to)
 Move. More...
void Rotate (const MbCartPoint &pnt, const MbDirection &angle)
 Rotate. More...
- Public Member Functions inherited from TapeBase
 TapeBase (RegistrableRec regs=noRegistrable)
 TapeBase (const TapeBase &)
virtual ~TapeBase ()
RegistrableRec GetRegistrable () const
 Whether the stream class is registrable.
void SetRegistrable (RegistrableRec regs=registrable) const
 Set the state of registration of the stream class.
virtual const char * GetPureName (const VersionContainer &) const
 Get the class name.
virtual bool IsFamilyRegistrable () const
 Whether the object belongs to a registrable family.

Detailed Description


Loop. Set of edges.

Constructor & Destructor Documentation

◆ MpLoop()

MpLoop::MpLoop ( MpEdge initEdge,
int  m 


Constructor by edge and the direction of construction.

[in]initEdge- Edge.
[in]m- Direction of loop construction: if m > 0 - the loop is constructed counterclockwise, if m < 0 - clockwise.

Member Function Documentation

◆ GetEdge() [1/2]

MpEdge* MpLoop::GetEdge ( ptrdiff_t  index) const

Edge by index.

Edge by its index. Without check for index correctness.

[in]index- An edge index.

◆ GetEdge() [2/2]

MpEdge*& MpLoop::GetEdge ( ptrdiff_t  index)

Edge by index to change.

Edge by its index to change. Without check for index correctness.

[in]index- An edge index.

◆ DeleteEdge()

void MpLoop::DeleteEdge ( ptrdiff_t  index)

Delete an edge by index.

Delete an edge by its index. Without check for index correctness.

[in]index- An edge index.

◆ SetMode()

void MpLoop::SetMode ( int  m)

Set the traverse direction.

Set the direction of traversal of the loop.

[in]m- The traversal direction.
Has a value of sign of number m:
if m > 0, then traversal is counterclockwise,
if m < 0, then it is clockwise.

◆ Transform()

void MpLoop::Transform ( const MbMatrix matr)


Transform according to matrix.

[in]matr- Transformation matrix.

◆ Move()

void MpLoop::Move ( const MbVector to)


Move by a vector.

[in]to- Movement vector.

◆ Rotate()

void MpLoop::Rotate ( const MbCartPoint pnt,
const MbDirection angle 


Rotate at angle around a point.

[in]pnt- A point is a rotation center.
[in]angle- A two-dimensional normalized vector determining the rotation angle.

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