Skip to content

Matrix3.rotationY provides incorrect matrix #261

Description

@bluebaloon

For pi/2 it gives result of
[0 0 -1]
[0 1 0]
[1 0 0]
which is incorrect.
It should be
[0 0 1]
[0 1 0]
[-1 0 0]
Rows are written in place of columns (like transpose).
Code should be corrected as given below.
/// Turns the matrix into a rotation of [radians] around Y
void setRotationY(double radians) {
final c = math.cos(radians);
final s = math.sin(radians);
_m3storage[0] = c;
_m3storage[1] = 0.0;
_m3storage[2] = -s;
_m3storage[3] = 0.0;
_m3storage[4] = 1.0;
_m3storage[5] = 0.0;
_m3storage[6] = s;
_m3storage[7] = 0.0;
_m3storage[8] = c;
}

Please check.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions