Releases: coal-library/coal
Releases · coal-library/coal
Release v3.0.2
[3.0.2] - 2025-09-29
Added
- CMake: add COAL_DISABLE_HPP_FCL_WARNINGS option (#709)
- CMake: add support for BUILD_STANDALONE_PYTHON_INTERFACE (#658)
- Docker images
ghcr.io/coal-library/coal(#737)
Removed
- Remove constraints on supported doxygen version to generate the python documentation (#681)
- Remove useless COAL_WITH_CXX11_SUPPORT guard (#688)
- Remove qhull submodule, as ubuntu 20.04 is EoL (#704)
- Removed support for octomap < 1.8 (#727)
Changed
- Formatted all CMake listfiles using gersemi, add gersemi to pre-commit configuration (#657)
Coal 3.0.1
What's Changed
Fixed
- Remove CMake CMP0167 warnings (#630)
- Allow to run test in the build directory on Windows (#630)
- Updated nix flake from
hpp-fcltocoal(#632 - Fix hpp-fclConfig.cmake on Windows (#633)
- Fix install version (#651)
Added
- Add Pixi support (#629)
Changed
- Set NOMINMAX as a public definitions on Windows (#640)
Full Changelog: v3.0.0...v3.0.1
Coal 3.0.0
What's Changed
Added
- Renaming the library from
hpp-fcltocoal. Created aCOAL_BACKWARD_COMPATIBILITY_WITH_HPP_FCLCMake option for retro compatibility. This allows to still dofind_package(hpp-fcl)and#include <hpp/fcl/...>in C++ and it allows to still doimport hppfclin python (#596). - Added
Transform3f::RandomandTransform3f::setRandom(#584) - New feature: computation of contact surfaces for any pair of primitive shapes (triangle, sphere, ellipsoid, plane, halfspace, cone, capsule, cylinder, convex) (#574).
- Enhance Broadphase DynamicAABBTree to better handle planes and halfspace (#570)
- #558:
- [internal] Removed dead code in
narrowphase/details.h(#558) - [internal] Removed specializations of methods of
GJKSolver. Now the specializations are all handled byShapeShapeDistanceinshape_shape_func.h. - [new feature] Added support for Swept-Sphere primitives (sphere, box, capsule, cone, ellipsoid, triangle, halfspace, plane, convex mesh).
- [internal] Removed dead code in
- [API change] Renamed default convergence criterion from
VDBtoDefault(#556) - Fixed EPA returning nans on cases where it could return an estimate of the normal and penetration depth. (#556)
- Fixed too low tolerance in GJK/EPA asserts (#554)
- Fixed
normal_and_nearest_pointstest (no need to have Eigen 3.4) (#553) - #549
- Optimize EPA: ignore useless faces in EPA's polytope; warm-start support computation for
Convex; fix edge-cases witness points computation. - Add
Serializabletrait to transform, collision data, collision geometries, bounding volumes, bvh models, hfields. Collision problems can now be serialized from C++ and sent to python and vice versa. - CMake: allow use of installed jrl-cmakemodules (#564)
- CMake: Add compatibility with jrl-cmakemodules workspace (#610)
- Python: add id() support for geometries (#618).
Fixed
- Fix Fix serialization unit test when running without Qhull support (#611)
- Compiler warnings (#601, #605)
- CMake: fix assimp finder
- Don't define GCC7 Boost serialization hack when
HPP_FCL_SKIP_EIGEN_BOOST_SERIALIZATIONis defined (#530) - Default parameters for narrowphase algorithms (GJK and EPA); fixed assertion checks that were sometimes failing in GJK simplex projection and BVH
collide(#531). - Created a new macro
HPP_FCL_ASSERTwhich behaves as an assert by default. When the optionHPP_FCL_TURN_ASSERT_INTO_EXCEPTIONis turned on, it replaces the macro by an exception (#533). Also fixed an EPA assert inGJKSolver. - Simplify internals of hpp-fcl (#535):
- Computing distance between 2 primitives shapes does not use a traversal node anymore.
- Removed successive mallocs in GJK/EPA when using an instance of
GJKSolvermultiple times. GJKSolvernow deals with all statuses of GJK/EPA. Some of these statuses represent a bad behavior of GJK/EPA and now trigger an assertion in Debug mode. Usefull for debugging these algos.- Logging was added with macros like
HPP_FCL_LOG_(INFO/DEBUG/WARNING/ERROR); hpp-fcl can now log usefull info when the preprocessor optionHPP_FCL_ENABLE_LOGGINGis enabled. - Deprecated
enable_distance_lower_boundinCollisionRequest; a lower bound on distance is always computed. - Deprecated
enable_nearest_pointsinDistanceRequest; they are always computed and are the points of the shapes that achieve a distance ofDistanceResult::min_distance. - Added
enable_signed_distanceflag inDistanceRequest(defaulttrue). Turn this of for better performance if only the distance when objects are disjoint is needed. - The internal collision and distance functions of hpp-fcl now use
CollisionRequest::enable_contactandDistanceRequest::enable_signed_distanceto control whether or not penetration information should be computed. There are many scenarios where we don't need the penetration information and only want to know if objects are colliding and compute their distance only if they are disjoint. These flags allow the user to control the trade-off between performance vs. information of the library. - Fix convergence criterion of EPA; made GJK and EPA convergence criterion absolute + relative to scale to the shapes' dimensions; remove max face/vertices fields from EPA (these can be deduced from the max number of iterations)
- Account for lateral borders in Height Fields model.
- Fix compilation error on recent APPLE compilers (#539).
- Fix printing of deprecated message (#540).
- Fix compilation with earlier Eigen version
- Fix compilation warning message
- Fix issue in Octomap.computeLocalAABB
- Fix unsupported function for contact_patch_matrix
- Fix Octomap dependency on ROS
Full Changelog: v2.4.5...v3.0.0
HPP-FCL 2.4.5
HPP-FCL 2.4.4
Fix release 2.4.3 which was including hpp-fcl 3x still under development.
HPP-FCL 2.4.2
What's Changed
Fixed
- Fix CMAKE_INSTALL_{} path for installation (#543)
Full Changelog: https://github.com/humanoid-path-planner/hpp-fcl/compare/v2.4.1..v2.4.2
HPP-FCL 2.4.1
What's Changed
Fixed
- CachedMeshLoader checks file last modification time.
- Fix call to clear methods for {Collision,Distance}Data inside init function (#509)
- CMake: fix submodule use in bindings in (#512)
- Fix bug in DynamicAABBTreeCollisionManager (see #514) in (#515)
Full Changelog: v2.4.0...v2.4.1
HPP-FCL 2.4.0
What's Changed
Added
- Add method to
CollisionObjectto getCollisionGeometryraw pointer
Fixed
- Fix RPATH computation on OSX
- Fix Python stubs generation on Windows
Full Changelog: v2.3.7...v2.4.0
HPP-FCL 2.3.7
What's Changed
Full Changelog: v2.3.6...v2.3.7
HPP-FCL 2.3.6
What's Changed
- Update ROS_DISTRO by @jcarpent in #442
- Add citations by @jcarpent in #449
- [pre-commit.ci] pre-commit autoupdate by @pre-commit-ci in #444
- [WIP] Debug by @jcarpent in #455
- CMake: require >= 3.10 by @nim65s in #453
- core: fix SaPCollisionManager::empty() by @rujialiu in #454
- [pre-commit.ci] pre-commit autoupdate by @pre-commit-ci in #452
New Contributors
Full Changelog: v2.3.5...v2.3.6