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

#include <GeCircArc3d.h>

Inheritance diagram for OdGeCircArc3d:
OdGeCurve3d OdGeEntity3d

Public Member Functions

 OdGeCircArc3d ()
 
 OdGeCircArc3d (const OdGeCircArc3d &source)
 
 OdGeCircArc3d (const OdGePoint3d &center, const OdGeVector3d &normal, double radius)
 
 OdGeCircArc3d (const OdGePoint3d &center, const OdGeVector3d &normal, const OdGeVector3d &refVec, double radius, double startAng=0, double endAng=Oda2PI)
 
 OdGeCircArc3d (const OdGePoint3d &startPoint, const OdGePoint3d &secondPoint, const OdGePoint3d &endPoint)
 
OdGePoint3d closestPointToPlane (const OdGePlanarEnt &plane, OdGePoint3d &pointOnPlane, const OdGeTol &tol=OdGeContext::gTol) const
 
bool intersectWith (const OdGeLinearEnt3d &line, int &numInt, OdGePoint3d &p1, OdGePoint3d &p2, const OdGeTol &tol=OdGeContext::gTol) const
 
bool intersectWith (const OdGeCircArc3d &arc, int &numInt, OdGePoint3d &p1, OdGePoint3d &p2, const OdGeTol &tol=OdGeContext::gTol) const
 
bool intersectWith (const OdGePlanarEnt &plane, int &numInt, OdGePoint3d &p1, OdGePoint3d &p2, const OdGeTol &tol=OdGeContext::gTol) const
 
bool projIntersectWith (const OdGeLinearEnt3d &line, const OdGeVector3d &projDir, int &numInt, OdGePoint3d &pntOnArc1, OdGePoint3d &pntOnArc2, OdGePoint3d &pntOnLine1, OdGePoint3d &pntOnLine2, const OdGeTol &tol=OdGeContext::gTol) const
 
bool tangent (const OdGePoint3d &point, OdGeLine3d &line, const OdGeTol &tol=OdGeContext::gTol) const
 
bool tangent (const OdGePoint3d &point, OdGeLine3d &line, const OdGeTol &tol, OdGeError &status) const
 
void getPlane (OdGePlane &plane) const
 
bool isInside (const OdGePoint3d &point, const OdGeTol &tol=OdGeContext::gTol) const
 
OdGePoint3d center () const
 
OdGeVector3d normal () const
 
OdGeVector3d refVec () const
 
double radius () const
 
double startAng () const
 
double endAng () const
 
OdGePoint3d startPoint () const
 
OdGePoint3d endPoint () const
 
OdGeCircArc3dsetCenter (const OdGePoint3d &center)
 
OdGeCircArc3dsetAxes (const OdGeVector3d &normal, const OdGeVector3d &refVec)
 
OdGeCircArc3dsetRadius (double radius)
 
OdGeCircArc3dsetAngles (double startAng, double endAng)
 
OdGeCircArc3dset (const OdGePoint3d &center, const OdGeVector3d &normal, double radius)
 
OdGeCircArc3dset (const OdGePoint3d &center, const OdGeVector3d &normal, const OdGeVector3d &refVec, double radius, double startAng, double endAng)
 
OdGeCircArc3dset (const OdGePoint3d &startPoint, const OdGePoint3d &secondPoint, const OdGePoint3d &endPoint)
 
OdGeCircArc3dset (const OdGePoint3d &startPoint, const OdGePoint3d &secondPoint, const OdGePoint3d &endPoint, OdGeError &status)
 
OdGeCircArc3dset (const OdGeCurve3d &curve1, const OdGeCurve3d &curve2, double radius, double &param1, double &param2, bool &success)
 
OdGeCircArc3dset (const OdGeCurve3d &curve1, const OdGeCurve3d &curve2, const OdGeCurve3d &curve3, double &param1, double &param2, double &param3, bool &success)
 
OdGeCircArc3doperator= (const OdGeCircArc3d &arc)
 
