CFx SDK Documentation  2023 SP0
Public Member Functions | Protected Member Functions | List of all members
OdGeLinearEnt3d Class Reference

#include <GeLinearEnt3d.h>

Inheritance diagram for OdGeLinearEnt3d:
OdGeCurve3d OdGeEntity3d OdGeLine3d OdGeLineSeg3d OdGeRay3d OdGeRay3dExt

Public Member Functions

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
 
double paramOf (const OdGePoint3d &point, const OdGeInterval *range, const OdGeTol &tol=OdGeContext::gTol) const
 
OdGeExtents3d getGeomExtents (const OdGeInterval &range=OdGeInterval(), const OdGeMatrix3d *coordSystem=NULL) const
 
void evaluate (double param, int numDeriv, OdGeVector3d *values) 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
 

Protected Member Functions

 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 is the base class for OdGe 3D linear entities.

Corresponding C++ library: TD_Ge

<group OdGe_Classes>

Definition at line 43 of file GeLinearEnt3d.h.

Constructor & Destructor Documentation

◆ OdGeLinearEnt3d() [1/2]

OdGeLinearEnt3d::OdGeLinearEnt3d ( )
protected

◆ OdGeLinearEnt3d() [2/2]

OdGeLinearEnt3d::OdGeLinearEnt3d ( const OdGeLinearEnt3d source)
protected

Member Function Documentation

◆ direction()

OdGeVector3d OdGeLinearEnt3d::direction ( ) const

Returns a unit vector parallel to this line, and pointing in the direction of increasing parametric value.

◆ getLine()

void OdGeLinearEnt3d::getLine ( OdGeLine3d line) const

Returns a reference to an infinite line colinear with this one.

Parameters
line[out] Receives the infinite line.

◆ getPerpPlane()

void OdGeLinearEnt3d::getPerpPlane ( const OdGePoint3d point,
OdGePlane plane 
) const

Returns a plane, containing the specified point, perpendicular to this line.

Parameters
point[in] Any 3D point.
plane[out] Receives the perpendicular plane.
Remarks
The returned plane is created with the new method. It is up to the caller to delete it.

◆ intersectWith() [1/2]

bool OdGeLinearEnt3d::intersectWith ( const OdGeLinearEnt3d line,
OdGePoint3d intPt,
const OdGeTol tol = OdGeContext::gTol 
) const

Returns true and the intersection point, if and only if the specified line intersects with this line.

Parameters
line[in] Any 3D linear entity.
intPt[out] Receives the intesection point.
tol[in] Geometric tolerance.

◆ intersectWith() [2/2]

bool OdGeLinearEnt3d::intersectWith ( const OdGePlanarEnt plane,
OdGePoint3d intPnt,
const OdGeTol tol = OdGeContext::gTol 
) const

Returns true and the intersection point, if and only if the specified plane intersects with this line.

Parameters
plane[in] Any planar entity.
intPnt[out] Receives the intesection point.
tol[in] Geometric tolerance.

◆ isColinearTo()

bool OdGeLinearEnt3d::isColinearTo ( const OdGeLinearEnt3d line,
const OdGeTol tol = OdGeContext::gTol 
) const

Returns true if and only if the specified line is colinear with this one.

Parameters
line[in] Any 3D linear entity.
tol[in] Geometric tolerance.

◆ isOn()

bool OdGeLinearEnt3d::isOn ( const OdGePlane plane,
const OdGeTol tol = OdGeContext::gTol 
) const

◆ isParallelTo() [1/2]

bool OdGeLinearEnt3d::isParallelTo ( const OdGeLinearEnt3d line,
const OdGeTol tol = OdGeContext::gTol 
) const

Returns true if and only if the specified entity is parallel to this line.

Parameters
line[in] Any 3D linear entity.
tol[in] Geometric tolerance.

◆ isParallelTo() [2/2]

bool OdGeLinearEnt3d::isParallelTo ( const OdGePlanarEnt plane,
const OdGeTol tol = OdGeContext::gTol 
) const

Returns true if and only if the specified entity is parallel to this line.

Parameters
plane[in] Any plane.
tol[in] Geometric tolerance.

◆ isPerpendicularTo() [1/2]

bool OdGeLinearEnt3d::isPerpendicularTo ( const OdGeLinearEnt3d line,
const OdGeTol tol = OdGeContext::gTol 
) const

Returns true if and only if the specified entity is perpendicular to this line.

Parameters
line[in] Any 3D linear entity.
tol[in] Geometric tolerance.

◆ isPerpendicularTo() [2/2]

bool OdGeLinearEnt3d::isPerpendicularTo ( const OdGePlanarEnt plane,
const OdGeTol tol = OdGeContext::gTol 
) const

Returns true if and only if the specified entity is perpendicular to this line.

Parameters
plane[in] Any plane.
tol[in] Geometric tolerance.

◆ operator=()

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

◆ overlap()

bool OdGeLinearEnt3d::overlap ( const OdGeLinearEnt3d line,
OdGeLinearEnt3d *&  overlap,
const OdGeTol tol = OdGeContext::gTol 
) const

Determines if two lines overlap and if so returns the line that coincides with their region of overlap.

Parameters
line[in] Any 3D linear entity.
overlap[out] Output linear entity that is coincident with region of overlap
tol[in] Input tolerance.

◆ pointOnLine()

OdGePoint3d OdGeLinearEnt3d::pointOnLine ( ) const

Returns an arbitrary point on this line.

◆ projIntersectWith()

bool OdGeLinearEnt3d::projIntersectWith ( const OdGeLinearEnt3d line,
const OdGeVector3d projDir,
OdGePoint3d pntOnThisLine,
OdGePoint3d pntOnOtherLine,
const OdGeTol tol = OdGeContext::gTol 
) const

Returns the projected intersection of the specified line with this line.

Parameters
line[in] Any 3D line.
projDir[in] Projection direction.
pntOnThisLine[out] Receives the intersection point on this line.
pntOnOtherLine[out] Receives the intersection point on the other line.
tol[in] Geometric tolerance.
Remarks
By default this function throws exception "not Implemented".

◆ TD_USING()

OdGeLinearEnt3d::TD_USING ( OdGeCurve3d::isOn  )

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