CFx SDK Documentation  2020SP3
Public Member Functions | List of all members
OdGeCurveCurveInt3d Class Reference

#include <GeCurveCurveInt3d.h>

Inheritance diagram for OdGeCurveCurveInt3d:
OdGeEntity3d

Public Member Functions

 OdGeCurveCurveInt3d ()
 
 OdGeCurveCurveInt3d (const OdGeCurve3d &curve1, const OdGeCurve3d &curve2, const OdGeVector3d &planeNormal=OdGeVector3d::kIdentity, const OdGeTol &tol=OdGeContext::gTol)
 
 OdGeCurveCurveInt3d (const OdGeCurve3d &curve1, const OdGeCurve3d &curve2, const OdGeInterval &range1, const OdGeInterval &range2, const OdGeVector3d &planeNormal=OdGeVector3d::kIdentity, const OdGeTol &tol=OdGeContext::gTol)
 
 OdGeCurveCurveInt3d (const OdGeCurveCurveInt3d &source)
 
const OdGeCurve3dcurve1 () const
 
const OdGeCurve3dcurve2 () const
 
void getIntRanges (OdGeInterval &range1, OdGeInterval &range2) const
 
OdGeVector3d planeNormal () const
 
OdGeTol tolerance () const
 
int numIntPoints () const
 
OdGePoint3d intPoint (int intNum) const
 
void getIntParams (int intNum, double &param1, double &param2) const
 
void getPointOnCurve1 (int intNum, OdGePointOnCurve3d &intPnt) const
 
void getPointOnCurve2 (int intNum, OdGePointOnCurve3d &intPnt) const
 
void getIntConfigs (int intNum, OdGe::OdGeXConfig &config1wrt2, OdGe::OdGeXConfig &config2wrt1) const
 
bool isTangential (int intNum) const
 
bool isTransversal (int intNum) const
 
double intPointTol (int intNum) const
 
int overlapCount () const
 
bool overlapDirection () const
 
void getOverlapRanges (int overlapNum, OdGeInterval &range1, OdGeInterval &range2) const
 
void changeCurveOrder ()
 
OdGeCurveCurveInt3dorderWrt1 ()
 
OdGeCurveCurveInt3dorderWrt2 ()
 
OdGeCurveCurveInt3dset (const OdGeCurve3d &curve1, const OdGeCurve3d &curve2, const OdGeVector3d &planeNormal=OdGeVector3d::kIdentity, const OdGeTol &tol=OdGeContext::gTol)
 
OdGeCurveCurveInt3dset (const OdGeCurve3d &curve1, const OdGeCurve3d &curve2, const OdGeInterval &range1, const OdGeInterval &range2, const OdGeVector3d &planeNormal=OdGeVector3d::kIdentity, const OdGeTol &tol=OdGeContext::gTol)
 
OdGeCurveCurveInt3doperator= (const OdGeCurveCurveInt3d &crvCrvInt)
 
- 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 OdGeEntity3d
 OdGeEntity3d ()
 
 OdGeEntity3d (const OdGeEntity3d &)
 
void connectTo (OdGeEntity3dImpl *)
 

Detailed Description

This class represents intersections of 3D curves. Currently not implemented.

Remarks
The intersection object links to 3D curve objects but does not contain them. Calculation of the intersection is performed by a calling function, which owns the intersection output.

If one of the curve objects is deleted, the intersection must be recalculated.

Corresponding C++ library: TD_Ge

<group OdGe_Classes>

Definition at line 51 of file GeCurveCurveInt3d.h.

Constructor & Destructor Documentation

◆ OdGeCurveCurveInt3d() [1/4]

OdGeCurveCurveInt3d::OdGeCurveCurveInt3d ( )
Parameters
curve1[in] First 3D curve.
curve2[in] Second 3D curve.
planeNormal[in] Specifies the normal to the plane for getIntConfigs().
range1[in] Range of first curve.
range2[in] Range of second curve.
tol[in] Geometric tolerance.
source[in] Object to be cloned.
Remarks
The planeNormal argument is used only with getIntConfigs(). You must supply this argument if and only if you are using getIntConfigs().
Currently not implemented.

◆ OdGeCurveCurveInt3d() [2/4]

