Go Namespace Reference

The Go namespace is the common namespace for all GoTools modules. More...


Classes

struct  Alg2DElem
 Struct that represents a monomial in two variables. More...
class  AlgObj2DInt
 Class for 2-dimensional algebraic intersection objects. More...
struct  Alg3DElem
 Struct that represents a monomial in three variables. More...
class  AlgObj3DInt
 Class for 3-dimensional algebraic intersection objects. More...
class  AlgObjectInt
 This class is a purely abstract base class, providing an interface to the algebraic intersection objects. More...
struct  BoundaryFunctionInt
 This struct is a helper struct that bundles boundary information for an object of type ParamFunctionInt. More...
struct  BoundaryGeomInt
 This struct is a helper struct that bundles boundary information for an object of type ParamGeomInt. More...
class  ComplexityInfo
 This class contains statistical information used to check whether an intersection problem is simplified during recursive subdivision. More...
class  CvCvIntersector
 Class that performs intersection between two parametric curves. More...
class  CvPtIntersector
 This class performs intersection between a parametric curve and a point. More...
class  CylinderInt
 Class for cylindrical algebraic intersection objects. More...
class  GeomObjectInt
 This class is an abstract base class providing an interface to the "intersection objects". More...
class  GeoTol
 Class handling various tolerances. More...
class  Zero_Parameter_Span_Error
class  IntersectionCurve
 Object describing the curve that results from an intersection of two geometrical objects. More...
class  DegeneratedIntersectionCurve
 IntersectionCurve that is degenerated into a single point. More...
class  NonEvaluableIntersectionCurve
 IntersectionCurve that cannot be evaluated. More...
class  IsoparametricIntersectionCurve
 IntersectionCurve defined by an isoparametric curve that can be picked from the underlying object. More...
class  InterpolatedIntersectionCurve
 IntersectionCurve that is defined by Hermite interpolation of a number of guidepoints. More...
class  IntersectionLink
 This class represents a link between two intersection points. More...
class  IntersectionPoint
 Object describing a point located on the intersection of two geometrical objects. More...
struct  CachedInterval
 Helper struct for saving bracketed bounds of influence areas. More...
struct  IntPtInfo
 Struct that holds diagnostic information about an intersection point. More...
class  IntersectionPool
 Class providing access to the intersection points and surfaces related to a particular subproblem. More...
struct  BoundaryIntersectionData
 Helper struct to be used with IntersectionPool::intersectAlongCommonBoundary(). More...
struct  raw_pointer_comp
class  CrossesValue
class  TestInDomain
class  ClosestPointCalculator
class  LockedDirDistFunc
class  ConnectionFunctor
class  Intersector
 This class is an abstract class providing an interface to the intersection functionality in GoTools. More...
class  Intersector2Obj
 This class is an abstract class providing an interface to the intersection functionality in GoTools. More...
class  IntersectorAlgPar
 This class is an interface class used to compute the intersection between an algebraic object and a parametric object. More...
class  IntersectorFuncConst
 This class is an interface class for finding the intersection between a parametric function (with range R) and a constant. More...
class  Line2DInt
 Class representing an algebraic line in 2-dimensional space. More...
class  Par0FuncIntersector
 This class is performing intersections between two constants. More...
class  Par1FuncIntersector
 This class is performing intersections between a 1-dimensional parametric curve and a constant. More...
class  Par2FuncIntersector
 This class is performing intersections between a 1-dimensional parametric surface and a constant. More...
class  Param0FunctionInt
 This is a class that represents the "intersection object" of a scalar (a "0-variate" function). More...
class  Param1FunctionInt
 Class that represents an "intersection object" of a parametric curve of dimension 1. More...
class  Param2FunctionInt
 Class that represents the "intersection object" of a parametric surface of dimension 1. More...
class  ParamCurveInt
 This class represents the "intersection object" of a parametric curve. More...
class  ParamFunctionInt
 This class is a base class providing an interface to the parametric "intersection objects" with 1-dimensional range. More...
class  ParamGeomInt
 This class is a base class providing an interface to the parametric "intersection objects". More...
class  ParamObjectInt
 This class is a base class providing an interface to the "intersection objects". More...
class  ParamPointInt
 Class representing the "intersection object" of a parametric curve. More...
class  ParamSurfaceInt
 Class that represents the "intersection object" of a parametric surface. More...
class  PlaneInt
 Class representing planar algebraic intersection objects. More...
class  PtPtIntersector
 This class performs intersection between two points. More...
struct  SecondOrderProperties
class  SfCvIntersector
 This class performs intersection between a parametric surface and a parametric curve. More...
class  SfPtIntersector
 This class performs intersection between a parametric surface and a point. More...
struct  SingBox
struct  SingUnion
class  SfSelfIntersector
 This class finds self-intersections for a parametric surface. More...
class  SfSfIntersector
 This class performs intersection between two parametric surfaces. More...
class  SingularityInfo
 This class contains information about singularities in an intersection problem. More...
class  SphereInt
 Class representing spherical algebraic intersection objects. More...
class  Spline1FunctionInt
 Class that represents the "intersection object" of a spline curve of dimension 1. More...
class  Spline2FunctionInt
 This class represents the "intersection object" of a spline surface of dimension 1. More...
class  SplineCurveInt
 Class representing the "intersection object" of a spline curve. More...
class  SplineSurfaceInt
 This class represents the "intersection object" of a spline surface. More...
class  SurfaceAssembly

Namespaces

namespace  IntersectionUtils
 Various functions related to the intersection algorithms.

Enumerations

