Open CASCADE Technology Reference Manual 8.0.0
Loading...
Searching...
No Matches
Public Member Functions
gp_Torus Class Reference

Describes a torus. A torus is defined by its major and minor radii and positioned in space with a coordinate system (a gp_Ax3 object) as follows: More...

#include <gp_Torus.hxx>

Public Member Functions

constexpr gp_Torus () noexcept
 creates an indefinite Torus.
 
constexpr gp_Torus (const gp_Ax3 &theA3, const double theMajorRadius, const double theMinorRadius)
 a torus centered on the origin of coordinate system theA3, with major radius theMajorRadius and minor radius theMinorRadius, and with the reference plane defined by the origin, the "X Direction" and the "Y Direction" of theA3. Warnings : It is not forbidden to create a torus with theMajorRadius = theMinorRadius = 0.0 Raises ConstructionError if theMinorRadius < 0.0 or if theMajorRadius < 0.0
 
void SetAxis (const gp_Ax1 &theA1)
 Modifies this torus, by redefining its local coordinate system so that:
 
constexpr void SetLocation (const gp_Pnt &theLoc) noexcept
 Changes the location of the torus.
 
void SetMajorRadius (const double theMajorRadius)
 Assigns value to the major radius of this torus. Raises ConstructionError if theMajorRadius - MinorRadius <= Resolution()
 
void SetMinorRadius (const double theMinorRadius)
 Assigns value to the minor radius of this torus. Raises ConstructionError if theMinorRadius < 0.0 or if MajorRadius - theMinorRadius <= Resolution from gp.
 
constexpr void SetPosition (const gp_Ax3 &theA3) noexcept
 Changes the local coordinate system of the surface.
 
constexpr double Area () const noexcept
 Computes the area of the torus.
 
constexpr void UReverse () noexcept
 Reverses the U parametrization of the torus reversing the YAxis.
 
constexpr void VReverse () noexcept
 Reverses the V parametrization of the torus reversing the ZAxis.
 
bool Direct () const
 returns true if the Ax3, the local coordinate system of this torus, is right handed.
 
constexpr const gp_Ax1Axis () const noexcept
 returns the symmetry axis of the torus.
 
void Coefficients (NCollection_Array1< double > &theCoef) const
 Computes the coefficients of the implicit equation of the surface in the absolute Cartesian coordinate system:
 
constexpr const gp_PntLocation () const noexcept
 Returns the Torus's location.
 
constexpr const gp_Ax3Position () const noexcept
 Returns the local coordinates system of the torus.
 
constexpr double MajorRadius () const noexcept
 returns the major radius of the torus.
 
constexpr double MinorRadius () const noexcept
 returns the minor radius of the torus.
 
constexpr double Volume () const noexcept
 Computes the volume of the torus.
 
constexpr gp_Ax1 XAxis () const noexcept
 returns the axis X of the torus.
 
constexpr gp_Ax1 YAxis () const noexcept
 returns the axis Y of the torus.
 
void Mirror (const gp_Pnt &theP) noexcept
 
gp_Torus Mirrored (const gp_Pnt &theP) const noexcept
 Performs the symmetrical transformation of a torus with respect to the point theP which is the center of the symmetry.
 
void Mirror (const gp_Ax1 &theA1) noexcept
 
gp_Torus Mirrored (const gp_Ax1 &theA1) const noexcept
 Performs the symmetrical transformation of a torus with respect to an axis placement which is the axis of the symmetry.
 
void Mirror (const gp_Ax2 &theA2) noexcept
 
gp_Torus Mirrored (const gp_Ax2 &theA2) const noexcept
 Performs the symmetrical transformation of a torus with respect to a plane. The axis placement theA2 locates the plane of the of the symmetry : (Location, XDirection, YDirection).
 
void Rotate (const gp_Ax1 &theA1, const double theAng)
 
gp_Torus Rotated (const gp_Ax1 &theA1, const double theAng) const
 Rotates a torus. theA1 is the axis of the rotation. theAng is the angular value of the rotation in radians.
 
void Scale (const gp_Pnt &theP, const double theS)
 
gp_Torus Scaled (const gp_Pnt &theP, const double theS) const
 Scales a torus. S is the scaling value. The absolute value of S is used to scale the torus.
 
void Transform (const gp_Trsf &theT)
 
gp_Torus Transformed (const gp_Trsf &theT) const
 Transforms a torus with the transformation theT from class Trsf.
 
constexpr void Translate (const gp_Vec &theV) noexcept
 
