A 2x2 matrix, indexable as a column-major order array.
Constructor parameters are in row-major order for code readability.
    
| Name | Type | Default | Description | 
|---|---|---|---|
| column0Row0 | number | 0.0 | optional The value for column 0, row 0. | 
| column1Row0 | number | 0.0 | optional The value for column 1, row 0. | 
| column0Row1 | number | 0.0 | optional The value for column 0, row 1. | 
| column1Row1 | number | 0.0 | optional The value for column 1, row 1. | 
Members
    Gets the number of items in the collection.
    The index into Matrix2 for column 0, row 0.
Example:
const matrix = new Cesium.Matrix2();
matrix[Cesium.Matrix2.COLUMN0ROW0] = 5.0; // set column 0, row 0 to 5.0
    The index into Matrix2 for column 0, row 1.
Example:
const matrix = new Cesium.Matrix2();
matrix[Cesium.Matrix2.COLUMN0ROW1] = 5.0; // set column 0, row 1 to 5.0
    The index into Matrix2 for column 1, row 0.
Example:
const matrix = new Cesium.Matrix2();
matrix[Cesium.Matrix2.COLUMN1ROW0] = 5.0; // set column 1, row 0 to 5.0
    The index into Matrix2 for column 1, row 1.
Example:
const matrix = new Cesium.Matrix2();
matrix[Cesium.Matrix2.COLUMN1ROW1] = 5.0; // set column 1, row 1 to 5.0static constant Cesium.Matrix2.IDENTITY : Matrix2
    An immutable Matrix2 instance initialized to the identity matrix.
    The number of elements used to pack the object into an array.
static constant Cesium.Matrix2.ZERO : Matrix2
    An immutable Matrix2 instance initialized to the zero matrix.
Methods
clone(result) → Matrix2
    Duplicates the provided Matrix2 instance.
    
| Name | Type | Description | 
|---|---|---|
| result | Matrix2 | optional The object onto which to store the result. | 
Returns:
    The modified result parameter or a new Matrix2 instance if one was not provided.
    
    Compares this matrix to the provided matrix componentwise and returns
    
true if they are equal, false otherwise.
| Name | Type | Description | 
|---|---|---|
| right | Matrix2 | optional The right hand side matrix. | 
Returns:
true if they are equal, false otherwise.
    Compares this matrix to the provided matrix componentwise and returns
    
true if they are within the provided epsilon,
false otherwise.
| Name | Type | Default | Description | 
|---|---|---|---|
| right | Matrix2 | optional The right hand side matrix. | |
| epsilon | number | 0 | optional The epsilon to use for equality testing. | 
Returns:
true if they are within the provided epsilon, false otherwise.
    Creates a string representing this Matrix with each row being
on a separate line and in the format '(column0, column1)'.
Returns:
    A string representing the provided Matrix with each row being on a separate line and in the format '(column0, column1)'.
    
static Cesium.Matrix2.abs(matrix, result) → Matrix2
    Computes a matrix, which contains the absolute (unsigned) values of the provided matrix's elements.
    
| Name | Type | Description | 
|---|---|---|
| matrix | Matrix2 | The matrix with signed elements. | 
| result | Matrix2 | The object onto which to store the result. | 
Returns:
    The modified result parameter.
    
static Cesium.Matrix2.add(left, right, result) → Matrix2
    Computes the sum of two matrices.
    
| Name | Type | Description | 
|---|---|---|
| left | Matrix2 | The first matrix. | 
| right | Matrix2 | The second matrix. | 
| result | Matrix2 | The object onto which to store the result. | 
Returns:
    The modified result parameter.
    
static Cesium.Matrix2.clone(matrix, result) → Matrix2
    Duplicates a Matrix2 instance.
    
