UNPKG

rc-js-util

Version:

A collection of TS and C++ utilities to help writing performant and correct applications, achieved through strict typing and (removable) invariant checking.

110 lines 3.15 kB
import { ATypedArrayTuple } from "../a-typed-array-tuple.js"; import { getMat3Ctor } from "./get-mat3-ctor.js"; import { populateTypedArrayConstructorMap } from "../../../runtime/rtti-interop.js"; /** * @public * Row major 3x3 matrix. * * @remarks * See static properties for constructors. Instances are not an extension of this class, but of the static members. */ export class Mat3 extends ATypedArrayTuple { static getCtor(ctor) { return Mat3.constructors.get(ctor); } /** * Component-wise equals. */ isEqualTo(_other) { throw new Error(); } setIdentityMatrix() { throw new Error(); } getValueAt(_column, _row) { throw new Error(); } setValueAt(_column, _row, _value) { throw new Error(); } getRow(_row, _writeTo) { throw new Error(); } setRow(_row, _writeFrom) { throw new Error(); } /** * counter clockwise, in radians */ setRotationMatrix(_angle) { throw new Error(); } setScalingMatrix(_scalingFactorX, _scalingFactorY) { throw new Error(); } setTranslationMatrix(_translationX, _translationY) { throw new Error(); } scalarMultiply(_value, _result) { throw new Error(); } scalarAdd(_value, _result) { throw new Error(); } multiplyMat3(_mat, _result) { throw new Error(); } getVec3MultiplyX(_x) { throw new Error(); } getVec3MultiplyY(_y) { throw new Error(); } /** * Apply this transform as if it were x in a vec3 to both min and max, return the difference. */ getTransformedXLength(_min, _max) { throw new Error(); } /** * Apply this transform as if it were y in a vec3 to both min and max, return the difference. */ getTransformedYLength(_min, _max) { throw new Error(); } getLoggableValue() { throw new Error(); } /** * If endianness is not supplied the platform's endianness will be used. */ copyFromBuffer(_memoryDataView, _pointer, _littleEndian) { throw new Error(); } /** * If endianness is not supplied the platform's endianness will be used. */ copyToBuffer(_memoryDataView, _pointer, _littleEndian) { throw new Error(); } /** * Although the typed array tuples extend a typed array, they are not structurally compatible. * This function returns the argument passed without modification but cast as the underlying storage type, e.g. Float32Array. */ castToBaseType() { throw new Error(); } } Mat3.f64 = getMat3Ctor(Float64Array); Mat3.f32 = getMat3Ctor(Float32Array); Mat3.i64 = null; // not supported Mat3.u64 = null; // not supported Mat3.u32 = getMat3Ctor(Uint32Array); Mat3.i32 = getMat3Ctor(Int32Array); Mat3.u16 = getMat3Ctor(Uint16Array); Mat3.i16 = getMat3Ctor(Int16Array); Mat3.u8c = getMat3Ctor(Uint8ClampedArray); Mat3.u8 = getMat3Ctor(Uint8Array); Mat3.i8 = getMat3Ctor(Int8Array); Mat3.constructors = populateTypedArrayConstructorMap(Mat3); //# sourceMappingURL=mat3.js.map