OdGeCurveCurveInt3d::OdGeCurveCurveInt3d ( const OdGeCurve3d curve1,
const OdGeCurve3d curve2,
const OdGeVector3d planeNormal = OdGeVector3d::kIdentity,
const OdGeTol tol = OdGeContext::gTol 
)

◆ OdGeCurveCurveInt3d() [3/4]

OdGeCurveCurveInt3d::OdGeCurveCurveInt3d ( const OdGeCurve3d curve1,
const OdGeCurve3d curve2,
const OdGeInterval range1,
const OdGeInterval range2,
const OdGeVector3d planeNormal = OdGeVector3d::kIdentity,
const OdGeTol tol = OdGeContext::gTol 
)

◆ OdGeCurveCurveInt3d() [4/4]

OdGeCurveCurveInt3d::OdGeCurveCurveInt3d ( const OdGeCurveCurveInt3d source)

Member Function Documentation

◆ changeCurveOrder()

void OdGeCurveCurveInt3d::changeCurveOrder ( )

Swaps the first and the second curve.

Remarks
Currently not implemented.

◆ curve1()

const OdGeCurve3d* OdGeCurveCurveInt3d::curve1 ( ) const

Returns the first curve.

Remarks
Currently not implemented.

◆ curve2()

const OdGeCurve3d* OdGeCurveCurveInt3d::curve2 ( ) const

Returns the second curve.

Remarks
Currently not implemented.

◆ getIntConfigs()

void OdGeCurveCurveInt3d::getIntConfigs ( int  intNum,
OdGe::OdGeXConfig config1wrt2,
OdGe::OdGeXConfig config2wrt1 
) const

Returns the configuration of the intersecion point of the first curve with respect to the second, and vice versa.

Parameters
intNum[in] The zero-based index of the intersection point to query.
config1wrt2[out] Receives the configuration of the first curve with respect to the second.
config2wrt1[out] Receives the configuration of the second curve with respect to the first.
Remarks
The curves must be coplanar, and are with respect to the planeNormal.

The possible values for config1wrt2 and config2wrt1 are as follows:

@untitled table kNotDefined kUnknown kLeftRight kRightLeft kLeftLeft kRightRight kPointLeft kPointRight kLeftOverlap kOverlapLeft kRightOverlap kOverlapRight kOverlapStart kOverlapEnd, kOverlapOverlap

Remarks
Currently not implemented.

◆ getIntParams()

void OdGeCurveCurveInt3d::getIntParams ( int  intNum,
double &  param1,
double &  param2 
) const

Returns the curve parameters at the specified intersection point.

Parameters
intNum[in] The zero-based index of the intersection point to return.
param1[out] Receives the parameter of the first curve at the intersection point.
param2[out] Receives the parameter of the second curve at the intersection point.
Remarks
Currently not implemented.

◆ getIntRanges()

void OdGeCurveCurveInt3d::getIntRanges ( OdGeInterval range1,
OdGeInterval range2 
) const

Returns the ranges of the two curves.

Parameters
range1[out] Receives the range of the first curve.
range2[out] Receives the range of the second curve.
Remarks
Currently not implemented.

◆ getOverlapRanges()

void OdGeCurveCurveInt3d::getOverlapRanges ( int  overlapNum,
OdGeInterval range1,
OdGeInterval range2 
) const

Returns the ranges for each curve a the specified overlap.

Parameters
overlapNum[in] The zero-based index of the overlap range to query.
range1[out] Receives the range of the first curve for the specified overlap.
range2[out] Receives the range of the second curve for the specified overlap.
Remarks
Currently not implemented.

◆ getPointOnCurve1()

void OdGeCurveCurveInt3d::getPointOnCurve1 ( int  intNum,
OdGePointOnCurve3d intPnt 
) const

Returns the specified intersection point as an OdGePointOnCurve3d on the first curve.

Parameters
intNum[in] The zero-based index of the intersection point to return.
intPnt[out] Receives the specified intersection point on the first curve.
Remarks
Currently not implemented.

◆ getPointOnCurve2()

void OdGeCurveCurveInt3d::getPointOnCurve2 ( int  intNum,
OdGePointOnCurve3d intPnt 
) const

Returns the specified intersection point as an OdGePointOnCurve3d on the second curve.

Parameters
intNum[in] The zero-based index of the intersection point to return.
intPnt[out] Receives the specified intersection point on the second curve.
Remarks
Currently not implemented.