| Name | Type | Description | 
|---|---|---|
| matrix | Matrix2 | The matrix to duplicate. | 
| result | Matrix2 | optional The object onto which to store the result. | 
Returns:
    The modified result parameter or a new Matrix2 instance if one was not provided. (Returns undefined if matrix is undefined)
    
    Compares the provided matrices componentwise and returns
    
true if they are equal, false otherwise.
| Name | Type | Description | 
|---|---|---|
| left | Matrix2 | optional The first matrix. | 
| right | Matrix2 | optional The second matrix. | 
Returns:
true if left and right are equal, false otherwise.
    Compares the provided matrices componentwise and returns
    
true if they are within the provided epsilon,
false otherwise.
| Name | Type | Default | Description | 
|---|---|---|---|
| left | Matrix2 | optional The first matrix. | |
| right | Matrix2 | optional The second matrix. | |
| epsilon | number | 0 | optional The epsilon to use for equality testing. | 
Returns:
true if left and right are within the provided epsilon, false otherwise.
static Cesium.Matrix2.fromArray(array, startingIndex, result) → Matrix2
    Creates a Matrix2 from 4 consecutive elements in an array.
    
| Name | Type | Default | Description | 
|---|---|---|---|
| array | Array.<number> | The array whose 4 consecutive elements correspond to the positions of the matrix. Assumes column-major order. | |
| startingIndex | number | 0 | optional The offset into the array of the first element, which corresponds to first column first row position in the matrix. | 
| result | Matrix2 | optional The object onto which to store the result. | 
Returns:
    The modified result parameter or a new Matrix2 instance if one was not provided.
    
Example:
// Create the Matrix2:
// [1.0, 2.0]
// [1.0, 2.0]
const v = [1.0, 1.0, 2.0, 2.0];
const m = Cesium.Matrix2.fromArray(v);
// Create same Matrix2 with using an offset into an array
const v2 = [0.0, 0.0, 1.0, 1.0, 2.0, 2.0];
const m2 = Cesium.Matrix2.fromArray(v2, 2);static Cesium.Matrix2.fromColumnMajorArray(values, result) → Matrix2
    Creates a Matrix2 instance from a column-major order array.
    
| Name | Type | Description | 
|---|---|---|
| values | Array.<number> | The column-major order array. | 
| result | Matrix2 | optional The object in which the result will be stored, if undefined a new instance will be created. | 
Returns:
    The modified result parameter, or a new Matrix2 instance if one was not provided.
    
static Cesium.Matrix2.fromRotation(angle, result) → Matrix2
    Creates a rotation matrix.
    
| Name | Type | Description | 
|---|---|---|
| angle | number | The angle, in radians, of the rotation. Positive angles are counterclockwise. | 
| result | Matrix2 | optional The object in which the result will be stored, if undefined a new instance will be created. | 
Returns:
    The modified result parameter, or a new Matrix2 instance if one was not provided.
    
Example:
// Rotate a point 45 degrees counterclockwise.
const p = new Cesium.Cartesian2(5, 6);
const m = Cesium.Matrix2.fromRotation(Cesium.Math.toRadians(45.0));
const rotated = Cesium.Matrix2.multiplyByVector(m, p, new Cesium.Cartesian2());static Cesium.Matrix2.fromRowMajorArray(values, result) → Matrix2
    Creates a Matrix2 instance from a row-major order array.
The resulting matrix will be in column-major order.
    
| Name | Type | Description | 
|---|---|---|
| values | Array.<number> | The row-major order array. | 
| result | Matrix2 | optional The object in which the result will be stored, if undefined a new instance will be created. | 
Returns:
    The modified result parameter, or a new Matrix2 instance if one was not provided.
    
static Cesium.Matrix2.fromScale(scale, result) → Matrix2
    Computes a Matrix2 instance representing a non-uniform scale.
    
| Name | Type | Description | 
|---|---|---|
| scale | Cartesian2 | The x and y scale factors. | 
| result | Matrix2 | optional The object in which the result will be stored, if undefined a new instance will be created. | 
Returns:
    The modified result parameter, or a new Matrix2 instance if one was not provided.
    
Example:
// Creates
//   [7.0, 0.0]
//   [0.0, 8.0]
const m = Cesium.Matrix2.fromScale(new Cesium.Cartesian2(7.0, 8.0));static Cesium.Matrix2.fromUniformScale(scale, result) → Matrix2
    Computes a Matrix2 instance representing a uniform scale.
    
| Name | Type | Description | 
|---|---|---|
| scale | number | The uniform scale factor. | 
| result | Matrix2 | optional The object in which the result will be stored, if undefined a new instance will be created. | 
Returns:
    The modified result parameter, or a new Matrix2 instance if one was not provided.
    
Example:
// Creates
//   [2.0, 0.0]
//   [0.0, 2.0]
const m = Cesium.Matrix2.fromUniformScale(2.0);static Cesium.Matrix2.getColumn(matrix, index, result) → Cartesian2
    Retrieves a copy of the matrix column at the provided index as a Cartesian2 instance.
    
| Name | Type | Description | 
|---|---|---|
| matrix | Matrix2 | The matrix to use. | 
| index | number | The zero-based index of the column to retrieve. | 
| result | Cartesian2 | The object onto which to store the result. | 
Returns:
    The modified result parameter.
    
Throws:
- 
    DeveloperError : index must be 0 or 1.
    Computes the array index of the element at the provided row and column.
    
| Name | Type | Description | 
|---|---|---|
| row | number | The zero-based index of the row. | 
| column | number | The zero-based index of the column. | 
Returns:
    The index of the element at the provided row and column.
    
Throws:
- 
    DeveloperError : row must be 0 or 1.
- 
    DeveloperError : column must be 0 or 1.
Example:
const myMatrix = new Cesium.Matrix2();
const column1Row0Index = Cesium.Matrix2.getElementIndex(1, 0);
const column1Row0 = myMatrix[column1Row0Index]
myMatrix[column1Row0Index] = 10.0;
    Computes the maximum scale assuming the matrix is an affine transformation.
The maximum scale is the maximum length of the column vectors.
    
| Name | Type | Description | 
|---|---|---|
| matrix | Matrix2 | The matrix. | 
Returns:
    The maximum scale.
    
static Cesium.Matrix2.getRotation(matrix, result) → Matrix2
    Extracts the rotation matrix assuming the matrix is an affine transformation.
    
| Name | Type | Description | 
|---|---|---|
| matrix | Matrix2 | The matrix. | 
| result | Matrix2 | The object onto which to store the result. | 
Returns:
    The modified result parameter.
    
        
            
    static Cesium.Matrix2.getRow(matrix, index, result) → Cartesian2
    Retrieves a copy of the matrix row at the provided index as a Cartesian2 instance.
    
| Name | Type | Description | 
|---|---|---|
| matrix | Matrix2 | The matrix to use. | 
| index | number | The zero-based index of the row to retrieve. | 
| result | Cartesian2 | The object onto which to store the result. | 
Returns:
    The modified result parameter.
    
Throws:
- 
    DeveloperError : index must be 0 or 1.
static Cesium.Matrix2.getScale(matrix, result) → Cartesian2
    Extracts the non-uniform scale assuming the matrix is an affine transformation.
    
| Name | Type | Description | 
|---|---|---|
| matrix | Matrix2 | The matrix. | 
| result | Cartesian2 | The object onto which to store the result. | 
Returns:
    The modified result parameter.
    
See:
static Cesium.Matrix2.multiply(left, right, result) → Matrix2
    Computes the product of two matrices.
    
| Name | Type | Description | 
|---|---|---|
| left | Matrix2 | The first matrix. | 
| right | Matrix2 | The second matrix. | 
| result | Matrix2 | The object onto which to store the result. | 
Returns:
    The modified result parameter.
    
