From af74809786542699dd2574e228b23fe70db97828 Mon Sep 17 00:00:00 2001
From: Mark Olesen <Mark.Olesen@Germany>
Date: Thu, 15 Dec 2016 21:35:14 +0100
Subject: [PATCH] ENH: increase precision of points for some mesh conversion
 applications

---
 applications/utilities/mesh/conversion/gmshToFoam/gmshToFoam.C | 3 +++
 .../utilities/mesh/conversion/ideasUnvToFoam/ideasUnvToFoam.C  | 3 +++
 .../utilities/mesh/conversion/kivaToFoam/readKivaGrid.H        | 3 +++
 applications/utilities/mesh/conversion/mshToFoam/mshToFoam.C   | 3 +++
 .../mesh/conversion/netgenNeutralToFoam/netgenNeutralToFoam.C  | 3 +++
 .../utilities/mesh/conversion/tetgenToFoam/tetgenToFoam.C      | 2 ++
 .../conversion/vtkUnstructuredToFoam/vtkUnstructuredToFoam.C   | 3 +++
 7 files changed, 20 insertions(+)

diff --git a/applications/utilities/mesh/conversion/gmshToFoam/gmshToFoam.C b/applications/utilities/mesh/conversion/gmshToFoam/gmshToFoam.C
index f6c84fbb1a1..add9bf03927 100644
--- a/applications/utilities/mesh/conversion/gmshToFoam/gmshToFoam.C
+++ b/applications/utilities/mesh/conversion/gmshToFoam/gmshToFoam.C
@@ -1143,6 +1143,9 @@ int main(int argc, char *argv[])
         repatcher.changePatches(newPatchPtrList);
     }
 
+    // Set the precision of the points data to 10
+    IOstream::defaultPrecision(max(10u, IOstream::defaultPrecision()));
+
     mesh.write();
 
     Info<< "End\n" << endl;
diff --git a/applications/utilities/mesh/conversion/ideasUnvToFoam/ideasUnvToFoam.C b/applications/utilities/mesh/conversion/ideasUnvToFoam/ideasUnvToFoam.C
index e4c9fb7bf9f..9239b81a5db 100644
--- a/applications/utilities/mesh/conversion/ideasUnvToFoam/ideasUnvToFoam.C
+++ b/applications/utilities/mesh/conversion/ideasUnvToFoam/ideasUnvToFoam.C
@@ -1289,6 +1289,9 @@ int main(int argc, char *argv[])
         Info << endl;
     }
 
+    // Set the precision of the points data to 10
+    IOstream::defaultPrecision(max(10u, IOstream::defaultPrecision()));
+
     mesh.write();
 
     Info<< "End\n" << endl;
diff --git a/applications/utilities/mesh/conversion/kivaToFoam/readKivaGrid.H b/applications/utilities/mesh/conversion/kivaToFoam/readKivaGrid.H
index d291b831396..6b5fa8621c5 100644
--- a/applications/utilities/mesh/conversion/kivaToFoam/readKivaGrid.H
+++ b/applications/utilities/mesh/conversion/kivaToFoam/readKivaGrid.H
@@ -574,6 +574,9 @@ polyMesh pShapeMesh
     defaultFacesType
 );
 
+// Set the precision of the points data to 10
+IOstream::defaultPrecision(max(10u, IOstream::defaultPrecision()));
+
 Info << "Writing polyMesh" << endl;
 pShapeMesh.removeFiles();
 pShapeMesh.write();
diff --git a/applications/utilities/mesh/conversion/mshToFoam/mshToFoam.C b/applications/utilities/mesh/conversion/mshToFoam/mshToFoam.C
index 2bc7e4fd7e5..ac225fd735d 100644
--- a/applications/utilities/mesh/conversion/mshToFoam/mshToFoam.C
+++ b/applications/utilities/mesh/conversion/mshToFoam/mshToFoam.C
@@ -154,6 +154,9 @@ int main(int argc, char *argv[])
         wordList(0)
     );
 
+    // Set the precision of the points data to 10
+    IOstream::defaultPrecision(max(10u, IOstream::defaultPrecision()));
+
     Info<< "Writing mesh ..." << endl;
 
     mesh.removeFiles();
diff --git a/applications/utilities/mesh/conversion/netgenNeutralToFoam/netgenNeutralToFoam.C b/applications/utilities/mesh/conversion/netgenNeutralToFoam/netgenNeutralToFoam.C
index c7f8d86a200..bb8730370e2 100644
--- a/applications/utilities/mesh/conversion/netgenNeutralToFoam/netgenNeutralToFoam.C
+++ b/applications/utilities/mesh/conversion/netgenNeutralToFoam/netgenNeutralToFoam.C
@@ -313,6 +313,9 @@ int main(int argc, char *argv[])
         patchPhysicalTypes
     );
 
+    // Set the precision of the points data to 10
+    IOstream::defaultPrecision(max(10u, IOstream::defaultPrecision()));
+
     Info<< "Writing mesh ..." << endl;
     mesh.removeFiles();
     mesh.write();
diff --git a/applications/utilities/mesh/conversion/tetgenToFoam/tetgenToFoam.C b/applications/utilities/mesh/conversion/tetgenToFoam/tetgenToFoam.C
index b7b80d576c1..de11e14a742 100644
--- a/applications/utilities/mesh/conversion/tetgenToFoam/tetgenToFoam.C
+++ b/applications/utilities/mesh/conversion/tetgenToFoam/tetgenToFoam.C
@@ -544,6 +544,8 @@ int main(int argc, char *argv[])
         );
     }
 
+    // Set the precision of the points data to 10
+    IOstream::defaultPrecision(max(10u, IOstream::defaultPrecision()));
 
     Info<< "Writing mesh to " << runTime.constant() << endl << endl;
 
diff --git a/applications/utilities/mesh/conversion/vtkUnstructuredToFoam/vtkUnstructuredToFoam.C b/applications/utilities/mesh/conversion/vtkUnstructuredToFoam/vtkUnstructuredToFoam.C
index a338b390b5f..7780397e200 100644
--- a/applications/utilities/mesh/conversion/vtkUnstructuredToFoam/vtkUnstructuredToFoam.C
+++ b/applications/utilities/mesh/conversion/vtkUnstructuredToFoam/vtkUnstructuredToFoam.C
@@ -78,6 +78,9 @@ int main(int argc, char *argv[])
         wordList(0)
     );
 
+    // Set the precision of the points data to 10
+    IOstream::defaultPrecision(max(10u, IOstream::defaultPrecision()));
+
     Info<< "Writing mesh ..." << endl;
 
     mesh.removeFiles();
-- 
GitLab