Skip to content

Releases: BrunoLevy/geogram

v1.9.8

28 Dec 08:46

Choose a tag to compare

Note: the packages generated by github (Source code links) do not contain the submodules. Use geogram-1.9.8.tar.gz or geogram-1.9.8.zip instead to get everything.

What's Changed

  • Many small fixes for recent version of C++ compilers, merged fixes by @tksuoaran
  • Mechanism to select GPU under Windows
  • WIP: OpenNL re-factoring, preparing for a separate library

New Contributors

Full Changelog: v1.9.7...v1.9.8

v1.9.7

08 Oct 20:20

Choose a tag to compare

Note: the packages generated by github (Source code links) do not contain the submodules. Use geogram-1.9.7.tar.gz or geogram-1.9.7.zip instead to get everything.

What's Changed

  • attributes now support types that do dynamic allocation
  • OpenNL is now a submodule (and has its own repository here)
  • CSGBuilder: Improved OpenSCAD compatibility
  • CSGBuilder: refactoring, preparing for tree transformers (optimization at the AST level)
  • CSGCompiler: fixed a (rather ridiculous) performance bug: the function to display current line was traversing the whole buffer each time. Just logging progress was costing O(N^2) !!
  • Fixes in legacy code for gcc15 (thank you Cedric Borgese)

Full Changelog: v1.9.6...v1.9.7

v1.9.6

25 Jun 11:35

Choose a tag to compare

Note: the packages generated by github (Source code links) do not contain the submodules. Use geogram-1.9.6.tar.gz or geogram-1.9.6.zip instead to get everything.

What's Changed

  • Rewrote many functions using new Mesh "syntaxic sugar" functions (both easier to read and faster)
  • New AABB_INDIRECT mode for MeshAABB (uses a vector of indices instead of permutting mesh-elements in-place)
  • mesh_reorder: new function to compute spatial ordering of mesh elements in a vector of indices
  • Minor fixes and improvements in MeshCSG
  • Transparent rendering mode for geogram_demo_Evert
  • compute_CSG: Clearer display of timing breakdowns in verbose mode
  • Fix for CLion on Windows by @tksuoran in #256
  • Fixes for linking problems when accessing static class members outside DLL under Windows
  • ExactCDT::create_enclosing_triangle()
  • VSA L12 segmenter: changed default anisotropy value (made it larger). Works better with scanned meshes
  • DevOps: test results, Emscripten compilation now generated in separate repositories (geogram.CI and geogram.run). Doxygen documentation still generated here.

Full Changelog: v1.9.5...v1.9.6

v1.9.5

02 May 09:44

Choose a tag to compare

Note: the packages generated by github (Source code links) do not contain the submodules. Use geogram-1.9.5.tar.gz or geogram-1.9.5.zip instead to get everything.