static Cesium.Matrix2.multiplyByScalar(matrix, scalar, result) → Matrix2
    Computes the product of a matrix and a scalar.
    
| Name | Type | Description | 
|---|---|---|
| matrix | Matrix2 | The matrix. | 
| scalar | number | The number to multiply by. | 
| result | Matrix2 | The object onto which to store the result. | 
Returns:
    The modified result parameter.
    
static Cesium.Matrix2.multiplyByScale(matrix, scale, result) → Matrix2
    Computes the product of a matrix times a (non-uniform) scale, as if the scale were a scale matrix.
    
| Name | Type | Description | 
|---|---|---|
| matrix | Matrix2 | The matrix on the left-hand side. | 
| scale | Cartesian2 | The non-uniform scale on the right-hand side. | 
| result | Matrix2 | The object onto which to store the result. | 
Returns:
    The modified result parameter.
    
Example:
// Instead of Cesium.Matrix2.multiply(m, Cesium.Matrix2.fromScale(scale), m);
Cesium.Matrix2.multiplyByScale(m, scale, m);See:
static Cesium.Matrix2.multiplyByUniformScale(matrix, scale, result) → Matrix2
    Computes the product of a matrix times a uniform scale, as if the scale were a scale matrix.
    
| Name | Type | Description | 
|---|---|---|
| matrix | Matrix2 | The matrix on the left-hand side. | 
| scale | number | The uniform scale on the right-hand side. | 
| result | Matrix2 | The object onto which to store the result. | 
Returns:
    The modified result parameter.
    
Example:
// Instead of Cesium.Matrix2.multiply(m, Cesium.Matrix2.fromUniformScale(scale), m);
Cesium.Matrix2.multiplyByUniformScale(m, scale, m);See:
static Cesium.Matrix2.multiplyByVector(matrix, cartesian, result) → Cartesian2
    Computes the product of a matrix and a column vector.
    
| Name | Type | Description | 
|---|---|---|
| matrix | Matrix2 | The matrix. | 
| cartesian | Cartesian2 | The column. | 
| result | Cartesian2 | The object onto which to store the result. | 
Returns:
    The modified result parameter.
    
static Cesium.Matrix2.negate(matrix, result) → Matrix2
    Creates a negated copy of the provided matrix.
    
| Name | Type | Description | 
|---|---|---|
| matrix | Matrix2 | The matrix to negate. | 
| result | Matrix2 | The object onto which to store the result. | 
Returns:
    The modified result parameter.
    
    Stores the provided instance into the provided array.
    
| Name | Type | Default | Description | 
|---|---|---|---|
| value | Matrix2 | The value to pack. | |
| array | Array.<number> | The array to pack into. | |
| startingIndex | number | 0 | optional The index into the array at which to start packing the elements. | 
Returns:
    The array that was packed into
    
    Flattens an array of Matrix2s into an array of components. The components
are stored in column-major order.
    
| Name | Type | Description | 
|---|---|---|
| array | Array.<Matrix2> | The array of matrices to pack. | 
| result | Array.<number> | optional
                
                
                
            
                The array onto which to store the result. If this is a typed array, it must have array.length * 4 components, else a DeveloperErrorwill be thrown. If it is a regular array, it will be resized to have (array.length * 4) elements. | 
Returns:
    The packed array.
    
static Cesium.Matrix2.setColumn(matrix, index, cartesian, result) → Matrix2
    Computes a new matrix that replaces the specified column in the provided matrix with the provided Cartesian2 instance.
    
| Name | Type | Description | 
|---|---|---|
| matrix | Matrix2 | The matrix to use. | 
| index | number | The zero-based index of the column to set. | 
| cartesian | Cartesian2 | The Cartesian whose values will be assigned to the specified column. | 
| result | Cartesian2 | The object onto which to store the result. | 
Returns:
    The modified result parameter.
    
Throws:
- 
    DeveloperError : index must be 0 or 1.
