CFx SDK Documentation  2020SP3
Public Member Functions | List of all members
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 =0
 
virtual OdResult getOffsetCurvesGivenPlaneNormal (const OdDbCurve *pCurve, const OdGeVector3d &normal, double offsetDistance, OdRxObjectPtrArray &offsetCurves) const =0
 
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 ()
 

Detailed Description

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

See also
TD_Db

<group OdDb_Classes>

Definition at line 38 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
pure virtual

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.

◆ getOffsetCurvesGivenPlaneNormal()

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

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.

◆ 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: