OCC Main Page | FoundationClasses | Toolkits | Packages | Class Hierarchy | Data Structures | File List | Data Fields | Globals

FoundationClasses
TKMath
gp


gp_Pln Class Reference

Describes a plane.
A plane is positioned in space with a coordinate system
(a gp_Ax3 object), such that the plane is defined by the
origin, "X Direction" and "Y Direction" of this coordinate
system, which is the "local coordinate system" of the
plane. The "main Direction" of the coordinate system is a
vector normal to the plane. It gives the plane an implicit
orientation such that the plane is said to be "direct", if the
coordinate system is right-handed, or "indirect" in the other case.
Note: when a gp_Pln plane is converted into a
Geom_Plane plane, some implicit properties of its local
coordinate system are used explicitly:
- its origin defines the origin of the two parameters of
the planar surface,
- its implicit orientation is also that of the Geom_Plane.
See Also
gce_MakePln which provides functions for more complex
plane constructions
Geom_Plane which provides additional functions for
constructing planes and works, in particular, with the
parametric equations of planes
.

#include <gp_Pln.hxx>


Public Member Functions

void * operator new (size_t, void *anAddress)
void * operator new (size_t size)
void operator delete (void *anAddress)
 gp_Pln ()
 Creates an indefinite plane.
.
 gp_Pln (const gp_Ax3 &A3)
 The coordinate system of the plane is defined with the axis
placement A3.
The "Direction" of A3 defines the normal to the plane.
The "Location" of A3 defines the location (origin) of the plane.
The "XDirection" and "YDirection" of A3 define the "XAxis" and
the "YAxis" of the plane used to parametrize the plane.
.
Standard_EXPORT gp_Pln (const gp_Pnt &P, const gp_Dir &V)
 Creates a plane with the "Location" point


and the normal direction <v>.
.

Standard_EXPORT gp_Pln (const Standard_Real A, const Standard_Real B, const Standard_Real C, const Standard_Real D)
 Creates a plane from its cartesian equation :
A * X + B * Y + C * Z + D = 0.0
Raises ConstructionError if Sqrt (A*A + B*B + C*C) <= Resolution from gp.
.
void Coefficients (Standard_Real &A, Standard_Real &B, Standard_Real &C, Standard_Real &D) const
 Returns the coefficients of the plane's cartesian equation :
A * X + B * Y + C * Z + D = 0.
.
void SetAxis (const gp_Ax1 &A1)
 Modifies this plane, by redefining its local coordinate system so that
- its origin and "main Direction" become those of the
axis A1 (the "X Direction" and "Y Direction" are then recomputed).
Raises ConstructionError if the A1 is parallel to the "XAxis" of the plane.
.
void SetLocation (const gp_Pnt &Loc)
 Changes the origin of the plane.
.
void SetPosition (const gp_Ax3 &A3)
 Changes the local coordinate system of the plane.
.
void UReverse ()
 Reverses the U parametrization of the plane
reversing the XAxis.
.
void VReverse ()
 Reverses the V parametrization of the plane
reversing the YAxis.
.
Standard_Boolean Direct () const
 returns true if the Ax3 is right handed.

const gp_Ax1Axis () const
 Returns the plane's normal Axis.
.
const gp_PntLocation () const
 Returns the plane's location (origin).
.
const gp_Ax3Position () const
 Returns the local coordinate system of the plane .
.
Standard_Real Distance (const gp_Pnt &P) const
 Computes the distance between <me> and the point

.
.

Standard_Real Distance (const gp_Lin &L) const
 Computes the distance between <me> and the line <l>.
.
Standard_Real Distance (const gp_Pln &Other) const
 Computes the distance between two planes.
.
Standard_Real SquareDistance (const gp_Pnt &P) const
 Computes the square distance between <me> and the point

.
.

Standard_Real SquareDistance (const gp_Lin &L) const
 Computes the square distance between <me> and the line <l>.
.
Standard_Real SquareDistance (const gp_Pln &Other) const
 Computes the square distance between two planes.
.
gp_Ax1 XAxis () const
 Returns the X axis of the plane.
