CFx SDK Documentation  2022 SP0
Public Member Functions | List of all members
FacetModeler::CachedContour2D Class Reference

#include <FMContour2D.h>

Inheritance diagram for FacetModeler::CachedContour2D:
FacetModeler::Contour2D

Public Member Functions

 CachedContour2D ()
 
 CachedContour2D (ContourImplClass eImplClass)
 
 CachedContour2D (const IBulgeSeg2D &rSrcSeg, ContourImplClass eImplClass=ecicCached)
 
 CachedContour2D (const Contour2D &rSrcCont, ContourImplClass eImplClass=ecicCached)
 
CachedContour2Doperator= (const Contour2D &rSrcCont)
 
CachedContour2DcloneFrom (const Contour2D &rSrcCont)
 
CachedContour2Dreset (ContourImplClass eImplClass=ecicUnknown)
 
- Public Member Functions inherited from FacetModeler::Contour2D
 Contour2D ()
 
 Contour2D (ContourImplClass eImplClass)
 
 Contour2D (const IBulgeSeg2D &rSrcSeg, ContourImplClass eImplClass=ecicSimple)
 
 Contour2D (const Contour2D &rSrcCont, ContourImplClass eImplClass=ecicSimple)
 
 Contour2D (const IContour2D &rSrcCont, ContourImplClass eImplClass=ecicSimple)
 DOM. More...
 
 Contour2D (const OdGeExtents2d &ext)
 
 ~Contour2D ()
 
Contour2Doperator= (const Contour2D &rSrcCont)
 
Contour2Doperator= (const IContour2D &rSrcCont)
 DOM. More...
 
Contour2DcloneFrom (const IContour2D &rSrcCont)
 
Contour2Dreset (ContourImplClass eImplClass=ecicUnknown)
 
ContourImplClass implClass () const
 
void swap (Contour2D &rAnother)
 
bool isClosed () const
 
bool isEndsEqual (const OdGeTol &gTol=FMGeGbl::gTol) const
 
void setClosed (bool bClosed=true)
 
bool isEmpty () const
 
OdUInt32 numVerts () const
 
OdUInt32 numSegments () const
 
bool hasArcs () const
 
SegmentType segmentType (OdUInt32 iIndex) const
 
Result getSegmentAt (OdUInt32 iIndex, Segment2D &rSegment) const
 
Result getSegmentAt (OdUInt32 iIndex, OdGePoint2d &ptStart, OdGePoint2d &ptEnd, double &dBulge) const
 
Result getLineSegAt (OdUInt32 iIndex, OdGeLineSeg2d &geLine) const
 
Result getArcSegAt (OdUInt32 iIndex, OdGeCircArc2d &geArc) const
 
Result getPointAt (OdUInt32 iIndex, OdGePoint2d &ptPoint) const
 
Result getBulgeAt (OdUInt32 iIndex, double &dBulge) const
 
Result getVertexAt (OdUInt32 iIndex, OdGePoint2d *pPoint, double *pBulge=0, OdIntPtr *pMetadata=0, OdUInt32 *puRawFlags=0) const
 
Result getInternalAngleAt (OdUInt32 iIndex, double &dAngle) const
 
Result setPointAt (OdUInt32 iIndex, const OdGePoint2d &ptPoint)
 
Result setBulgeAt (OdUInt32 iIndex, double dBulge)
 
Result setVertexAt (OdUInt32 iIndex, const OdGePoint2d &ptPoint, double dBulge)
 
void reserveVertices (OdUInt32 iReservedSize)
 
OdIntPtr metadataAt (OdUInt32 iIndex) const
 
Result setMetadataAt (OdUInt32 iIndex, OdIntPtr iNewData)
 
Result setAllMetadata (OdIntPtr iNewData, OdIntPtr iBitsToModify=(OdIntPtr) -1)
 
bool isHiddenAt (OdUInt32 iIndex) const
 
Result setHiddenAt (OdUInt32 iIndex, bool bHidden=true)
 
FaceOrientation orientationAt (OdUInt32 iIndex) const
 
