Open CASCADE Technology: Geom_AxisPlacement Class Reference

Open CASCADE Technology 6.9.1

- Main Page
- Related Pages
- Namespaces
- Data Structures
- Files

- Data Structures
- Data Structure Index
- Class Hierarchy
- Data Fields

Public Member Functions | Protected Attributes
Geom_AxisPlacement Class Referenceabstract

The abstract class AxisPlacement describes the common behavior of positioning systems in 3D space, such as axis or coordinate systems. The Geom package provides two implementations of 3D positioning systems: More...

`#include <Geom_AxisPlacement.hxx>`

Inheritance diagram for Geom_AxisPlacement:
[legend]

## Public Member Functions
void | SetAxis (const gp_Ax1 &A1)
| Assigns A1 as the "main Axis" of this positioning system. This modifies. More...
virtual void | SetDirection (const gp_Dir &V)=0
| Changes the direction of the axis placement. If <me> is an axis placement two axis the main "Direction" is modified and the "XDirection" and "YDirection" are recomputed. Raises ConstructionError only for an axis placement two axis if V and the previous "XDirection" are parallel because it is not possible to calculate the new "XDirection" and the new "YDirection". More...
void | SetLocation (const gp_Pnt &P)
| Assigns the point P as the origin of this positioning system. More...
Standard_Real | Angle (const Handle< Geom_AxisPlacement > &Other) const
| Computes the angular value, in radians, between the "main Direction" of this positioning system and that of positioning system Other. The result is a value between 0 and Pi. More...
const gp_Ax1 & | Axis () const
| Returns the main axis of the axis placement. For an "Axis2placement" it is the main axis (Location, Direction ). For an "Axis1Placement" this method returns a copy of <me>. More...
gp_Dir | Direction () const
| Returns the main "Direction" of an axis placement. More...
gp_Pnt | Location () const
| Returns the Location point (origin) of the axis placement. More...
Public Member Functions inherited from Geom_Geometry
void | Mirror (const gp_Pnt &P)
| Performs the symmetrical transformation of a Geometry with respect to the point P which is the center of the symmetry. More...
void | Mirror (const gp_Ax1 &A1)
| Performs the symmetrical transformation of a Geometry with respect to an axis placement which is the axis of the symmetry. More...
void | Mirror (const gp_Ax2 &A2)
| Performs the symmetrical transformation of a Geometry with respect to a plane. The axis placement A2 locates the plane of the symmetry : (Location, XDirection, YDirection). More...
void | Rotate (const gp_Ax1 &A1, const Standard_Real Ang)
| Rotates a Geometry. A1 is the axis of the rotation. Ang is the angular value of the rotation in radians. More...
void | Scale (const gp_Pnt &P, const Standard_Real S)
| Scales a Geometry. S is the scaling value. More...
void | Translate (const gp_Vec &V)
| Translates a Geometry. V is the vector of the tanslation. More...
void | Translate (const gp_Pnt &P1, const gp_Pnt &P2)
| Translates a Geometry from the point P1 to the point P2. More...
virtual void | Transform (const gp_Trsf &T)=0
| Transformation of a geometric object. This tansformation can be a translation, a rotation, a symmetry, a scaling or a complex transformation obtained by combination of the previous elementaries transformations. (see class Transformation of the package Geom). More...
Handle< Geom_Geometry > | Mirrored (const gp_Pnt &P) const
Handle< Geom_Geometry > | Mirrored (const gp_Ax1 &A1) const
Handle< Geom_Geometry > | Mirrored (const gp_Ax2 &A2) const
Handle< Geom_Geometry > | Rotated (const gp_Ax1 &A1, const Standard_Real Ang) const
Handle< Geom_Geometry > | Scaled (const gp_Pnt &P, const Standard_Real S) const
Handle< Geom_Geometry > | Transformed (const gp_Trsf &T) const
Handle< Geom_Geometry > | Translated (const gp_Vec &V) const
Handle< Geom_Geometry > | Translated (const gp_Pnt &P1, const gp_Pnt &P2) const
virtual Handle< Geom_Geometry > | Copy () const =0
| Creates a new object which is a copy of this geometric object. More...
Public Member Functions inherited from MMgt_TShared
virtual void | Delete () const
| Memory deallocator for transient classes. More...
Public Member Functions inherited from Standard_Transient
| Standard_Transient ()
| Empty constructor. More...
| Standard_Transient (const Standard_Transient &)
| Copy constructor – does nothing. More...
Standard_Transient & | operator= (const Standard_Transient &)
| Assignment operator, needed to avoid copying reference counter. More...
virtual | ~Standard_Transient ()
| Destructor must be virtual. More...
virtual const Handle_Standard_Type & | DynamicType () const
| Returns a type information object about this object. More...
Standard_Boolean | IsInstance (const Handle_Standard_Type &theType) const
| Returns a true value if this is an instance of Type. More...
Standard_Boolean | IsInstance (const Standard_CString theTypeName) const
| Returns a true value if this is an instance of TypeName. More...
Standard_Boolean | IsKind (const Handle_Standard_Type &theType) const
| Returns true if this is an instance of Type or an instance of any class that inherits from Type. Note that multiple inheritance is not supported by OCCT RTTI mechanism. More...
Standard_Boolean | IsKind (const Standard_CString theTypeName) const
| Returns true if this is an instance of TypeName or an instance of any class that inherits from TypeName. Note that multiple inheritance is not supported by OCCT RTTI mechanism. More...
virtual Handle_Standard_Transient | This () const
| Returns a Handle which references this object. Must never be called to objects created in stack. More...
Standard_Integer | GetRefCount () const
| Get the reference counter of this object. More...

