Concept

IsStronglyConvexTraits_3

Definition

Requirements of the traits class used by the function is_strongly_convex_3, which is used for postcondition checking by convex_hull_3.

Types

IsStronglyConvexTraits_3::Plane_3
a 3D plane

IsStronglyConvexTraits_3::Point_3
a 3D point

IsStronglyConvexTraits_3::Ray_3
a 3D ray

IsStronglyConvexTraits_3::Triangle_3
a 3D triangle


IsStronglyConvexTraits_3::Construct_ray_3
Function object type that provides Ray_3 operator()(Point_3 p, Point_3 q), which constructs and returns the ray based at point p and passing though q


IsStronglyConvexTraits_3::Construct_triangle_3
Function object type that provides Triangle_3 operator()(Point_3 p, Point_3 q, Point_3 r), which constructs and returns the triangle with vertices p, q, and r


IsStronglyConvexTraits_3::Coplanar_3
Predicate object type that provides bool operator()(Point_3 p, Point_3 q, Point_3 r, Point_3 s), which determines if points p, q, r, and s are coplanar or not


IsStronglyConvexTraits_3::Do_intersect_3
Function object type that provides CGAL::Object operator()(Triangle_3 t, Ray_3 r), which returns true iff t and r intersect.


IsStronglyConvexTraits_3::Has_on_positive_side_3
Predicate object type that provides bool operator()(Plane_3 h, Point_3 q), which determines of the point q is on the positive side of the halfspace h


IsStronglyConvexTraits_3::Oriented_side_3
Predicate object type that provides Oriented_side operator()(Plane_3 p, Point_3 q), which determines the position of point q relative to plane p

Creation

Only a copy constructor is required.

IsStronglyConvexTraits_3 traits ( & t);

Operations

For each of the above function and predicate object types, Func_obj_type, a function must exist with the name func_obj_type_object that creates an instance of the function or predicate object type. For example:

Construct_ray_3 traits.construct_ray_3_object ()

Has Models

CGAL::Convex_hull_traits_3<R>
All kernels of CGAL

See Also

ConvexHullTraits_3
CGAL::is_strongly_convex_3