Caltech-IPAC / kete

Kete Solar System Survey tools
https://Caltech-IPAC.github.io/kete
BSD 3-Clause "New" or "Revised" License
12 stars 1 forks source link

Rust Vector3 should be Point3 where appropriate #29

Closed dahlend closed 5 months ago

dahlend commented 5 months ago

NAlgebra library makes a distinction between a Vector and a Point. Where a Vector is a direction and a point is a point in space. These are both representations containing 3 numbers defining them. Currently the code uses Vector3 essentially everywhere to represent both a Point and Vector. This should be changed for conceptual clarity.

This results in no functional change, but makes type reasoning easier when thinking about the pointing vector of a FOV vs the position of an object.

dahlend commented 5 months ago

This is not actually helpful, as the Point structs dont have many of the methods which are required, such as norm or angle. These objects will remain Vectors.