Skip to Content.
Sympa Menu

cgal-discuss - Re: [cgal-discuss] How to retrieve handles of vertices which constitute an edge in a 3D triangulation?

Subject: CGAL users discussion list

List archive

Re: [cgal-discuss] How to retrieve handles of vertices which constitute an edge in a 3D triangulation?


Chronological Thread 
  • From:
  • To:
  • Subject: Re: [cgal-discuss] How to retrieve handles of vertices which constitute an edge in a 3D triangulation?
  • Date: Tue, 22 May 2007 10:27:53 +0200

Hi Jingyi,

What about my previous answer (see attachment)?
Edges are not explicitely stored in a 3d triangulation.
We provide a way to get all incident vertices.
We could provide also a function giving a representative of each incident edge, but it is not implemented... I guess it is quite easy to implement, looking at the code of incident_vertices.

Best,
Monique Teillaud

Jingyi Jin wrote:
Hi,

Following a previous post to ask one question..

----------------------------------------------------------------------------
On 5/4/07,

<>
wrote:

In 2D, having an edge circulator is natural and meaningful: edges are
ordered around a vertex. In 3D edges are not circularly ordered around a
vertex.

----------------------------------------------------------------------------

If I want to retrieve all incident edges of a vertex, what is the best
way to do that? The order does not matter in my application.

Thanks a lot!

Jingyi
--- Begin Message ---
  • From:
  • To:
  • Subject: Re: [cgal-discuss] How to retrieve handles of vertices which constitute an edge in a 3D triangulation?
  • Date: Fri, 04 May 2007 13:38:42 +0200
  • List-archive: <https://lists-sop.inria.fr/wws/arc/cgal-discuss>
  • List-id: <cgal-discuss.lists-sop.inria.fr>
Hi Matthieu

I would like to have some information about the edge in the triangulation_3: I would like to use an edge iterator and retrieve the handle of the two vertices which constitute the edge. But I have the impression that it is not possible..

yes it is possible. see http://www.cgal.org/Manual/3.2/doc_html/cgal_manual/TriangulationDS_3_ref/Concept_TriangulationDataStructure_3.html

typedef Triple<Cell_handle, int, int> Edge;

If the edge is (c,i,j) then the two vertex handles are c->vertex(i) and c->vertex(j).

So, I would like to use an edge circulator in 3D: I saw that in the triangulation_3 I can use an edge iterator but I would prefer an edge circulator like in triangulation_2: tds.incident_edges(vertex_handle). With an edge circulator I can have some information about the handle of 1 vertex which constitute the edge (it is better than nothing..). So, If somebody have an idea to help me it will be great!!

In 2D, having an edge circulator is natural and meaningful: edges are ordered around a vertex. In 3D edges are not circularly ordered around a vertex.

see again
http://www.cgal.org/Manual/3.2/doc_html/cgal_manual/TriangulationDS_3_ref/Concept_TriangulationDataStructure_3.html

template <class OutputIterator>
OutputIterator
tds.incident_vertices ( Vertex_handle v, OutputIterator vertices)
Copies the Vertex_handles of all vertices incident
to v to the output iterator vertices.

best,
Monique Teillaud
--
You are currently subscribed to cgal-discuss.
To unsubscribe or access the archives, go to
https://lists-sop.inria.fr/wws/info/cgal-discuss

--- End Message ---



Archive powered by MHonArc 2.6.16.

Top of Page