cgal/Old_Packages/Doc23/doc_tex/kernel/Ref/Ray_3.tex

80 lines
2.5 KiB
TeX

\begin{ccRefClass} {Ray_3<R>}
\ccDefinition
An object \ccStyle{r} of the data type \ccRefName\ is a directed
straight ray in the three-dimensional Euclidean space $\E^3$. It starts
in a point called the {\em source} of \ccStyle{r} and it goes to infinity.
\ccCreation
\ccCreationVariable{r}
\ccHidden \ccConstructor{Ray_3();}
{introduces an uninitialized variable \ccVar.}
\ccHidden \ccConstructor{Ray_3(const Ray_3<R> &s);}
{copy constructor.}
\ccConstructor{Ray_3(const Point_3<R> &p, const Point_3<R> &q);}
{introduces a ray \ccVar\
with source $p$ and passing through point $q$.}
\ccConstructor{Ray_3(const Point_3<R> &p, const Direction_3<R> &d)}
{introduces a ray \ccVar\ with source $p$ and with
direction $d$.}
\ccOperations
\ccHidden \ccMethod{Ray_3<R> &operator=(const Ray_3<R> &s);}
{Assignment.}
\ccMethod{bool operator==(const Ray_3<R> &h) const;}
{Test for equality: two rays are equal, iff they have the same
source and the same direction.}
\ccMethod{bool operator!=(const Ray_3<R> &h) const;}
{Test for inequality.}
\ccMethod{Point_3<R> source() const;}
{returns the source of \ccVar}
\ccMethod{Point_3<R> point(int i) const;}
{returns a point on \ccVar. \ccStyle{point(0)} is the source.
\ccStyle{point(i)}, with $i>0$, is different from the
source. \ccPrecond $i \geq 0$.}
\ccMethod{Direction_3<R> direction() const;}
{returns the direction of \ccVar.}
\ccMethod{Line_3<R> supporting_line() const;}
{returns the line supporting \ccVar\ which has the same direction.}
\ccMethod{Ray_3<R> opposite() const;}
{returns the ray with the same source and the opposite direction.}
\ccMethod{bool is_degenerate() const;}
{ray \ccVar\ is degenerate, if the source and the second defining
point fall together (that is if the direction is degenerate).}
\ccMethod{bool has_on(const Point_3<R> &p) const;}
{A point is on \ccVar, iff it is equal to the source
of \ccVar, or if it is in the interior of \ccVar.}
%
% \ccMethod{bool collinear_has_on(const Point_3<R> &p) const;}
% {checks if point $p$ is on ray \ccVar. This function is faster
% than function \ccStyle{has_on()}.
% \ccPrecond{$p$ is collinear to \ccVar.}}
%
\ccMethod{Ray_3<R> transform(const Aff_transformation_3<R> &t) const;}
{returns the ray obtained by applying $t$ on the source
and on the direction of \ccVar.}
\ccSeeAlso
\ccRefConceptPage{Kernel::Ray_3}
\end{ccRefClass}