CGAL 4.12 - 2D and 3D Linear Geometry Kernel
Kernel::ConstructPointOn_3 Concept Reference

## Definition

Refines:
AdaptableFunctor (with two arguments)
CGAL::Line_3<Kernel>
CGAL::Plane_3<Kernel>
CGAL::Ray_3<Kernel>
CGAL::Segment_3<Kernel>

## Operations

A model of this concept must provide:

Kernel::Point_3 operator() (const Kernel::Line_3 &l, int i)
returns an arbitrary point on l. More...

Kernel::Point_3 operator() (const Kernel::Plane_3 &h)
returns an arbitrary point on h.

Kernel::Point_3 operator() (const Kernel::Ray_3 &r, int i)
returns a point on r. More...

Kernel::Point_3 operator() (const Kernel::Segment_3 &s, int i)
returns source or target of s: point(0) returns the source of s, point(1) returns the target of s. More...

## ◆ operator()() [1/3]

 Kernel::Point_3 Kernel::ConstructPointOn_3::operator() ( const Kernel::Line_3 & l, int i )

returns an arbitrary point on l.

It holds point(i) == point(j), iff i==j. Furthermore, is directed from point(i) to point(j), for all i < j.

## ◆ operator()() [2/3]

 Kernel::Point_3 Kernel::ConstructPointOn_3::operator() ( const Kernel::Ray_3 & r, int i )

returns a point on r.

point(0) is the source, point(i), with i>0, is different from the source.

Precondition
i >= 0.

## ◆ operator()() [3/3]

 Kernel::Point_3 Kernel::ConstructPointOn_3::operator() ( const Kernel::Segment_3 & s, int i )

returns source or target of s: point(0) returns the source of s, point(1) returns the target of s.

The parameter i is taken modulo 2, which gives easy access to the other end point.