Open CASCADE Technology
7.1.0.beta

Definition of an intersection line between two surfaces. A line may be either geometric : line, circle, ellipse, parabola, hyperbola, as defined in the class GLine, or analytic, as defined in the class ALine, or defined by a set of points (coming from a walking algorithm) as defined in the class WLine. More...
#include <IntPatch_Line.hxx>
Public Member Functions  
void  SetValue (const Standard_Boolean Uiso1, const Standard_Boolean Viso1, const Standard_Boolean Uiso2, const Standard_Boolean Viso2) 
To set the values returned by IsUIsoS1,.... The default values are False. More...  
IntPatch_IType  ArcType () const 
Returns the type of geometry 3d (Line, Circle, Parabola, Hyperbola, Ellipse, Analytic, Walking, Restriction) More...  
Standard_Boolean  IsTangent () const 
Returns TRUE if the intersection is a line of tangency between the 2 patches. More...  
IntSurf_TypeTrans  TransitionOnS1 () const 
Returns the type of the transition of the line for the first surface. The transition is "constant" along the line. The transition is IN if the line is oriented in such a way that the system of vector (N1,N2,T) is righthanded, where N1 is the normal to the first surface at a point P, N2 is the normal to the second surface at a point P, T is the tangent to the intersection line at P. If the system of vector is lefthanded, the transition is OUT. When N1 and N2 are colinear all along the intersection line, the transition will be. More...  
IntSurf_TypeTrans  TransitionOnS2 () const 
Returns the type of the transition of the line for the second surface. The transition is "constant" along the line. More...  
IntSurf_Situation  SituationS1 () const 
Returns the situation (INSIDE/OUTSIDE/UNKNOWN) of the first patch compared to the second one, when TransitionOnS1 or TransitionOnS2 returns TOUCH. Otherwise, an exception is raised. More...  
IntSurf_Situation  SituationS2 () const 
Returns the situation (INSIDE/OUTSIDE/UNKNOWN) of the second patch compared to the first one, when TransitionOnS1 or TransitionOnS2 returns TOUCH. Otherwise, an exception is raised. More...  
Standard_Boolean  IsUIsoOnS1 () const 
Returns TRUE if the intersection is a U isoparametric curve on the first patch. More...  
Standard_Boolean  IsVIsoOnS1 () const 
Returns TRUE if the intersection is a V isoparametric curve on the first patch. More...  
Standard_Boolean  IsUIsoOnS2 () const 
Returns TRUE if the intersection is a U isoparametric curve on the second patch. More...  
Standard_Boolean  IsVIsoOnS2 () const 
Returns TRUE if the intersection is a V isoparametric curve on the second patch. More...  
Public Member Functions inherited from MMgt_TShared  
virtual void  Delete () const override 
Memory deallocator for transient classes. More...  
Public Member Functions inherited from Standard_Transient  
Standard_Transient ()  
Empty constructor. More...  
Standard_Transient (const Standard_Transient &)  
Copy constructor – does nothing. More...  
Standard_Transient &  operator= (const Standard_Transient &) 
Assignment operator, needed to avoid copying reference counter. More...  
virtual  ~Standard_Transient () 
Destructor must be virtual. More...  
virtual const opencascade::handle< Standard_Type > &  DynamicType () const 
Returns a type descriptor about this object. More...  
Standard_Boolean  IsInstance (const opencascade::handle< Standard_Type > &theType) const 
Returns a true value if this is an instance of Type. More...  
Standard_Boolean  IsInstance (const Standard_CString theTypeName) const 
Returns a true value if this is an instance of TypeName. More...  
Standard_Boolean  IsKind (const opencascade::handle< Standard_Type > &theType) const 
Returns true if this is an instance of Type or an instance of any class that inherits from Type. Note that multiple inheritance is not supported by OCCT RTTI mechanism. More...  
Standard_Boolean  IsKind (const Standard_CString theTypeName) const 
Returns true if this is an instance of TypeName or an instance of any class that inherits from TypeName. Note that multiple inheritance is not supported by OCCT RTTI mechanism. More...  
Standard_Transient *  This () const 
Returns nonconst pointer to this object (like const_cast). For protection against creating handle to objects allocated in stack or call from constructor, it will raise exception Standard_ProgramError if reference counter is zero. More...  
Standard_Integer  GetRefCount () const 
Get the reference counter of this object. More...  
void  IncrementRefCounter () const 
Increments the reference counter of this object. More...  
Standard_Integer  DecrementRefCounter () const 
Decrements the reference counter of this object; returns the decremented value. More...  
Protected Member Functions  
IntPatch_Line (const Standard_Boolean Tang, const IntSurf_TypeTrans Trans1, const IntSurf_TypeTrans Trans2)  
To initialize the fields, when the transitions are In or Out. More...  
IntPatch_Line (const Standard_Boolean Tang, const IntSurf_Situation Situ1, const IntSurf_Situation Situ2)  
To initialize the fields, when the transitions are Touch. More...  
IntPatch_Line (const Standard_Boolean Tang)  
To initialize the fields, when the transitions are Undecided. More...  
Protected Attributes  
IntPatch_IType  typ 
Additional Inherited Members  
Public Types inherited from Standard_Transient  
typedef void  base_type 
Returns a type descriptor about this object. More...  
Static Public Member Functions inherited from Standard_Transient  
static const char *  get_type_name () 
Returns a type descriptor about this object. More...  
static const opencascade::handle< Standard_Type > &  get_type_descriptor () 
Returns type descriptor of Standard_Transient class. More...  
Definition of an intersection line between two surfaces. A line may be either geometric : line, circle, ellipse, parabola, hyperbola, as defined in the class GLine, or analytic, as defined in the class ALine, or defined by a set of points (coming from a walking algorithm) as defined in the class WLine.

