Open CASCADE Technology 7.8.0
Public Member Functions
gp_Parab2d Class Reference

Describes a parabola in the plane (2D space). A parabola is defined by its focal length (that is, the distance between its focus and apex) and positioned in the plane with a coordinate system (a gp_Ax22d object) where: More...

#include <gp_Parab2d.hxx>

Public Member Functions

 gp_Parab2d ()
 Creates an indefinite parabola.
 
 gp_Parab2d (const gp_Ax2d &theMirrorAxis, const Standard_Real theFocalLength, const Standard_Boolean theSense=Standard_True)
 Creates a parabola with its vertex point, its axis of symmetry ("XAxis") and its focal length. The sense of parametrization is given by theSense. If theSense == TRUE (by default) then right-handed coordinate system is used, otherwise - left-handed. Warnings : It is possible to have FocalLength = 0. In this case, the parabola looks like a line, which is parallel to the symmetry-axis. Raises ConstructionError if FocalLength < 0.0.
 
 gp_Parab2d (const gp_Ax22d &theAxes, const Standard_Real theFocalLength)
 Creates a parabola with its vertex point, its axis of symmetry ("XAxis"), correspond Y-axis and its focal length. Warnings : It is possible to have FocalLength = 0. In this case, the parabola looks like a line, which is parallel to the symmetry-axis. Raises ConstructionError if Focal < 0.0.
 
 gp_Parab2d (const gp_Ax2d &theDirectrix, const gp_Pnt2d &theFocus, const Standard_Boolean theSense=Standard_True)
 Creates a parabola with the directrix and the focus point. Y-axis of the parabola (in User Coordinate System - UCS) is the direction of theDirectrix. X-axis always directs from theDirectrix to theFocus point and always comes through theFocus. Apex of the parabola is a middle point between the theFocus and the intersection point of theDirectrix and the X-axis. Warnings : It is possible to have FocalLength = 0 (when theFocus lies in theDirectrix). In this case, X-direction of the parabola is defined by theSense parameter. If theSense == TRUE (by default) then right-handed coordinate system is used, otherwise - left-handed. Result parabola will look like a line, which is perpendicular to the directrix.
 
void SetFocal (const Standard_Real theFocal)
 Changes the focal distance of the parabola Warnings : It is possible to have theFocal = 0. Raises ConstructionError if theFocal < 0.0.
 
void SetLocation (const gp_Pnt2d &theP)
 Changes the "Location" point of the parabola. It is the vertex of the parabola.
 
void SetMirrorAxis (const gp_Ax2d &theA)
 Modifies this parabola, by redefining its local coordinate system so that its origin and "X Direction" become those of the axis MA. The "Y Direction" of the local coordinate system is then recomputed. The orientation of the local coordinate system is not modified.
 
void SetAxis (const gp_Ax22d &theA)
 Changes the local coordinate system of the parabola. The "Location" point of A becomes the vertex of the parabola.
 
void Coefficients (Standard_Real &theA, Standard_Real &theB, Standard_Real &theC, Standard_Real &theD, Standard_Real &theE, Standard_Real &theF) const
 Computes the coefficients of the implicit equation of the parabola (in WCS - World Coordinate System).
 
gp_Ax2d Directrix () const
 Computes the directrix of the parabola. The directrix is:
 
Standard_Real Focal () const
 Returns the distance between the vertex and the focus of the parabola.
 
gp_Pnt2d Focus () const
 Returns the focus of the parabola.
 
gp_Pnt2d Location () const
 Returns the vertex of the parabola.
 
gp_Ax2d MirrorAxis () const
 Returns the symmetry axis of the parabola. The "Location" point of this axis is the vertex of the parabola.
 
gp_Ax22d Axis () const
 Returns the local coordinate system of the parabola. The "Location" point of this axis is the vertex of the parabola.
 
Standard_Real Parameter () const
 Returns the distance between the focus and the directrix of the parabola.
 
void Reverse ()
 
gp_Parab2d Reversed () const
 Reverses the orientation of the local coordinate system of this parabola (the "Y Direction" is reversed). Therefore, the implicit orientation of this parabola is reversed. Note:
 
Standard_Boolean IsDirect () const
 Returns true if the local coordinate system is direct and false in the other case.
 
void Mirror (const gp_Pnt2d &theP)
 
gp_Parab2d Mirrored (const gp_Pnt2d &theP) const
 Performs the symmetrical transformation of a parabola with respect to the point theP which is the center of the symmetry.
 
void Mirror (const gp_Ax2d &theA)
 
gp_Parab2d Mirrored (const gp_Ax2d &theA) const
 Performs the symmetrical transformation of a parabola with respect to an axis placement which is the axis of the symmetry.
 
