Skip to content

Releases: dfki-ric/pytransform3d

1.9

19 Jun 10:07
6e5f9d0
Compare
Choose a tag to compare
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

27 Apr 15:25
Compare
Choose a tag to compare
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

05 Mar 14:47
Compare
Choose a tag to compare
  • 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

06 Feb 22:24
Compare
Choose a tag to compare
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

26 Jan 20:50
Compare
Choose a tag to compare
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

28 Dec 15:08
Compare
Choose a tag to compare
1.5

Bugfix (Breaking Change)

  • Fixes extrinsic zxz and zyz Euler angles (order of rotations was previously inverted)

Features

  • Adds functions vector_projection and check_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 and matrix_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

14 Dec 19:44
Compare
Choose a tag to compare
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

20 Nov 08:24
f34457e
Compare
Choose a tag to compare
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

10 Aug 08:34
Compare
Choose a tag to compare

Adapt to change in Matplotlib interface

1.2

02 Jul 14:58
Compare
Choose a tag to compare
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 the TransformManager
  • Bugfixes
    • Improve numerical stability of axis_angle_from_matrix(...)
    • Improve numerical stability of angle_between_vectors(...)
    • Fix SLERP between identical orientations
  • It is now possible to plot visual / collision meshes of a URDF (with trimesh)
  • Improved documentation of conventions for axis-angle representation