star-cad

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

commit f0088ebd351d50b5cf1d648e11693e69315a2336
parent b13a7c6730dcea9eaff8ccc61b4b3af01d343e4a
Author: Christophe Coustet <christophe.coustet@meso-star.com>
Date:   Fri, 10 Oct 2025 10:58:46 +0200

Merge branch 'release_0.6' into develop

Diffstat:
MREADME.md | 37++++++++++++++++++++++++++++++++++---
Mconfig.mk | 14++------------
2 files changed, 36 insertions(+), 15 deletions(-)

diff --git a/README.md b/README.md @@ -25,6 +25,39 @@ Edit config.mk as needed, then run: ## Release notes +### Version 0.6 + +- Add `scad_add_cone' and `scad_add_torus' API calls. +- API changes for geometry creation: geometry name is no longer provided to the + various add_<something> functions, that now create unnamed geometries; instead + names have to be set after geometry creation through `scad_geometry_set_name'. +- API change for `scad_geometries_boundaries' and + `scad_geometries_common_boundaries': now return a list of geometries + (that could be grouped through `scad_collect_geometries'); used to return a + single geometry containing the (possibly empty) boundary elements (that could + be ungrouped using `scad_geometry_explode'). +- API uniformization (involving args order, naming, etc.). +- Fix geometry naming. Now get_name returns NULL if name was set to NULL or + let unset (used to return ""). Allow to set same name again (to the same + geometry) without triggering an error. +- Fix `scad_geometry_get_closest_point'. The returned point was not correct. +- Fix `scad_geometry_get_normal' to get the normal at the geometry closest + point, fixing a memleak in the process. +- Fix `scad_scene_clear' (geometries with multiple references where not + released). +- Fix `scad_geometries_common_boundaries'. Used to trigger OccIntersect that, as + a side effet, partitionned geometries. +- Fix `scad_step_import' (arguments where inverted). +- Change `scad_geometry_get_centerofmass'. Now returns the unique center of mass + of all the entities involved in the geometry, regardless of their count (used + to return one center of mass per entity in the geometry). +- Rework the auto-sync feature (that manages sync events between gmsh and + Open Cascade); this should greatly improve performance. +- Rename enum members in capital letters. +- Upgrade gmsh dependency (to 1.14.1) and Open-Cascade dependency (to 7.9.1). +- Improve code robustness. +- Improve tests. + ### Version 0.5.2 - Fix a file name in debug STL output file. @@ -42,8 +75,6 @@ Edit config.mk as needed, then run: - Add the `automatic' meshing algorithm. - Add the `initial mesh only' meshing algorithm. - Add a geometry visibility management feature. -- Add `' API call. -- Add `' API call. ### Version 0.5 @@ -56,7 +87,7 @@ Edit config.mk as needed, then run: ### Version 0.4.1 -- Add `scad_dump_geometry` API call that can be called from a debugging +- Add `scad_dump_geometry' API call that can be called from a debugging session - Remove an invalid assert - Fix build that used gmsh library in Release when Debug should have diff --git a/config.mk b/config.mk @@ -1,4 +1,4 @@ -VERSION = 0.5.2 +VERSION = 0.6 PREFIX = /usr/local LIB_TYPE = SHARED @@ -8,15 +8,6 @@ BUILD_TYPE = RELEASE #BUILD_TYPE = DEBUG ################################################################################ -# FIXME: -# REMOVE THIS ONCE GMSH IS FIXED -################################################################################ - -CFLAGS_GMSH = \ - -DFIX_GMSH_BOOLEAN_OUTPUTS -CFLAGS_GMSH = - -################################################################################ # Tools ################################################################################ AR = ar @@ -76,8 +67,7 @@ CFLAGS_COMMON =\ -fvisibility=hidden\ -fstrict-aliasing\ $(CFLAGS_HARDENED)\ - $(WFLAGS) \ - $(CFLAGS_GMSH) + $(WFLAGS) CFLAGS_DEBUG = -g $(CFLAGS_COMMON) CFLAGS_RELEASE = -O2 -DNDEBUG $(CFLAGS_COMMON)