CFx SDK Documentation 2024 SP0
Loading...
Searching...
No Matches
Public Types | Public Member Functions | List of all members
OdGeSurfaceCurve2dTo3d Class Reference

#include <GeSurfaceCurve2dTo3d.h>

Inheritance diagram for OdGeSurfaceCurve2dTo3d:
OdGeCurve3d OdGeEntity3d

Public Types

enum  OwnershipFlag {
  kCurveCopy = 0x01 , kCurveOwn = 0x02 , kCurveReference = 0x03 , kSurfaceCopy = 0x01 << 2 ,
  kSurfaceOwn = 0x02 << 2 , kSurfaceReference = 0x03 << 2 , kCopy = kCurveCopy | kSurfaceCopy , kOwn = kCurveOwn | kSurfaceOwn ,
  kReference = kCurveReference | kSurfaceReference , kCurveMask = 0x03 , kSurfaceMask = 0x03 << 2
}
 

Public Member Functions

 OdGeSurfaceCurve2dTo3d ()
 
 OdGeSurfaceCurve2dTo3d (const OdGeSurfaceCurve2dTo3d &source)
 
 OdGeSurfaceCurve2dTo3d (const OdGeCurve2d &uvc, const OdGeSurface &surf)
 
 OdGeSurfaceCurve2dTo3d (const OdGeCurve2d *pUvCurve, const OdGeSurface *pSurface, OwnershipFlag ownership)
 
OdGeSurfaceCurve2dTo3doperator= (const OdGeSurfaceCurve2dTo3d &src)
 
const OdGeCurve2dcurve () const
 
const OdGeSurfacesurface () const
 
void getGeomExtents (OdGeExtents3d &extents) const
 
- Public Member Functions inherited from OdGeCurve3d
void getInterval (OdGeInterval &interval) const
 
void getInterval (OdGeInterval &interval, OdGePoint3d &start, OdGePoint3d &end) const
 
OdGeCurve3dreverseParam ()
 
OdGeCurve3dsetInterval ()
 
bool setInterval (const OdGeInterval &interval)
 
double distanceTo (const OdGePoint3d &point, const OdGeTol &tol=OdGeContext::gTol) const
 
double distanceTo (const OdGeCurve3d &curve, const OdGeTol &tol=OdGeContext::gTol) const
 
OdGePoint3d closestPointTo (const OdGePoint3d &point, const OdGeTol &tol=OdGeContext::gTol) const
 
OdGePoint3d closestPointTo (const OdGeCurve3d &curve, OdGePoint3d &pntOnOtherCrv, const OdGeTol &tol=OdGeContext::gTol) const
 
OdGePoint3d closestPointTo (const OdGePoint3d &point, double &param, const OdGeInterval *range, const OdGeTol &tol=OdGeContext::gTol) const
 
void getClosestPointTo (const OdGePoint3d &point, OdGePointOnCurve3d &pntOnCrv, const OdGeTol &tol=OdGeContext::gTol) const
 
void getClosestPointTo (const OdGeCurve3d &curve, OdGePointOnCurve3d &pntOnThisCrv, OdGePointOnCurve3d &pntOnOtherCrv, const OdGeTol &tol=OdGeContext::gTol) const
 
OdGePoint3d projClosestPointTo (const OdGePoint3d &point, const OdGeVector3d &projectDirection, const OdGeTol &tol=OdGeContext::gTol) const
 
OdGePoint3d projClosestPointTo (const OdGeCurve3d &curve, const OdGeVector3d &projectDirection, OdGePoint3d &pntOnOtherCrv, const OdGeTol &tol=OdGeContext::gTol) const
 
void getProjClosestPointTo (const OdGePoint3d &point, const OdGeVector3d &projectDirection, OdGePointOnCurve3d &pntOnCrv, const OdGeTol &tol=OdGeContext::gTol) const
 
