diff --git a/Surface_mesh_approximation/doc/Surface_mesh_approximation/Concepts/Proxy.h b/Surface_mesh_approximation/doc/Surface_mesh_approximation/Concepts/Proxy.h index 7d80d7f9737..a9b8df207e2 100644 --- a/Surface_mesh_approximation/doc/Surface_mesh_approximation/Concepts/Proxy.h +++ b/Surface_mesh_approximation/doc/Surface_mesh_approximation/Concepts/Proxy.h @@ -10,14 +10,10 @@ It is nested within the `ErrorMetric` and `ProxyFitting` concepts. class Proxy { public: - /// Triangle mesh facet descriptor. - typedef unspecified_type facet_descriptor; - /// @name Data members /// @{ - /// Data member to store the proxy seed. - facet_descriptor seed; + /// Anything to store the proxy shape parameters. /// } }; diff --git a/Surface_mesh_approximation/examples/Surface_mesh_approximation/vsa_metric_example.cpp b/Surface_mesh_approximation/examples/Surface_mesh_approximation/vsa_metric_example.cpp index 9ec4cb294ce..72188ba794a 100644 --- a/Surface_mesh_approximation/examples/Surface_mesh_approximation/vsa_metric_example.cpp +++ b/Surface_mesh_approximation/examples/Surface_mesh_approximation/vsa_metric_example.cpp @@ -25,7 +25,6 @@ typedef boost::associative_property_map > FacetCen // proxy struct PointProxy { - Facet_handle seed; Point center; }; diff --git a/Surface_mesh_approximation/include/CGAL/VSA_approximation.h b/Surface_mesh_approximation/include/CGAL/VSA_approximation.h index 429c9c16de1..cbf56017185 100644 --- a/Surface_mesh_approximation/include/CGAL/VSA_approximation.h +++ b/Surface_mesh_approximation/include/CGAL/VSA_approximation.h @@ -53,7 +53,7 @@ class VSA_approximation { typename boost::property_traits::value_type >::Kernel >::type GeomTraits; typedef typename CGAL::Default::Get >::type Proxy; + CGAL::PlaneProxy >::type Proxy; typedef typename CGAL::Default::Get >::type ErrorMetric; typedef typename CGAL::Default::Get +template class PlaneProxy { typedef typename GeomTraits::Vector_3 Vector_3; typedef typename GeomTraits::Plane_3 Plane_3; - typedef typename boost::graph_traits::face_descriptor face_descriptor; public: - // The proxy seed. - face_descriptor seed; // The proxy normal used in the `L21Metric`. Vector_3 normal; // The fitting plane of the proxy used in the `L2Metric`. @@ -54,11 +49,11 @@ public: * @tparam GeomTraits geometric traits * @tparam PlaneProxy a model of `PlaneProxy` */ -template::type, typename GeomTraits = typename TriangleMesh::Traits, - typename PlaneProxy = CGAL::PlaneProxy > + typename PlaneProxy = CGAL::PlaneProxy > class L21Metric { typedef typename GeomTraits::FT FT; @@ -116,7 +111,7 @@ private: }; // specialization -template class L21Metric::type, typename GeomTraits = typename TriangleMesh::Traits, - typename PlaneProxy = CGAL::PlaneProxy > + typename PlaneProxy = CGAL::PlaneProxy > class L21ProxyFitting { typedef typename GeomTraits::FT FT; @@ -238,7 +233,7 @@ public: } // returns the proxy fitted from the facets from beg to end. - template + template Proxy operator()(const FacetIterator beg, const FacetIterator end) const { CGAL_assertion(beg != end); @@ -268,7 +263,7 @@ private: }; // specialization -template class L21ProxyFitting + template Proxy operator()(const FacetIterator beg, const FacetIterator end) const { CGAL_assertion(beg != end); @@ -358,11 +353,11 @@ private: * @tparam GeomTraits geometric traits * @tparam PlaneProxy a model of `PlaneProxy` */ -template::type, typename GeomTraits = typename TriangleMesh::Traits, - typename PlaneProxy = CGAL::PlaneProxy > + typename PlaneProxy = CGAL::PlaneProxy > class L2Metric { typedef typename GeomTraits::FT FT; @@ -414,7 +409,7 @@ private: }; // specialization -template class L2Metric::type, typename GeomTraits = typename TriangleMesh::Traits, - typename PlaneProxy = CGAL::PlaneProxy > + typename PlaneProxy = CGAL::PlaneProxy > class L2ProxyFitting { typedef typename GeomTraits::Point_3 Point_3; @@ -507,7 +502,7 @@ public: : mesh(&_mesh), point_pmap(_point_pmap) {} // returns the proxy fitted from a range of facets. - template + template Proxy operator()(const FacetIterator beg, const FacetIterator end) const { CGAL_assertion(beg != end); @@ -539,7 +534,7 @@ private: /*! * Specialization. */ -template class L2ProxyFitting(_mesh))) {} // returns the proxy fitted from a range of facets. - template + template Proxy operator()(const FacetIterator beg, const FacetIterator end) const { CGAL_assertion(beg != end); diff --git a/Surface_mesh_approximation/include/CGAL/vsa_mesh_approximation.h b/Surface_mesh_approximation/include/CGAL/vsa_mesh_approximation.h index 7ba58d65fdd..b775336c10e 100644 --- a/Surface_mesh_approximation/include/CGAL/vsa_mesh_approximation.h +++ b/Surface_mesh_approximation/include/CGAL/vsa_mesh_approximation.h @@ -78,7 +78,7 @@ bool vsa_mesh_approximation(const TriangleMesh &tm_in, get(boost::vertex_point, const_cast(tm_in))); // get_property_map(vertex_point, tm_in)); - typedef CGAL::PlaneProxy PlaneProxy; + typedef CGAL::PlaneProxy PlaneProxy; typedef CGAL::L21Metric L21Metric; typedef CGAL::L21ProxyFitting L21ProxyFitting; typedef CGAL::VSA_approximation > FacetProxyMap; typedef boost::property_map::type VertexPointMap; -typedef CGAL::PlaneProxy PlaneProxy; +typedef CGAL::PlaneProxy PlaneProxy; typedef CGAL::L2Metric L2Metric; typedef CGAL::L2ProxyFitting L2ProxyFitting; typedef CGAL::VSA_approximation Polyhedron; typedef boost::property_map::type VertexPointMap; -typedef CGAL::PlaneProxy PlaneProxy; typedef CGAL::L21Metric L21Metric; typedef CGAL::L21ProxyFitting L21ProxyFitting; typedef CGAL::VSA_approximation VSAL21; diff --git a/Surface_mesh_approximation/test/Surface_mesh_approximation/vsa_metric_test.cpp b/Surface_mesh_approximation/test/Surface_mesh_approximation/vsa_metric_test.cpp index 23858230434..460f6e1fb5e 100644 --- a/Surface_mesh_approximation/test/Surface_mesh_approximation/vsa_metric_test.cpp +++ b/Surface_mesh_approximation/test/Surface_mesh_approximation/vsa_metric_test.cpp @@ -23,7 +23,6 @@ typedef boost::associative_property_map > FacetC typedef boost::property_map::type VertexPointMap; struct PointProxy { - Facet_handle seed; Point_3 center; };