# FoundationClasses
TKMath
gp

# gp_Cylinder Class Reference

Describes an infinite cylindrical surface.
A cylinder is defined by its radius and positioned in space
with a coordinate system (a gp_Ax3 object), the "main <br> Axis" of which is the axis of the cylinder. This coordinate
system is the "local coordinate system" of the cylinder.
Note: when a gp_Cylinder cylinder is converted into a
Geom_CylindricalSurface cylinder, some implicit
properties of its local coordinate system are used explicitly:
- its origin, "X Direction", "Y Direction" and "main <br> Direction" are used directly to define the parametric
directions on the cylinder and the origin of the parameters,
- its implicit orientation (right-handed or left-handed)
gives an orientation (direct or indirect) to the
Geom_CylindricalSurface cylinder.
See Also
gce_MakeCylinder which provides functions for more
complex cylinder constructions
Geom_CylindricalSurface which provides additional
functions for constructing cylinders and works, in
particular, with the parametric equations of cylinders gp_Ax3
.

`#include <gp_Cylinder.hxx>`

## Public Member Functions

void * | operator new (size_t, void *anAddress)
void * | operator new (size_t size)
void | operator delete (void *anAddress)
| gp_Cylinder ()
| Creates a indefinite cylinder. .
| gp_Cylinder (const gp_Ax3 &A3, const Standard_Real Radius)
| Creates a cylinder of radius Radius, whose axis is the "main <br> Axis" of A3. A3 is the local coordinate system of the cylinder. Raises ConstructionErrord if R < 0.0 .
void | SetAxis (const gp_Ax1 &A1)
| Changes the symmetry axis of the cylinder. Raises ConstructionError if the direction of A1 is parallel to the "XDirection" of the coordinate system of the cylinder. .
void | SetLocation (const gp_Pnt &Loc)
| Changes the location of the surface. .
void | SetPosition (const gp_Ax3 &A3)
| Change the local coordinate system of the surface. .
void | SetRadius (const Standard_Real R)
| Modifies the radius of this cylinder. Exceptions Standard_ConstructionError if R is negative. .
void | UReverse ()
| Reverses the U parametrization of the cylinder reversing the YAxis. .
void | VReverse ()
| Reverses the V parametrization of the plane reversing the Axis. .
Standard_Boolean | Direct () const
| Returns true if the local coordinate system of this cylinder is right-handed. .
const gp_Ax1 & | Axis () const
| Returns the symmetry axis of the cylinder. .
Standard_EXPORT void | Coefficients (Standard_Real &A1, Standard_Real &A2, Standard_Real &A3, Standard_Real &B1, Standard_Real &B2, Standard_Real &B3, Standard_Real &C1, Standard_Real &C2, Standard_Real &C3, Standard_Real &D) const
| Computes the coefficients of the implicit equation of the quadric in the absolute cartesian coordinate system : A1.X**2 + A2.Y**2 + A3.Z**2 + 2.(B1.X.Y + B2.X.Z + B3.Y.Z) + 2.(C1.X + C2.Y + C3.Z) + D = 0.0 .
const gp_Pnt & | Location () const
| Returns the "Location" point of the cylinder. .
const gp_Ax3 & | Position () const
| Returns the local coordinate system of the cylinder. .
Standard_Real | Radius () const
| Returns the radius of the cylinder. .
gp_Ax1 | XAxis () const
| Returns the axis X of the cylinder. .
gp_Ax1 | YAxis () const
| Returns the axis Y of the cylinder. .
Standard_EXPORT void | Mirror (const gp_Pnt &P)
Standard_EXPORT gp_Cylinder | Mirrored (const gp_Pnt &P) const
| Performs the symmetrical transformation of a cylinder with respect to the point P which is the center of the symmetry. .
Standard_EXPORT void | Mirror (const gp_Ax1 &A1)
Standard_EXPORT gp_Cylinder | Mirrored (const gp_Ax1 &A1) const
| Performs the symmetrical transformation of a cylinder with respect to an axis placement which is the axis of the symmetry. .
Standard_EXPORT void | Mirror (const gp_Ax2 &A2)
Standard_EXPORT gp_Cylinder | Mirrored (const gp_Ax2 &A2) const
| Performs the symmetrical transformation of a cylinder with respect to a plane. The axis placement A2 locates the plane of the of the symmetry : (Location, XDirection, YDirection). .
void | Rotate (const gp_Ax1 &A1, const Standard_Real Ang)
gp_Cylinder | Rotated (const gp_Ax1 &A1, const Standard_Real Ang) const
| Rotates a cylinder. A1 is the axis of the rotation. Ang is the angular value of the rotation in radians. .
void | Scale (const gp_Pnt &P, const Standard_Real S)
gp_Cylinder | Scaled (const gp_Pnt &P, const Standard_Real S) const
| Scales a cylinder. S is the scaling value. The absolute value of S is used to scale the cylinder .
void | Transform (const gp_Trsf &T)
gp_Cylinder | Transformed (const gp_Trsf &T) const
| Transforms a cylinder with the transformation T from class Trsf. .
void | Translate (const gp_Vec &V)
gp_Cylinder | Translated (const gp_Vec &V) const
| Translates a cylinder in the direction of the vector V. The magnitude of the translation is the vector's magnitude. .
void | Translate (const gp_Pnt &P1, const gp_Pnt &P2)
gp_Cylinder | Translated (const gp_Pnt &P1, const gp_Pnt &P2) const
| Translates a cylinder from the point P1 to the point P2. .
const gp_Ax3 & | _CSFDB_Getgp_Cylinderpos () const
Standard_Real | _CSFDB_Getgp_Cylinderradius () const
void | _CSFDB_Setgp_Cylinderradius (const Standard_Real p)

