diff --git a/Triangulation_2/doc/Triangulation_2/CGAL/Triangulation_2.h b/Triangulation_2/doc/Triangulation_2/CGAL/Triangulation_2.h index ffc29f933bb..d467d1f1d67 100644 --- a/Triangulation_2/doc/Triangulation_2/CGAL/Triangulation_2.h +++ b/Triangulation_2/doc/Triangulation_2/CGAL/Triangulation_2.h @@ -472,7 +472,7 @@ const TriangulationDataStructure_2 & tds() const; /// @} -/// \name Non const access +/// \name Non Const Access /// \attention The responsibility of keeping a valid triangulation belongs to the /// user when using advanced operations allowing a direct manipulation /// of the `tds`. This method is mainly a help for users implementing @@ -528,6 +528,11 @@ is_infinite(Edge_circulator ec) const; bool is_infinite(All_edges_iterator ei) const; +/*! +`true` if `v` is a vertex of the triangulation. +*/ +bool is_vertex(Vertex_handle v); + /*! `true` if there is an edge having `va` and `vb` as vertices. @@ -1117,6 +1122,13 @@ in counterclockwise order around `v`. */ Vertex_circulator incident_vertices(Vertex_handle v, Face_handle f) ; +/*! +Returns the degree of `v`, that is, the number of incident vertices. +The infinite vertex is counted. +\pre `v != Vertex_handle()`, `t.is_vertex(v)`. +*/ +size_type degree(Vertex_handle v) const; + /// @} /// \name Traversal Between Adjacent Faces diff --git a/Triangulation_2/include/CGAL/Triangulation_2.h b/Triangulation_2/include/CGAL/Triangulation_2.h index 5078301504b..95e331ef2b7 100644 --- a/Triangulation_2/include/CGAL/Triangulation_2.h +++ b/Triangulation_2/include/CGAL/Triangulation_2.h @@ -294,6 +294,7 @@ public: bool is_infinite(const Edge& e) const; bool is_infinite(const Edge_circulator& ec) const; bool is_infinite(const All_edges_iterator& ei) const; + bool is_vertex(Vertex_handle va) const; bool is_edge(Vertex_handle va, Vertex_handle vb) const; bool is_edge(Vertex_handle va, Vertex_handle vb, Face_handle& fr, int & i) const; @@ -1096,6 +1097,14 @@ is_infinite(const All_edges_iterator& ei) const return is_infinite(*ei); } +template +inline bool +Triangulation_2:: +is_vertex(Vertex_handle va) const +{ + return _tds.is_vertex(va); +} + template inline bool Triangulation_2:: diff --git a/Triangulation_3/doc/Triangulation_3/CGAL/Triangulation_3.h b/Triangulation_3/doc/Triangulation_3/CGAL/Triangulation_3.h index 045d2be3c20..b4a4c8e672c 100644 --- a/Triangulation_3/doc/Triangulation_3/CGAL/Triangulation_3.h +++ b/Triangulation_3/doc/Triangulation_3/CGAL/Triangulation_3.h @@ -1669,7 +1669,7 @@ OutputIterator finite_adjacent_vertices(Vertex_handle v, OutputIterator vertices) const; /*! -Returns the degree of a vertex, that is, the number of incident vertices. +Returns the degree of a `v`, that is, the number of incident vertices. The infinite vertex is counted. \pre `v != Vertex_handle()`, `t.is_vertex(v)`. */