📄 concept_archetype_functors.h
字号:
operator()( const Point_2&, const Line_2&) const { return CGAL::LARGER; } Comparison_result operator()( const Point_2&, const Line_2&, const Line_2&) const { return CGAL::LARGER; } Comparison_result operator()( const Line_2&, const Line_2&, const Line_2&) const { return CGAL::LARGER; } Comparison_result operator()( const Line_2&, const Line_2&, const Line_2&, const Line_2&) const { return CGAL::LARGER; } Comparison_result operator()( const Point_2&, const Segment_2&) const { return CGAL::LARGER; } Comparison_result operator()( const Point_2&, const Segment_2&, const Segment_2&) const { return CGAL::LARGER; }};template <typename K>class Compare_y_2{ typedef typename K::Point_2 Point_2; typedef typename K::Line_2 Line_2;public: typedef Comparison_result result_type; typedef Arity_tag< 2 > Arity; Comparison_result operator()( const Point_2&, const Point_2&) const { return CGAL::LARGER; } Comparison_result operator()( const Point_2&, const Line_2&, const Line_2&) const { return CGAL::LARGER; } Comparison_result operator()( const Line_2&, const Line_2&, const Line_2&) const { return CGAL::LARGER; } Comparison_result operator()( const Line_2&, const Line_2&, const Line_2&, const Line_2&) const { return CGAL::LARGER; }};template <typename K>class Compare_y_3{ typedef typename K::Point_3 Point_3;public: typedef Comparison_result result_type; typedef Arity_tag< 2 > Arity; Comparison_result operator()( const Point_3&, const Point_3&) const { return CGAL::LARGER; }};template <typename K>class Compare_yx_2{ typedef typename K::Point_2 Point_2;public: typedef Comparison_result result_type; typedef Arity_tag< 2 > Arity; Comparison_result operator()( const Point_2&, const Point_2&) const { return CGAL::LARGER; }};template <typename K>class Compare_z_3{ typedef typename K::Point_3 Point_3;public: typedef Comparison_result result_type; typedef Arity_tag< 2 > Arity; Comparison_result operator()( const Point_3&, const Point_3&) const { return CGAL::LARGER; }};template <typename K>class Compute_area_2{ typedef typename K::FT FT; typedef typename K::Iso_rectangle_2 Iso_rectangle_2; typedef typename K::Triangle_2 Triangle_2; typedef typename K::Point_2 Point_2;public: typedef FT result_type; typedef Arity_tag< 1 > Arity; FT operator()( const Point_2&, const Point_2&, const Point_2&) const { FT val = 0; return val; } FT operator()( const Iso_rectangle_2&) const { FT val = 0; return val; } FT operator()( const Triangle_2&) const { FT val = 0; return val; }};template <typename K>class Compute_area_3{ typedef typename K::FT FT; typedef typename K::Triangle_3 Triangle_3; typedef typename K::Point_3 Point_3;public: typedef FT result_type; typedef Arity_tag< 1 > Arity; FT operator()( const Triangle_3&) const { FT val = 0; return val; } FT operator()( const Point_3&, const Point_3&, const Point_3&) const { FT val = 0; return val; }};template <typename K>class Compute_determinant_2{ typedef typename K::FT FT; typedef typename K::Vector_2 Vector_2;public: typedef FT result_type; typedef Arity_tag< 2 > Arity; FT operator()(const Vector_2&, const Vector_2&) const { FT val = 0; return val; }};template <typename K>class Compute_determinant_3{ typedef typename K::FT FT; typedef typename K::Vector_3 Vector_3;public: typedef FT result_type; typedef Arity_tag< 3 > Arity; FT operator()(const Vector_3&, const Vector_3&, const Vector_3&) const { FT val = 0; return val; }};template <typename K>class Compute_scalar_product_2{ typedef typename K::FT FT; typedef typename K::Vector_2 Vector_2;public: typedef FT result_type; typedef Arity_tag< 2 > Arity; FT operator()(const Vector_2&, const Vector_2&) const { FT val = 0; return val; }};template <typename K>class Compute_scalar_product_3{ typedef typename K::FT FT; typedef typename K::Vector_3 Vector_3;public: typedef FT result_type; typedef Arity_tag< 2 > Arity; FT operator()(const Vector_3&, const Vector_3&) const { FT val = 0; return val; }};template <typename K>class Compute_squared_area_3{ typedef typename K::FT FT; typedef typename K::Triangle_3 Triangle_3; typedef typename K::Point_3 Point_3;public: typedef FT result_type; typedef Arity_tag< 1 > Arity; FT operator()( const Triangle_3&) const { FT val = 0; return val; } FT operator()( const Point_3&, const Point_3&, const Point_3&) const { FT val = 0; return val; }};template <typename K>class Compute_squared_distance_2{ typedef typename K::FT FT;public: typedef FT result_type; typedef Arity_tag< 2 > Arity; // There are 25 combinaisons, we use a template. template <class T1, class T2> FT operator()( const T1&, const T2&) const { FT val = 0; return val; }};template <typename K>class Compute_squared_distance_3{ typedef typename K::FT FT;public: typedef FT result_type; typedef Arity_tag< 2 > Arity; // There are 25 combinaisons, we use a template. template <class T1, class T2> FT operator()( const T1&, const T2&) const { FT val = 0; return val; }};template <typename K>class Compute_squared_length_2{ typedef typename K::FT FT; typedef typename K::Vector_2 Vector_2; typedef typename K::Segment_2 Segment_2; public: typedef FT result_type; typedef Arity_tag< 1 > Arity; FT operator()( const Vector_2&) const { FT val = 0; return val; } FT operator()( const Segment_2&) const { FT val = 0; return val; }};template <typename K>class Compute_squared_length_3{ typedef typename K::FT FT; typedef typename K::Vector_3 Vector_3; typedef typename K::Segment_3 Segment_3; public: typedef FT result_type; typedef Arity_tag< 1 > Arity; FT operator()( const Vector_3&) const { FT val = 0; return val; } FT operator()( const Segment_3&) const { FT val = 0; return val; }};template <typename K>class Compute_squared_radius_2{ typedef typename K::FT FT; typedef typename K::Point_2 Point_2; typedef typename K::Circle_2 Circle_2;public: typedef FT result_type; typedef Arity_tag< 1 > Arity; FT operator()( const Circle_2&) const { FT val = 0; return val; } FT operator()( const Point_2&, const Point_2&, const Point_2&) const { FT val = 0; return val; } FT operator()( const Point_2&, const Point_2&) const { FT val = 0; return val; }};template <typename K>class Compute_squared_radius_3{ typedef typename K::FT FT; typedef typename K::Point_3 Point_3; typedef typename K::Sphere_3 Sphere_3;public: typedef FT result_type; typedef Arity_tag< 1 > Arity; FT operator()( const Sphere_3&) const { FT val = 0; return val; } FT operator()( const Point_3&, const Point_3&, const Point_3&, const Point_3&) const { FT val = 0; return val; } FT operator()( const Point_3&, const Point_3&, const Point_3&) const { FT val = 0; return val; } FT operator()( const Point_3&, const Point_3&) const { FT val = 0; return val; }};template <typename K>class Compute_volume_3{ typedef typename K::FT FT; typedef typename K::Point_3 Point_3; typedef typename K::Tetrahedron_3 Tetrahedron_3; typedef typename K::Iso_cuboid_3 Iso_cuboid_3;public: typedef FT result_type; typedef Arity_tag< 1 > Arity; FT operator()( const Tetrahedron_3&) const { FT val = 0; return val; } FT operator()( const Point_3&, const Point_3&, const Point_3&, const Point_3&) const { FT val = 0; return val; } FT operator()( const Iso_cuboid_3&) const { FT val = 0; return val; }};template <typename K>class Construct_base_vector_3{ typedef typename K::Vector_3 Vector_3; typedef typename K::Plane_3 Plane_3;public: typedef Vector_3 result_type; typedef Arity_tag< 2 > Arity; Vector_3 operator()( const Plane_3&, int) const { Vector_3 v; return v; }};template <typename K>class Construct_bisector_2{ typedef typename K::Point_2 Point_2; typedef typename K::Line_2 Line_2;public: typedef Line_2 result_type; typedef Arity_tag< 2 > Arity; Line_2 operator()(const Point_2&, const Point_2&) const { Line_2 obj; return obj; }};template <typename K>class Construct_bisector_3{ typedef typename K::Point_3 Point_3; typedef typename K::Plane_3 Plane_3;public: typedef Plane_3 result_type; typedef Arity_tag< 2 > Arity; Plane_3 operator()(const Point_3&, const Point_3&) const { Plane_3 obj; return obj; }};template <typename K>class Construct_center_2{ typedef typename K::Point_2 Point_2; typedef typename K::Circle_2 Circle_2;public: typedef Point_2 result_type; typedef Arity_tag< 1 > Arity; Point_2 operator()(const Circle_2&) const { Point_2 obj; return obj; }};template <typename K>class Construct_center_3{ typedef typename K::Point_3 Point_3; typedef typename K::Sphere_3 Sphere_3;public: typedef Point_3 result_type; typedef Arity_tag< 1 > Arity; Point_3 operator()(const Sphere_3&) const { Point_3 obj; return obj; }};template <typename K>class Construct_centroid_2{ typedef typename K::Point_2 Point_2; typedef typename K::Triangle_2 Triangle_2;public: typedef Point_2 result_type; typedef Arity_tag< 3 > Arity; Point_2 operator()(const Point_2&, const Point_2&, const Point_2&) const { Point_2 obj; return obj; } Point_2 operator()(const Triangle_2&) const { Point_2 obj; return obj; } Point_2 operator()(const Point_2&, const Point_2&, const Point_2&, const Point_2&) const { Point_2 obj; return obj; }};template <typename K>class Construct_centroid_3{ typedef typename K::Point_3 Point_3; typedef typename K::Triangle_3 Triangle_3; typedef typename K::Tetrahedron_3 Tetrahedron_3;public: typedef Point_3 result_type; typedef Arity_tag< 3 > Arity; Point_3 operator()(const Point_3&, const Point_3&, const Point_3&) const { Point_3 obj; return obj; } Point_3 operator()(const Triangle_3&) const { Point_3 obj; return obj; } Point_3 operator()(const Tetrahedron_3&) const { Point_3 obj; return obj; } Point_3 operator()(const Point_3&, const Point_3&, const Point_3&, const Point_3&) const { Point_3 obj; return obj; }};template <typename K>class Construct_circle_2{ typedef typename K::FT FT; typedef typename K::Point_2 Point_2; typedef typename K::Circle_2 Circle_2;public: typedef Circle_2 result_type; typedef Arity_tag< 3 > Arity; Circle_2 operator()( const Point_2&, const FT&, Orientation = COUNTERCLOCKWISE) const { return Circle_2(); } Circle_2 operator()( const Point_2&, const Point_2&, const Point_2&) const { return Circle_2(); } Circle_2 operator()( const Point_2&, const Point_2&, Orientation = COUNTERCLOCKWISE) const { return Circle_2(); } Circle_2 operator()( const Point_2&, Orientation = COUNTERCLOCKWISE) const { return Circle_2(); }};template <typename K>class Construct_circumcenter_2{ typedef typename K::Point_2 Point_2; typedef typename K::Triangle_2 Triangle_2;public: typedef Point_2 result_type; typedef Arity_tag< 3 > Arity; Point_2 operator()(const Point_2&, const Point_2&) const { return Point_2(); } Point_2 operator()(const Point_2&, const Point_2&, const Point_2&) const { return Point_2(); } Point_2 operator()(const Triangle_2&) const { return Point_2(); }};template <typename K>class Construct_circumcenter_3{ typedef typename K::Point_3 Point_3; typedef typename K::Triangle_3 Triangle_3; typedef typename K::Tetrahedron_3 Tetrahedron_3;public: typedef Point_3 result_type; typedef Arity_tag< 4 > Arity; Point_3 operator()(const Point_3&, const Point_3&) const
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -