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.- 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