void getProjClosestPointTo (const OdGeCurve3d &curve, const OdGeVector3d &projectDirection, OdGePointOnCurve3d &pntOnThisCrv, OdGePointOnCurve3d &pntOnOtherCrv, const OdGeTol &tol=OdGeContext::gTol) const
 
bool getNormalPoint (const OdGePoint3d &point, OdGePointOnCurve3d &pntOnCrv, const OdGeTol &tol=OdGeContext::gTol) const
 
OdGeBoundBlock3d boundBlock () const
 
OdGeBoundBlock3d boundBlock (const OdGeInterval &range) const
 
OdGeBoundBlock3d orthoBoundBlock () const
 
OdGeBoundBlock3d orthoBoundBlock (const OdGeInterval &range) const
 
OdGeExtents3d getGeomExtents (const OdGeInterval &range=OdGeInterval(), const OdGeMatrix3d *coordSystem=NULL) const
 
OdGeEntity3dproject (const OdGePlane &projectionPlane, const OdGeVector3d &projectDirection, const OdGeTol &tol=OdGeContext::gTol) const
 
OdGeEntity3dorthoProject (const OdGePlane &projectionPlane, const OdGeTol &tol=OdGeContext::gTol) const
 
 TD_USING (OdGeEntity3d::isOn)
 
bool isOn (const OdGePoint3d &point, double &param, const OdGeTol &tol=OdGeContext::gTol) const
 
bool isOn (double param, const OdGeTol &tol=OdGeContext::gTol) const
 
double paramOf (const OdGePoint3d &point, const OdGeTol &tol=OdGeContext::gTol) const
 
double paramOf (const OdGePoint3d &point, const OdGeInterval *range, const OdGeTol &tol=OdGeContext::gTol) const
 
void getTrimmedOffset (double distance, const OdGeVector3d &planeNormal, OdGeCurve3dPtrArray &offsetCurveList, OdGe::OffsetCrvExtType extensionType=OdGe::kFillet, const OdGeTol &tol=OdGeContext::gTol) const
 
bool isClosed (const OdGeTol &tol=OdGeContext::gTol) const
 
bool isPlanar (OdGePlane &plane, const OdGeTol &tol=OdGeContext::gTol) const
 
bool isLinear (OdGeLine3d &line, const OdGeTol &tol=OdGeContext::gTol) const
 
bool isCoplanarWith (const OdGeCurve3d &curve, OdGePlane &plane, const OdGeTol &tol=OdGeContext::gTol) const
 
bool isPeriodic (double &period) 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 (OdGeEntity3d *&pConvertedEntity, const OdGeTol &tol=OdGeContext::gTol) const
 
void getSplitCurves (double param, OdGeCurve3d *&piece1, OdGeCurve3d *&piece2) const
 
bool explode (OdGeCurve3dPtrArray &explodedCurves, OdGeIntArray &newExplodedCurves, const OdGeInterval *pInterval=NULL) const
 
void getLocalClosestPoints (const OdGePoint3d &point, OdGePointOnCurve3d &approxPntOnThisCrv, const OdGeInterval *pInterval1=NULL, const OdGeTol &tol=OdGeContext::gTol) const
 
void getLocalClosestPoints (const OdGeCurve3d &curve, OdGePointOnCurve3d &approxPntOnThisCrv, OdGePointOnCurve3d &approxPntOnOtherCrv, const OdGeInterval *pInterval1=NULL, const OdGeInterval *pInterval2=NULL, const OdGeTol &tol=OdGeContext::gTol) const
 
bool hasStartPoint (OdGePoint3d &startPoint) const
 
bool hasEndPoint (OdGePoint3d &endPoint) const
 
bool hasMidPoint (OdGePoint3d &point, double coef=0.5) const
 
OdGePoint3d midPoint (double coef=0.5) const
 
OdGePoint3d evalPoint (double param) const
 
OdGePoint3d evalPoint (double param, int numDeriv, OdGeVector3dArray &derivatives) const
 
