CGAL 6.1.1 - 2D and 3D Linear Geometry Kernel

Loading...
Searching...
No Matches
CGAL::do_intersect() (3D Spherical Kernel)
Reference Manual » Global Kernel Functions » Intersection Testing Functions - CGAL::do_intersect()

##

bool | CGAL::do_intersect (Type1< SphericalKernel > obj1, Type2< SphericalKernel > obj2)
| checks whether `obj1` and `obj2` intersect.
bool | CGAL::do_intersect (Type1< SphericalKernel > obj1, Type2< SphericalKernel > obj2, Type3< SphericalKernel > obj3)
| checks whether `obj1`, `obj2` and `obj3` intersect.

## Function Documentation

## ◆ do_intersect() [1/2]

bool CGAL::do_intersect | ( | Type1< SphericalKernel > | obj1,
|  | Type2< SphericalKernel > | obj2
| ) |  |

`#include <CGAL/Spherical_kernel_intersections.h>`

checks whether `obj1` and `obj2` intersect.

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.

Two objects `obj1` and `obj2` intersect if there is a point `p` that is part of both `obj1` and `obj2`. The intersection region of those two objects is defined as the set of all points `p` that are part of both `obj1` and `obj2`. Note that while for a polygon we consider the enclosed domain, for an object of type `Circle_3` or `Sphere_3` only the curve or the surface is considered.

`Type1` and `Type2` can be any of the following:

- `Line_3<SphericalKernel>`
- `Circle_3<SphericalKernel>`
- `Plane_3<SphericalKernel>`
- `Sphere_3<SphericalKernel>`
- `Line_arc_3<SphericalKernel>`
- `Circular_arc_3<SphericalKernel>`

An example illustrating this is presented in Chapter Chapter_3D_Spherical_Geometry_Kernel.

## ◆ do_intersect() [2/2]

bool CGAL::do_intersect | ( | Type1< SphericalKernel > | obj1,
|  | Type2< SphericalKernel > | obj2,
|  | Type3< SphericalKernel > | obj3
| ) |  |

`#include <CGAL/Spherical_kernel_intersections.h>`

checks whether `obj1`, `obj2` and `obj3` intersect.

`Type1`, `Type2` and `Type3` can be:

- `Sphere_3<SphericalKernel>`
- `Plane_3<SphericalKernel>`