Releases: dfki-ric/pytransform3d
Releases · dfki-ric/pytransform3d
1.9
Warning
This release is broken. Subpackages will not be installed. Use 1.9.1.
Refactoring
- Large modules are split into multiple files (non-breaking change)
- Refactoring of URDF parser
- Matplotlib is not strictly necessary anymore to use the core code of pytransform3d without its plotting features
Features
- Adds type hints for static type checking in additional type stubs (files with ending .pyi)
- Adds
trajectories.invert_transforms
to invert multiple transformation matrices at once - Adds function to parse inertial tag in URDF
- Makes some validations before conversions optional
- Adds option to visualize ellipsoid
- Adds rotors as a new concept to represent rotations
Bugfixes
- Fixes numerical issue in conversion from matrix to axis-angle representation
1.8
- Adds unit dual quaternions as a new representation of transformations.
- Adds batch operations on unit dual quaternions.
- Adds screw linear interpolation (ScLERP) for dual quaternions.
- Adds functions to visualize and plot a camera configuration in 3D.
- Adds function to remove an artist from the Open3D visualizer.
- Fixes deprecation warnings of numpy and matplotlib.
1.7.1
- Clean up 3D plots in matplotlib (no gray background, less ticks)
- Documentation target latexpdf works now as SVG images were replaced by PNGs. This also fixes missing font issues in the HTML documentation.
1.7
- Adds batch conversions of orientation and pose representations and similar operations
- Adds function
norm_exponential_coordinates
- Adds tables of content for longer documentation pages
- Prints more useful warning for missing mesh filename in
pytransform3d.plot_utils.plot_mesh
- Makes frames of collision objects and visuals unique in UrdfTransformManager
1.6
- Adds all 24 Euler angle conventions (conversion to rotation matrix and from rotation matrix)
- Adds option to convert 'package://' in URDF files to a specified directory
- Adds options to control appearance of collision objects and visuals in plots: wireframe, convex hull, alpha value
- Compute vertex normals of meshes before rendering
- Fixes visualization of TransformManager
1.5
Bugfix (Breaking Change)
- Fixes extrinsic zxz and zyz Euler angles (order of rotations was previously inverted)
Features
- Adds functions
vector_projection
andcheck_skew_symmetric_matrix
- Adds screw parameters, screw axis, exponential coordinates of transformations, screw matrix, and matrix logarithm as new representations for transformations
- Adds function
adjoint_from_transformation
- Adds method
TransformManager.remove_transform
- Adds functions
norm_matrix
andmatrix_from_two_vectors
Documentation
- Rearranges gallery in readme
- Links to GitHub page in sphinx documentation
- Improves documentation of SE(3)
- Adds examples to documentation with sphinx-gallery and a custom image scraper for Open3D
- Documents rotation and transformation conventions of other software packages
1.4
- Adds major improvement of pytransform3d's visualization and animation capabilities: a renderer based on Open3D's visualizer which is fast and easily accessible. In addition to meshes it can also easily render large point clouds etc. The interface that is exposed by pytransform3d is similar to matplotlib.
- Adds
axis_angle_from_two_directions
- Adds support for prismatic and continuous URDF joints
- Adds support for material tag in URDF parser
- Adds option to turn checks in TransformManager off to make it faster
1.3
Rotations
- Introduces compact axis-angle as a new concept to represent orientations and adds conversions from and to axis-angle, quaternion, and rotation matrix
- Uses compact axis-angle to represent angular velocities
- Adds function to compute time derivatives of a quaternion sequence
- Adds function to integrate angular velocities to a sequence of quaternions
- Adds additional functions to convert Tait-Bryan or Euler angles to rotation matrices
Transformations
- Adds vector_to_direction, vectors_to_directions, and vectors_to_points
Documentation
- Less confusing documentation of active, passive, extrinsic, and intrinsic rotation conventions
- Documents how multiple transformations should be modeled
Plotting
- Adds plotting functions for geometric objects
- Extends plotting function for cylinders to include cylindrical shells
- Plots convex hull of meshes by default when plotting URDFs to speed up visualization
- Passes option 'prog' to pydot
- Adds function plot_vector
1.2.1
Adapt to change in Matplotlib interface
1.2
- Update check mechanisms
- Check determinant of rotation matrices
- Increase tolerance of checks for rotation matrices
- Allow deactivation of ValueErrors for invalid rotation and transformation matrices with argument
strict_check=False
in several functions and in theTransformManager
- Bugfixes
- Improve numerical stability of
axis_angle_from_matrix(...)
- Improve numerical stability of
angle_between_vectors(...)
- Fix SLERP between identical orientations
- Improve numerical stability of
- It is now possible to plot visual / collision meshes of a URDF (with trimesh)
- Improved documentation of conventions for axis-angle representation