void getSamplePoints (double fromParam, double toParam, double approxEps, OdGePoint3dArray &pointArray, OdGeDoubleArray &paramArray, bool forceResampling=false) const
 
void getSamplePoints (int numSample, OdGePoint3dArray &pointArray) const
 
void getSamplePoints (int numSample, OdGePoint3dArray &pointArray, OdGeDoubleArray &paramArray) const
 
OdGeCurve3doperator= (const OdGeCurve3d &curve)
 
void getSamplePoints (double fromParam, double toParam, double approxEps, OdGePoint3dArray &pointArray, OdGeDoubleArray *paramArray=NULL) const
 
void getSamplePoints (const OdGeInterval *paramInterval, double approxEps, OdGePoint3dArray &pointArray, OdGeDoubleArray *pParamArray=NULL) const
 
void appendSamplePoints (double fromParam, double toParam, double approxEps, OdGePoint3dArray &pointArray, OdGeDoubleArray *pParamArray=NULL) const
 
void appendSamplePoints (int numSample, OdGePoint3dArray &pointArray, OdGeDoubleArray *pParamArray=NULL) const
 
void appendSamplePoints (const OdGeInterval *paramInterval, double approxEps, OdGePoint3dArray &pointArray, OdGeDoubleArray *pParamArray=NULL) const
 
OdGeCurve2dconvertTo2d (const OdGeTol &tol=OdGeContext::gTol, bool sameParametrization=false) const
 
- Public Member Functions inherited from OdGeEntity3d
 ODRX_HEAP_OPERATORS ()
 
 ~OdGeEntity3d ()
 
bool isKindOf (OdGe::EntityId entType) const
 
OdGe::EntityId type () const
 
OdGeEntity3dcopy () const
 
OdGeEntity3doperator= (const OdGeEntity3d &entity)
 
bool operator== (const OdGeEntity3d &entity) const
 
bool operator!= (const OdGeEntity3d &entity) const
 
bool isEqualTo (const OdGeEntity3d &object, const OdGeTol &tol=OdGeContext::gTol) const
 
OdGeEntity3dtransformBy (const OdGeMatrix3d &xfm)
 
OdGeEntity3dtranslateBy (const OdGeVector3d &translateVec)
 
OdGeEntity3drotateBy (double angle, const OdGeVector3d &vect, const OdGePoint3d &basePoint=OdGePoint3d::kOrigin)
 
OdGeEntity3dmirror (const OdGePlane &plane)
 
OdGeEntity3dscaleBy (double scaleFactor, const OdGePoint3d &basePoint=OdGePoint3d::kOrigin)
 
bool isOn (const OdGePoint3d &point, const OdGeTol &tol=OdGeContext::gTol) const
 

Additional Inherited Members

- Protected Member Functions inherited from OdGeCurve3d
 OdGeCurve3d ()
 
 OdGeCurve3d (const OdGeCurve3d &source)
 
- Protected Member Functions inherited from OdGeEntity3d
 OdGeEntity3d ()
 
 OdGeEntity3d (const OdGeEntity3d &)
 
void connectTo (OdGeEntity3dImpl *)
 

Detailed Description

This class provides a 3D representation for curves defined in the 2D surface parameter space.

Remarks
A OdGeSurfaceCurve2dTo3d object is a 3D curve, and a point of this curve at specific parameter value can be calculated by evaluating a point of the UV-curve at the corresponding parameter value: pointCurve3d = pSurf->evalPoint(pUVCurve->evalPoint(param));

Corresponding C++ library: TD_Ge

<group OdGe_Classes>

Definition at line 45 of file GeSurfaceCurve2dTo3d.h.

Member Enumeration Documentation

◆ OwnershipFlag

Defines ownership flag states.

Enumerator
kCurveCopy 

OdGeSurfaceCurve2dTo3d object copies the input curve.

kCurveOwn 

OdGeSurfaceCurve2dTo3d owns the input curve and deletes it when the object is destroyed.

