CGAL 6.3 - 2D Snap Rounding
Loading...
Searching...
No Matches
CGAL::Integer_grid_snap_rounding_traits_2< InputKernel, ExactKernel > Struct Template Reference

#include <CGAL/Integer_grid_snap_rounding_traits_2.h>

Inherits from

CGAL::Arr_segment_traits_2< Exact_predicates_exact_constructions_kernel >.

Definition

template<typename InputKernel, typename ExactKernel = Exact_predicates_exact_constructions_kernel>
struct CGAL::Integer_grid_snap_rounding_traits_2< InputKernel, ExactKernel >

The class Integer_grid_snap_rounding_traits_2<InputKernel, ExactKernel> is a model of the VerticalSlabSnapRoundingTraits_2 concept.

It is identical to Double_grid_snap_rounding_traits_2<InputKernel, ExactKernel>, except that points are rounded to the closest point with integer coordinates.

Template Parameters
InputKernelspecifies the kernel used for the input geometric objects. It must model the CGAL Kernel concept. These objects must be convertible to and from the types defined by ExactKernel using CGAL::Cartesian_converter.
ExactKernelspecifies the exact kernel used internally to compute intersections and subdivision points before to round them. It must model the CGAL Kernel concept.
Is model of
VerticalSlabSnapRoundingTraits_2
See also
{CGAL::snap_rounding_2()}
{CGAL::vertical_slab_snap_rounding_2()}
{CGAL::Double_grid_snap_rounding_traits_2}
{CGAL::Float_grid_snap_rounding_traits_2}

Classes

struct  Evaluation
struct  Construct_point_at_x_on_segment_2
struct  Compute_squared_round_bound_2
struct  Construct_rounded_point_2

Public Types

using Base = Arr_segment_traits_2<ExactKernel>
using FT = typename Base::FT
using Target_FT = double
using Point_2 = typename Base::Point_2
using Segment_2 = typename Base::Segment_2
using Less_xy_2 = typename Base::Less_xy_2
using Less_y_2 = typename Base::Less_y_2
using Equal_2 = typename Base::Equal_2
using Construct_point_2 = typename Base::Construct_point_2
using Construct_source_2 = typename Base::Construct_source_2
using Construct_target_2 = typename Base::Construct_target_2
using Construct_segment_2 = typename Base::Construct_segment_2
using Evaluation_tag = Tag_true
using Evaluate = unspecified_type
typedef Cartesian_converter< InputKernel, ExactKernel > Converter_to_exact
typedef Cartesian_converter< ExactKernel, InputKernel > Converter_from_exact
Public Types inherited from CGAL::Arr_segment_traits_2< Exact_predicates_exact_constructions_kernel >
typedef X_monotone_curve_2 Curve_2
typedef Kernel::Segment_2 Segment_2
typedef Kernel::Line_2 Line_2
typedef Kernel::Point_2 Point_2

Public Member Functions

 Integer_grid_snap_rounding_traits_2 ()
 Integer_grid_snap_rounding_traits_2 (double pixel_size)
Evaluate evaluate_object () const
Converter_to_exact converter_to_exact_object () const
Converter_from_exact converter_from_exact_object () const
Construct_point_at_x_on_segment_2 construct_point_at_x_on_segment_2_object () const
Compute_squared_round_bound_2 compute_squared_round_bound_2_object () const
Construct_rounded_point_2 construct_rounded_point_2_object () const