Skip to Content.
Sympa Menu

cgal-discuss - RE: [cgal-discuss] [CGAL-discuss] I cannot verify the traveling route saved on 3D model using Halfedge

Subject: CGAL users discussion list

List archive

RE: [cgal-discuss] [CGAL-discuss] I cannot verify the traveling route saved on 3D model using Halfedge


Chronological Thread 
  • From: "samuel kim" <>
  • To: <>
  • Subject: RE: [cgal-discuss] [CGAL-discuss] I cannot verify the traveling route saved on 3D model using Halfedge
  • Date: Thu, 8 May 2008 20:46:32 +0200
  • Organization: Purdue

Title: [CGAL-discuss] I cannot verify the traveling route saved on 3D model using Halfedge

Dear all,

 

I am sorry to interrupt you a lot because of this problem. However, I would appreciate that you can understand my situation.

For your better understanding, I attached two text files which were output on my program. On the text files, A, B and C are 3D points of vertices of each triangle traveled. You will see they change gradually in both files, which means going on a different way. Travelpoints_firsttraveling.txt shows a list of triangles traveled at first time, travelpoints_retraveling.txt is the output re-traveled according to the routine saved into a file as the first traveling triangles. So if I use Halfedge_handle, is there no guarantee to get the same value when move the edge handle? Is there any way I can load the same starting facet of triangles whenever reload 3D model (.off)?

If the order of facets of 3D model is kept as the same whenever reload the model, I should not see this problem.  That is, from the below one line source code, I should be able to get the same facet handle (the same triangle with same location on 3D model), every time reads 3D object file(.off) using CGAL lib. I thought so because the object file(.off) has the same order of vertex points which does not change. How could the facet handle be randomly changed whenever read the same object file? If so, is there any way in using CGAL to keep the facet handle and edge handle unchanged on reading 3D model file? Any idea is welcomed.

    Halfedge_handle pHalfedge = pFacet->facet_begin(); 

 

Thank you.

Samuel

 

From: samuel kim [mailto:]
Sent: Thursday, May 08, 2008 6:32 PM
To:
Subject: [cgal-discuss] [CGAL-discuss] I cannot verify the traveling route saved on 3D model using Halfedge

 

Hi all,

I have been trying to traveling triangles of 3D model for my research. But the problem is that the half edge handle return different values whenever reload 3D model. What I am doing now,

1)      In encoder, open any 3D model(.off) using CGAL,  as traveling triangles of mesh by using halfedge, determine whether  go to the right direction or left direction on each triangle and save the route into a file, namely the file contains the traveling information on triangles of the mesh. And shows traveled triangles.

2)      In decoder, open the same 3D model(.off), and start traveling according to the saved route from the file.  And shows the traveled triangles.

In comparison of the above two, the result shows different route on the 3D model. But the first starting triangle is exactly same. Can you help me to make the same traveling on the same 3D model? If you have a idea please share with me, I have spent almost a week on this. I am using the below pseudo source code.

Halfedge_handle pHalfedge = pFacet->facet_begin();     

Halfedge_handle pRight_Halfedge = pHalfedge->next()->opposite();

Halfedge_handle pLeft_Halfedge = pHalfedge->prev()->opposite();

do{

//Some source code here

// for traveling to the right triangle from the current triangle               

If(right == true)

pHalfedge = pRight_Halfedge;

else

pHalfedge = pLeft_Halfedge;

}while(exit !=true)

Thank you in advance.

Samuel

index: 0
A:0.004328 0.131471 0.032140
B:0.016010 0.129844 -0.005956
C:-0.028753 0.125828 0.021231
key:1

index: 1
A:-0.028753 0.125828 0.021231
B:0.016010 0.129844 -0.005956
C:-0.023526 0.114897 -0.017655
key:1

index: 2
A:-0.023526 0.114897 -0.017655
B:0.016010 0.129844 -0.005956
C:0.036731 0.095801 -0.018164
key:1

index: 3
A:0.036731 0.095801 -0.018164
B:0.016010 0.129844 -0.005956
C:0.051056 0.084185 0.010698
key:1

index: 4
A:0.051056 0.084185 0.010698
B:0.016010 0.129844 -0.005956
C:0.037065 0.111856 0.031790
key:0

index: 5
A:0.051056 0.084185 0.010698
B:0.037065 0.111856 0.031790
C:0.017975 0.068191 0.054168
key:0

index: 6
A:0.051056 0.084185 0.010698
B:0.017975 0.068191 0.054168
C:0.057299 0.050971 0.019181
key:1

index: 7
A:0.057299 0.050971 0.019181
B:0.017975 0.068191 0.054168
C:-0.004208 0.035067 0.050396
key:0

index: 8
A:0.057299 0.050971 0.019181
B:-0.004208 0.035067 0.050396
C:0.023506 0.036240 0.028841
key:1

index: 9
A:0.023506 0.036240 0.028841
B:-0.004208 0.035067 0.050396
C:-0.027824 0.036715 0.040889
key:1

index: 10
A:-0.027824 0.036715 0.040889
B:-0.004208 0.035067 0.050396
C:-0.047202 0.048497 0.038862
key:1

index: 0
A:0.004328 0.131471 0.032140
B:0.016010 0.129844 -0.005956
C:-0.028731 0.125825 0.021158
key:1

index: 1
A:-0.028731 0.125825 0.021158
B:0.016010 0.129844 -0.005956
C:-0.023526 0.114897 -0.017655
key:1

index: 2
A:-0.023526 0.114897 -0.017655
B:0.016010 0.129844 -0.005956
C:0.036731 0.095801 -0.018164
key:1

index: 3
A:0.036731 0.095801 -0.018164
B:0.016010 0.129844 -0.005956
C:0.051056 0.084185 0.010698
key:1

index: 4
A:0.051056 0.084185 0.010698
B:0.016010 0.129844 -0.005956
C:0.037540 0.111236 0.032016
key:0

index: 5
A:0.051056 0.084185 0.010698
B:0.037540 0.111236 0.032016
C:0.018294 0.067552 0.053664
key:0

index: 6
A:0.051056 0.084185 0.010698
B:0.018294 0.067552 0.053664
C:0.056837 0.050736 0.019787
key:1

index: 7
A:0.056837 0.050736 0.019787
B:0.018294 0.067552 0.053664
C:-0.004358 0.035132 0.050528
key:0

index: 8
A:0.056837 0.050736 0.019787
B:-0.004358 0.035132 0.050528
C:0.023894 0.036338 0.028646
key:1

index: 9
A:0.023894 0.036338 0.028646
B:-0.004358 0.035132 0.050528
C:-0.027279 0.036738 0.040466
key:1

index: 10
A:-0.027279 0.036738 0.040466
B:-0.004358 0.035132 0.050528
C:0.025174 0.043427 0.070632
key:1

index: 11
A:0.025174 0.043427 0.070632
B:-0.004358 0.035132 0.050528
C:-0.030917 0.061639 0.041861
key:-842150451




Archive powered by MHonArc 2.6.16.

Top of Page