void Rotate (const gp_Pnt2d &theP, const Standard_Real theAng)
 
gp_Parab2d Rotated (const gp_Pnt2d &theP, const Standard_Real theAng) const
 Rotates a parabola. theP is the center of the rotation. theAng is the angular value of the rotation in radians.
 
void Scale (const gp_Pnt2d &theP, const Standard_Real theS)
 
gp_Parab2d Scaled (const gp_Pnt2d &theP, const Standard_Real theS) const
 Scales a parabola. theS is the scaling value. If theS is negative the direction of the symmetry axis "XAxis" is reversed and the direction of the "YAxis" too.
 
void Transform (const gp_Trsf2d &theT)
 
gp_Parab2d Transformed (const gp_Trsf2d &theT) const
 Transforms an parabola with the transformation theT from class Trsf2d.
 
void Translate (const gp_Vec2d &theV)
 
gp_Parab2d Translated (const gp_Vec2d &theV) const
 Translates a parabola in the direction of the vectorthe theV. The magnitude of the translation is the vector's magnitude.
 
void Translate (const gp_Pnt2d &theP1, const gp_Pnt2d &theP2)
 
gp_Parab2d Translated (const gp_Pnt2d &theP1, const gp_Pnt2d &theP2) const
 Translates a parabola from the point theP1 to the point theP2.
 

Detailed Description

Describes a parabola in the plane (2D space). A parabola is defined by its focal length (that is, the distance between its focus and apex) and positioned in the plane with a coordinate system (a gp_Ax22d object) where:

Constructor & Destructor Documentation

◆ gp_Parab2d() [1/4]

gp_Parab2d::gp_Parab2d ( )
inline

Creates an indefinite parabola.

◆ gp_Parab2d() [2/4]

gp_Parab2d::gp_Parab2d ( const gp_Ax2d theMirrorAxis,
const Standard_Real  theFocalLength,
const Standard_Boolean  theSense = Standard_True 
)
inline

Creates a parabola with its vertex point, its axis of symmetry ("XAxis") and its focal length. The sense of parametrization is given by theSense. If theSense == TRUE (by default) then right-handed coordinate system is used, otherwise - left-handed. Warnings : It is possible to have FocalLength = 0. In this case, the parabola looks like a line, which is parallel to the symmetry-axis. Raises ConstructionError if FocalLength < 0.0.

◆ gp_Parab2d() [3/4]

gp_Parab2d::gp_Parab2d ( const gp_Ax22d theAxes,
const Standard_Real  theFocalLength 
)
inline

Creates a parabola with its vertex point, its axis of symmetry ("XAxis"), correspond Y-axis and its focal length. Warnings : It is possible to have FocalLength = 0. In this case, the parabola looks like a line, which is parallel to the symmetry-axis. Raises ConstructionError if Focal < 0.0.

◆ gp_Parab2d() [4/4]

gp_Parab2d::gp_Parab2d ( const gp_Ax2d theDirectrix,
const gp_Pnt2d theFocus,
const Standard_Boolean  theSense = Standard_True 
)

Creates a parabola with the directrix and the focus point. Y-axis of the parabola (in User Coordinate System - UCS) is the direction of theDirectrix. X-axis always directs from theDirectrix to theFocus point and always comes through theFocus. Apex of the parabola is a middle point between the theFocus and the intersection point of theDirectrix and the X-axis. Warnings : It is possible to have FocalLength = 0 (when theFocus lies in theDirectrix). In this case, X-direction of the parabola is defined by theSense parameter. If theSense == TRUE (by default) then right-handed coordinate system is used, otherwise - left-handed. Result parabola will look like a line, which is perpendicular to the directrix.

Member Function Documentation

◆ Axis()

gp_Ax22d gp_Parab2d::Axis ( ) const
inline

Returns the local coordinate system of the parabola. The "Location" point of this axis is the vertex of the parabola.

◆ Coefficients()

void gp_Parab2d::Coefficients ( Standard_Real theA,
Standard_Real theB,
Standard_Real theC,
Standard_Real theD,
Standard_Real theE,
Standard_Real theF 
) const

Computes the coefficients of the implicit equation of the parabola (in WCS - World Coordinate System).

theA * (X**2) + theB * (Y**2) + 2*theC*(X*Y) + 2*theD*X + 2*theE*Y + theF = 0.

◆ Directrix()

gp_Ax2d gp_Parab2d::Directrix ( ) const
inline

Computes the directrix of the parabola. The directrix is:

  • a line parallel to the "Y Direction" of the local coordinate system of this parabola, and
  • located on the negative side of the axis of symmetry, at a distance from the apex which is equal to the focal length of this parabola. The directrix is returned as an axis (a gp_Ax2d object), the origin of which is situated on the "X Axis" of this parabola.

