CFx SDK Documentation  2022 SP0
Public Member Functions | List of all members
OdGeLineSeg3d Class Reference

#include <GeLineSeg3d.h>

Inheritance diagram for OdGeLineSeg3d:
OdGeLinearEnt3d OdGeCurve3d OdGeEntity3d

Public Member Functions

 OdGeLineSeg3d ()
 
 OdGeLineSeg3d (const OdGeLineSeg3d &source)
 
 OdGeLineSeg3d (const OdGePoint3d &point, const OdGeVector3d &vect)
 
 OdGeLineSeg3d (const OdGePoint3d &point1, const OdGePoint3d &point2)
 
void getBisector (OdGePlane &plane) const
 
OdGePoint3d baryComb (double blendCoeff) const
 
OdGePoint3d startPoint () const
 
OdGePoint3d midPoint () const
 
OdGePoint3d endPoint () const
 
OdGeLineSeg3dset (const OdGePoint3d &point, const OdGeVector3d &vect)
 
OdGeLineSeg3dset (const OdGePoint3d &point1, const OdGePoint3d &point2)
 
OdGeLineSeg3dset (const OdGeCurve3d &curve1, const OdGeCurve3d &curve2, double &param1, double &param2, bool &success)
 
OdGeLineSeg3dset (const OdGeCurve3d &curve, const OdGePoint3d &point, double &param, bool &success)
 
OdGeLineSeg3doperator= (const OdGeLineSeg3d &line)
 
double getDistanceToVector (const OdGePoint3d &point, const OdGeTol &tol=OdGeContext::gTol) const
 
- Public Member Functions inherited from OdGeLinearEnt3d
bool intersectWith (const OdGeLinearEnt3d &line, OdGePoint3d &intPt, const OdGeTol &tol=OdGeContext::gTol) const
 
bool intersectWith (const OdGePlanarEnt &plane, OdGePoint3d &intPnt, const OdGeTol &tol=OdGeContext::gTol) const
 
bool projIntersectWith (const OdGeLinearEnt3d &line, const OdGeVector3d &projDir, OdGePoint3d &pntOnThisLine, OdGePoint3d &pntOnOtherLine, const OdGeTol &tol=OdGeContext::gTol) const
 
bool overlap (const OdGeLinearEnt3d &line, OdGeLinearEnt3d *&overlap, const OdGeTol &tol=OdGeContext::gTol) const
 
 TD_USING (OdGeCurve3d::isOn)
 
bool isOn (const OdGePlane &plane, const OdGeTol &tol=OdGeContext::gTol) const
 
bool isParallelTo (const OdGeLinearEnt3d &line, const OdGeTol &tol=OdGeContext::gTol) const
 
bool isParallelTo (const OdGePlanarEnt &plane, const OdGeTol &tol=OdGeContext::gTol) const
 
bool isPerpendicularTo (const OdGeLinearEnt3d &line, const OdGeTol &tol=OdGeContext::gTol) const
 
bool isPerpendicularTo (const OdGePlanarEnt &plane, const OdGeTol &tol=OdGeContext::gTol) const
 
bool isColinearTo (const OdGeLinearEnt3d &line, const OdGeTol &tol=OdGeContext::gTol) const
 
void getPerpPlane (const OdGePoint3d &point, OdGePlane &plane) const
 
OdGePoint3d pointOnLine () const
 
OdGeVector3d direction () const
 
void getLine (OdGeLine3d &line) const
 
OdGeLinearEnt3doperator= (const OdGeLinearEnt3d &line)
 
- 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
 
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
 
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
 
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
 
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
 
- 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 OdGeLinearEnt3d
 OdGeLinearEnt3d ()
 
 OdGeLinearEnt3d (const OdGeLinearEnt3d &source)
 
- 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 represents line segments in 3D space.

Corresponding C++ library: TD_Ge

<group OdGe_Classes>

See also
<link ge_OdGeLineSeg.html, Working with Line Segments>

Definition at line 43 of file GeLineSeg3d.h.

Constructor & Destructor Documentation

