Configuration.iter_differences
- Configuration.iter_differences(other)[source]
Generator over the differences to another Configuration’s joint_values.
If the joint type is revolute or continuous, the smaller difference (+/- 2*:math:pi) is calculated.
- Parameters:
- other
Configuration
The configuration to compare to.
- other
- Yields:
- float
The next difference to the Configuration’s joint_values.
- Raises:
- ValueError
If the configurations are not comparable.
Examples
>>> from compas.geometry import allclose >>> c1 = Configuration.from_revolute_values([1, 0, 3]) >>> c2 = Configuration.from_revolute_values([1, 2 * pi, 4]) >>> allclose(c1.iter_differences(c2), [0.0, 0.0, -1.0]) True >>> c1 = Configuration.from_revolute_values([1, 0, 3]) >>> c2 = Configuration.from_revolute_values([1, -2 * pi - 0.2, 4]) >>> allclose(c1.iter_differences(c2), [0.0, 0.2, -1.0]) True