Open CASCADE Technology
7.3.0

Describes a righthanded coordinate system in 3D space. A coordinate system is defined by: More...
#include <Geom_Axis2Placement.hxx>
Public Member Functions  
Geom_Axis2Placement (const gp_Ax2 &A2)  
Returns a transient copy of A2. More...  
Geom_Axis2Placement (const gp_Pnt &P, const gp_Dir &N, const gp_Dir &Vx)  
P is the origin of the axis placement, N is the main direction of the axis placement and Vx is the "XDirection". If the two directions N and Vx are not orthogonal the "XDirection" is computed as follow : XDirection = N ^ (Vx ^ N). Raised if N and Vx are parallel. More...  
void  SetAx2 (const gp_Ax2 &A2) 
Assigns the origin and the three unit vectors of A2 to this coordinate system. More...  
void  SetDirection (const gp_Dir &V) override 
Changes the main direction of the axis placement. The "Xdirection" is modified : New XDirection = V ^ (Previous_Xdirection ^ V). More...  
void  SetXDirection (const gp_Dir &Vx) 
Changes the "XDirection" of the axis placement, Vx is the new "XDirection". If Vx is not normal to the main direction then "XDirection" is computed as follow : XDirection = Direction ^ ( Vx ^ Direction). The main direction is not modified. Raised if Vx and "Direction" are parallel. More...  
void  SetYDirection (const gp_Dir &Vy) 
Changes the "YDirection" of the axis placement, Vy is the new "YDirection". If Vy is not normal to the main direction then "YDirection" is computed as follow : YDirection = Direction ^ ( Vy ^ Direction). The main direction is not modified. The "XDirection" is modified. Raised if Vy and the main direction are parallel. More...  
gp_Ax2  Ax2 () const 
Returns a non transient copy of <me>. More...  
const gp_Dir &  XDirection () const 
Returns the "XDirection". This is a unit vector. More...  
const gp_Dir &  YDirection () const 
Returns the "YDirection". This is a unit vector. More...  
void  Transform (const gp_Trsf &T) override 
Transforms an axis placement with a Trsf. The "Location" point, the "XDirection" and the "YDirection" are transformed with T. The resulting main "Direction" of <me> is the cross product between the "XDirection" and the "YDirection" after transformation. More...  
Handle< Geom_Geometry >  Copy () const override 
Creates a new object which is a copy of this coordinate system. More...  
Public Member Functions inherited from Geom_AxisPlacement  
void  SetAxis (const gp_Ax1 &A1) 
Assigns A1 as the "main Axis" of this positioning system. This modifies. 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...  
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 
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 void  Delete () const 
Memory deallocator for transient classes. More...  
virtual const opencascade::handle< Standard_Type > &  DynamicType () const 
Returns a type descriptor about this object. More...  
Standard_Boolean  IsInstance (const opencascade::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 opencascade::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...  
Standard_Transient *  This () const 
Returns nonconst pointer to this object (like const_cast). For protection against creating handle to objects allocated in stack or call from constructor, it will raise exception Standard_ProgramError if reference counter is zero. More...  
Standard_Integer  GetRefCount () const 
Get the reference counter of this object. More...  
void  IncrementRefCounter () const 
Increments the reference counter of this object. More...  
Standard_Integer  DecrementRefCounter () const 
Decrements the reference counter of this object; returns the decremented value. More...  
Additional Inherited Members  
Public Types inherited from Standard_Transient  
typedef void  base_type 
Returns a type descriptor about this object. More...  
Static Public Member Functions inherited from Standard_Transient  
static const char *  get_type_name () 
Returns a type descriptor about this object. More...  
static const opencascade::handle< Standard_Type > &  get_type_descriptor () 
Returns type descriptor of Standard_Transient class. More...  
Protected Attributes inherited from Geom_AxisPlacement  
gp_Ax1  axis 
Describes a righthanded coordinate system in 3D space. A coordinate system is defined by:
Geom_Axis2Placement::Geom_Axis2Placement  (  const gp_Ax2 &  A2  ) 
Returns a transient copy of A2.
P is the origin of the axis placement, N is the main direction of the axis placement and Vx is the "XDirection". If the two directions N and Vx are not orthogonal the "XDirection" is computed as follow : XDirection = N ^ (Vx ^ N). Raised if N and Vx are parallel.
gp_Ax2 Geom_Axis2Placement::Ax2  (  )  const 
Returns a non transient copy of <me>.

overridevirtual 
Creates a new object which is a copy of this coordinate system.
Implements Geom_Geometry.
void Geom_Axis2Placement::SetAx2  (  const gp_Ax2 &  A2  ) 
Assigns the origin and the three unit vectors of A2 to this coordinate system.

overridevirtual 
Changes the main direction of the axis placement. The "Xdirection" is modified : New XDirection = V ^ (Previous_Xdirection ^ V).
Raised if V and the previous "XDirection" are parallel because it is impossible to calculate the new "XDirection" and the new "YDirection".
Implements Geom_AxisPlacement.
void Geom_Axis2Placement::SetXDirection  (  const gp_Dir &  Vx  ) 
Changes the "XDirection" of the axis placement, Vx is the new "XDirection". If Vx is not normal to the main direction then "XDirection" is computed as follow : XDirection = Direction ^ ( Vx ^ Direction). The main direction is not modified. Raised if Vx and "Direction" are parallel.
void Geom_Axis2Placement::SetYDirection  (  const gp_Dir &  Vy  ) 
Changes the "YDirection" of the axis placement, Vy is the new "YDirection". If Vy is not normal to the main direction then "YDirection" is computed as follow : YDirection = Direction ^ ( Vy ^ Direction). The main direction is not modified. The "XDirection" is modified. Raised if Vy and the main direction are parallel.

overridevirtual 
Transforms an axis placement with a Trsf. The "Location" point, the "XDirection" and the "YDirection" are transformed with T. The resulting main "Direction" of <me> is the cross product between the "XDirection" and the "YDirection" after transformation.
Implements Geom_Geometry.
const gp_Dir& Geom_Axis2Placement::XDirection  (  )  const 
Returns the "XDirection". This is a unit vector.
const gp_Dir& Geom_Axis2Placement::YDirection  (  )  const 
Returns the "YDirection". This is a unit vector.