matrix_rotate_arbitrary_axis
Library to generate rotation matrix around arbitrary axis.
Original implementation of RotationMatrix
class (matrix_rotate_arbitrary_axis.dart
) by Glenn Murray.
Null-safety enabled.
Usage
If you want to apply rotation matrix to canvas in Flutter you can just call:
// Build a rotation matrix for rotations about the line through (a, b, c)
// parallel to [uUn, vUn, wUn] by the angle theta.
final rotationMatrix = RotationMatrix(a, b, c, uUn, vUn, wUn, angleInRadians);
final matrix = rotationMatrix.matrix;
canvas.transform(matrix2);
The parameters are:
a
x-coordinate of a point on the line of rotation.b
y-coordinate of a point on the line of rotation.c
z-coordinate of a point on the line of rotation.uUn
x-coordinate of the line's direction vector (unnormalized).vUn
y-coordinate of the line's direction vector (unnormalized).wUn
z-coordinate of the line's direction vector (unnormalized).theta
The angle of rotation, in radians.
Example
See example in the example
folder
Tests
To run tests:
dart --enable-experiment=non-nullable pub get
dart --enable-experiment=non-nullable pub run test