|
CGAL 6.3 - 2D and 3D Linear Geometry Kernel
|
| template<typename SphericalType1, typename SphericalType1, typename OutputIterator> | |
| OutputIterator | CGAL::intersection (const SphericalType1 &obj1, const SphericalType2 &obj2, OutputIterator intersections) |
| Constructs the intersection elements between the two input objects and stores them in the OutputIterator in lexicographic order, where both, SphericalType1 and SphericalType2, can be either. | |
| template<typename Type1, typename Type2, typename Type3, typename OutputIterator> | |
| OutputIterator | CGAL::intersection (const Type1 &obj1, const Type2 &obj2, const Type3 &obj3, OutputIterator intersections) |
| Copies in the output iterator the intersection elements between the three objects. | |
| OutputIterator CGAL::intersection | ( | const SphericalType1 & | obj1, |
| const SphericalType2 & | obj2, | ||
| OutputIterator | intersections ) |
#include <CGAL/Spherical_kernel_intersections.h>
Constructs the intersection elements between the two input objects and stores them in the OutputIterator in lexicographic order, where both, SphericalType1 and SphericalType2, can be either.
See Chapter Chapter_3D_Spherical_Geometry_Kernel for details on a spherical kernel instantiation.
When using a spherical kernel, in addition to the function overloads documented here, the following function overloads are also available.
The iterator versions of those functions can be used in conjunction with Dispatch_output_iterator.
Since both the number of intersections, if any, and types of the intersection results depend on the arguments, the function expects an output iterator on Kernel::Intersect_3(Type1, Type2) as presented below.
and depending on the types SphericalType1 and SphericalType2, the computed type can be
| OutputIterator CGAL::intersection | ( | const Type1 & | obj1, |
| const Type2 & | obj2, | ||
| const Type3 & | obj3, | ||
| OutputIterator | intersections ) |
#include <CGAL/Spherical_kernel_intersections.h>
Copies in the output iterator the intersection elements between the three objects.
intersections iterates on elements of type std::variant< Circle_3, Plane_3, Sphere_3, std::pair< Circular_arc_point_3, unsigned > >, in lexicographic order when this ordering is defined on the computed objects
where Type1, Type2 and Type3 can be either
and depending of these types, the computed return value