enum  EvalKind
enum  TangentDomain
enum  EstimateDirection
enum  IntPtClassification {
  DIR_UNDEF = 0, DIR_IN, DIR_OUT, DIR_PARALLEL,
  DIR_PERPENDICULAR, DIR_HIGHLY_SINGULAR, DIR_TOUCH
}
 Enumeration used to classify the direction of an intersection curve passing through an intersection point with respect to surface boundaries. More...
enum  IntPtLocation {
  LOC_OUTSIDE_BOTH = 0, LOC_INSIDE_BOTH, LOC_EDGE_ONE, LOC_CORNER_ONE,
  LOC_CORNER_BOTH, LOC_EDGE_BOTH
}
 Enumeration used to classify the location of an intersection point in the parameter domain of the object. More...
enum  LinkType {
  LINK_UNDEFINED = 0, SIMPLE_CONE, SIMPLE_MONOTONE, SIMPLE_IMPLICIT,
  SIMPLE_TWO_POINTS, COINCIDENCE_CVPT, COINCIDENCE_CVCV, COINCIDENCE_SFCV,
  COINCIDENCE_SFPT, MICRO_CVCV, MICRO_SFPT, MICRO_SFCV,
  MICRO_SFSF, MICRO_PAR1FUNC, MICRO_PAR2FUNC, LINEAR_CVCV,
  LINEAR_SFCV, LINEAR_SFSF, MERGED_UNDEFINED, MERGED_SIMPLE_CONE,
  MERGED_SIMPLE_MONOTONE, MERGED_SIMPLE_CONE_MONOTONE, MERGED_COINCIDENCE_SFCV_SFCV, DEG_TRIANGLE,
  POST_ITERATE, BRANCH_CONNECTION, COMPLEX_SFSF, SPLIT_LINK,
  REPAIRED_MISSING_LINK, INSIDE_OUTSIDE_SINGULARITY_BOX
}
 A classification of IntersectionLink objects. More...
enum  SingularityClassification
 This enum classifies the type of singularity.
enum  SingularityType {
  ORDINARY_POINT = 0, TANGENTIAL_POINT, ISOLATED_POINT, BRANCH_POINT,
  HIGHER_ORDER_POINT
}
 A classification of an IntersectionPoint, based on the nature of the intersection on which it lies. More...
enum  SubdivisionClassification
 This enum classifies the type of subdivision.

Functions

int checkCoincide (ParamCurveInt *curve, double start, double end, boost::shared_ptr< GeoTol > tol, ParamCurveInt *other, double other_start, double other_end)
 Check if two curves are coinciding between parameters start and end on this curve, and other_start and other_end on the other curve.
int checkCoincide (ParamCurveInt *curve, double start, double end, ParamSurfaceInt *surf, Point su_start, Point su_end, boost::shared_ptr< GeoTol > tol)
 Check if this curve is coinciding between parameters start and end, with the ParamSurface between parameters su_start and su_end.
int checkCoincide (ParamCurveInt *curve, double start, double end, SplineSurfaceInt *surf, const Point &su_start, const Point &su_end, boost::shared_ptr< GeoTol > tol)
 Check if this curve is coinciding between parameters start and end, with the SplineSurface between parameters su_start and su_end.
int checkCoincide (Param1FunctionInt *func1, double start, double end, Param0FunctionInt *C, boost::shared_ptr< GeoTol > tol)
 Check if this function is coinciding between parameters start and end, with the Point.
int checkCoincide (ParamSurfaceInt *surf1, ParamSurfaceInt *surf2, std::vector< double > &par_loop, const boost::shared_ptr< GeoTol > tol)
 by the parameter values of the intersection points representing it
template<class iterator>
boost::shared_ptr< IntersectionCurveconstructIntersectionCurve (const iterator begin, const iterator end)
void debug_write_line (const Point &p1, const Point &p2, const char *fname)
void debug_write_point (const Point &p1, const char *fname)
bool no_parent (const boost::shared_ptr< IntersectionPoint > &p)
IntersectionPointflip_intersecting_objects (IntersectionPoint *p)
bool link_is_iso_in (boost::shared_ptr< IntersectionLink > link, int dir)
bool link_is_iso (boost::shared_ptr< IntersectionLink > link)
bool link_is_iso_in_other_than (boost::shared_ptr< IntersectionLink > link, int dir)
template<class T1, class T2>
bool compare_first (const std::pair< T1, T2 > &x, const std::pair< T1, T2 > &y)
void add_reachables_from (const IntersectionPoint *pt, const IntersectionPoint *last_pt, std::set< IntersectionPoint * > &result)
void estimate_seed_by_interpolation (const IntersectionPoint *p1, const IntersectionPoint *p2, int fixed_dir, double fixed_value, double *result)
void determine_seed (double *par, int par_start, int par_end, const Point &pt, const IntersectionPoint *const ip1, const IntersectionPoint *const ip2)
int find_point_in (IntersectionPoint *p, const std::vector< boost::shared_ptr< IntersectionPoint > > &vec)
boost::shared_ptr< const CurveOnSurface > make_curve_on_surface (boost::shared_ptr< const ParamSurface > surf, double u_start, double v_start, double u_end, double v_end, double p_start, double p_end)
void extract_chains (const std::vector< boost::shared_ptr< IntersectionPoint > > pts, std::vector< std::vector< boost::shared_ptr< IntersectionPoint > > > &chains)


Detailed Description

The Go namespace is the common namespace for all GoTools modules.
Generated on Fri Nov 23 12:24:33 2007 for GoTools Intersections Library by  doxygen 1.5.1