CGAL::Homogeneous_converter<K1, K2, RTConverter, FTConverter>


Homogeneous_converter<K1, K2, RTConverter, FTConverter>converts objects from the kernel traits K1 to the kernel traits K2. Those traits must be of the form Homogeneous<RT1> and Homogeneous<RT2> (or the equivalent with Simple_homogeneous). It then provides the following operators to convert objects from K1 to K2.

The third template parameter RT_Converter is a function object that must provide K2::RT operator()(const K1::RT &n); that converts n to an K2::RT that has the same value.

The default value of this parameter is CGAL::NT_converter<K1::RT, K2::RT>, which uses the conversion operator from K1::RT to K2::RT.

Similarly, the fourth template parameter must provide K2::FT operator()(const K1::FT &n); that converts n to an K2::FT that has the same value. Its default value is CGAL::NT_converter<K1::FT, K2::FT>.

#include <CGAL/Homogeneous_converter.h>


Homogeneous_converter<K1, K2, RTConverter, FTConverter> conv;
Default constructor.


K2::Point_2 conv.operator() ( K1::Point_2 p)
returns a K2::Point_2 which coordinates are those of p, converted by RTConverter.

Similar operators are defined for the other kernel traits geometric types Point_3, Vector_2...

See Also