void getGeomExtents (OdGeExtents3d &extents) const
 
OdGeCircArc3djoinWith (const OdGeCircArc3d &curve, const OdGeTol &iTolerance=OdGeContext::gTol)
 
- 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

A mathematical entity used to represent a circular arc in 3D space.

Corresponding C++ library: TD_Ge

<group OdGe_Classes>

See also
<link ge_OdGeCircArc3d, Working with Circular Arcs>

Definition at line 47 of file GeCircArc3d.h.

Constructor & Destructor Documentation

◆ OdGeCircArc3d() [1/5]

OdGeCircArc3d::OdGeCircArc3d ( )

Default constructor for objects of the OdGeCircArc3d class. Constructs a full circle in the XY plane (normal vector (0.0, 0.0, 1.0)) with center (0.0, 0.0, 0.0), radius of 1.0, and reference axis (1.0, 0.0, 0.0).

◆ OdGeCircArc3d() [2/5]

OdGeCircArc3d::OdGeCircArc3d ( const OdGeCircArc3d source)

Copy constructor for objects of the OdGeCircArc3d class.

Parameters
source[in] 3D arc to be copied.
Remarks
The constructor creates an arc that is a copy of an input arc.

◆ OdGeCircArc3d() [3/5]

OdGeCircArc3d::OdGeCircArc3d ( const OdGePoint3d center,
const OdGeVector3d normal,
double  radius 
)

Constructor for objects of the OdGeCircArc3d class.

Parameters
center[in] Center of a circle.
normal[in] Normal vector of a 3D circle.
radius[in] Radius of a circle.
Remarks
The constructor creates a circle with the specified parameters.

◆ OdGeCircArc3d() [4/5]

OdGeCircArc3d::OdGeCircArc3d ( const OdGePoint3d center,
const OdGeVector3d normal,
const OdGeVector3d refVec,
double  radius,
double  startAng = 0,
double  endAng = Oda2PI 
)

Constructor for objects of the OdGeCircArc3d class.

Parameters
center[in] Center of an arc.
normal[in] Normal vector of a 3D circle.
refVec[in] Reference vector defining arc angle 0.
radius[in] Radius of the circular arc.
startAng[in] Starting angle of an arc.
endAng[in] Ending angle of an arc.
Remarks
The constructor creates a circular arc with the specified parameters.
Angles are measured by drawing a vector between a point on the arc and the center point and taking the angle between this vector and refVec.
The angle is measured in a counterclockwise direction about the normal vector.
The normal vector must be perpendicular to refVec, and endAngle must be greater than startAngle. All angles are expressed in radians.
To construct a full circle, specify the endAngle and startAngle, so the difference between them is 2 x Pi. In common case parameter (paramOf, evalPoint, evaluate) interval is NOT equal to [startAng; endAng]! But its length is equal to endAng - startAng.

◆ OdGeCircArc3d() [5/5]

OdGeCircArc3d::OdGeCircArc3d ( const OdGePoint3d startPoint,
const OdGePoint3d secondPoint,
const OdGePoint3d endPoint 
)

Constructor for objects of the OdGeCircArc3d class.

Parameters
startPoint[in] Startpoint of an arc.
secondPoint[in] Second point on a 3-point arc.
endPoint[in] Endpoint of an arc.
Remarks
This constructor always constructs a bounded arc and cannot be used to construct a full circle.

Member Function Documentation

◆ center()

OdGePoint3d OdGeCircArc3d::center ( ) const

Returns the center of this arc.

◆ closestPointToPlane()

OdGePoint3d OdGeCircArc3d::closestPointToPlane ( const OdGePlanarEnt plane,
OdGePoint3d pointOnPlane,
const OdGeTol tol = OdGeContext::gTol 
) const

Returns the point on this circle that is the closest to the specified plane, and the point on the plane that is the closest to this circle.

Parameters
plane[in] Any plane.
pointOnPlane[out] Receives the closest point on plane.
tol[in] Geometric tolerance.

