|
| OdGeTorus () |
|
| OdGeTorus (double majorRadius, double minorRadius, const OdGePoint3d ¢er, const OdGeVector3d &axisOfSymmetry) |
|
| OdGeTorus (double majorRadius, double minorRadius, const OdGePoint3d ¢er, const OdGeVector3d &axisOfSymmetry, const OdGeVector3d &refAxis, double startAngleU, double endAngleU, double startAngleV, double endAngleV) |
|
| OdGeTorus (const OdGeTorus &source) |
|
double | majorRadius () const |
|
double | minorRadius () const |
|
void | getAnglesInU (double &startAngleU, double &endAngleU) const |
|
void | getAnglesInV (double &startAngleV, double &endAngleV) const |
|
OdGePoint3d | center () const |
|
OdGeVector3d | axisOfSymmetry () const |
|
OdGeVector3d | refAxis () const |
|
bool | isOuterNormal () const |
|
OdGeTorus & | setMajorRadius (double radius) |
|
OdGeTorus & | setMinorRadius (double radius) |
|
OdGeTorus & | setAnglesInU (double startAngleU, double endAngleU) |
|
OdGeTorus & | setAnglesInV (double startAngleV, double endAngleV) |
|
OdGeTorus & | set (double majorRadius, double minorRadius, const OdGePoint3d ¢er, const OdGeVector3d &axisOfSymmetry) |
|
OdGeTorus & | set (double majorRadius, double minorRadius, const OdGePoint3d ¢er, const OdGeVector3d &axisOfSymmetry, const OdGeVector3d &refAxis, double startAngleU, double endAngleU, double startAngleV, double endAngleV) |
|
OdGeTorus & | operator= (const OdGeTorus &torus) |
|
bool | intersectWith (const OdGeLinearEnt3d &linEnt, int &numInt, OdGePoint3d &p1, OdGePoint3d &p2, OdGePoint3d &p3, OdGePoint3d &p4, const OdGeTol &tol=OdGeContext::gTol) const |
|
bool | isLemon () const |
|
bool | isApple () const |
|
bool | isVortex () const |
|
bool | isDoughnut () const |
|
bool | isDegenerate () const |
|
bool | isHollow () const |
|
bool | isReverseV () const |
|
void | setReverseV (bool isReverseV) |
|
OdGePoint2d | paramOf (const OdGePoint3d &point, const OdGeTol &tol=OdGeContext::gTol) const |
|
| TD_USING (OdGeEntity3d::isOn) |
|
bool | isOn (const OdGePoint3d &point, OdGePoint2d ¶mPoint, const OdGeTol &tol=OdGeContext::gTol) const |
|
OdGePoint3d | closestPointTo (const OdGePoint3d &point, const OdGeTol &tol=OdGeContext::gTol) const |
|
void | getClosestPointTo (const OdGePoint3d &point, OdGePointOnSurface &pntOnSurface, const OdGeTol &tol=OdGeContext::gTol) const |
|
double | distanceTo (const OdGePoint3d &point, const OdGeTol &tol=OdGeContext::gTol) const |
|
bool | isNormalReversed () const |
|
OdGeSurface & | reverseNormal () |
|
void | getEnvelope (OdGeInterval &intrvlU, OdGeInterval &intrvlV) const |
|
bool | isClosedInU (const OdGeTol &tol=OdGeContext::gTol) const |
|
bool | isClosedInV (const OdGeTol &tol=OdGeContext::gTol) const |
|
OdGePoint3d | evalPoint (const OdGePoint2d ¶m) const |
|
OdGePoint3d | evalPoint (const OdGePoint2d ¶m, int numDeriv, OdGeVector3dArray &derivatives) const |
|
OdGePoint3d | evalPoint (const OdGePoint2d ¶m, int numDeriv, OdGeVector3dArray &derivatives, OdGeVector3d &normal) const |
|
OdGeSurface & | operator= (const OdGeSurface &surf) |
|
bool | project (const OdGePoint3d &p, OdGePoint3d &projP, const OdGeTol &tol=OdGeContext::gTol) const |
|
bool | getReparameterization (bool &swapUV, double &uCoeffA, double &vCoeffA, double &uCoeffB, double &vCoeffB) const |
|
void | setReparameterization (bool swapUV=false, double uCoeffA=1., double vCoeffA=1., double uCoeffB=0., double vCoeffB=0.) |
|
void | getImplicitEnvelope (OdGeInterval &implicitIntrvlU, OdGeInterval &implicitIntrvlV) const |
|
bool | setEnvelope (const OdGeInterval &realIntrvlU, const OdGeInterval &realIntrvlV) |
|
void | getEnvelope (OdGeUvBox &uvbox) const |
|
void | evaluate (const OdGePoint2d ¶m, int numDeriv, OdGeVector3d *values, OdGeVector3d *normal=NULL) const |
|
OdGeExtents3d | getGeomExtents (const OdGeUvBox &range=OdGeUvBox(), const OdGeMatrix3d *coordSystem=NULL) const |
|
OdGePoint2d | paramOf (const OdGePoint3d &point, const OdGeUvBox *uvBox, const OdGeTol &tol=OdGeContext::gTol) const |
|
OdGeCurve3d * | makeIsoparamCurve (bool byU, double param) const |
|
OdGeCurve3d * | makeIsoparamCurve (bool byU, double param, const OdGeInterval &interval) const |
|
bool | getPoles (OdGeDoubleArray *uParams, OdGeDoubleArray *vParams, OdGePoint3dArray *uPoints, OdGePoint3dArray *vPoints, double tol=1e-13) const |
|
| ODRX_HEAP_OPERATORS () |
|
| ~OdGeEntity3d () |
|
bool | isKindOf (OdGe::EntityId entType) const |
|
OdGe::EntityId | type () const |
|
OdGeEntity3d * | copy () const |
|
OdGeEntity3d & | operator= (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 |
|
OdGeEntity3d & | transformBy (const OdGeMatrix3d &xfm) |
|
OdGeEntity3d & | translateBy (const OdGeVector3d &translateVec) |
|
OdGeEntity3d & | rotateBy (double angle, const OdGeVector3d &vect, const OdGePoint3d &basePoint=OdGePoint3d::kOrigin) |
|
OdGeEntity3d & | mirror (const OdGePlane &plane) |
|
OdGeEntity3d & | scaleBy (double scaleFactor, const OdGePoint3d &basePoint=OdGePoint3d::kOrigin) |
|
bool | isOn (const OdGePoint3d &point, const OdGeTol &tol=OdGeContext::gTol) const |
|
This class represents toroidal segments.
The torus is located in space by its center, which is a point on the axis of symmetry.
The center of the circular arc is at a distance of majorRadius from the center of the torus. The radius of the circular arc is the minorRadius.
Parameter U is the longitude (about the axis of symmetry), which for a closed torus defaults to the range [-OdaPI, OdaPI). Zero corresponds to the refAxis (which is a vector orthogonal to the axis of symmetry). Applying the right hand rule along the symmetric axis defines the increasing direction for U.
Parameter v parameterizes the circular tube, which for a closed circle defaults to the range [-OdaPI, OdaPI). Applying the right hand rule along the refAxis X-axisOfSymmetry defines the increasing direction for v.
The torus is periodic in U, v with a period of Oda2PI. [umin, umax] x [vmin, vmax] defines a four sided toroidal patch bounded by four circular arcs. Following constraints apply to the definition of a toroidal patch.
umin < umax and |umin - umax| <= Oda2PI. vmin < vmax and |vmin - vmax| <= Oda2PI
Corresponding C++ library: TD_Ge
<group OdGe_Classes>
<link ge_OdGeTorus.html, Working with Toruses>
Definition at line 72 of file GeTorus.h.