9 #include "impeller/scene/importer/scene_flatbuffers.h"
16 return Matrix(m[0], m[1], m[2], m[3],
17 m[4], m[5], m[6], m[7],
18 m[8], m[9], m[10], m[11],
19 m[12], m[13], m[14], m[15]);
28 return Matrix(a[0], a[1], a[2], a[3],
29 a[4], a[5], a[6], a[7],
30 a[8], a[9], a[10], a[11],
31 a[12], a[13], a[14], a[15]);
39 return Vector3(v.x(), v.y(), v.z());
43 return Vector4(v.x(), v.y(), v.z(), v.w());
47 return Color(c.r(), c.g(), c.b(), c.a());
55 auto array = std::array<Scalar, 16>{m.
m[0], m.
m[1], m.
m[2], m.
m[3],
56 m.
m[4], m.
m[5], m.
m[6], m.
m[7],
57 m.
m[8], m.
m[9], m.
m[10], m.
m[11],
58 m.
m[12], m.
m[13], m.
m[14], m.
m[15]};
59 return fb::Matrix(array);
63 auto array = std::array<Scalar, 16>{m.
m[0], m.
m[1], m.
m[2], m.
m[3],
64 m.
m[4], m.
m[5], m.
m[6], m.
m[7],
65 m.
m[8], m.
m[9], m.
m[10], m.
m[11],
66 m.
m[12], m.
m[13], m.
m[14], m.
m[15]};
67 return std::make_unique<fb::Matrix>(array);
71 return fb::Vec2(v.
x, v.
y);
75 return fb::Vec3(v.
x, v.
y, v.
z);
79 return fb::Vec4(v.
x, v.
y, v.
z, v.
w);
86 std::unique_ptr<fb::Color>
ToFBColor(
const std::vector<double>& c) {
87 auto* color =
new fb::Color(c.size() > 0 ? c[0] : 1,
88 c.size() > 1 ? c[1] : 1,
89 c.size() > 2 ? c[2] : 1,
90 c.size() > 3 ? c[3] : 1);
91 return std::unique_ptr<fb::Color>(color);