mirror of https://github.com/CGAL/cgal
568 lines
22 KiB
TeX
568 lines
22 KiB
TeX
\begin{ccRefConcept}{Kernel}
|
|
The concept of a {\em kernel} is defined by a set of requirements on
|
|
the provision of certain types and access member functions to create
|
|
objects of these types. The types are function object classes to be used
|
|
within the algorithms and data structures of \cgal.
|
|
This allows you to use any model of a kernel as a traits class in
|
|
the \cgal\ algorithms and data structures, unless they require types
|
|
beyond those provided by a kernel.
|
|
|
|
%A kernel subsumes the concepts of {\em two-dimensional kernel},
|
|
%{\em three-dimensional kernel}, and {\em $d$-dimensional kernel}.
|
|
|
|
A kernel provides types, construction objects, and generalized predicates.
|
|
The former replace constructors of the kernel classes and constructive
|
|
procedures in the kernel. There are also function objects replacing operators,
|
|
especially for equality testing.
|
|
|
|
\ccHasModels
|
|
|
|
\ccRefIdfierPage{CGAL::Cartesian<FieldNumberType>} \\
|
|
\ccRefIdfierPage{CGAL::Homogeneous<RingNumberType>} \\
|
|
\ccRefIdfierPage{CGAL::Simple_cartesian<FieldNumberType>} \\
|
|
\ccRefIdfierPage{CGAL::Simple_homogeneous<RingNumberType>} \\
|
|
\ccRefIdfierPage{CGAL::Filtered_kernel<CK>} \\
|
|
\ccRefIdfierPage{CGAL::Exact_predicates_exact_constructions_kernel} \\
|
|
\ccRefIdfierPage{CGAL::Exact_predicates_exact_constructions_kernel_with_sqrt} \\
|
|
\ccRefIdfierPage{CGAL::Exact_predicates_inexact_constructions_kernel}
|
|
|
|
\ccCreationVariable{kernel}
|
|
|
|
\ccTypes
|
|
|
|
\ccNestedType{FT}{a model of \ccc{FieldNumberType}}
|
|
\ccGlue
|
|
\ccNestedType{RT}{a model of \ccc{RingNumberType}}
|
|
|
|
The following types describe the return types of predicates. They typically
|
|
map to \ccc{bool} and \cgal\ kernel enum types, except when an interval arithmetic
|
|
number type is used such as within the filtering kernels, in which case it is
|
|
\ccc{Uncertain<bool>} or similar.
|
|
|
|
\ccNestedType{Boolean}{\ccc{bool} or \ccc{Uncertain<bool>}}
|
|
\ccGlue
|
|
\ccNestedType{Sign}{\ccc{CGAL::Sign} or \ccc{Uncertain<CGAL::Sign>}}
|
|
\ccGlue
|
|
\ccNestedType{Comparison_result}{\ccc{CGAL::Comparison_result} or \ccc{Uncertain<CGAL::Comparison_result>}}
|
|
\ccGlue
|
|
\ccNestedType{Orientation}{\ccc{CGAL::Orientation} or \ccc{Uncertain<CGAL::Orientation>}}
|
|
\ccGlue
|
|
\ccNestedType{Oriented_side}{\ccc{CGAL::Oriented_side} or \ccc{Uncertain<CGAL::Oriented_side>}}
|
|
\ccGlue
|
|
\ccNestedType{Bounded_side}{\ccc{CGAL::Bounded_side} or \ccc{Uncertain<CGAL::Bounded_side>}}
|
|
\ccGlue
|
|
\ccNestedType{Angle}{\ccc{CGAL::Angle} or \ccc{Uncertain<CGAL::Angle>}}
|
|
|
|
\ccConstants
|
|
|
|
\ccVariable{static const bool Has_filtered_predicates;}{A Boolean value
|
|
indicating whether the predicates are filtered (as in \ccc{Filtered_kernel}).
|
|
This helps propagating such decisions to traits classes which are built on top
|
|
of a kernel, so that they can decide to filter their own predicates or not.}
|
|
|
|
\ccHeading{Coordinate Access}
|
|
|
|
\ccNestedType{Cartesian_const_iterator_2}{a model of \ccc{Kernel::CartesianConstIterator_2}}
|
|
|
|
|
|
\ccHeading{Geometric Objects}
|
|
|
|
\ccNestedType{Point_2}{a model of \ccc{Kernel::Point_2}}
|
|
\ccGlue
|
|
\ccNestedType{Vector_2}{a model of \ccc{Kernel::Vector_2}}
|
|
\ccGlue
|
|
\ccNestedType{Direction_2}{a model of \ccc{Kernel::Direction_2}}
|
|
\ccGlue
|
|
\ccNestedType{Line_2}{a model of \ccc{Kernel::Line_2}}
|
|
\ccGlue
|
|
\ccNestedType{Ray_2}{a model of \ccc{Kernel::Ray_2}}
|
|
\ccGlue
|
|
\ccNestedType{Segment_2}{a model of \ccc{Kernel::Segment_2}}
|
|
\ccGlue
|
|
\ccNestedType{Triangle_2}{a model of \ccc{Kernel::Triangle_2}}
|
|
\ccGlue
|
|
\ccNestedType{Iso_rectangle_2}{a model of \ccc{Kernel::IsoRectangle_2}}
|
|
%%\ccGlue
|
|
%%\ccNestedType{Aff_transformation_2}{}
|
|
\ccGlue
|
|
\ccNestedType{Circle_2}{a model of \ccc{Kernel::Circle_2}}
|
|
\ccGlue
|
|
%\ccNestedType{Weighted_point_2}{a model of Kernel::WeightedPoint\_2}
|
|
%\ccGlue
|
|
\ccNestedType{Object_2}{a model of \ccc{Kernel::Object_2}}
|
|
|
|
\ccHeading{Constructions}
|
|
|
|
\ccNestedType{Construct_point_2}{a model of \ccc{Kernel::ConstructPoint_2}}
|
|
\ccGlue
|
|
\ccNestedType{Construct_vector_2}{a model of \ccc{Kernel::ConstructVector_2}}
|
|
\ccGlue
|
|
\ccNestedType{Construct_direction_2}{a model of \ccc{Kernel::ConstructDirection_2}}
|
|
\ccGlue
|
|
\ccNestedType{Construct_segment_2}{a model of \ccc{Kernel::ConstructSegment_2}}
|
|
\ccGlue
|
|
\ccNestedType{Construct_line_2}{a model of \ccc{Kernel::ConstructLine_2}}
|
|
\ccGlue
|
|
\ccNestedType{Construct_ray_2}{a model of \ccc{Kernel::ConstructRay_2}}
|
|
\ccGlue
|
|
\ccNestedType{Construct_circle_2}{a model of \ccc{Kernel::ConstructCircle_2}}
|
|
\ccGlue
|
|
\ccNestedType{Construct_triangle_2}{a model of \ccc{Kernel::ConstructTriangle_2}}
|
|
\ccGlue
|
|
\ccNestedType{Construct_iso_rectangle_2}{a model of \ccc{Kernel::ConstructIsoRectangle_2}}
|
|
\ccGlue
|
|
\ccNestedType{Construct_object_2}{a model of \ccc{Kernel::ConstructObject_2}}
|
|
%%\ccGlue
|
|
%%\ccNestedType{Construct_aff_transformation_2}{}
|
|
\ccGlue
|
|
\ccNestedType{Construct_scaled_vector_2}{a model of \ccc{Kernel::ConstructScaledVector_2}}
|
|
\ccGlue
|
|
\ccNestedType{Construct_translated_point_2}{a model of \ccc{Kernel::ConstructTranslatedPoint_2}}
|
|
\ccGlue
|
|
\ccNestedType{Construct_point_on_2}{a model of \ccc{Kernel::ConstructPointOn_2}}
|
|
\ccGlue
|
|
\ccNestedType{Construct_projected_point_2}{a model of \ccc{Kernel::ConstructProjectedPoint_2}}
|
|
\ccGlue
|
|
\ccNestedType{Construct_projected_xy_point_2}{a model of \ccc{Kernel::ConstructProjectedXYPoint_2}}
|
|
%%\ccGlue
|
|
%%\ccNestedType{Construct_second_point_on_2}{}
|
|
%%\ccGlue
|
|
%%\ccNestedType{Construct_source_point_2}{}
|
|
%%\ccGlue
|
|
%%\ccNestedType{Construct_target_point_2}{}
|
|
%%\ccGlue
|
|
%%\ccNestedType{Construct_min_point_2}{}
|
|
%%\ccGlue
|
|
%%\ccNestedType{Construct_max_point_2}{}
|
|
\ccGlue
|
|
\ccNestedType{Construct_cartesian_const_iterator_2}{a model of \ccc{Kernel::ConstructCartesianConstIterator_2}}
|
|
\ccGlue
|
|
\ccNestedType{Construct_vertex_2}{a model of \ccc{Kernel::ConstructVertex_2}}
|
|
\ccGlue
|
|
\ccNestedType{Construct_bbox_2}{a model of \ccc{Kernel::ConstructBbox_2}}
|
|
%%\ccGlue
|
|
%%\ccNestedType{Construct_direction_of_line_2}{}
|
|
%%\ccGlue
|
|
%%\ccNestedType{Construct_direction_of_ray_2}{}
|
|
\ccGlue
|
|
\ccNestedType{Construct_perpendicular_vector_2}{a model of \ccc{Kernel::ConstructPerpendicularVector_2}}
|
|
\ccGlue
|
|
\ccNestedType{Construct_perpendicular_direction_2}{a model of \ccc{Kernel::ConstructPerpendicularDirection_2}}
|
|
\ccGlue
|
|
\ccNestedType{Construct_perpendicular_line_2}{a model of \ccc{Kernel::ConstructPerpendicularLine_2}}
|
|
\ccGlue
|
|
\ccNestedType{Construct_max_vertex_2}{a model of \ccc{Kernel::ConstructMaxVertex_2}}
|
|
\ccGlue
|
|
\ccNestedType{Construct_midpoint_2}{a model of \ccc{Kernel::ConstructMidpoint_2}}
|
|
\ccGlue
|
|
\ccNestedType{Construct_equidistant_line_3}{a model of \ccc{Kernel::ConstructEquidistantLine_3}}
|
|
\ccGlue
|
|
\ccNestedType{Construct_min_vertex_2}{a model of \ccc{Kernel::ConstructMinVertex_2}}
|
|
\ccGlue
|
|
\ccNestedType{Construct_center_2}{a model of \ccc{Kernel::ConstructCenter_2}}
|
|
\ccGlue
|
|
\ccNestedType{Construct_centroid_2}{a model of \ccc{Kernel::ConstructCentroid_2}}
|
|
\ccGlue
|
|
\ccNestedType{Construct_circumcenter_2}{a model of \ccc{Kernel::ConstructCircumcenter_2}}
|
|
\ccGlue
|
|
\ccNestedType{Construct_bisector_2}{a model of \ccc{Kernel::ConstructBisector_2}}
|
|
\ccGlue
|
|
\ccNestedType{Construct_opposite_direction_2}{a model of \ccc{Kernel::ConstructOppositeDirection_2}}
|
|
\ccGlue
|
|
\ccNestedType{Construct_opposite_segment_2}{a model of \ccc{Kernel::ConstructOppositeSegment_2}}
|
|
\ccGlue
|
|
\ccNestedType{Construct_opposite_ray_2}{a model of \ccc{Kernel::ConstructOppositeRay_2}}
|
|
\ccGlue
|
|
\ccNestedType{Construct_opposite_line_2}{a model of \ccc{Kernel::ConstructOppositeLine_2}}
|
|
\ccGlue
|
|
\ccNestedType{Construct_opposite_triangle_2}{a model of \ccc{Kernel::ConstructOppositeTriangle_2}}
|
|
\ccGlue
|
|
\ccNestedType{Construct_opposite_circle_2}{a model of \ccc{Kernel::ConstructOppositeCircle_2}}
|
|
\ccGlue
|
|
\ccNestedType{Construct_opposite_vector_2}{a model of \ccc{Kernel::ConstructOppositeVector_2}}
|
|
|
|
If the result type is not determined, there is no \ccc{Construct_} prefix:
|
|
|
|
%%\ccNestedType{Transform_2}{}
|
|
%%\ccGlue
|
|
\ccNestedType{Intersect_2}{a model of \ccc{Kernel::Intersect_2}}
|
|
\ccGlue
|
|
\ccNestedType{Assign_2}{a model of \ccc{Kernel::Assign_2}}
|
|
|
|
If the result type is a number type, the prefix is \ccc{Compute_}:
|
|
|
|
\ccNestedType{Compute_squared_distance_2}{a model of \ccc{Kernel::ComputeSquaredDistance_2}}
|
|
\ccGlue
|
|
\ccNestedType{Compute_squared_length_2}{a model of \ccc{Kernel::ComputeSquaredLength_2}}
|
|
\ccGlue
|
|
\ccNestedType{Compute_squared_radius_2}{a model of \ccc{Kernel::ComputeSquaredRadius_2}}
|
|
\ccGlue
|
|
\ccNestedType{Compute_area_2}{a model of \ccc{Kernel::ComputeArea_2}}
|
|
|
|
\ccHeading{Generalized Predicates}
|
|
|
|
\ccNestedType{Angle_2}{a model of \ccc{Kernel::Angle_2}}
|
|
\ccGlue
|
|
\ccNestedType{Equal_2}{a model of \ccc{Kernel::Equal_2}}
|
|
\ccGlue
|
|
\ccNestedType{Equal_x_2}{a model of \ccc{Kernel::EqualX_2}}
|
|
\ccGlue
|
|
\ccNestedType{Equal_y_2}{a model of \ccc{Kernel::EqualY_2}}
|
|
\ccGlue
|
|
\ccNestedType{Less_x_2}{a model of \ccc{Kernel::LessX_2}}
|
|
\ccGlue
|
|
\ccNestedType{Less_y_2}{a model of \ccc{Kernel::LessY_2}}
|
|
\ccGlue
|
|
\ccNestedType{Less_xy_2}{a model of \ccc{Kernel::LessXY_2}}
|
|
\ccGlue
|
|
\ccNestedType{Less_yx_2}{a model of \ccc{Kernel::LessYX_2}}
|
|
\ccGlue
|
|
\ccNestedType{Compare_x_2}{a model of \ccc{Kernel::CompareX_2}}
|
|
\ccGlue
|
|
\ccNestedType{Compare_x_at_y_2}{a model of \ccc{Kernel::CompareXAtY_2}}
|
|
\ccGlue
|
|
\ccNestedType{Compare_y_2}{a model of \ccc{Kernel::CompareY_2}}
|
|
\ccGlue
|
|
\ccNestedType{Compare_xy_2}{a model of \ccc{Kernel::CompareXY_2}}
|
|
\ccGlue
|
|
\ccNestedType{Compare_xy_2}{a model of \ccc{Kernel::CompareYX_2}}
|
|
\ccGlue
|
|
\ccNestedType{Compare_y_at_x_2}{a model of \ccc{Kernel::CompareYAtX_2}}
|
|
\ccGlue
|
|
\ccNestedType{Compare_distance_2}{a model of \ccc{Kernel::CompareDistance_2}}
|
|
\ccGlue
|
|
\ccNestedType{Compare_angle_with_x_axis_2}{a model of \ccc{Kernel::CompareAngleWithXAxis_2}}
|
|
\ccGlue
|
|
\ccNestedType{Compare_slope_2}{a model of \ccc{Kernel::CompareSlope_2}}
|
|
\ccGlue
|
|
\ccNestedType{Less_distance_to_point_2}{a model of \ccc{Kernel::LessDistanceToPoint_2}}
|
|
\ccGlue
|
|
\ccNestedType{Less_signed_distance_to_line_2}{a model of \ccc{Kernel::LessSignedDistanceToLine_2}}
|
|
\ccGlue
|
|
\ccNestedType{Less_rotate_ccw_2}{a model of \ccc{Kernel::LessRotateCCW_2}}
|
|
\ccGlue
|
|
\ccNestedType{Left_turn_2}{a model of \ccc{Kernel::LeftTurn_2}}
|
|
\ccGlue
|
|
\ccNestedType{Collinear_2}{a model of \ccc{Kernel::Collinear_2}}
|
|
\ccGlue
|
|
\ccNestedType{Orientation_2}{a model of \ccc{Kernel::Orientation_2}}
|
|
\ccGlue
|
|
\ccNestedType{Side_of_oriented_circle_2}{a model of \ccc{Kernel::SideOfOrientedCircle_2}}
|
|
\ccGlue
|
|
\ccNestedType{Side_of_bounded_circle_2}{a model of \ccc{Kernel::SideOfBoundedCircle_2}}
|
|
\ccGlue
|
|
\ccNestedType{Is_horizontal_2}{a model of \ccc{Kernel::IsHorizontal_2}}
|
|
\ccGlue
|
|
\ccNestedType{Is_vertical_2}{a model of \ccc{Kernel::IsVertical_2}}
|
|
\ccGlue
|
|
\ccNestedType{Is_degenerate_2}{a model of \ccc{Kernel::IsDegenerate_2}}
|
|
\ccGlue
|
|
\ccNestedType{Has_on_2}{a model of \ccc{Kernel::HasOn_2}}
|
|
\ccGlue
|
|
\ccNestedType{Collinear_has_on_2}{a model of \ccc{Kernel::CollinearHasOn_2}}
|
|
\ccGlue
|
|
\ccNestedType{Has_on_bounded_side_2}{a model of \ccc{Kernel::HasOnBoundedSide_2}}
|
|
\ccGlue
|
|
\ccNestedType{Has_on_unbounded_side_2}{a model of \ccc{Kernel::HasOnUnboundedSide_2}}
|
|
\ccGlue
|
|
\ccNestedType{Has_on_boundary_2}{a model of \ccc{Kernel::HasOnBoundary_2}}
|
|
\ccGlue
|
|
\ccNestedType{Has_on_positive_side_2}{a model of \ccc{Kernel::HasOnPositiveSide_2}}
|
|
\ccGlue
|
|
\ccNestedType{Has_on_negative_side_2}{a model of \ccc{Kernel::HasOnNegativeSide_2}}
|
|
\ccGlue
|
|
\ccNestedType{Oriented_side_2}{a model of \ccc{Kernel::OrientedSide_2}}
|
|
\ccGlue
|
|
\ccNestedType{Bounded_side_2}{a model of \ccc{Kernel::BoundedSide_2}}
|
|
\ccGlue
|
|
\ccNestedType{Are_parallel_2 }{a model of \ccc{Kernel::AreParallel_2}}
|
|
\ccGlue
|
|
\ccNestedType{Are_ordered_along_line_2 }{a model of \ccc{Kernel::AreOrderedAlongLine_2}}
|
|
\ccGlue
|
|
\ccNestedType{Are_strictly_ordered_along_line_2}{a model of \ccc{Kernel::AreStrictlyOrderedAlongLine_2}}
|
|
\ccGlue
|
|
\ccNestedType{Collinear_are_ordered_along_line_2}{a model of \ccc{Kernel::CollinearAreOrderedAlongLine_2}}
|
|
\ccGlue
|
|
\ccNestedType{Collinear_are_strictly_ordered_along_line_2}{a model of \ccc{Kernel::CollinearAreStrictlyOrderedAlongLine_2}}
|
|
\ccGlue
|
|
\ccNestedType{Counterclockwise_in_between_2}{a model of \ccc{Kernel::CounterclockwiseInBetween_2}}
|
|
\ccGlue
|
|
\ccNestedType{Do_intersect_2}{a model of \ccc{Kernel::DoIntersect_2}}
|
|
|
|
\ccHeading{Three-dimensional Kernel}
|
|
|
|
|
|
\ccHeading{Coordinate Access}
|
|
|
|
\ccNestedType{Cartesian_const_iterator_3}{a model of \ccc{Kernel::CartesianConstIterator_3}}
|
|
|
|
|
|
\ccHeading{Geometric Objects}
|
|
|
|
\ccNestedType{Point_3}{a model of \ccc{Kernel::Point_3}}
|
|
\ccGlue
|
|
\ccNestedType{Vector_3}{a model of \ccc{Kernel::Vector_3}}
|
|
\ccGlue
|
|
\ccNestedType{Direction_3}{a model of \ccc{Kernel::Direction_3}}
|
|
\ccGlue
|
|
\ccNestedType{Iso_cuboid_3}{a model of \ccc{Kernel::IsoCuboid_3}}
|
|
\ccGlue
|
|
\ccNestedType{Line_3}{a model of \ccc{Kernel::Line_3}}
|
|
\ccGlue
|
|
\ccNestedType{Ray_3}{a model of \ccc{Kernel::Ray_3}}
|
|
\ccGlue
|
|
\ccNestedType{Circle_3}{a model of \ccc{Kernel::Circle_3}}
|
|
\ccGlue
|
|
\ccNestedType{Sphere_3}{a model of \ccc{Kernel::Sphere_3}}
|
|
\ccGlue
|
|
\ccNestedType{Segment_3}{a model of \ccc{Kernel::Segment_3}}
|
|
\ccGlue
|
|
\ccNestedType{Plane_3}{a model of \ccc{Kernel::Plane_3}}
|
|
\ccGlue
|
|
\ccNestedType{Triangle_3}{a model of \ccc{Kernel::Triangle_3}}
|
|
\ccGlue
|
|
\ccNestedType{Tetrahedron_3}{a model of \ccc{Kernel::Tetrahedron_3}}
|
|
%\ccGlue
|
|
%\ccNestedType{Weighted_point_3}{a model of Kernel::WeightedPoint\_3}
|
|
%%\ccGlue
|
|
%%\ccNestedType{Aff_transformation_3}{}
|
|
\ccGlue
|
|
\ccNestedType{Object_3}{a model of \ccc{Kernel::Object_3}}
|
|
|
|
\ccHeading{Constructions}
|
|
|
|
\ccNestedType{Construct_point_3}{a model of \ccc{Kernel::ConstructPoint_3}}
|
|
\ccGlue
|
|
\ccNestedType{Construct_vector_3}{a model of \ccc{Kernel::ConstructVector_3}}
|
|
\ccGlue
|
|
\ccNestedType{Construct_direction_3}{a model of \ccc{Kernel::ConstructDirection_3}}
|
|
\ccGlue
|
|
\ccNestedType{Construct_plane_3}{a model of \ccc{Kernel::ConstructPlane_3}}
|
|
\ccGlue
|
|
\ccNestedType{Construct_iso_cuboid_3}{a model of \ccc{Kernel::ConstructIsoCuboid_3}}
|
|
\ccGlue
|
|
\ccNestedType{Construct_line_3}{a model of \ccc{Kernel::ConstructLine_3}}
|
|
\ccGlue
|
|
\ccNestedType{Construct_ray_3}{a model of \ccc{Kernel::ConstructRay_3}}
|
|
\ccGlue
|
|
\ccNestedType{Construct_sphere_3}{a model of \ccc{Kernel::ConstructSphere_3}}
|
|
\ccGlue
|
|
\ccNestedType{Construct_segment_3}{a model of \ccc{Kernel::ConstructSegment_3}}
|
|
\ccGlue
|
|
\ccNestedType{Construct_triangle_3}{a model of \ccc{Kernel::ConstructTriangle_3}}
|
|
\ccGlue
|
|
\ccNestedType{Construct_tetrahedron_3}{a model of \ccc{Kernel::ConstructTetrahedron_3}}
|
|
\ccGlue
|
|
\ccNestedType{Construct_object_3}{a model of \ccc{Kernel::ConstructObject_3}}
|
|
%%\ccGlue
|
|
%%\ccNestedType{Construct_aff_transformation_3}{}
|
|
\ccGlue
|
|
\ccNestedType{Construct_scaled_vector_3}{a model of \ccc{Kernel::ConstructScaledVector_3}}
|
|
\ccGlue
|
|
\ccNestedType{Construct_translated_point_3}{a model of \ccc{Kernel::ConstructTranslatedPoint_3}}
|
|
\ccGlue
|
|
\ccNestedType{Construct_point_on_3}{a model of \ccc{Kernel::ConstructPointOn_3}}
|
|
\ccGlue
|
|
\ccNestedType{Construct_projected_point_3}{a model of \ccc{Kernel::ConstructProjectedPoint_3}}
|
|
\ccGlue
|
|
\ccNestedType{Construct_lifted_point_3}{a model of \ccc{Kernel::ConstructLiftedPoint_3}}
|
|
%%\ccGlue
|
|
%%\ccNestedType{Construct_second_point_on_3}{}
|
|
%%\ccGlue
|
|
%%\ccNestedType{Construct_source_point_3}{}
|
|
%%\ccGlue
|
|
%%\ccNestedType{Construct_target_point_3}{}
|
|
%%\ccGlue
|
|
%%\ccNestedType{Construct_min_point_3}{}
|
|
%%\ccGlue
|
|
%%\ccNestedType{Construct_max_point_3}{}
|
|
\ccGlue
|
|
\ccNestedType{Construct_cartesian_const_iterator_3}{a model of \ccc{Kernel::ConstructCartesianConstIterator_3}}
|
|
\ccGlue
|
|
\ccNestedType{Construct_vertex_3}{a model of \ccc{Kernel::ConstructVertex_3}}
|
|
\ccGlue
|
|
\ccNestedType{Construct_bbox_3}{a model of \ccc{Kernel::ConstructBbox_3}}
|
|
%%\ccGlue
|
|
%%\ccNestedType{Construct_direction_of_line_3}{}
|
|
%%\ccGlue
|
|
%%\ccNestedType{Construct_direction_of_ray_3}{}
|
|
\ccGlue
|
|
\ccNestedType{Construct_supporting_plane_3}{a model of \ccc{Kernel::ConstructSupportingPlane_3}}
|
|
\ccGlue
|
|
\ccNestedType{Construct_orthogonal_vector_3}{a model of \ccc{Kernel::ConstructOrthogonalVector_3}}
|
|
\ccGlue
|
|
\ccNestedType{Construct_base_vector_3}{a model of \ccc{Kernel::ConstructBaseVector_3}}
|
|
\ccGlue
|
|
\ccNestedType{Construct_perpendicular_plane_3}{a model of \ccc{Kernel::ConstructPerpendicularPlane_3}}
|
|
\ccGlue
|
|
\ccNestedType{Construct_radical_plane_3}{a model of \ccc{Kernel::ConstructRadicalPlane_3}}
|
|
\ccGlue
|
|
\ccNestedType{Construct_perpendicular_line_3}{a model of \ccc{Kernel::ConstructPerpendicularLine_3}}
|
|
\ccGlue
|
|
\ccNestedType{Construct_midpoint_3}{a model of \ccc{Kernel::ConstructMidpoint_3}}
|
|
\ccGlue
|
|
\ccNestedType{Construct_center_3}{a model of \ccc{Kernel::ConstructCenter_3}}
|
|
\ccGlue
|
|
\ccNestedType{Construct_centroid_3}{a model of \ccc{Kernel::ConstructCentroid_3}}
|
|
\ccGlue
|
|
\ccNestedType{Construct_circumcenter_3}{a model of \ccc{Kernel::ConstructCircumcenter_3}}
|
|
\ccGlue
|
|
\ccNestedType{Construct_bisector_3}{a model of \ccc{Kernel::ConstructBisector_3}}
|
|
\ccGlue
|
|
\ccNestedType{Construct_cross_product_vector_3}{a model of \ccc{Kernel::ConstructCrossProductVector_3}}
|
|
\ccGlue
|
|
\ccNestedType{Construct_opposite_direction_3}{a model of \ccc{Kernel::ConstructOppositeDirection_3}}
|
|
\ccGlue
|
|
\ccNestedType{Construct_opposite_segment_3}{a model of \ccc{Kernel::ConstructOppositeSegment_3}}
|
|
\ccGlue
|
|
\ccNestedType{Construct_opposite_ray_3}{a model of \ccc{Kernel::ConstructOppositeRay_3}}
|
|
\ccGlue
|
|
\ccNestedType{Construct_opposite_line_3}{a model of \ccc{Kernel::ConstructOppositeLine_3}}
|
|
\ccGlue
|
|
\ccNestedType{Construct_opposite_plane_3}{a model of \ccc{Kernel::ConstructOppositePlane_3}}
|
|
\ccGlue
|
|
\ccNestedType{Construct_opposite_sphere_3}{a model of \ccc{Kernel::ConstructOppositeSphere_3}}
|
|
\ccGlue
|
|
\ccNestedType{Construct_opposite_vector_3}{a model of \ccc{Kernel::ConstructOppositeVector_3}}
|
|
|
|
If the result type is not determined, there is no \ccc{Construct_} prefix:
|
|
|
|
%%\ccNestedType{Transform_3}{}
|
|
%%\ccGlue
|
|
\ccNestedType{Intersect_3}{a model of \ccc{Kernel::Intersect_3}}
|
|
\ccGlue
|
|
\ccNestedType{Assign_3}{a model of \ccc{Kernel::Assign_3}}
|
|
|
|
If the result type is a number type, the prefix is \ccc{Compute_}:
|
|
|
|
\ccNestedType{Compute_area_3}{a model of \ccc{Kernel::ComputeArea_3}}
|
|
\ccGlue
|
|
\ccNestedType{Compute_squared_area_3}{a model of \ccc{Kernel::ComputeSquaredArea_3}}
|
|
\ccGlue
|
|
\ccNestedType{Compute_area_divided_by_pi_3}{a model of \ccc{Kernel::ComputeAreaDividedByPi_3}}
|
|
\ccGlue
|
|
\ccNestedType{Compute_approximate_area_3}{a model of \ccc{Kernel::ComputeApproximateArea_3}}
|
|
\ccGlue
|
|
\ccNestedType{Compute_squared_distance_3}{a model of \ccc{Kernel::ComputeSquaredDistance_3}}
|
|
\ccGlue
|
|
\ccNestedType{Compute_squared_length_3}{a model of \ccc{Kernel::ComputeSquaredLength_3}}
|
|
\ccGlue
|
|
\ccNestedType{Compute_squared_length_divided_by_pi_square_3}{a model of \ccc{Kernel::ComputeSquaredLengthDividedByPiSquare_3}}
|
|
\ccGlue
|
|
\ccNestedType{Compute_approximate_squared_length_3}{a model of \ccc{Kernel::ComputeApproximateSquaredLength_3}}
|
|
\ccGlue
|
|
\ccNestedType{Compute_squared_radius_3}{a model of \ccc{Kernel::ComputeSquaredRadius_3}}
|
|
\ccGlue
|
|
\ccNestedType{Compute_volume_3}{a model of \ccc{Kernel::ComputeVolume_3}}
|
|
|
|
\ccHeading{Generalized Predicates}
|
|
|
|
\ccNestedType{Angle_3}{a model of \ccc{Kernel::Angle_3}}
|
|
\ccGlue
|
|
\ccNestedType{Equal_3}{a model of \ccc{Kernel::Equal_3}}
|
|
\ccGlue
|
|
\ccNestedType{Equal_x_3}{a model of \ccc{Kernel::EqualX_3}}
|
|
\ccGlue
|
|
\ccNestedType{Equal_y_3}{a model of \ccc{Kernel::EqualY_3}}
|
|
\ccGlue
|
|
\ccNestedType{Equal_z_3}{a model of \ccc{Kernel::EqualZ_3}}
|
|
\ccGlue
|
|
\ccNestedType{Equal_xy_3}{a model of \ccc{Kernel::EqualXY_3}}
|
|
\ccGlue
|
|
\ccNestedType{Less_x_3}{a model of \ccc{Kernel::LessX_3}}
|
|
\ccGlue
|
|
\ccNestedType{Less_y_3}{a model of \ccc{Kernel::LessY_3}}
|
|
\ccGlue
|
|
\ccNestedType{Less_z_3}{a model of \ccc{Kernel::LessZ_3}}
|
|
\ccGlue
|
|
\ccNestedType{Less_xy_3}{a model of \ccc{Kernel::LessXY_3}}
|
|
\ccGlue
|
|
\ccNestedType{Less_xyz_3}{a model of \ccc{Kernel::LessXYZ_3}}
|
|
\ccGlue
|
|
\ccNestedType{Compare_x_3}{a model of \ccc{Kernel::CompareX_3}}
|
|
\ccGlue
|
|
\ccNestedType{Compare_y_3}{a model of \ccc{Kernel::CompareY_3}}
|
|
\ccGlue
|
|
\ccNestedType{Compare_z_3}{a model of \ccc{Kernel::CompareZ_3}}
|
|
\ccGlue
|
|
\ccNestedType{Compare_xy_3}{a model of \ccc{Kernel::CompareXY_3}}
|
|
\ccGlue
|
|
\ccNestedType{Compare_xyz_3}{a model of \ccc{Kernel::CompareXYZ_3}}
|
|
\ccGlue
|
|
\ccNestedType{Less_signed_distance_to_plane_3}{a model of \ccc{Kernel::LessSignedDistanceToPlane_3}}
|
|
\ccGlue
|
|
\ccNestedType{Less_distance_to_point_3}{a model of \ccc{Kernel::LessDistanceToPoint_3}}
|
|
\ccGlue
|
|
\ccNestedType{Compare_dihedral_angle_3}{a model of \ccc{Kernel::CompareDihedralAngle_3}}
|
|
\ccGlue
|
|
\ccNestedType{Compare_distance_3}{a model of \ccc{Kernel::CompareDistance_3}}
|
|
\ccGlue
|
|
\ccNestedType{Collinear_3}{a model of \ccc{Kernel::Collinear_3}}
|
|
\ccGlue
|
|
\ccNestedType{Coplanar_3}{a model of \ccc{Kernel::Coplanar_3}}
|
|
\ccGlue
|
|
\ccNestedType{Orientation_3}{a model of \ccc{Kernel::Orientation_3}}
|
|
\ccGlue
|
|
\ccNestedType{Coplanar_orientation_3}{a model of \ccc{Kernel::CoplanarOrientation_3}}
|
|
\ccGlue
|
|
\ccNestedType{Coplanar_side_of_bounded_circle_3}{a model of \ccc{Kernel::CoplanarSideOfBoundedCircle_3}}
|
|
\ccGlue
|
|
\ccNestedType{Side_of_oriented_sphere_3}{a model of \ccc{Kernel::SideOfOrientedSphere_3}}
|
|
\ccGlue
|
|
\ccNestedType{Side_of_bounded_sphere_3}{a model of \ccc{Kernel::SideOfBoundedSphere_3}}
|
|
\ccGlue
|
|
\ccNestedType{Is_degenerate_3}{a model of \ccc{Kernel::IsDegenerate_3}}
|
|
\ccGlue
|
|
\ccNestedType{Has_on_3}{a model of \ccc{Kernel::HasOn_3}}
|
|
\ccGlue
|
|
\ccNestedType{Has_on_bounded_side_3}{a model of \ccc{Kernel::HasOnBoundedSide_3}}
|
|
\ccGlue
|
|
\ccNestedType{Has_on_unbounded_side_3}{a model of \ccc{Kernel::HasOnUnboundedSide_3}}
|
|
\ccGlue
|
|
\ccNestedType{Has_on_boundary_3}{a model of \ccc{Kernel::HasOnBoundary_3}}
|
|
\ccGlue
|
|
\ccNestedType{Has_on_positive_side_3}{a model of \ccc{Kernel::HasOnPositiveSide_3}}
|
|
\ccGlue
|
|
\ccNestedType{Has_on_negative_side_3}{a model of \ccc{Kernel::HasOnNegativeSide_3}}
|
|
\ccGlue
|
|
\ccNestedType{Oriented_side_3}{a model of \ccc{Kernel::OrientedSide_3}}
|
|
\ccGlue
|
|
\ccNestedType{Bounded_side_3}{a model of \ccc{Kernel::BoundedSide_3}}
|
|
\ccGlue
|
|
\ccNestedType{Are_parallel_3 }{a model of \ccc{Kernel::AreParallel_3}}
|
|
\ccGlue
|
|
\ccNestedType{Are_ordered_along_line_3 }{a model of \ccc{Kernel::AreOrderedAlongLine_3}}
|
|
\ccGlue
|
|
\ccNestedType{Are_strictly_ordered_along_line_3}{a model of \ccc{Kernel::AreStrictlyOrderedAlongLine_3}}
|
|
\ccGlue
|
|
\ccNestedType{Collinear_are_ordered_along_line_3}{a model of \ccc{Kernel::CollinearAreOrderedAlongLine_3}}
|
|
\ccGlue
|
|
\ccNestedType{Collinear_are_strictly_ordered_along_line_3}{a model of \ccc{Kernel::CollinearAreStrictlyOrderedAlongLine_3}}
|
|
\ccGlue
|
|
\ccNestedType{Do_intersect_3}{a model of \ccc{Kernel::DoIntersect_3}}
|
|
|
|
\ccOperations
|
|
|
|
For each of the function objects above, there must exist a member
|
|
function that requires no arguments and returns an instance of that
|
|
function object. The name of the member function is the uncapitalized
|
|
name of the type returned with the suffix \ccc{_object} appended. For
|
|
example, for the function object
|
|
\ccc{Kernel::Construct_vector_2} the following member function must exist:
|
|
|
|
\ccTexHtml{\ccSetThreeColumns{Kernel::Are_strictly_ordered_along_line}{}{\hspace
|
|
*{4.5cm}}}{}
|
|
|
|
\setlength{\parskip}{0pt}
|
|
|
|
\ccMemberFunction{Kernel::Construct_vector_2 construct_vector_2_object() const ;}
|
|
{}
|
|
|
|
\def\ccTagRmEigenClassName{\ccTrue}
|
|
|
|
\ccSeeAlso
|
|
|
|
\ccc{Kernel_d}
|
|
|
|
\end{ccRefConcept}
|