OCCT3D OCCT 8.0.1
OCCT documentation

Search guides and API reference

Enter at least two characters.

    Open CASCADE Technology Reference Manual 8.0.1
    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 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: More...

    #include <gp_Cylinder.hxx>

    Public Member Functions

    constexpr gp_Cylinder () noexcept
     Creates a indefinite cylinder.
    constexpr gp_Cylinder (const gp_Ax3 &theA3, const double theRadius)
     Creates a cylinder of radius Radius, whose axis is the "main Axis" of theA3. theA3 is the local coordinate system of the cylinder. Raises ConstructionErrord if theRadius < 0.0.
    void SetAxis (const gp_Ax1 &theA1)
     Changes the symmetry axis of the cylinder. Raises ConstructionError if the direction of theA1 is parallel to the "XDirection" of the coordinate system of the cylinder.
    constexpr void SetLocation (const gp_Pnt &theLoc) noexcept
     Changes the location of the surface.
    constexpr void SetPosition (const gp_Ax3 &theA3) noexcept
     Change the local coordinate system of the surface.
    void SetRadius (const double theR)
     Modifies the radius of this cylinder. Exceptions Standard_ConstructionError if theR is negative.
    constexpr void UReverse () noexcept
     Reverses the U parametrization of the cylinder reversing the YAxis.
    constexpr void VReverse () noexcept
     Reverses the V parametrization of the plane reversing the Axis.
    bool Direct () const
     Returns true if the local coordinate system of this cylinder is right-handed.
    constexpr const gp_Ax1Axis () const noexcept
     Returns the symmetry axis of the cylinder.
    void Coefficients (double &theA1, double &theA2, double &theA3, double &theB1, double &theB2, double &theB3, double &theC1, double &theC2, double &theC3, double &theD) const
     Computes the coefficients of the implicit equation of the quadric in the absolute cartesian coordinate system : theA1.X**2 + theA2.Y**2 + theA3.Z**2 + 2.(theB1.X.Y + theB2.X.Z + theB3.Y.Z) + 2.(theC1.X + theC2.Y + theC3.Z) + theD = 0.0.
    constexpr const gp_PntLocation () const noexcept
     Returns the "Location" point of the cylinder.
    constexpr const gp_Ax3Position () const noexcept
     Returns the local coordinate system of the cylinder.
    constexpr double Radius () const noexcept
     Returns the radius of the cylinder.
    constexpr gp_Ax1 XAxis () const noexcept
     Returns the axis X of the cylinder.
    constexpr gp_Ax1 YAxis () const noexcept
     Returns the axis Y of the cylinder.
    void Mirror (const gp_Pnt &theP) noexcept
    gp_Cylinder Mirrored (const gp_Pnt &theP) const noexcept
     Performs the symmetrical transformation of a cylinder with respect to the point theP which is the center of the symmetry.
    void Mirror (const gp_Ax1 &theA1) noexcept
    gp_Cylinder Mirrored (const gp_Ax1 &theA1) const noexcept
     Performs the symmetrical transformation of a cylinder with respect to an axis placement which is the axis of the symmetry.
    void Mirror (const gp_Ax2 &theA2) noexcept
    gp_Cylinder Mirrored (const gp_Ax2 &theA2) const noexcept
     Performs the symmetrical transformation of a cylinder 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_Cylinder Rotated (const gp_Ax1 &theA1, const double theAng) const
     Rotates a cylinder. 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_Cylinder Scaled (const gp_Pnt &theP, const double theS) const
     Scales a cylinder. theS is the scaling value. The absolute value of theS is used to scale the cylinder.
    void Transform (const gp_Trsf &theT)
    gp_Cylinder Transformed (const gp_Trsf &theT) const
     Transforms a cylinder with the transformation theT from class Trsf.
    constexpr void Translate (const gp_Vec &theV) noexcept
    constexpr gp_Cylinder Translated (const gp_Vec &theV) const noexcept
     Translates a cylinder 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_Cylinder Translated (const gp_Pnt &theP1, const gp_Pnt &theP2) const noexcept
     Translates a cylinder from the point theP1 to the point theP2.

    Detailed Description

    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 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 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

    Constructor & Destructor Documentation

    ◆ gp_Cylinder() [1/2]

    gp_Cylinder::gp_Cylinder ( )
    inlineconstexprnoexcept

    Creates a indefinite cylinder.

    ◆ gp_Cylinder() [2/2]

    gp_Cylinder::gp_Cylinder ( const gp_Ax3 & theA3,
    const double theRadius )
    inlineconstexpr

    Creates a cylinder of radius Radius, whose axis is the "main Axis" of theA3. theA3 is the local coordinate system of the cylinder. Raises ConstructionErrord if theRadius < 0.0.

    Member Function Documentation

    ◆ Axis()

    const gp_Ax1 & gp_Cylinder::Axis ( ) const
    inlineconstexprnoexcept

    Returns the symmetry axis of the cylinder.

    ◆ Coefficients()

    void gp_Cylinder::Coefficients ( double & theA1,
    double & theA2,
    double & theA3,
    double & theB1,
    double & theB2,
    double & theB3,
    double & theC1,
    double & theC2,
    double & theC3,
    double & theD ) const

    Computes the coefficients of the implicit equation of the quadric in the absolute cartesian coordinate system : theA1.X**2 + theA2.Y**2 + theA3.Z**2 + 2.(theB1.X.Y + theB2.X.Z + theB3.Y.Z) + 2.(theC1.X + theC2.Y + theC3.Z) + theD = 0.0.

    ◆ Direct()

    bool gp_Cylinder::Direct ( ) const
    inline

    Returns true if the local coordinate system of this cylinder is right-handed.

    ◆ Location()

    const gp_Pnt & gp_Cylinder::Location ( ) const
    inlineconstexprnoexcept

    Returns the "Location" point of the cylinder.

    ◆ Mirror() [1/3]

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

    ◆ Mirror() [2/3]

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

    ◆ Mirror() [3/3]

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

    ◆ Mirrored() [1/3]

    gp_Cylinder gp_Cylinder::Mirrored ( const gp_Ax1 & theA1) const
    nodiscardnoexcept

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

    ◆ Mirrored() [2/3]

    gp_Cylinder gp_Cylinder::Mirrored ( const gp_Ax2 & theA2) const
    nodiscardnoexcept

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

    ◆ Mirrored() [3/3]

    gp_Cylinder gp_Cylinder::Mirrored ( const gp_Pnt & theP) const
    nodiscardnoexcept

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

    ◆ Position()

    const gp_Ax3 & gp_Cylinder::Position ( ) const
    inlineconstexprnoexcept

    Returns the local coordinate system of the cylinder.

    ◆ Radius()

    double gp_Cylinder::Radius ( ) const
    inlineconstexprnoexcept

    Returns the radius of the cylinder.

    ◆ Rotate()

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

    ◆ Rotated()

    gp_Cylinder gp_Cylinder::Rotated ( const gp_Ax1 & theA1,
    const double theAng ) const
    inlinenodiscard

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

    ◆ Scale()

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

    ◆ Scaled()

    gp_Cylinder gp_Cylinder::Scaled ( const gp_Pnt & theP,
    const double theS ) const
    inlinenodiscard

    Scales a cylinder. theS is the scaling value. The absolute value of theS is used to scale the cylinder.

    ◆ SetAxis()

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

    Changes the symmetry axis of the cylinder. Raises ConstructionError if the direction of theA1 is parallel to the "XDirection" of the coordinate system of the cylinder.

    ◆ SetLocation()

    void gp_Cylinder::SetLocation ( const gp_Pnt & theLoc)
    inlineconstexprnoexcept

    Changes the location of the surface.

    ◆ SetPosition()

    void gp_Cylinder::SetPosition ( const gp_Ax3 & theA3)
    inlineconstexprnoexcept

    Change the local coordinate system of the surface.

    ◆ SetRadius()

    void gp_Cylinder::SetRadius ( const double theR)
    inline

    Modifies the radius of this cylinder. Exceptions Standard_ConstructionError if theR is negative.

    ◆ Transform()

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

    ◆ Transformed()

    gp_Cylinder gp_Cylinder::Transformed ( const gp_Trsf & theT) const
    inlinenodiscard

    Transforms a cylinder with the transformation theT from class Trsf.

    ◆ Translate() [1/2]

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

    ◆ Translate() [2/2]

    void gp_Cylinder::Translate ( const gp_Vec & theV)
    inlineconstexprnoexcept

    ◆ Translated() [1/2]

    gp_Cylinder gp_Cylinder::Translated ( const gp_Pnt & theP1,
    const gp_Pnt & theP2 ) const
    inlinenodiscardconstexprnoexcept

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

    ◆ Translated() [2/2]

    gp_Cylinder gp_Cylinder::Translated ( const gp_Vec & theV) const
    inlinenodiscardconstexprnoexcept

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

    ◆ UReverse()

    void gp_Cylinder::UReverse ( )
    inlineconstexprnoexcept

    Reverses the U parametrization of the cylinder reversing the YAxis.

    ◆ VReverse()

    void gp_Cylinder::VReverse ( )
    inlineconstexprnoexcept

    Reverses the V parametrization of the plane reversing the Axis.

    ◆ XAxis()

    gp_Ax1 gp_Cylinder::XAxis ( ) const
    inlineconstexprnoexcept

    Returns the axis X of the cylinder.

    ◆ YAxis()

    gp_Ax1 gp_Cylinder::YAxis ( ) const
    inlineconstexprnoexcept

    Returns the axis Y of the cylinder.


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