Release 1.1
Blog Post of the release 🎉
DGtal 1.1
New Features / Critical Changes
-
Project
-
For this release, we have cleaned up the git history (using bfg),
removing old deprecated files or commit errors. For a complete description,
please follow the discussion of Issue #1477.
If you are doing a cleangit clone
of the project, or use the release archive,
everything should be fine. If you have branches on the release 1.1beta, you
would need to reset your current working copy. For instance, if
you have cloned theDGtal-team/DGtal
repository, just reset your
master branch using:git fetch origin git reset --hard origin/master
If you have cloned a fork of
DGtal-team/DGtal
(i.e. theorigin
remote correspond to your fork and not the DGtal-team one), Fetch
the DGtal-team remote (nammedDGtal
here):git fetch DGtal git reset --hard DGtal/master
For advanced developers
If there are some branches out there you want to "update" to the new history:
First go to unmerged branch and copy the SHA of the commits you want to get. Or, if they are consecutive, copy the oldest and newest SHA.git checkout master #Updated to new history git checkout -b myOpenPR_after_new_history git cherry-pick oldestSha^..newestSha
(David Coeurjolly, #1510)
-
-
Kernel package
-
DEC
- Add discrete calculus model of Ambrosio-Tortorelli functional in
order to make piecewise-smooth approximations of scalar or vector
fields onto 2D domains like 2D images or digital surfaces
(Jacques-Olivier Lachaud,#1421)
- Add discrete calculus model of Ambrosio-Tortorelli functional in
-
Geometry Package
- New piecewise smooth digital surface regularization class (David Coeurjolly,
#1440) - Provides support for digital full convexity and subconvexity (Jacques-Olivier Lachaud,
#1459) - Implementation of Shrouds algorithm for smoothing digital surfaces:
Nielson et al., Shrouds: optimal separating surfaces for enumerated volumes.
In Proc. VisSym 2003, vol. 3, pp. 75-84
(Jacques-Olivier Lachaud, #1500) - Updates cell geometry and digital convexity to use specialized
unordered set data structure UnorderedSetByBlock for storing
digital points (Jacques-Olivier Lachaud,
#1499)
- New piecewise smooth digital surface regularization class (David Coeurjolly,
-
Shapes package
- Add a new surface mesh representation for manifold or non-manifold polygonal
surfaces in R^3 (Jacques-Olivier Lachaud,
#1503)
- Add a new surface mesh representation for manifold or non-manifold polygonal
Changes
-
General
- DGtal can be compiled and used as a project (git) submodule (David
Coeurjolly #1444) - Add .gitattributes file for github to recognize ih files as c++
(Pablo Hernandez-Cerdan #1457) - Add CMake option
DGTAL_ENABLE_FLOATING_POINT_EXCEPTIONS
to control enabling
feenableexcept
(only applies in Linux when in Debug mode).
(Pablo Hernandez-Cerdan, #1489) - Travis: Fix broken Eigen url. Update Eigen in travis to 3.3.7.
(Pablo Hernandez, #1508)
- DGtal can be compiled and used as a project (git) submodule (David
-
Geometry
-
io
- The GenericWriter can now export in 3D ITK format (nii, mha, mhd, tiff).
(Bertrand Kerautret #1485) - New Viridis ColorGradientPreset and clean of useless template specializations in
the GenericWriter for color image. (Bertrand Kerautret
#1487) - Add the possibility to import images with a shifted domain in ITKReader.
(Bertrand Kerautret and Pablo Hernandez-Cerdan
#1492)
- The GenericWriter can now export in 3D ITK format (nii, mha, mhd, tiff).
-
Kernel package
-
Helpers
- Add vector field output as OBJ to module Shortcuts (Jacques-Olivier Lachaud,
#1412) - Add shortcuts to Ambrosio-Tortorelli piecewise-smooth approximation
(Jacques-Olivier Lachaud,#1421) - Add output as OFF to module Shortcuts (Bertrand Kerautret,
#1476) - Add shortcuts to principal curvatures and directions of curvature for implicit polynomial
3D shapes. (Jacques-Olivier Lachaud,#1470)
- Add vector field output as OBJ to module Shortcuts (Jacques-Olivier Lachaud,
-
Tests
-
Topology
- Provides partial flip, split and merge operations for half-edge data structures
and triangulated surfaces (Jacques-Olivier Lachaud,
#1428) - Makes testVoxelComplex faster, reducing the size of the test fixture
(Pablo Hernandez-Cerdan, #1451) - Fix bug in VoxelComplex masks when cell was at the boundary of kspace
(Pablo Hernandez-Cerdan, #1488) - Fix loadTable not able to read compressed tables in Windows
(Pablo Hernandez-Cerdan, #1505) - Fix fillData in CubicalComplex
(Pablo Hernandez-Cerdan, #1519)
- Provides partial flip, split and merge operations for half-edge data structures
-
Shapes package
- Add a moveTo(const RealPoint& point) method to implicit and star shapes
(Adrien Krähenbühl,
#1414) - Fix Lemniscate definition following Bernoulli's definition
(Adrien Krähenbühl,
#1427) - Homogenizes typedefs of all parametric shapes and fixes some bounding box
computations (Adrien Krähenbühl,
#1462) - Add const directives to some curve estimators on shapes.
(Adrien Krähenbühl #1429)
- Add a moveTo(const RealPoint& point) method to implicit and star shapes
-
IO
- When the 3D built-in viewer is enabled (libqglviewer), the default
required Qt version is now Qt5 instead of Qt4. You can revert to
Qt4 by unsetting the WITH_QT5 cmake flag (David Coeurjolly,
#1511)
- When the 3D built-in viewer is enabled (libqglviewer), the default
Bug Fixes
-
Configuration/General
- Fix compilation error/warnings with gcc 9.1.1 and clang 9.0
(Boris Mansencal, #1431) - Disable some gcc/clang warnings in Qt5 raised by Apple clang compiler (David
Coeurjolly, #1436) - Fixing Travis configuration due to syntax changes in v2
(Roland Denis, #1465) - Compression of png files used in for the documentation
(preparing 1.1 release), (David Coeurjolly, #1494) - Fix
CMAKE_C_FLAGS
whenWITH_OPENMP=ON
(Pablo Hernandez-Cerdan, #1495)
- Fix compilation error/warnings with gcc 9.1.1 and clang 9.0
-
Mathematics
- Put SimpleMatrix * scalar operation in DGtal namespace (Jacques-Olivier Lachaud,
#1412)
- Put SimpleMatrix * scalar operation in DGtal namespace (Jacques-Olivier Lachaud,
-
Geometry
- Bugfix in the
testVoronoiCovarianceMeasureOnSurface
(David
Coeurjolly, #1439) - Defining StandardDSS4Computer & NaiveDSS8Computer as templated aliases of
ArithmeticalDSSComputer (fix #1483). Also fixing NaiveDSS8 adjacency.
(Roland Denis, #1491) - Fix initialisation in BoundedLatticePolytope when creating non full
dimensional simplices in 3D (segments, triangles). (Jacques-Olivier Lachaud,
#1502)
- Bugfix in the
-
Kernel
- Point2DEmbedderIn3D edit to recover behavior of version 0.9.4 in
the origin point placement. (Florian Delconte and Bertrand Kerautret
#1520)
- Point2DEmbedderIn3D edit to recover behavior of version 0.9.4 in
-
Helpers
- Fix Metric problem due to implicit RealPoint toward Point conversion when computing
convolved trivial normals in ShortcutsGeometry (Jacques-Olivier Lachaud,
#1412) - Fixing double conversion bug in class Parameters, related to
English/French decimal point inconsistency betweenatof
and
boost::program_options
(Jacques-Olivier Lachaud,
#1411) - Fix bug in Shortcuts::saveVectorFieldOBJ
(Jacques-Olivier Lachaud,#1421) - Fixing OBJ export: .mtl file written with relative path (Johanna
Delanoy #1420) - Unify pointel ordering in Shortcuts and MeshHelper so that
Shortcuts::getPointelRange, Shortcuts::saveOBJ and
Shortcuts::makePrimalPolygonalSurface, as well as
MeshHelpers::digitalSurface2PrimalPolygonalSurface, all use the
CCW ordering by default (in 3D).
(Jacques-Olivier Lachaud,#1445)
- Fix Metric problem due to implicit RealPoint toward Point conversion when computing
-
images
-
IO
-
Topology
- Add missing constraint to flips in HalfEdgeDataStructure
(Jacques-Olivier Lachaud,#1498)
- Add missing constraint to flips in HalfEdgeDataStructure
-
Shapes
-
DEC
-
Documentation
- Promoting the
Shortcuts
documentation page on the main page. (David
Coeurjolly #1417) - Fixing the
doxyfiles
to have the table of contents of module pages (David
Coeurjolly #1424) - New illustration in the volumetric analysis documentation page (David
Coeurjolly #1432) - Using SourceForge to download doxygen sources during Travis CI jobs.
(Roland Denis #1424) - CSS edit to enhance the readability of code snippets (David
Coeurjolly #1438) - Fixing various links in moduleCellularTopology. Fixing #1454.
Removing dead links to ImaGene project.
(Roland Denis #1455)
- Promoting the
-
Build
- Fix issue (#1478),
that is a Visual Studio 2019 build error related to befriend
template specializations
(Jacques-Olivier Lachaud #1481) - Removing the homemade CPP11 checks, using cmake macro instead
(David Coeurjolly, #1446) - Removes the check for CPP11 when building WITH_ITK
(Pablo Hernandez-Cerdan, #1453) - Fix apple clang compilation issue with a workaround to the
ConstIteratorAdapter class that does not satisfy the _is_forward concept of the STL:
using boost::first_max_element instead std::max_element.
(Bertrand Kerautret, #1437) - Abort compilation at configure time when the compiler is gcc 10.1 due to compiler bug.
Fix issue #1501.
(Pablo Hernandez-Cerdan, #1506)
- Fix issue (#1478),