constexpr gp_Torus Translated (const gp_Vec &theV) const noexcept
 Translates a torus in the direction of the vector theV. The magnitude of the translation is the vector's magnitude.
 
constexpr void Translate (const gp_Pnt &theP1, const gp_Pnt &theP2) noexcept
 
constexpr gp_Torus Translated (const gp_Pnt &theP1, const gp_Pnt &theP2) const noexcept
 Translates a torus from the point theP1 to the point theP2.
 

Detailed Description

Describes a torus. A torus is defined by its major and minor radii and positioned in space with a coordinate system (a gp_Ax3 object) as follows:

Constructor & Destructor Documentation

◆ gp_Torus() [1/2]

constexpr gp_Torus::gp_Torus ( )
inlineconstexprnoexcept

creates an indefinite Torus.

◆ gp_Torus() [2/2]

constexpr gp_Torus::gp_Torus ( const gp_Ax3 & theA3,
const double theMajorRadius,
const double theMinorRadius )
inlineconstexpr

a torus centered on the origin of coordinate system theA3, with major radius theMajorRadius and minor radius theMinorRadius, and with the reference plane defined by the origin, the "X Direction" and the "Y Direction" of theA3. Warnings : It is not forbidden to create a torus with theMajorRadius = theMinorRadius = 0.0 Raises ConstructionError if theMinorRadius < 0.0 or if theMajorRadius < 0.0

Member Function Documentation

◆ Area()

constexpr double gp_Torus::Area ( ) const
inlineconstexprnoexcept

Computes the area of the torus.

◆ Axis()

constexpr const gp_Ax1 & gp_Torus::Axis ( ) const
inlineconstexprnoexcept

returns the symmetry axis of the torus.

◆ Coefficients()

void gp_Torus::Coefficients ( NCollection_Array1< double > & theCoef) const

Computes the coefficients of the implicit equation of the surface in the absolute Cartesian coordinate system:

Coef(1) * X^4 + Coef(2) * Y^4 + Coef(3) * Z^4 +
Coef(4) * X^3 * Y + Coef(5) * X^3 * Z + Coef(6) * Y^3 * X +
Coef(7) * Y^3 * Z + Coef(8) * Z^3 * X + Coef(9) * Z^3 * Y +
Coef(10) * X^2 * Y^2 + Coef(11) * X^2 * Z^2 +
Coef(12) * Y^2 * Z^2 + Coef(13) * X^2 * Y * Z +
Coef(14) * X * Y^2 * Z + Coef(15) * X * Y * Z^2 +
Coef(16) * X^3 + Coef(17) * Y^3 + Coef(18) * Z^3 +
Coef(19) * X^2 * Y + Coef(20) * X^2 * Z + Coef(21) * Y^2 * X +
Coef(22) * Y^2 * Z + Coef(23) * Z^2 * X + Coef(24) * Z^2 * Y +
Coef(25) * X * Y * Z +
Coef(26) * X^2 + Coef(27) * Y^2 + Coef(28) * Z^2 +
Coef(29) * X * Y + Coef(30) * X * Z + Coef(31) * Y * Z +
Coef(32) * X + Coef(33) * Y + Coef(34) * Z +
Coef(35) = 0.0
STL input iterator that wraps an OCCT More()/Next() iterator.
Definition NCollection_ForwardRange.hxx:142

Raises DimensionError if the length of theCoef is lower than 35.

◆ Direct()

bool gp_Torus::Direct ( ) const
inline

returns true if the Ax3, the local coordinate system of this torus, is right handed.

◆ Location()

constexpr const gp_Pnt & gp_Torus::Location ( ) const
inlineconstexprnoexcept

Returns the Torus's location.

◆ MajorRadius()

constexpr double gp_Torus::MajorRadius ( ) const
inlineconstexprnoexcept

returns the major radius of the torus.

◆ MinorRadius()

constexpr double gp_Torus::MinorRadius ( ) const
inlineconstexprnoexcept

returns the minor radius of the torus.

◆ Mirror() [1/3]

void gp_Torus::Mirror ( const gp_Ax1 & theA1)
noexcept

◆ Mirror() [2/3]

void gp_Torus::Mirror ( const gp_Ax2 & theA2)
noexcept

◆ Mirror() [3/3]

void gp_Torus::Mirror ( const gp_Pnt & theP)
noexcept

◆ Mirrored() [1/3]

gp_Torus gp_Torus::Mirrored ( const gp_Ax1 & theA1) const
noexcept

Performs the symmetrical transformation of a torus with respect to an axis placement which is the axis of the symmetry.

