Skip to Content.
Sympa Menu

cgal-discuss - [cgal-discuss] how to handle half edge data structure

Subject: CGAL users discussion list

List archive

[cgal-discuss] how to handle half edge data structure


Chronological Thread 
  • From: "samuel kim" <>
  • To: <>
  • Subject: [cgal-discuss] how to handle half edge data structure
  • Date: Wed, 7 May 2008 14:29:06 +0200
  • Organization: Purdue

Title: [cgal-discuss] how to handle half edge data structure

Hi all,

I am struggling in an implementation with the half edge data structure. What I want to do is to travel the triangles from triangle# 1 to triangle# 3 as shown at attached picture. For this, I read CGAL document and implemented based on what I understood. But result is not going to triangle# 3 but going back to triangle# 1 from triangle#2. The below is the source code I tried.

Facet_handle hf_new;

Facet_iterator pFacet = facets_begin();

Halfedge_around_facet_circulator pHalfedge = pFacet->facet_begin(); // expecting to get the handle of half_edge1 on triangle#1

hf_new = pHalfedge->prev()->opposite()->facet(); // expecting to get the handle of facet of triangle#2 pHalfedge = hf_new->facet_begin(); // expecting to get the handle of half_edge2 in the triangle#2

hf_new = pHalfedge->next()->opposite()->facet(); // expecting to get the handle of facet of triangle#3 pHalfedge = hf_new->facet_begin(); // expecting to get the handle of half_edge2 on the triangle#3


If I did as the above, the handle of facet was that of triangle#1. So I want to ask you a question, when I do this,

        hf_new = pHalfedge->prev()->opposite()->facet(); // expecting to get the handle of facet of triangle#2

        pHalfedge = hf_new->facet_begin(); // expecting to get the handle of half_edge2 in the triangle#2 Which edge handle should be returned in triangle#2?

And what is the base rule to get to know the exact pointer of the handle of half_edge data structure whenever travel triangles? Because I have tried many times, and found that the pointer of handle of half_edge data structure was varying at each triangle which was not expectable.

Thank you for your help.

Samuel

<<...>>

Attachment: travelingtriagnle.JPG
Description: JPEG image




Archive powered by MHonArc 2.6.16.

Top of Page