Open CASCADE Technology 7.8.2.dev
GccAna_Lin2dTanPer Class Reference

This class implements the algorithms used to create 2d lines tangent to a circle or a point and perpendicular to a line or a circle. Describes functions for building a 2D line perpendicular to a line and: More...

#include <GccAna_Lin2dTanPer.hxx>

Public Member Functions

 GccAna_Lin2dTanPer (const gp_Pnt2d &ThePnt, const gp_Lin2d &TheLin)
 This method implements the algorithms used to create 2d lines passing through a point and perpendicular to a line.
 
 GccAna_Lin2dTanPer (const gp_Pnt2d &ThePnt, const gp_Circ2d &TheCircle)
 This method implements the algorithms used to create 2d lines passing through a point and perpendicular to a circle.
 
 GccAna_Lin2dTanPer (const GccEnt_QualifiedCirc &Qualified1, const gp_Lin2d &TheLin)
 This method implements the algorithms used to create 2d lines tangent to a circle and perpendicular to a line.
 
 GccAna_Lin2dTanPer (const GccEnt_QualifiedCirc &Qualified1, const gp_Circ2d &TheCircle)
 This method implements the algorithms used to create 2d lines tangent to a circle and perpendicular to a circle.
 
Standard_Boolean IsDone () const
 Returns True if the algorithm succeeded.
 
Standard_Integer NbSolutions () const
 Returns the number of solutions. Raises NotDone if the construction algorithm didn't succeed.
 
void WhichQualifier (const Standard_Integer Index, GccEnt_Position &Qualif1) const
 Returns the qualifier Qualif1 of the tangency argument for the solution of index Index computed by this algorithm. The returned qualifier is:
 
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 those outside the context of the algorithm-object. Raises NotDone if the construction algorithm didn't succeed. It raises OutOfRange if Index is greater than the number of solutions.
 
void Tangency1 (const Standard_Integer Index, Standard_Real &ParSol, Standard_Real &ParArg, gp_Pnt2d &Pnt) const
 Returns information about the tangency point between the result number Index and the first argument. ParSol is the intrinsic parameter of the point on the solution curv. ParArg is the intrinsic parameter of the point on the argument curv. If the first argument is a point ParArg is equal zero. raises NotDone if the construction algorithm didn't succeed. It raises OutOfRange if Index is greater than the number of solutions.
 
void Intersection2 (const Standard_Integer Index, Standard_Real &ParSol, Standard_Real &ParArg, gp_Pnt2d &PntSol) const
 Returns information about the intersection between the solution number Index and the second argument. It returns the first intersection in a case of Lin2dTanPer which is perpendicular to a circle . ParSol is the intrinsic parameter of the point on the solution curv. ParArg is the intrinsic parameter of the point on the argument curv. Raises NotDone if the construction algorithm didn't succeed. It raises OutOfRange if Index is greater than the number of solutions.
 

Detailed Description

This class implements the algorithms used to create 2d lines tangent to a circle or a point and perpendicular to a line or a circle. Describes functions for building a 2D line perpendicular to a line and:

  • tangential to a circle, or
  • passing through a point. A Lin2dTanPer object provides a framework for:
  • defining the construction of 2D line(s),
  • implementing the construction algorithm, and
  • consulting the result(s).

Constructor & Destructor Documentation

◆ GccAna_Lin2dTanPer() [1/4]

GccAna_Lin2dTanPer::GccAna_Lin2dTanPer ( const gp_Pnt2d & ThePnt,
const gp_Lin2d & TheLin )

This method implements the algorithms used to create 2d lines passing through a point and perpendicular to a line.

◆ GccAna_Lin2dTanPer() [2/4]

GccAna_Lin2dTanPer::GccAna_Lin2dTanPer ( const gp_Pnt2d & ThePnt,
const gp_Circ2d & TheCircle )

This method implements the algorithms used to create 2d lines passing through a point and perpendicular to a circle.

◆ GccAna_Lin2dTanPer() [3/4]

GccAna_Lin2dTanPer::GccAna_Lin2dTanPer ( const GccEnt_QualifiedCirc & Qualified1,
const gp_Lin2d & TheLin )

This method implements the algorithms used to create 2d lines tangent to a circle and perpendicular to a line.

◆ GccAna_Lin2dTanPer() [4/4]

GccAna_Lin2dTanPer::GccAna_Lin2dTanPer ( const GccEnt_QualifiedCirc & Qualified1,
const gp_Circ2d & TheCircle )

This method implements the algorithms used to create 2d lines tangent to a circle and perpendicular to a circle.

Member Function Documentation

◆ Intersection2()

void GccAna_Lin2dTanPer::Intersection2 ( const Standard_Integer Index,
Standard_Real & ParSol,
Standard_Real & ParArg,
gp_Pnt2d & PntSol ) const

Returns information about the intersection between the solution number Index and the second argument. It returns the first intersection in a case of Lin2dTanPer which is perpendicular to a circle . ParSol is the intrinsic parameter of the point on the solution curv. ParArg is the intrinsic parameter of the point on the argument curv. Raises NotDone if the construction algorithm didn't succeed. It raises OutOfRange if Index is greater than the number of solutions.

◆ IsDone()

Standard_Boolean GccAna_Lin2dTanPer::IsDone ( ) const

Returns True if the algorithm succeeded.

◆ NbSolutions()

Standard_Integer GccAna_Lin2dTanPer::NbSolutions ( ) const

Returns the number of solutions. Raises NotDone if the construction algorithm didn't succeed.

◆ Tangency1()

void GccAna_Lin2dTanPer::Tangency1 ( const Standard_Integer Index,
Standard_Real & ParSol,
Standard_Real & ParArg,
gp_Pnt2d & Pnt ) const

Returns information about the tangency point between the result number Index and the first argument. ParSol is the intrinsic parameter of the point on the solution curv. ParArg is the intrinsic parameter of the point on the argument curv. If the first argument is a point ParArg is equal zero. raises NotDone if the construction algorithm didn't succeed. It raises OutOfRange if Index is greater than the number of solutions.

◆ ThisSolution()

gp_Lin2d GccAna_Lin2dTanPer::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 those outside the context of the algorithm-object. Raises NotDone if the construction algorithm didn't succeed. It raises OutOfRange if Index is greater than the number of solutions.

◆ WhichQualifier()

void GccAna_Lin2dTanPer::WhichQualifier ( const Standard_Integer Index,
GccEnt_Position & Qualif1 ) const

Returns the qualifier Qualif1 of the tangency argument for the solution of index Index computed by this algorithm. The returned qualifier is:

  • that specified at the start of construction when the solutions are defined as enclosing or outside with respect to the argument, or
  • that computed during construction (i.e. enclosing or outside) when the solutions are defined as unqualified with respect to the argument, 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: