Changeset 5149 for issm/trunk
- Timestamp:
- 08/11/10 10:45:38 (15 years ago)
- Location:
- issm/trunk/src/c
- Files:
-
- 14 edited
Legend:
- Unmodified
- Added
- Removed
-
issm/trunk/src/c/modules/InterpFromMeshToMesh2dx/InterpFromMeshToMesh2dx.cpp
r5146 r5149 94 94 areacoord[2]= (double) dete[2] / tb.det; 95 95 //3 vertices of the triangle 96 i0=Th. Number(tb[0]);97 i1=Th. Number(tb[1]);98 i2=Th. Number(tb[2]);96 i0=Th.GetId(tb[0]); 97 i1=Th.GetId(tb[1]); 98 i2=Th.GetId(tb[2]); 99 99 //triangle number 100 it=Th. Number(tb);100 it=Th.GetId(tb); 101 101 } 102 102 //external point … … 111 111 areacoord[OppositeVertex[k]] = 1 - aa -bb; 112 112 //3 vertices of the triangle 113 i0=Th. Number(tc[0]);114 i1=Th. Number(tc[1]);115 i2=Th. Number(tc[2]);113 i0=Th.GetId(tc[0]); 114 i1=Th.GetId(tc[1]); 115 i2=Th.GetId(tc[2]); 116 116 //triangle number 117 it=Th. Number(tc);117 it=Th.GetId(tc); 118 118 } 119 119 -
issm/trunk/src/c/objects/Bamg/Curve.cpp
r5130 r5149 27 27 void Curve::Set(const Curve & rec,const Geometry & Gh ,Geometry & GhNew){ 28 28 *this = rec; 29 be = GhNew.edges + Gh. Number(be);30 ee = GhNew.edges + Gh. Number(ee);31 if(next) next= GhNew.curves + Gh. Number(next);29 be = GhNew.edges + Gh.GetId(be); 30 ee = GhNew.edges + Gh.GetId(ee); 31 if(next) next= GhNew.curves + Gh.GetId(next); 32 32 } 33 33 /*}}}*/ -
issm/trunk/src/c/objects/Bamg/Edge.cpp
r5148 r5149 16 16 void Edge::Set(const Mesh & Th ,long i,Mesh & ThNew){ 17 17 *this = Th.edges[i]; 18 v[0] = ThNew.vertices + Th. Number(v[0]);19 v[1] = ThNew.vertices + Th. Number(v[1]);18 v[0] = ThNew.vertices + Th.GetId(v[0]); 19 v[1] = ThNew.vertices + Th.GetId(v[1]); 20 20 if (GeometricalEdgeHook) 21 GeometricalEdgeHook = ThNew.Gh.edges+Th.Gh. Number(GeometricalEdgeHook);22 if (adj[0]) adj[0] = ThNew.edges + Th. Number(adj[0]);23 if (adj[1]) adj[1] = ThNew.edges + Th. Number(adj[1]);21 GeometricalEdgeHook = ThNew.Gh.edges+Th.Gh.GetId(GeometricalEdgeHook); 22 if (adj[0]) adj[0] = ThNew.edges + Th.GetId(adj[0]); 23 if (adj[1]) adj[1] = ThNew.edges + Th.GetId(adj[1]); 24 24 } 25 25 /*}}}*/ -
issm/trunk/src/c/objects/Bamg/GeometricalEdge.cpp
r3913 r5149 132 132 void GeometricalEdge::Set(const GeometricalEdge & rec,const Geometry & Gh ,Geometry & GhNew){ 133 133 *this = rec; 134 v[0] = GhNew.vertices + Gh. Number(v[0]);135 v[1] = GhNew.vertices + Gh. Number(v[1]);136 if (Adj[0]) Adj[0] = GhNew.edges + Gh. Number(Adj[0]);137 if (Adj[1]) Adj[1] = GhNew.edges + Gh. Number(Adj[1]);134 v[0] = GhNew.vertices + Gh.GetId(v[0]); 135 v[1] = GhNew.vertices + Gh.GetId(v[1]); 136 if (Adj[0]) Adj[0] = GhNew.edges + Gh.GetId(Adj[0]); 137 if (Adj[1]) Adj[1] = GhNew.edges + Gh.GetId(Adj[1]); 138 138 } 139 139 /*}}}*/ -
issm/trunk/src/c/objects/Bamg/GeometricalSubDomain.cpp
r3913 r5149 15 15 void GeometricalSubDomain::Set(const GeometricalSubDomain & rec,const Geometry & Gh ,const Geometry & GhNew){ 16 16 *this = rec; 17 edge = Gh. Number(edge) + GhNew.edges;17 edge = Gh.GetId(edge) + GhNew.edges; 18 18 }/*}}}*/ 19 19 -
issm/trunk/src/c/objects/Bamg/Geometry.cpp
r5148 r5149 317 317 bamggeom->Edges=(double*)xmalloc(3*nbe*sizeof(double)); 318 318 for (i=0;i<nbe;i++){ 319 bamggeom->Edges[i*3+0]= Number(edges[i][0])+1; //back to Matlab indexing320 bamggeom->Edges[i*3+1]= Number(edges[i][1])+1; //back to Matlab indexing319 bamggeom->Edges[i*3+0]=GetId(edges[i][0])+1; //back to Matlab indexing 320 bamggeom->Edges[i*3+1]=GetId(edges[i][1])+1; //back to Matlab indexing 321 321 bamggeom->Edges[i*3+2]=(double)edges[i].ReferenceNumber; 322 322 … … 368 368 for (i=0;i<nbsubdomains;i++){ 369 369 bamggeom->SubDomains[4*i+0]=2; 370 bamggeom->SubDomains[4*i+1]= Number(subdomains[i].edge)+1; //back to Matlab indexing370 bamggeom->SubDomains[4*i+1]=GetId(subdomains[i].edge)+1; //back to Matlab indexing 371 371 bamggeom->SubDomains[4*i+2]=subdomains[i].direction; 372 372 bamggeom->SubDomains[4*i+3]=subdomains[i].ReferenceNumber; … … 523 523 //build chains head_v and next_p 524 524 for (j=0;j<2;j++){ 525 long v= Number(edges[i].v[j]);525 long v=GetId(edges[i].v[j]); 526 526 next_p[k]=head_v[v]; 527 527 head_v[v]=k++; //post increment: head_v[v]=k; and then k=k+1; … … 788 788 return Max(pmax.x-pmin.x,pmax.y-pmin.y); 789 789 }/*}}}*/ 790 /*FUNCTION Geometry:: Number(const GeometricalVertex &t){{{1*/791 long Geometry:: Number(const GeometricalVertex & t) const {790 /*FUNCTION Geometry::GetId(const GeometricalVertex &t){{{1*/ 791 long Geometry::GetId(const GeometricalVertex & t) const { 792 792 return &t - vertices; 793 793 }/*}}}*/ 794 /*FUNCTION Geometry:: Number(const GeometricalVertex * t){{{1*/795 long Geometry:: Number(const GeometricalVertex * t) const {794 /*FUNCTION Geometry::GetId(const GeometricalVertex * t){{{1*/ 795 long Geometry::GetId(const GeometricalVertex * t) const { 796 796 return t - vertices; 797 797 }/*}}}*/ 798 /*FUNCTION Geometry:: Number(const GeometricalEdge & t){{{1*/799 long Geometry:: Number(const GeometricalEdge & t) const {798 /*FUNCTION Geometry::GetId(const GeometricalEdge & t){{{1*/ 799 long Geometry::GetId(const GeometricalEdge & t) const { 800 800 return &t - edges; 801 801 }/*}}}*/ 802 /*FUNCTION Geometry:: Number(const GeometricalEdge * t){{{1*/803 long Geometry:: Number(const GeometricalEdge * t) const {802 /*FUNCTION Geometry::GetId(const GeometricalEdge * t){{{1*/ 803 long Geometry::GetId(const GeometricalEdge * t) const { 804 804 return t - edges; 805 805 }/*}}}*/ 806 /*FUNCTION Geometry:: Number(const Curve * c){{{1*/807 long Geometry:: Number(const Curve * c) const {806 /*FUNCTION Geometry::GetId(const Curve * c){{{1*/ 807 long Geometry::GetId(const Curve * c) const { 808 808 return c - curves; 809 809 }/*}}}*/ -
issm/trunk/src/c/objects/Bamg/Geometry.h
r5148 r5149 54 54 void Init(void); 55 55 void AfterRead(); 56 long Number(const GeometricalVertex &t) const;57 long Number(const GeometricalVertex *t) const;58 long Number(const GeometricalEdge &t) const;59 long Number(const GeometricalEdge *t) const;60 long Number(const Curve *c) const;56 long GetId(const GeometricalVertex &t) const; 57 long GetId(const GeometricalVertex *t) const; 58 long GetId(const GeometricalEdge &t) const; 59 long GetId(const GeometricalEdge *t) const; 60 long GetId(const Curve *c) const; 61 61 void UnMarkEdges(); 62 62 GeometricalEdge *ProjectOnCurve(const Edge &,double,BamgVertex &,VertexOnGeom &) const; -
issm/trunk/src/c/objects/Bamg/Mesh.cpp
r5148 r5149 73 73 const Triangle & t = Tho.triangles[i]; 74 74 kt++; 75 kk[Tho. Number(t[0])]=1;76 kk[Tho. Number(t[1])]=1;77 kk[Tho. Number(t[2])]=1;78 itadj=Tho. Number(t.TriangleAdj(0));75 kk[Tho.GetId(t[0])]=1; 76 kk[Tho.GetId(t[1])]=1; 77 kk[Tho.GetId(t[2])]=1; 78 itadj=Tho.GetId(t.TriangleAdj(0)); 79 79 if ( reft[itadj] >=0 && !flag[itadj]) 80 80 { nbNewBedge++; 81 refv[Tho. Number(t[VerticesOfTriangularEdge[0][0]])]=bb[i];82 refv[Tho. Number(t[VerticesOfTriangularEdge[0][1]])]=bb[i];81 refv[Tho.GetId(t[VerticesOfTriangularEdge[0][0]])]=bb[i]; 82 refv[Tho.GetId(t[VerticesOfTriangularEdge[0][1]])]=bb[i]; 83 83 } 84 itadj=Tho. Number(t.TriangleAdj(1));84 itadj=Tho.GetId(t.TriangleAdj(1)); 85 85 if ( reft[itadj] >=0 && !flag[itadj]) 86 86 { nbNewBedge++; 87 refv[Tho. Number(t[VerticesOfTriangularEdge[1][0]])]=bb[i];88 refv[Tho. Number(t[VerticesOfTriangularEdge[1][1]])]=bb[i];}89 itadj=Tho. Number(t.TriangleAdj(2));87 refv[Tho.GetId(t[VerticesOfTriangularEdge[1][0]])]=bb[i]; 88 refv[Tho.GetId(t[VerticesOfTriangularEdge[1][1]])]=bb[i];} 89 itadj=Tho.GetId(t.TriangleAdj(2)); 90 90 if ( reft[itadj] >=0 && !flag[itadj]) 91 91 { nbNewBedge++; 92 refv[Tho. Number(t[VerticesOfTriangularEdge[2][0]])]=bb[i];93 refv[Tho. Number(t[VerticesOfTriangularEdge[2][1]])]=bb[i];}92 refv[Tho.GetId(t[VerticesOfTriangularEdge[2][0]])]=bb[i]; 93 refv[Tho.GetId(t[VerticesOfTriangularEdge[2][1]])]=bb[i];} 94 94 } 95 95 k=0; … … 117 117 { 118 118 const Triangle & t = Tho.triangles[i]; 119 int i0 = Tho. Number(t[0]);120 int i1 = Tho. Number(t[1]);121 int i2 = Tho. Number(t[2]);119 int i0 = Tho.GetId(t[0]); 120 int i1 = Tho.GetId(t[1]); 121 int i2 = Tho.GetId(t[2]); 122 122 if (i0<0 || i1<0 || i2<0){ 123 123 ISSMERROR("i0<0 || i1<0 || i2< 0"); … … 554 554 if (reft[i]>=0){ 555 555 for (j=0;j<3;j++){ 556 int v= Number(triangles[i][j]); //jth vertex of the ith triangle556 int v=GetId(triangles[i][j]); //jth vertex of the ith triangle 557 557 if (k>3*nbt-1 || k<0) ISSMERROR("k = %i, nbt = %i",k,nbt); 558 558 next_1[k]=head_1[v]; … … 592 592 bamgmesh->Edges=(double*)xmalloc(3*nbe*sizeof(double)); 593 593 for (i=0;i<nbe;i++){ 594 bamgmesh->Edges[i*3+0]= Number(edges[i][0])+1; //back to M indexing595 bamgmesh->Edges[i*3+1]= Number(edges[i][1])+1; //back to M indexing594 bamgmesh->Edges[i*3+0]=GetId(edges[i][0])+1; //back to M indexing 595 bamgmesh->Edges[i*3+1]=GetId(edges[i][1])+1; //back to M indexing 596 596 bamgmesh->Edges[i*3+2]=edges[i].ReferenceNumber; 597 597 if(edges[i].GeometricalEdgeHook){ … … 612 612 if (reft[i]>=0){ 613 613 for (j=0;j<3;j++) { 614 i1= Number(triangles[i][VerticesOfTriangularEdge[j][0]]);615 i2= Number(triangles[i][VerticesOfTriangularEdge[j][1]]);614 i1=GetId(triangles[i][VerticesOfTriangularEdge[j][0]]); 615 i2=GetId(triangles[i][VerticesOfTriangularEdge[j][1]]); 616 616 n =edge4->SortAndFind(i1,i2); 617 617 if (n==-1){ … … 666 666 if(edges[i].GeometricalEdgeHook){ 667 667 //build segment 668 int i1= Number(edges[i][0]);669 int i2= Number(edges[i][1]);668 int i1=GetId(edges[i][0]); 669 int i2=GetId(edges[i][1]); 670 670 bool stop=false; 671 671 for(j=head_1[i1];j!=-1;j=next_1[j]){ 672 672 for(k=0;k<3;k++){ 673 if ( Number(triangles[(int)j/3][k])==i1){674 if ( Number(triangles[(int)j/3][(int)((k+1)%3)])==i2){675 bamgmesh->IssmSegments[num*4+0]= Number(edges[i][0])+1; //back to M indexing676 bamgmesh->IssmSegments[num*4+1]= Number(edges[i][1])+1; //back to M indexing673 if (GetId(triangles[(int)j/3][k])==i1){ 674 if (GetId(triangles[(int)j/3][(int)((k+1)%3)])==i2){ 675 bamgmesh->IssmSegments[num*4+0]=GetId(edges[i][0])+1; //back to M indexing 676 bamgmesh->IssmSegments[num*4+1]=GetId(edges[i][1])+1; //back to M indexing 677 677 bamgmesh->IssmSegments[num*4+2]=(int)j/3+1; //back to M indexing 678 678 bamgmesh->IssmSegments[num*4+3]=edges[i].ReferenceNumber; … … 681 681 break; 682 682 } 683 if ( Number(triangles[(int)j/3][(int)((k+2)%3)])==i2){684 bamgmesh->IssmSegments[num*4+0]= Number(edges[i][1])+1; //back to M indexing685 bamgmesh->IssmSegments[num*4+1]= Number(edges[i][0])+1; //back to M indexing683 if (GetId(triangles[(int)j/3][(int)((k+2)%3)])==i2){ 684 bamgmesh->IssmSegments[num*4+0]=GetId(edges[i][1])+1; //back to M indexing 685 bamgmesh->IssmSegments[num*4+1]=GetId(edges[i][0])+1; //back to M indexing 686 686 bamgmesh->IssmSegments[num*4+2]=(int)j/3+1; //back to M indexing 687 687 bamgmesh->IssmSegments[num*4+3]=edges[i].ReferenceNumber; … … 712 712 //reft[i]=-1 for outside triangle 713 713 if (reft[i]>=0 && !( t.Hidden(0) || t.Hidden(1) || t.Hidden(2) )){ 714 bamgmesh->Triangles[num*4+0]= Number(t[0])+1; //back to M indexing715 bamgmesh->Triangles[num*4+1]= Number(t[1])+1; //back to M indexing716 bamgmesh->Triangles[num*4+2]= Number(t[2])+1; //back to M indexing714 bamgmesh->Triangles[num*4+0]=GetId(t[0])+1; //back to M indexing 715 bamgmesh->Triangles[num*4+1]=GetId(t[1])+1; //back to M indexing 716 bamgmesh->Triangles[num*4+2]=GetId(t[2])+1; //back to M indexing 717 717 bamgmesh->Triangles[num*4+3]=subdomains[reft[i]].ReferenceNumber; 718 718 num=num+1; … … 733 733 if (reft[i]<0) continue; 734 734 if ((ta=t.Quadrangle(v0,v1,v2,v3)) !=0 && &t<ta) { 735 bamgmesh->Quadrilaterals[i*5+0]= Number(v0)+1; //back to M indexing736 bamgmesh->Quadrilaterals[i*5+1]= Number(v1)+1; //back to M indexing737 bamgmesh->Quadrilaterals[i*5+2]= Number(v2)+1; //back to M indexing738 bamgmesh->Quadrilaterals[i*5+3]= Number(v3)+1; //back to M indexing735 bamgmesh->Quadrilaterals[i*5+0]=GetId(v0)+1; //back to M indexing 736 bamgmesh->Quadrilaterals[i*5+1]=GetId(v1)+1; //back to M indexing 737 bamgmesh->Quadrilaterals[i*5+2]=GetId(v2)+1; //back to M indexing 738 bamgmesh->Quadrilaterals[i*5+3]=GetId(v3)+1; //back to M indexing 739 739 bamgmesh->Quadrilaterals[i*5+4]=subdomains[reft[i]].ReferenceNumber; 740 740 } … … 750 750 for (i=0;i<nbsubdomains;i++){ 751 751 bamgmesh->SubDomains[i*4+0]=3; 752 bamgmesh->SubDomains[i*4+1]=reft[ Number(subdomains[i].head)];752 bamgmesh->SubDomains[i*4+1]=reft[GetId(subdomains[i].head)]; 753 753 bamgmesh->SubDomains[i*4+2]=1; 754 754 bamgmesh->SubDomains[i*4+3]=subdomains[i].ReferenceNumber; … … 764 764 for (i=0;i<Gh.nbsubdomains;i++){ 765 765 bamgmesh->SubDomainsFromGeom[i*4+0]=2; 766 bamgmesh->SubDomainsFromGeom[i*4+1]= Number(subdomains[i].edge)+1; //back to Matlab indexing766 bamgmesh->SubDomainsFromGeom[i*4+1]=GetId(subdomains[i].edge)+1; //back to Matlab indexing 767 767 bamgmesh->SubDomainsFromGeom[i*4+2]=subdomains[i].direction; 768 768 bamgmesh->SubDomainsFromGeom[i*4+3]=Gh.subdomains[i].ReferenceNumber; … … 779 779 VertexOnGeom &v=VerticesOnGeomVertex[i]; 780 780 ISSMASSERT(v.OnGeomVertex()); 781 bamgmesh->VerticesOnGeometricVertex[i*2+0]= Number((BamgVertex*)v)+1; //back to Matlab indexing782 bamgmesh->VerticesOnGeometricVertex[i*2+1]=Gh. Number((GeometricalVertex*)v)+1; //back to Matlab indexing781 bamgmesh->VerticesOnGeometricVertex[i*2+0]=GetId((BamgVertex*)v)+1; //back to Matlab indexing 782 bamgmesh->VerticesOnGeometricVertex[i*2+1]=Gh.GetId((GeometricalVertex*)v)+1; //back to Matlab indexing 783 783 } 784 784 } … … 795 795 ISSMERROR("A vertices supposed to be OnGeometricEdge is actually not"); 796 796 } 797 bamgmesh->VerticesOnGeometricEdge[i*3+0]= Number((BamgVertex*)v)+1; //back to Matlab indexing798 bamgmesh->VerticesOnGeometricEdge[i*3+1]=Gh. Number((const GeometricalEdge*)v)+1; //back to Matlab indexing797 bamgmesh->VerticesOnGeometricEdge[i*3+0]=GetId((BamgVertex*)v)+1; //back to Matlab indexing 798 bamgmesh->VerticesOnGeometricEdge[i*3+1]=Gh.GetId((const GeometricalEdge*)v)+1; //back to Matlab indexing 799 799 bamgmesh->VerticesOnGeometricEdge[i*3+2]=(double)v; //absisce 800 800 } … … 815 815 if (edges[i].GeometricalEdgeHook){ 816 816 bamgmesh->EdgesOnGeometricEdge[count*2+0]=(double)i+1; //back to Matlab indexing 817 bamgmesh->EdgesOnGeometricEdge[count*2+1]=(double)Gh. Number(edges[i].GeometricalEdgeHook)+1; //back to Matlab indexing817 bamgmesh->EdgesOnGeometricEdge[count*2+1]=(double)Gh.GetId(edges[i].GeometricalEdgeHook)+1; //back to Matlab indexing 818 818 count=count+1; 819 819 } … … 831 831 if (reft[i]>=0){ 832 832 for (j=0;j<3;j++){ 833 k= Number(triangles[i].TriangleAdj(j));833 k=GetId(triangles[i].TriangleAdj(j)); 834 834 if (reft[k]>=0){ 835 835 ISSMASSERT(3*num+j<3*(nbt-nbtout)); … … 1289 1289 //build edge4 (chain) 1290 1290 for (i=0;i<nbe;i++){ 1291 edge4->SortAndAdd( Number(edges[i][0]),Number(edges[i][1]));1291 edge4->SortAndAdd(GetId(edges[i][0]),GetId(edges[i][1])); 1292 1292 } 1293 1293 //check that there is no double edge … … 1303 1303 for (j=0;j<3;j++) { 1304 1304 //Add Edge to edge4 (k=numberofedges in edge4) 1305 long k =edge4->SortAndAdd( Number(triangles[i][VerticesOfTriangularEdge[j][0]]), Number(triangles[i][VerticesOfTriangularEdge[j][1]]));1305 long k =edge4->SortAndAdd(GetId(triangles[i][VerticesOfTriangularEdge[j][0]]), GetId(triangles[i][VerticesOfTriangularEdge[j][1]])); 1306 1306 long invisible = triangles[i].Hidden(j); 1307 1307 … … 1327 1327 //else (see 3 lines above), the edge has been called more than twice: return error 1328 1328 else { 1329 printf("The edge (%i,%i) belongs to more than 2 triangles (%i)\n", Number(triangles[i][VerticesOfTriangularEdge[j][0]]),Number(triangles[i][VerticesOfTriangularEdge[j][1]]),k);1329 printf("The edge (%i,%i) belongs to more than 2 triangles (%i)\n",GetId(triangles[i][VerticesOfTriangularEdge[j][0]]),GetId(triangles[i][VerticesOfTriangularEdge[j][1]]),k); 1330 1330 printf("Edge %i of triangle %i\n",j,i); 1331 1331 printf("Edge %i of triangle %i\n",(-st[k]+2)%3,(-st[k]+2)/3); 1332 printf("Edge %i of triangle %i\n",triangles[(-st[k]+2)/3].NuEdgeTriangleAdj((int)((-st[k]+2)%3)), Number(triangles[(-st[k]+2)/3].TriangleAdj((int)((-st[k]+2)%3))));1332 printf("Edge %i of triangle %i\n",triangles[(-st[k]+2)/3].NuEdgeTriangleAdj((int)((-st[k]+2)%3)),GetId(triangles[(-st[k]+2)/3].TriangleAdj((int)((-st[k]+2)%3)))); 1333 1333 ISSMERROR("An edge belongs to more than 2 triangles"); 1334 1334 } … … 1507 1507 1508 1508 //color the adjacent triangle 1509 if ( ! t->Locked(j) && tt && (colorT[jt = Number(tt)] == -1) && ( tt->color==kolor)) {1509 if ( ! t->Locked(j) && tt && (colorT[jt = GetId(tt)] == -1) && ( tt->color==kolor)) { 1510 1510 colorT[jt]=nbsubdomains; 1511 1511 st[++level]=jt; … … 1555 1555 for (i=0;i<nbv;i++) colorV[i]=-1; 1556 1556 for (i=0;i<nbe;i++){ 1557 for ( j=0;j<2;j++) colorV[ Number(edges[i][j])]=0;1557 for ( j=0;j<2;j++) colorV[GetId(edges[i][j])]=0; 1558 1558 } 1559 1559 //number the vertices belonging to edges … … 1618 1618 for (i=0;i<nbe;i++){ 1619 1619 1620 long i0 = Number(edges[i][0]);1621 long i1 = Number(edges[i][1]);1620 long i0 = GetId(edges[i][0]); 1621 long i1 = GetId(edges[i][1]); 1622 1622 long j0 = colorV[i0]; 1623 1623 long j1 = colorV[i1]; … … 1670 1670 //Build Gh.subdomains 1671 1671 for (i=0;i<nbsubdomains;i++){ 1672 it = Number(subdomains[i].head);1672 it = GetId(subdomains[i].head); 1673 1673 j = subdomains[i].direction; 1674 long i0 = Number(triangles[it][VerticesOfTriangularEdge[j][0]]);1675 long i1 = Number(triangles[it][VerticesOfTriangularEdge[j][1]]);1674 long i0 = GetId(triangles[it][VerticesOfTriangularEdge[j][0]]); 1675 long i1 = GetId(triangles[it][VerticesOfTriangularEdge[j][1]]); 1676 1676 k = edge4->SortAndFind(i0,i1); 1677 1677 if(k>=0){ … … 1784 1784 //compute chains 1785 1785 for(j=0;j<3;j++){ 1786 k= Number(triangles[i][j]);1786 k=GetId(triangles[i][j]); 1787 1787 next_p[p]=head_s[k]; 1788 1788 head_s[k]=p++; … … 1823 1823 if(triangles[i].link){ 1824 1824 // number of the 3 vertices 1825 iA = Number(triangles[i][0]);1826 iB = Number(triangles[i][1]);1827 iC = Number(triangles[i][2]);1825 iA = GetId(triangles[i][0]); 1826 iB = GetId(triangles[i][1]); 1827 iC = GetId(triangles[i][2]); 1828 1828 1829 1829 // value of the P1 fonction on 3 vertices … … 1852 1852 if(triangles[i].link){ 1853 1853 // number of the 3 vertices 1854 iA = Number(triangles[i][0]);1855 iB = Number(triangles[i][1]);1856 iC = Number(triangles[i][2]);1854 iA = GetId(triangles[i][0]); 1855 iB = GetId(triangles[i][1]); 1856 iC = GetId(triangles[i][2]); 1857 1857 1858 1858 //Hessian … … 1960 1960 1961 1961 // number of the 3 vertices 1962 iA = Number(t[0]);1963 iB = Number(t[1]);1964 iC = Number(t[2]);1962 iA = GetId(t[0]); 1963 iB = GetId(t[1]); 1964 iC = GetId(t[2]); 1965 1965 1966 1966 //compute triangle determinant (2*Area) … … 1977 1977 if ( !ta || !ta->link){ 1978 1978 //mark the two vertices of the edge as OnBoundary 1979 OnBoundary[ Number(t[VerticesOfTriangularEdge[j][0]])]=1;1980 OnBoundary[ Number(t[VerticesOfTriangularEdge[j][1]])]=1;1979 OnBoundary[GetId(t[VerticesOfTriangularEdge[j][0]])]=1; 1980 OnBoundary[GetId(t[VerticesOfTriangularEdge[j][1]])]=1; 1981 1981 nbb++; 1982 1982 } … … 2050 2050 2051 2051 // number of the 3 vertices 2052 iA = Number(triangles[i][0]);2053 iB = Number(triangles[i][1]);2054 iC = Number(triangles[i][2]);2052 iA = GetId(triangles[i][0]); 2053 iB = GetId(triangles[i][1]); 2054 iC = GetId(triangles[i][2]); 2055 2055 2056 2056 // for the test of boundary edge … … 2138 2138 if(triangles[i].link){// the real triangles 2139 2139 // number of the 3 vertices 2140 iA = Number(triangles[i][0]);2141 iB = Number(triangles[i][1]);2142 iC = Number(triangles[i][2]);2140 iA = GetId(triangles[i][0]); 2141 iB = GetId(triangles[i][1]); 2142 iC = GetId(triangles[i][2]); 2143 2143 double cc=3; 2144 2144 if(ijacobi==0) … … 2151 2151 if(triangles[i].link){ // the real triangles 2152 2152 // number of the 3 vertices 2153 iA = Number(triangles[i][0]);2154 iB = Number(triangles[i][1]);2155 iC = Number(triangles[i][2]);2153 iA = GetId(triangles[i][0]); 2154 iB = GetId(triangles[i][1]); 2155 iC = GetId(triangles[i][2]); 2156 2156 double cc = workT[i]*detT[i]; 2157 2157 workV[iA] += cc; … … 2228 2228 2229 2229 //Get number of the two vertices on the edge 2230 i1= Number(edges[i][0]);2231 i2= Number(edges[i][1]);2230 i1=GetId(edges[i][0]); 2231 i2=GetId(edges[i][1]); 2232 2232 ISSMASSERT(i1>=0 && i1<nbv && i2>=0 && i2<nbv); 2233 2233 splitvertex[i1]++; … … 2270 2270 for(i=0;i<NbCrackedEdges;i++){ 2271 2271 //Get the numbers of the 2 vertices of the crren cracked edge 2272 i1= Number((*CrackedEdges[i].e1)[0]);2273 i2= Number((*CrackedEdges[i].e1)[1]);2272 i1=GetId((*CrackedEdges[i].e1)[0]); 2273 i2=GetId((*CrackedEdges[i].e1)[1]); 2274 2274 2275 2275 //find a triangle holding the vertex i1 (first vertex of the ith cracked edge) 2276 2276 Triangle* tbegin=vertices[i1].t; 2277 2277 k=vertices[i1].vint;//local number of i in triangle tbegin 2278 ISSMASSERT( Number((*tbegin)[k])==Number(vertices[i1]));2278 ISSMASSERT(GetId((*tbegin)[k])==GetId(vertices[i1])); 2279 2279 2280 2280 //Now, we are going to go through the adjacent triangle that hold i1 till … … 2285 2285 for(j=0;j<3;j++){ 2286 2286 //Find the position of i1 in the triangle index 2287 if ( Number((*ta.t)[j])==i1){2287 if (GetId((*ta.t)[j])==i1){ 2288 2288 j1=j; 2289 2289 break; … … 2292 2292 for(j=0;j<3;j++){ 2293 2293 //Check wether i2 is also in the triangle index 2294 if ( Number((*ta.t)[j])==i2){2294 if (GetId((*ta.t)[j])==i2){ 2295 2295 j2=j; 2296 2296 //Invert j1 and j2 if necessary … … 2316 2316 } 2317 2317 } 2318 //printf("%i -> %i %i %i, edge [%i->%i %i->%i]\n",element_renu[ Number(ta.t)],Number((*ta.t)[0])+1,Number((*ta.t)[1])+1,Number((*ta.t)[2])+1,i1,j1,i2,j2);2318 //printf("%i -> %i %i %i, edge [%i->%i %i->%i]\n",element_renu[GetId(ta.t)],GetId((*ta.t)[0])+1,GetId((*ta.t)[1])+1,GetId((*ta.t)[2])+1,i1,j1,i2,j2); 2319 2319 ta = Next(ta).Adj(); 2320 2320 if (count++>50) ISSMERROR("Maximum number of iteration exceeded"); … … 2365 2365 if (nbswp) nbfe++; 2366 2366 if ( nbswp < 0 && k < 5){ 2367 ISSMERROR("Missing Edge %i, v0=%i,v1=%i",i, Number(edges[i][0]),Number(edges[i][1]));2367 ISSMERROR("Missing Edge %i, v0=%i,v1=%i",i,GetId(edges[i][0]),GetId(edges[i][1])); 2368 2368 } 2369 2369 } … … 2481 2481 subdomains[k].head = t1; 2482 2482 do { 2483 mark[ Number(t)]=k;2483 mark[GetId(t)]=k; 2484 2484 t=t->link; 2485 2485 } while (t!=t1); … … 2501 2501 { 2502 2502 Triangle *ta = triangles[it].TriangleAdj(na); 2503 long kl = ta ? mark[ Number(ta)] : -2;2503 long kl = ta ? mark[GetId(ta)] : -2; 2504 2504 long kr = mark[it]; 2505 2505 if(kr !=kl) { … … 2557 2557 // by carefull is not easy to find a edge create from a GeometricalEdge 2558 2558 // see routine MakeGeometricalEdgeToEdge 2559 Edge &e = *GeometricalEdgetoEdge[Gh. Number(eg)];2559 Edge &e = *GeometricalEdgetoEdge[Gh.GetId(eg)]; 2560 2560 if (&e==NULL){ 2561 2561 ISSMERROR("&e==NULL"); … … 2586 2586 ISSMERROR("bad definition of SubSomain %i",i); 2587 2587 } 2588 long it = Number(t);2588 long it = GetId(t); 2589 2589 if (mark[it] >=0) { 2590 2590 break; … … 2598 2598 { 2599 2599 kkk++; 2600 if (mark[ Number(tt)]>=0){2601 ISSMERROR("mark[ Number(tt)]>=0");2600 if (mark[GetId(tt)]>=0){ 2601 ISSMERROR("mark[GetId(tt)]>=0"); 2602 2602 } 2603 mark[ Number(tt)]=i;2603 mark[GetId(tt)]=i; 2604 2604 tt=tt->link; 2605 2605 } while (tt!=t); … … 2925 2925 Edge * ei = edges+i; 2926 2926 GeometricalEdge *GeometricalEdgeHook = ei->GeometricalEdgeHook; 2927 e[Gh. Number(GeometricalEdgeHook)] = ei;2927 e[Gh.GetId(GeometricalEdgeHook)] = ei; 2928 2928 } 2929 2929 for ( i=0;i<nbe ; i++) … … 2935 2935 Adj(GeometricalEdgeHook,j); // next geom edge 2936 2936 j=1-j; 2937 if (e[Gh. Number(GeometricalEdgeHook)]) break; // optimisation2938 e[Gh. Number(GeometricalEdgeHook)] = ei;2937 if (e[Gh.GetId(GeometricalEdgeHook)]) break; // optimisation 2938 e[Gh.GetId(GeometricalEdgeHook)] = ei; 2939 2939 } 2940 2940 } … … 3020 3020 for (int j=0;j<3;j++){ 3021 3021 Triangle &tt = *t.TriangleAdj(j); 3022 if ( ! &tt || it < Number(tt) && ( tt.link || t.link)){3022 if ( ! &tt || it < GetId(tt) && ( tt.link || t.link)){ 3023 3023 BamgVertex &v0 = t[VerticesOfTriangularEdge[j][0]]; 3024 3024 BamgVertex &v1 = t[VerticesOfTriangularEdge[j][1]]; … … 3160 3160 R2 A=vA; 3161 3161 R2 B=vB; 3162 k= Number(ta);3162 k=GetId(ta); 3163 3163 3164 3164 //if this edge has already been done, go to next edge of triangle … … 3181 3181 long kt; 3182 3182 do { 3183 kt = Number((Triangle*) ta);3183 kt = GetId((Triangle*) ta); 3184 3184 if (first_np_or_next_t[kt]>0){ 3185 3185 first_np_or_next_t[kt]=-Headt; … … 3222 3222 } 3223 3223 else { 3224 ISSMERROR("ProjectOnCurve On BamgVertex %i forget call to SetVertexFieldOnBTh",BTh. Number(vA));3224 ISSMERROR("ProjectOnCurve On BamgVertex %i forget call to SetVertexFieldOnBTh",BTh.GetId(vA)); 3225 3225 } 3226 3226 … … 3233 3233 } 3234 3234 else { 3235 ISSMERROR("ProjectOnCurve On BamgVertex %i forget call to SetVertexFieldOnBTh",BTh. Number(vB));3235 ISSMERROR("ProjectOnCurve On BamgVertex %i forget call to SetVertexFieldOnBTh",BTh.GetId(vB)); 3236 3236 } 3237 3237 Edge * e = &BhAB; … … 3368 3368 SetOfEdges4* edge4= new SetOfEdges4(nbt*3,nbv); 3369 3369 for (i=0;i<nbe;i++){ 3370 kk=kk+(i==edge4->SortAndAdd( Number(edges[i][0]),Number(edges[i][1])));3370 kk=kk+(i==edge4->SortAndAdd(GetId(edges[i][0]),GetId(edges[i][1]))); 3371 3371 } 3372 3372 if (kk != nbe){ … … 3381 3381 3382 3382 //Add current triangle edge to edge4 3383 long k =edge4->SortAndAdd( Number(triangles[i][VerticesOfTriangularEdge[j][0]]),Number(triangles[i][VerticesOfTriangularEdge[j][1]]));3383 long k =edge4->SortAndAdd(GetId(triangles[i][VerticesOfTriangularEdge[j][0]]),GetId(triangles[i][VerticesOfTriangularEdge[j][1]])); 3384 3384 3385 3385 long invisible=triangles[i].Hidden(j); … … 3403 3403 //An edge belongs to 2 triangles 3404 3404 else { 3405 ISSMERROR("The edge (%i , %i) belongs to more than 2 triangles", Number(triangles[i][VerticesOfTriangularEdge[j][0]]),Number(triangles[i][VerticesOfTriangularEdge[j][1]]));3405 ISSMERROR("The edge (%i , %i) belongs to more than 2 triangles",GetId(triangles[i][VerticesOfTriangularEdge[j][0]]),GetId(triangles[i][VerticesOfTriangularEdge[j][1]])); 3406 3406 } 3407 3407 } … … 3547 3547 BamgVertex *v0= ta.EdgeVertex(0); 3548 3548 BamgVertex *v1= ta.EdgeVertex(1); 3549 long k =edge4->SortAndAdd(v0? Number(v0):nbv,v1? Number(v1):nbv);3549 long k =edge4->SortAndAdd(v0?GetId(v0):nbv,v1? GetId(v1):nbv); 3550 3550 3551 3551 ISSMASSERT(st[k]>=0); … … 3623 3623 /*Check that the 2 vertices are on geometry AND required*/ 3624 3624 if(!edges[i][j].GeometricalEdgeHook->IsRequiredVertex()){ 3625 printf("ReconstructExistingMesh error message: problem with the edge number %i: [%i %i]\n",i+1, Number(edges[i][0])+1,Number(edges[i][1])+1);3626 printf("This edge is on geometrical edge number %i\n",Gh. Number(edges[i].GeometricalEdgeHook)+1);3625 printf("ReconstructExistingMesh error message: problem with the edge number %i: [%i %i]\n",i+1,GetId(edges[i][0])+1,GetId(edges[i][1])+1); 3626 printf("This edge is on geometrical edge number %i\n",Gh.GetId(edges[i].GeometricalEdgeHook)+1); 3627 3627 if (edges[i][j].GeometricalEdgeHook->OnGeomVertex()) 3628 printf("the vertex number %i of this edge is a geometric BamgVertex number %i\n", Number(edges[i][j])+1,Gh.Number(edges[i][j].GeometricalEdgeHook->gv)+1);3628 printf("the vertex number %i of this edge is a geometric BamgVertex number %i\n",GetId(edges[i][j])+1,Gh.GetId(edges[i][j].GeometricalEdgeHook->gv)+1); 3629 3629 else if (edges[i][j].GeometricalEdgeHook->OnGeomEdge()) 3630 printf("the vertex number %i of this edge is a geometric Edge number %i\n", Number(edges[i][j])+1,Gh.Number(edges[i][j].GeometricalEdgeHook->ge)+1);3630 printf("the vertex number %i of this edge is a geometric Edge number %i\n",GetId(edges[i][j])+1,Gh.GetId(edges[i][j].GeometricalEdgeHook->ge)+1); 3631 3631 else 3632 3632 printf("Its pointer is %p\n",edges[i][j].GeometricalEdgeHook); … … 3659 3659 } 3660 3660 do { 3661 long kt = Number(t);3661 long kt = GetId(t); 3662 3662 if (kt<0 || kt >= nbt ){ 3663 3663 ISSMERROR("kt<0 || kt >= nbt"); … … 3688 3688 3689 3689 for ( i=0;i<nbsubdomains;i++) 3690 subdomains[i].head=triangles+renu[ Number(subdomains[i].head)];3690 subdomains[i].head=triangles+renu[GetId(subdomains[i].head)]; 3691 3691 3692 3692 // move the Triangles without a copy of the array … … 3733 3733 BamgVertex *v = VerticesOnGeomVertex[i].mv; 3734 3734 if (v>=vertices && v < ve) 3735 VerticesOnGeomVertex[i].mv=vertices+renu[ Number(v)];3735 VerticesOnGeomVertex[i].mv=vertices+renu[GetId(v)]; 3736 3736 } 3737 3737 … … 3741 3741 BamgVertex *v =VerticesOnGeomEdge[i].mv; 3742 3742 if (v>=vertices && v < ve) 3743 VerticesOnGeomEdge[i].mv=vertices+renu[ Number(v)];3743 VerticesOnGeomEdge[i].mv=vertices+renu[GetId(v)]; 3744 3744 } 3745 3745 … … 3749 3749 BamgVertex *v=VertexOnBThVertex[i].v; 3750 3750 if (v>=vertices && v < ve) 3751 VertexOnBThVertex[i].v=vertices+renu[ Number(v)];3751 VertexOnBThVertex[i].v=vertices+renu[GetId(v)]; 3752 3752 } 3753 3753 … … 3756 3756 BamgVertex *v=VertexOnBThEdge[i].v; 3757 3757 if (v>=vertices && v < ve) 3758 VertexOnBThEdge[i].v=vertices+renu[ Number(v)];3758 VertexOnBThEdge[i].v=vertices+renu[GetId(v)]; 3759 3759 } 3760 3760 … … 3927 3927 { 3928 3928 Triangle *ta = triangles[it].TriangleAdj(j); 3929 if ( !ta || !ta->link || Number(ta) >= it)3929 if ( !ta || !ta->link || GetId(ta) >= it) 3930 3930 { 3931 3931 BamgVertex & vP = triangles[it][VerticesOfTriangularEdge[j][0]]; … … 3975 3975 tstart[i]=0; 3976 3976 for ( j=0;j<NbVerticesOnGeomVertex;j++ ) 3977 tstart[ Number(VerticesOnGeomVertex[j].mv)]=&vide;3977 tstart[ GetId(VerticesOnGeomVertex[j].mv)]=&vide; 3978 3978 for ( k=0;k<NbVerticesOnGeomEdge;k++ ) 3979 tstart[ Number(VerticesOnGeomEdge[k].mv)]=&vide;3979 tstart[ GetId(VerticesOnGeomEdge[k].mv)]=&vide; 3980 3980 if(verbose>2) printf(" SmoothingVertex: nb Iteration = %i, Omega=%g\n",nbiter,omega); 3981 3981 for (k=0;k<nbiter;k++) … … 4153 4153 4154 4154 4155 kk += (i == edge4->SortAndAdd( Number(edges[i][0]),Number(edges[i][1])));4155 kk += (i == edge4->SortAndAdd(GetId(edges[i][0]),GetId(edges[i][1]))); 4156 4156 if (ong) // a geometrical edges 4157 4157 { … … 4164 4164 ISSMERROR("!edgesGtoB"); 4165 4165 } 4166 ong= ProjectOnCurve(*edgesGtoB[Gh. Number(edges[i].GeometricalEdgeHook)],4166 ong= ProjectOnCurve(*edgesGtoB[Gh.GetId(edges[i].GeometricalEdgeHook)], 4167 4167 edges[i][0],edges[i][1],0.5,vertices[k], 4168 4168 newVertexOnBThEdge[kvb], … … 4244 4244 const BamgVertex & v0 = t[VerticesOfTriangularEdge[j][0]]; 4245 4245 const BamgVertex & v1 = t[VerticesOfTriangularEdge[j][1]]; 4246 long ke =edge4->SortAndFind( Number(v0),Number(v1));4246 long ke =edge4->SortAndFind(GetId(v0),GetId(v1)); 4247 4247 if (ke>0) 4248 4248 { 4249 long ii = Number(tt);4249 long ii = GetId(tt); 4250 4250 int jj = ta; 4251 4251 long ks = ke + nbvold; … … 4295 4295 if ( kedge[3*i+j] < 0) 4296 4296 { 4297 long ke =edge4->SortAndFind( Number(v0),Number(v1));4297 long ke =edge4->SortAndFind(GetId(v0),GetId(v1)); 4298 4298 if (ke<0) // new 4299 4299 { 4300 4300 if (&tt) // internal triangles all the boundary 4301 4301 { // new internal edges 4302 long ii = Number(tt);4302 long ii = GetId(tt); 4303 4303 int jj = ta; 4304 4304 … … 4600 4600 if(!t.Locked(j) && !t.Hidden(j)){ 4601 4601 Triangle &tt = *t.TriangleAdj(j); 4602 if ( &tt && tt.link && it < Number(tt))4602 if ( &tt && tt.link && it < GetId(tt)) 4603 4603 { // an internal edge 4604 4604 BamgVertex &v0 = t[VerticesOfTriangularEdge[j][0]]; … … 4678 4678 /*Check output (Vertex a)*/ 4679 4679 if (!a) ISSMERROR("problem while trying to find nearest vertex from a given point. No output found"); 4680 if (!a->t) ISSMERROR("no triangle is associated to vertex number %i (orphan?)", Number(a)+1);4680 if (!a->t) ISSMERROR("no triangle is associated to vertex number %i (orphan?)",GetId(a)+1); 4681 4681 ISSMASSERT(a>=vertices && a<vertices+nbv); 4682 4682 … … 4786 4786 4787 4787 //get current triangle number 4788 num = Number(t);4788 num = GetId(t); 4789 4789 4790 4790 //check that num is in [0 nbt[ … … 5266 5266 5267 5267 /*Get index of current curve*/ 5268 int icurveequi= Gh. Number(curve);5268 int icurveequi= Gh.GetId(curve); 5269 5269 5270 5270 /*For phase 0, check that we are at the begining of the curve only*/ … … 5363 5363 } 5364 5364 if (!ee.adj[k1]) { 5365 ISSMERROR(" adj edge %i, nbe=%i, Gh.vertices=%i",BTh. Number(ee),nbe,Gh.vertices);5365 ISSMERROR(" adj edge %i, nbe=%i, Gh.vertices=%i",BTh.GetId(ee),nbe,Gh.vertices); 5366 5366 } 5367 5367 pe = ee.adj[k1]; // next edge -
issm/trunk/src/c/objects/Bamg/Mesh.h
r5148 r5149 105 105 Metric MetricAt (const R2 &) const; 106 106 GeometricalEdge* ProjectOnCurve( Edge & AB, BamgVertex & A, BamgVertex & B,double theta, BamgVertex & R,VertexOnEdge & BR,VertexOnGeom & GR); 107 long Number(const Triangle & t) const { return &t - triangles;}108 long Number(const Triangle * t) const { return t - triangles;}109 long Number(const BamgVertex & t) const { return &t - vertices;}110 long Number(const BamgVertex * t) const { return t - vertices;}111 long Number(const Edge & t) const { return &t - edges;}112 long Number(const Edge * t) const { return t - edges;}107 long GetId(const Triangle & t) const { return &t - triangles;} 108 long GetId(const Triangle * t) const { return t - triangles;} 109 long GetId(const BamgVertex & t) const { return &t - vertices;} 110 long GetId(const BamgVertex * t) const { return t - vertices;} 111 long GetId(const Edge & t) const { return &t - edges;} 112 long GetId(const Edge * t) const { return t - edges;} 113 113 long Number2(const Triangle * t) const { return t - triangles; } 114 114 BamgVertex* NearestVertex(Icoor1 i,Icoor1 j) ; -
issm/trunk/src/c/objects/Bamg/SubDomain.cpp
r5095 r5149 18 18 ISSMERROR("head-Th.triangles<0 || head-Th.triangles>=Th.nbt"); 19 19 } 20 head = ThNew.triangles + Th. Number(head) ;20 head = ThNew.triangles + Th.GetId(head) ; 21 21 if (edge-Th.edges<0 || edge-Th.edges>=Th.nbe);{ 22 22 ISSMERROR("edge-Th.edges<0 || edge-Th.edges>=Th.nbe"); 23 23 } 24 edge = ThNew.edges+ Th. Number(edge);24 edge = ThNew.edges+ Th.GetId(edge); 25 25 } 26 26 /*}}}*/ -
issm/trunk/src/c/objects/Bamg/Triangle.cpp
r5148 r5149 200 200 void Triangle::Set(const Triangle & rec,const Mesh & Th ,Mesh & ThNew){ 201 201 *this = rec; 202 if ( vertices[0] ) vertices[0] = ThNew.vertices + Th. Number(vertices[0]);203 if ( vertices[1] ) vertices[1] = ThNew.vertices + Th. Number(vertices[1]);204 if ( vertices[2] ) vertices[2] = ThNew.vertices + Th. Number(vertices[2]);205 if(adj[0]) adj[0] = ThNew.triangles + Th. Number(adj[0]);206 if(adj[1]) adj[1] = ThNew.triangles + Th. Number(adj[1]);207 if(adj[2]) adj[2] = ThNew.triangles + Th. Number(adj[2]);202 if ( vertices[0] ) vertices[0] = ThNew.vertices + Th.GetId(vertices[0]); 203 if ( vertices[1] ) vertices[1] = ThNew.vertices + Th.GetId(vertices[1]); 204 if ( vertices[2] ) vertices[2] = ThNew.vertices + Th.GetId(vertices[2]); 205 if(adj[0]) adj[0] = ThNew.triangles + Th.GetId(adj[0]); 206 if(adj[1]) adj[1] = ThNew.triangles + Th.GetId(adj[1]); 207 if(adj[2]) adj[2] = ThNew.triangles + Th.GetId(adj[2]); 208 208 if (link >= Th.triangles && link < Th.triangles + Th.nbt) 209 link = ThNew.triangles + Th. Number(link);209 link = ThNew.triangles + Th.GetId(link); 210 210 } 211 211 /*}}}*/ -
issm/trunk/src/c/objects/Bamg/VertexOnEdge.cpp
r5095 r5149 15 15 void VertexOnEdge::Set(const Mesh & Th ,long i,Mesh & ThNew){ 16 16 *this = Th.VertexOnBThEdge[i]; 17 v = ThNew.vertices + Th. Number(v);17 v = ThNew.vertices + Th.GetId(v); 18 18 } 19 19 /*}}}*/ -
issm/trunk/src/c/objects/Bamg/VertexOnGeom.cpp
r5095 r5149 16 16 void VertexOnGeom::Set(const VertexOnGeom & rec,const Mesh & Th ,Mesh & ThNew){ 17 17 *this = rec; 18 mv = ThNew.vertices + Th. Number(mv);18 mv = ThNew.vertices + Th.GetId(mv); 19 19 if (gv) 20 20 if (abscisse < 0 ) 21 gv = ThNew.Gh.vertices + Th.Gh. Number(gv);21 gv = ThNew.Gh.vertices + Th.Gh.GetId(gv); 22 22 else 23 ge = ThNew.Gh.edges + Th.Gh. Number(ge);23 ge = ThNew.Gh.edges + Th.Gh.GetId(ge); 24 24 25 25 } -
issm/trunk/src/c/objects/Bamg/VertexOnVertex.cpp
r5095 r5149 15 15 void VertexOnVertex::Set(const Mesh &Th ,long i,Mesh &ThNew) { 16 16 *this = Th.VertexOnBThVertex[i]; 17 v = ThNew.vertices + Th. Number(v);17 v = ThNew.vertices + Th.GetId(v); 18 18 } 19 19 /*}}}*/
Note:
See TracChangeset
for help on using the changeset viewer.