CGAL 4.7 - 2D and 3D Linear Geometry Kernel: Kernel::ConstructPlane_3 Concept Reference

\( \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.7 - 2D and 3D Linear Geometry Kernel

All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Groups Pages
List of all members
Kernel::ConstructPlane_3 Concept Reference
Kernel Function Object Concepts

## Definition

Refines:
  `AdaptableFunctor` (with two arguments)

See Also
  `CGAL::Plane_3<Kernel>`

## Operations

A model of this concept must provide:
Kernel::Plane_3 | operator() (const Kernel::RT &a, const Kernel::RT &b, const Kernel::RT &c, const Kernel::RT &d)
| creates a plane defined by the equation \( a\, x +b\, y +c\, z + d = 0\). More...
Kernel::Plane_3 | operator() (const Kernel::Point_3 &p, const Kernel::Point_3 &q, const Kernel::Point_3 &r)
| creates a plane passing through the points `p`, `q` and `r`. More...
Kernel::Plane_3 | operator() (const Kernel::Point_3 &p, const Kernel::Direction_3 &d)
| introduces a plane that passes through point `p` and that has as an orthogonal direction equal to `d`.
Kernel::Plane_3 | operator() (const Kernel::Point_3 &p, const Kernel::Vector_3 &v)
| introduces a plane that passes through point `p` and that is orthogonal to `v`.
Kernel::Plane_3 | operator() (const Kernel::Line_3 &l, const Kernel::Point_3 &p)
| introduces a plane that is defined through the three points `l.point(0)`, `l.point(1)` and `p`.
Kernel::Plane_3 | operator() (const Kernel::Ray_3 &r, const Kernel::Point_3 &p)
| introduces a plane that is defined through the three points `r.point(0)`, `r.point(1)` and `p`.
Kernel::Plane_3 | operator() (const Kernel::Segment_3 &s, const Kernel::Point_3 &p)
| introduces a plane that is defined through the three points `s.source()`, `s.target()` and `p`.
Kernel::Plane_3 | operator() (const Kernel::Circle_3 &c)
| introduces a plane that is defined as the plane containing the circle.

## Member Function Documentation

Kernel::Plane_3 Kernel::ConstructPlane_3::operator() | ( | const Kernel::RT & | a,
|  | const Kernel::RT & | b,
|  | const Kernel::RT & | c,
|  | const Kernel::RT & | d
| ) |  |

creates a plane defined by the equation \( a\, x +b\, y +c\, z + d = 0\).

Notice that it is degenerate if \( a = b = c = 0\).

Kernel::Plane_3 Kernel::ConstructPlane_3::operator() | ( | const Kernel::Point_3 & | p,
|  | const Kernel::Point_3 & | q,
|  | const Kernel::Point_3 & | r
| ) |  |

creates a plane passing through the points `p`, `q` and `r`.

The plane is oriented such that `p`, `q` and `r` are oriented in a positive sense (that is counterclockwise) when seen from the positive side of the plane. Notice that it is degenerate if the points are collinear.