Go::Intersector2Obj Class Reference
[Intersections]

This class is an abstract class providing an interface to the intersection functionality in GoTools. More...

#include <Intersector2Obj.h>

Inheritance diagram for Go::Intersector2Obj:

Go::Intersector Go::CvCvIntersector Go::CvPtIntersector Go::PtPtIntersector Go::SfCvIntersector Go::SfPtIntersector Go::SfSfIntersector List of all members.

Public Member Functions

 Intersector2Obj ()
 Default constructor.
 Intersector2Obj (boost::shared_ptr< ParamGeomInt > obj1, boost::shared_ptr< ParamGeomInt > obj2, boost::shared_ptr< GeoTol > epsge, Intersector *prev=0, int eliminated_parameter=-1, double eliminated_value=0)
 Constructor.
 Intersector2Obj (boost::shared_ptr< ParamGeomInt > obj1, boost::shared_ptr< ParamGeomInt > obj2, double epsge, Intersector *prev=0, int eliminated_parameter=-1, double eliminated_value=0)
 Constructor.
virtual ~Intersector2Obj ()
 Destructor.
virtual int nmbBdObj (int idx) const
 Count the number of boundary objects belonging to the specified ParamGeomInt.
virtual BoundaryGeomIntgetBoundaryObject (int idx, int bd_idx) const
 Get the specified boundary object belonging to the specified ParamGeomInt.
void setSelfintCase (int type)
 Mark that this intersection is performed in self-intersection context.
virtual int isSelfintCase ()
 Check if this intersection is performed in self-intersection context.

Protected Member Functions

virtual bool foundIntersectionNearBoundary ()
virtual int performInterceptionByImplicitization ()
virtual int interceptionBySeparationSurface ()
virtual int simpleCaseByImplicitization ()
virtual bool complexityReduced ()
virtual void handleComplexity ()
virtual void postIterate (int nmb_orig, int dir=-1, bool keep_endpt=true)
virtual void doPostIterate ()
virtual void removeDegenerateConnections ()
virtual void writeOut ()

Protected Attributes

boost::shared_ptr< ParamGeomIntobj_int_ [2]
int selfint_case_

Detailed Description

This class is an abstract class providing an interface to the intersection functionality in GoTools.

Definition at line 50 of file Intersector2Obj.h.


Constructor & Destructor Documentation

Go::Intersector2Obj::Intersector2Obj ( boost::shared_ptr< ParamGeomInt obj1,
boost::shared_ptr< ParamGeomInt obj2,
boost::shared_ptr< GeoTol epsge,
Intersector prev = 0,
int  eliminated_parameter = -1,
double  eliminated_value = 0 
)

Constructor.

The last two variables are relevant only if the parent has one more parameter than the Intersector to be constructed.

Parameters:
obj1 object of type ParamSurfaceInt, ParamCurveInt or ParamPointInt.
obj2 object of type ParamSurfaceInt, ParamCurveInt or ParamPointInt.
epsge the associated tolerance.
prev the "parent" Intersector (0 if there is no parent).
eliminated_parameter the index of the parameter that was removed from the parent prev.
eliminated_value the value of the parameter that was removed from the parent prev.

Go::Intersector2Obj::Intersector2Obj ( boost::shared_ptr< ParamGeomInt obj1,
boost::shared_ptr< ParamGeomInt obj2,
double  epsge,
Intersector prev = 0,
int  eliminated_parameter = -1,
double  eliminated_value = 0 
)

Constructor.

The last two variables are relevant only if the parent has one more parameter than the Intersector to be constructed.

Parameters:
obj1 object of type ParamSurfaceInt, ParamCurveInt or ParamPointInt.
obj2 object of type ParamSurfaceInt, ParamCurveInt or ParamPointInt.
epsge the associated tolerance.
prev the "parent" Intersector (0 if there is no parent).
eliminated_parameter the index of the parameter that was removed from the parent prev.
eliminated_value the value of the parameter that was removed from the parent prev.


Member Function Documentation

virtual int Go::Intersector2Obj::nmbBdObj ( int  idx  )  const [inline, virtual]

Count the number of boundary objects belonging to the specified ParamGeomInt.

Parameters:
idx refers to obj1 or obj2 (i.e. 0 or 1).
Returns:
The number of boundary objects.

Reimplemented from Go::Intersector.

Definition at line 108 of file Intersector2Obj.h.

References obj_int_.

virtual BoundaryGeomInt* Go::Intersector2Obj::getBoundaryObject ( int  idx,
int  bd_idx 
) const [inline, virtual]

Get the specified boundary object belonging to the specified ParamGeomInt.

Parameters:
idx refers to obj1 or obj2 (i.e. 0 or 1).
bd_idx index of the boundary object in the ParamGeomInt.
Returns:
The boundary object.

Reimplemented from Go::Intersector.

Definition at line 117 of file Intersector2Obj.h.

References obj_int_.

virtual int Go::Intersector2Obj::isSelfintCase (  )  [inline, virtual]

Check if this intersection is performed in self-intersection context.

Returns:
true if this is a self-intersection, false otherwise

Reimplemented from Go::Intersector.

Definition at line 130 of file Intersector2Obj.h.

References selfint_case_.


The documentation for this class was generated from the following file:
Generated on Fri Nov 23 12:24:34 2007 for GoTools Intersections Library by  doxygen 1.5.1