What's changed

  • syntaxic sugar, easier iteration on Mesh elements and direct access to points (note: some functions in mesh_geometry.h declared as deprecated will be removed in next release).
  • Application::snapshot() function to save images
  • Improved OpenSCAD compatibility in MeshCSG (same sphere discretization as OpenSCAD)
  • Several fixes in geogram_gfx lib for MacOS (mouse handler, taking into account retina screens
  • Delaunay now uses unsigned integers instead of signed integers
  • Fixed an annoying bug in GEO::Application (recursive redraw triggered by recursive event handler)
  • WIP: GLUP140 profile for OpenGL 4.1 (will replace the GLUPES profile)

Full Changelog: v1.9.4...v1.9.5

v1.9.4

06 Mar 14:31

Choose a tag to compare

Note: the packages generated by github (Source code links) do not contain the submodules. Use geogram-1.9.4.tar.gz or geogram-1.9.4.zip instead to get everything.

What's changed

  • support for very large meshes (> 4Gb) in .geogram file format, both in standard and GARGANTUA mode
  • interoperability between .geogram files saved in standard and in GARGANTUA mode
  • adapted to new DearImGui v1.91.8 (default transparency has changed for color buttons, and format for serialized layout has changed)
  • new PolyScope color scheme (shamelessly copied)
  • improved compatibility of CSG engine with OpenSCAD.
  • fixed annoying bug that was due to printing to Console triggering graphic update, even when called from event handler

Full Changelog: v1.9.3...v1.9.4

v1.9.3

04 Feb 17:29

Choose a tag to compare

Note: the packages generated by github (Source code links) do not contain the submodules. Use geogram-1.9.3.tar.gz or geogram-1.9.3.zip instead to get everything.

What's Changed

  • Several bug fixes, including one that caused attribute management to break in very large meshes (hundred millions elements)
  • Add LoongArch64 support by @wszqkzqk in #192
  • Make MeshFacets::find_edge() const by @tksuoran in #210
  • More const by @tksuoran in #212
  • Use cmake.exe from path, if it is found there by @tksuoran in #211
  • Allow to pick edges in DemoPicking by @sebmestrallet in #182
  • Add vec2u, vec3u, vec4u types by @tksuoran in #213

New Contributors

Full Changelog: v1.9.2...v1.9.3

v1.9.2

19 Dec 22:35

Choose a tag to compare

Note: the packages generated by github (Source code links) do not contain the submodules. Use geogram-1.9.2.tar.gz or geogram-1.9.2.zip instead to get everything.

What's changed

  • multi-GPU support in OpenNL
  • String::format_time() to display time in hh:mm:ss format
  • CmdLine::load_config() and save_config() to load/save command line arguments from file
  • small bugfixes

Full Changelog: v1.9.1...v1.9.2

v1.9.1

20 Nov 19:28

Choose a tag to compare

Note: the packages generated by github (Source code links) do not contain the submodules. Use geogram-1.9.1.tar.gz or geogram-1.9.1.zip instead to get everything.

What's Changed

  • solve large sparse linear systems on GPU with new nlCUDA sliced matrix format and new AMGCL/nlCUDA backend
  • much faster periodic Delaunay triangulation in 3D
  • fix a compilation error in src/lib/third_party/numerics/SUPERLU/ by @lrineau in #155
  • Add compile-option to use TBB for thread management. by @jdumas in #164
  • Add init flags and make init less intrusive by default (fixes #64) by @jdumas in #163
  • Fix segmentation fault in nlEigenSolve_ARPACK by @megawattfs in #167

New Contributors

Full Changelog: v1.9.0...v1.9.1

v1.9.0

14 Jun 05:15

Choose a tag to compare

Note: the packages generated by github (Source code links) do not contain the submodules. Use geogram-1.9.0.tar.gz or geogram-1.9.0.zip instead to get everything.

New in this release

  • Official Mac/M1 support
  • Faster CSG and boolean ops
  • Updated libMeshb, amgcl,glfw and dear Imgui to latest versions

Full Changelog: v1.8.9...v1.9.0

v1.8.9

06 May 06:41

Choose a tag to compare

Note: the packages generated by github (Source code links) do not contain the submodules. Use geogram_1.8.9.tar.gz or geogram_1.8.9.zip instead to get everything.

New in this release

  • support for non-x86 architectures, including RISC-V ! (thank you @kxxt !)
  • geogram bugfix: Parallel Delaunay when nbr of points is smaller than nbr of threads (thank you @kxxt !)
  • geogram bugfix: boolean operations and CSG crashes under MacOS
  • geogram_gfx bugfix: lines of width 1 are not clipped under GLUP_140 and GLUP_440 profiles
  • geogram feature: POSIX stack trace in logs (Linux and MacOS), facilitates a lot bug hunting in continuous integ platform
  • PSMs: Delaunay PSM and multiprecision PSM: fixed compilation problem (due to new std::atomic<> based thread sync)
  • portability: Rewrite of thread sync mechanism using std::atomic and std::condition_variable
  • portability: Rewrite of StopWatch using std::chrono
    (got rid of all non-portable asm code, basically, if a thing can run Doom, then it can run geogram !)

New Contributors

  • @kxxt made their first contribution in #138

Full Changelog: v1.8.8...v1.8.9