## Protected Attributes
gp_Ax1 | axis

## Detailed Description

The abstract class AxisPlacement describes the common behavior of positioning systems in 3D space, such as axis or coordinate systems. The Geom package provides two implementations of 3D positioning systems:

- the axis (Geom_Axis1Placement class), which is defined by:
- its origin, also termed the "Location point" of the axis,
- its unit vector, termed the "Direction" or "main Direction" of the axis;
- the right-handed coordinate system (Geom_Axis2Placement class), which is defined by:
- its origin, also termed the "Location point" of the coordinate system,
- three orthogonal unit vectors, termed respectively the "X Direction", the "Y Direction" and the "Direction" of the coordinate system. As the coordinate system is right-handed, these unit vectors have the following relation: "Direction" = "X Direction" ^ "Y Direction". The "Direction" is also called the "main Direction" because, when the unit vector is modified, the "X Direction" and "Y Direction" are recomputed, whereas when the "X Direction" or "Y Direction" is modified, the "main Direction" does not change. The axis whose origin is the origin of the positioning system and whose unit vector is its "main Direction" is also called the "Axis" or "main Axis" of the positioning system.

## Member Function Documentation

Standard_Real Geom_AxisPlacement::Angle | ( | const Handle< Geom_AxisPlacement > & | Other | ) | const

Computes the angular value, in radians, between the "main Direction" of this positioning system and that of positioning system Other. The result is a value between 0 and Pi.

const gp_Ax1& Geom_AxisPlacement::Axis | ( |  | ) | const

Returns the main axis of the axis placement. For an "Axis2placement" it is the main axis (Location, Direction ). For an "Axis1Placement" this method returns a copy of <me>.

gp_Dir Geom_AxisPlacement::Direction | ( |  | ) | const

Returns the main "Direction" of an axis placement.

gp_Pnt Geom_AxisPlacement::Location | ( |  | ) | const

Returns the Location point (origin) of the axis placement.

void Geom_AxisPlacement::SetAxis | ( | const gp_Ax1 & | A1 | ) |

Assigns A1 as the "main Axis" of this positioning system. This modifies.

- its origin, and
- its "main Direction". If this positioning system is a Geom_Axis2Placement, then its "X Direction" and "Y Direction" are recomputed. Exceptions For a Geom_Axis2Placement: Standard_ConstructionError if A1 and the previous "X Direction" of the coordinate system are parallel.

virtual void Geom_AxisPlacement::SetDirection | ( | const gp_Dir & | V | ) |
| pure virtual

Changes the direction of the axis placement. If <me> is an axis placement two axis the main "Direction" is modified and the "XDirection" and "YDirection" are recomputed. Raises ConstructionError only for an axis placement two axis if V and the previous "XDirection" are parallel because it is not possible to calculate the new "XDirection" and the new "YDirection".

Implemented in Geom_Axis2Placement, and Geom_Axis1Placement.

void Geom_AxisPlacement::SetLocation | ( | const gp_Pnt & | P | ) |

Assigns the point P as the origin of this positioning system.

## Field Documentation

gp_Ax1 Geom_AxisPlacement::axis
| protected

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

- Geom_AxisPlacement.hxx