diff --git a/Mesh/Create_Old.cpp b/Mesh/Create_Old.cpp new file mode 100644 index 0000000000000000000000000000000000000000..79cb50c19e1314d1e1a881321e3bc17286ec5ce4 --- /dev/null +++ b/Mesh/Create_Old.cpp @@ -0,0 +1,716 @@ +// $Id: Create_Old.cpp,v 1.1 2001-11-27 09:12:53 geuzaine Exp $ + +#include "Gmsh.h" +#include "Numeric.h" +#include "Geo.h" +#include "CAD.h" +#include "Mesh.h" +#include "Utils.h" +#include "Context.h" +#include "Create.h" + +extern Mesh *THEM; +extern Context_T CTX; + +//static double CIRC_GRAN = 2.2; + +int compareNXE (const void *a, const void *b){ + NXE *q, *w; + + q = (NXE *) a; + w = (NXE *) b; + return (compareVertex (&q->v, &w->v)); +} + +int compareFxE (const void *a, const void *b){ + FxE *q, *w; + + q = (FxE *) a; + w = (FxE *) b; + return (compareFace (&q->Sorted, &w->Sorted)); +} + +int compareSurfaceLoop (const void *a, const void *b){ + SurfaceLoop **q, **w; + + q = (SurfaceLoop **) a; + w = (SurfaceLoop **) b; + return ((*q)->Num - (*w)->Num); +} + +int compareEdgeLoop (const void *a, const void *b){ + EdgeLoop **q, **w; + + q = (EdgeLoop **) a; + w = (EdgeLoop **) b; + return ((*q)->Num - (*w)->Num); +} + +int compareHexahedron (const void *a, const void *b){ + Hexahedron **q, **w; + + q = (Hexahedron **) a; + w = (Hexahedron **) b; + return ((*q)->Num - (*w)->Num); +} + +int comparePrism (const void *a, const void *b){ + Prism **q, **w; + + q = (Prism **) a; + w = (Prism **) b; + return ((*q)->Num - (*w)->Num); +} + +int comparePyramid (const void *a, const void *b){ + Pyramid **q, **w; + + q = (Pyramid **) a; + w = (Pyramid **) b; + return ((*q)->Num - (*w)->Num); +} + +int compareQuality (const void *a, const void *b){ + double d; + Simplex **q, **w; + + q = (Simplex **) a; + w = (Simplex **) b; + d = (*q)->Quality - (*w)->Quality; + + if (d > 0) + return (1); + if (d < 0) + return (-1); + return ((*q)->Num - (*w)->Num); +} + +int compareCurve (const void *a, const void *b){ + Curve **q, **w; + + q = (Curve **) a; + w = (Curve **) b; + return ((*q)->Num - (*w)->Num); +} + +int compareAttractor (const void *a, const void *b){ + Attractor **q, **w; + + q = (Attractor **) a; + w = (Attractor **) b; + return ((*q)->Num - (*w)->Num); +} + +int compareSurface (const void *a, const void *b){ + Surface **q, **w; + + q = (Surface **) a; + w = (Surface **) b; + return ((*q)->Num - (*w)->Num); +} + +int compareVolume (const void *a, const void *b){ + Volume **q, **w; + + q = (Volume **) a; + w = (Volume **) b; + return ((*q)->Num - (*w)->Num); +} + +int compareSxF (const void *a, const void *b){ + SxF *q, *w; + + q = (SxF *) a; + w = (SxF *) b; + return compareFace (&q->F, &w->F); +} + +Attractor * Create_Attractor (int Num, double lc1, double lc2, double Radius, + Vertex * v, Curve * c, Surface * s){ + Attractor *pA; + + pA = (Attractor *) Malloc (sizeof (Attractor)); + pA->v = v; + pA->c = c; + pA->s = s; + pA->lc1 = lc1; + pA->lc2 = lc2; + pA->Radius = Radius; + return pA; +} + +void Add_SurfaceLoop (int Num, List_T * intlist, Mesh * M){ + SurfaceLoop *pSL; + int i, j; + pSL = (SurfaceLoop *) Malloc (sizeof (SurfaceLoop)); + pSL->Surfaces = List_Create (List_Nbr (intlist), 1, sizeof (int)); + pSL->Num = Num; + THEM->MaxSurfaceLoopNum = IMAX(THEM->MaxSurfaceLoopNum,Num); + for (i = 0; i < List_Nbr (intlist); i++){ + List_Read (intlist, i, &j); + List_Add (pSL->Surfaces, &j); + } + Tree_Add (M->SurfaceLoops, &pSL); +} + +void Add_PhysicalGroup (int Num, int typ, List_T * intlist, Mesh * M){ + PhysicalGroup *pSL; + int i, j; + pSL = (PhysicalGroup *) Malloc (sizeof (PhysicalGroup)); + pSL->Entities = List_Create (List_Nbr (intlist), 1, sizeof (int)); + pSL->Num = Num; + THEM->MaxPhysicalNum = IMAX(THEM->MaxPhysicalNum,Num); + pSL->Typ = typ; + for (i = 0; i < List_Nbr (intlist); i++){ + List_Read (intlist, i, &j); + List_Add (pSL->Entities, &j); + } + List_Add (M->PhysicalGroups, &pSL); +} + +void Add_EdgeLoop (int Num, List_T * intlist, Mesh * M){ + EdgeLoop *pEL; + int i, j; + pEL = (EdgeLoop *) Malloc (sizeof (EdgeLoop)); + pEL->Curves = List_Create (List_Nbr (intlist), 1, sizeof (int)); + pEL->Num = Num; + THEM->MaxLineLoopNum = IMAX(THEM->MaxLineLoopNum,Num); + for (i = 0; i < List_Nbr (intlist); i++){ + List_Read (intlist, i, &j); + List_Add (pEL->Curves, &j); + } + Tree_Add (M->EdgeLoops, &pEL); +} + +void End_Curve (Curve * c){ + double det, R2, mat[3][3], R, A3, A1, A4; + Vertex *v[5], v1, v3, v4; + double dd[3], qq[3], AX, f1, f2, DP, dir32[3], dir12[3], n[3], m[3], dir42[3]; + double rhs[2], sys[2][2], sol[2]; + int i; + Curve *Curve; + + if (c->Typ == MSH_SEGM_CIRC || + c->Typ == MSH_SEGM_CIRC_INV || + c->Typ == MSH_SEGM_ELLI || + c->Typ == MSH_SEGM_ELLI_INV){ + + Curve = c; + + if (List_Nbr (Curve->Control_Points) == 4) + List_Read (Curve->Control_Points, 2, &v[4]); + else + v[4] = NULL; + + if (Curve->Typ == MSH_SEGM_CIRC_INV || + Curve->Typ == MSH_SEGM_ELLI_INV){ + List_Read (Curve->Control_Points, 0, &v[3]); + List_Read (Curve->Control_Points, 1, &v[2]); + if (!v[4]) + List_Read (Curve->Control_Points, 2, &v[1]); + else + List_Read (Curve->Control_Points, 3, &v[1]); + } + else{ + List_Read (Curve->Control_Points, 0, &v[1]); + List_Read (Curve->Control_Points, 1, &v[2]); + if (!v[4]) + List_Read (Curve->Control_Points, 2, &v[3]); + else + List_Read (Curve->Control_Points, 3, &v[3]); + } + + direction (v[2], v[3], dir32); + direction (v[2], v[1], dir12); + if (v[4]) + direction (v[2], v[4], dir42); + + /* + norme(dir32); + norme(dir12); + norme(dir42); + */ + + //prodve(dir12,dir32,n); + dd[0] = dir12[0]; + dd[1] = dir12[1]; + dd[2] = dir12[2]; + qq[0] = dir32[0]; + qq[1] = dir32[1]; + qq[2] = dir32[2]; + norme (dd); + norme (qq); + prodve (dd, qq, n); + if (fabs (n[0]) < 1.e-5 && fabs (n[1]) < 1.e-5 && fabs (n[2]) < 1.e-5){ + n[0] = Curve->Circle.n[0]; + n[1] = Curve->Circle.n[1]; + n[2] = Curve->Circle.n[2]; + } + + /* BOF BOF BOF */ + prodve (n, dir12, m); + + v1.Pos.X = dir12[0]; + v1.Pos.Y = dir12[1]; + v1.Pos.Z = dir12[2]; + v3.Pos.X = dir32[0]; + v3.Pos.Y = dir32[1]; + v3.Pos.Z = dir32[2]; + if (v[4]){ + v4.Pos.X = dir42[0]; + v4.Pos.Y = dir42[1]; + v4.Pos.Z = dir42[2]; + } + norme (dir12); + norme (n); + norme (m); + + mat[2][0] = Curve->Circle.invmat[0][2] = n[0]; + mat[2][1] = Curve->Circle.invmat[1][2] = n[1]; + mat[2][2] = Curve->Circle.invmat[2][2] = n[2]; + mat[1][0] = Curve->Circle.invmat[0][1] = m[0]; + mat[1][1] = Curve->Circle.invmat[1][1] = m[1]; + mat[1][2] = Curve->Circle.invmat[2][1] = m[2]; + mat[0][0] = Curve->Circle.invmat[0][0] = dir12[0]; + mat[0][1] = Curve->Circle.invmat[1][0] = dir12[1]; + mat[0][2] = Curve->Circle.invmat[2][0] = dir12[2]; + + if(CTX.geom.old_circle){ + if(n[0] == 0.0 && n[1] == 0.0){ + mat[2][0] = Curve->Circle.invmat[0][2] = 0; + mat[2][1] = Curve->Circle.invmat[1][2] = 0; + mat[2][2] = Curve->Circle.invmat[2][2] = 1; + mat[1][0] = Curve->Circle.invmat[0][1] = 0; + mat[1][1] = Curve->Circle.invmat[1][1] = 1; + mat[1][2] = Curve->Circle.invmat[2][1] = 0; + mat[0][0] = Curve->Circle.invmat[0][0] = 1; + mat[0][1] = Curve->Circle.invmat[1][0] = 0; + mat[0][2] = Curve->Circle.invmat[2][0] = 0; + } + } + + Projette (&v1, mat); + Projette (&v3, mat); + if (v[4]) + Projette (&v4, mat); + + R = sqrt (v1.Pos.X * v1.Pos.X + v1.Pos.Y * v1.Pos.Y); + R2 = sqrt (v3.Pos.X * v3.Pos.X + v3.Pos.Y * v3.Pos.Y); + A3 = myatan2 (v3.Pos.Y, v3.Pos.X); + if (v[4]) + A4 = myatan2 (v4.Pos.Y, v4.Pos.X); + else + A4 = 0.0; + A1 = myatan2 (v1.Pos.Y, v1.Pos.X); + + DP = 2 * Pi; + + A3 = angle_02pi (A3); + A1 = angle_02pi (A1); + if (v[4]) + A4 = angle_02pi (A4); + if (A1 >= A3) + A3 += DP; + if (A4 > A1) + A4 -= DP; + + if (v[4]){ + AX = (A1 - A4); + sys[0][0] = cos (AX) * cos (A4); + sys[0][1] = -sin (AX) * sin (A4); + sys[1][0] = cos (AX) * sin (A4); + sys[1][1] = sin (AX) * cos (A4); + rhs[0] = v1.Pos.X; + rhs[1] = v1.Pos.Y; + det = sys[0][0] * sys[1][1] - sys[1][0] * sys[0][1]; + if (det < 1.e-12){ + AX = (A3 - A4); + sys[0][0] = cos (AX) * cos (A4); + sys[0][1] = -sin (AX) * sin (A4); + sys[1][0] = cos (AX) * sin (A4); + sys[1][1] = sin (AX) * cos (A4); + rhs[0] = v3.Pos.X; + rhs[1] = v3.Pos.Y; + det = sys[0][0] * sys[1][1] - sys[1][0] * sys[0][1]; + } + if (det < 1.e-12){ + f1 = DMAX (R, R2); + f2 = DMIN (R, R2); + } + else{ + sys2x2 (sys, rhs, sol); + f1 = sol[0]; + f2 = sol[1]; + } + } + else{ + f1 = f2 = R; + } + + Curve->Circle.t1 = A1; + Curve->Circle.t2 = A3; + Curve->Circle.f1 = f1; + Curve->Circle.f2 = f2; + Curve->Circle.incl = A4; + + for (i = 0; i < 4; i++) + Curve->Circle.v[i] = v[i]; + + /* + if (!c->Circle.done){ + float proj[4][4]; + for (i = 0; i < 4; i++){ + for (int j = 0; j < 4; j++){ + if (i != 3 && j != 3) + proj[i][j] = Curve->Circle.f1 * Curve->Circle.invmat[i][j]; + else + proj[i][j] = 0.0; + } + } + proj[0][3] = Curve->Circle.v[2]->Pos.X; + proj[1][3] = Curve->Circle.v[2]->Pos.Y; + proj[2][3] = Curve->Circle.v[2]->Pos.Z; + proj[3][3] = 1.0; + c->Circle.done = 1; + } + */ + // Un cercle a au moins 16 pts par pi radiants + + // c->beg->lc = DMIN (R*Pi/(fabs(c->Circle.t1-c->Circle.t2)*CIRC_GRAN),c->beg->lc); + // c->end->lc = DMIN (R*Pi/(fabs(c->Circle.t1-c->Circle.t2)*CIRC_GRAN),c->end->lc); + + } + // MEMORY LEAK (JF) + if (c->cp) Free (c->cp); + c->cp = (float *) Malloc (4 * List_Nbr (c->Control_Points) * sizeof (float)); + for (i = 0; i < List_Nbr (c->Control_Points); i++){ + List_Read (c->Control_Points, i, &v[0]); + c->cp[4 * i] = v[0]->Pos.X; + c->cp[4 * i + 1] = v[0]->Pos.Y; + c->cp[4 * i + 2] = v[0]->Pos.Z; + c->cp[4 * i + 3] = v[0]->w; + } + +} + +void End_Surface (Surface * s){ + int i; + Vertex *v; + + if (!s->Control_Points || !List_Nbr(s->Control_Points)) + return; + + s->cp = (float *) Malloc (4 * List_Nbr (s->Control_Points) * sizeof (float)); + for (i = 0; i < List_Nbr (s->Control_Points); i++){ + List_Read (s->Control_Points, i, &v); + s->cp[4 * i] = v->Pos.X; + s->cp[4 * i + 1] = v->Pos.Y; + s->cp[4 * i + 2] = v->Pos.Z; + s->cp[4 * i + 3] = v->w; + } + +} + + + +Curve *Create_Curve (int Num, int Typ, int Order, List_T * Liste, + List_T * Knots, int p1, int p2, double u1, double u2){ + Curve *pC; + Vertex *v; + int i, j, iPnt; + double d; + double matcr[4][4] = { {-0.5, 1.5, -1.5, 0.5}, + {1.0, -2.5, 2.0, -0.5}, + {-0.5, 0.0, 0.5, 0.0}, + {0.0, 1.0, 0.0, 0.0} }; + double matbs[4][4] = { {-1.0, 3, -3, 1}, + {3, -6, 3.0, 0}, + {-3, 0.0, 3, 0.0}, + {1, 4, 1, 0.0} }; + double matbez[4][4] = { {-1.0, 3, -3, 1}, + {3, -6, 3.0, 0}, + {-3, 3.0, 0, 0.0}, + {1, 0, 0, 0.0} }; + + pC = (Curve *) Malloc (sizeof (Curve)); + pC->Dirty = 0; + pC->cp = NULL; + pC->Vertices = NULL; + pC->Extrude = NULL; + pC->Typ = Typ; + pC->Num = Num; + THEM->MaxLineNum = IMAX(THEM->MaxLineNum,Num); + pC->Simplexes = Tree_Create (sizeof (Simplex *), compareSimplex); + pC->TrsfSimplexes = List_Create (1, 10, sizeof (Simplex *)); + pC->Circle.done = 0; + pC->Method = LIBRE; + pC->degre = Order; + pC->Circle.n[0] = 1.0; + pC->Circle.n[1] = 0.0; + pC->Circle.n[2] = 0.0; + if (Typ == MSH_SEGM_SPLN){ + for (i = 0; i < 4; i++) + for (j = 0; j < 4; j++) + pC->mat[i][j] = matcr[i][j]; + } + else if (Typ == MSH_SEGM_BSPLN){ + for (i = 0; i < 4; i++) + for (j = 0; j < 4; j++) + pC->mat[i][j] = matbs[i][j] / 6.0; + } + else if (Typ == MSH_SEGM_BEZIER){ + for (i = 0; i < 4; i++) + for (j = 0; j < 4; j++) + pC->mat[i][j] = matbez[i][j]; + } + + pC->ubeg = u1; + pC->uend = u2; + + if (Knots){ + pC->k = (float *) malloc (List_Nbr (Knots) * sizeof (float)); + double kmin = .0, kmax = 1.; + List_Read (Knots, 0, &kmin); + List_Read (Knots, List_Nbr (Knots) - 1, &kmax); + pC->ubeg = kmin; + pC->uend = kmax; + for (i = 0; i < List_Nbr (Knots); i++){ + List_Read (Knots, i, &d); + pC->k[i] = (float) d; + } + } + else + pC->k = NULL; + + if (Liste){ + pC->Control_Points = List_Create (List_Nbr (Liste), 1, sizeof (Vertex *)); + for (j = 0; j < List_Nbr (Liste); j++){ + List_Read (Liste, j, &iPnt); + if ((v = FindPoint (iPnt, THEM))) + List_Add (pC->Control_Points, &v); + else + Msg(FATAL, "Unknown control point %d in Curve %d", iPnt, pC->Num); + } + } + else { + pC->Control_Points = NULL; + return pC; + } + + if (p1 < 0){ + List_Read (pC->Control_Points, 0, &pC->beg); + List_Read (pC->Control_Points, List_Nbr (pC->Control_Points) - 1, &pC->end); + } + else { + if ((v = FindPoint (p1, THEM))){ + pC->beg = v; + Msg(INFO, "Curve %d first control point %d ", pC->Num, v->Num); + } + else{ + List_Read (pC->Control_Points, 0, &pC->beg); + Msg(GERROR, "Unknown control point %d in Curve %d", p1, pC->Num); + } + if ((v = FindPoint (p2, THEM))){ + pC->end = v; + Msg(INFO, "Curve %d first control point %d ", pC->Num, v->Num); + } + else{ + List_Read (pC->Control_Points, List_Nbr (pC->Control_Points) - 1, &pC->end); + Msg(GERROR, "Unknown control point %d in Curve %d", p2, pC->Num); + } + } + + End_Curve (pC); + + return pC; +} + +void Free_Curve(void *a, void *b){ + Curve *pC = *(Curve**)a; + if(pC){ + List_Delete(pC->Vertices); + Tree_Action(pC->Simplexes, Free_Simplex); + Tree_Delete(pC->Simplexes); + List_Delete(pC->TrsfSimplexes); + Free(pC->k); + List_Delete(pC->Control_Points); + // MEMORY_LEAK (JF) + Free(pC->cp); + Free(pC); + pC = NULL; + } +} + +Surface * Create_Surface (int Num, int Typ, int Mat){ + Surface *pS; + + pS = (Surface *) Malloc (sizeof (Surface)); + pS->Dirty = 0; + pS->Num = Num; + THEM->MaxSurfaceNum = IMAX(THEM->MaxSurfaceNum,Num); + pS->Typ = Typ; + pS->Mat = Mat; + pS->Method = LIBRE; + pS->Recombine = 0; + pS->RecombineAngle = 30; + pS->Simplexes = Tree_Create (sizeof (Simplex *), compareQuality); + pS->TrsfSimplexes = List_Create (1, 10, sizeof (Simplex *)); + pS->Vertices = Tree_Create (sizeof (Vertex *), compareVertex); + pS->TrsfVertices = List_Create (1, 10, sizeof (Vertex *)); + pS->Contours = List_Create (1, 1, sizeof (List_T *)); + pS->Orientations = NULL; + pS->Support = pS; + pS->Control_Points = List_Create (1, 10, sizeof (Vertex *)); + pS->Generatrices = NULL; + pS->Edges = NULL; + pS->Extrude = NULL; + pS->STL = NULL; + return (pS); +} + +void Free_Surface(void *a, void *b){ + Surface *pS = *(Surface**)a; + if(pS){ + Tree_Action(pS->Simplexes, Free_Simplex); + Tree_Delete(pS->Simplexes); + List_Delete(pS->TrsfSimplexes); + Tree_Delete(pS->Vertices); + List_Delete(pS->TrsfVertices); + List_Delete(pS->Contours); + List_Delete(pS->Control_Points); + List_Delete(pS->Generatrices); + // MEMORY LEAK (JF) + if(pS->Edges) + { + Tree_Action(pS->Edges,Free_Edge); + Tree_Delete(pS->Edges); + } + Free(pS); + pS = NULL; + } +} + +Volume * Create_Volume (int Num, int Typ, int Mat){ + Volume *pV; + + pV = (Volume *) Malloc (sizeof (Volume)); + pV->Dirty = 0; + pV->Num = Num; + THEM->MaxVolumeNum = IMAX(THEM->MaxVolumeNum,Num); + pV->Typ = Typ; + pV->Mat = Mat; + pV->Method = LIBRE; + pV->Surfaces = List_Create (1, 2, sizeof (Surface *)); + pV->Simplexes = Tree_Create (sizeof (Simplex *), compareQuality); + pV->Vertices = Tree_Create (sizeof (Vertex *), compareVertex); + pV->Hexahedra = Tree_Create (sizeof (Hexahedron *), compareHexahedron); + pV->Prisms = Tree_Create (sizeof (Prism *), comparePrism); + pV->Pyramids = Tree_Create (sizeof (Pyramid *), comparePyramid); + pV->Simp_Surf = Tree_Create(sizeof(Simplex*),compareSimplex);// for old extrusion mesh generator + pV->Extrude = NULL; + pV->Edges = NULL; + pV->Faces = NULL; + return pV; +} + +void Free_Volume(void *a, void *b){ + + Volume *pV = *(Volume**)a; + if(pV){ + List_Delete(pV->Surfaces); //surfaces freed elsewhere + Tree_Action(pV->Simplexes, Free_Simplex); + Tree_Delete(pV->Simplexes); + Tree_Delete(pV->Simp_Surf); // for old extrusion mesh generator + Tree_Delete(pV->Vertices); //vertices freed elsewhere + Tree_Action(pV->Hexahedra, Free_Hexahedron); + Tree_Delete(pV->Hexahedra); + Tree_Action(pV->Prisms, Free_Prism); + Tree_Delete(pV->Prisms); + Tree_Action(pV->Pyramids, Free_Pyramid); + Tree_Delete(pV->Pyramids); + Tree_Action(pV->Edges,Free_Edge); + Tree_Delete(pV->Edges); + Tree_Delete(pV->Faces); + Free(pV); + pV = NULL; + } +} + +Hexahedron * Create_Hexahedron (Vertex * v1, Vertex * v2, Vertex * v3, Vertex * v4, + Vertex * v5, Vertex * v6, Vertex * v7, Vertex * v8){ + Hexahedron *h; + + h = (Hexahedron *) Malloc (sizeof (Hexahedron)); + h->iEnt = -1; + h->Num = ++THEM->MaxSimplexNum; + h->V[0] = v1; + h->V[1] = v2; + h->V[2] = v3; + h->V[3] = v4; + h->V[4] = v5; + h->V[5] = v6; + h->V[6] = v7; + h->V[7] = v8; + h->VSUP = NULL; + + return (h); +} + +void Free_Hexahedron(void *a, void *b){ + Hexahedron *pH = *(Hexahedron**)a; + if(pH){ + Free(pH); + pH = NULL; + } +} + +Prism * Create_Prism (Vertex * v1, Vertex * v2, Vertex * v3, + Vertex * v4, Vertex * v5, Vertex * v6){ + Prism *p; + + p = (Prism *) Malloc (sizeof (Prism)); + p->iEnt = -1; + p->Num = ++THEM->MaxSimplexNum; + p->V[0] = v1; + p->V[1] = v2; + p->V[2] = v3; + p->V[3] = v4; + p->V[4] = v5; + p->V[5] = v6; + p->VSUP = NULL; + + return (p); +} + +void Free_Prism(void *a, void *b){ + Prism *pP = *(Prism**)a; + if(pP){ + Free(pP); + pP = NULL; + } +} + +Pyramid * Create_Pyramid (Vertex * v1, Vertex * v2, Vertex * v3, + Vertex * v4, Vertex * v5){ + Pyramid *p; + + p = (Pyramid *) Malloc (sizeof (Pyramid)); + p->iEnt = -1; + p->Num = ++THEM->MaxSimplexNum; + p->V[0] = v1; + p->V[1] = v2; + p->V[2] = v3; + p->V[3] = v4; + p->V[4] = v5; + p->VSUP = NULL; + + return (p); +} + +void Free_Pyramid(void *a, void *b){ + Pyramid *p = *(Pyramid**)a; + if(p){ + Free(p); + p = NULL; + } +} diff --git a/Mesh/Makefile b/Mesh/Makefile index 7a839f7d8f69c1fbc921226d503e7213c3ea08b2..758a2686329bdcda90d9eafa0260ae29c388b66c 100644 --- a/Mesh/Makefile +++ b/Mesh/Makefile @@ -1,4 +1,4 @@ -# $Id: Makefile,v 1.35 2001-11-05 08:37:27 geuzaine Exp $ +# $Id: Makefile,v 1.36 2001-11-27 09:12:53 geuzaine Exp $ # # Makefile for "libMesh.a" # @@ -47,7 +47,7 @@ SRC = 1D_Mesh.cpp \ 3D_Divide.cpp \ 3D_Bricks.cpp \ MeshQuality.cpp \ - Create.cpp \ + Create_Old.cpp \ Generator.cpp \ Print_Mesh.cpp \ Read_Mesh.cpp \