◆ OdGeLineSeg3d() [1/4]

OdGeLineSeg3d::OdGeLineSeg3d ( )

Constructs a line segment with start and end points at coordinates origin (0,0,0).

◆ OdGeLineSeg3d() [2/4]

OdGeLineSeg3d::OdGeLineSeg3d ( const OdGeLineSeg3d source)

Constructs a line segment.

Parameters
source[in] Object to be cloned.

◆ OdGeLineSeg3d() [3/4]

OdGeLineSeg3d::OdGeLineSeg3d ( const OdGePoint3d point,
const OdGeVector3d vect 
)

Constructs a line segment between the points: point and point + vect.

Parameters
point[in] Any 3D point.
vect[in] Any 3D vector.
Remarks
vect can have a zero length.

◆ OdGeLineSeg3d() [4/4]

OdGeLineSeg3d::OdGeLineSeg3d ( const OdGePoint3d point1,
const OdGePoint3d point2 
)

Constructs a line segment between the specified points.

Parameters
point1[in] Any 3D point.
point2[in] Any 3D point.
Remarks
Points point1 and point2 can be coincident.

Member Function Documentation

◆ baryComb()

OdGePoint3d OdGeLineSeg3d::baryComb ( double  blendCoeff) const

Returns the weighted average of the start point and end point of this line segment.

Parameters
blendCoeff[in] Blend coefficient.
Remarks
Returns 0 start point 1 end point 0 to 1 point on this line segment < 0 or > 1 point not on this line segment, but colinear with it.

◆ endPoint()

OdGePoint3d OdGeLineSeg3d::endPoint ( ) const

Returns the end point of this line segment.

◆ getBisector()

void OdGeLineSeg3d::getBisector ( OdGePlane plane) const

Gets the unbounded perpendicular bisecting plane of this line segment.

Parameters
line[out] Receives the bisecting plane.

◆ getDistanceToVector()

double OdGeLineSeg3d::getDistanceToVector ( const OdGePoint3d point,
const OdGeTol tol = OdGeContext::gTol 
) const

Returns the distance to vector.

Parameters
point[in] Any 3D point.
tol[in] Tolerance.

◆ midPoint()

OdGePoint3d OdGeLineSeg3d::midPoint ( ) const

Returns the midpoint of this line segment.

◆ operator=()

OdGeLineSeg3d& OdGeLineSeg3d::operator= ( const OdGeLineSeg3d line)

◆ set() [1/4]

OdGeLineSeg3d& OdGeLineSeg3d::set ( const OdGeCurve3d curve,
const OdGePoint3d point,
double &  param,
bool &  success 
)

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

Parameters
curve[in] Any 3D curve.
point[in] Any 3D point.
param[in] A point on curve where line segment is tangent to curve.
success[out] Indicates that tangent line was computed successfully.
Remarks
The point must lie on the plane of the curve and the curve must be planar. If success returns false, the line segment does not change.

◆ set() [2/4]

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

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

Parameters
curve1[in] Any 3D curve.
curve2[in] Any 3D curve.
param1[in] A point on curve1 where line segment is tangent to curve.
param2[in] A point on curve2 where line segment is tangent to curve.
success[out] Indicates that tangent line was computed successfully.
Remarks
If success returns false, the line segment does not change.

◆ set() [3/4]

OdGeLineSeg3d& OdGeLineSeg3d::set ( const OdGePoint3d point,
const OdGeVector3d vect 
)

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

Parameters
point[in] Any 3D point.
vect[in] Any 3D vector.
Remarks
point and vect construct a line segment between the points: point and point + vect. vect can have a zero length.

◆ set() [4/4]

OdGeLineSeg3d& OdGeLineSeg3d::set ( const OdGePoint3d point1,
const OdGePoint3d point2 
)

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

Parameters
point1[in] Any 3D point.
point2[in] Any 3D point.
Remarks
point1 and point2 construct a line segment between points point1 and point2. The points can be coincident.

◆ startPoint()

OdGePoint3d OdGeLineSeg3d::startPoint ( ) const

Returns the start point of this line segment.


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