CFx SDK Documentation  2022 SP0
Public Member Functions | List of all members
OdGeOffsetCurve2d Class Reference

#include <GeOffsetCurve2d.h>

Inheritance diagram for OdGeOffsetCurve2d:
OdGeCurve2d OdGeEntity2d

Public Member Functions

 OdGeOffsetCurve2d (const OdGeCurve2d &baseCurve, double offsetDistance)
 
 OdGeOffsetCurve2d (const OdGeOffsetCurve2d &source)
 
const OdGeCurve2dcurve () const
 
double offsetDistance () const
 
bool paramDirection () const
 
OdGeMatrix2d transformation () const
 
OdGeOffsetCurve2dsetCurve (const OdGeCurve2d &baseCurve)
 
OdGeOffsetCurve2dsetOffsetDistance (double distance)
 
OdGeOffsetCurve2doperator= (const OdGeOffsetCurve2d &offsetCurve)
 
- Public Member Functions inherited from OdGeCurve2d
void getInterval (OdGeInterval &interval) const
 
void getInterval (OdGeInterval &interval, OdGePoint2d &start, OdGePoint2d &end) const
 
OdGeCurve2dreverseParam ()
 
OdGeCurve2dsetInterval ()
 
bool setInterval (const OdGeInterval &interval)
 
double distanceTo (const OdGePoint2d &point, const OdGeTol &tol=OdGeContext::gTol) const
 
double distanceTo (const OdGeCurve2d &otherCur, const OdGeTol &tol=OdGeContext::gTol) const
 
OdGePoint2d closestPointTo (const OdGePoint2d &point, const OdGeTol &tol=OdGeContext::gTol) const
 
OdGePoint2d closestPointTo (const OdGeCurve2d &curve2d, OdGePoint2d &pntOnOtherCrv, const OdGeTol &tol=OdGeContext::gTol) const
 
void getClosestPointTo (const OdGePoint2d &point, OdGePointOnCurve2d &pntOnCrv, const OdGeTol &tol=OdGeContext::gTol) const
 
void getClosestPointTo (const OdGeCurve2d &curve2d, OdGePointOnCurve2d &pntOnThisCrv, OdGePointOnCurve2d &pntOnOtherCrv, const OdGeTol &tol=OdGeContext::gTol) const
 
bool getNormalPoint (const OdGePoint2d &point, OdGePointOnCurve2d &pntOnCrv, const OdGeTol &tol=OdGeContext::gTol) const
 
 TD_USING (OdGeEntity2d::isOn)
 
bool isOn (const OdGePoint2d &point, double &param, const OdGeTol &tol=OdGeContext::gTol) const
 
bool isOn (double param, const OdGeTol &tol=OdGeContext::gTol) const
 
double paramOf (const OdGePoint2d &point, const OdGeTol &tol=OdGeContext::gTol) const
 
void getTrimmedOffset (double distance, OdGeCurve2dPtrArray &offsetCurveList, OdGe::OffsetCrvExtType extensionType=OdGe::kFillet, const OdGeTol &tol=OdGeContext::gTol) const
 
bool isClosed (const OdGeTol &tol=OdGeContext::gTol) const
 
bool isPeriodic (double &period) const
 
bool isLinear (OdGeLine2d &line, const OdGeTol &tol=OdGeContext::gTol) const
 
double length (double fromParam, double toParam, double tol=OdGeContext::gTol.equalPoint()) const
 
double length (double tol=OdGeContext::gTol.equalPoint()) const
 
double paramAtLength (double datumParam, double length, bool posParamDir=true, double tol=OdGeContext::gTol.equalPoint()) const
 
bool area (double startParam, double endParam, double &value, const OdGeTol &tol=OdGeContext::gTol) const
 
bool isDegenerate (OdGe::EntityId &degenerateType, const OdGeTol &tol=OdGeContext::gTol) const
 
bool isDegenerate (OdGeEntity2d *&pConvertedEntity, const OdGeTol &tol=OdGeContext::gTol) const
 
void getSplitCurves (double param, OdGeCurve2d *&piece1, OdGeCurve2d *&piece2) const
 
bool explode (OdGeCurve2dPtrArray &explodedCurves, OdGeIntArray &newExplodedCurve, const OdGeInterval *interval=NULL) const
 
void getLocalClosestPoints (const OdGePoint2d &point, OdGePointOnCurve2d &approxPnt, const OdGeInterval *nbhd=NULL, const OdGeTol &tol=OdGeContext::gTol) const
 
void getLocalClosestPoints (const OdGeCurve2d &otherCurve, OdGePointOnCurve2d &approxPntOnThisCrv, OdGePointOnCurve2d &approxPntOnOtherCrv, const OdGeInterval *nbhd1=NULL, const OdGeInterval *nbhd2=NULL, const OdGeTol &tol=OdGeContext::gTol) const
 
OdGeBoundBlock2d boundBlock () const
 
OdGeBoundBlock2d boundBlock (const OdGeInterval &range) const
 
OdGeBoundBlock2d orthoBoundBlock () const
 
OdGeBoundBlock2d orthoBoundBlock (const OdGeInterval &range) const
 
bool hasStartPoint (OdGePoint2d &startPoint) const
 
bool hasEndPoint (OdGePoint2d &endPoint) const
 
OdGePoint2d evalPoint (double param) const
 
