Open CASCADE Technology 7.8.2.dev
|
This class implements the algorithms used to create 2d lines tangent to 2 other elements which can be circles or points. Describes functions for building a 2D line: More...
#include <GccAna_Lin2d2Tan.hxx>
Public Member Functions | |
GccAna_Lin2d2Tan (const gp_Pnt2d &ThePoint1, const gp_Pnt2d &ThePoint2, const Standard_Real Tolerance) | |
This methods implements the algorithms used to create 2d lines passing through 2 points. Tolerance is used because we can't create a line when the distance between the two points is too small. | |
GccAna_Lin2d2Tan (const GccEnt_QualifiedCirc &Qualified1, const gp_Pnt2d &ThePoint, const Standard_Real Tolerance) | |
This methods implements the algorithms used to create 2d lines tangent to one circle and passing through a point. Exception BadQualifier is raised in the case of EnclosedCirc Tolerance is used because there is no solution when the point is inside the solution according to the tolerance. | |
GccAna_Lin2d2Tan (const GccEnt_QualifiedCirc &Qualified1, const GccEnt_QualifiedCirc &Qualified2, const Standard_Real Tolerance) | |
This methods implements the algorithms used to create 2d lines tangent to 2 circles. Exception BadQualifier is raised in the case of EnclosedCirc. | |
Standard_Boolean | IsDone () const |
This method returns true when there is a solution and false in the other cases. | |
Standard_Integer | NbSolutions () const |
This method returns the number of solutions. Raises NotDone if the construction algorithm didn't succeed. | |
gp_Lin2d | ThisSolution (const Standard_Integer Index) const |
Returns the solution number Index and raises OutOfRange exception if Index is greater than the number of solutions. Be careful: the Index is only a way to get all the solutions, but is not associated to these outside the context of the algorithm-object. Raises OutOfRange is raised if Index is greater than the number of solutions. It raises NotDone if the algorithm failed. | |
void | WhichQualifier (const Standard_Integer Index, GccEnt_Position &Qualif1, GccEnt_Position &Qualif2) const |
Returns the qualifiers Qualif1 and Qualif2 of the tangency arguments for the solution of index Index computed by this algorithm. The returned qualifiers are: | |
void | Tangency1 (const Standard_Integer Index, Standard_Real &ParSol, Standard_Real &ParArg, gp_Pnt2d &PntSol) const |
Returns information about the tangency point between the result number Index and the first argument. ParSol is the intrinsic parameter of the point PntSol on the solution curv. ParArg is the intrinsic parameter of the point PntSol on the argument curv. Raises OutOfRange is raised if Index is greater than the number of solutions. It raises NotDone if the algorithm failed. | |
void | Tangency2 (const Standard_Integer Index, Standard_Real &ParSol, Standard_Real &ParArg, gp_Pnt2d &PntSol) const |
Returns information about the tangency point between the result number Index and the second argument. ParSol is the intrinsic parameter of the point ParSol on the solution curv. ParArg is the intrinsic parameter of the point PntSol on the argument curv. Raises OutOfRange is raised if Index is greater than the number of solutions. It raises NotDone if the algorithm failed. | |
This class implements the algorithms used to create 2d lines tangent to 2 other elements which can be circles or points. Describes functions for building a 2D line:
GccAna_Lin2d2Tan::GccAna_Lin2d2Tan | ( | const gp_Pnt2d & | ThePoint1, |
const gp_Pnt2d & | ThePoint2, | ||
const Standard_Real | Tolerance ) |
This methods implements the algorithms used to create 2d lines passing through 2 points. Tolerance is used because we can't create a line when the distance between the two points is too small.
GccAna_Lin2d2Tan::GccAna_Lin2d2Tan | ( | const GccEnt_QualifiedCirc & | Qualified1, |
const gp_Pnt2d & | ThePoint, | ||
const Standard_Real | Tolerance ) |
This methods implements the algorithms used to create 2d lines tangent to one circle and passing through a point. Exception BadQualifier is raised in the case of EnclosedCirc Tolerance is used because there is no solution when the point is inside the solution according to the tolerance.
GccAna_Lin2d2Tan::GccAna_Lin2d2Tan | ( | const GccEnt_QualifiedCirc & | Qualified1, |
const GccEnt_QualifiedCirc & | Qualified2, | ||
const Standard_Real | Tolerance ) |
This methods implements the algorithms used to create 2d lines tangent to 2 circles. Exception BadQualifier is raised in the case of EnclosedCirc.
Standard_Boolean GccAna_Lin2d2Tan::IsDone | ( | ) | const |
This method returns true when there is a solution and false in the other cases.
Standard_Integer GccAna_Lin2d2Tan::NbSolutions | ( | ) | const |
This method returns the number of solutions. Raises NotDone if the construction algorithm didn't succeed.
void GccAna_Lin2d2Tan::Tangency1 | ( | const Standard_Integer | Index, |
Standard_Real & | ParSol, | ||
Standard_Real & | ParArg, | ||
gp_Pnt2d & | PntSol ) const |
Returns information about the tangency point between the result number Index and the first argument. ParSol is the intrinsic parameter of the point PntSol on the solution curv. ParArg is the intrinsic parameter of the point PntSol on the argument curv. Raises OutOfRange is raised if Index is greater than the number of solutions. It raises NotDone if the algorithm failed.
void GccAna_Lin2d2Tan::Tangency2 | ( | const Standard_Integer | Index, |
Standard_Real & | ParSol, | ||
Standard_Real & | ParArg, | ||
gp_Pnt2d & | PntSol ) const |
Returns information about the tangency point between the result number Index and the second argument. ParSol is the intrinsic parameter of the point ParSol on the solution curv. ParArg is the intrinsic parameter of the point PntSol on the argument curv. Raises OutOfRange is raised if Index is greater than the number of solutions. It raises NotDone if the algorithm failed.
gp_Lin2d GccAna_Lin2d2Tan::ThisSolution | ( | const Standard_Integer | Index | ) | const |
Returns the solution number Index and raises OutOfRange exception if Index is greater than the number of solutions. Be careful: the Index is only a way to get all the solutions, but is not associated to these outside the context of the algorithm-object. Raises OutOfRange is raised if Index is greater than the number of solutions. It raises NotDone if the algorithm failed.
void GccAna_Lin2d2Tan::WhichQualifier | ( | const Standard_Integer | Index, |
GccEnt_Position & | Qualif1, | ||
GccEnt_Position & | Qualif2 ) const |
Returns the qualifiers Qualif1 and Qualif2 of the tangency arguments for the solution of index Index computed by this algorithm. The returned qualifiers are: