Open CASCADE Technology  7.2.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. More...
 
 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. More...
 
 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. More...
 
 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. More...
 
void SetFocal (const Standard_Real Focal)
 Changes the focal distance of the parabola Warnings : It is possible to have Focal = 0. Raises ConstructionError if Focal < 0.0. More...
 
void SetLocation (const gp_Pnt2d &P)
 Changes the "Location" point of the parabola. It is the vertex of the parabola. More...
 
void SetMirrorAxis (const gp_Ax2d &A)
 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. More...
 
void SetAxis (const gp_Ax22d &A)
 Changes the local coordinate system of the parabola. The "Location" point of A becomes the vertex of the parabola. More...
 
void Coefficients (Standard_Real &A, Standard_Real &B, Standard_Real &C, Standard_Real &D, Standard_Real &E, Standard_Real &F) const
 Computes the coefficients of the implicit equation of the parabola (in WCS - World Coordinate System). A * (X**2) + B * (Y**2) + 2*C*(X*Y) + 2*D*X + 2*E*Y + F = 0. More...
 
gp_Ax2d Directrix () const
 Computes the directrix of the parabola. The directrix is: More...
 
Standard_Real Focal () const
 Returns the distance between the vertex and the focus of the parabola. More...
 
gp_Pnt2d Focus () const
 Returns the focus of the parabola. More...
 
gp_Pnt2d Location () const
 Returns the vertex of the parabola. More...
 
gp_Ax2d MirrorAxis () const
 Returns the symmetry axis of the parabola. The "Location" point of this axis is the vertex of the parabola. More...
 
gp_Ax22d Axis () const
 Returns the local coordinate system of the parabola. The "Location" point of this axis is the vertex of the parabola. More...
 
Standard_Real Parameter () const
 Returns the distance between the focus and the directrix of the parabola. More...
 
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: More...
 
Standard_Boolean IsDirect () const
 Returns true if the local coordinate system is direct and false in the other case. More...
 
void Mirror (const gp_Pnt2d &P)
 
gp_Parab2d Mirrored (const gp_Pnt2d &P) const
 Performs the symmetrical transformation of a parabola with respect to the point P which is the center of the symmetry. More...
 
void Mirror (const gp_Ax2d &A)
 
gp_Parab2d Mirrored (const gp_Ax2d &A) const
 Performs the symmetrical transformation of a parabola with respect to an axis placement which is the axis of the symmetry. More...
 
void Rotate (const gp_Pnt2d &P, const Standard_Real Ang)
 
gp_Parab2d Rotated (const gp_Pnt2d &P, const Standard_Real Ang) const
 Rotates a parabola. P is the center of the rotation. Ang is the angular value of the rotation in radians. More...
 
void Scale (const gp_Pnt2d &P, const Standard_Real S)
 
gp_Parab2d Scaled (const gp_Pnt2d &P, const Standard_Real S) const
 Scales a parabola. S is the scaling value. If S is negative the direction of the symmetry axis "XAxis" is reversed and the direction of the "YAxis" too. More...
 
void Transform (const gp_Trsf2d &T)
 
gp_Parab2d Transformed (const gp_Trsf2d &T) const
 Transforms an parabola with the transformation T from class Trsf2d. More...
 
void Translate (const gp_Vec2d &V)
 
gp_Parab2d Translated (const gp_Vec2d &V) const
 Translates a parabola in the direction of the vector V. The magnitude of the translation is the vector's magnitude. More...
 
void Translate (const gp_Pnt2d &P1, const gp_Pnt2d &P2)
 
gp_Parab2d Translated (const gp_Pnt2d &P1, const gp_Pnt2d &P2) const
 Translates a parabola from the point P1 to the point P2. More...
 

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

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 
)

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 
)

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

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 A,
Standard_Real B,
Standard_Real C,
Standard_Real D,
Standard_Real E,
Standard_Real F 
) const

Computes the coefficients of the implicit equation of the parabola (in WCS - World Coordinate System). A * (X**2) + B * (Y**2) + 2*C*(X*Y) + 2*D*X + 2*E*Y + F = 0.

◆ Directrix()

gp_Ax2d gp_Parab2d::Directrix ( ) const

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

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

◆ Focus()

gp_Pnt2d gp_Parab2d::Focus ( ) const

Returns the focus of the parabola.

◆ IsDirect()

Standard_Boolean gp_Parab2d::IsDirect ( ) const

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

◆ Location()

gp_Pnt2d gp_Parab2d::Location ( ) const

Returns the vertex of the parabola.

◆ Mirror() [1/2]

void gp_Parab2d::Mirror ( const gp_Pnt2d P)

◆ Mirror() [2/2]

void gp_Parab2d::Mirror ( const gp_Ax2d A)

◆ MirrorAxis()

gp_Ax2d gp_Parab2d::MirrorAxis ( ) const

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_Pnt2d P) const

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

◆ Mirrored() [2/2]

gp_Parab2d gp_Parab2d::Mirrored ( const gp_Ax2d A) const

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

◆ Parameter()

Standard_Real gp_Parab2d::Parameter ( ) const

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

◆ Reverse()

void gp_Parab2d::Reverse ( )

◆ Reversed()

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

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

◆ Rotate()

void gp_Parab2d::Rotate ( const gp_Pnt2d P,
const Standard_Real  Ang 
)

◆ Rotated()

gp_Parab2d gp_Parab2d::Rotated ( const gp_Pnt2d P,
const Standard_Real  Ang 
) const

Rotates a parabola. P is the center of the rotation. Ang is the angular value of the rotation in radians.

◆ Scale()

void gp_Parab2d::Scale ( const gp_Pnt2d P,
const Standard_Real  S 
)

◆ Scaled()

gp_Parab2d gp_Parab2d::Scaled ( const gp_Pnt2d P,
const Standard_Real  S 
) const

Scales a parabola. S is the scaling value. If S 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 A)

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

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

◆ SetLocation()

void gp_Parab2d::SetLocation ( const gp_Pnt2d P)

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

◆ SetMirrorAxis()

void gp_Parab2d::SetMirrorAxis ( const gp_Ax2d A)

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

◆ Transformed()

gp_Parab2d gp_Parab2d::Transformed ( const gp_Trsf2d T) const

Transforms an parabola with the transformation T from class Trsf2d.

◆ Translate() [1/2]

void gp_Parab2d::Translate ( const gp_Vec2d V)

◆ Translate() [2/2]

void gp_Parab2d::Translate ( const gp_Pnt2d P1,
const gp_Pnt2d P2 
)

◆ Translated() [1/2]

gp_Parab2d gp_Parab2d::Translated ( const gp_Vec2d V) const

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

◆ Translated() [2/2]

gp_Parab2d gp_Parab2d::Translated ( const gp_Pnt2d P1,
const gp_Pnt2d P2 
) const

Translates a parabola from the point P1 to the point P2.


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