CGAL 5.1.1 - 2D Triangulation
|
The concept TriangulationTraits_2
describes the set of requirements to be fulfilled by any class used to instantiate the first template parameter of the class CGAL::Triangulation_2<Traits,Tds>
. This concept provides the types of the geometric primitives used in the triangulation and some function object types for the required predicates on those primitives.
All models of Kernel
.
CGAL::Projection_traits_xy_3<K>
CGAL::Triangulation_2
Types | |
typedef unspecified_type | Point_2 |
The point type. | |
typedef unspecified_type | Segment_2 |
The segment type. | |
typedef unspecified_type | Triangle_2 |
The triangle type. | |
typedef unspecified_type | Construct_point_2 |
A function object to construct a Point_2 . More... | |
typedef unspecified_type | Construct_segment_2 |
A function object to construct a Segment_2 . More... | |
typedef unspecified_type | Construct_triangle_2 |
A function object to construct a Triangle_2 . More... | |
typedef unspecified_type | Less_x_2 |
A function object to compare the x-coordinate of two points. More... | |
typedef unspecified_type | Less_y_2 |
A function object to compare the y-coordinate of two points. More... | |
typedef unspecified_type | Compare_x_2 |
A function object to compare the x-coordinate of two points. More... | |
typedef unspecified_type | Compare_y_2 |
A function object to compare the y-coordinate of two points. More... | |
typedef unspecified_type | Orientation_2 |
A function object to compute the orientation of three points. More... | |
typedef unspecified_type | Side_of_oriented_circle_2 |
A function object to perform the incircle test for four points. More... | |
typedef unspecified_type | Construct_circumcenter_2 |
A function object to compute the circumcentr of three points. More... | |
Creation | |
Only a default constructor, copy constructor and an assignment operator are required. Note that further constructors can be provided. | |
TriangulationTraits_2 () | |
default constructor. | |
TriangulationTraits_2 (TriangulationTraits_2 gtr) | |
Copy constructor. | |
TriangulationTraits_2 | operator= (TriangulationTraits_2 gtr) |
Assignment operator. | |
Predicate Functions | |
The following functions give access to the predicate and constructor objects. | |
Construct_point_2 | construct_point_2_object () |
Construct_segment_2 | construct_segment_2_object () |
Construct_triangle_2 | construct_triangle_2_object () |
Compare_x_2 | compare_x_2_object () |
Compare_y_2 | compare_y_2_object () |
Orientation_2 | orientation_2_object () |
Side_of_oriented_circle_2 | side_of_oriented_circle_2_object () |
Required only if side_of_oriented_circle is called called. | |
Construct_circumcenter_2 | construct_circumcenter_2_object () |
Required only if circumcenter is called. | |
A function object to compare the x-coordinate of two points.
Provides the operator:
Comparison_result operator()(Point p, Point q)
which returns SMALLER, EQUAL
or LARGER
according to the \( x\)-ordering of points p
and q
.
A function object to compare the y-coordinate of two points.
Provides the operator:
Comparison_result operator()(Point p, Point q)
which returns (SMALLER, EQUAL
or LARGER
) according to the \( y\)-ordering of points p
and q
.
A function object to compute the circumcentr of three points.
Provides the operator:
Point operator()(Point p, Point q, Point r)
which returns the circumcenter of the three points p, q
and r
. This type is required only if the function Point circumcenter(Face_handle f)
is called.
A function object to construct a Point_2
.
Provides:
Point_2 operator()(Point_2 p)
,
which simply returns p.
p
to avoid useless copies.CGAL::Triangulation_2
internally manipulates points with a Point
type that is not always Point_2
. A function object to construct a Segment_2
.
Provides:
Segment_2 operator()(Point_2 p,Point_2 q)
,
which constructs a segment from two points.
A function object to construct a Triangle_2
.
Provides:
Triangle_2 operator()(Point_2 p,Point_2 q,Point_2 r )
,
which constructs a triangle from three points.
A function object to compare the x-coordinate of two points.
Provides the operator:
bool operator()(Point p, Point q)
which returns true
if p
is before q
according to the \( x\)-ordering of points.
A function object to compare the y-coordinate of two points.
Provides the operator:
bool operator()(Point p, Point q)
which returns true
if p
is before q
according to the \( y\)-ordering of points.
A function object to compute the orientation of three points.
Provides the operator:
Orientation operator()(Point p, Point q, Point r)
which returns LEFT_TURN
, RIGHT_TURN
or COLLINEAR
depending on \( r\) being, with respect to the oriented line pq
, on the left side , on the right side or on the line.
A function object to perform the incircle test for four points.
Provides the operator:
Oriented_side operator()(Point p, Point q, Point r, Point s)
which takes four points \( p, q, r, s\) as arguments and returns ON_POSITIVE_SIDE
, ON_NEGATIVE_SIDE
or, ON_ORIENTED_BOUNDARY
according to the position of points s
with respect to the oriented circle through through \( p,q\) and \( r\). This type is required only if the function side_of_oriented_circle(Face_handle f, Point p)
is called.