|
OpenLexocad
27.1
|
#include <Ax2.h>
Public Member Functions | |
| Ax2 ()=default | |
| Creates an indefinite coordinate system. More... | |
| Ax2 (const Geom::Pnt &P, const Geom::Dir &N, const Geom::Dir &Vx) | |
| Ax2 (const Geom::Pnt &P, const Geom::Dir &V) | |
| Ax2 (const Geom::Pnt &aP, const Geom::Dir &aZDir, const Geom::Dir &aYDir, const Geom::Dir &aXDir) | |
| void | setAxis (const Geom::Ax1 &A1) |
| void | setDirection (const Geom::Dir &V) |
| void | setLocation (const Geom::Pnt &P) |
| Changes the "Location" point (origin) of <me>. More... | |
| void | setXDirection (const Geom::Dir &Vx) |
| void | setYDirection (const Geom::Dir &Vy) |
| double | angle (const Ax2 &Other) const |
| const Geom::Ax1 & | axis () const |
| const Geom::Dir & | direction () const |
| Returns the main direction of <me>. More... | |
| const Geom::Pnt & | location () const |
| Returns the "Location" point (origin) of <me>. More... | |
| const Geom::Dir & | xDirection () const |
| Returns the "XDirection" of <me>. More... | |
| const Geom::Dir & | yDirection () const |
| Returns the "YDirection" of <me>. More... | |
| bool | isCoplanar (const Ax2 &Other, const double LinearTolerance, const double AngularTolerance) const |
| bool | isCoplanar (const Geom::Ax1 &A1, const double LinearTolerance, const double AngularTolerance) const |
| void | mirror (const Geom::Pnt &P) |
| Ax2 | mirrored (const Geom::Pnt &P) const |
| void | mirror (const Geom::Ax1 &A1) |
| Ax2 | mirrored (const Geom::Ax1 &A1) const |
| void | mirror (const Ax2 &A2) |
| Ax2 | mirrored (const Ax2 &A2) const |
| void | rotate (const Geom::Ax1 &A1, const double Ang) |
| Ax2 | rotated (const Geom::Ax1 &A1, const double Ang) const |
| void | scale (const Geom::Pnt &P, const double S) |
| Ax2 | scaled (const Geom::Pnt &P, const double S) const |
| void | transform (const Geom::Trsf &T) |
| Ax2 | transformed (const Geom::Trsf &T) const |
| void | translate (const Geom::Vec &V) |
| Ax2 | translated (const Geom::Vec &V) const |
| void | translate (const Geom::Pnt &P1, const Geom::Pnt &P2) |
| Ax2 | translated (const Geom::Pnt &P1, const Geom::Pnt &P2) const |
| bool | isEqual (const Ax2 &Other, const double tolerance) const |
Describes a right-handed coordinate system in 3D space.
A coordinate system is defined by:
|
default |
Creates an indefinite coordinate system.
Creates an axis placement with an origin P such that:
Creates - a coordinate system with an origin P, where V
gives the "main Direction" (here, "X Direction" and "Y <br>
Direction" are defined automatically).
| Geom::Ax2::Ax2 | ( | const Geom::Pnt & | aP, |
| const Geom::Dir & | aZDir, | ||
| const Geom::Dir & | aYDir, | ||
| const Geom::Dir & | aXDir | ||
| ) |
| double Geom::Ax2::angle | ( | const Ax2 & | Other | ) | const |
Computes the angular value, in radians, between the main direction of
<me> and the main direction of <Other>. Returns the angle
between 0 and PI in radians.
| const Geom::Ax1& Geom::Ax2::axis | ( | ) | const |
Returns the main axis of <me>. It is the "Location" point
and the main "Direction".
| const Geom::Dir& Geom::Ax2::direction | ( | ) | const |
Returns the main direction of <me>.
| bool Geom::Ax2::isCoplanar | ( | const Ax2 & | Other, |
| const double | LinearTolerance, | ||
| const double | AngularTolerance | ||
| ) | const |
| bool Geom::Ax2::isCoplanar | ( | const Geom::Ax1 & | A1, |
| const double | LinearTolerance, | ||
| const double | AngularTolerance | ||
| ) | const |
Returns True if
. the distance between <me> and the "Location" point of A1
is lower of equal to LinearTolerance and
. the main direction of <me> and the direction of A1 are normal.
Note: the tolerance criterion for angular equality is given by AngularTolerance.
| bool Geom::Ax2::isEqual | ( | const Ax2 & | Other, |
| const double | tolerance | ||
| ) | const |
| const Geom::Pnt& Geom::Ax2::location | ( | ) | const |
Returns the "Location" point (origin) of <me>.
| void Geom::Ax2::mirror | ( | const Geom::Pnt & | P | ) |
Performs a symmetrical transformation of this coordinate
system with respect to:
| void Geom::Ax2::mirror | ( | const Geom::Ax1 & | A1 | ) |
Performs a symmetrical transformation of this coordinate
system with respect to:
| void Geom::Ax2::mirror | ( | const Ax2 & | A2 | ) |
Performs a symmetrical transformation of this coordinate
system with respect to:
Performs a symmetrical transformation of this coordinate
system with respect to:
Performs a symmetrical transformation of this coordinate
system with respect to:
Performs a symmetrical transformation of this coordinate
system with respect to:
| void Geom::Ax2::rotate | ( | const Geom::Ax1 & | A1, |
| const double | Ang | ||
| ) |
Rotates an axis placement. <A1> is the axis of the
rotation . Ang is the angular value of the rotation
in radians.
| void Geom::Ax2::scale | ( | const Geom::Pnt & | P, |
| const double | S | ||
| ) |
Applies a scaling transformation on the axis placement.
The "Location" point of the axisplacement is modified.
Warnings :
If the scale <S> is negative :
. the main direction of the axis placement is not changed.
. The "XDirection" and the "YDirection" are reversed.
So the axis placement stay right handed.
| void Geom::Ax2::setAxis | ( | const Geom::Ax1 & | A1 | ) |
Assigns the origin and "main Direction" of the axis A1 to
this coordinate system, then recomputes its "X Direction" and "Y Direction".
Note: The new "X Direction" is computed as follows:
new "X Direction" = V1 ^(previous "X Direction" ^ V)
where V is the "Direction" of A1.
Exceptions
Standard_ConstructionError if A1 is parallel to the "X <br>
Direction" of this coordinate system.
| void Geom::Ax2::setDirection | ( | const Geom::Dir & | V | ) |
Changes the "main Direction" of this coordinate system,
then recomputes its "X Direction" and "Y Direction".
Note: the new "X Direction" is computed as follows:
new "X Direction" = V ^ (previous "X Direction" ^ V)
Exceptions
Standard_ConstructionError if V is parallel to the "X <br>
Direction" of this coordinate system.
| void Geom::Ax2::setLocation | ( | const Geom::Pnt & | P | ) |
Changes the "Location" point (origin) of <me>.
| void Geom::Ax2::setXDirection | ( | const Geom::Dir & | Vx | ) |
Changes the "Xdirection" of <me>. The main direction
"Direction" is not modified, the "Ydirection" is modified.
If <Vx> is not normal to the main direction then <XDirection>
is computed as follows XDirection = Direction ^ (Vx ^ Direction).
Exceptions
Standard_ConstructionError if Vx or Vy is parallel to
the "main Direction" of this coordinate system.
| void Geom::Ax2::setYDirection | ( | const Geom::Dir & | Vy | ) |
Changes the "Ydirection" of <me>. The main direction is not
modified but the "Xdirection" is changed.
If <Vy> is not normal to the main direction then "YDirection"
is computed as follows
YDirection = Direction ^ (<Vy> ^ Direction).
Exceptions
Standard_ConstructionError if Vx or Vy is parallel to
the "main Direction" of this coordinate system.
| void Geom::Ax2::transform | ( | const Geom::Trsf & | T | ) |
| Ax2 Geom::Ax2::transformed | ( | const Geom::Trsf & | T | ) | const |
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.
| void Geom::Ax2::translate | ( | const Geom::Vec & | V | ) |
Translates an axis plaxement in the direction of the vector
<V>. The magnitude of the translation is the vector's magnitude.
Translates an axis placement from the point <P1> to the
point <P2>.
| const Geom::Dir& Geom::Ax2::xDirection | ( | ) | const |
Returns the "XDirection" of <me>.
| const Geom::Dir& Geom::Ax2::yDirection | ( | ) | const |
Returns the "YDirection" of <me>.