CFx SDK Documentation 2026 SP0
Loading...
Searching...
No Matches
OdDbCurvePE Class Referenceabstract

#include <DbCurvePE.h>

Inheritance diagram for OdDbCurvePE:
OdRxObject CFxCurvePE

Public Member Functions

 ODRX_DECLARE_MEMBERS (OdDbCurvePE)
 
virtual OdResult getOrthoProjectedCurve (const OdDbCurve *pCurve, const OdGePlane &projPlane, OdDbCurvePtr *pProjCurve) const =0
 
virtual OdResult getProjectedCurve (const OdDbCurve *pCurve, const OdGePlane &projPlane, const OdGeVector3d &projDirection, OdDbCurvePtr *pProjCurve) const =0
 
virtual OdResult getOffsetCurves (const OdDbCurve *pCurve, double offsetDistance, OdRxObjectPtrArray &offsetCurves) const
 
virtual OdResult getOffsetCurvesGivenPlaneNormal (const OdDbCurve *pCurve, const OdGeVector3d &normal, double offsetDistance, OdRxObjectPtrArray &offsetCurves) const
 
virtual OdResult getSplitCurves (const OdDbCurve *pCurve, const OdGeDoubleArray &params, OdRxObjectPtrArray &curveSegments) const =0
 
virtual OdResult getSplitCurves (const OdDbCurve *pCurve, const OdGePoint3dArray &points, OdRxObjectPtrArray &curveSegments) const =0
 
virtual OdResult extend (OdDbCurve *pCurve, double param)=0
 
virtual OdResult extend (OdDbCurve *pCurve, bool extendStart, const OdGePoint3d &toPoint)=0
 
virtual OdResult getSpline (const OdDbCurve *pCurve, OdDbSplinePtr *spline) const =0
 
virtual OdResult getClosestPointTo (const OdDbCurve *pCurve, const OdGePoint3d &givenPoint, OdGePoint3d &pointOnCurve, bool extend=false) const =0
 
virtual OdResult getClosestPointTo (const OdDbCurve *pCurve, const OdGePoint3d &givenPoint, const OdGeVector3d &normal, OdGePoint3d &pointOnCurve, bool extend=false) const =0
 
- Public Member Functions inherited from OdRxObject
 ODRX_HEAP_OPERATORS ()
 
 OdRxObject ()
 
virtual ~OdRxObject ()
 
virtual OdRxObjectqueryX (const OdRxClass *pClass) const
 
virtual OdRxObjectx (const OdRxClass *pClass) const
 
virtual OdRxClassisA () const
 
virtual void addRef ()=0
 
virtual void release ()=0
 
virtual long numRefs () const
 
bool isKindOf (const OdRxClass *pClass) const
 
virtual OdRxObjectPtr clone () const
 
virtual void copyFrom (const OdRxObject *pSource)
 
virtual OdRx::Ordering comparedTo (const OdRxObject *pOther) const
 
virtual bool isEqualTo (const OdRxObject *pOther) const
 

Additional Inherited Members

- Static Public Member Functions inherited from OdRxObject
static OdRxObjectPtr cast (const OdRxObject *pointer)
 
static OdRxClassdesc ()
 
static void rxInit ()
 
static void rxUninit ()
 

Detailed Description

This class defines the interface for the Curve Protocol Extension classes.

<group OdDb_Classes>

Definition at line 36 of file DbCurvePE.h.

Member Function Documentation

◆ extend() [1/2]

virtual OdResult OdDbCurvePE::extend ( OdDbCurve * pCurve,
bool extendStart,
const OdGePoint3d & toPoint )
pure virtual

Extends the specified Curve object to the specified WCS point.

Parameters
pCurve[in] Pointer to the curve to extend.
toPoint[in] Point to which to extend.
extendStart[in] True to extend start of curve, false to extend end of curve.
Returns
Returns eOk if successful, or an appropriate error code if not.

◆ extend() [2/2]

virtual OdResult OdDbCurvePE::extend ( OdDbCurve * pCurve,
double param )
pure virtual

Extends the specified Curve object to the specified WCS point.

Parameters
pCurve[in] Pointer to the curve to extend.
param[in] Parameter specifying point.
Returns
Returns eOk if successful, or an appropriate error code if not.

◆ getClosestPointTo() [1/2]

virtual OdResult OdDbCurvePE::getClosestPointTo ( const OdDbCurve * pCurve,
const OdGePoint3d & givenPoint,
const OdGeVector3d & normal,
OdGePoint3d & pointOnCurve,
bool extend = false ) const
pure virtual

Returns the point on the specified Curve object closest to the given point.

Parameters
pCurve[in] Pointer to the curve.
givenPoint[in] Given point.
pointOnCurve[out] Receives the closed point on this Curve object.
extend[in] Extends this Curve object if and only if true.
normal[in] Normal to the projection plane.
Returns
Returns eOk if successful, or an appropriate error code if not.

If normal is specified, this Curve object is projected onto the plane defined by givenPoint and normal, finds the closest point on the projected curve to givenPoint, and projects said closest point back onto the plane of this Curve object. It is this point that is returned as pointOnCurve.

◆ getClosestPointTo() [2/2]

