ViewVC Help
View File | Revision Log | Show Annotations | View Changeset | Root Listing
root/REPOS_ERICCA/acismesh/o2d_ord_tri2.cpp
Revision: 1
Committed: Mon Jun 11 22:53:07 2007 UTC (17 years, 11 months ago)
File size: 1394 byte(s)
Log Message:

File Contents

# Content
1 /*****************************************************************
2
3 o2d_ord_tri2.cpp Type:Func
4
5 Arrangement des triangles pour la deuxieme phase d'optimation
6
7 Date de creation : 16-10-1997 9 :42 :21
8 Derniere version : 16-10-1997 9 :42 :21
9
10 Vincent FRANCOIS
11
12 *****************************************************************/
13
14
15
16
17
18 /**************************/
19 /* include */
20 #include <stdio.h>
21 #include "const.h"
22 #include "struct.h"
23 #include "memoire.h"
24 #include "prototype.h"
25
26 /**************************/
27 /* variables globales */
28 extern struct environnement env;
29 extern struct s_mesh *mesh;
30
31
32
33 /**************************/
34 /* programme principal */
35
36 void o2d_ord_tri2(struct s_triangle *ele)
37 {
38 struct s_triangle *ac_tri,*ac_trip;
39 int ok;
40
41 if (mesh->tete_triangle2==NULL)
42 {
43 mesh->tete_triangle2=ele;
44 return;
45 }
46 ac_tri=mesh->tete_triangle2;
47 ac_trip=NULL;
48 ok=0;
49 do
50 {
51 if (ele->crit>ac_tri->crit)
52 {
53 ele->suivant=ac_tri;
54 ele->precedent=ac_tri->precedent;
55 ac_tri->precedent=ele;
56 if (ac_trip!=NULL) ac_trip->suivant=ele;
57 else mesh->tete_triangle2=ele;
58 ok=1;
59 }
60 ac_trip=ac_tri;
61 ac_tri=ac_tri->suivant;
62 if ( (ac_tri==NULL) && (ok==0) )
63 {
64 ac_trip->suivant=ele;
65 ele->precedent=ac_trip;
66 ok=1;
67 }
68 }
69 while (ok==0);
70 }