Open CASCADE Technology  6.9.0
Public Member Functions
GccAna_Lin2d2Tan Class Reference

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 thrue 2 points. Tolerance is used because we can't create a line when the distance between the two points is too small. More...
 
 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 thrue 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. More...
 
 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. More...
 
Standard_Boolean IsDone () const
 This method returns true when there is a solution and false in the other cases. More...
 
Standard_Integer NbSolutions () const
 This method returns the number of solutions. Raises NotDone if the construction algorithm didn't succeed. More...
 
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 carefull: the Index is only a way to get all the solutions, but is not associated to theses 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. More...
 
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: More...
 
void Tangency1 (const Standard_Integer Index, Standard_Real &ParSol, Standard_Real &ParArg, gp_Pnt2d &PntSol) const
 Returns informations 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. More...
 
void Tangency2 (const Standard_Integer Index, Standard_Real &ParSol, Standard_Real &ParArg, gp_Pnt2d &PntSol) const
 Returns informations 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. More...
 

Detailed Description

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:

Constructor & Destructor Documentation

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 thrue 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 thrue 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.

Member Function Documentation

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 informations 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 informations 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 carefull: the Index is only a way to get all the solutions, but is not associated to theses 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:

  • those specified at the start of construction when the solutions are defined as enclosing or outside with respect to the arguments, or
  • those computed during construction (i.e. enclosing or outside) when the solutions are defined as unqualified with respect to the arguments, or
  • GccEnt_noqualifier if the tangency argument is a point. Exceptions Standard_OutOfRange if Index is less than zero or greater than the number of solutions computed by this algorithm. StdFail_NotDone if the construction fails.

The documentation for this class was generated from the following file: