Fade2.5D Documentation pages v2.16.8
Delaunay Features
SegmentChecker.h File Reference
#include <map>
#include "common.h"
#include "License.h"
#include "Segment2.h"
#include "MsgBase.h"
#include "Bbox2.h"

Go to the source code of this file.

Classes

class  GEOM_FADE25D::SegmentChecker
 Identifies intersections between a collection of line segments. More...
 

Enumerations

enum  ClipResult {
  CR_INVALID , CR_EMPTY , CR_CLIPPED_DEGENERATE , CR_CLIPPED_NONDEGENERATE ,
  CR_COMPLETE_DEGENERATE , CR_COMPLETE_NONDEGENERATE
}
 Describes the result of clipping a segment with a bounding box. More...
 
enum  SegmentIntersectionType {
  SIT_UNINITIALIZED , SIT_NONE , SIT_SEGMENT , SIT_POINT ,
  SIT_ENDPOINT
}
 Enumerates the possible intersection types between two line segments. More...
 

Enumeration Type Documentation

◆ ClipResult

enum ClipResult

These values indicate the result of clipping an input segment against a bounding box.

Enumerator
CR_INVALID 

Can't compute a result, call setLimit() with a valid Bbox2 before!

CR_EMPTY 

The result is empty (input completely outside the box)

CR_CLIPPED_DEGENERATE 

The result has been clipped and is degenerate

CR_CLIPPED_NONDEGENERATE 

The result has been clipped and is non-degenerate

CR_COMPLETE_DEGENERATE 

The result is unclipped and degenerate (because the segment was already degenerate)

CR_COMPLETE_NONDEGENERATE 

The result is unclipped and non-degenerate

◆ SegmentIntersectionType

The possible values describe if and how two segments intersect.

Enumerator
SIT_UNINITIALIZED 

Invalid value

SIT_NONE 

No intersection

SIT_SEGMENT 

Collinear intersection (intersection is a non-degenerate segment).

SIT_POINT 

Intersection at a single point (not at the endpoints).

SIT_ENDPOINT 

Intersection occurs at a common endpoint of the two segments.