mirror of https://github.com/CGAL/cgal
89 lines
3.8 KiB
TeX
89 lines
3.8 KiB
TeX
% +------------------------------------------------------------------------+
|
|
% | Reference manual page: Interpolation/intro.tex
|
|
% +------------------------------------------------------------------------+
|
|
% | August 2003 Julia Floetotto
|
|
% | Package: Interpolation
|
|
% |
|
|
% |
|
|
% +------------------------------------------------------------------------+
|
|
|
|
%\clearpage
|
|
%\section{Reference Pages for Interpolation class}
|
|
\ccRefChapter{Interpolation}
|
|
\label{chap:Interpolation}
|
|
\ccChapterAuthor{Julia Fl{\"o}totto}
|
|
|
|
Scattered data interpolation solves the following problem: given
|
|
measures of a function on a set of discrete data points, the task is
|
|
to interpolate this function on an arbitrary query point.
|
|
|
|
If the function is a linear function and given barycentric coordinates
|
|
that allow to express the query point as the convex combination of
|
|
some data points, the function can be exactly interpolated. If the
|
|
function gradients are known, we can exactly interpolate quadratic
|
|
functions given barycentric coordinates. Any further properties of
|
|
these interpolation functions depend on the properties of the
|
|
barycentric coordinates. They are provided in this package under the
|
|
name \ccc{linear_interpolation} and
|
|
\ccc{quadratic_interpolation}.\medskip
|
|
|
|
\subsubsection*{Natural neighbor interpolation}
|
|
|
|
Natural neighbor
|
|
coordinates are defined by Sibson in 1980 and are based on the Voronoi
|
|
diagram of the data points. Interpolation methods based on natural
|
|
neighbor coordinates are particularly interesting because they adapt
|
|
easily to non-uniform and highly anisotropic data. This package
|
|
contains Sibson's $C^1$ continuous interpolation method which
|
|
interpolates exactly spherical quadrics (of the form $\Phi(\mathbf{x})
|
|
=a + \mathbf{b}^t \mathbf{x} +\gamma\ \mathbf{x}^t\mathbf{x}$) and
|
|
Farin's $C^1$ continuous interpolation method based on
|
|
Bernstein-B\'ezier techniques and interpolating exactly quadratic
|
|
functions -- assuming that the function gradient is known. In
|
|
addition, Sibson defines a method to approximate the function
|
|
gradients for data points that are in the interior of the convex hull.
|
|
This
|
|
method is exact for spherical quadrics.% and provided in this package
|
|
%under the name \ccc{sibson_gradient_fitting}.
|
|
|
|
This \cgal\ package implements Sibson's and Farin's interpolation
|
|
functions as well as Sibson's function gradient fitting method.
|
|
Furthermore, it provides functions to compute the natural neighbor
|
|
coordinates with respect to a two-dimensional Voronoi diagram (i. e.,
|
|
from the Delaunay triangulation of the data points) and to a
|
|
two-dimensional power diagram for weighted points (i. e., from their
|
|
regular triangulation). Natural neighbor coordinates on closed and
|
|
well-sampled surfaces can also be computed if the normal to the
|
|
surface at the query point is known. The latter coordinates are only
|
|
approximately barycentric, see \cite{bf-lcss-02}.
|
|
|
|
For a more thorough introduction see the user manual.
|
|
|
|
|
|
\section{Classified Reference Pages}
|
|
|
|
\ccHeading{Concepts}
|
|
\ccRefConceptPage{InterpolationTraits}\\
|
|
\ccRefConceptPage{GradientFittingTraits}\\
|
|
|
|
\ccHeading{Interpolation Functions}
|
|
|
|
\ccRefIdfierPage{CGAL::linear_interpolation} \\
|
|
\ccRefIdfierPage{CGAL::sibson_c1_interpolation} \\
|
|
\ccRefIdfierPage{CGAL::farin_c1_interpolation} \\
|
|
\ccRefIdfierPage{CGAL::quadratic_interpolation} \\
|
|
\ccRefIdfierPage{CGAL::sibson_gradient_fitting} \\
|
|
|
|
\ccRefIdfierPage{CGAL::Interpolation_traits_2<K>} \\
|
|
\ccRefIdfierPage{CGAL::Interpolation_gradient_fitting_traits_2<K>} \\
|
|
|
|
\ccHeading{Natural neighbor coordinate computation}
|
|
\ccRefIdfierPage{CGAL::natural_neighbor_coordinates_2} \\
|
|
\ccRefIdfierPage{CGAL::regular_neighbor_coordinates_2} \\
|
|
|
|
\ccHeading{Surface neighbor and surface neighbor coordinate computation}
|
|
\ccRefIdfierPage{CGAL::Voronoi_intersection_2_traits_3<K>}\\
|
|
\ccRefIdfierPage{CGAL::surface_neighbor_coordinates_3} \\
|
|
\ccRefIdfierPage{CGAL::surface_neighbors_3}
|
|
|