◆ Focal()

Standard_Real gp_Parab2d::Focal ( ) const
inline

Returns the distance between the vertex and the focus of the parabola.

◆ Focus()

gp_Pnt2d gp_Parab2d::Focus ( ) const
inline

Returns the focus of the parabola.

◆ IsDirect()

Standard_Boolean gp_Parab2d::IsDirect ( ) const
inline

Returns true if the local coordinate system is direct and false in the other case.

◆ Location()

gp_Pnt2d gp_Parab2d::Location ( ) const
inline

Returns the vertex of the parabola.

◆ Mirror() [1/2]

void gp_Parab2d::Mirror ( const gp_Ax2d theA)

◆ Mirror() [2/2]

void gp_Parab2d::Mirror ( const gp_Pnt2d theP)

◆ MirrorAxis()

gp_Ax2d gp_Parab2d::MirrorAxis ( ) const
inline

Returns the symmetry axis of the parabola. The "Location" point of this axis is the vertex of the parabola.

◆ Mirrored() [1/2]

gp_Parab2d gp_Parab2d::Mirrored ( const gp_Ax2d theA) const

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

◆ Mirrored() [2/2]

gp_Parab2d gp_Parab2d::Mirrored ( const gp_Pnt2d theP) const

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

◆ Parameter()

Standard_Real gp_Parab2d::Parameter ( ) const
inline

Returns the distance between the focus and the directrix of the parabola.

◆ Reverse()

void gp_Parab2d::Reverse ( )
inline

◆ Reversed()

gp_Parab2d gp_Parab2d::Reversed ( ) const
inline

Reverses the orientation of the local coordinate system of this parabola (the "Y Direction" is reversed). Therefore, the implicit orientation of this parabola is reversed. Note:

  • Reverse assigns the result to this parabola, while
  • Reversed creates a new one.

◆ Rotate()

void gp_Parab2d::Rotate ( const gp_Pnt2d theP,
const Standard_Real  theAng 
)
inline

◆ Rotated()

gp_Parab2d gp_Parab2d::Rotated ( const gp_Pnt2d theP,
const Standard_Real  theAng 
) const
inline

Rotates a parabola. theP is the center of the rotation. theAng is the angular value of the rotation in radians.

◆ Scale()

void gp_Parab2d::Scale ( const gp_Pnt2d theP,
const Standard_Real  theS 
)
inline

◆ Scaled()

gp_Parab2d gp_Parab2d::Scaled ( const gp_Pnt2d theP,
const Standard_Real  theS 
) const
inline

Scales a parabola. theS is the scaling value. If theS is negative the direction of the symmetry axis "XAxis" is reversed and the direction of the "YAxis" too.

◆ SetAxis()

void gp_Parab2d::SetAxis ( const gp_Ax22d theA)
inline

Changes the local coordinate system of the parabola. The "Location" point of A becomes the vertex of the parabola.

◆ SetFocal()

void gp_Parab2d::SetFocal ( const Standard_Real  theFocal)
inline

Changes the focal distance of the parabola Warnings : It is possible to have theFocal = 0. Raises ConstructionError if theFocal < 0.0.

◆ SetLocation()

void gp_Parab2d::SetLocation ( const gp_Pnt2d theP)
inline

Changes the "Location" point of the parabola. It is the vertex of the parabola.

◆ SetMirrorAxis()

void gp_Parab2d::SetMirrorAxis ( const gp_Ax2d theA)
inline

Modifies this parabola, by redefining its local coordinate system so that its origin and "X Direction" become those of the axis MA. The "Y Direction" of the local coordinate system is then recomputed. The orientation of the local coordinate system is not modified.

◆ Transform()

void gp_Parab2d::Transform ( const gp_Trsf2d theT)
inline

◆ Transformed()

gp_Parab2d gp_Parab2d::Transformed ( const gp_Trsf2d theT) const
inline

Transforms an parabola with the transformation theT from class Trsf2d.

◆ Translate() [1/2]

void gp_Parab2d::Translate ( const gp_Pnt2d theP1,
const gp_Pnt2d theP2 
)
inline

◆ Translate() [2/2]

void gp_Parab2d::Translate ( const gp_Vec2d theV)
inline

◆ Translated() [1/2]

gp_Parab2d gp_Parab2d::Translated ( const gp_Pnt2d theP1,
const gp_Pnt2d theP2 
) const
inline

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

◆ Translated() [2/2]

gp_Parab2d gp_Parab2d::Translated ( const gp_Vec2d theV) const
inline

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


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