static Cesium.Matrix2.setRotation(matrix, rotation, result) → Matrix2
    Sets the rotation assuming the matrix is an affine transformation.
    
| Name | Type | Description | 
|---|---|---|
| matrix | Matrix2 | The matrix. | 
| rotation | Matrix2 | The rotation matrix. | 
| result | Matrix2 | The object onto which to store the result. | 
Returns:
    The modified result parameter.
    
        
            
    static Cesium.Matrix2.setRow(matrix, index, cartesian, result) → Matrix2
    Computes a new matrix that replaces the specified row in the provided matrix with the provided Cartesian2 instance.
    
| Name | Type | Description | 
|---|---|---|
| matrix | Matrix2 | The matrix to use. | 
| index | number | The zero-based index of the row to set. | 
| cartesian | Cartesian2 | The Cartesian whose values will be assigned to the specified row. | 
| result | Matrix2 | The object onto which to store the result. | 
Returns:
    The modified result parameter.
    
Throws:
- 
    DeveloperError : index must be 0 or 1.
static Cesium.Matrix2.setScale(matrix, scale, result) → Matrix2
    Computes a new matrix that replaces the scale with the provided scale.
This assumes the matrix is an affine transformation.
    
| Name | Type | Description | 
|---|---|---|
| matrix | Matrix2 | The matrix to use. | 
| scale | Cartesian2 | The scale that replaces the scale of the provided matrix. | 
| result | Matrix2 | The object onto which to store the result. | 
Returns:
    The modified result parameter.
    
See:
static Cesium.Matrix2.setUniformScale(matrix, scale, result) → Matrix2
    Computes a new matrix that replaces the scale with the provided uniform scale.
This assumes the matrix is an affine transformation.
    
| Name | Type | Description | 
|---|---|---|
| matrix | Matrix2 | The matrix to use. | 
| scale | number | The uniform scale that replaces the scale of the provided matrix. | 
| result | Matrix2 | The object onto which to store the result. | 
Returns:
    The modified result parameter.
    
See:
static Cesium.Matrix2.subtract(left, right, result) → Matrix2
    Computes the difference of two matrices.
    
| Name | Type | Description | 
|---|---|---|
| left | Matrix2 | The first matrix. | 
| right | Matrix2 | The second matrix. | 
| result | Matrix2 | The object onto which to store the result. | 
Returns:
    The modified result parameter.
    
    Creates an Array from the provided Matrix2 instance.
The array will be in column-major order.
    
| Name | Type | Description | 
|---|---|---|
| matrix | Matrix2 | The matrix to use.. | 
| result | Array.<number> | optional The Array onto which to store the result. | 
Returns:
    The modified Array parameter or a new Array instance if one was not provided.
    
static Cesium.Matrix2.transpose(matrix, result) → Matrix2
    Computes the transpose of the provided matrix.
    
| Name | Type | Description | 
|---|---|---|
| matrix | Matrix2 | The matrix to transpose. | 
| result | Matrix2 | The object onto which to store the result. | 
Returns:
    The modified result parameter.
    
static Cesium.Matrix2.unpack(array, startingIndex, result) → Matrix2
    Retrieves an instance from a packed array.
    
| Name | Type | Default | Description | 
|---|---|---|---|
| array | Array.<number> | The packed array. | |
| startingIndex | number | 0 | optional The starting index of the element to be unpacked. | 
| result | Matrix2 | optional The object into which to store the result. | 
Returns:
    The modified result parameter or a new Matrix2 instance if one was not provided.
    
static Cesium.Matrix2.unpackArray(array, result) → Array.<Matrix2>
    Unpacks an array of column-major matrix components into an array of Matrix2s.
    
| Name | Type | Description | 
|---|---|---|
| array | Array.<number> | The array of components to unpack. | 
| result | Array.<Matrix2> | optional The array onto which to store the result. | 
Returns:
    The unpacked array.
    
