Skip to content

Releases: dfki-ric/pytransform3d

2.0.0

17 Sep 15:32
Compare
Choose a tag to compare

Breaking Changes

Removed functions / constants:

  • pytransform3d.rotations.matrix_from
  • pytransform3d.rotations.matrix_from_angle
  • pytransform3d.rotations.matrix_from_euler_xyz
  • pytransform3d.rotations.matrix_from_euler_zyx
  • pytransform3d.rotations.euler_xyz_from_matrix
  • pytransform3d.rotations.euler_zyx_from_matrix
  • pytransform3d.rotations.assert_euler_xyz_equal
  • pytransform3d.rotations.assert_euler_zyx_equal
  • pytransform3d.rotations.e_xyz_id
  • pytransform3d.rotations.e_zyx_id

Features

  • Add pytransform3d.rotations.quaternion_from_extrinsic_euler_xyz

Bugfixes

  • Fix edge case in axis_angle_from_matrix (#198)
  • Raise ValueError when no quaternion is passed to smooth_quaternion_trajectory

1.14.0

15 Jun 07:21
Compare
Choose a tag to compare

Bugfixes

  • Fix pytransform3d.rotations.axis_angle_from_matrix with floating point precision errors in input rotation matrix (#189)

Deprecations

  • pytransform3d.rotations.matrix_from
  • pytransform3d.rotations.matrix_from_angle
  • pytransform3d.rotations.matrix_from_euler_xyz
  • pytransform3d.rotations.matrix_from_euler_zyx
  • pytransform3d.rotations.euler_xyz_from_matrix
  • pytransform3d.rotations.euler_zyx_from_matrix
  • pytransform3d.rotations.assert_euler_xyz_equal
  • pytransform3d.rotations.assert_euler_zyx_equal
  • pytransform3d.rotations.e_xyz_id
  • pytransform3d.rotations.e_zyx_id

Documentation

1.13.0

23 Mar 09:57
Compare
Choose a tag to compare

Features

  • Add pytransform3d.rotations.pick_closest_quaternion
  • Add pytransform3d.batch_rotations.smooth_quaternion_trajectory
  • Add pytransform3d.trajectories.mirror_screw_axis_direction
  • Add optional parameter shortest_path to indicate that sign ambiguity should be resolved in quaternion_slerp_batch, quaternion_slerp, and rotor_slerp
  • Add artist Plane to visualizer

Bugfixes

  • Indicate that parameter c is optional in type hints of function pytransform3d.visualizer.Figure.plot
  • Document slerp_weights and correct type hints
  • Fix Vector3D.set_data with parameter c=None (default value)

1.12.1

11 Feb 10:46
Compare
Choose a tag to compare

Fix plot_bivector for Matplotlib >= 3.5

1.12.0

11 Feb 10:25
Compare
Choose a tag to compare

Features

  • Add option draw_label_indicator to Frame artist class for Matplotlib

Bugfixes

  • Make Arrow3D compatible to matplotlib 3.5

Documentation

  • Describe SE(3) more clearly.

1.11.0

25 Nov 09:25
Compare
Choose a tag to compare

Features

  • Adds function Figure.vector and artist Vector3D to Open3D-based visualizer
  • Adds function Figure.scatter and artist PointCollection3D to Open3D-based visualizer

Documentation

  • Updates copyright information in license file
  • Updates contribution guidelines
  • Increase software quality stage in manifest.xml to stage 2

Continuous Integration

  • Runs CircleCI with Python 3.10 and pytest

1.10.0

13 Sep 08:12
Compare
Choose a tag to compare

As of version 1.10.0 pytransform3d will use semantic versioning. New versions will be developed on the branch develop and each merge to the master branch will result in a new version.

Furthermore, 1.10.0...

  • Adds pytransform3d.rotations.plane_basis_from_normal
  • Adds plot_ellipsoid, plot_capsule, and plot_cone to pytransform3d.plot_utils
  • Adds visualization of capsule and cone
  • Adds pytransform.coordinates to convert between different coordinate systems (Cartesian, spherical, cylindrical)
  • Adds function to make batch conversions between scalar last and scalar first quaternions
  • Adds trajectories.concat_one_to_many to apply one transformation to multiple others and concat_many_to_one to concatenate many transformations to one other
  • Relaxes thresholds for screw axis validation

1.9.1

20 Jun 12:43
Compare
Choose a tag to compare

Fixes broken installation of subpackages in version 1.9.

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.