◆ endAng()

double OdGeCircArc3d::endAng ( ) const

Gets the ending angle measured from the reference vector in the arc direction.

Returns
The ending angle value.
Remarks
All angles are expressed in radians.
The result of this method should not be used as a curve parameter. The angles and its corresponding parameter may differ.

◆ endPoint()

OdGePoint3d OdGeCircArc3d::endPoint ( ) const

Returns the end point of this arc.

◆ getGeomExtents()

void OdGeCircArc3d::getGeomExtents ( OdGeExtents3d extents) const

Returns the geometric extents of this arc.

Parameters
extents[out] Receives the geometric extents.

◆ getPlane()

void OdGeCircArc3d::getPlane ( OdGePlane plane) const

Returns the plane of the arc.

Parameters
plane[out] Receives the plane of the arc.

◆ intersectWith() [1/3]

bool OdGeCircArc3d::intersectWith ( const OdGeCircArc3d arc,
int &  numInt,
OdGePoint3d p1,
OdGePoint3d p2,
const OdGeTol tol = OdGeContext::gTol 
) const

Gets the intersections with other arc objects.

Parameters
arc[in] Any 3D arc entity.
numInt[out] Receives the number of intersections.
p1[out] Receives the first intersection point on the arc.
p2[out] Receives the second intersection point on the arc.
tol[in] Geometric tolerance.
Returns
true if the specified arc intersects this arc entity, false otherwise.
Remarks
p1 has meaning only if numInt > 0. p2 has meaning only if numInt > 1.

◆ intersectWith() [2/3]

bool OdGeCircArc3d::intersectWith ( const OdGeLinearEnt3d line,
int &  numInt,
OdGePoint3d p1,
OdGePoint3d p2,
const OdGeTol tol = OdGeContext::gTol 
) const

Gets the intersections with other objects.

Parameters
line[in] Any 3D linear entity.
numInt[out] Receives the number of intersections.
p1[out] Receives the first intersection point.
p2[out] Receives the second intersection point.
tol[in] Geometric tolerance.
Returns
True if the specified line entity intersects this arc entity.

◆ intersectWith() [3/3]

bool OdGeCircArc3d::intersectWith ( const OdGePlanarEnt plane,
int &  numInt,
OdGePoint3d p1,
OdGePoint3d p2,
const OdGeTol tol = OdGeContext::gTol 
) const

Gets the number of intersections and points of intersection.

Parameters
plane[in] Any plane entity.
numInt[out] Receives the number of intersections.
p1[out] Receives the first intersection point on the arc.
p2[out] Receives the second intersection point on the arc.
tol[in] Geometric tolerance.
Returns
True if the specified plane entity intersects this arc entity.
Remarks
p1 has meaning only if numInt > 0. p2 has meaning only if numInt > 1.

◆ isInside()

bool OdGeCircArc3d::isInside ( const OdGePoint3d point,
const OdGeTol tol = OdGeContext::gTol 
) const

Returns true if and only if the specified point lies inside the full circle of this arc, and is on the same plane as this arc.

Parameters
point[in] Any 3D point.
tol[in] Geometric tolerance.

◆ joinWith()

OdGeCircArc3d & OdGeCircArc3d::joinWith ( const OdGeCircArc3d curve,
const OdGeTol iTolerance = OdGeContext::gTol 
)

Attaches the specified curve to this arc.

Parameters
curve[in] Circle arc to join.
iTolerance[in] Tolerance for comparisons.
Returns
Reference to the recomputed circular arc.
Remarks
Curves should not overlap. The circles should have the same center, radius and co-directional normals. the starting point of the join curve should coincide with the ending point of this curve. Otherwise it will raise eInvalidInput. Angle between the corresponding axes can be arbitrary. If the end of the passed arc coincides with the beginning of this arc, the result will be a closed curve.

◆ normal()

OdGeVector3d OdGeCircArc3d::normal ( ) const