Result setOrientationAt (OdUInt32 iIndex, FaceOrientation eOrientation)
 
bool threatAsSmoothCurveAt (OdUInt32 iIndex) const
 
void setThreatAsSmoothCurveAt (OdUInt32 iIndex, bool bSmooth)
 
bool isExplodedArcAt (OdUInt32 iIndex) const
 
Result setExplodedArcAt (OdUInt32 iIndex, bool bExplodedArc=true)
 
OdUInt32 rawFlagsAt (OdUInt32 iIndex) const
 
Result setRawFlagsAt (OdUInt32 iIndex, OdUInt32 iRawFlags)
 
Result addVertexAt (OdUInt32 iIndex, const OdGePoint2d &ptStart, double dBulge=0.0, OdIntPtr uMetadata=0, OdUInt32 uRawFlags=0)
 
Result appendVertex (const OdGePoint2d &ptStart, double dBulge=0.0, OdIntPtr uMetadata=0, OdUInt32 uRawFlags=0)
 
Result appendVertex (const OdGePoint2d &ptStart, const OdGePoint2d &ptMid, OdIntPtr uMetadata=0, OdUInt32 uRawFlags=0)
 
Result appendVertices (const OdGePoint2dArray &vecSource)
 
Result appendSegment (const Segment2D &rSeg, bool bShiftToHit=false)
 
Result appendContour (const Contour2D &rCont, bool bCloseGap=false, double dMaxGap=1e99)
 
Result removeVertexAt (OdUInt32 iIndex)
 
double startParam () const
 
double endParam () const
 
Result getStartPoint (OdGePoint2d &ptPoint) const
 
Result getEndPoint (OdGePoint2d &ptPoint) const
 
double length () const
 
Result getTangent (double dParam, OdGeVector2d &vTangent) const
 
Result getTangentAtDist (double dDist, OdGeVector2d &vTangent) const
 
Result getPoint (double dParam, OdGePoint2d &ptPoint) const
 
Result getPointAtDist (double dDist, OdGePoint2d &ptPoint) const
 
Result getDistAtParam (double dParam, double &dDist) const
 
Result getParamAtDist (double dDist, double &dParam) const
 
Result getNormalizedParam (double &dParam) const
 
Result getNormalizedDist (double &dDist) const
 
bool areEqualParams (double dParam1, double dParam2, double dParamTol=1e-10) const
 
bool areEqualDists (double dDist1, double dDist2, double dTol=1e-6) const
 
Result addExtents (OdGeExtents2d &extExtents) const
 
double area () const
 
double signedArea () const
 
bool isConvex () const
 
bool isCCW () const
 
void makeCCW (bool bCCW=true)
 
bool isOn (const OdGePoint2d &ptTest, double *pParam=0, const OdGeTol &gTol=FMGeGbl::gTol) const
 
double nearestParam (const OdGePoint2d &ptTest, OdGePoint2d *ptNearest=0) const
 
bool contains (const OdGePoint2d &ptPoint, bool *pOnBorder=0, const OdGeTol &gTol=FMGeGbl::gTol) const
 
bool isSelfIntersecting (const OdGeTol &gTol=FMGeGbl::gTol, bool bExcludeTouch=false) const
 
bool isValidRegion (const OdGeTol &gTol=FMGeGbl::gTol) const
 
bool isInsideContour (const Contour2D &c2dOuter, bool fAllowBordersTouch=false, const OdGeTol &gTol=FMGeGbl::gTol) const
 
OdUInt32 intersect (const Segment2D &rSegB, std::vector< Intersection > &vecPoints, const OdGeTol &gTol=FMGeGbl::gTol) const
 
OdUInt32 intersect (const Contour2D &rContB, std::vector< Intersection > &vecPoints, const OdGeTol &gTol=FMGeGbl::gTol) const
 
OdUInt32 intersectLine (const OdGeLine2d &rLine, std::vector< Intersection > &vecPoints, const OdGeTol &gTol=FMGeGbl::gTol) const
 