.
gp_Ax1 YAxis () const
 Returns the Y axis of the plane.
.
Standard_Boolean Contains (const gp_Pnt &P, const Standard_Real LinearTolerance) const
 Returns true if this plane contains the point P. This means that
- the distance between point P and this plane is less
than or equal to LinearTolerance, or
- line L is normal to the "main Axis" of the local
coordinate system of this plane, within the tolerance
AngularTolerance, and the distance between the origin
of line L and this plane is less than or equal to
LinearTolerance.
.
Standard_Boolean Contains (const gp_Lin &L, const Standard_Real LinearTolerance, const Standard_Real AngularTolerance) const
 Returns true if this plane contains the line L. This means that
- the distance between point P and this plane is less
than or equal to LinearTolerance, or
- line L is normal to the "main Axis" of the local
coordinate system of this plane, within the tolerance
AngularTolerance, and the distance between the origin
of line L and this plane is less than or equal to
LinearTolerance.
.
Standard_EXPORT void Mirror (const gp_Pnt &P)
Standard_EXPORT gp_Pln Mirrored (const gp_Pnt &P) const
 Performs the symmetrical transformation of a plane with respect
to the point

which is the center of the symmetry
Warnings :
The normal direction to the plane is not changed.
The "XAxis" and the "YAxis" are reversed.
.

Standard_EXPORT void Mirror (const gp_Ax1 &A1)
Standard_EXPORT gp_Pln Mirrored (const gp_Ax1 &A1) const
 Performs the symmetrical transformation of a
plane with respect to an axis placement which is the axis
of the symmetry. The transformation is performed on the
"Location" point, on the "XAxis" and the "YAxis". The
resulting normal direction is the cross product between
the "XDirection" and the "YDirection" after transformation
if the initial plane was right handed, else it is the
opposite.
.
Standard_EXPORT void Mirror (const gp_Ax2 &A2)
Standard_EXPORT gp_Pln Mirrored (const gp_Ax2 &A2) const
 Performs the symmetrical transformation of a
plane with respect to an axis placement. The axis
placement <a2> locates the plane of the symmetry. The
transformation is performed on the "Location" point, on
the "XAxis" and the "YAxis". The resulting normal
direction is the cross product between the "XDirection"
and the "YDirection" after transformation if the initial
plane was right handed, else it is the opposite.
.
void Rotate (const gp_Ax1 &A1, const Standard_Real Ang)
gp_Pln Rotated (const gp_Ax1 &A1, const Standard_Real Ang) const
 rotates a plane. 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_Pln Scaled (const gp_Pnt &P, const Standard_Real S) const
 Scales a plane. S is the scaling value.
.
void Transform (const gp_Trsf &T)
gp_Pln Transformed (const gp_Trsf &T) const
 Transforms a plane with the transformation T from class Trsf.
The transformation is performed on the "Location"
point, on the "XAxis" and the "YAxis".
The resulting normal direction is the cross product between
the "XDirection" and the "YDirection" after transformation.
.
void Translate (const gp_Vec &V)
gp_Pln Translated (const gp_Vec &V) const
 Translates a plane 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_Pln Translated (const gp_Pnt &P1, const gp_Pnt &P2) const
 Translates a plane from the point P1 to the point P2.
.
const gp_Ax3_CSFDB_Getgp_Plnpos () const

Private Attributes

gp_Ax3 pos

Friends

Standard_EXPORT friend Handle_Standard_Type & gp_Pln_Type_ ()


Constructor & Destructor Documentation

gp_Pln::gp_Pln  )  [inline]
 

gp_Pln::gp_Pln const gp_Ax3 A3  )  [inline]
 

Standard_EXPORT gp_Pln::gp_Pln const gp_Pnt P,
const gp_Dir V
 

Standard_EXPORT gp_Pln::gp_Pln const Standard_Real  A,
const Standard_Real  B,
const Standard_Real  C,
const Standard_Real  D
 


Member Function Documentation

const gp_Ax3& gp_Pln::_CSFDB_Getgp_Plnpos  )  const [inline]
 

