diff --git a/Surface_mesh/include/CGAL/Surface_mesh/Surface_mesh.h b/Surface_mesh/include/CGAL/Surface_mesh/Surface_mesh.h index 08e248a5f19..ac1e856c01e 100644 --- a/Surface_mesh/include/CGAL/Surface_mesh/Surface_mesh.h +++ b/Surface_mesh/include/CGAL/Surface_mesh/Surface_mesh.h @@ -336,15 +336,13 @@ public: { public: /// %Default constructor. - Vertex_index() : SM_Index(-1) {} + Vertex_index(){} - explicit Vertex_index(size_type _idx) : SM_Index(_idx) {} + Vertex_index(size_type _idx){} /// prints the index and a short identification string to an ostream. friend std::ostream& operator<<(std::ostream& os, typename Surface_mesh::Vertex_index const& v) - { - return (os << 'v' << (size_type)v ); - } + {} }; #else typedef SM_Vertex_index Vertex_index; @@ -361,14 +359,13 @@ public: { public: /// %Default constructor - Halfedge_index() : SM_Index(-1) {} + Halfedge_index(){} - explicit Halfedge_index(size_type _idx) : SM_Index(_idx) {} + Halfedge_index(size_type _idx){} /// prints the index and a short identification string to an ostream. friend std::ostream& operator<<(std::ostream& os, typename Surface_mesh::Halfedge_index const& h) { - return (os << 'h' << (size_type)h ); } }; @@ -386,15 +383,13 @@ public: { public: /// %Default constructor - Face_index() : SM_Index(-1) {} + Face_index(){} - explicit Face_index(size_type _idx) : SM_Index(_idx) {} + Face_index(size_type _idx){} /// prints the index and a short identification string to an ostream. friend std::ostream& operator<<(std::ostream& os, typename Surface_mesh::Face_index const& f) - { - return (os << 'f' << (size_type)f ); - } + {} }; #else typedef SM_Face_index Face_index; @@ -410,63 +405,16 @@ public: { public: /// %Default constructor - Edge_index() : halfedge_(-1) { } + Edge_index(){} - Edge_index(size_type idx) : halfedge_(idx * 2) { } + Edge_index(size_type idx){} /// constructs an `Edge_index` from a halfedge. - Edge_index(Halfedge_index he) : halfedge_(he) { } - /// @cond CGAL_DOCUMENT_INTERNALS - /// returns the internal halfedge. - Halfedge_index halfedge() const { return halfedge_; } - - /// returns the underlying index of this index. - operator size_type() const { return (size_type)halfedge_ / 2; } - - /// resets index to be invalid (index=-1) - void reset() { halfedge_.reset(); } - - /// returns whether the index is valid, i.e., the index is not equal to -1. - bool is_valid() const { return halfedge_.is_valid(); } - - /// Are two indices equal? - bool operator==(const Edge_index& other) const { return (size_type)(*this) == (size_type)other; } - - /// Are two indices different? - bool operator!=(const Edge_index& other) const { return (size_type)(*this) != (size_type)other; } - - /// compares by index. - bool operator<(const Edge_index& other) const { return (size_type)(*this) < (size_type)other;} - - /// decrements the internal index. This operation does not - /// guarantee that the index is valid or undeleted after the - /// decrement. - Edge_index& operator--() { halfedge_ = Halfedge_index((size_type)halfedge_ - 2); return *this; } - - /// increments the internal index. This operation does not - /// guarantee that the index is valid or undeleted after the - /// increment. - Edge_index& operator++() { halfedge_ = Halfedge_index((size_type)halfedge_ + 2); return *this; } - - /// decrements internal index. This operation does not - /// guarantee that the index is valid or undeleted after the - /// decrement. - Edge_index operator--(int) { Edge_index tmp(*this); halfedge_ = Halfedge_index((size_type)halfedge_ - 2); return tmp; } - - /// increments internal index. This operation does not - /// guarantee that the index is valid or undeleted after the - /// increment. - Edge_index operator++(int) { Edge_index tmp(*this); halfedge_ = Halfedge_index((size_type)halfedge_ + 2); return tmp; } - - /// @endcond + Edge_index(Halfedge_index he){} /// prints the index and a short identification string to an ostream. friend std::ostream& operator<<(std::ostream& os, typename Surface_mesh::Edge_index const& e) - { - return (os << 'e' << (size_type)e << " on " << e.halfedge()); - } - private: - Halfedge_index halfedge_; + {} }; #else typedef SM_Edge_index Edge_index; @@ -1553,7 +1501,7 @@ public: hconn_[h].prev_halfedge_ = nh; } } - /// @endcond + /// @endcond /// sets the next halfedge of `h` within the face to `nh` and /// the previous halfedge of `nh` to `h`.