Returns the vector normal to the plane of this arc.

◆ operator=()

OdGeCircArc3d & OdGeCircArc3d::operator= ( const OdGeCircArc3d arc)

Assignment operator for objects of the OdGeCircArc3d class.

Parameters
arc[in] Input 3D arc.
Remarks
Assigns input arc to this arc.

◆ projIntersectWith()

bool OdGeCircArc3d::projIntersectWith ( const OdGeLinearEnt3d line,
const OdGeVector3d projDir,
int &  numInt,
OdGePoint3d pntOnArc1,
OdGePoint3d pntOnArc2,
OdGePoint3d pntOnLine1,
OdGePoint3d pntOnLine2,
const OdGeTol tol = OdGeContext::gTol 
) const

Returns True if the projected points of the arc intersect with the specified linear entity, and returns the number of intersections and points of intersection.

Parameters
line[in] Any 3D linear entity.
projDir[in] Projection direction.
numInt[out] Receives the number of intersections.
pntOnArc1[out] Receives the first intersection point on the arc.
pntOnArc2[out] Receives the second intersection point on the arc.
pntOnLine1[out] Receives the first intersection point on the line.
pntOnLine2[out] Receives the second intersection point on the line.
tol[in] Geometric tolerance.

◆ radius()

double OdGeCircArc3d::radius ( ) const

Returns the radius of this arc.

◆ refVec()

OdGeVector3d OdGeCircArc3d::refVec ( ) const

Returns the reference vector as a unit vector.

◆ set() [1/6]

OdGeCircArc3d & OdGeCircArc3d::set ( const OdGeCurve3d curve1,
const OdGeCurve3d curve2,
const OdGeCurve3d curve3,
double &  param1,
double &  param2,
double &  param3,
bool &  success 
)

Sets the parameters for this arc according to the arguments, and returns a reference to this arc.

Parameters
curve1[in] First curve to define a tangent arc.
curve2[in] Second curve to define a tangent arc.
curve3[in] Third curve to define a tangent arc.
param1[in] Parameter corresponding tangency point on curve1.
param2[in] Parameter corresponding tangency point on curve2.
param3[in] Parameter corresponding tangency point on curve3.
success[out] Receives true if and only if the tan-tan-radius or tan-tan-tan curve could be constructed. If false, this arc is unmodified.

◆ set() [2/6]

OdGeCircArc3d & OdGeCircArc3d::set ( const OdGeCurve3d curve1,
const OdGeCurve3d curve2,
double  radius,
double &  param1,
double &  param2,
bool &  success 
)

Sets the parameters for this arc according to the arguments, and returns a reference to this arc.

Parameters
radius[in] Radius of the arc.
curve1[in] First curve to define a tangent arc.
curve2[in] Second curve to define a tangent arc.
param1[in] Parameter corresponding tangency point on curve1.
param2[in] Parameter corresponding tangency point on curve2.
success[out] Receives true if and only if the tan-tan-radius or tan-tan-tan curve could be constructed. If false, this arc is unmodified.

◆ set() [3/6]

OdGeCircArc3d & OdGeCircArc3d::set ( const OdGePoint3d center,
const OdGeVector3d normal,
const OdGeVector3d refVec,
double  radius,
double  startAng,
double  endAng 
)

Sets the parameters for this arc according to the arguments, and returns a reference to this arc.

Parameters
center[in] Center of the arc.
normal[in] Vector normal to the plane of the arc.
radius[in] Radius of the arc.
startAng[in] Starting angle of the arc.
endAng[in] Ending angle of the arc.
refVec[in] Reference vector defining arc angle 0.
Remarks
To construct a circle, set endAng = startAng + Oda2PI.
All angles are expressed in radians. In common case parameter (paramOf, evalPoint, evaluate) interval is NOT equal to [startAng; endAng]! But its length is equal to endAng - startAng. startAng must be less than endAng.

◆ set() [4/6]

