mirror of
https://github.com/PhotonVision/photonvision
synced 2026-06-19 00:41:41 +00:00
## Description Fixed a bug where rotated camera distortion coefficient arrays and rotated camera intrensic arrays were 8x bigger than they were supposed to be. The root cause was because of how the data from JsonMatOfDouble was being handled. A Mat was pulled out, then modified, then a new JsonMatOfDouble was made from the Mat. This required a conversion from a Mat to a Java array. The array was incorrectly sized as `elements * bytes`, when it should've just been `elements`. Due to some uncertainty as to the types of Mats passed into JsonMatOfDouble.fromMat, the expected Mat type has been explicitly documented. The added regression test rotates the calibration data 4 times, equivalent to not rotating at all. This should mean the arrays are equal, and that is what we check. Additionally fixes a bug when rotating 180 degrees that flipped width and height ## Meta Merge checklist: - [x] Pull Request title is [short, imperative summary](https://cbea.ms/git-commit/) of proposed changes - [x] The description documents the _what_ and _why_ - [ ] If this PR changes behavior or adds a feature, user documentation is updated - [ ] If this PR touches photon-serde, all messages have been regenerated and hashes have not changed unexpectedly - [ ] If this PR touches configuration, this is backwards compatible with settings back to v2024.3.1 - [x] If this PR addresses a bug, a regression test for it is added --------- Co-authored-by: Matt <matthew.morley.ca@gmail.com>