Describes a right-handed 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. | |
| 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. | |
| void | SetAx2 (const gp_Ax2 &A2) |
| Assigns the origin and the three unit vectors of A2 to this coordinate system. | |
| 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). | |
| 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. | |
| 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. | |
| gp_Ax2 | Ax2 () const |
| Returns a non transient copy of <me>. | |
| const gp_Dir & | XDirection () const |
| Returns the "XDirection". This is a unit vector. | |
| const gp_Dir & | YDirection () const |
| Returns the "YDirection". This is a unit vector. | |
| 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. | |
| Handle< Geom_Geometry > | Copy () const override |
| Creates a new object which is a copy of this coordinate system. | |
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. | |
| void | SetLocation (const gp_Pnt &P) |
| Assigns the point P as the origin of this positioning system. | |
| 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. | |
| 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>. | |
| gp_Dir | Direction () const |
| Returns the main "Direction" of an axis placement. | |
| gp_Pnt | Location () const |
| Returns the Location point (origin) of the axis placement. | |
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. | |
| 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. | |
| 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). | |
| 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. | |
| void | Scale (const gp_Pnt &P, const Standard_Real S) |
| Scales a Geometry. S is the scaling value. | |
| void | Translate (const gp_Vec &V) |
| Translates a Geometry. V is the vector of the translation. | |
| void | Translate (const gp_Pnt &P1, const gp_Pnt &P2) |
| Translates a Geometry from the point P1 to the point P2. | |
| 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 void | DumpJson (Standard_OStream &theOStream, Standard_Integer theDepth=-1) const |
| Dumps the content of me into the stream. | |
Public Member Functions inherited from Standard_Transient | |
| Standard_Transient () | |
| Empty constructor. | |
| Standard_Transient (const Standard_Transient &) | |
| Copy constructor – does nothing. | |
| Standard_Transient & | operator= (const Standard_Transient &) |
| Assignment operator, needed to avoid copying reference counter. | |
| virtual | ~Standard_Transient () |
| Destructor must be virtual. | |
| virtual const opencascade::handle< Standard_Type > & | DynamicType () const |
| Returns a type descriptor about this object. | |
| Standard_Boolean | IsInstance (const opencascade::handle< Standard_Type > &theType) const |
| Returns a true value if this is an instance of Type. | |
| Standard_Boolean | IsInstance (const Standard_CString theTypeName) const |
| Returns a true value if this is an instance of TypeName. | |
| 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. | |
| 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. | |
| Standard_Transient * | This () const |
| Returns non-const 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. | |
| Standard_Integer | GetRefCount () const noexcept |
| Get the reference counter of this object. | |
| void | IncrementRefCounter () noexcept |
| Increments the reference counter of this object. | |
| Standard_Integer | DecrementRefCounter () noexcept |
| Decrements the reference counter of this object; returns the decremented value. | |
| virtual void | Delete () const |
| Memory deallocator for transient classes. | |
Additional Inherited Members | |
| typedef void | base_type |
| Returns a type descriptor about this object. | |
| static constexpr const char * | get_type_name () |
| Returns a type descriptor about this object. | |
| static const opencascade::handle< Standard_Type > & | get_type_descriptor () |
| Returns type descriptor of Standard_Transient class. | |
Protected Attributes inherited from Geom_AxisPlacement | |
| gp_Ax1 | axis |
Describes a right-handed 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.