Concept

GradientFittingTraits

Definition

The function sibson_gradient_fitting is parameterized by a traits class that defines the primitives used by the algorithm. The concept GradientFittingTraits defines this common set of requirements.

Types

GradientFittingTraits::FT
The number type must follow the model FieldNumberType.


GradientFittingTraits::Point_d
The point type on which the function is defined and interpolated.


GradientFittingTraits::Vector_d
The corresponding vector type.


GradientFittingTraits::Aff_transformation_d
defines a matrix type. Must provide the following member functions :
Aff_transformation tr.inverse () which gives the inverse transformation, and
Aff_transformation tr.transform( Vector v) which returns the multiplication of tr with v.


GradientFittingTraits::Construct_vector_d
A constructor object for Vector_d. Provides :
Vector_d operator() (Point_d a, Point_d b) which produces the vector b - a and
Vector_d operator() (Null_vector NULL_VECTOR) which introduces the null vector.


GradientFittingTraits::Construct_scaled_vector_d
Constructor object for Vector_d. Provides :
Vector_d operator() (Vector_d v,FT scale) which produces the vector v scaled by a factor scale.


GradientFittingTraits::Construct_null_matrix_d
Constructor object for Aff_transformation_d. Provides :
Aff_transformation_d operator()() which introduces an affine transformation whose matrix has only zero entries.


GradientFittingTraits::Construct_scaling_matrix_d
Constructor object for Aff_transformation_d. Provides :
Aff_transformation_d operator()(FT scale) which introduces a scaling by a scale factor scale.


GradientFittingTraits::Construct_sum_matrix_d
Constructor object for Aff_transformation_d. Provides :
Aff_transformation_d operator()(Aff_transformation_d tr1, Aff_transformation_d tr2) which returns the sum of the two matrices representing tr1 and tr2.


GradientFittingTraits::Construct_outer_product_d
Constructor object for Aff_transformation_d. Provides :
Aff_transformation_d operator()(Vector v) which returns the outer product, i.e. the quadratic matrix vtv.

Creation

GradientFittingTraits traits;
default constructor.

Operations

The following functions that create instances of the above constructor object types must exist.
Construct_vector_d traits.construct_vector_d_object ()
Construct_scaled_vector_d traits.construct_scaled_vector_d_object ()
Construct_null_matrix_d traits.construct_null_matrix_d_object ()
Construct_sum_matrix_d traits.construct_sum_matrix_d_object ()
Construct_outer_product_d traits.construct_outer_product_d_object ()

Has Models

CGAL::Interpolation_gradient_fitting_traits_2<K>

See Also

InterpolationTraits
CGAL::Interpolation_traits_2<K>
CGAL::sibson_gradient_fitting
CGAL::sibson_c1_interpolation
CGAL::farin_c1_interpolation
CGAL::quadratic_interpolation