// Generated by scripts/generate.mjs from bindings/api.mjs. Do not edit.
///|
#external
pub type Matrix3
///|
#module("@mizchi/three-mbt/constructors")
pub extern "js" fn Matrix3::Matrix3() -> Matrix3 = "matrix3"
///|
pub extern "js" fn Matrix3::clone(self : Matrix3) -> Matrix3 =
#| (self) => self.clone()
///|
pub extern "js" fn Matrix3::copy(self : Matrix3, other : Matrix3) -> Matrix3 =
#| (self, other) => self.copy(other)
///|
pub extern "js" fn Matrix3::identity(self : Matrix3) -> Matrix3 =
#| (self) => self.identity()
///|
pub extern "js" fn Matrix3::invert(self : Matrix3) -> Matrix3 =
#| (self) => self.invert()
///|
pub extern "js" fn Matrix3::transpose(self : Matrix3) -> Matrix3 =
#| (self) => self.transpose()
///|
pub extern "js" fn Matrix3::multiply(
self : Matrix3,
other : Matrix3,
) -> Matrix3 =
#| (self, other) => self.multiply(other)
///|
pub extern "js" fn Matrix3::premultiply(
self : Matrix3,
other : Matrix3,
) -> Matrix3 =
#| (self, other) => self.premultiply(other)
///|
pub extern "js" fn Matrix3::determinant(self : Matrix3) -> Double =
#| (self) => self.determinant()
///|
pub extern "js" fn Matrix3::get_normal_matrix(
self : Matrix3,
matrix : Matrix4,
) -> Matrix3 =
#| (self, matrix) => self.getNormalMatrix(matrix)
///|
pub extern "js" fn Matrix3::set_from_matrix4(
self : Matrix3,
matrix : Matrix4,
) -> Matrix3 =
#| (self, matrix) => self.setFromMatrix4(matrix)
///|
pub extern "js" fn Matrix3::elements(self : Matrix3) -> FixedArray[Double] =
#| (self) => self.elements.slice()
///|
pub extern "js" fn Matrix3::from_array(
self : Matrix3,
values : FixedArray[Double],
offset : Int,
) -> Matrix3 =
#| (self, values, offset) => self.fromArray(values, offset)
///|
pub extern "js" fn Matrix3::to_array(self : Matrix3) -> FixedArray[Double] =
#| (self) => self.toArray()
///|
pub extern "js" fn Matrix3::to_array_into(
self : Matrix3,
values : FixedArray[Double],
offset : Int,
) -> FixedArray[Double] =
#| (self, values, offset) => self.toArray(values, offset)
///|
pub extern "js" fn Matrix3::set(
self : Matrix3,
n11 : Double,
n12 : Double,
n13 : Double,
n21 : Double,
n22 : Double,
n23 : Double,
n31 : Double,
n32 : Double,
n33 : Double,
) -> Matrix3 =
#| (self, n11, n12, n13, n21, n22, n23, n31, n32, n33) => self.set(n11, n12, n13, n21, n22, n23, n31, n32, n33)
///|
pub extern "js" fn Matrix3::extract_basis(
self : Matrix3,
x_axis : Vector3,
y_axis : Vector3,
z_axis : Vector3,
) -> Matrix3 =
#| (self, x_axis, y_axis, z_axis) => self.extractBasis(x_axis, y_axis, z_axis)
///|
pub extern "js" fn Matrix3::multiply_matrices(
self : Matrix3,
a : Matrix3,
b : Matrix3,
) -> Matrix3 =
#| (self, a, b) => self.multiplyMatrices(a, b)
///|
pub extern "js" fn Matrix3::multiply_scalar(
self : Matrix3,
scale : Double,
) -> Matrix3 =
#| (self, scale) => self.multiplyScalar(scale)
///|
pub extern "js" fn Matrix3::equals(self : Matrix3, other : Matrix3) -> Bool =
#| (self, other) => self.equals(other)
///|
pub extern "js" fn Matrix3::transpose_into_array(
self : Matrix3,
values : FixedArray[Double],
) -> Matrix3 =
#| (self, values) => self.transposeIntoArray(values)
///|
pub extern "js" fn Matrix3::set_uv_transform(
self : Matrix3,
tx : Double,
ty : Double,
sx : Double,
sy : Double,
rotation : Double,
cx : Double,
cy : Double,
) -> Matrix3 =
#| (self, tx, ty, sx, sy, rotation, cx, cy) => self.setUvTransform(tx, ty, sx, sy, rotation, cx, cy)
///|
pub extern "js" fn Matrix3::scale(
self : Matrix3,
sx : Double,
sy : Double,
) -> Matrix3 =
#| (self, sx, sy) => self.scale(sx, sy)
///|
pub extern "js" fn Matrix3::rotate(self : Matrix3, angle : Double) -> Matrix3 =
#| (self, angle) => self.rotate(angle)
///|
pub extern "js" fn Matrix3::translate(
self : Matrix3,
tx : Double,
ty : Double,
) -> Matrix3 =
#| (self, tx, ty) => self.translate(tx, ty)
///|
pub extern "js" fn Matrix3::make_translation(
self : Matrix3,
x : Double,
y : Double,
) -> Matrix3 =
#| (self, x, y) => self.makeTranslation(x, y)
///|
pub extern "js" fn Matrix3::make_rotation(
self : Matrix3,
angle : Double,
) -> Matrix3 =
#| (self, angle) => self.makeRotation(angle)
///|
pub extern "js" fn Matrix3::make_scale(
self : Matrix3,
x : Double,
y : Double,
) -> Matrix3 =
#| (self, x, y) => self.makeScale(x, y)