mirror of
https://github.com/NGSolve/netgen.git
synced 2025-04-08 22:37:28 +05:00
mesh for vis
This commit is contained in:
parent
537a10945a
commit
0f493c6c14
@ -158,9 +158,11 @@ void Ng_LoadMeshFromStream ( istream & input )
|
|||||||
{
|
{
|
||||||
mesh.reset (new Mesh());
|
mesh.reset (new Mesh());
|
||||||
mesh -> Load(input);
|
mesh -> Load(input);
|
||||||
|
/*
|
||||||
vssolution.SetMesh(mesh);
|
vssolution.SetMesh(mesh);
|
||||||
vsmesh.SetMesh(mesh);
|
vsmesh.SetMesh(mesh);
|
||||||
|
*/
|
||||||
|
SetGlobalMesh (mesh);
|
||||||
for (int i = 0; i < geometryregister.Size(); i++)
|
for (int i = 0; i < geometryregister.Size(); i++)
|
||||||
{
|
{
|
||||||
NetgenGeometry * hgeom = geometryregister[i]->LoadFromMeshFile (input);
|
NetgenGeometry * hgeom = geometryregister[i]->LoadFromMeshFile (input);
|
||||||
@ -2345,3 +2347,10 @@ void Ng_GetArgs (int & argc, char ** &argv)
|
|||||||
argc = h_argc;
|
argc = h_argc;
|
||||||
argv = h_argv;
|
argv = h_argv;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
void LinkFunction ()
|
||||||
|
{
|
||||||
|
Ng_Redraw();
|
||||||
|
}
|
||||||
|
@ -25,8 +25,9 @@ namespace netgen
|
|||||||
shared_ptr<Mesh> hmesh = netgen::mesh;
|
shared_ptr<Mesh> hmesh = netgen::mesh;
|
||||||
|
|
||||||
netgen::mesh = mesh;
|
netgen::mesh = mesh;
|
||||||
vssolution.SetMesh(mesh);
|
// vssolution.SetMesh(mesh);
|
||||||
vsmesh.SetMesh(mesh);
|
// vsmesh.SetMesh(mesh);
|
||||||
|
SetGlobalMesh (mesh);
|
||||||
|
|
||||||
return hmesh;
|
return hmesh;
|
||||||
}
|
}
|
||||||
@ -59,8 +60,9 @@ namespace netgen
|
|||||||
netgen::mesh = make_shared<Mesh>();
|
netgen::mesh = make_shared<Mesh>();
|
||||||
netgen::mesh -> Load (ist);
|
netgen::mesh -> Load (ist);
|
||||||
mesh = netgen::mesh;
|
mesh = netgen::mesh;
|
||||||
vssolution.SetMesh(mesh);
|
// vssolution.SetMesh(mesh);
|
||||||
vsmesh.SetMesh(mesh);
|
// vsmesh.SetMesh(mesh);
|
||||||
|
SetGlobalMesh (mesh);
|
||||||
}
|
}
|
||||||
|
|
||||||
void Ngx_Mesh :: SaveMesh (ostream & ost) const
|
void Ngx_Mesh :: SaveMesh (ostream & ost) const
|
||||||
|
@ -20,6 +20,8 @@ namespace netgen
|
|||||||
shared_ptr<Mesh> mesh;
|
shared_ptr<Mesh> mesh;
|
||||||
shared_ptr<NetgenGeometry> ng_geometry;
|
shared_ptr<NetgenGeometry> ng_geometry;
|
||||||
|
|
||||||
|
weak_ptr<Mesh> global_mesh;
|
||||||
|
|
||||||
// Flags parameters;
|
// Flags parameters;
|
||||||
int silentflag = 0;
|
int silentflag = 0;
|
||||||
int testmode = 0;
|
int testmode = 0;
|
||||||
|
@ -52,6 +52,14 @@ namespace netgen
|
|||||||
|
|
||||||
extern int h_argc;
|
extern int h_argc;
|
||||||
extern char ** h_argv;
|
extern char ** h_argv;
|
||||||
|
|
||||||
|
|
||||||
|
extern weak_ptr<Mesh> global_mesh;
|
||||||
|
inline void SetGlobalMesh (shared_ptr<Mesh> m)
|
||||||
|
{
|
||||||
|
cout << "set global mesh" << endl;
|
||||||
|
global_mesh = m;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
@ -154,7 +154,7 @@ void ExportNetgenMeshing()
|
|||||||
)
|
)
|
||||||
*/
|
*/
|
||||||
.def ("BoundaryLayer", FunctionPointer
|
.def ("BoundaryLayer", FunctionPointer
|
||||||
([](Mesh & self, int bc, double thickness, string material)
|
([](Mesh & self, int bc, double thickness, int volnr, string material)
|
||||||
{
|
{
|
||||||
BoundaryLayerParameters blp;
|
BoundaryLayerParameters blp;
|
||||||
|
|
||||||
@ -174,7 +174,8 @@ void ExportNetgenMeshing()
|
|||||||
maxind = max (maxind, self[ei].GetIndex());
|
maxind = max (maxind, self[ei].GetIndex());
|
||||||
cout << "maxind = " << maxind << endl;
|
cout << "maxind = " << maxind << endl;
|
||||||
self.SetMaterial (maxind+1, material.c_str());
|
self.SetMaterial (maxind+1, material.c_str());
|
||||||
blp.matnr = maxind+1;
|
blp.new_matnr = maxind+1;
|
||||||
|
blp.bulk_matnr = volnr;
|
||||||
GenerateBoundaryLayer (self, blp);
|
GenerateBoundaryLayer (self, blp);
|
||||||
}
|
}
|
||||||
))
|
))
|
||||||
|
@ -6,14 +6,20 @@ include_HEADERS = soldata.hpp
|
|||||||
AM_CPPFLAGS = $(MPI_INCLUDES) -I$(top_srcdir)/libsrc/include -DOPENGL -D$(TOGL_WINDOWINGSYSTEM) $(OCCFLAGS) $(TCL_INCLUDES)
|
AM_CPPFLAGS = $(MPI_INCLUDES) -I$(top_srcdir)/libsrc/include -DOPENGL -D$(TOGL_WINDOWINGSYSTEM) $(OCCFLAGS) $(TCL_INCLUDES)
|
||||||
METASOURCES = AUTO
|
METASOURCES = AUTO
|
||||||
|
|
||||||
if NGGUI
|
|
||||||
lib_LTLIBRARIES = libvisual.la
|
lib_LTLIBRARIES = libvisual.la
|
||||||
|
|
||||||
|
|
||||||
|
libvisual_la_SOURCES =
|
||||||
|
|
||||||
|
if NGGUI
|
||||||
libvisual_la_LIBADD = $(LIBGLU) $(TCL_LIB_SPEC)
|
libvisual_la_LIBADD = $(LIBGLU) $(TCL_LIB_SPEC)
|
||||||
|
libvisual_la_SOURCES += meshdoc.cpp mvdraw.cpp \
|
||||||
|
vsfieldlines.cpp vsmesh.cpp vssolution.cpp importsolution.cpp visualpkg.cpp
|
||||||
|
else
|
||||||
|
libvisual_la_SOURCES += visual_dummy.cpp
|
||||||
endif
|
endif
|
||||||
|
|
||||||
|
|
||||||
libvisual_la_SOURCES = meshdoc.cpp mvdraw.cpp \
|
|
||||||
vsfieldlines.cpp vsmesh.cpp vssolution.cpp importsolution.cpp visualpkg.cpp
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
@ -156,7 +156,7 @@ namespace netgen
|
|||||||
|
|
||||||
double minh, maxh; // for meshsize coloring
|
double minh, maxh; // for meshsize coloring
|
||||||
|
|
||||||
weak_ptr<Mesh> wp_mesh;
|
// weak_ptr<Mesh> wp_mesh;
|
||||||
|
|
||||||
public:
|
public:
|
||||||
VisualSceneMesh ();
|
VisualSceneMesh ();
|
||||||
@ -166,8 +166,9 @@ namespace netgen
|
|||||||
virtual void DrawScene ();
|
virtual void DrawScene ();
|
||||||
virtual void MouseDblClick (int px, int py);
|
virtual void MouseDblClick (int px, int py);
|
||||||
|
|
||||||
void SetMesh (shared_ptr<Mesh> mesh) { wp_mesh = mesh; }
|
// void SetMesh (shared_ptr<Mesh> mesh) { wp_mesh = mesh; }
|
||||||
shared_ptr<Mesh> GetMesh () { return shared_ptr<Mesh>(wp_mesh); }
|
// shared_ptr<Mesh> GetMesh () { return shared_ptr<Mesh>(wp_mesh); }
|
||||||
|
shared_ptr<Mesh> GetMesh () const { return shared_ptr<Mesh>(global_mesh); }
|
||||||
|
|
||||||
void SetMouseEventHandler (MouseEventHandler * handler)
|
void SetMouseEventHandler (MouseEventHandler * handler)
|
||||||
{ user_me_handler = handler; }
|
{ user_me_handler = handler; }
|
||||||
|
@ -303,7 +303,6 @@ namespace netgen
|
|||||||
Tcl_Interp * interp,
|
Tcl_Interp * interp,
|
||||||
int argc, tcl_const char *argv[])
|
int argc, tcl_const char *argv[])
|
||||||
{
|
{
|
||||||
auto mesh = vssolution.GetMesh();
|
|
||||||
int i;
|
int i;
|
||||||
char buf[1000];
|
char buf[1000];
|
||||||
buf[0] = 0;
|
buf[0] = 0;
|
||||||
@ -366,6 +365,7 @@ namespace netgen
|
|||||||
|
|
||||||
if (strcmp (argv[1], "getdimension") == 0)
|
if (strcmp (argv[1], "getdimension") == 0)
|
||||||
{
|
{
|
||||||
|
auto mesh = vssolution.GetMesh();
|
||||||
sprintf (buf, "%d", mesh->GetDimension());
|
sprintf (buf, "%d", mesh->GetDimension());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -442,7 +442,7 @@ namespace netgen
|
|||||||
|
|
||||||
void VisualSceneSolution :: BuildFieldLinesFromBox(Array<Point3d> & startpoints)
|
void VisualSceneSolution :: BuildFieldLinesFromBox(Array<Point3d> & startpoints)
|
||||||
{
|
{
|
||||||
shared_ptr<Mesh> mesh (wp_mesh);
|
shared_ptr<Mesh> mesh = GetMesh();
|
||||||
if (!mesh) return;
|
if (!mesh) return;
|
||||||
|
|
||||||
if(fieldlines_startarea_parameter[0] > fieldlines_startarea_parameter[3] ||
|
if(fieldlines_startarea_parameter[0] > fieldlines_startarea_parameter[3] ||
|
||||||
@ -472,7 +472,7 @@ namespace netgen
|
|||||||
|
|
||||||
void VisualSceneSolution :: BuildFieldLinesFromLine(Array<Point3d> & startpoints)
|
void VisualSceneSolution :: BuildFieldLinesFromLine(Array<Point3d> & startpoints)
|
||||||
{
|
{
|
||||||
shared_ptr<Mesh> mesh (wp_mesh);
|
shared_ptr<Mesh> mesh = GetMesh();
|
||||||
if (!mesh) return;
|
if (!mesh) return;
|
||||||
|
|
||||||
|
|
||||||
@ -491,7 +491,7 @@ namespace netgen
|
|||||||
|
|
||||||
void VisualSceneSolution :: BuildFieldLinesFromFile(Array<Point3d> & startpoints)
|
void VisualSceneSolution :: BuildFieldLinesFromFile(Array<Point3d> & startpoints)
|
||||||
{
|
{
|
||||||
shared_ptr<Mesh> mesh (wp_mesh);
|
shared_ptr<Mesh> mesh = GetMesh();
|
||||||
if (!mesh) return;
|
if (!mesh) return;
|
||||||
|
|
||||||
ifstream * infile;
|
ifstream * infile;
|
||||||
@ -573,7 +573,7 @@ namespace netgen
|
|||||||
|
|
||||||
void VisualSceneSolution :: BuildFieldLinesFromFace(Array<Point3d> & startpoints)
|
void VisualSceneSolution :: BuildFieldLinesFromFace(Array<Point3d> & startpoints)
|
||||||
{
|
{
|
||||||
shared_ptr<Mesh> mesh (wp_mesh);
|
shared_ptr<Mesh> mesh = GetMesh();
|
||||||
if (!mesh) return;
|
if (!mesh) return;
|
||||||
|
|
||||||
Array<SurfaceElementIndex> elements_2d;
|
Array<SurfaceElementIndex> elements_2d;
|
||||||
@ -660,7 +660,7 @@ namespace netgen
|
|||||||
|
|
||||||
void VisualSceneSolution :: BuildFieldLinesPlot ()
|
void VisualSceneSolution :: BuildFieldLinesPlot ()
|
||||||
{
|
{
|
||||||
shared_ptr<Mesh> mesh (wp_mesh);
|
shared_ptr<Mesh> mesh = GetMesh();
|
||||||
if (!mesh) return;
|
if (!mesh) return;
|
||||||
|
|
||||||
if (fieldlinestimestamp >= solutiontimestamp)
|
if (fieldlinestimestamp >= solutiontimestamp)
|
||||||
|
@ -75,7 +75,7 @@ namespace netgen
|
|||||||
{
|
{
|
||||||
try
|
try
|
||||||
{
|
{
|
||||||
shared_ptr<Mesh> mesh(wp_mesh);
|
shared_ptr<Mesh> mesh = GetMesh();
|
||||||
|
|
||||||
if (!mesh)
|
if (!mesh)
|
||||||
{
|
{
|
||||||
@ -91,6 +91,7 @@ namespace netgen
|
|||||||
|
|
||||||
BuildScene();
|
BuildScene();
|
||||||
|
|
||||||
|
glEnable(GL_DEPTH_TEST);
|
||||||
glClearColor(backcolor, backcolor, backcolor, 1.0);
|
glClearColor(backcolor, backcolor, backcolor, 1.0);
|
||||||
glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);
|
glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);
|
||||||
|
|
||||||
@ -321,7 +322,7 @@ namespace netgen
|
|||||||
{
|
{
|
||||||
try
|
try
|
||||||
{
|
{
|
||||||
shared_ptr<Mesh> mesh(wp_mesh);
|
shared_ptr<Mesh> mesh = GetMesh();
|
||||||
|
|
||||||
if (!mesh)
|
if (!mesh)
|
||||||
{
|
{
|
||||||
@ -911,7 +912,7 @@ namespace netgen
|
|||||||
|
|
||||||
void VisualSceneMesh :: BuildFilledList (bool names)
|
void VisualSceneMesh :: BuildFilledList (bool names)
|
||||||
{
|
{
|
||||||
shared_ptr<Mesh> mesh(wp_mesh);
|
shared_ptr<Mesh> mesh = GetMesh();
|
||||||
|
|
||||||
static int timer = NgProfiler::CreateTimer ("Mesh::BuildFilledList");
|
static int timer = NgProfiler::CreateTimer ("Mesh::BuildFilledList");
|
||||||
NgProfiler::RegionTimer reg (timer);
|
NgProfiler::RegionTimer reg (timer);
|
||||||
@ -1301,7 +1302,7 @@ namespace netgen
|
|||||||
|
|
||||||
void VisualSceneMesh :: BuildLineList()
|
void VisualSceneMesh :: BuildLineList()
|
||||||
{
|
{
|
||||||
shared_ptr<Mesh> mesh(wp_mesh);
|
shared_ptr<Mesh> mesh = GetMesh();
|
||||||
|
|
||||||
static int timer = NgProfiler::CreateTimer ("Mesh::BuildLineList");
|
static int timer = NgProfiler::CreateTimer ("Mesh::BuildLineList");
|
||||||
NgProfiler::RegionTimer reg (timer);
|
NgProfiler::RegionTimer reg (timer);
|
||||||
@ -1583,7 +1584,7 @@ namespace netgen
|
|||||||
|
|
||||||
void VisualSceneMesh :: BuildEdgeList()
|
void VisualSceneMesh :: BuildEdgeList()
|
||||||
{
|
{
|
||||||
shared_ptr<Mesh> mesh(wp_mesh);
|
shared_ptr<Mesh> mesh = GetMesh();
|
||||||
|
|
||||||
if (!lock)
|
if (!lock)
|
||||||
{
|
{
|
||||||
@ -1760,7 +1761,7 @@ namespace netgen
|
|||||||
|
|
||||||
void VisualSceneMesh :: BuildTetList()
|
void VisualSceneMesh :: BuildTetList()
|
||||||
{
|
{
|
||||||
shared_ptr<Mesh> mesh(wp_mesh);
|
shared_ptr<Mesh> mesh = GetMesh();
|
||||||
|
|
||||||
if (tettimestamp > mesh->GetTimeStamp () &&
|
if (tettimestamp > mesh->GetTimeStamp () &&
|
||||||
tettimestamp > vispar.clipping.timestamp )
|
tettimestamp > vispar.clipping.timestamp )
|
||||||
@ -2110,7 +2111,7 @@ namespace netgen
|
|||||||
|
|
||||||
void VisualSceneMesh :: BuildPrismList()
|
void VisualSceneMesh :: BuildPrismList()
|
||||||
{
|
{
|
||||||
shared_ptr<Mesh> mesh(wp_mesh);
|
shared_ptr<Mesh> mesh = GetMesh();
|
||||||
|
|
||||||
if (prismtimestamp > mesh->GetTimeStamp () &&
|
if (prismtimestamp > mesh->GetTimeStamp () &&
|
||||||
prismtimestamp > vispar.clipping.timestamp )
|
prismtimestamp > vispar.clipping.timestamp )
|
||||||
@ -2440,7 +2441,7 @@ namespace netgen
|
|||||||
|
|
||||||
void VisualSceneMesh :: BuildHexList()
|
void VisualSceneMesh :: BuildHexList()
|
||||||
{
|
{
|
||||||
shared_ptr<Mesh> mesh(wp_mesh);
|
shared_ptr<Mesh> mesh = GetMesh();
|
||||||
|
|
||||||
if (hextimestamp > mesh->GetTimeStamp () &&
|
if (hextimestamp > mesh->GetTimeStamp () &&
|
||||||
hextimestamp > vispar.clipping.timestamp )
|
hextimestamp > vispar.clipping.timestamp )
|
||||||
@ -2650,7 +2651,7 @@ namespace netgen
|
|||||||
|
|
||||||
void VisualSceneMesh :: BuildPyramidList()
|
void VisualSceneMesh :: BuildPyramidList()
|
||||||
{
|
{
|
||||||
shared_ptr<Mesh> mesh(wp_mesh);
|
shared_ptr<Mesh> mesh = GetMesh();
|
||||||
|
|
||||||
if (pyramidtimestamp > mesh->GetTimeStamp () &&
|
if (pyramidtimestamp > mesh->GetTimeStamp () &&
|
||||||
pyramidtimestamp > vispar.clipping.timestamp )
|
pyramidtimestamp > vispar.clipping.timestamp )
|
||||||
@ -3006,7 +3007,7 @@ namespace netgen
|
|||||||
|
|
||||||
void VisualSceneMesh :: BuildDomainSurfList()
|
void VisualSceneMesh :: BuildDomainSurfList()
|
||||||
{
|
{
|
||||||
shared_ptr<Mesh> mesh(wp_mesh);
|
shared_ptr<Mesh> mesh = GetMesh();
|
||||||
|
|
||||||
if (domainsurflist)
|
if (domainsurflist)
|
||||||
glDeleteLists (domainsurflist, 1);
|
glDeleteLists (domainsurflist, 1);
|
||||||
@ -3124,7 +3125,7 @@ namespace netgen
|
|||||||
|
|
||||||
void VisualSceneMesh :: MouseDblClick (int px, int py)
|
void VisualSceneMesh :: MouseDblClick (int px, int py)
|
||||||
{
|
{
|
||||||
shared_ptr<Mesh> mesh(wp_mesh);
|
shared_ptr<Mesh> mesh = GetMesh();
|
||||||
|
|
||||||
BuildFilledList (true);
|
BuildFilledList (true);
|
||||||
|
|
||||||
@ -3553,7 +3554,8 @@ void ExportMeshVis()
|
|||||||
([](shared_ptr<Mesh> mesh)
|
([](shared_ptr<Mesh> mesh)
|
||||||
{
|
{
|
||||||
auto vs = make_shared<VisualSceneMesh>();
|
auto vs = make_shared<VisualSceneMesh>();
|
||||||
vs->SetMesh(mesh);
|
// vs->SetMesh(mesh);
|
||||||
|
SetGlobalMesh (mesh);
|
||||||
return vs;
|
return vs;
|
||||||
}));
|
}));
|
||||||
|
|
||||||
|
@ -68,15 +68,16 @@ namespace netgen
|
|||||||
ClearSolutionData();
|
ClearSolutionData();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
void VisualSceneSolution :: SetMesh (shared_ptr<Mesh> amesh)
|
void VisualSceneSolution :: SetMesh (shared_ptr<Mesh> amesh)
|
||||||
{
|
{
|
||||||
wp_mesh = amesh;
|
wp_mesh = amesh;
|
||||||
}
|
}
|
||||||
|
*/
|
||||||
|
|
||||||
void VisualSceneSolution :: AddSolutionData (SolData * sd)
|
void VisualSceneSolution :: AddSolutionData (SolData * sd)
|
||||||
{
|
{
|
||||||
shared_ptr<Mesh> mesh(wp_mesh);
|
shared_ptr<Mesh> mesh = GetMesh();
|
||||||
|
|
||||||
NgLock meshlock1 (mesh->MajorMutex(), 1);
|
NgLock meshlock1 (mesh->MajorMutex(), 1);
|
||||||
int funcnr = -1;
|
int funcnr = -1;
|
||||||
@ -160,7 +161,7 @@ namespace netgen
|
|||||||
|
|
||||||
void VisualSceneSolution :: SaveSolutionData (const char * filename)
|
void VisualSceneSolution :: SaveSolutionData (const char * filename)
|
||||||
{
|
{
|
||||||
shared_ptr<Mesh> mesh(wp_mesh);
|
shared_ptr<Mesh> mesh = GetMesh();
|
||||||
|
|
||||||
PrintMessage (1, "Write solution data to file ", filename);
|
PrintMessage (1, "Write solution data to file ", filename);
|
||||||
|
|
||||||
@ -351,7 +352,7 @@ namespace netgen
|
|||||||
{
|
{
|
||||||
try
|
try
|
||||||
{
|
{
|
||||||
shared_ptr<Mesh> mesh(wp_mesh);
|
shared_ptr<Mesh> mesh = GetMesh();
|
||||||
|
|
||||||
if (!mesh)
|
if (!mesh)
|
||||||
{
|
{
|
||||||
@ -700,7 +701,7 @@ namespace netgen
|
|||||||
{
|
{
|
||||||
try
|
try
|
||||||
{
|
{
|
||||||
shared_ptr<Mesh> mesh(wp_mesh);
|
shared_ptr<Mesh> mesh = GetMesh();
|
||||||
|
|
||||||
if (!mesh)
|
if (!mesh)
|
||||||
{
|
{
|
||||||
@ -1124,7 +1125,7 @@ namespace netgen
|
|||||||
|
|
||||||
void VisualSceneSolution :: Draw1DElements ()
|
void VisualSceneSolution :: Draw1DElements ()
|
||||||
{
|
{
|
||||||
shared_ptr<Mesh> mesh(wp_mesh);
|
shared_ptr<Mesh> mesh = GetMesh();
|
||||||
|
|
||||||
if (element1dlist)
|
if (element1dlist)
|
||||||
glDeleteLists (element1dlist, 1);
|
glDeleteLists (element1dlist, 1);
|
||||||
@ -1176,7 +1177,7 @@ namespace netgen
|
|||||||
|
|
||||||
void VisualSceneSolution :: DrawSurfaceElements ()
|
void VisualSceneSolution :: DrawSurfaceElements ()
|
||||||
{
|
{
|
||||||
shared_ptr<Mesh> mesh(wp_mesh);
|
shared_ptr<Mesh> mesh = GetMesh();
|
||||||
|
|
||||||
static int timer = NgProfiler::CreateTimer ("Solution::DrawSurfaceElements");
|
static int timer = NgProfiler::CreateTimer ("Solution::DrawSurfaceElements");
|
||||||
NgProfiler::RegionTimer reg (timer);
|
NgProfiler::RegionTimer reg (timer);
|
||||||
@ -1619,7 +1620,7 @@ namespace netgen
|
|||||||
|
|
||||||
void VisualSceneSolution :: DrawSurfaceElementLines ()
|
void VisualSceneSolution :: DrawSurfaceElementLines ()
|
||||||
{
|
{
|
||||||
shared_ptr<Mesh> mesh(wp_mesh);
|
shared_ptr<Mesh> mesh = GetMesh();
|
||||||
|
|
||||||
#ifdef PARALLELGL
|
#ifdef PARALLELGL
|
||||||
if (id == 0 && ntasks > 1)
|
if (id == 0 && ntasks > 1)
|
||||||
@ -1728,7 +1729,7 @@ namespace netgen
|
|||||||
const SolData * vsol,
|
const SolData * vsol,
|
||||||
int comp)
|
int comp)
|
||||||
{
|
{
|
||||||
shared_ptr<Mesh> mesh(wp_mesh);
|
shared_ptr<Mesh> mesh = GetMesh();
|
||||||
|
|
||||||
if (!draw_isosurface) return;
|
if (!draw_isosurface) return;
|
||||||
if (!sol) return;
|
if (!sol) return;
|
||||||
@ -1979,7 +1980,7 @@ namespace netgen
|
|||||||
const Point<3> & pmin, const Point<3> & pmax,
|
const Point<3> & pmin, const Point<3> & pmax,
|
||||||
const int sei, const SolData * vsol)
|
const int sei, const SolData * vsol)
|
||||||
{
|
{
|
||||||
shared_ptr<Mesh> mesh(wp_mesh);
|
shared_ptr<Mesh> mesh = GetMesh();
|
||||||
|
|
||||||
int dir,dir1,dir2;
|
int dir,dir1,dir2;
|
||||||
double s,t;
|
double s,t;
|
||||||
@ -2091,7 +2092,7 @@ namespace netgen
|
|||||||
|
|
||||||
void VisualSceneSolution :: DrawSurfaceVectors ()
|
void VisualSceneSolution :: DrawSurfaceVectors ()
|
||||||
{
|
{
|
||||||
shared_ptr<Mesh> mesh(wp_mesh);
|
shared_ptr<Mesh> mesh = GetMesh();
|
||||||
|
|
||||||
SurfaceElementIndex sei;
|
SurfaceElementIndex sei;
|
||||||
|
|
||||||
@ -2427,7 +2428,7 @@ namespace netgen
|
|||||||
void VisualSceneSolution ::
|
void VisualSceneSolution ::
|
||||||
GetMinMax (int funcnr, int comp, double & minv, double & maxv) const
|
GetMinMax (int funcnr, int comp, double & minv, double & maxv) const
|
||||||
{
|
{
|
||||||
shared_ptr<Mesh> mesh(wp_mesh);
|
shared_ptr<Mesh> mesh = GetMesh();
|
||||||
|
|
||||||
static int timer1 = NgProfiler::CreateTimer ("getminmax, vol");
|
static int timer1 = NgProfiler::CreateTimer ("getminmax, vol");
|
||||||
static int timer2 = NgProfiler::CreateTimer ("getminmax, surf");
|
static int timer2 = NgProfiler::CreateTimer ("getminmax, surf");
|
||||||
@ -2576,7 +2577,7 @@ namespace netgen
|
|||||||
const double xref[], const double x[], const double dxdxref[],
|
const double xref[], const double x[], const double dxdxref[],
|
||||||
int comp, double & val) const
|
int comp, double & val) const
|
||||||
{
|
{
|
||||||
shared_ptr<Mesh> mesh(wp_mesh);
|
shared_ptr<Mesh> mesh = GetMesh();
|
||||||
|
|
||||||
double lam1 = xref[0];
|
double lam1 = xref[0];
|
||||||
double lam2 = xref[1];
|
double lam2 = xref[1];
|
||||||
@ -2749,7 +2750,7 @@ namespace netgen
|
|||||||
double lam1, double lam2, double lam3,
|
double lam1, double lam2, double lam3,
|
||||||
int comp, double & val) const
|
int comp, double & val) const
|
||||||
{
|
{
|
||||||
shared_ptr<Mesh> mesh(wp_mesh);
|
shared_ptr<Mesh> mesh = GetMesh();
|
||||||
|
|
||||||
val = 0;
|
val = 0;
|
||||||
bool ok = 0;
|
bool ok = 0;
|
||||||
@ -2920,7 +2921,7 @@ namespace netgen
|
|||||||
double lam1, double lam2, double lam3,
|
double lam1, double lam2, double lam3,
|
||||||
int comp, complex<double> & val) const
|
int comp, complex<double> & val) const
|
||||||
{
|
{
|
||||||
shared_ptr<Mesh> mesh(wp_mesh);
|
shared_ptr<Mesh> mesh = GetMesh();
|
||||||
|
|
||||||
val = 0.0;
|
val = 0.0;
|
||||||
bool ok = 0;
|
bool ok = 0;
|
||||||
@ -3165,7 +3166,7 @@ namespace netgen
|
|||||||
double lam1, double lam2,
|
double lam1, double lam2,
|
||||||
int comp, double & val) const
|
int comp, double & val) const
|
||||||
{
|
{
|
||||||
shared_ptr<Mesh> mesh(wp_mesh);
|
shared_ptr<Mesh> mesh = GetMesh();
|
||||||
|
|
||||||
bool ok;
|
bool ok;
|
||||||
if (comp == 0)
|
if (comp == 0)
|
||||||
@ -3399,7 +3400,7 @@ namespace netgen
|
|||||||
const double xref[], const double x[], const double dxdxref[],
|
const double xref[], const double x[], const double dxdxref[],
|
||||||
int comp, double & val) const
|
int comp, double & val) const
|
||||||
{
|
{
|
||||||
shared_ptr<Mesh> mesh(wp_mesh);
|
shared_ptr<Mesh> mesh = GetMesh();
|
||||||
|
|
||||||
double lam1 = xref[0], lam2 = xref[1];
|
double lam1 = xref[0], lam2 = xref[1];
|
||||||
|
|
||||||
@ -3648,7 +3649,7 @@ namespace netgen
|
|||||||
Vec<3> VisualSceneSolution ::
|
Vec<3> VisualSceneSolution ::
|
||||||
GetSurfDeformation (SurfaceElementIndex elnr, int facetnr, double lam1, double lam2) const
|
GetSurfDeformation (SurfaceElementIndex elnr, int facetnr, double lam1, double lam2) const
|
||||||
{
|
{
|
||||||
shared_ptr<Mesh> mesh(wp_mesh);
|
shared_ptr<Mesh> mesh = GetMesh();
|
||||||
|
|
||||||
Vec<3> def;
|
Vec<3> def;
|
||||||
if (deform && vecfunction != -1)
|
if (deform && vecfunction != -1)
|
||||||
@ -3675,7 +3676,7 @@ namespace netgen
|
|||||||
void VisualSceneSolution :: GetPointDeformation (int pnum, Point<3> & p,
|
void VisualSceneSolution :: GetPointDeformation (int pnum, Point<3> & p,
|
||||||
SurfaceElementIndex elnr) const
|
SurfaceElementIndex elnr) const
|
||||||
{
|
{
|
||||||
shared_ptr<Mesh> mesh(wp_mesh);
|
shared_ptr<Mesh> mesh = GetMesh();
|
||||||
|
|
||||||
p = mesh->Point (pnum+1);
|
p = mesh->Point (pnum+1);
|
||||||
if (deform && vecfunction != -1)
|
if (deform && vecfunction != -1)
|
||||||
@ -3715,7 +3716,7 @@ namespace netgen
|
|||||||
void VisualSceneSolution :: GetClippingPlaneTrigs (Array<ClipPlaneTrig> & trigs,
|
void VisualSceneSolution :: GetClippingPlaneTrigs (Array<ClipPlaneTrig> & trigs,
|
||||||
Array<ClipPlanePoint> & pts)
|
Array<ClipPlanePoint> & pts)
|
||||||
{
|
{
|
||||||
shared_ptr<Mesh> mesh(wp_mesh);
|
shared_ptr<Mesh> mesh = GetMesh();
|
||||||
|
|
||||||
static int timer_vals = NgProfiler::CreateTimer ("ClipPlaneTrigs - vertex values");
|
static int timer_vals = NgProfiler::CreateTimer ("ClipPlaneTrigs - vertex values");
|
||||||
static int timer1 = NgProfiler::CreateTimer ("ClipPlaneTrigs1");
|
static int timer1 = NgProfiler::CreateTimer ("ClipPlaneTrigs1");
|
||||||
@ -4058,7 +4059,7 @@ namespace netgen
|
|||||||
|
|
||||||
void VisualSceneSolution :: GetClippingPlaneGrid (Array<ClipPlanePoint> & pts)
|
void VisualSceneSolution :: GetClippingPlaneGrid (Array<ClipPlanePoint> & pts)
|
||||||
{
|
{
|
||||||
shared_ptr<Mesh> mesh(wp_mesh);
|
shared_ptr<Mesh> mesh = GetMesh();
|
||||||
|
|
||||||
Vec3d n(clipplane[0], clipplane[1], clipplane[2]);
|
Vec3d n(clipplane[0], clipplane[1], clipplane[2]);
|
||||||
|
|
||||||
@ -4116,7 +4117,7 @@ namespace netgen
|
|||||||
|
|
||||||
void VisualSceneSolution :: DrawClipPlaneTrigs ()
|
void VisualSceneSolution :: DrawClipPlaneTrigs ()
|
||||||
{
|
{
|
||||||
shared_ptr<Mesh> mesh(wp_mesh);
|
shared_ptr<Mesh> mesh = GetMesh();
|
||||||
|
|
||||||
#ifdef PARALLELGL
|
#ifdef PARALLELGL
|
||||||
|
|
||||||
|
@ -177,7 +177,7 @@ private:
|
|||||||
void BuildFieldLinesFromFace(Array<Point3d> & startpoints);
|
void BuildFieldLinesFromFace(Array<Point3d> & startpoints);
|
||||||
void BuildFieldLinesFromBox(Array<Point3d> & startpoints);
|
void BuildFieldLinesFromBox(Array<Point3d> & startpoints);
|
||||||
void BuildFieldLinesFromLine(Array<Point3d> & startpoints);
|
void BuildFieldLinesFromLine(Array<Point3d> & startpoints);
|
||||||
weak_ptr<Mesh> wp_mesh;
|
// weak_ptr<Mesh> wp_mesh;
|
||||||
public:
|
public:
|
||||||
VisualSceneSolution ();
|
VisualSceneSolution ();
|
||||||
virtual ~VisualSceneSolution ();
|
virtual ~VisualSceneSolution ();
|
||||||
@ -186,8 +186,9 @@ public:
|
|||||||
virtual void DrawScene ();
|
virtual void DrawScene ();
|
||||||
virtual void MouseDblClick (int px, int py);
|
virtual void MouseDblClick (int px, int py);
|
||||||
|
|
||||||
void SetMesh (shared_ptr<Mesh> amesh);
|
// void SetMesh (shared_ptr<Mesh> amesh);
|
||||||
shared_ptr<Mesh> GetMesh () { return shared_ptr<Mesh>(wp_mesh); }
|
// shared_ptr<Mesh> GetMesh () { return shared_ptr<Mesh>(wp_mesh); }
|
||||||
|
shared_ptr<Mesh> GetMesh () const { return shared_ptr<Mesh>(global_mesh); }
|
||||||
|
|
||||||
void BuildFieldLinesPlot ();
|
void BuildFieldLinesPlot ();
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user