diff --git a/Common/Context.h b/Common/Context.h index e9121396c3ead20d5a6057fc4162cfd22a45ba16..fe4f8d27eb70850ade6c7871ab9c1e3506a7cb77 100644 --- a/Common/Context.h +++ b/Common/Context.h @@ -260,6 +260,7 @@ class CTX { int draw, link, horizontalScales; int smooth, animCycle, animStep, combineTime, combineRemoveOrig; int fileFormat, plugins, forceNodeData, forceElementData; + int saveMesh, saveInterpolationMatrices; double animDelay; std::string doubleClickedGraphPointCommand; double doubleClickedGraphPointX, doubleClickedGraphPointY; diff --git a/Common/DefaultOptions.h b/Common/DefaultOptions.h index ffe67a003ff4b06ed14ef47627538b7fd9ae7b29..be289da21f95d4e335dc60abc53f811a23d624f8 100644 --- a/Common/DefaultOptions.h +++ b/Common/DefaultOptions.h @@ -1400,6 +1400,10 @@ StringXNumber PostProcessingOptions_Number[] = { { F|O, "Plugins" , opt_post_plugins , 1. , "Enable default post-processing plugins?" }, + { F|O, "SaveInterpolationMatrices" , opt_post_save_interpolation_matrices , 1. , + "Save the interpolation matrices when exporting model-based data" }, + { F|O, "SaveMesh" , opt_post_save_mesh , 1. , + "Save the mesh when exporting model-based data" }, { F|O, "Smoothing" , opt_post_smooth , 0. , "Apply (non-reversible) smoothing to post-processing view when merged" }, diff --git a/Common/Options.cpp b/Common/Options.cpp index ad0e613df34e6960c02cabb27d6c7af608f69af5..22ffa0bbc2101ad51ea59b0c868edc0bb8f06b4f 100644 --- a/Common/Options.cpp +++ b/Common/Options.cpp @@ -6862,6 +6862,20 @@ double opt_post_force_element_data(OPT_ARGS_NUM) return CTX::instance()->post.forceElementData; } +double opt_post_save_mesh(OPT_ARGS_NUM) +{ + if(action & GMSH_SET) + CTX::instance()->post.saveMesh = (int)val; + return CTX::instance()->post.saveMesh; +} + +double opt_post_save_interpolation_matrices(OPT_ARGS_NUM) +{ + if(action & GMSH_SET) + CTX::instance()->post.saveInterpolationMatrices = (int)val; + return CTX::instance()->post.saveInterpolationMatrices; +} + double opt_post_double_clicked_graph_point_x(OPT_ARGS_NUM) { if(action & GMSH_SET) diff --git a/Common/Options.h b/Common/Options.h index 12b9a3e5e2c366be1bf9cad79154e25d3234dbed..c2260bef4cef479aa3a48f094806165928b405c3 100644 --- a/Common/Options.h +++ b/Common/Options.h @@ -582,6 +582,8 @@ double opt_post_nb_views(OPT_ARGS_NUM); double opt_post_file_format(OPT_ARGS_NUM); double opt_post_force_node_data(OPT_ARGS_NUM); double opt_post_force_element_data(OPT_ARGS_NUM); +double opt_post_save_mesh(OPT_ARGS_NUM); +double opt_post_save_interpolation_matrices(OPT_ARGS_NUM); double opt_post_double_clicked_graph_point_x(OPT_ARGS_NUM); double opt_post_double_clicked_graph_point_y(OPT_ARGS_NUM); double opt_post_double_clicked_view(OPT_ARGS_NUM); diff --git a/Post/PViewIO.cpp b/Post/PViewIO.cpp index d0742019bf14a2078e163e680d73ffa9b9f56daf..dd87e7d32c5fff9558bb4a3f7b66f99203d873c6 100644 --- a/Post/PViewIO.cpp +++ b/Post/PViewIO.cpp @@ -302,8 +302,10 @@ bool PView::write(const std::string &fileName, int format, bool append) case 3: ret = _data->writeSTL(fileName); break; case 4: ret = _data->writeTXT(fileName); break; case 5: ret = _data->writeMSH(fileName, CTX::instance()->mesh.mshFileVersion, - CTX::instance()->mesh.binary, true, false, - 0, true, CTX::instance()->post.forceNodeData, + CTX::instance()->mesh.binary, + CTX::instance()->post.saveMesh, false, 0, + CTX::instance()->post.saveInterpolationMatrices, + CTX::instance()->post.forceNodeData, CTX::instance()->post.forceElementData); break; case 6: ret = _data->writeMED(fileName); break; case 7: ret = writeX3D(fileName); break; @@ -316,8 +318,10 @@ bool PView::write(const std::string &fileName, int format, bool append) ret = _data->writeSTL(fileName); else if(ext == ".msh") ret = _data->writeMSH(fileName, CTX::instance()->mesh.mshFileVersion, - CTX::instance()->mesh.binary, true, false, - 0, true, CTX::instance()->post.forceNodeData, + CTX::instance()->mesh.binary, + CTX::instance()->post.saveMesh, false, 0, + CTX::instance()->post.saveInterpolationMatrices, + CTX::instance()->post.forceNodeData, CTX::instance()->post.forceElementData); else if(ext == ".med") ret = _data->writeMED(fileName); diff --git a/doc/texinfo/opt_geometry.texi b/doc/texinfo/opt_geometry.texi index a918f85f328ab47ad3937f4386a24c2c5bbe25ee..921b20a219e21aefeee567f2bef0ef11490eec5b 100644 --- a/doc/texinfo/opt_geometry.texi +++ b/doc/texinfo/opt_geometry.texi @@ -59,11 +59,6 @@ Number of control points for splines created during extrusion@* Default value: @code{5}@* Saved in: @code{General.OptionsFileName} -@item Geometry.HideCompounds -Hide entities that make up compound entities?@* -Default value: @code{1}@* -Saved in: @code{General.OptionsFileName} - @item Geometry.HighlightOrphans Highlight orphan entities (lines connected to a single surface, etc.)?@* Default value: @code{0}@* diff --git a/doc/texinfo/opt_post.texi b/doc/texinfo/opt_post.texi index 58f754bbe9d4b5e6f6a2ca90d8977dc5a9a90927..6922e34c9fcc6e0ca5109a1699cd1873651e01d6 100644 --- a/doc/texinfo/opt_post.texi +++ b/doc/texinfo/opt_post.texi @@ -94,6 +94,16 @@ Enable default post-processing plugins?@* Default value: @code{1}@* Saved in: @code{General.OptionsFileName} +@item PostProcessing.SaveInterpolationMatrices +Save the interpolation matrices when exporting model-based data@* +Default value: @code{1}@* +Saved in: @code{General.OptionsFileName} + +@item PostProcessing.SaveMesh +Save the mesh when exporting model-based data@* +Default value: @code{1}@* +Saved in: @code{General.OptionsFileName} + @item PostProcessing.Smoothing Apply (non-reversible) smoothing to post-processing view when merged@* Default value: @code{0}@*