◆ Mirrored() [2/3]

gp_Torus gp_Torus::Mirrored ( const gp_Ax2 & theA2) const
noexcept

Performs the symmetrical transformation of a torus with respect to a plane. The axis placement theA2 locates the plane of the of the symmetry : (Location, XDirection, YDirection).

◆ Mirrored() [3/3]

gp_Torus gp_Torus::Mirrored ( const gp_Pnt & theP) const
noexcept

Performs the symmetrical transformation of a torus with respect to the point theP which is the center of the symmetry.

◆ Position()

constexpr const gp_Ax3 & gp_Torus::Position ( ) const
inlineconstexprnoexcept

Returns the local coordinates system of the torus.

◆ Rotate()

void gp_Torus::Rotate ( const gp_Ax1 & theA1,
const double theAng )
inline

◆ Rotated()

gp_Torus gp_Torus::Rotated ( const gp_Ax1 & theA1,
const double theAng ) const
inline

Rotates a torus. theA1 is the axis of the rotation. theAng is the angular value of the rotation in radians.

◆ Scale()

void gp_Torus::Scale ( const gp_Pnt & theP,
const double theS )
inline

◆ Scaled()

gp_Torus gp_Torus::Scaled ( const gp_Pnt & theP,
const double theS ) const
inline

Scales a torus. S is the scaling value. The absolute value of S is used to scale the torus.

◆ SetAxis()

void gp_Torus::SetAxis ( const gp_Ax1 & theA1)
inline

Modifies this torus, by redefining its local coordinate system so that:

  • its origin and "main Direction" become those of the axis theA1 (the "X Direction" and "Y Direction" are then recomputed). Raises ConstructionError if the direction of theA1 is parallel to the "XDirection" of the coordinate system of the toroidal surface.

◆ SetLocation()

constexpr void gp_Torus::SetLocation ( const gp_Pnt & theLoc)
inlineconstexprnoexcept

Changes the location of the torus.

◆ SetMajorRadius()

void gp_Torus::SetMajorRadius ( const double theMajorRadius)
inline

Assigns value to the major radius of this torus. Raises ConstructionError if theMajorRadius - MinorRadius <= Resolution()

◆ SetMinorRadius()

void gp_Torus::SetMinorRadius ( const double theMinorRadius)
inline

Assigns value to the minor radius of this torus. Raises ConstructionError if theMinorRadius < 0.0 or if MajorRadius - theMinorRadius <= Resolution from gp.

◆ SetPosition()

constexpr void gp_Torus::SetPosition ( const gp_Ax3 & theA3)
inlineconstexprnoexcept

Changes the local coordinate system of the surface.

◆ Transform()

void gp_Torus::Transform ( const gp_Trsf & theT)
inline

◆ Transformed()

gp_Torus gp_Torus::Transformed ( const gp_Trsf & theT) const
inline

Transforms a torus with the transformation theT from class Trsf.

◆ Translate() [1/2]

constexpr void gp_Torus::Translate ( const gp_Pnt & theP1,
const gp_Pnt & theP2 )
inlineconstexprnoexcept

◆ Translate() [2/2]

constexpr void gp_Torus::Translate ( const gp_Vec & theV)
inlineconstexprnoexcept

◆ Translated() [1/2]

constexpr gp_Torus gp_Torus::Translated ( const gp_Pnt & theP1,
const gp_Pnt & theP2 ) const
inlineconstexprnoexcept

Translates a torus from the point theP1 to the point theP2.

◆ Translated() [2/2]

constexpr gp_Torus gp_Torus::Translated ( const gp_Vec & theV) const
inlineconstexprnoexcept

Translates a torus in the direction of the vector theV. The magnitude of the translation is the vector's magnitude.

◆ UReverse()

constexpr void gp_Torus::UReverse ( )
inlineconstexprnoexcept

Reverses the U parametrization of the torus reversing the YAxis.

◆ Volume()

constexpr double gp_Torus::Volume ( ) const
inlineconstexprnoexcept

Computes the volume of the torus.

◆ VReverse()

constexpr void gp_Torus::VReverse ( )
inlineconstexprnoexcept

Reverses the V parametrization of the torus reversing the ZAxis.

◆ XAxis()

constexpr gp_Ax1 gp_Torus::XAxis ( ) const
inlineconstexprnoexcept

returns the axis X of the torus.

◆ YAxis()

constexpr gp_Ax1 gp_Torus::YAxis ( ) const
inlineconstexprnoexcept

returns the axis Y of the torus.


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