Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Bivector and Rotor #33

Open
wants to merge 1 commit into
base: master
Choose a base branch
from
Open

Bivector and Rotor #33

wants to merge 1 commit into from

Conversation

kvark
Copy link
Owner

@kvark kvark commented Nov 3, 2018

Fixes #32

There is a few issues I'd like us to resolve before we settle on something:

  1. dimensionality: does it make sense to have Bivector3 instead of Bivector here, and similarly for Rotor?
    • there is hardly any use for other dimensions, hence I think we can avoid the number suffixes
  2. notation: is xy/xz/yz the only used notation for bi-vectors? How should rotor fields be called? The current "s" and "b" are just random, basically.
  3. consistency with quaternions: does anything need to be done about the fact that the vector part of a quaternion has the type of Vector3? It isn't really a vector, much closer to bi-vector, in which case people just need to use Rotor anyway. Perhaps, the Quaternion type shouldn't be written in the vector form at all to avoid confusion.

@kvark
Copy link
Owner Author

kvark commented Nov 3, 2018

r? @nical @Ralith

@Ralith
Copy link
Contributor

Ralith commented Nov 3, 2018

does it make sense to have Bivector3 instead of Bivector here, and similarly for Rotor?

There's definitely a case for a Rotor2: 2D rotations that have singular representations and well-defined precision are nice. nalgebra already has the very similar UnitComplex type for this exact reason.

I'm less sure of the usefulness of a Bivector2. If mint might ever support dimensionalities > 3, consistency wouldn't hurt.

consistency with quaternions

I'm not sure what "much closer to" means. It does seem like it might have been best to define quaternions with s/i/j/k members. Not sure that's worth breaking compatibility.

@aloucks
Copy link
Contributor

aloucks commented Apr 13, 2020

Can we put the scalar at the end of Rotor to match the updated Quaternion

Related: #50

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Bivectors and Rotors
3 participants