## Private Attributes

gp_Ax3 | pos
Standard_Real | radius

## Friends

Standard_EXPORT friend Handle_Standard_Type & | gp_Cylinder_Type_ ()

## Constructor & Destructor Documentation

gp_Cylinder::gp_Cylinder | ( |  | ) | `[inline]`

gp_Cylinder::gp_Cylinder | ( | const gp_Ax3 & | A3,
|  | const Standard_Real | Radius
| ) | `[inline]`

## Member Function Documentation

const gp_Ax3& gp_Cylinder::_CSFDB_Getgp_Cylinderpos | ( |  | ) | const`[inline]`

Standard_Real gp_Cylinder::_CSFDB_Getgp_Cylinderradius | ( |  | ) | const`[inline]`

void gp_Cylinder::_CSFDB_Setgp_Cylinderradius | ( | const Standard_Real | p | ) | `[inline]`

const gp_Ax1 & gp_Cylinder::Axis | ( |  | ) | const`[inline]`

Standard_EXPORT void gp_Cylinder::Coefficients | ( | Standard_Real & | A1,
|  | Standard_Real & | A2,
|  | Standard_Real & | A3,
|  | Standard_Real & | B1,
|  | Standard_Real & | B2,
|  | Standard_Real & | B3,
|  | Standard_Real & | C1,
|  | Standard_Real & | C2,
|  | Standard_Real & | C3,
|  | Standard_Real & | D
| ) | const

Standard_Boolean gp_Cylinder::Direct | ( |  | ) | const`[inline]`

const gp_Pnt & gp_Cylinder::Location | ( |  | ) | const`[inline]`

Standard_EXPORT void gp_Cylinder::Mirror | ( | const gp_Ax2 & | A2 | ) |

Standard_EXPORT void gp_Cylinder::Mirror | ( | const gp_Ax1 & | A1 | ) |

Standard_EXPORT void gp_Cylinder::Mirror | ( | const gp_Pnt & | P | ) |

Standard_EXPORT gp_Cylinder gp_Cylinder::Mirrored | ( | const gp_Ax2 & | A2 | ) | const

Standard_EXPORT gp_Cylinder gp_Cylinder::Mirrored | ( | const gp_Ax1 & | A1 | ) | const

Standard_EXPORT gp_Cylinder gp_Cylinder::Mirrored | ( | const gp_Pnt & | P | ) | const

void gp_Cylinder::operator delete | ( | void * | anAddress | ) | `[inline]`

void* gp_Cylinder::operator new | ( | size_t | size | ) | `[inline]`

void* gp_Cylinder::operator new | ( | size_t | ,
|  | void * | anAddress
| ) | `[inline]`

const gp_Ax3 & gp_Cylinder::Position | ( |  | ) | const`[inline]`

Standard_Real gp_Cylinder::Radius | ( |  | ) | const`[inline]`

void gp_Cylinder::Rotate | ( | const gp_Ax1 & | A1,
|  | const Standard_Real | Ang
| ) | `[inline]`

gp_Cylinder gp_Cylinder::Rotated | ( | const gp_Ax1 & | A1,
|  | const Standard_Real | Ang
| ) | const`[inline]`

void gp_Cylinder::Scale | ( | const gp_Pnt & | P,
|  | const Standard_Real | S
| ) | `[inline]`

gp_Cylinder gp_Cylinder::Scaled | ( | const gp_Pnt & | P,
|  | const Standard_Real | S
| ) | const`[inline]`

void gp_Cylinder::SetAxis | ( | const gp_Ax1 & | A1 | ) | `[inline]`

void gp_Cylinder::SetLocation | ( | const gp_Pnt & | Loc | ) | `[inline]`

void gp_Cylinder::SetPosition | ( | const gp_Ax3 & | A3 | ) | `[inline]`

void gp_Cylinder::SetRadius | ( | const Standard_Real | R | ) | `[inline]`

void gp_Cylinder::Transform | ( | const gp_Trsf & | T | ) | `[inline]`

gp_Cylinder gp_Cylinder::Transformed | ( | const gp_Trsf & | T | ) | const`[inline]`

void gp_Cylinder::Translate | ( | const gp_Pnt & | P1,
|  | const gp_Pnt & | P2
| ) | `[inline]`

void gp_Cylinder::Translate | ( | const gp_Vec & | V | ) | `[inline]`

gp_Cylinder gp_Cylinder::Translated | ( | const gp_Pnt & | P1,
|  | const gp_Pnt & | P2
| ) | const`[inline]`

gp_Cylinder gp_Cylinder::Translated | ( | const gp_Vec & | V | ) | const`[inline]`

void gp_Cylinder::UReverse | ( |  | ) | `[inline]`

void gp_Cylinder::VReverse | ( |  | ) | `[inline]`

gp_Ax1 gp_Cylinder::XAxis | ( |  | ) | const`[inline]`

gp_Ax1 gp_Cylinder::YAxis | ( |  | ) | const`[inline]`

## Friends And Related Function Documentation

Standard_EXPORT friend Handle_Standard_Type& gp_Cylinder_Type_ | ( |  | ) | `[friend]`

## Field Documentation

gp_Ax3 gp_Cylinder::pos `[private]`

Standard_Real gp_Cylinder::radius `[private]`

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

- gp_Cylinder.hxx
- gp_Cylinder.lxx