Closed eeberhard closed 1 year ago
Resolved by #309. The following usage rules now apply:
state_representation.CartesianPose("foo", "bar") # works, and is the intended usage
state_representation.CartesianPose(name="foo", reference_frame="bar") # also works
state_representation.CartesianPose(name="foo", reference="bar") # no longer works
This is a minor issue discovered by @buschbapti. In C++, the constructors of CartesianState and its derived classes take a string argument called "reference_frame". However, in the Python bindings for these classes, the argument name was shortened to just "reference". This leads to the following behavior:
Of course, the simple solution is to just treat these like the positional arguments that they are intended to be, instead of referring to them by name.
Still, for the sake of the docstrings and for consistency against the C++ API, the argument name should be updated. It's a small change in the source code, but would still constitute a breaking change for any places where the keyword argument
reference
was used in Python usage of CartesianState and derived classes.