|
|
8e301b6 |
diff -rupN gmsh-2.8.5-source/Mesh/meshGRegion.cpp gmsh-2.8.5-source-new/Mesh/meshGRegion.cpp
|
|
|
8e301b6 |
--- gmsh-2.8.5-source/Mesh/meshGRegion.cpp 2014-07-09 10:52:24.000000000 +0200
|
|
|
8e301b6 |
+++ gmsh-2.8.5-source-new/Mesh/meshGRegion.cpp 2014-07-23 15:58:11.811862790 +0200
|
|
|
8e301b6 |
@@ -1156,8 +1156,10 @@ bool CreateAnEmptyVolumeMesh(GRegion *gr
|
|
|
26afebd |
sprintf(opts, "-Ype%c",
|
|
|
26afebd |
(Msg::GetVerbosity() < 3) ? 'Q':
|
|
|
26afebd |
(Msg::GetVerbosity() > 6) ? 'V': '\0');
|
|
|
26afebd |
+ tetgenbehavior behaviour;
|
|
|
26afebd |
+ behaviour.parse_commandline(opts);
|
|
|
26afebd |
try{
|
|
|
26afebd |
- tetrahedralize(opts, &in, &out;;
|
|
|
26afebd |
+ tetrahedralize(&behaviour, &in, &out;;
|
|
|
26afebd |
}
|
|
|
26afebd |
catch (int error){
|
|
|
26afebd |
Msg::Error("Self intersecting surface mesh");
|
|
|
8e301b6 |
@@ -1210,6 +1212,7 @@ void MeshDelaunayVolumeTetgen(std::vecto
|
|
|
26afebd |
// this in block, so in/out are destroyed before we refine the mesh)
|
|
|
26afebd |
splitQuadRecovery sqr;
|
|
|
26afebd |
{
|
|
|
26afebd |
+ tetgenbehavior behaviour;
|
|
|
26afebd |
tetgenio in, out;
|
|
|
26afebd |
std::vector<MVertex*> numberedV;
|
|
|
26afebd |
char opts[128];
|
|
|
8e301b6 |
@@ -1237,15 +1240,19 @@ void MeshDelaunayVolumeTetgen(std::vecto
|
|
|
26afebd |
// sprintf(opts, "-q3.5Ype%c", (Msg::GetVerbosity() < 3) ? 'Q':
|
|
|
26afebd |
// (Msg::GetVerbosity() > 6) ? 'V': '\0');*/
|
|
|
26afebd |
}
|
|
|
26afebd |
+ behaviour = tetgenbehavior();
|
|
|
26afebd |
+ behaviour.parse_commandline(opts);
|
|
|
26afebd |
try{
|
|
|
26afebd |
- tetrahedralize(opts, &in, &out;;
|
|
|
26afebd |
+ tetrahedralize(&behaviour, &in, &out;;
|
|
|
26afebd |
}
|
|
|
26afebd |
catch (int error){
|
|
|
26afebd |
Msg::Error("Self intersecting surface mesh, computing intersections "
|
|
|
26afebd |
"(this could take a while)");
|
|
|
26afebd |
sprintf(opts, "dV");
|
|
|
26afebd |
try{
|
|
|
26afebd |
- tetrahedralize(opts, &in, &out;;
|
|
|
26afebd |
+ behaviour = tetgenbehavior();
|
|
|
26afebd |
+ behaviour.parse_commandline(opts);
|
|
|
26afebd |
+ tetrahedralize(&behaviour, &in, &out;;
|
|
|
26afebd |
Msg::Info("%d intersecting faces have been saved into 'intersect.pos'",
|
|
|
26afebd |
out.numberoftrifaces);
|
|
|
26afebd |
FILE *fp = Fopen("intersect.pos", "w");
|