OpenLexocad
28.0
|
#include <Circ.h>
Public Member Functions | |
Circ () | |
Creates an indefinite circle. More... | |
Circ (const Geom::Ax2 &A2, const double Radius) | |
void | setAxis (const Geom::Ax1 &A1) |
void | setLocation (const Geom::Pnt &P) |
Changes the "Location" point (center) of the circle. More... | |
void | setPosition (const Geom::Ax2 &A2) |
Changes the position of the circle. More... | |
void | setRadius (const double Radius) |
double | area () const |
Computes the area of the circle. More... | |
const Geom::Ax1 & | axis () const |
double | length () const |
Computes the circumference of the circle. More... | |
const Geom::Pnt & | location () const |
const Geom::Ax2 & | position () const |
double | radius () const |
Returns the radius of this circle. More... | |
Geom::Ax1 | xAxis () const |
Geom::Ax1 | yAxis () const |
double | distance (const Geom::Pnt &P) const |
double | squareDistance (const Geom::Pnt &P) const |
Computes the square distance between <me> and the point P. More... | |
bool | contains (const Geom::Pnt &P, const double LinearTolerance) const |
void | mirror (const Geom::Pnt &P) |
Geom::Circ | mirrored (const Geom::Pnt &P) const |
void | mirror (const Geom::Ax1 &A1) |
Geom::Circ | mirrored (const Geom::Ax1 &A1) const |
void | mirror (const Geom::Ax2 &A2) |
Geom::Circ | mirrored (const Geom::Ax2 &A2) const |
void | rotate (const Geom::Ax1 &A1, const double Ang) |
Geom::Circ | rotated (const Geom::Ax1 &A1, const double Ang) const |
void | scale (const Geom::Pnt &P, const double S) |
Geom::Circ | scaled (const Geom::Pnt &P, const double S) const |
void | transform (const Geom::Trsf &T) |
Geom::Circ | transformed (const Geom::Trsf &T) const |
Transforms a circle with the transformation T from class Trsf. More... | |
void | translate (const Geom::Vec &V) |
Geom::Circ | translated (const Geom::Vec &V) const |
void | translate (const Geom::Pnt &P1, const Geom::Pnt &P2) |
Geom::Circ | translated (const Geom::Pnt &P1, const Geom::Pnt &P2) const |
Translates a circle from the point P1 to the point P2. More... | |
Describes a circle in 3D space.
A circle is defined by its radius and positioned in space
with a coordinate system (a Geom::Ax2 object) as follows:
Geom::Circ::Circ | ( | ) |
Creates an indefinite circle.
Geom::Circ::Circ | ( | const Geom::Ax2 & | A2, |
const double | Radius | ||
) |
A2 locates the circle and gives its orientation in 3D space.
Warnings :
It is not forbidden to create a circle with Radius = 0.0 Raises ConstructionError if Radius < 0.0
double Geom::Circ::area | ( | ) | const |
Computes the area of the circle.
const Geom::Ax1& Geom::Circ::axis | ( | ) | const |
Returns the main axis of the circle.
It is the axis perpendicular to the plane of the circle,
passing through the "Location" point (center) of the circle.
bool Geom::Circ::contains | ( | const Geom::Pnt & | P, |
const double | LinearTolerance | ||
) | const |
Returns True if the point P is on the circumference.
The distance between <me> and
must be lower or
equal to LinearTolerance.
double Geom::Circ::distance | ( | const Geom::Pnt & | P | ) | const |
Computes the minimum of distance between the point P and
any point on the circumference of the circle.
double Geom::Circ::length | ( | ) | const |
Computes the circumference of the circle.
const Geom::Pnt& Geom::Circ::location | ( | ) | const |
Returns the center of the circle. It is the
"Location" point of the local coordinate system
of the circle
void Geom::Circ::mirror | ( | const Geom::Ax1 & | A1 | ) |
void Geom::Circ::mirror | ( | const Geom::Ax2 & | A2 | ) |
void Geom::Circ::mirror | ( | const Geom::Pnt & | P | ) |
Geom::Circ Geom::Circ::mirrored | ( | const Geom::Ax1 & | A1 | ) | const |
Performs the symmetrical transformation of a circle with
respect to an axis placement which is the axis of the
symmetry.
Geom::Circ Geom::Circ::mirrored | ( | const Geom::Ax2 & | A2 | ) | const |
Performs the symmetrical transformation of a circle with respect
to a plane. The axis placement A2 locates the plane of the
of the symmetry : (Location, XDirection, YDirection).
Geom::Circ Geom::Circ::mirrored | ( | const Geom::Pnt & | P | ) | const |
Performs the symmetrical transformation of a circle
with respect to the point P which is the center of the
symmetry.
const Geom::Ax2& Geom::Circ::position | ( | ) | const |
Returns the position of the circle.
It is the local coordinate system of the circle.
double Geom::Circ::radius | ( | ) | const |
Returns the radius of this circle.
void Geom::Circ::rotate | ( | const Geom::Ax1 & | A1, |
const double | Ang | ||
) |
Geom::Circ Geom::Circ::rotated | ( | const Geom::Ax1 & | A1, |
const double | Ang | ||
) | const |
Rotates a circle. A1 is the axis of the rotation.
Ang is the angular value of the rotation in radians.
void Geom::Circ::scale | ( | const Geom::Pnt & | P, |
const double | S | ||
) |
Geom::Circ Geom::Circ::scaled | ( | const Geom::Pnt & | P, |
const double | S | ||
) | const |
Scales a circle. S is the scaling value.
Warnings :
If S is negative the radius stay positive but
the "XAxis" and the "YAxis" are reversed as for
an ellipse.
void Geom::Circ::setAxis | ( | const Geom::Ax1 & | A1 | ) |
Changes the main axis of the circle. It is the axis
perpendicular to the plane of the circle.
Raises ConstructionError if the direction of A1
is parallel to the "XAxis" of the circle.
void Geom::Circ::setLocation | ( | const Geom::Pnt & | P | ) |
Changes the "Location" point (center) of the circle.
void Geom::Circ::setPosition | ( | const Geom::Ax2 & | A2 | ) |
Changes the position of the circle.
void Geom::Circ::setRadius | ( | const double | Radius | ) |
Modifies the radius of this circle.
Warning. This class does not prevent the creation of a circle where Radius is null.
Exceptions
Standard_ConstructionError if Radius is negative.
double Geom::Circ::squareDistance | ( | const Geom::Pnt & | P | ) | const |
Computes the square distance between <me> and the point P.
void Geom::Circ::transform | ( | const Geom::Trsf & | T | ) |
Geom::Circ Geom::Circ::transformed | ( | const Geom::Trsf & | T | ) | const |
Transforms a circle with the transformation T from class Trsf.
void Geom::Circ::translate | ( | const Geom::Vec & | V | ) |
Geom::Circ Geom::Circ::translated | ( | const Geom::Pnt & | P1, |
const Geom::Pnt & | P2 | ||
) | const |
Translates a circle from the point P1 to the point P2.
Geom::Circ Geom::Circ::translated | ( | const Geom::Vec & | V | ) | const |
Translates a circle in the direction of the vector V.
The magnitude of the translation is the vector's magnitude.
Geom::Ax1 Geom::Circ::xAxis | ( | ) | const |
Returns the "XAxis" of the circle.
This axis is perpendicular to the axis of the conic.
This axis and the "Yaxis" define the plane of the conic.
Geom::Ax1 Geom::Circ::yAxis | ( | ) | const |
Returns the "YAxis" of the circle.
This axis and the "Xaxis" define the plane of the conic.
The "YAxis" is perpendicular to the "Xaxis".