From 885d29542056bd25f6797c5b9d73fb197c20914c Mon Sep 17 00:00:00 2001 From: Christophe Geuzaine <cgeuzaine@ulg.ac.be> Date: Mon, 30 May 2011 06:35:22 +0000 Subject: [PATCH] allow saving brep/step files --- Fltk/menuWindow.cpp | 8 ++++++++ Geo/GModelIO_OCC.cpp | 4 ++-- Graphics/drawMesh.cpp | 2 +- 3 files changed, 11 insertions(+), 3 deletions(-) diff --git a/Fltk/menuWindow.cpp b/Fltk/menuWindow.cpp index cb63cb5f24..5bb8e21520 100644 --- a/Fltk/menuWindow.cpp +++ b/Fltk/menuWindow.cpp @@ -235,6 +235,8 @@ static int _save_msh(const char *name){ return mshFileDialog(name); } static int _save_pos(const char *name){ return posFileDialog(name); } static int _save_options(const char *name){ return optionsFileDialog(name); } static int _save_geo(const char *name){ return geoFileDialog(name); } +static int _save_brep(const char *name){ CreateOutputFile(name, FORMAT_BREP); return 1; } +static int _save_step(const char *name){ CreateOutputFile(name, FORMAT_STEP); return 1; } static int _save_cgns(const char *name){ return cgnsFileDialog(name); } static int _save_unv(const char *name){ return unvFileDialog(name); } static int _save_vtk(const char *name){ return genericMeshFileDialog @@ -286,6 +288,8 @@ static int _save_auto(const char *name) case FORMAT_POS : return _save_pos(name); case FORMAT_OPT : return _save_options(name); case FORMAT_GEO : return _save_geo(name); + case FORMAT_BREP : return _save_brep(name); + case FORMAT_STEP : return _save_step(name); case FORMAT_CGNS : return _save_cgns(name); case FORMAT_UNV : return _save_unv(name); case FORMAT_VTK : return _save_vtk(name); @@ -330,6 +334,10 @@ static void file_save_as_cb(Fl_Widget *w, void *data) {"Gmsh Mesh Statistics" TT "*.pos", _save_pos}, {"Gmsh Options" TT "*.opt", _save_options}, {"Gmsh Unrolled Geometry" TT "*.geo", _save_geo}, +#if defined(HAVE_OCC) + {"OpenCASCADE STEP" TT "*.step", _save_step}, + {"OpenCASCADE BRep" TT "*.brep", _save_brep}, +#endif {"Abaqus INP Mesh" TT "*.inp", _save_inp}, #if defined(HAVE_LIBCGNS) {"CGNS (Experimental)" TT "*.cgns", _save_cgns}, diff --git a/Geo/GModelIO_OCC.cpp b/Geo/GModelIO_OCC.cpp index c08a12d94c..88969c506e 100644 --- a/Geo/GModelIO_OCC.cpp +++ b/Geo/GModelIO_OCC.cpp @@ -969,7 +969,7 @@ int GModel::readOCCIGES(const std::string &fn) int GModel::writeOCCBREP(const std::string &fn) { if (!_occ_internals){ - Msg::Error("No OCC Model Found"); + Msg::Error("No OpenCASCADE model found"); return 0; } else @@ -980,7 +980,7 @@ int GModel::writeOCCBREP(const std::string &fn) int GModel::writeOCCSTEP(const std::string &fn) { if (!_occ_internals){ - Msg::Error("No OCC Model Found"); + Msg::Error("No OpenCASCADE model found"); return 0; } else diff --git a/Graphics/drawMesh.cpp b/Graphics/drawMesh.cpp index ca45b85e73..598ba737c3 100644 --- a/Graphics/drawMesh.cpp +++ b/Graphics/drawMesh.cpp @@ -315,7 +315,7 @@ static void drawVoronoiDual(std::vector<T*> &elements) gl2psDisable(GL2PS_LINE_STIPPLE); } -// Routines for filling and drawing the vertex arrays +// Routine for drawing the vertex arrays static void drawArrays(drawContext *ctx, GEntity *e, VertexArray *va, GLint type, bool useNormalArray, int forceColor=0, unsigned int color=0) -- GitLab