protected 
To initialize the fields, when the transitions are In or Out.

protected 
To initialize the fields, when the transitions are Touch.

protected 
To initialize the fields, when the transitions are Undecided.
IntPatch_IType IntPatch_Line::ArcType  (  )  const 
Returns the type of geometry 3d (Line, Circle, Parabola, Hyperbola, Ellipse, Analytic, Walking, Restriction)
Standard_Boolean IntPatch_Line::IsTangent  (  )  const 
Returns TRUE if the intersection is a line of tangency between the 2 patches.
Standard_Boolean IntPatch_Line::IsUIsoOnS1  (  )  const 
Returns TRUE if the intersection is a U isoparametric curve on the first patch.
Standard_Boolean IntPatch_Line::IsUIsoOnS2  (  )  const 
Returns TRUE if the intersection is a U isoparametric curve on the second patch.
Standard_Boolean IntPatch_Line::IsVIsoOnS1  (  )  const 
Returns TRUE if the intersection is a V isoparametric curve on the first patch.
Standard_Boolean IntPatch_Line::IsVIsoOnS2  (  )  const 
Returns TRUE if the intersection is a V isoparametric curve on the second patch.
void IntPatch_Line::SetValue  (  const Standard_Boolean  Uiso1, 
const Standard_Boolean  Viso1,  
const Standard_Boolean  Uiso2,  
const Standard_Boolean  Viso2  
) 
To set the values returned by IsUIsoS1,.... The default values are False.
IntSurf_Situation IntPatch_Line::SituationS1  (  )  const 
Returns the situation (INSIDE/OUTSIDE/UNKNOWN) of the first patch compared to the second one, when TransitionOnS1 or TransitionOnS2 returns TOUCH. Otherwise, an exception is raised.
IntSurf_Situation IntPatch_Line::SituationS2  (  )  const 
Returns the situation (INSIDE/OUTSIDE/UNKNOWN) of the second patch compared to the first one, when TransitionOnS1 or TransitionOnS2 returns TOUCH. Otherwise, an exception is raised.
IntSurf_TypeTrans IntPatch_Line::TransitionOnS1  (  )  const 
Returns the type of the transition of the line for the first surface. The transition is "constant" along the line. The transition is IN if the line is oriented in such a way that the system of vector (N1,N2,T) is righthanded, where N1 is the normal to the first surface at a point P, N2 is the normal to the second surface at a point P, T is the tangent to the intersection line at P. If the system of vector is lefthanded, the transition is OUT. When N1 and N2 are colinear all along the intersection line, the transition will be.
If one of the transition is TOUCH or UNDECIDED, the other one has got the same value.
IntSurf_TypeTrans IntPatch_Line::TransitionOnS2  (  )  const 
Returns the type of the transition of the line for the second surface. The transition is "constant" along the line.

protected 