◆ intPoint()

OdGePoint3d OdGeCurveCurveInt3d::intPoint ( int  intNum) const

Returns the specified intersection point.

Parameters
intNum[in] The zero-based index of the intersection point to return.
Remarks
Currently not implemented.

◆ intPointTol()

double OdGeCurveCurveInt3d::intPointTol ( int  intNum) const

Returns the tolerance used to compute the specified intersection point.

Parameters
intNum[in] The zero-based index of the intersection point to query.
Remarks
Currently not implemented.

◆ isTangential()

bool OdGeCurveCurveInt3d::isTangential ( int  intNum) const

Returns true if and only if the curves are tangential at specified intersection point

Parameters
intNum[in] The zero-based index of the intersection point to query.
Remarks
Currently not implemented.

◆ isTransversal()

bool OdGeCurveCurveInt3d::isTransversal ( int  intNum) const

Returns true if and only if the curves are transversal (cross) at specified intersection point

Parameters
intNum[in] The zero-based index of the intersection point to query.
Remarks
Currently not implemented.

◆ numIntPoints()

int OdGeCurveCurveInt3d::numIntPoints ( ) const

Returns the number of intersections between the curves within the specified ranges.

Remarks
Currently not implemented.

◆ operator=()

OdGeCurveCurveInt3d& OdGeCurveCurveInt3d::operator= ( const OdGeCurveCurveInt3d crvCrvInt)

◆ orderWrt1()

OdGeCurveCurveInt3d& OdGeCurveCurveInt3d::orderWrt1 ( )

Orders the intersection points so they correspond to increasing parameter values of the first curve.

Remarks
Currently not implemented.

◆ orderWrt2()

OdGeCurveCurveInt3d& OdGeCurveCurveInt3d::orderWrt2 ( )

Orders the intersection points so they correspond to increasing parameter values of the second curve.

Remarks
Currently not implemented.

◆ overlapCount()

int OdGeCurveCurveInt3d::overlapCount ( ) const

Returns the number of intervals of overlap for the two curves.

Remarks
Currently not implemented.

◆ overlapDirection()

bool OdGeCurveCurveInt3d::overlapDirection ( ) const

Returns true if and only if the curves are oriented in the same direction where they overlap.

Remarks
This value has meaning only if overlapCount() > 0
Currently not implemented.

◆ planeNormal()

OdGeVector3d OdGeCurveCurveInt3d::planeNormal ( ) const

Returns the normal to the plane for getIntConfigs()

Remarks
Currently not implemented.

◆ set() [1/2]

OdGeCurveCurveInt3d& OdGeCurveCurveInt3d::set ( const OdGeCurve3d curve1,
const OdGeCurve3d curve2,
const OdGeInterval range1,
const OdGeInterval range2,
const OdGeVector3d planeNormal = OdGeVector3d::kIdentity,
const OdGeTol tol = OdGeContext::gTol 
)

Sets the curves, ranges, plane normals, and tolerance for which to determine intersections

Parameters
curve1[in] First 3D curve.
curve2[in] Second 3D curve.
planeNormal[in] Specifies the normal to the plane for getIntConfigs().
range1[in] Range of first curve.
range2[in] Range of second curve.
tol[in] Geometric tolerance.
Remarks
The planeNormal argument is used only with getIntConfigs(). You must supply this argument only if you are using getIntConfigs().
Currently not implemented.

◆ set() [2/2]

OdGeCurveCurveInt3d& OdGeCurveCurveInt3d::set ( const OdGeCurve3d curve1,
const OdGeCurve3d curve2,
const OdGeVector3d planeNormal = OdGeVector3d::kIdentity,
const OdGeTol tol = OdGeContext::gTol 
)

Sets the curves, plane normals, and tolerance for which to determine intersections

Parameters
curve1[in] First 3D curve.
curve2[in] Second 3D curve.
planeNormal[in] Specifies the normal to the plane for getIntConfigs().
tol[in] Geometric tolerance.
Remarks
The planeNormal argument is used only with getIntConfigs(). You must supply this argument only if you are using getIntConfigs().
Currently not implemented.

◆ tolerance()

OdGeTol OdGeCurveCurveInt3d::tolerance ( ) const

Returns the tolerance for determining intersections.

Remarks
Currently not implemented.

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