\begin{ccRefClass}{Circular_kernel_2} \ccDefinition \ccInclude{CGAL/Circular_kernel.h} \ccIsModel \ccc{CircularKernel} \ccParameters The circular kernel is parameterized by a \ccc{LinearKernel} parameter (and derives from it), in order to reuse all needed functionalities on basic linear objects provided by one of the CGAL kernels. It also allows other implementations of these basic functionalities. The second parameter, \ccc{AlgebraicKernelForCircles}, is meant to provide the circular kernel with all the algebraic functionalities required for the manipulation of algebraic curves. \ccInheritsFrom \ccc{LinearKernel} \ccTypes \ccThree{typedef Circular_arc_point_2}{Root_of_4xxx}{} \ccThreeToTwo The circular kernel uses basic number types of the algebraic kernel: \ccTypedef{typedef AlgebraicKernelForCircles::RT RT;}{Ring number type.} \ccTypedef{typedef AlgebraicKernelForCircles::FT FT;}{Field number type.} In fact, the two number types \ccc{AlgebraicKernelForCircles::RT} and \ccc{LinearKernel::RT} must coincide, as well as \ccc{AlgebraicKernelForCircles::FT} and \ccc{LinearKernel::FT}. The following types are available, as well as all the functionality on them described in the \ccc{CircularKernel} concept. \ccTypedef{typedef Line_arc_2 Line_arc_2;}{} \ccGlue \ccTypedef{typedef Circular_arc_2 Circular_arc_2;}{} \ccGlue \ccTypedef{typedef Circular_arc_point_2 Circular_arc_point_2;}{} \ccSeeAlso \ccRefIdfierPage{LinearKernel}\\ \ccRefIdfierPage{AlgebraicKernelForCircles} \end{ccRefClass}