OdGeCircArc3d & OdGeCircArc3d::set ( const OdGePoint3d center,
const OdGeVector3d normal,
double  radius 
)

Sets the parameters for this arc according to the arguments, and returns a reference to this arc.

Parameters
center[in] Center of the arc.
normal[in] Vector normal to the plane of the arc.
radius[in] Radius of the arc.

◆ set() [5/6]

OdGeCircArc3d & OdGeCircArc3d::set ( const OdGePoint3d startPoint,
const OdGePoint3d secondPoint,
const OdGePoint3d endPoint 
)

Sets the parameters for this arc according to the arguments, and returns a reference to this arc.

Parameters
startPoint[in] Startpoint of the arc.
secondPoint[in] Second point on a 3-point arc.
endPoint[in] Endpoint of the arc.

◆ set() [6/6]

OdGeCircArc3d & OdGeCircArc3d::set ( const OdGePoint3d startPoint,
const OdGePoint3d secondPoint,
const OdGePoint3d endPoint,
OdGeError status 
)

Sets the parameters for this arc according to the arguments, and returns a reference to this arc.

Parameters
startPoint[in] Startpoint of the arc.
secondPoint[in] Second point on a 3-point arc.
endPoint[in] Endpoint of the arc.
status[out] Receives status of set().

◆ setAngles()

OdGeCircArc3d & OdGeCircArc3d::setAngles ( double  startAng,
double  endAng 
)

Sets the starting and ending angles of this arc, and returns a reference to this arc.

Parameters
startAng[in] Starting angle of arc.
endAng[in] Ending angle of arc.
Remarks
All angles are expressed in radians. In common case parameter (paramOf, evalPoint, evaluate) interval is NOT equal to [startAng; endAng]! But its length is equal to endAng - startAng.

◆ setAxes()

OdGeCircArc3d & OdGeCircArc3d::setAxes ( const OdGeVector3d normal,
const OdGeVector3d refVec 
)

Sets the normal and reference vectors for this arc. Returns a reference to this arc.

Parameters
normal[in] A vector normal to the plane of the arc.
refVec[in] The reference vector defining arc angle 0.

◆ setCenter()

OdGeCircArc3d & OdGeCircArc3d::setCenter ( const OdGePoint3d center)

Sets the center of this arc, and returns a reference to this arc.

Parameters
center[in] Center of arc.

◆ setRadius()

OdGeCircArc3d & OdGeCircArc3d::setRadius ( double  radius)

Sets the radius of this arc, and returns a reference to this arc.

Parameters
radius[in] Radius of arc.

◆ startAng()

double OdGeCircArc3d::startAng ( ) const

Gets the starting angle measured from the reference vector in the arc direction.

Returns
The starting angle value.
Remarks
All angles are expressed in radians.
The result of this method should not be used as a curve parameter. The angles and its corresponding parameter may differ.

◆ startPoint()

OdGePoint3d OdGeCircArc3d::startPoint ( ) const

Returns the start point of this arc.

◆ tangent() [1/2]

bool OdGeCircArc3d::tangent ( const OdGePoint3d point,
OdGeLine3d line,
const OdGeTol tol,
OdGeError status 
) const

Returns true if and only if the specified point is on the full circle of this arc, the tangent at that point, and the status of the query.

Parameters
point[in] Point on the full circle.
line[out] Receives the tangent line at that point.
tol[in] Geometric tolerance.
status[out] Receives the status of the query.
Remarks
Possible status values:

kArg1TooBig kArg1InsideThis kArg1OnThis

◆ tangent() [2/2]

bool OdGeCircArc3d::tangent ( const OdGePoint3d point,
OdGeLine3d line,
const OdGeTol tol = OdGeContext::gTol 
) const

Returns true if and only if the specified point is on the full circle of this arc, the tangent at that point.

Parameters
point[in] Point on the full circle.
line[out] Receives the tangent line at that point.
tol[in] Geometric tolerance.

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