cgal/Old_Packages/Doc23/doc_tex/kernel/Ref/R.tex

50 lines
1.6 KiB
TeX

\begin{ccRefConcept}{R}
The representation class parameter of the kernel types is denoted by \ccc{R}.
In terms of concepts, whenever \ccc{R} is used with a class \ccc{Kernel_object_d<R>},
a model for \ccc{R} must provide a nested type \ccc{R::Kernel_object_d} that conicides
with \ccc{Kernel_object_d<R>}. The \cgal\ classes \ccc{Cartesian}, \ccc{Homogeneous},
\ccc{Simple_cartesian} and \ccc{Simple_homogeneous} fulfill this requirement.
The requirement is slightly
stronger than the requirements for \ccc{Kernel}, since a type identity between
\ccc{Kernel::Kernel_object_d} and \ccc{Kernel_object_d<Kernel>} is not required for
a \ccc{Kernel}. The class \ccc{Kernel_object_d<Kernel>} need not even be instantiable.
\ccTypes
\ccNestedType{FT}{a number type that is a model for \ccc{FieldNumberType}}
\ccGlue
\ccNestedType{RT}{a number type that is a model for \ccc{RingNumberType}}
\ccHasModels
\ccc{Cartesian<FieldNumberType>}, \ccc{Homogeneous<RingNumberType>},
\ccc{Simple_cartesian<FieldNumberType>},
\ccc{Simple_homogeneous<RingNumberType>}
\ccSeeAlso
\ccc{Point_2<R>} \\
\ccc{Vector_2<R>} \\
\ccc{Direction_2<R>} \\
\ccc{Line_2<R>} \\
\ccc{Ray_2<R>} \\
\ccc{Segment_2<R>} \\
\ccc{Triangle_2<R>} \\
\ccc{Iso_rectangle_2<R>} \\
\ccc{Aff_transformation_2<R>} \\
\ccc{Circle_2<R>} \\
\ccc{Point_3<R>} \\
\ccc{Vector_3<R>} \\
\ccc{Direction_3<R>} \\
\ccc{Iso_cuboid_3<R>} \\
\ccc{Line_3<R>} \\
\ccc{Ray_3<R>} \\
\ccc{Sphere_3<R>} \\
\ccc{Segment_3<R>} \\
\ccc{Plane_3<R>} \\
\ccc{Triangle_3<R>} \\
\ccc{Tetrahedron_3<R>} \\
\ccc{Aff_transformation_3<R>} \\
\ccc{Point_d<R>}
\end{ccRefConcept}