star-cad

Geometric operators for computer-aided design
git clone git://git.meso-star.fr/star-cad.git
Log | Files | Refs | README | LICENSE

commit f404dad0b74eb6d67d65acb99fa2ff88fa553758
parent 27a1adf59e9be8ed26748e3b102005a0fccd9d80
Author: Christophe Coustet <christophe.coustet@meso-star.com>
Date:   Wed, 28 Dec 2022 19:04:59 +0100

Fix some API functions not checking if synchronize was needed

Diffstat:
Msrc/scad.c | 15---------------
Msrc/scad_device.c | 4++++
Msrc/scad_geometry.c | 39---------------------------------------
3 files changed, 4 insertions(+), 54 deletions(-)

diff --git a/src/scad.c b/src/scad.c @@ -293,10 +293,6 @@ scad_stl_export ERR(check_device(FUNC_NAME)); - if(dev->need_synchro) { - ERR(scad_synchronize()); - } - sz = geometry->gmsh_dimTags_n; data = geometry->gmsh_dimTags; ASSERT(sz > 0 && sz % 2 == 0); @@ -427,10 +423,6 @@ scad_stl_export_split ERR(check_device(FUNC_NAME)); - if(get_device()->need_synchro) { - ERR(scad_synchronize()); - } - sz = geometry->gmsh_dimTags_n; data = geometry->gmsh_dimTags; ASSERT(sz % 2 == 0); @@ -513,10 +505,6 @@ scad_scene_mesh ERR(check_device(FUNC_NAME)); - if(get_device()->need_synchro) { - ERR(scad_synchronize()); - } - gmshModelMeshGenerate(2, &ierr); ERR(gmsh_err_to_res_T(ierr)); @@ -534,9 +522,6 @@ scad_scene_partition res_T res = RES_OK; ERR(check_device(FUNC_NAME)); - if(get_device()->need_synchro) { - ERR(scad_synchronize()); - } gmshModelOccRemoveAllDuplicates(&ierr); ERR(gmsh_err_to_res_T(ierr)); diff --git a/src/scad_device.c b/src/scad_device.c @@ -123,6 +123,10 @@ check_device goto error; } + if(get_device()->need_synchro) { + ERR(scad_synchronize()); + } + if(g_device->options.Misc.Step) { ERR(scad_run_ui()); } diff --git a/src/scad_geometry.c b/src/scad_geometry.c @@ -852,9 +852,6 @@ scad_fuse_geometries } ERR(check_device(FUNC_NAME)); - if(get_device()->need_synchro) { - ERR(scad_synchronize()); - } allocator = dev->allocator; ERR(gather_tags(geometries, geometries_count, &data1, &sz1)); @@ -923,9 +920,6 @@ scad_cut_geometries } ERR(check_device(FUNC_NAME)); - if(get_device()->need_synchro) { - ERR(scad_synchronize()); - } allocator = dev->allocator; ERR(gather_tags(geometries, geometries_count, &data1, &sz1)); @@ -994,9 +988,6 @@ scad_intersect_geometries } ERR(check_device(FUNC_NAME)); - if(get_device()->need_synchro) { - ERR(scad_synchronize()); - } allocator = dev->allocator; ERR(gather_tags(geometries, geometries_count, &data1, &sz1)); @@ -1068,9 +1059,6 @@ scad_geometries_common_boundaries } ERR(check_device(FUNC_NAME)); - if(get_device()->need_synchro) { - ERR(scad_synchronize()); - } allocator = dev->allocator; ERR(gather_tags(geometries, geometries_count, &data1, &sz1)); @@ -1136,9 +1124,6 @@ scad_geometry_rotate } ERR(check_device(FUNC_NAME)); - if(get_device()->need_synchro) { - ERR(scad_synchronize()); - } sz = geom->gmsh_dimTags_n; data = geom->gmsh_dimTags; @@ -1176,9 +1161,6 @@ scad_geometry_extrude } ERR(check_device(FUNC_NAME)); - if(get_device()->need_synchro) { - ERR(scad_synchronize()); - } allocator = dev->allocator; gmshModelOccExtrude(geom->gmsh_dimTags, geom->gmsh_dimTags_n, SPLIT3(dxdydz), @@ -1247,9 +1229,6 @@ scad_geometry_explode } ERR(check_device(FUNC_NAME)); - if(dev->need_synchro) { - ERR(scad_synchronize()); - } allocator = dev->allocator; data = geom->gmsh_dimTags; @@ -1325,9 +1304,6 @@ scad_geometry_copy } ERR(check_device(FUNC_NAME)); - if(get_device()->need_synchro) { - ERR(scad_synchronize()); - } allocator = dev->allocator; sz1 = geom->gmsh_dimTags_n; @@ -1398,9 +1374,6 @@ scad_geometry_translate } ERR(check_device(FUNC_NAME)); - if(get_device()->need_synchro) { - ERR(scad_synchronize()); - } sz = geom->gmsh_dimTags_n; data = geom->gmsh_dimTags; @@ -1444,9 +1417,6 @@ scad_geometries_partition } ERR(check_device(FUNC_NAME)); - if(get_device()->need_synchro) { - ERR(scad_synchronize()); - } allocator = dev->allocator; ERR(gather_tags(geometries, geometries_count, &data, &sz)); @@ -1623,9 +1593,6 @@ scad_fragment_geometries } ERR(check_device(FUNC_NAME)); - if(get_device()->need_synchro) { - ERR(scad_synchronize()); - } allocator = dev->allocator; ERR(gather_tags(geometries, geometries_count, &data1, &sz1)); @@ -1691,9 +1658,6 @@ scad_geometry_boundary } ERR(check_device(FUNC_NAME)); - if(get_device()->need_synchro) { - ERR(scad_synchronize()); - } allocator = dev->allocator; ERR(gather_tags(geometries, geometries_count, &data, &sz)); @@ -1748,9 +1712,6 @@ scad_step_import } ERR(check_device(FUNC_NAME)); - if(get_device()->need_synchro) { - ERR(scad_synchronize()); - } allocator = dev->allocator; gmshModelOccImportShapes(filename, &tagout, &tagoutn, 1, "step", &ierr);