\( \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.5.2 - 2D and 3D Linear Geometry Kernel
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Groups Pages
Kernel::ConstructPlane_3 Concept Reference

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.