kCurveReference 

OdGeSurfaceCurve2dTo3d uses the input curve but does not destroy it.

kSurfaceCopy 

OdGeSurfaceCurve2dTo3d makes a copy of the input surface.

kSurfaceOwn 

OdGeSurfaceCurve2dTo3d owns the input surface and deletes it when the object is destroyed.

kSurfaceReference 

OdGeSurfaceCurve2dTo3d uses the input surface but does not destroy it.

kCopy 

OdGeSurfaceCurve2dTo3d makes a copy of the input curve and surface.

kOwn 

OdGeSurfaceCurve2dTo3d owns the input curve and surface, and deletes them when the object is destroyed.

kReference 

OdGeSurfaceCurve2dTo3d uses the input curve and surface but does not destroy them.

kCurveMask 
kSurfaceMask 

Definition at line 75 of file GeSurfaceCurve2dTo3d.h.

Constructor & Destructor Documentation

◆ OdGeSurfaceCurve2dTo3d() [1/4]

OdGeSurfaceCurve2dTo3d::OdGeSurfaceCurve2dTo3d ( )

Default constructor for the OdGeSurfaceCurve2dTo3d class.

◆ OdGeSurfaceCurve2dTo3d() [2/4]

OdGeSurfaceCurve2dTo3d::OdGeSurfaceCurve2dTo3d ( const OdGeSurfaceCurve2dTo3d source)

Copy constructor for the OdGeSurfaceCurve2dTo3d class. Copies the specified object.

Parameters
source[in] Object to copy.

◆ OdGeSurfaceCurve2dTo3d() [3/4]

OdGeSurfaceCurve2dTo3d::OdGeSurfaceCurve2dTo3d ( const OdGeCurve2d uvc,
const OdGeSurface surf 
)

Constructor for the OdGeSurfaceCurve2dTo3d class. Constructs an object with a curve defined in the parametric space of the specified surface.

Parameters
uvc[in] The 2D curve defined in parameters space of the specified surface.
surf[in] The surface that contains the curve.

◆ OdGeSurfaceCurve2dTo3d() [4/4]

OdGeSurfaceCurve2dTo3d::OdGeSurfaceCurve2dTo3d ( const OdGeCurve2d pUvCurve,
const OdGeSurface pSurface,
OwnershipFlag  ownership 
)

Constructor for the OdGeSurfaceCurve2dTo3d class. Constructs an object with the specified type of curve and surface ownership.

Parameters
pUvCurve[in] A uv-curve on a pSurface.
pSurface[in] A surface that generates a 3d curve.
ownership[in] A curve and surface ownership type.
Remarks
Beware: pUvCurve or pSurface objects can be modified when passed with kCurveOwn/kCurveReference or kSurfaceOwn/kSurfaceReference flags. Do not call non-const methods to keep the original state of pUvCurve and pSurface objects!

Throws an exception if at least one of the pUvCurve or pSurface ojbects is NULL or the ownership type isn't a combination of kCurve* and kSurface* values from the OwnershipFlag enum.

Member Function Documentation

◆ curve()

const OdGeCurve2d * OdGeSurfaceCurve2dTo3d::curve ( ) const

Returns the stored UV curve.

◆ getGeomExtents()

void OdGeSurfaceCurve2dTo3d::getGeomExtents ( OdGeExtents3d extents) const

Returns the geometric extents of this curve.

Parameters
extents[out] Receives the geometric extents.

◆ operator=()

OdGeSurfaceCurve2dTo3d & OdGeSurfaceCurve2dTo3d::operator= ( const OdGeSurfaceCurve2dTo3d src)

Copies the input OdGeSurfaceCurve2dTo3d.

Parameters
src[in] The Source OdGeSurfaceCurve2dTo3d object to be cloned.

◆ surface()

const OdGeSurface * OdGeSurfaceCurve2dTo3d::surface ( ) const

Returns the stored parametric surface.


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