\( \newcommand{\E}{\mathrm{E}} \) \( \newcommand{\A}{\mathrm{A}} \) \( \newcommand{\R}{\mathrm{R}} \) \( \newcommand{\N}{\mathrm{N}} \) \( \newcommand{\Q}{\mathrm{Q}} \) \( \newcommand{\Z}{\mathrm{Z}} \) \( \def\ccSum #1#2#3{ \sum_{#1}^{#2}{#3} } \def\ccProd #1#2#3{ \sum_{#1}^{#2}{#3} }\)
CGAL 4.13.2 - 3D Spherical Geometry Kernel
CGAL::Spherical_kernel_3< Kernel, AlgebraicKernelForSpheres > Struct Template Reference

#include <CGAL/Spherical_kernel_3.h>

Inherits from

Kernel.

Definition

Is Model Of:
SphericalKernel

Parameters

The first parameter of the spherical kernel must be instantiated with a model of the Kernel concept. The Spherical_kernel_3 class template derives from this first parameter, in order to reuse all needed functionalities on basic objects provided by a model of the Kernel concept.

The second parameter, AlgebraicKernelForSpheres, is meant to provide the spherical kernel with all the algebraic functionalities required for the manipulation of algebraic curves.

See also
Kernel
AlgebraicKernelForSpheres
CGAL::Exact_spherical_kernel_3

Types

The spherical kernel uses basic number types of the algebraic kernel: In fact, the two number types AlgebraicKernelForSpheres::RT and Kernel::RT must refer to the same type, as well as AlgebraicKernelForSpheres::FT and Kernel::FT.

typedef AlgebraicKernelForSpheres::RT RT
 Ring number type.
 
typedef AlgebraicKernelForSpheres::FT FT
 Field number type.
 

The following types are available, as well as all the functionality on them described in the SphericalKernel concept.

Polynomials_for_circle_3 is implemented as a std::pair< Polynomial_for_spheres_2_3, Polynomial_1_3 > and is a model of AlgebraicKernelForSpheres::PolynomialsForCircles_3.

typedef Line_arc_3< Spherical_kernel_3Line_arc_3
 
typedef Circular_arc_3< Spherical_kernel_3Circular_arc_3
 
typedef Circular_arc_point_3< Spherical_kernel_3Circular_arc_point_3
 

Additional Inherited Members

- Public Types inherited from Kernel
typedef unspecified_type FT
 
typedef unspecified_type RT
 
typedef unspecified_type Boolean
 
typedef unspecified_type Sign
 
typedef unspecified_type Comparison_result
 
typedef unspecified_type Orientation
 
typedef unspecified_type Oriented_side
 
typedef unspecified_type Bounded_side
 
typedef unspecified_type Angle
 
typedef unspecified_type Cartesian_const_iterator_2
 
typedef unspecified_type Point_2
 
typedef unspecified_type Weighted_point_2
 
typedef unspecified_type Vector_2
 
typedef unspecified_type Direction_2
 
typedef unspecified_type Line_2
 
typedef unspecified_type Ray_2
 
typedef unspecified_type Segment_2
 
typedef unspecified_type Triangle_2
 
typedef unspecified_type Iso_rectangle_2
 
typedef unspecified_type Circle_2
 
typedef unspecified_type Object_2
 
typedef unspecified_type Construct_point_2
 
typedef unspecified_type Construct_weighted_point_2
 
typedef unspecified_type Construct_vector_2
 
typedef unspecified_type Construct_direction_2
 
typedef unspecified_type Construct_segment_2
 
typedef unspecified_type Construct_line_2
 
typedef unspecified_type Construct_ray_2
 
typedef unspecified_type Construct_circle_2
 
typedef unspecified_type Construct_triangle_2
 
typedef unspecified_type Construct_iso_rectangle_2
 
typedef unspecified_type Construct_object_2
 
typedef unspecified_type Construct_scaled_vector_2
 
typedef unspecified_type Construct_difference_of_vectors_2
 
typedef unspecified_type Construct_sum_of_vectors_2
 
typedef unspecified_type Construct_divided_vector_2
 
typedef unspecified_type Construct_translated_point_2
 
typedef unspecified_type Construct_point_on_2
 
typedef unspecified_type Construct_projected_point_2
 
typedef unspecified_type Construct_projected_xy_point_2
 
typedef unspecified_type Construct_second_point_2
 
typedef unspecified_type Construct_cartesian_const_iterator_2
 
typedef unspecified_type Construct_vertex_2
 
typedef unspecified_type Construct_bbox_2
 
typedef unspecified_type Construct_perpendicular_vector_2
 
typedef unspecified_type Construct_perpendicular_direction_2
 
typedef unspecified_type Construct_perpendicular_line_2
 
typedef unspecified_type Construct_midpoint_2
 
typedef unspecified_type Construct_equidistant_line_3
 
typedef unspecified_type Construct_center_2
 
typedef unspecified_type Construct_centroid_2
 
typedef unspecified_type Construct_barycenter_2
 
typedef unspecified_type Construct_circumcenter_2
 
typedef unspecified_type Construct_weighted_circumcenter_2
 
typedef unspecified_type Construct_bisector_2
 
typedef unspecified_type Construct_radical_axis_2
 
typedef unspecified_type Construct_radical_line_2
 
typedef unspecified_type Construct_opposite_direction_2
 
typedef unspecified_type Construct_opposite_segment_2
 
typedef unspecified_type Construct_opposite_ray_2
 
typedef unspecified_type Construct_opposite_line_2
 
typedef unspecified_type Construct_opposite_triangle_2
 
typedef unspecified_type Construct_opposite_circle_2
 
typedef unspecified_type Construct_opposite_vector_2
 
typedef unspecified_type Construct_source_2
 
typedef unspecified_type Construct_target_2
 
typedef unspecified_type Construct_max_vertex_2
 
typedef unspecified_type Construct_min_vertex_2
 
typedef unspecified_type Intersect_2
 
typedef unspecified_type Assign_2
 
typedef unspecified_type Compute_weight_2
 
typedef unspecified_type Compute_x_2
 
typedef unspecified_type Compute_y_2
 
typedef unspecified_type Compute_a_2
 
typedef unspecified_type Compute_b_2
 
typedef unspecified_type ComputeC_2
 
typedef unspecified_type Compute_dx_2
 
typedef unspecified_type Compute_dy_2
 
typedef unspecified_type Compute_hx_2
 
typedef unspecified_type Compute_hy_2
 
typedef unspecified_type Compute_hw_2
 
typedef unspecified_type Compute_L_infinity_distance_2
 
typedef unspecified_type Compute_xmax_2
 
typedef unspecified_type Compute_xmin_2
 
typedef unspecified_type Compute_ymax_2
 
typedef unspecified_type Compute_ymin_2
 
typedef unspecified_type Compute_y_at_x_2
 
typedef unspecified_type Compute_squared_distance_2
 
typedef unspecified_type Compute_squared_length_2
 
typedef unspecified_type Compute_squared_radius_2
 
typedef unspecified_type Compute_squared_radius_smallest_orthogonal_circle_2
 
typedef unspecified_type Compute_power_product_2
 
typedef unspecified_type Compute_area_2
 
typedef unspecified_type Compute_determinant_2
 
typedef unspecified_type Compute_scalar_product_2
 
typedef unspecified_type Angle_2
 
typedef unspecified_type Equal_2
 
typedef unspecified_type Equal_x_2
 
typedef unspecified_type Equal_y_2
 
typedef unspecified_type Less_x_2
 
typedef unspecified_type Less_y_2
 
typedef unspecified_type Less_xy_2
 
typedef unspecified_type Less_yx_2
 
typedef unspecified_type Compare_x_2
 
typedef unspecified_type Compare_x_at_y_2
 
typedef unspecified_type Compare_y_2
 
typedef unspecified_type Compare_xy_2
 
typedef unspecified_type Compare_yx_2
 
typedef unspecified_type Compare_y_at_x_2
 
typedef unspecified_type Compare_distance_2
 
typedef unspecified_type Compare_power_distance_2
 
typedef unspecified_type Compare_square_distance_2
 
typedef unspecified_type Compare_angle_with_x_axis_2
 
typedef unspecified_type Compare_slope_2
 
typedef unspecified_type Less_distance_to_point_2
 
typedef unspecified_type Less_signed_distance_to_line_2
 
typedef unspecified_type Less_rotate_ccw_2
 
typedef unspecified_type Left_turn_2
 
typedef unspecified_type Collinear_2
 
typedef unspecified_type Orientation_2
 
typedef unspecified_type Side_of_oriented_circle_2
 
typedef unspecified_type Side_of_bounded_circle_2
 
typedef unspecified_type Power_side_of_oriented_power_circle_2
 
typedef unspecified_type Power_side_of_bounded_power_circle_2
 
typedef unspecified_type Is_horizontal_2
 
typedef unspecified_type Is_vertical_2
 
typedef unspecified_type Is_degenerate_2
 
typedef unspecified_type Has_on_2
 
typedef unspecified_type Collinear_has_on_2
 
typedef unspecified_type Has_on_bounded_side_2
 
typedef unspecified_type Has_on_unbounded_side_2
 
typedef unspecified_type Has_on_boundary_2
 
typedef unspecified_type Has_on_positive_side_2
 
typedef unspecified_type Has_on_negative_side_2
 
typedef unspecified_type Oriented_side_2
 
typedef unspecified_type Bounded_side_2
 
typedef unspecified_type Are_parallel_2
 
typedef unspecified_type Are_ordered_along_line_2
 
typedef unspecified_type Are_strictly_ordered_along_line_2
 
typedef unspecified_type Collinear_are_ordered_along_line_2
 
typedef unspecified_type Collinear_are_strictly_ordered_along_line_2
 
typedef unspecified_type Counterclockwise_in_between_2
 
typedef unspecified_type Do_intersect_2
 
typedef unspecified_type Cartesian_const_iterator_3
 
typedef unspecified_type Point_3
 
typedef unspecified_type Weighted_point_3
 
typedef unspecified_type Vector_3
 
typedef unspecified_type Direction_3
 
typedef unspecified_type Iso_cuboid_3
 
typedef unspecified_type Line_3
 
typedef unspecified_type Ray_3
 
typedef unspecified_type Circle_3
 
typedef unspecified_type Sphere_3
 
typedef unspecified_type Segment_3
 
typedef unspecified_type Plane_3
 
typedef unspecified_type Triangle_3
 
typedef unspecified_type Tetrahedron_3
 
typedef unspecified_type Object_3
 
typedef unspecified_type Construct_point_3
 
typedef unspecified_type Construct_weighted_point_3
 
typedef unspecified_type Construct_vector_3
 
typedef unspecified_type Construct_direction_3
 
typedef unspecified_type Construct_plane_3
 
typedef unspecified_type Construct_iso_cuboid_3
 
typedef unspecified_type Construct_line_3
 
typedef unspecified_type Construct_ray_3
 
typedef unspecified_type Construct_sphere_3
 
typedef unspecified_type Construct_segment_3
 
typedef unspecified_type Construct_triangle_3
 
typedef unspecified_type Construct_tetrahedron_3
 
typedef unspecified_type Construct_circle_3
 
typedef unspecified_type Construct_object_3
 
typedef unspecified_type Construct_scaled_vector_3
 
typedef unspecified_type Construct_translated_point_3
 
typedef unspecified_type Construct_point_on_3
 
typedef unspecified_type Construct_projected_point_3
 
typedef unspecified_type Construct_lifted_point_3
 
typedef unspecified_type Construct_cartesian_const_iterator_3
 
typedef unspecified_type Construct_vertex_3
 
typedef unspecified_type Construct_source_3
 
typedef unspecified_type Construct_target_3
 
typedef unspecified_type Construct_max_vertex_3
 
typedef unspecified_type Construct_min_vertex_3
 
typedef unspecified_type Construct_bbox_3
 
typedef unspecified_type Construct_supporting_plane_3
 
typedef unspecified_type Construct_orthogonal_vector_3
 
typedef unspecified_type Construct_base_vector_3
 
typedef unspecified_type Construct_difference_of_vectors_3
 
typedef unspecified_type Construct_sum_of_vectors_3
 
typedef unspecified_type Construct_divided_vector_3
 
typedef unspecified_type Construct_normal_3
 
typedef unspecified_type Construct_perpendicular_plane_3
 
typedef unspecified_type Construct_radical_plane_3
 
typedef unspecified_type Construct_perpendicular_line_3
 
typedef unspecified_type Construct_midpoint_3
 
typedef unspecified_type Construct_center_3
 
typedef unspecified_type Construct_centroid_3
 
typedef unspecified_type Construct_circumcenter_3
 
typedef unspecified_type Construct_weighted_circumcenter_3
 
typedef unspecified_type Construct_bisector_3
 
typedef unspecified_type Construct_cross_product_vector_3
 
typedef unspecified_type Construct_barycenter_3
 
typedef unspecified_type Construct_second_point_3
 
typedef unspecified_type Construct_opposite_direction_3
 
typedef unspecified_type Construct_opposite_segment_3
 
typedef unspecified_type Construct_opposite_ray_3
 
typedef unspecified_type Construct_opposite_line_3
 
typedef unspecified_type Construct_opposite_plane_3
 
typedef unspecified_type Construct_opposite_sphere_3
 
typedef unspecified_type Construct_opposite_vector_3
 
typedef unspecified_type Intersect_3
 
typedef unspecified_type Assign_3
 
typedef unspecified_type Compute_weight_3
 
typedef unspecified_type Compute_x_3
 
typedef unspecified_type Compute_y_3
 
typedef unspecified_type Compute_z_3
 
typedef unspecified_type Compute_a_3
 
typedef unspecified_type Compute_b_3
 
typedef unspecified_type Compute_c_3
 
typedef unspecified_type Compute_d_3
 
typedef unspecified_type Compute_hx_3
 
typedef unspecified_type Compute_hy_3
 
typedef unspecified_type Compute_hz_3
 
typedef unspecified_type Compute_hw_3
 
typedef unspecified_type Compute_L_infinity_distance_3
 
typedef unspecified_type Compute_dx_3
 
typedef unspecified_type Compute_dy_3
 
typedef unspecified_type Compute_dz_3
 
typedef unspecified_type Compute_xmax_3
 
typedef unspecified_type Compute_xmin_3
 
typedef unspecified_type Compute_ymax_3
 
typedef unspecified_type Compute_ymin_3
 
typedef unspecified_type Compute_zmax_3
 
typedef unspecified_type Compute_zmin_3
 
typedef unspecified_type Compute_area_3
 
typedef unspecified_type Compute_squared_area_3
 
typedef unspecified_type Compute_area_divided_by_pi_3
 
typedef unspecified_type Compute_approximate_area_3
 
typedef unspecified_type Compute_approximate_dihedral_angle_3
 
typedef unspecified_type Compute_determinant_3
 
typedef unspecified_type Compute_scalar_product_3
 
typedef unspecified_type Compute_squared_distance_3
 
typedef unspecified_type Compute_squared_length_3
 
typedef unspecified_type Compute_squared_length_divided_by_pi_square_3
 
typedef unspecified_type Compute_approximate_squared_length_3
 
typedef unspecified_type Compute_squared_radius_3
 
typedef unspecified_type Compute_volume_3
 
typedef unspecified_type Compute_power_product_3
 
typedef unspecified_type Compute_power_distance_to_power_sphere_3
 
typedef unspecified_type Compute_squared_radius_smallest_orthogonal_sphere_3
 
typedef unspecified_type Angle_3
 
typedef unspecified_type Equal_3
 
typedef unspecified_type Equal_x_3
 
typedef unspecified_type Equal_y_3
 
typedef unspecified_type Equal_z_3
 
typedef unspecified_type Equal_xy_3
 
typedef unspecified_type Less_x_3
 
typedef unspecified_type Less_y_3
 
typedef unspecified_type Less_z_3
 
typedef unspecified_type Less_xy_3
 
typedef unspecified_type Less_xyz_3
 
typedef unspecified_type Compare_weighted_squared_radius_3
 
typedef unspecified_type Compare_x_3
 
typedef unspecified_type Compare_y_3
 
typedef unspecified_type Compare_z_3
 
typedef unspecified_type Compare_xy_3
 
typedef unspecified_type Compare_xyz_3
 
typedef unspecified_type Compare_slope_3
 
typedef unspecified_type Compare_squared_distance_3
 
typedef unspecified_type Less_signed_distance_to_plane_3
 
typedef unspecified_type Less_distance_to_point_3
 
typedef unspecified_type Compare_dihedral_angle_3
 
typedef unspecified_type Compare_distance_3
 
typedef unspecified_type Compare_power_distance_3
 
typedef unspecified_type Collinear_3
 
typedef unspecified_type Coplanar_3
 
typedef unspecified_type Orientation_3
 
typedef unspecified_type Coplanar_orientation_3
 
typedef unspecified_type Coplanar_side_of_bounded_circle_3
 
typedef unspecified_type Side_of_oriented_sphere_3
 
typedef unspecified_type Side_of_bounded_sphere_3
 
typedef unspecified_type Power_side_of_oriented_power_sphere_3
 
typedef unspecified_type Power_side_of_bounded_power_sphere_3
 
typedef unspecified_type Is_degenerate_3
 
typedef unspecified_type Has_on_3
 
typedef unspecified_type Has_on_bounded_side_3
 
typedef unspecified_type Has_on_unbounded_side_3
 
typedef unspecified_type Has_on_boundary_3
 
typedef unspecified_type Has_on_positive_side_3
 
typedef unspecified_type Has_on_negative_side_3
 
typedef unspecified_type Oriented_side_3
 
typedef unspecified_type Bounded_side_3
 
typedef unspecified_type Are_parallel_3
 
typedef unspecified_type Are_ordered_along_line_3
 
typedef unspecified_type Are_strictly_ordered_along_line_3
 
typedef unspecified_type Collinear_are_ordered_along_line_3
 
typedef unspecified_type Collinear_are_strictly_ordered_along_line_3
 
typedef unspecified_type Do_intersect_3
 
- Public Member Functions inherited from Kernel
Kernel::Construct_vector_2 construct_vector_2_object () const
 
- Static Public Attributes inherited from Kernel
static const bool Has_filtered_predicates