KieranWynn / pyquaternion

A fully featured, pythonic library for representing and using quaternions
http://kieranwynn.github.io/pyquaternion/
MIT License
339 stars 68 forks source link

Remove implicit normalisation #47

Open KieranWynn opened 4 years ago

KieranWynn commented 4 years ago

Resolves https://github.com/KieranWynn/pyquaternion/issues/39

Remove as many calls as possible to Quaternion._normalise() and Quaternion._fast_normalise() as these mutate the object and cause implicit side effects.

Updated docs to encourage the use of Quaternion.normalised and Quaternion.fast_normalised properties instead.

There is a notable breaking change here; the integrate() method whos previous interface assumes that the underlying object is mutated. This has been changed to return a new Quaternion object rather than mutating to avoid side effects. Docs have been updated.

Because this involves breaking changes, the targeted version will be 1.0