Result transformBy (const OdGeMatrix2d &mMatrix, const DeviationParams &devDeviation=FMGeGbl::gDefDev)
 
void reverse ()
 
void deleteCoincident (const OdGeTol &gTol=FMGeGbl::gTol)
 
void mergeSegments (int iMergeFlags=0, const OdGeTol &gTol=FMGeGbl::gTol)
 
Result explode (const DeviationParams &devDeviation=FMGeGbl::gDefDev, OdIntPtr uArcMetadata=0)
 
Result explodeTo (Contour2D &rDestCont, const DeviationParams &devDeviation=FMGeGbl::gDefDev, OdIntPtr uArcMetadata=0) const
 
OdUInt32 createVertexAt (double dParam, const OdGeTol &gTol=FMGeGbl::gTol)
 
OdUInt32 createVertexAtDist (double dDist, const OdGeTol &gTol=FMGeGbl::gTol)
 
Result createVerticesAt (const std::vector< double > &vecParams, const OdGeTol &gTol=FMGeGbl::gTol)
 
Result getSubContour (double dStartParam, double dEndParam, Contour2D &rSubContour, const OdGeTol &gTol=FMGeGbl::gTol) const
 
Result getOffsetProfile (double dOffset, Profile2D &rResult, FilletType eFilletType=eftExtend, const OdGeTol &gTol=FMGeGbl::gTol) const
 
Result getProfileByOffsets (const std::vector< double > &adOffset, Profile2D &rResult, const OdGeTol &gTol=FMGeGbl::gTol) const
 
bool traverse (Contour2DTraversingReactor &reactor) const
 
void getGeomExtens (OdGeExtents2d &extens)
 
 operator const IContour2D & () const
 DOM. More...
 
 operator IContour2D & ()
 DOM. More...
 
const IContour2Dimpl () const
 DOM. More...
 
IContour2Dimpl ()
 DOM. More...
 

Additional Inherited Members

- Static Public Attributes inherited from FacetModeler::Contour2D
static FMGEOMETRY_API_STATIC const Contour2D kNull
 

Detailed Description

Representation of 2D Contour.

Remarks
The only difference between Contour2D and CachedContour2D is the default implementation type. CachedContour2D uses ecicCached while Contour2D uses ecicSimple.

For cached implementation type some calls will be faster if made consequently.

CachedContour2D can also use ecicSimple implementation. For example if cloned from simple contour.

Definition at line 848 of file FMContour2D.h.

Constructor & Destructor Documentation

◆ CachedContour2D() [1/4]

FacetModeler::CachedContour2D::CachedContour2D ( )
inline

Constructor.

Definition at line 854 of file FMContour2D.h.

◆ CachedContour2D() [2/4]

FacetModeler::CachedContour2D::CachedContour2D ( ContourImplClass  eImplClass)
inline

Constructor.

Definition at line 861 of file FMContour2D.h.

◆ CachedContour2D() [3/4]

FacetModeler::CachedContour2D::CachedContour2D ( const IBulgeSeg2D rSrcSeg,
ContourImplClass  eImplClass = ecicCached 
)
inline

Constructor.

Definition at line 868 of file FMContour2D.h.

◆ CachedContour2D() [4/4]

FacetModeler::CachedContour2D::CachedContour2D ( const Contour2D rSrcCont,
ContourImplClass  eImplClass = ecicCached 
)
inline

Constructor.

Definition at line 875 of file FMContour2D.h.

Member Function Documentation

◆ cloneFrom()

CachedContour2D& FacetModeler::CachedContour2D::cloneFrom ( const Contour2D rSrcCont)
inline

Contour2D override.

Definition at line 891 of file FMContour2D.h.

◆ operator=()

CachedContour2D& FacetModeler::CachedContour2D::operator= ( const Contour2D rSrcCont)
inline

= operator.

Definition at line 882 of file FMContour2D.h.

◆ reset()

CachedContour2D& FacetModeler::CachedContour2D::reset ( ContourImplClass  eImplClass = ecicUnknown)
inline

Contour2D override.

Definition at line 900 of file FMContour2D.h.


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