const gp_Ax1 & gp_Pln::Axis  )  const [inline]
 

void gp_Pln::Coefficients Standard_Real A,
Standard_Real B,
Standard_Real C,
Standard_Real D
const [inline]
 

Standard_Boolean gp_Pln::Contains const gp_Lin L,
const Standard_Real  LinearTolerance,
const Standard_Real  AngularTolerance
const [inline]
 

Standard_Boolean gp_Pln::Contains const gp_Pnt P,
const Standard_Real  LinearTolerance
const [inline]
 

Standard_Boolean gp_Pln::Direct  )  const [inline]
 

Standard_Real gp_Pln::Distance const gp_Pln Other  )  const [inline]
 

Standard_Real gp_Pln::Distance const gp_Lin L  )  const [inline]
 

Standard_Real gp_Pln::Distance const gp_Pnt P  )  const [inline]
 

const gp_Pnt & gp_Pln::Location  )  const [inline]
 

Standard_EXPORT void gp_Pln::Mirror const gp_Ax2 A2  ) 
 

Standard_EXPORT void gp_Pln::Mirror const gp_Ax1 A1  ) 
 

Standard_EXPORT void gp_Pln::Mirror const gp_Pnt P  ) 
 

Standard_EXPORT gp_Pln gp_Pln::Mirrored const gp_Ax2 A2  )  const
 

Standard_EXPORT gp_Pln gp_Pln::Mirrored const gp_Ax1 A1  )  const
 

Standard_EXPORT gp_Pln gp_Pln::Mirrored const gp_Pnt P  )  const
 

void gp_Pln::operator delete void *  anAddress  )  [inline]
 

void* gp_Pln::operator new size_t  size  )  [inline]
 

void* gp_Pln::operator new size_t  ,
void *  anAddress
[inline]
 

const gp_Ax3 & gp_Pln::Position  )  const [inline]
 

void gp_Pln::Rotate const gp_Ax1 A1,
const Standard_Real  Ang
[inline]
 

gp_Pln gp_Pln::Rotated const gp_Ax1 A1,
const Standard_Real  Ang
const [inline]
 

void gp_Pln::Scale const gp_Pnt P,
const Standard_Real  S
[inline]
 

gp_Pln gp_Pln::Scaled const gp_Pnt P,
const Standard_Real  S
const [inline]
 

void gp_Pln::SetAxis const gp_Ax1 A1  )  [inline]
 

void gp_Pln::SetLocation const gp_Pnt Loc  )  [inline]
 

void gp_Pln::SetPosition const gp_Ax3 A3  )  [inline]
 

Standard_Real gp_Pln::SquareDistance const gp_Pln Other  )  const [inline]
 

Standard_Real gp_Pln::SquareDistance const gp_Lin L  )  const [inline]
 

Standard_Real gp_Pln::SquareDistance const gp_Pnt P  )  const [inline]
 

void gp_Pln::Transform const gp_Trsf T  )  [inline]
 

gp_Pln gp_Pln::Transformed const gp_Trsf T  )  const [inline]
 

void gp_Pln::Translate const gp_Pnt P1,
const gp_Pnt P2
[inline]
 

void gp_Pln::Translate const gp_Vec V  )  [inline]
 

gp_Pln gp_Pln::Translated const gp_Pnt P1,
const gp_Pnt P2
const [inline]
 

gp_Pln gp_Pln::Translated const gp_Vec V  )  const [inline]
 

void gp_Pln::UReverse  )  [inline]
 

void gp_Pln::VReverse  )  [inline]
 

gp_Ax1 gp_Pln::XAxis  )  const [inline]
 

gp_Ax1 gp_Pln::YAxis  )  const [inline]
 


Friends And Related Function Documentation

Standard_EXPORT friend Handle_Standard_Type& gp_Pln_Type_  )  [friend]
 


Field Documentation

gp_Ax3 gp_Pln::pos [private]
 


The documentation for this class was generated from the following files:
Generated on Mon Aug 25 13:12:41 2008 for OpenCASCADE by  doxygen 1.4.1