diff --git a/Common/Makefile b/Common/Makefile index 6b554d6d88bbe212584539270fd7b7b785be4a8a..3c0d2079bed1174576676a1627af820d37ce05a4 100644 --- a/Common/Makefile +++ b/Common/Makefile @@ -1,4 +1,4 @@ -# $Id: Makefile,v 1.72 2005-01-08 20:15:10 geuzaine Exp $ +# $Id: Makefile,v 1.73 2005-02-08 10:04:33 remacle Exp $ # # Copyright (C) 1997-2005 C. Geuzaine, J.-F. Remacle # @@ -70,26 +70,27 @@ Context.o: Context.cpp Gmsh.h Message.h ../DataStr/Malloc.h \ ../Common/VertexArray.h ../Common/SmoothNormals.h ../Mesh/Metric.h \ ../Mesh/Matrix.h ../Graphics/Draw.h ../Common/Views.h \ ../Common/ColorTable.h ../Common/GmshMatrix.h ../Common/AdaptiveViews.h \ - Context.h Options.h DefaultOptions.h Trackball.h + Context.h Options.h DefaultOptions.h Views.h Trackball.h AdaptiveViews.o: AdaptiveViews.cpp AdaptiveViews.h ../DataStr/List.h \ GmshMatrix.h ../Plugin/Plugin.h ../Common/Options.h ../Common/Message.h \ ../Common/Views.h ../Common/ColorTable.h ../Common/VertexArray.h \ - ../Common/SmoothNormals.h + ../Common/SmoothNormals.h ../Common/GmshMatrix.h \ + ../Common/AdaptiveViews.h Views.o: Views.cpp Gmsh.h Message.h ../DataStr/Malloc.h ../DataStr/List.h \ ../DataStr/Tree.h ../DataStr/avl.h ../DataStr/Tools.h \ ../Numeric/Numeric.h Views.h ColorTable.h VertexArray.h SmoothNormals.h \ - GmshMatrix.h AdaptiveViews.h Context.h Options.h + GmshMatrix.h AdaptiveViews.h Context.h Options.h ../MathEval/matheval.h Options.o: Options.cpp ../Plugin/PluginManager.h ../Plugin/Plugin.h \ ../Common/Options.h ../Common/Message.h ../Common/Views.h \ ../Common/ColorTable.h ../DataStr/List.h ../Common/VertexArray.h \ ../Common/SmoothNormals.h ../Common/GmshMatrix.h \ - ../Common/AdaptiveViews.h Gmsh.h ../DataStr/Malloc.h ../DataStr/Tree.h \ - ../DataStr/avl.h ../DataStr/Tools.h GmshUI.h ../Geo/Geo.h \ - ../Mesh/Mesh.h ../Mesh/Vertex.h ../Mesh/Element.h ../Mesh/Simplex.h \ - ../Mesh/Face.h ../Mesh/Edge.h ../Geo/ExtrudeParams.h \ + ../Common/AdaptiveViews.h Gmsh.h Message.h ../DataStr/Malloc.h \ + ../DataStr/Tree.h ../DataStr/avl.h ../DataStr/Tools.h GmshUI.h \ + ../Geo/Geo.h ../Mesh/Mesh.h ../Mesh/Vertex.h ../Mesh/Element.h \ + ../Mesh/Simplex.h ../Mesh/Face.h ../Mesh/Edge.h ../Geo/ExtrudeParams.h \ ../Mesh/DiscreteSurface.h ../Mesh/Metric.h ../Mesh/Matrix.h \ - ../Graphics/Draw.h Context.h ../Fltk/Solvers.h ../Fltk/GUI.h \ - ../Fltk/Opengl_Window.h ../Fltk/Colorbar_Window.h + ../Graphics/Draw.h Context.h Options.h ../Fltk/Solvers.h ../Fltk/GUI.h \ + ../Fltk/Opengl_Window.h ../Fltk/Colorbar_Window.h ../Common/GmshUI.h CommandLine.o: CommandLine.cpp Gmsh.h Message.h ../DataStr/Malloc.h \ ../DataStr/List.h ../DataStr/Tree.h ../DataStr/avl.h ../DataStr/Tools.h \ GmshUI.h GmshVersion.h CommandLine.h ../Numeric/Numeric.h Context.h \ @@ -97,8 +98,8 @@ CommandLine.o: CommandLine.cpp Gmsh.h Message.h ../DataStr/Malloc.h \ ../Mesh/Element.h ../Mesh/Simplex.h ../Mesh/Face.h ../Mesh/Edge.h \ ../Geo/ExtrudeParams.h ../Mesh/DiscreteSurface.h \ ../Common/VertexArray.h ../Common/SmoothNormals.h ../Mesh/Metric.h \ - ../Mesh/Matrix.h Views.h ColorTable.h GmshMatrix.h AdaptiveViews.h \ - ../Parser/OpenFile.h ../Parser/Parser.h + ../Mesh/Matrix.h Views.h ColorTable.h VertexArray.h SmoothNormals.h \ + GmshMatrix.h AdaptiveViews.h ../Parser/OpenFile.h ../Parser/Parser.h Timer.o: Timer.cpp ColorTable.o: ColorTable.cpp Gmsh.h Message.h ../DataStr/Malloc.h \ ../DataStr/List.h ../DataStr/Tree.h ../DataStr/avl.h ../DataStr/Tools.h \ diff --git a/Geo/Makefile b/Geo/Makefile index bfd03c87e8315b9c8a4ea256eb923a5fff588e38..6690b795b1cbcb97c97224f9dbe0726b6a326470 100644 --- a/Geo/Makefile +++ b/Geo/Makefile @@ -1,4 +1,4 @@ -# $Id: Makefile,v 1.58 2005-01-08 20:15:12 geuzaine Exp $ +# $Id: Makefile,v 1.59 2005-02-08 10:04:33 remacle Exp $ # # Copyright (C) 1997-2005 C. Geuzaine, J.-F. Remacle # @@ -65,7 +65,7 @@ CAD.o: CAD.cpp ../Common/Gmsh.h ../Common/Message.h ../DataStr/Malloc.h \ ../Geo/ExtrudeParams.h ../Mesh/DiscreteSurface.h \ ../Common/VertexArray.h ../Common/SmoothNormals.h ../Mesh/Metric.h \ ../Mesh/Matrix.h ../Mesh/Interpolation.h ../Mesh/Create.h CAD.h \ - ../Common/Visibility.h ../Common/Context.h + ExtrudeParams.h ../Common/Visibility.h ../Common/Context.h MinMax.o: MinMax.cpp ../Common/Gmsh.h ../Common/Message.h \ ../DataStr/Malloc.h ../DataStr/List.h ../DataStr/Tree.h \ ../DataStr/avl.h ../DataStr/Tools.h ../Numeric/Numeric.h \ @@ -76,21 +76,21 @@ ExtrudeParams.o: ExtrudeParams.cpp ../Common/Gmsh.h ../Common/Message.h \ ../Mesh/Vertex.h ../Mesh/Element.h ../Mesh/Simplex.h ../Mesh/Face.h \ ../Mesh/Edge.h ../Geo/ExtrudeParams.h ../Mesh/DiscreteSurface.h \ ../Common/VertexArray.h ../Common/SmoothNormals.h ../Mesh/Metric.h \ - ../Mesh/Matrix.h + ../Mesh/Matrix.h ExtrudeParams.h Geo.o: Geo.cpp ../Common/Gmsh.h ../Common/Message.h ../DataStr/Malloc.h \ ../DataStr/List.h ../DataStr/Tree.h ../DataStr/avl.h ../DataStr/Tools.h \ ../Numeric/Numeric.h Geo.h CAD.h ../Mesh/Mesh.h ../Mesh/Vertex.h \ ../Mesh/Element.h ../Mesh/Simplex.h ../Mesh/Face.h ../Mesh/Edge.h \ ../Geo/ExtrudeParams.h ../Mesh/DiscreteSurface.h \ ../Common/VertexArray.h ../Common/SmoothNormals.h ../Mesh/Metric.h \ - ../Mesh/Matrix.h ../Parser/Parser.h ../Common/Context.h + ../Mesh/Matrix.h ExtrudeParams.h ../Parser/Parser.h ../Common/Context.h GeoUtils.o: GeoUtils.cpp ../Common/Gmsh.h ../Common/Message.h \ ../DataStr/Malloc.h ../DataStr/List.h ../DataStr/Tree.h \ ../DataStr/avl.h ../DataStr/Tools.h Geo.h CAD.h ../Mesh/Mesh.h \ ../Mesh/Vertex.h ../Mesh/Element.h ../Mesh/Simplex.h ../Mesh/Face.h \ ../Mesh/Edge.h ../Geo/ExtrudeParams.h ../Mesh/DiscreteSurface.h \ ../Common/VertexArray.h ../Common/SmoothNormals.h ../Mesh/Metric.h \ - ../Mesh/Matrix.h ../Numeric/Numeric.h + ../Mesh/Matrix.h ExtrudeParams.h ../Numeric/Numeric.h StepGeomDatabase.o: StepGeomDatabase.cpp ../Common/Gmsh.h \ ../Common/Message.h ../DataStr/Malloc.h ../DataStr/List.h \ ../DataStr/Tree.h ../DataStr/avl.h ../DataStr/Tools.h \ @@ -98,19 +98,20 @@ StepGeomDatabase.o: StepGeomDatabase.cpp ../Common/Gmsh.h \ ../Mesh/Element.h ../Mesh/Simplex.h ../Mesh/Face.h ../Mesh/Edge.h \ ../Geo/ExtrudeParams.h ../Mesh/DiscreteSurface.h \ ../Common/VertexArray.h ../Common/SmoothNormals.h ../Mesh/Metric.h \ - ../Mesh/Matrix.h ../Mesh/Nurbs.h CAD.h StepGeomDatabase.h \ - ../Mesh/Create.h ../Common/Context.h + ../Mesh/Matrix.h ../Mesh/Nurbs.h CAD.h ExtrudeParams.h \ + StepGeomDatabase.h ../Mesh/Create.h ../Common/Context.h ExtractContour.o: ExtractContour.cpp ../Common/Gmsh.h ../Common/Message.h \ ../DataStr/Malloc.h ../DataStr/List.h ../DataStr/Tree.h \ ../DataStr/avl.h ../DataStr/Tools.h Geo.h GeoUtils.h ../Mesh/Mesh.h \ ../Mesh/Vertex.h ../Mesh/Element.h ../Mesh/Simplex.h ../Mesh/Face.h \ ../Mesh/Edge.h ../Geo/ExtrudeParams.h ../Mesh/DiscreteSurface.h \ ../Common/VertexArray.h ../Common/SmoothNormals.h ../Mesh/Metric.h \ - ../Mesh/Matrix.h CAD.h ../Numeric/Numeric.h + ../Mesh/Matrix.h CAD.h ExtrudeParams.h ../Numeric/Numeric.h Print_Geo.o: Print_Geo.cpp ../Common/Gmsh.h ../Common/Message.h \ ../DataStr/Malloc.h ../DataStr/List.h ../DataStr/Tree.h \ ../DataStr/avl.h ../DataStr/Tools.h Geo.h ../Mesh/Mesh.h \ ../Mesh/Vertex.h ../Mesh/Element.h ../Mesh/Simplex.h ../Mesh/Face.h \ ../Mesh/Edge.h ../Geo/ExtrudeParams.h ../Mesh/DiscreteSurface.h \ ../Common/VertexArray.h ../Common/SmoothNormals.h ../Mesh/Metric.h \ - ../Mesh/Matrix.h CAD.h ../Numeric/Numeric.h ../Common/Context.h + ../Mesh/Matrix.h CAD.h ExtrudeParams.h ../Numeric/Numeric.h \ + ../Common/Context.h diff --git a/Mesh/Makefile b/Mesh/Makefile index 504bb6318502e6bac7c7fc55a30763db69e6b15d..85635a25741ec5f61e92c66c78f24b4115d67957 100644 --- a/Mesh/Makefile +++ b/Mesh/Makefile @@ -1,4 +1,4 @@ -# $Id: Makefile,v 1.77 2005-01-08 20:15:12 geuzaine Exp $ +# $Id: Makefile,v 1.78 2005-02-08 10:04:33 remacle Exp $ # # Copyright (C) 1997-2005 C. Geuzaine, J.-F. Remacle # @@ -113,8 +113,8 @@ depend: ../Geo/CAD.h ../Mesh/Mesh.h ../Mesh/Vertex.h ../Mesh/Element.h \ ../Mesh/Simplex.h ../Mesh/Face.h ../Mesh/Edge.h ../Geo/ExtrudeParams.h \ ../Mesh/DiscreteSurface.h ../Common/VertexArray.h \ - ../Common/SmoothNormals.h ../Mesh/Metric.h ../Mesh/Matrix.h Utils.h \ - Create.h 2D_Mesh.h ../Common/Context.h Interpolation.h + ../Common/SmoothNormals.h ../Mesh/Metric.h ../Mesh/Matrix.h Mesh.h \ + Utils.h Vertex.h Create.h 2D_Mesh.h ../Common/Context.h Interpolation.h 2D_Transfinite.o: 2D_Transfinite.cpp ../Common/Gmsh.h ../Common/Message.h \ ../DataStr/Malloc.h ../DataStr/List.h ../DataStr/Tree.h \ ../DataStr/avl.h ../DataStr/Tools.h ../Geo/Geo.h Mesh.h Vertex.h \ @@ -127,7 +127,7 @@ depend: ../Geo/CAD.h ../Mesh/Mesh.h ../Mesh/Vertex.h ../Mesh/Element.h \ ../Mesh/Simplex.h ../Mesh/Face.h ../Mesh/Edge.h ../Geo/ExtrudeParams.h \ ../Mesh/DiscreteSurface.h ../Common/VertexArray.h \ - ../Common/SmoothNormals.h ../Mesh/Metric.h ../Mesh/Matrix.h + ../Common/SmoothNormals.h ../Mesh/Metric.h ../Mesh/Matrix.h Mesh.h 2D_BGMesh.o: 2D_BGMesh.cpp ../Common/Gmsh.h ../Common/Message.h \ ../DataStr/Malloc.h ../DataStr/List.h ../DataStr/Tree.h \ ../DataStr/avl.h ../DataStr/Tools.h ../Numeric/Numeric.h Mesh.h \ @@ -195,21 +195,22 @@ depend: ../Mesh/Simplex.h ../Mesh/Face.h ../Mesh/Edge.h ../Geo/ExtrudeParams.h \ ../Mesh/DiscreteSurface.h ../Common/VertexArray.h \ ../Common/SmoothNormals.h ../Mesh/Metric.h ../Mesh/Matrix.h \ - Interpolation.h 2D_Mesh.h Create.h ../Common/Context.h + Interpolation.h Vertex.h Mesh.h 2D_Mesh.h Create.h ../Common/Context.h 2D_Mesh_Aniso.o: 2D_Mesh_Aniso.cpp ../Common/Gmsh.h ../Common/Message.h \ ../DataStr/Malloc.h ../DataStr/List.h ../DataStr/Tree.h \ ../DataStr/avl.h ../DataStr/Tools.h ../Numeric/Numeric.h ../Geo/Geo.h \ ../Geo/CAD.h ../Mesh/Mesh.h ../Mesh/Vertex.h ../Mesh/Element.h \ ../Mesh/Simplex.h ../Mesh/Face.h ../Mesh/Edge.h ../Geo/ExtrudeParams.h \ ../Mesh/DiscreteSurface.h ../Common/VertexArray.h \ - ../Common/SmoothNormals.h ../Mesh/Metric.h ../Mesh/Matrix.h \ - Interpolation.h Create.h ../Common/Context.h + ../Common/SmoothNormals.h ../Mesh/Metric.h ../Mesh/Matrix.h Mesh.h \ + Interpolation.h Vertex.h Create.h ../Common/Context.h 2D_Mesh_Triangle.o: 2D_Mesh_Triangle.cpp ../Common/Gmsh.h \ ../Common/Message.h ../DataStr/Malloc.h ../DataStr/List.h \ ../DataStr/Tree.h ../DataStr/avl.h ../DataStr/Tools.h Mesh.h Vertex.h \ Element.h Simplex.h Face.h Edge.h ../Geo/ExtrudeParams.h \ DiscreteSurface.h ../Common/VertexArray.h ../Common/SmoothNormals.h \ - Metric.h Matrix.h ../Numeric/Numeric.h ../Common/Context.h + Metric.h Matrix.h ../Numeric/Numeric.h ../Common/Context.h \ + ../Triangle/triangle.h 3D_Mesh.o: 3D_Mesh.cpp ../Common/Gmsh.h ../Common/Message.h \ ../DataStr/Malloc.h ../DataStr/List.h ../DataStr/Tree.h \ ../DataStr/avl.h ../DataStr/Tools.h ../Numeric/Numeric.h Mesh.h \ @@ -236,16 +237,16 @@ depend: ../Geo/CAD.h ../Mesh/Mesh.h ../Mesh/Vertex.h ../Mesh/Element.h \ ../Mesh/Simplex.h ../Mesh/Face.h ../Mesh/Edge.h ../Geo/ExtrudeParams.h \ ../Mesh/DiscreteSurface.h ../Common/VertexArray.h \ - ../Common/SmoothNormals.h ../Mesh/Metric.h ../Mesh/Matrix.h \ - ../Common/Context.h Create.h + ../Common/SmoothNormals.h ../Mesh/Metric.h ../Mesh/Matrix.h Mesh.h \ + ../Common/Context.h Create.h Vertex.h 3D_Extrude_Old.o: 3D_Extrude_Old.cpp ../Common/Gmsh.h ../Common/Message.h \ ../DataStr/Malloc.h ../DataStr/List.h ../DataStr/Tree.h \ ../DataStr/avl.h ../DataStr/Tools.h ../Numeric/Numeric.h ../Geo/Geo.h \ ../Geo/CAD.h ../Mesh/Mesh.h ../Mesh/Vertex.h ../Mesh/Element.h \ ../Mesh/Simplex.h ../Mesh/Face.h ../Mesh/Edge.h ../Geo/ExtrudeParams.h \ ../Mesh/DiscreteSurface.h ../Common/VertexArray.h \ - ../Common/SmoothNormals.h ../Mesh/Metric.h ../Mesh/Matrix.h \ - ../Common/Context.h Create.h + ../Common/SmoothNormals.h ../Mesh/Metric.h ../Mesh/Matrix.h Mesh.h \ + ../Common/Context.h Create.h Vertex.h 3D_Coherence.o: 3D_Coherence.cpp ../Common/Gmsh.h ../Common/Message.h \ ../DataStr/Malloc.h ../DataStr/List.h ../DataStr/Tree.h \ ../DataStr/avl.h ../DataStr/Tools.h ../Numeric/Numeric.h ../Geo/Geo.h \ @@ -269,7 +270,8 @@ depend: ../DataStr/avl.h ../DataStr/Tools.h Mesh.h Vertex.h Element.h Simplex.h \ Face.h Edge.h ../Geo/ExtrudeParams.h DiscreteSurface.h \ ../Common/VertexArray.h ../Common/SmoothNormals.h Metric.h Matrix.h \ - Create.h ../Numeric/Numeric.h ../Common/Context.h + Create.h ../Numeric/Numeric.h ../Common/Context.h \ + ../Netgen/libsrc/interface/nglib.h ../Netgen/nglib_addon.h MeshQuality.o: MeshQuality.cpp ../Common/Gmsh.h ../Common/Message.h \ ../DataStr/Malloc.h ../DataStr/List.h ../DataStr/Tree.h \ ../DataStr/avl.h ../DataStr/Tools.h ../Numeric/Numeric.h Mesh.h \ @@ -282,8 +284,8 @@ Create.o: Create.cpp ../Common/Gmsh.h ../Common/Message.h \ ../Geo/CAD.h ../Mesh/Mesh.h ../Mesh/Vertex.h ../Mesh/Element.h \ ../Mesh/Simplex.h ../Mesh/Face.h ../Mesh/Edge.h ../Geo/ExtrudeParams.h \ ../Mesh/DiscreteSurface.h ../Common/VertexArray.h \ - ../Common/SmoothNormals.h ../Mesh/Metric.h ../Mesh/Matrix.h Utils.h \ - ../Common/Context.h Create.h + ../Common/SmoothNormals.h ../Mesh/Metric.h ../Mesh/Matrix.h Mesh.h \ + Utils.h Vertex.h ../Common/Context.h Create.h Generator.o: Generator.cpp ../Common/Gmsh.h ../Common/Message.h \ ../DataStr/Malloc.h ../DataStr/List.h ../DataStr/Tree.h \ ../DataStr/avl.h ../DataStr/Tools.h ../Numeric/Numeric.h Mesh.h \ @@ -298,23 +300,24 @@ Print_Mesh.o: Print_Mesh.cpp ../Common/Gmsh.h ../Common/Message.h \ ../Geo/CAD.h ../Mesh/Mesh.h ../Mesh/Vertex.h ../Mesh/Element.h \ ../Mesh/Simplex.h ../Mesh/Face.h ../Mesh/Edge.h ../Geo/ExtrudeParams.h \ ../Mesh/DiscreteSurface.h ../Common/VertexArray.h \ - ../Common/SmoothNormals.h ../Mesh/Metric.h ../Mesh/Matrix.h Create.h \ - ../Common/Context.h + ../Common/SmoothNormals.h ../Mesh/Metric.h ../Mesh/Matrix.h Mesh.h \ + Create.h Vertex.h ../Common/Context.h Read_Mesh.o: Read_Mesh.cpp ../Common/Gmsh.h ../Common/Message.h \ ../DataStr/Malloc.h ../DataStr/List.h ../DataStr/Tree.h \ ../DataStr/avl.h ../DataStr/Tools.h ../Geo/Geo.h ../Geo/CAD.h \ ../Mesh/Mesh.h ../Mesh/Vertex.h ../Mesh/Element.h ../Mesh/Simplex.h \ ../Mesh/Face.h ../Mesh/Edge.h ../Geo/ExtrudeParams.h \ ../Mesh/DiscreteSurface.h ../Common/VertexArray.h \ - ../Common/SmoothNormals.h ../Mesh/Metric.h ../Mesh/Matrix.h 3D_Mesh.h \ - Create.h ../Geo/MinMax.h ../Common/Context.h + ../Common/SmoothNormals.h ../Mesh/Metric.h ../Mesh/Matrix.h Mesh.h \ + 3D_Mesh.h Create.h Vertex.h ../Geo/MinMax.h ../Common/Context.h DiscreteSurface.o: DiscreteSurface.cpp ../Common/Gmsh.h \ ../Common/Message.h ../DataStr/Malloc.h ../DataStr/List.h \ ../DataStr/Tree.h ../DataStr/avl.h ../DataStr/Tools.h \ ../Numeric/Numeric.h Mesh.h Vertex.h Element.h Simplex.h Face.h Edge.h \ ../Geo/ExtrudeParams.h DiscreteSurface.h ../Common/VertexArray.h \ - ../Common/SmoothNormals.h Metric.h Matrix.h ../Geo/CAD.h ../Geo/Geo.h \ - Create.h Interpolation.h ../Common/Context.h + ../Common/SmoothNormals.h Metric.h Matrix.h ../Geo/CAD.h ../Mesh/Mesh.h \ + ../Mesh/Vertex.h ../Geo/Geo.h Create.h Interpolation.h \ + ../Common/Context.h SwapEdge.o: SwapEdge.cpp ../Common/Gmsh.h ../Common/Message.h \ ../DataStr/Malloc.h ../DataStr/List.h ../DataStr/Tree.h \ ../DataStr/avl.h ../DataStr/Tools.h ../Numeric/Numeric.h Mesh.h \ @@ -327,29 +330,30 @@ Utils.o: Utils.cpp ../Common/Gmsh.h ../Common/Message.h \ ../Geo/CAD.h ../Mesh/Mesh.h ../Mesh/Vertex.h ../Mesh/Element.h \ ../Mesh/Simplex.h ../Mesh/Face.h ../Mesh/Edge.h ../Geo/ExtrudeParams.h \ ../Mesh/DiscreteSurface.h ../Common/VertexArray.h \ - ../Common/SmoothNormals.h ../Mesh/Metric.h ../Mesh/Matrix.h \ - Interpolation.h ../Common/Context.h + ../Common/SmoothNormals.h ../Mesh/Metric.h ../Mesh/Matrix.h Mesh.h \ + Interpolation.h Vertex.h ../Common/Context.h Metric.o: Metric.cpp ../Common/Gmsh.h ../Common/Message.h \ ../DataStr/Malloc.h ../DataStr/List.h ../DataStr/Tree.h \ ../DataStr/avl.h ../DataStr/Tools.h ../Numeric/Numeric.h ../Geo/Geo.h \ ../Geo/CAD.h ../Mesh/Mesh.h ../Mesh/Vertex.h ../Mesh/Element.h \ ../Mesh/Simplex.h ../Mesh/Face.h ../Mesh/Edge.h ../Geo/ExtrudeParams.h \ ../Mesh/DiscreteSurface.h ../Common/VertexArray.h \ - ../Common/SmoothNormals.h ../Mesh/Metric.h ../Mesh/Matrix.h \ - Interpolation.h + ../Common/SmoothNormals.h ../Mesh/Metric.h ../Mesh/Matrix.h Mesh.h \ + Matrix.h Interpolation.h Vertex.h Nurbs.o: Nurbs.cpp ../Common/Gmsh.h ../Common/Message.h \ ../DataStr/Malloc.h ../DataStr/List.h ../DataStr/Tree.h \ ../DataStr/avl.h ../DataStr/Tools.h Nurbs.h Vertex.h Mesh.h Element.h \ Simplex.h Face.h Edge.h ../Geo/ExtrudeParams.h DiscreteSurface.h \ ../Common/VertexArray.h ../Common/SmoothNormals.h Metric.h Matrix.h \ - ../Geo/Geo.h ../Geo/GeoUtils.h Create.h ../Geo/CAD.h + ../Geo/Geo.h ../Geo/GeoUtils.h ../Mesh/Mesh.h Create.h ../Geo/CAD.h \ + ../Mesh/Vertex.h Interpolation.o: Interpolation.cpp ../Common/Gmsh.h ../Common/Message.h \ ../DataStr/Malloc.h ../DataStr/List.h ../DataStr/Tree.h \ ../DataStr/avl.h ../DataStr/Tools.h ../Numeric/Numeric.h ../Geo/Geo.h \ Nurbs.h Vertex.h Mesh.h Element.h Simplex.h Face.h Edge.h \ ../Geo/ExtrudeParams.h DiscreteSurface.h ../Common/VertexArray.h \ - ../Common/SmoothNormals.h Metric.h Matrix.h ../Geo/CAD.h Utils.h \ - Interpolation.h + ../Common/SmoothNormals.h Metric.h Matrix.h ../Geo/CAD.h ../Mesh/Mesh.h \ + ../Mesh/Vertex.h Utils.h Interpolation.h SecondOrder.o: SecondOrder.cpp ../Common/Gmsh.h ../Common/Message.h \ ../DataStr/Malloc.h ../DataStr/List.h ../DataStr/Tree.h \ ../DataStr/avl.h ../DataStr/Tools.h ../Geo/Geo.h Mesh.h Vertex.h \ diff --git a/Plugin/StructuralSolver.cpp b/Plugin/StructuralSolver.cpp index 684a9ebba45672b59221d33434c3e6f88e995974..dc28eb7c1a6bb30a3bb258f3f1246c173ff8dda1 100644 --- a/Plugin/StructuralSolver.cpp +++ b/Plugin/StructuralSolver.cpp @@ -45,9 +45,11 @@ Structural_BeamSection:: Structural_BeamSection( const char *direct, std::string m.BGM.bgm = NULL; m.Grid.init = 0; Init_Mesh(&m); + // THEM=&m; char temp[256]; sprintf(temp, "%s/%s", direct,name.c_str()); + // printf("%s/%s\n", direct,name.c_str()); // read the section (msh format) FILE *f = fopen (temp,"r"); Read_Mesh (&m, f, temp,FORMAT_MSH); @@ -70,11 +72,13 @@ void Structural_BeamSection :: computeGeometricalProperties () {.5,1,.5}, {.5,.5,1}}; + // printf("%d surfaces\n",List_Nbr(surfaces)); for (int i=0;i<List_Nbr(surfaces);++i) { Surface *s; List_Read(surfaces,i,&s); - List_T *triangles = Tree2List(s->Simplexes); + List_T *triangles = Tree2List(s->SimplexesBase); + // printf("surface %d %d triangles\n",s->Num,List_Nbr(triangles)); for(int j=0;j<List_Nbr(triangles);++j) { Simplex *simp; @@ -82,6 +86,7 @@ void Structural_BeamSection :: computeGeometricalProperties () Vertex v = (*simp->V[0]+*simp->V[1]+*simp->V[2])*0.333333333333333333; double A = simp->surfsimpl(); area+=A; + // printf("triangle %d aire %g\n",i,A); xc += v.Pos.X*A; yc += v.Pos.Y*A; } @@ -110,7 +115,7 @@ void Structural_BeamSection :: computeGeometricalProperties () List_Delete(triangles); } List_Delete(surfaces); - printf("%s %g %g %g %g %g\n",name.c_str(),area,xc,yc,Iy,Iz); + // printf("%s %g %g %g %g %g\n",name.c_str(),area,xc,yc,Iy,Iz); } void Structural_Texture::setup () @@ -160,7 +165,9 @@ void Structural_BeamSection :: GL_DrawBeam (double pinit[3], double dir[3], con texture.setup(); } - double X[3] = {dir[0],dir[1],dir[2]}; + const double LL = sqrt(dir[0]*dir[0]+dir[1]*dir[1]+dir[2]*dir[2]); + + double X[3] = {dir[0]/LL,dir[1]/LL,dir[2]/LL}; double Z[3] = {dirz[0],dirz[1],dirz[2]}; double Y[3]; prodve(X,Z,Y); @@ -172,6 +179,9 @@ void Structural_BeamSection :: GL_DrawBeam (double pinit[3], double dir[3], con double invrot[3][3] = {{Z[0],Z[1],Z[2]}, {Y[0],Y[1],Y[2]}, {X[0],X[1],X[2]}}; + // printf("%g %g %g\n",invrot[0][0], invrot[0][1], invrot[0][2]); + // printf("%g %g %g\n",invrot[1][0], invrot[1][1], invrot[1][2]); + // printf("%g %g %g\n",invrot[2][0], invrot[2][1], invrot[2][2]); List_T *vertices = Tree2List (m.Vertices); Vertex *vert; @@ -198,8 +208,8 @@ void Structural_BeamSection :: GL_DrawBeam (double pinit[3], double dir[3], con { Surface *s; List_Read(surfaces,i,&s); - List_T *triangles = Tree2List(s->Simplexes); - // printf("%g %g %d %d\n",xc,yc,List_Nbr(vertices),List_Nbr(triangles)); + List_T *triangles = Tree2List(s->SimplexesBase); + //printf("%g %g %d %d\n",xc,yc,List_Nbr(vertices),List_Nbr(triangles)); for(int j=0;j<List_Nbr(triangles);++j) { Simplex *simp; @@ -223,7 +233,7 @@ void Structural_BeamSection :: GL_DrawBeam (double pinit[3], double dir[3], con { Curve *c; List_Read(curves,i,&c); - List_T *lines = Tree2List(c->Simplexes); + List_T *lines = Tree2List(c->SimplexesBase); // printf("%g %g %d %d\n",xc,yc,List_Nbr(vertices),List_Nbr(triangles)); for(int j=0;j<List_Nbr(lines);++j) { @@ -413,6 +423,13 @@ Structural_BeamSection * StructuralSolver :: GetBeamSection (const std::string & } return 0; } +int GetModel (const std::string & name) +{ + if (!strcmp(name.c_str(),"Beam"))return 1; + if (!strcmp(name.c_str(),"Bar"))return 2; + return 3; +} + Structural_Material StructuralSolver :: GetMaterial (const std::string & name) const { std::list<struct Structural_Material > :: const_iterator it = materials.begin(); @@ -431,6 +448,7 @@ Structural_Material StructuralSolver :: GetMaterial (const std::string & name) c #define BEAM_SECTION_ 3 #define BEAM_MATERIAL_ 4 +#define BEAM_MODEL_ 5 #define POINT_ALONG_ 0 #define POINT_ACROSS_ 1 #define POINT_AROUND_ 2 @@ -476,7 +494,7 @@ void StructuralSolver ::popupPropertiesForPhysicalEntity (int dim) Fl_Tabs *o = new Fl_Tabs(WB, WB, width - 2 * WB, height - 3 * WB - BH); // 0: { - g[0] = new Fl_Group(WB, WB + BH, width - 2 * WB, height - 3 * WB - 2 * BH, "Physical Point"); + g[0] = new Fl_Group(WB, WB + BH, width - 2 * WB, height - 3 * WB - 2 * BH, "Nodal Constraint"); static Fl_Menu_Item _type[] = { {"Displacement fixed (mm)", 0, 0, 0}, @@ -516,7 +534,14 @@ void StructuralSolver ::popupPropertiesForPhysicalEntity (int dim) } // 2: Physical Line { - g[1] = new Fl_Group(WB, WB + BH, width - 2 * WB, height - 3 * WB - 2 * BH, "Physical Line"); + g[1] = new Fl_Group(WB, WB + BH, width - 2 * WB, height - 3 * WB - 2 * BH, "Beam"); + + static Fl_Menu_Item _model[] = { + {"Beam", 0, 0, 0}, + {"Bar", 0, 0, 0}, + {0} + }; + { _choice[BEAM_SECTION_] = new Fl_Choice(2 * WB, 2 * WB + 1 * BH, IW, BH, "Beam Section"); std::list<struct Structural_BeamSection* > :: iterator it = beam_sections.begin(); @@ -538,37 +563,45 @@ void StructuralSolver ::popupPropertiesForPhysicalEntity (int dim) _choice[BEAM_MATERIAL_]->align(FL_ALIGN_RIGHT); } - _value[6] = new Fl_Value_Input(2 * WB, 2 * WB + 3 * BH, IW/2, BH, ""); + { + _choice[BEAM_MODEL_] = new Fl_Choice(2 * WB, 2 * WB + 3 * BH, IW, BH, "Kinematic Model"); + _choice[BEAM_MODEL_]->menu(_model); + _choice[BEAM_MODEL_]->align(FL_ALIGN_RIGHT); + } + + _value[6] = new Fl_Value_Input(2 * WB, 2 * WB + 4 * BH, IW/2, BH, ""); _value[6]->value(0.0); _value[6]->align(FL_ALIGN_RIGHT); - _value[7] = new Fl_Value_Input(2 * WB+IW/2, 2 * WB + 3 * BH, IW/2, BH, "X-Load"); + _value[7] = new Fl_Value_Input(2 * WB+IW/2, 2 * WB + 4 * BH, IW/2, BH, "X-Load"); _value[7]->value(0.0); _value[7]->align(FL_ALIGN_RIGHT); - _value[8] = new Fl_Value_Input(2 * WB, 2 * WB + 4 * BH, IW/2, BH, ""); + _value[8] = new Fl_Value_Input(2 * WB, 2 * WB + 5 * BH, IW/2, BH, ""); _value[8]->value(0.0); _value[8]->align(FL_ALIGN_RIGHT); - _value[9] = new Fl_Value_Input(2 * WB+IW/2, 2 * WB + 4 * BH, IW/2, BH, "Y-Load"); + _value[9] = new Fl_Value_Input(2 * WB+IW/2, 2 * WB + 5 * BH, IW/2, BH, "Y-Load"); _value[9]->value(0.0); _value[9]->align(FL_ALIGN_RIGHT); - _value[10] = new Fl_Value_Input(2 * WB, 2 * WB + 5 * BH, IW/2, BH, ""); + _value[10] = new Fl_Value_Input(2 * WB, 2 * WB + 6 * BH, IW/2, BH, ""); _value[10]->value(0.0); _value[10]->align(FL_ALIGN_RIGHT); - _value[11] = new Fl_Value_Input(2 * WB+IW/2, 2 * WB + 5 * BH, IW/2, BH, "Z-Load"); + _value[11] = new Fl_Value_Input(2 * WB+IW/2, 2 * WB + 6 * BH, IW/2, BH, "Z-Load"); _value[11]->value(0.0); _value[11]->align(FL_ALIGN_RIGHT); - _value[12] = new Fl_Value_Input(2 * WB, 2 * WB + 6 * BH, IW/3, BH, ""); + _value[12] = new Fl_Value_Input(2 * WB, 2 * WB + 7 * BH, IW/3, BH, ""); _value[12]->value(0.0); _value[12]->align(FL_ALIGN_RIGHT); - _value[13] = new Fl_Value_Input(2 * WB+IW/3, 2 * WB + 6 * BH, IW/3, BH, ""); + _value[13] = new Fl_Value_Input(2 * WB+IW/3, 2 * WB + 7* BH, IW/3, BH, ""); _value[13]->value(0.0); _value[13]->align(FL_ALIGN_RIGHT); - _value[14] = new Fl_Value_Input(2 * WB+2*IW/3, 2 * WB + 6 * BH, IW/3, BH, "Y-Direction"); + _value[14] = new Fl_Value_Input(2 * WB+2*IW/3, 2 * WB + 7 * BH, IW/3, BH, "Y-Direction"); _value[14]->value(1.0); _value[14]->align(FL_ALIGN_RIGHT); g[1]->end(); } + + o->end(); { @@ -588,10 +621,24 @@ void StructuralSolver :: addPhysicalLine (int id) PhysicalLineInfo info; info.section = std::string(_choice[BEAM_SECTION_] ->mvalue()->text); info.material= std::string(_choice[BEAM_MATERIAL_]->mvalue()->text); + info.model= std::string(_choice[BEAM_MODEL_]->mvalue()->text); info.dirz[0] = _value[12]->value(); info.dirz[1] = _value[13]->value(); info.dirz[2] = _value[14]->value(); + info.fx1 = _value[6]->value(); + info.fx2 = _value[7]->value(); + info.fy1 = _value[8]->value(); + info.fy2 = _value[8]->value(); + info.fz1 = _value[10]->value(); + info.fz2 = _value[11]->value(); lines[id] = info; + + double f1 = sqrt (info.fx1*info.fx1+info.fy1*info.fy1+info.fz1*info.fz1); + double f2 = sqrt (info.fx2*info.fx2+info.fy2*info.fy2+info.fz2*info.fz2); + + MAX_FORCE = (MAX_FORCE>f1)?MAX_FORCE:f1; + MAX_FORCE = (MAX_FORCE>f2)?MAX_FORCE:f2; + #endif } @@ -648,8 +695,8 @@ void StructuralSolver :: writeSolverFile ( const char *geom_file ) const int id = (*it).first; if (getPhysical ( id , 1 )) { - fprintf(f,"BEAM PHYSICAL %d SECTION %s MATERIAL %s LOADS %g %g %g %g %g %g %g %g %g \n", - id,i.section.c_str(),i.material.c_str(),i.fx1,i.fy1,i.fx2,i.fy2,i.fz1,i.fz2,i.dirz[0],i.dirz[1],i.dirz[2]); + fprintf(f,"BEAM PHYSICAL %d SECTION %s MATERIAL %s MODEL %s LOADS %g %g %g %g %g %g %g %g %g \n", + id,i.section.c_str(),i.material.c_str(),i.model.c_str(),i.fx1,i.fy1,i.fx2,i.fy2,i.fz1,i.fz2,i.dirz[0],i.dirz[1],i.dirz[2]); } } } @@ -680,8 +727,10 @@ void StructuralSolver :: writeSolverFile ( const char *geom_file ) const { Structural_BeamSection* bs = GetBeamSection (i.section); Structural_Material mt = GetMaterial (i.material); - fprintf(f,"111 %d %g %g %g %g %g %g %g %g %g %g %g %g %g %g %g %g\n", + int model = GetModel (i.model); + fprintf(f,"111 %d %d %g %g %g %g %g %g %g %g %g %g %g %g %g %g %g %g\n", id, // physical id + model, // model bs->area, bs->Iy, bs->Iz, bs->J,// section info mt.par[0],mt.par[1],mt.par[2],// material info i.fx1,i.fy1,i.fx2,i.fy2,i.fz1,i.fz2,// lineic loads @@ -707,7 +756,7 @@ void StructuralSolver :: writeSolverFile ( const char *geom_file ) const void StructuralSolver :: readSolverFile ( const char *geom_file ) { - char name[256],line[256],a1[24],a2[24],a3[24],a4[240],a5[24],a6[240],a7[24]; + char name[256],line[256],a1[24],a2[24],a3[24],a4[240],a5[24],a6[240],a7[24],a8[24],a9[24]; sprintf(name,"%s.str",geom_file); FILE *f = fopen(name,"r"); if (!f)return; @@ -720,11 +769,19 @@ void StructuralSolver :: readSolverFile ( const char *geom_file ) { int id; PhysicalLineInfo info; - sscanf(line,"%s %s %d %s %s %s %s %s %lf %lf %lf %lf %lf %lf %lf %lf %lf \n", - a1,a2,&id,a3,a4,a5,a6,a7,&info.fx1,&info.fy1,&info.fx2,&info.fy2,&info.fz1,&info.fz2,&info.dirz[0],&info.dirz[1],&info.dirz[2]); + sscanf(line,"%s %s %d %s %s %s %s %s %s %s %lf %lf %lf %lf %lf %lf %lf %lf %lf \n", + a1,a2,&id,a3,a4,a5,a6,a7,a8,a9,&info.fx1,&info.fy1,&info.fx2,&info.fy2,&info.fz1,&info.fz2,&info.dirz[0],&info.dirz[1],&info.dirz[2]); + info.model = std::string(a8); info.material = std::string(a6); info.section = std::string(a4); - lines[id] = info; + lines[id] = info; + + double f1 = sqrt (info.fx1*info.fx1+info.fy1*info.fy1+info.fz1*info.fz1); + double f2 = sqrt (info.fx2*info.fx2+info.fy2*info.fy2+info.fz2*info.fz2); + + MAX_FORCE = (MAX_FORCE>f1)?MAX_FORCE:f1; + MAX_FORCE = (MAX_FORCE>f2)?MAX_FORCE:f2; + } if (!strcmp(name,"NODE")) { @@ -743,7 +800,7 @@ void StructuralSolver :: readSolverFile ( const char *geom_file ) } if (feof(f) )break; } - printf("max force = %g\n",MAX_FORCE); + // printf("max force = %g\n",MAX_FORCE); fclose(f); } @@ -968,24 +1025,67 @@ bool StructuralSolver :: GL_enhancePoint ( Vertex *v) bool StructuralSolver :: GL_enhanceLine ( int CurveId, Vertex *v1, Vertex *v2) { #ifdef HAVE_FLTK - // return true; PhysicalGroup *p; + // printf("%d physical groups \n",List_Nbr(THEM->PhysicalGroups)); for(int i = 0; i < List_Nbr(THEM->PhysicalGroups); i++) { List_Read(THEM->PhysicalGroups, i, &p); if(p->Typ == MSH_PHYSICAL_LINE) { + // printf("physical line found ... curve Id is %d\n",CurveId); if(List_Search(p->Entities, &CurveId, fcmp_absint)) { std::map<int,struct PhysicalLineInfo>::const_iterator it = lines.find(p->Num); + // printf("curve found in physical line %d \n",p->Num); if (it !=lines.end()) { double pinit [3] = {v1->Pos.X,v1->Pos.Y,v1->Pos.Z}; double dir [3] = {v2->Pos.X-v1->Pos.X,v2->Pos.Y-v1->Pos.Y,v2->Pos.Z-v1->Pos.Z}; Structural_BeamSection *section = GetBeamSection (it->second.section); - // printf ("%g,%g,%g\n",it->second.dirz[0],it->second.dirz[1],it->second.dirz[2]); + const int nbArrow = 10; + const double kk = (CTX.max[0]-CTX.min[0])*.1 / (MAX_FORCE); + glColor4ubv((GLubyte *) & CTX.color.text); + double X1,Y1,Z1,X2,Y2,Z2; + for (int iArrow = 0 ; iArrow < nbArrow ; iArrow++) + { + + const double xi = (double)iArrow/(double)(nbArrow-1); + const double X = v1->Pos.X + xi * ( v2->Pos.X - v1->Pos.X ); + const double Y = v1->Pos.Y + xi * ( v2->Pos.Y - v1->Pos.Y ); + const double Z = v1->Pos.Z + xi * ( v2->Pos.Z - v1->Pos.Z ); + double dv[3] = + { + it->second.fx1 + xi* (it->second.fx2 - it->second.fx1), + it->second.fy1 + xi* (it->second.fy2 - it->second.fy1), + it->second.fz1 + xi* (it->second.fz2 - it->second.fz1) + }; + Draw_Vector (CTX.vector_type, 0, CTX.arrow_rel_head_radius, + CTX.arrow_rel_stem_length, 0.5*CTX.arrow_rel_stem_radius, + X-dv[0]*kk, Y-dv[1]*kk, Z-dv[2]*kk, + dv[0]*kk, dv[1]*kk, dv[2]*kk, CTX.geom.light); + + if (iArrow==0) + { + X1 = X-dv[0]*kk; + Y1 = Y-dv[1]*kk; + Z1 = Z-dv[2]*kk; + } + if (iArrow==nbArrow-1) + { + X2 = X-dv[0]*kk; + Y2 = Y-dv[1]*kk; + Z2 = Z-dv[2]*kk; + } + } + + glBegin(GL_LINES); + glVertex3d ( X1,Y1,Z1); + glVertex3d ( X2,Y2,Z2); + glEnd (); + if (section) { + // printf("section found\n"); section -> GL_DrawBeam (pinit,dir,it->second.dirz,textures[it->second.material]); return true; } diff --git a/Plugin/StructuralSolver.h b/Plugin/StructuralSolver.h index a78ef1c2033f581b84ae85720a3b251a9161b610..e947fac4a9b3287ba879732882d67f24cb8bdc92 100644 --- a/Plugin/StructuralSolver.h +++ b/Plugin/StructuralSolver.h @@ -81,7 +81,7 @@ struct PhysicalPointInfo struct PhysicalLineInfo { PhysicalLineInfo() : fx1(0),fx2(0),fy1(0),fy2(0),fz1(0),fz2(0){dirz[0]=0;dirz[1]=0;dirz[2]=1;} - std::string material, section; + std::string material, section, model; double fx1,fx2,fy1,fy2,fz1,fz2; double dirz[3]; };