flo_render_canvas/matrix.rs
1use flo_canvas as canvas;
2use flo_render as render;
3
4///
5/// Converts a canvas transform to a rendering matrix
6///
7pub fn transform_to_matrix(transform: &canvas::Transform2D) -> render::Matrix {
8    let canvas::Transform2D(t) = transform;
9
10    render::Matrix([
11        [t[0][0], t[0][1], 0.0, t[0][2]],
12        [t[1][0], t[1][1], 0.0, t[1][2]],
13        [t[2][0], t[2][1], 1.0, t[2][2]],
14        [0.0,     0.0,     0.0, 1.0]
15    ])
16}