|
Open CASCADE Technology
7.7.0
|
This class provides the analytic intersection between a conic defined as an element of gp (Lin,Circ,Elips, Parab,Hypr) and a quadric as defined in the class Quadric from IntAna. The intersection between a conic and a plane is treated as a special case. More...
#include <IntAna_IntConicQuad.hxx>
Public Member Functions | |
| IntAna_IntConicQuad () | |
| Empty constructor. More... | |
| IntAna_IntConicQuad (const gp_Lin &L, const IntAna_Quadric &Q) | |
| Creates the intersection between a line and a quadric. More... | |
| void | Perform (const gp_Lin &L, const IntAna_Quadric &Q) |
| Intersects a line and a quadric. More... | |
| IntAna_IntConicQuad (const gp_Circ &C, const IntAna_Quadric &Q) | |
| Creates the intersection between a circle and a quadric. More... | |
| void | Perform (const gp_Circ &C, const IntAna_Quadric &Q) |
| Intersects a circle and a quadric. More... | |
| IntAna_IntConicQuad (const gp_Elips &E, const IntAna_Quadric &Q) | |
| Creates the intersection between an ellipse and a quadric. More... | |
| void | Perform (const gp_Elips &E, const IntAna_Quadric &Q) |
| Intersects an ellipse and a quadric. More... | |
| IntAna_IntConicQuad (const gp_Parab &P, const IntAna_Quadric &Q) | |
| Creates the intersection between a parabola and a quadric. More... | |
| void | Perform (const gp_Parab &P, const IntAna_Quadric &Q) |
| Intersects a parabola and a quadric. More... | |
| IntAna_IntConicQuad (const gp_Hypr &H, const IntAna_Quadric &Q) | |
| Creates the intersection between an hyperbola and a quadric. More... | |
| void | Perform (const gp_Hypr &H, const IntAna_Quadric &Q) |
| Intersects an hyperbola and a quadric. More... | |
| IntAna_IntConicQuad (const gp_Lin &L, const gp_Pln &P, const Standard_Real Tolang, const Standard_Real Tol=0, const Standard_Real Len=0) | |
| Intersection between a line and a plane. Tolang is used to determine if the angle between two vectors is null. Tol is used to check the distance between line and plane on the distance <Len> from the origin of the line. More... | |
| void | Perform (const gp_Lin &L, const gp_Pln &P, const Standard_Real Tolang, const Standard_Real Tol=0, const Standard_Real Len=0) |
| Intersects a line and a plane. Tolang is used to determine if the angle between two vectors is null. Tol is used to check the distance between line and plane on the distance <Len> from the origin of the line. More... | |
| IntAna_IntConicQuad (const gp_Circ &C, const gp_Pln &P, const Standard_Real Tolang, const Standard_Real Tol) | |
| Intersection between a circle and a plane. Tolang is used to determine if the angle between two vectors is null. Tol is used to determine if a distance is null. More... | |
| void | Perform (const gp_Circ &C, const gp_Pln &P, const Standard_Real Tolang, const Standard_Real Tol) |
| Intersects a circle and a plane. Tolang is used to determine if the angle between two vectors is null. Tol is used to determine if a distance is null. More... | |
| IntAna_IntConicQuad (const gp_Elips &E, const gp_Pln &P, const Standard_Real Tolang, const Standard_Real Tol) | |
| Intersection between an ellipse and a plane. Tolang is used to determine if the angle between two vectors is null. Tol is used to determine if a distance is null. More... | |
| void | Perform (const gp_Elips &E, const gp_Pln &P, const Standard_Real Tolang, const Standard_Real Tol) |
| Intersects an ellipse and a plane. Tolang is used to determine if the angle between two vectors is null. Tol is used to determine if a distance is null. More... | |
| IntAna_IntConicQuad (const gp_Parab &Pb, const gp_Pln &P, const Standard_Real Tolang) | |
| Intersection between a parabola and a plane. Tolang is used to determine if the angle between two vectors is null. More... | |
| void | Perform (const gp_Parab &Pb, const gp_Pln &P, const Standard_Real Tolang) |
| Intersects a parabola and a plane. Tolang is used to determine if the angle between two vectors is null. More... | |
| IntAna_IntConicQuad (const gp_Hypr &H, const gp_Pln &P, const Standard_Real Tolang) | |
| Intersection between an hyperbola and a plane. Tolang is used to determine if the angle between two vectors is null. More... | |
| void | Perform (const gp_Hypr &H, const gp_Pln &P, const Standard_Real Tolang) |
| Intersects an hyperbola and a plane. Tolang is used to determine if the angle between two vectors is null. More... | |
| Standard_Boolean | IsDone () const |
| Returns TRUE if the creation completed. More... | |
| Standard_Boolean | IsInQuadric () const |
| Returns TRUE if the conic is in the quadric. More... | |
| Standard_Boolean | IsParallel () const |
| Returns TRUE if the line is in a quadric which is parallel to the quadric. More... | |
| Standard_Integer | NbPoints () const |
| Returns the number of intersection point. More... | |
| const gp_Pnt & | Point (const Standard_Integer N) const |
| Returns the point of range N. More... | |
| Standard_Real | ParamOnConic (const Standard_Integer N) const |
| Returns the parameter on the line of the intersection point of range N. More... | |
This class provides the analytic intersection between a conic defined as an element of gp (Lin,Circ,Elips, Parab,Hypr) and a quadric as defined in the class Quadric from IntAna. The intersection between a conic and a plane is treated as a special case.
The result of the intersection are points (Pnt from gp), associated with the parameter on the conic.
A call to an Intersection L:Lin from gp and SPH: Sphere from gp can be written either : IntAna_IntConicQuad Inter(L,IntAna_Quadric(SPH)) or : IntAna_IntConicQuad Inter(L,SPH) (it is necessary to include IntAna_Quadric.hxx in this case)
| IntAna_IntConicQuad::IntAna_IntConicQuad | ( | ) |
Empty constructor.
| IntAna_IntConicQuad::IntAna_IntConicQuad | ( | const gp_Lin & | L, |
| const IntAna_Quadric & | Q | ||
| ) |
Creates the intersection between a line and a quadric.
| IntAna_IntConicQuad::IntAna_IntConicQuad | ( | const gp_Circ & | C, |
| const IntAna_Quadric & | Q | ||
| ) |
Creates the intersection between a circle and a quadric.
| IntAna_IntConicQuad::IntAna_IntConicQuad | ( | const gp_Elips & | E, |
| const IntAna_Quadric & | Q | ||
| ) |
Creates the intersection between an ellipse and a quadric.
| IntAna_IntConicQuad::IntAna_IntConicQuad | ( | const gp_Parab & | P, |
| const IntAna_Quadric & | Q | ||
| ) |
Creates the intersection between a parabola and a quadric.
| IntAna_IntConicQuad::IntAna_IntConicQuad | ( | const gp_Hypr & | H, |
| const IntAna_Quadric & | Q | ||
| ) |
Creates the intersection between an hyperbola and a quadric.
| IntAna_IntConicQuad::IntAna_IntConicQuad | ( | const gp_Lin & | L, |
| const gp_Pln & | P, | ||
| const Standard_Real | Tolang, | ||
| const Standard_Real | Tol = 0, |
||
| const Standard_Real | Len = 0 |
||
| ) |
Intersection between a line and a plane. Tolang is used to determine if the angle between two vectors is null. Tol is used to check the distance between line and plane on the distance <Len> from the origin of the line.
| IntAna_IntConicQuad::IntAna_IntConicQuad | ( | const gp_Circ & | C, |
| const gp_Pln & | P, | ||
| const Standard_Real | Tolang, | ||
| const Standard_Real | Tol | ||
| ) |
Intersection between a circle and a plane. Tolang is used to determine if the angle between two vectors is null. Tol is used to determine if a distance is null.
| IntAna_IntConicQuad::IntAna_IntConicQuad | ( | const gp_Elips & | E, |
| const gp_Pln & | P, | ||
| const Standard_Real | Tolang, | ||
| const Standard_Real | Tol | ||
| ) |
Intersection between an ellipse and a plane. Tolang is used to determine if the angle between two vectors is null. Tol is used to determine if a distance is null.
| IntAna_IntConicQuad::IntAna_IntConicQuad | ( | const gp_Parab & | Pb, |
| const gp_Pln & | P, | ||
| const Standard_Real | Tolang | ||
| ) |
Intersection between a parabola and a plane. Tolang is used to determine if the angle between two vectors is null.
| IntAna_IntConicQuad::IntAna_IntConicQuad | ( | const gp_Hypr & | H, |
| const gp_Pln & | P, | ||
| const Standard_Real | Tolang | ||
| ) |
Intersection between an hyperbola and a plane. Tolang is used to determine if the angle between two vectors is null.
| Standard_Boolean IntAna_IntConicQuad::IsDone | ( | ) | const |
Returns TRUE if the creation completed.
| Standard_Boolean IntAna_IntConicQuad::IsInQuadric | ( | ) | const |
Returns TRUE if the conic is in the quadric.
| Standard_Boolean IntAna_IntConicQuad::IsParallel | ( | ) | const |
Returns TRUE if the line is in a quadric which is parallel to the quadric.
| Standard_Integer IntAna_IntConicQuad::NbPoints | ( | ) | const |
Returns the number of intersection point.
| Standard_Real IntAna_IntConicQuad::ParamOnConic | ( | const Standard_Integer | N | ) | const |
Returns the parameter on the line of the intersection point of range N.
| void IntAna_IntConicQuad::Perform | ( | const gp_Lin & | L, |
| const IntAna_Quadric & | Q | ||
| ) |
Intersects a line and a quadric.
| void IntAna_IntConicQuad::Perform | ( | const gp_Circ & | C, |
| const IntAna_Quadric & | Q | ||
| ) |
Intersects a circle and a quadric.
| void IntAna_IntConicQuad::Perform | ( | const gp_Elips & | E, |
| const IntAna_Quadric & | Q | ||
| ) |
Intersects an ellipse and a quadric.
| void IntAna_IntConicQuad::Perform | ( | const gp_Parab & | P, |
| const IntAna_Quadric & | Q | ||
| ) |
Intersects a parabola and a quadric.
| void IntAna_IntConicQuad::Perform | ( | const gp_Hypr & | H, |
| const IntAna_Quadric & | Q | ||
| ) |
Intersects an hyperbola and a quadric.
| void IntAna_IntConicQuad::Perform | ( | const gp_Lin & | L, |
| const gp_Pln & | P, | ||
| const Standard_Real | Tolang, | ||
| const Standard_Real | Tol = 0, |
||
| const Standard_Real | Len = 0 |
||
| ) |
Intersects a line and a plane. Tolang is used to determine if the angle between two vectors is null. Tol is used to check the distance between line and plane on the distance <Len> from the origin of the line.
| void IntAna_IntConicQuad::Perform | ( | const gp_Circ & | C, |
| const gp_Pln & | P, | ||
| const Standard_Real | Tolang, | ||
| const Standard_Real | Tol | ||
| ) |
Intersects a circle and a plane. Tolang is used to determine if the angle between two vectors is null. Tol is used to determine if a distance is null.
| void IntAna_IntConicQuad::Perform | ( | const gp_Elips & | E, |
| const gp_Pln & | P, | ||
| const Standard_Real | Tolang, | ||
| const Standard_Real | Tol | ||
| ) |
Intersects an ellipse and a plane. Tolang is used to determine if the angle between two vectors is null. Tol is used to determine if a distance is null.
| void IntAna_IntConicQuad::Perform | ( | const gp_Parab & | Pb, |
| const gp_Pln & | P, | ||
| const Standard_Real | Tolang | ||
| ) |
Intersects a parabola and a plane. Tolang is used to determine if the angle between two vectors is null.
| void IntAna_IntConicQuad::Perform | ( | const gp_Hypr & | H, |
| const gp_Pln & | P, | ||
| const Standard_Real | Tolang | ||
| ) |
Intersects an hyperbola and a plane. Tolang is used to determine if the angle between two vectors is null.
| const gp_Pnt& IntAna_IntConicQuad::Point | ( | const Standard_Integer | N | ) | const |
Returns the point of range N.
1.8.13