Changelog
3.1.0
2026-08-12
API
Added
Motion::Pose::fromXyzRpyto construct a pose from a translation and roll, pitch and yaw angles.Added
Motion::Pose::composeto compose two poses.Added an experimental
Motion::Experimental::loadMeshfunction to read a mesh from a file on disk.
C++
Added stream operators for
Motion::Tcp,Motion::WaypointandMotion::Planner.
Python
The
zivid_pythonmotionwheel now covers all supported Python versions, replacing the one wheel per Python version distributed previously.The
zivid_pythonmotionwheel now declares its dependency on NumPy.
RuntimeConfiguration.yml
Added
Performance/FreeCpuThreads, which overrides the number of CPU threads Zivid Motion leaves free for the user when sizing its thread pool. This number was previously fixed to 2.
General
Installing a cell package now creates the Motion resources directory when it does not already exist.
Packaging a cell now includes the source URDF and mesh files also when packing without generated data.
Fixed several bugs.
3.0.0
2026-07-02
API
Motion::Pose,Motion::Configuration,Motion::PathandMotion::Triangleare now concrete types, replacing the previous typedefs.Removed the
PointXYZandVectorXYZtypedefs, useMotion::Vector3finstead.Renamed
TransformedBoxtoMotion::BottomCenteredTransformedBox, and itsbottomCenteredTransformmember totransform.Motion::Planner::computeInverseKinematicsnow takes a list of poses and returnsMotion::Goals, instead of a single pose returning an optional configuration.Replaced
PathRequest.goalConfigurationswithMotion::PathRequest::goals, using the newMotion::Goalstype.Motion::Profileis now lowercase (Testing/Production->testing/production).Added a new
Motion::Meshclass, constructed fromMotion::Trianglesor from shapes (Motion::Mesh::createBox,Motion::Mesh::createCylinder,Motion::Mesh::createSphere).Added
Motion::Mesh::transformandMotion::Mesh::transformInPlace.Added
Motion::Mesh::bottomCenterTransformandMotion::Mesh::bottomCenterTransformInPlace.Added an experimental
Motion::Experimental::mergefunction to merge multiple meshes into one.
Motion::Planner::setCarriedObjectandMotion::Planner::setReplaceableToolnow acceptMotion::Meshas their argument(s). All other overloads have been removed.Motion::Planner::setObstaclesnow accepts a list ofMotion::Meshas its argument. The previous overloads acceptingMotion::Triangleswere removed.Added
Motion::Planner::replayApiLogto restore the planner state and replay a previously exported API log.Added the
Motion::PoseandMotion::Matrix4x4classes, with conversions between them.Added the
Motion::Goalstype andMotion::Goals::fromConfigurations.
C++
Motion::Applicationnow verifies that the header and library versions match.
Python
Obstacle.PointCloud,Obstacle.ColorsandTrianglescan be constructed directly from a numpy array, providing a more performant interface for large point clouds and triangle meshes.BlendRadiusandColorRGBAare now exposed as classes.Importing the
zividmotionwheel now warns when its version does not match the installed C++ library.
Bug fixes
Motion::Planner::pathreturns an error result when all goal configurations are invalid.
Python
Fixed the
PathRequestconstructor argument order so positional construction works.
2.0.0
2026-03-31
API
Initial public release of the Zivid Motion API.