|
CFx SDK Documentation 2024 SP0
|
#include <GeCurveCurveInt3d.h>
Additional Inherited Members | |
Protected Member Functions inherited from OdGeEntity3d | |
| OdGeEntity3d () | |
| OdGeEntity3d (const OdGeEntity3d &) | |
| void | connectTo (OdGeEntity3dImpl *) |
This class represents intersections of 3D curves.
If one of the curve objects is deleted, the intersection must be recalculated.
Corresponding C++ library: TD_Ge
<group OdGe_Classes>
Definition at line 53 of file GeCurveCurveInt3d.h.
| OdGeCurveCurveInt3d::OdGeCurveCurveInt3d | ( | ) |
Default constructor for the OdGeCurveCurveInt3d class. Constructs an invalid curve-curve intersector with no intersection curves and default tolerance.
| OdGeCurveCurveInt3d::OdGeCurveCurveInt3d | ( | const OdGeCurve3d & | curve1, |
| const OdGeCurve3d & | curve2, | ||
| const OdGeVector3d & | planeNormal = OdGeVector3d::kIdentity, |
||
| const OdGeTol & | tol = OdGeContext::gTol |
||
| ) |
Constructor. Creates an OdGeCurveCurveInt3d object with specified two curves and geometric tolerance.
| curve1 | [in] First 3D curve. |
| curve2 | [in] Second 3D curve. |
| planeNormal | [in] Specifies the normal to the plane for getIntConfigs(). |
| tol | [in] Geometric tolerance. |
| OdGeCurveCurveInt3d::OdGeCurveCurveInt3d | ( | const OdGeCurve3d & | curve1, |
| const OdGeCurve3d & | curve2, | ||
| const OdGeInterval & | range1, | ||
| const OdGeInterval & | range2, | ||
| const OdGeVector3d & | planeNormal = OdGeVector3d::kIdentity, |
||
| const OdGeTol & | tol = OdGeContext::gTol |
||
| ) |
Constructor. Creates an OdGeCurveCurveInt3d object with specified two curves, their ranges and geometric tolerance.
| curve1 | [in] First 3D curve. |
| curve2 | [in] Second 3D curve. |
| range1 | [in] Parametric range of first curve where the intersection is calculated. |
| range2 | [in] Parametric range of second curve where the intersection is calculated. |
| planeNormal | [in] Specifies the normal to the plane for getIntConfigs(). |
| tol | [in] Geometric tolerance. |
| OdGeCurveCurveInt3d::OdGeCurveCurveInt3d | ( | const OdGeCurveCurveInt3d & | source | ) |
Copy constructor. Creates an OdGeCurveCurveInt3d object and initializes it with parameters of the specified source object.
| source | [in] Object to be copied. |
| void OdGeCurveCurveInt3d::changeCurveOrder | ( | ) |
Swaps the first and the second curve.
| const OdGeCurve3d * OdGeCurveCurveInt3d::curve1 | ( | ) | const |
Returns the first curve.
| const OdGeCurve3d * OdGeCurveCurveInt3d::curve2 | ( | ) | const |
Returns the second curve.
| void OdGeCurveCurveInt3d::getIntConfigs | ( | int | intNum, |
| OdGe::OdGeXConfig & | config1wrt2, | ||
| OdGe::OdGeXConfig & | config2wrt1 | ||
| ) | const |
Calculates the configuration of the first curve with respect to the second at the intersection point, and vice versa.
| 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. |
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
| void OdGeCurveCurveInt3d::getIntParams | ( | int | intNum, |
| double & | param1, | ||
| double & | param2 | ||
| ) | const |
Retrieves the curve parameters at the specified intersection point.
| 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. |
| void OdGeCurveCurveInt3d::getIntRanges | ( | OdGeInterval & | range1, |
| OdGeInterval & | range2 | ||
| ) | const |
Retrieves the ranges of the two curves.
| range1 | [out] Receives the range of the first curve where intersections are calculated. |
| range2 | [out] Receives the range of the second curve where intersections are calculated. |
| void OdGeCurveCurveInt3d::getOverlapRanges | ( | int | overlapNum, |
| OdGeInterval & | range1, | ||
| OdGeInterval & | range2 | ||
| ) | const |
Retrieves the ranges for each curve a the specified overlap.
| 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. |
| void OdGeCurveCurveInt3d::getPointOnCurve1 | ( | int | intNum, |
| OdGePointOnCurve3d & | intPnt | ||
| ) | const |
Retrieves the specified intersection point as an OdGePointOnCurve3d on the first curve.
| intNum | [in] The zero-based index of the intersection point to return. |
| intPnt | [out] Receives the specified intersection point on the first curve. |
| void OdGeCurveCurveInt3d::getPointOnCurve2 | ( | int | intNum, |
| OdGePointOnCurve3d & | intPnt | ||
| ) | const |
Retrieves the specified intersection point as an OdGePointOnCurve3d on the second curve.
| intNum | [in] The zero-based index of the intersection point to return. |
| intPnt | [out] Receives the specified intersection point on the second curve. |
| OdGePoint3d OdGeCurveCurveInt3d::intPoint | ( | int | intNum | ) | const |
Returns an intersection point by its index.
| intNum | [in] The zero-based index of the intersection point to return. |
| double OdGeCurveCurveInt3d::intPointTol | ( | int | intNum | ) | const |
Returns the tolerance used to compute the specified intersection point.
| intNum | [in] The zero-based index of the intersection point to query. |
| bool OdGeCurveCurveInt3d::isTangential | ( | int | intNum | ) | const |
Checks if the curves are tangential at the specified intersection point.
| intNum | [in] The zero-based index of the intersection point to query. |
| bool OdGeCurveCurveInt3d::isTransversal | ( | int | intNum | ) | const |
Checks if the curves are transversal (cross) at the specified intersection point.
| intNum | [in] The zero-based index of the intersection point to query. |
| int OdGeCurveCurveInt3d::numIntPoints | ( | ) | const |
Returns the number of intersections between the curves within the specified ranges.
| OdGeCurveCurveInt3d & OdGeCurveCurveInt3d::operator= | ( | const OdGeCurveCurveInt3d & | crvCrvInt | ) |
Assignment operator for the OdGeCurveCurveInt3d object.
| crvCrvInt | [in] OdGeCurveCurveInt3d object to assign. |
| OdGeCurveCurveInt3d & OdGeCurveCurveInt3d::orderWrt1 | ( | ) |
Orders the intersection points so they correspond to increasing parameter values of the first curve.
| OdGeCurveCurveInt3d & OdGeCurveCurveInt3d::orderWrt2 | ( | ) |
Orders the intersection points so they correspond to increasing parameter values of the second curve.
| int OdGeCurveCurveInt3d::overlapCount | ( | ) | const |
Returns the number of intervals of overlap for the two curves.
| bool OdGeCurveCurveInt3d::overlapDirection | ( | ) | const |
Checks if the curves are oriented in the same direction where they overlap.
| OdGeVector3d OdGeCurveCurveInt3d::planeNormal | ( | ) | const |
Returns the normal to the plane for getIntConfigs().
| 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.
| 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. |
| 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.
| curve1 | [in] First 3D curve. |
| curve2 | [in] Second 3D curve. |
| planeNormal | [in] Specifies the normal to the plane for getIntConfigs(). |
| tol | [in] Geometric tolerance. |
| OdGeTol OdGeCurveCurveInt3d::tolerance | ( | ) | const |
Returns the tolerance for determining intersections.