virtual OdResult OdDbCurvePE::getClosestPointTo ( const OdDbCurve * pCurve,
const OdGePoint3d & givenPoint,
OdGePoint3d & pointOnCurve,
bool extend = false ) const
pure virtual

Returns the point on the specified Curve object closest to the given point.

Parameters
pCurve[in] Pointer to the curve.
givenPoint[in] Given point.
pointOnCurve[out] Receives the closed point on this Curve object.
extend[in] Extends this Curve object if and only if true.
Returns
Returns eOk if successful, or an appropriate error code if not.

◆ getOffsetCurves()

virtual OdResult OdDbCurvePE::getOffsetCurves ( const OdDbCurve * pCurve,
double offsetDistance,
OdRxObjectPtrArray & offsetCurves ) const
inlinevirtual

Creates a set of curves representing the offsetting the specified Curve object by the specified distance.

Parameters
pCurve[in] Pointer to the curve to offset.
offsetDistance[in] Offset distance.
offsetCurves[out] Receives an array of SmartPointers to the offset curves.
Returns
Returns eOk if successful, or an appropriate error code if not.
Remarks
Pointers to all new curves are appended to the offsetCurves array.

Definition at line 81 of file DbCurvePE.h.

◆ getOffsetCurvesGivenPlaneNormal()

virtual OdResult OdDbCurvePE::getOffsetCurvesGivenPlaneNormal ( const OdDbCurve * pCurve,
const OdGeVector3d & normal,
double offsetDistance,
OdRxObjectPtrArray & offsetCurves ) const
inlinevirtual

Creates a set of curves representing the offsetting of the specified Curve object by the specified distance in a plane with the specified normal.

Parameters
pCurve[in] Pointer to the curve to offset.
offsetDistance[in] Offset distance.
offsetCurves[out] Receives an array of SmartPointers to the offset curves.
normal[in] Normal of the plane.
Returns
Returns eOk if successful, or an appropriate error code if not.
Remarks
Pointers to all new curves are appended to the offsetCurves array.

Definition at line 98 of file DbCurvePE.h.

◆ getOrthoProjectedCurve()

virtual OdResult OdDbCurvePE::getOrthoProjectedCurve ( const OdDbCurve * pCurve,
const OdGePlane & projPlane,
OdDbCurvePtr * pProjCurve ) const
pure virtual

Creates a curve by projecting the specified Curve object onto the specified plane along a normal to the place.

Parameters
pCurve[in] Pointer to the curve to project.
projPlane[in] Projection plane.
pProjCurve[out] Receives a SmartPointer to the projected curve.
Returns
Returns eOk if successful, or an appropriate error code if not.

◆ getProjectedCurve()

virtual OdResult OdDbCurvePE::getProjectedCurve ( const OdDbCurve * pCurve,
const OdGePlane & projPlane,
const OdGeVector3d & projDirection,
OdDbCurvePtr * pProjCurve ) const
pure virtual

Creates a curve by projecting the specified Curve object onto the specified plane along the specified direction.

Parameters
pCurve[in] Pointer to the curve to project.
projPlane[in] Projection plane.
projDirection[in] Projection direction.
pProjCurve[out] Receives a SmartPointer to the projected curve.
Returns
Returns eOk if successful, or an appropriate error code if not.

◆ getSpline()

virtual OdResult OdDbCurvePE::getSpline ( const OdDbCurve * pCurve,
OdDbSplinePtr * spline ) const
pure virtual

Returns an OdDbSpline approximation of the specified Curve object.

Parameters
pCurve[in] Pointer to the curve.
spline[out] Receives a SmartPointer to the OdDbSpline.
Returns
Returns eOk if successful, or an appropriate error code if not.

◆ getSplitCurves() [1/2]

virtual OdResult OdDbCurvePE::getSplitCurves ( const OdDbCurve * pCurve,
const OdGeDoubleArray & params,
OdRxObjectPtrArray & curveSegments ) const
pure virtual

Creates a set of curves representing this splitting of the specified Curve object at the specified (parametric) points.

Parameters
pCurve[in] Pointer to the curve to offset.
params[in] Array of curve parameters defining the segments.
curveSegments[out] Receives an array of SmartPointers to the curves segments.
Returns
Returns eOk if successful, or an appropriate error code if not.
Remarks
Pointers to all new curves are appended to the curveSegments array.

◆ getSplitCurves() [2/2]

virtual OdResult OdDbCurvePE::getSplitCurves ( const OdDbCurve * pCurve,
const OdGePoint3dArray & points,
OdRxObjectPtrArray & curveSegments ) const
pure virtual

Creates a set of curves representing this splitting of the specified Curve object at the specified (parametric) points.

Parameters
pCurve[in] Pointer to the curve to offset.
points[in] Array of points defining the segments.
curveSegments[out] Receives an array of SmartPointers to the curves segments.
Returns
Returns eOk if successful, or an appropriate error code if not.
Remarks
Pointers to all new curves are appended to the curveSegments array.

◆ ODRX_DECLARE_MEMBERS()

OdDbCurvePE::ODRX_DECLARE_MEMBERS ( OdDbCurvePE )

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