OdGePoint2d evalPoint (double param, int numDeriv, OdGeVector2dArray &derivatives) const
 
void getSamplePoints (double fromParam, double toParam, double approxEps, OdGePoint2dArray &pointArray, OdGeDoubleArray &paramArray) const
 
void getSamplePoints (int numSample, OdGePoint2dArray &pointArray) const
 
OdGeCurve2doperator= (const OdGeCurve2d &curve)
 
void getSamplePoints (double fromParam, double toParam, double approxEps, OdGePoint2dArray &pointArray, OdGeDoubleArray *pParamArray=NULL) const
 
void appendSamplePoints (double fromParam, double toParam, double approxEps, OdGePoint2dArray &pointArray, OdGeDoubleArray *pParamArray=NULL) const
 
void appendSamplePoints (int numSample, OdGePoint2dArray &pointArray) const
 
- Public Member Functions inherited from OdGeEntity2d
 ODRX_HEAP_OPERATORS ()
 
bool isKindOf (OdGe::EntityId entType) const
 
OdGe::EntityId type () const
 
OdGeEntity2dcopy () const
 
OdGeEntity2doperator= (const OdGeEntity2d &entity)
 
bool operator== (const OdGeEntity2d &entity) const
 
bool operator!= (const OdGeEntity2d &entity) const
 
bool isEqualTo (const OdGeEntity2d &other, const OdGeTol &tol=OdGeContext::gTol) const
 
OdGeEntity2dtransformBy (const OdGeMatrix2d &xfm)
 
OdGeEntity2dtranslateBy (const OdGeVector2d &translateVec)
 
OdGeEntity2drotateBy (double angle, const OdGePoint2d &basePoint=OdGePoint2d::kOrigin)
 
OdGeEntity2dmirror (const OdGeLine2d &line)
 
OdGeEntity2dscaleBy (double scaleFactor, const OdGePoint2d &basePoint=OdGePoint2d::kOrigin)
 
bool isOn (const OdGePoint2d &point, const OdGeTol &tol=OdGeContext::gTol) const
 
 ~OdGeEntity2d ()
 

Additional Inherited Members

- Protected Member Functions inherited from OdGeCurve2d
 OdGeCurve2d ()
 
 OdGeCurve2d (const OdGeCurve2d &source)
 
- Protected Member Functions inherited from OdGeEntity2d
 OdGeEntity2d ()
 
 OdGeEntity2d (const OdGeEntity2d &)
 
void connectTo (OdGeEntity2dImpl *)
 

Detailed Description

This class represents 2D curves that are exact offsets of other curves.

Remarks
Every GeOffsetCurve2d contains a pointer to the curve from which it is offest. Modifying the base curve modifies the offset curve. Modifying the offset curve does not modify the base curve. setInterval() for an offset curve result create a curve that is an offset of the specified interval in the base curve.

This curve may be self-intersecting, even if the base curve is not.

Positive offset distances at any point on the base curve are defined as 90° counterclockwise from the tangent of the base curve at that point.

An offset curve with a 0.0 offset distance is exact replica of the base curve. An offseet curve with a non-zero 0.0 offset distance has a continuity of one less than that of the base curve. To insure that the offset curve is a valid curve, the base curve must have a continuity of at least 1.

Corresponding C++ library: TD_Ge

<group OdGe_Classes>

See also
<link ge_OdGeOffsetCurve3d.html, Working with Offset Curves>

Definition at line 57 of file GeOffsetCurve2d.h.

Constructor & Destructor Documentation

◆ OdGeOffsetCurve2d() [1/2]

OdGeOffsetCurve2d::OdGeOffsetCurve2d ( const OdGeCurve2d baseCurve,
double  offsetDistance 
)
Parameters
baseCurve[in] Any 2D curve.
offsetDistance[in] Offset distance.
source[in] Object to be cloned.

◆ OdGeOffsetCurve2d() [2/2]

OdGeOffsetCurve2d::OdGeOffsetCurve2d ( const OdGeOffsetCurve2d source)

Member Function Documentation

◆ curve()

const OdGeCurve2d* OdGeOffsetCurve2d::curve ( ) const

Returns the base curve.

◆ offsetDistance()

double OdGeOffsetCurve2d::offsetDistance ( ) const

Returns the offset distance of this curve.

◆ operator=()

OdGeOffsetCurve2d& OdGeOffsetCurve2d::operator= ( const OdGeOffsetCurve2d offsetCurve)

◆ paramDirection()

bool OdGeOffsetCurve2d::paramDirection ( ) const

Returns true if and only if this curve has the same parameter direction as the base curve.

Remarks
Currently not implemented.

◆ setCurve()

OdGeOffsetCurve2d& OdGeOffsetCurve2d::setCurve ( const OdGeCurve2d baseCurve)

Sets the base curve for this curve.

Parameters
baseCurve[in] Any 2D curve.

◆ setOffsetDistance()

OdGeOffsetCurve2d& OdGeOffsetCurve2d::setOffsetDistance ( double  distance)

Sets the offset distance for this curve.

Parameters
offsetDistance[in] Offset distance.

◆ transformation()

OdGeMatrix2d OdGeOffsetCurve2d::transformation ( ) const

Returns the concatenation of the transformation matrices applied to this curve with transformBy().

Remarks
If no transformation matrices have been applied to this curve, returns the identity matrix.
Currently not implemented.

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