Loading CHANGELOG.md +1 −0 Original line number Diff line number Diff line Loading @@ -58,6 +58,7 @@ release. - Fixed incorrect distortion look up in Orex camera when working with PolyCam images [#583](https://github.com/DOI-USGS/ale/pull/583) - Brought timing in line with ISIS for the KaguyaMiIsisLabelNaifSpiceDriver [#599](https://github.com/DOI-USGS/ale/pull/599) - Brought timing in line with ISIS for the MroMarciIsisLabelNaifSpiceDriver [#600](https://github.com/DOI-USGS/ale/pull/600) - Fixed a bug in which quaternions would flip sign in a way that caused interpolation errors [#603](https://github.com/DOI-USGS/ale/issues/603) ## [0.10.0] - 2024-01-08 Loading ale/rotation.py +21 −1 Original line number Diff line number Diff line Loading @@ -196,7 +196,27 @@ class TimeDependentRotation: the destination reference frame. The quaternions are in scalar last format (x, y, z, w). """ return self._rots.as_quat() quats = self._rots.as_quat() # First find the largest magnitude quaternion coefficient and its coordinate num_quats = len(quats) max_q = 0.0 max_j = 0 for i in range(num_quats): for j in range(4): if abs(quats[i][j]) > abs(max_q): max_q = quats[i][j] max_j = j # Ensure the signs are consistent qcnt = 0 for i in range(num_quats): if quats[i][max_j] * max_q < 0: qcnt = qcnt + 1 for j in range(4): quats[i][j] *= -1.0 return quats @quats.setter def quats(self, new_quats): Loading tests/pytests/data/isds/dawnvir_isd.json +4 −4 Original line number Diff line number Diff line Loading @@ -339,10 +339,10 @@ ], "quaternions": [ [ -0.08339426680875163, 0.2825790922154143, -0.2899354389711647, 0.9105667982826637 0.08339426680875163, -0.2825790922154143, 0.2899354389711647, -0.9105667982826637 ], [ -0.05753008804150366, Loading Loading
CHANGELOG.md +1 −0 Original line number Diff line number Diff line Loading @@ -58,6 +58,7 @@ release. - Fixed incorrect distortion look up in Orex camera when working with PolyCam images [#583](https://github.com/DOI-USGS/ale/pull/583) - Brought timing in line with ISIS for the KaguyaMiIsisLabelNaifSpiceDriver [#599](https://github.com/DOI-USGS/ale/pull/599) - Brought timing in line with ISIS for the MroMarciIsisLabelNaifSpiceDriver [#600](https://github.com/DOI-USGS/ale/pull/600) - Fixed a bug in which quaternions would flip sign in a way that caused interpolation errors [#603](https://github.com/DOI-USGS/ale/issues/603) ## [0.10.0] - 2024-01-08 Loading
ale/rotation.py +21 −1 Original line number Diff line number Diff line Loading @@ -196,7 +196,27 @@ class TimeDependentRotation: the destination reference frame. The quaternions are in scalar last format (x, y, z, w). """ return self._rots.as_quat() quats = self._rots.as_quat() # First find the largest magnitude quaternion coefficient and its coordinate num_quats = len(quats) max_q = 0.0 max_j = 0 for i in range(num_quats): for j in range(4): if abs(quats[i][j]) > abs(max_q): max_q = quats[i][j] max_j = j # Ensure the signs are consistent qcnt = 0 for i in range(num_quats): if quats[i][max_j] * max_q < 0: qcnt = qcnt + 1 for j in range(4): quats[i][j] *= -1.0 return quats @quats.setter def quats(self, new_quats): Loading
tests/pytests/data/isds/dawnvir_isd.json +4 −4 Original line number Diff line number Diff line Loading @@ -339,10 +339,10 @@ ], "quaternions": [ [ -0.08339426680875163, 0.2825790922154143, -0.2899354389711647, 0.9105667982826637 0.08339426680875163, -0.2825790922154143, 0.2899354389711647, -0.9105667982826637 ], [ -0.05753008804150366, Loading