# Uses of Interface
org.opengis.referencing.operation.Matrix

Packages that use Matrix
Package
Description
org.apache.sis.parameter
Descriptions and values of parameters used by a coordinate operation or a process.
org.apache.sis.referencing.cs
Coordinate System (CS) definitions as the set of coordinate system axes that spans the coordinate space.
org.apache.sis.referencing.datum
Relationship of a `CoordinateSystem` (an abstract mathematical entity) to the earth or other system.
org.apache.sis.referencing.operation.matrix
Matrix implementations for spatiotemporal referencing.
org.apache.sis.referencing.operation.transform
Conversions or transformations of multi-dimensional coordinate tuples.
org.opengis.referencing.operation
Coordinate operations (relationship between any two coordinate reference systems).

- ## Uses of Matrix in org.apache.sis.parameter

  Methods in org.apache.sis.parameter that return Matrix
  Modifier and Type
  Method
  Description
  `Matrix`
  MatrixParameters.`toMatrix(ParameterValueGroup parameters)`
  Constructs a matrix from a group of parameters.
  Methods in org.apache.sis.parameter with parameters of type Matrix
  Modifier and Type
  Method
  Description
  `ParameterValueGroup`
  MatrixParameters.`createValueGroup(Map<String,?> properties, Matrix matrix)`
  Creates a new instance of parameter group initialized to the given matrix.

- ## Uses of Matrix in org.apache.sis.referencing.cs

  Methods in org.apache.sis.referencing.cs that return Matrix
  Modifier and Type
  Method
  Description
  `static Matrix`
  CoordinateSystems.`swapAndScaleAxes(CoordinateSystem sourceCS, CoordinateSystem targetCS)`
  Returns an affine transform between two coordinate systems.

- ## Uses of Matrix in org.apache.sis.referencing.datum

  Methods in org.apache.sis.referencing.datum that return Matrix
  Modifier and Type
  Method
  Description
  `Matrix`
  DatumShiftGrid.`derivativeInCell(double gridX, double gridY)`
  Estimates the derivative at the given grid indices.
  `Matrix`
  BursaWolfParameters.`getPositionVectorTransformation(Temporal time)`
  Returns the position vector transformation (geocentric domain) as an affine transform.
  `Matrix`
  DefaultGeodeticDatum.`getPositionVectorTransformation(GeodeticDatum targetDatum, Extent areaOfInterest)`
  Returns the position vector transformation (geocentric domain) to the specified datum.
  Methods in org.apache.sis.referencing.datum with parameters of type Matrix
  Modifier and Type
  Method
  Description
  `void`
  BursaWolfParameters.`setPositionVectorTransformation(Matrix matrix, double tolerance)`
  Sets all Bursa-Wolf parameters from the given Position Vector transformation matrix.

- ## Uses of Matrix in org.apache.sis.referencing.operation.matrix

  Classes in org.apache.sis.referencing.operation.matrix that implement Matrix
  Modifier and Type
  Class
  Description
  `class`
  `Matrix1`
  A matrix of fixed 1×1 size, typically resulting from `MathTransform1D` derivative computation.
  `class`
  `Matrix2`
  A matrix of fixed 2×2 size, typically resulting from `MathTransform2D` derivative computation.
  `class`
  `Matrix3`
  A matrix of fixed 3×3 size.
  `class`
  `Matrix4`
  A matrix of fixed 4×4 size, often used in datum shifts.
  `class`
  `MatrixSIS`
  A `Matrix` able to perform some operations of interest to Spatial Information Systems (SIS).
  Methods in org.apache.sis.referencing.operation.matrix that return Matrix
  Modifier and Type
  Method
  Description
  `static Matrix`
  Matrices.`resizeAffine(Matrix matrix, int numRow, int numCol)`
  Returns a matrix with the same content as the given matrix but a different size, assuming an affine transform.
  Methods in org.apache.sis.referencing.operation.matrix with parameters of type Matrix
  Modifier and Type
  Method
  Description
  `static AffineTransform`
  AffineTransforms2D.`castOrCopy(Matrix matrix)`
  Returns the given matrix as a Java2D affine transform.
  `static Matrix1`
  Matrix1.`castOrCopy(Matrix matrix)`
  Casts or copies the given matrix to a `Matrix1` implementation.
  `static Matrix2`
  Matrix2.`castOrCopy(Matrix matrix)`
  Casts or copies the given matrix to a `Matrix2` implementation.
  `static Matrix3`
  Matrix3.`castOrCopy(Matrix matrix)`
  Casts or copies the given matrix to a `Matrix3` implementation.
  `static Matrix4`
  Matrix4.`castOrCopy(Matrix matrix)`
  Casts or copies the given matrix to a `Matrix4` implementation.
  `static MatrixSIS`
  MatrixSIS.`castOrCopy(Matrix matrix)`
  Casts or copies the given matrix to a SIS implementation.
  `static MatrixSIS`
  Matrices.`copy(Matrix matrix)`
  Creates a new matrix which is a modifiable copy of the given matrix.
  `static MatrixSIS`
  Matrices.`createAffine(Matrix derivative, DirectPosition translation)`
  Creates an affine transform as the given matrix augmented by the given translation vector and a [0 … 0 1] row.
  `static MatrixSIS`
  Matrices.`createPassThrough(int firstAffectedCoordinate, Matrix subMatrix, int numTrailingCoordinates)`
  Creates a matrix which converts a subset of coordinates using the transform given by another matrix.
  `static boolean`
  Matrices.`equals(Matrix m1, Matrix m2, double epsilon, boolean relative)`
  Compares the given matrices for equality, using the given relative or absolute tolerance threshold.
  `static boolean`
  Matrices.`equals(Matrix m1, Matrix m2, ComparisonMode mode)`
  Compares the given matrices for equality, using the given comparison strictness level.
  `boolean`
  MatrixSIS.`equals(Matrix matrix, double tolerance)`
  Compares the given matrices for equality, using the given absolute tolerance threshold.
  `static boolean`
  Matrices.`forceNonZeroScales(Matrix matrix, double defaultValue)`
  Forces the matrix to have at least one non-zero coefficient in every row, assuming an affine transform.
  `static boolean`
  Matrices.`forceUniformScale(Matrix matrix, double selector, double[] anchor)`
  Forces the matrix coefficients of the given matrix to a uniform scale factor, assuming an affine transform.
  `static boolean`
  Matrices.`hasNaN(Matrix matrix)`
  Returns whether the given matrix has any NaN value.
  `static MatrixSIS`
  Matrices.`inverse(Matrix matrix)`
  Returns the inverse of the given matrix.
  `static boolean`
  Matrices.`isAffine(Matrix matrix)`
  Returns `true` if the given matrix represents an affine transform.
  `static boolean`
  Matrices.`isIdentity(Matrix matrix, double tolerance)`
  Returns `true` if the given matrix is close to an identity matrix, given a tolerance threshold.
  `static boolean`
  Matrices.`isTranslation(Matrix matrix)`
  Returns `true` if the given matrix represents a translation.
  `static MatrixSIS`
  Matrices.`multiply(Matrix m1, Matrix m2)`
  Returns a new matrix which is the result of multiplying the first matrix with the second one.
  `MatrixSIS`
  MatrixSIS.`multiply(Matrix other)`
  Returns a new matrix which is the result of multiplying this matrix with the specified one.
  `static Matrix`
  Matrices.`resizeAffine(Matrix matrix, int numRow, int numCol)`
  Returns a matrix with the same content as the given matrix but a different size, assuming an affine transform.
  `void`
  MatrixSIS.`setMatrix(Matrix source)`
  Sets this matrix to the values of another matrix.
  `MatrixSIS`
  MatrixSIS.`solve(Matrix target)`
  Returns the value of U which solves `this` × U = `target`.
  `static String`
  Matrices.`toString(Matrix matrix)`
  Returns a unlocalized string representation of the given matrix.
  `static MatrixSIS`
  Matrices.`unmodifiable(Matrix matrix)`
  Returns an unmodifiable view of the given matrix.

- ## Uses of Matrix in org.apache.sis.referencing.operation.transform

  Methods in org.apache.sis.referencing.operation.transform that return Matrix
  Modifier and Type
  Method
  Description
  `Matrix`
  AbstractMathTransform.`derivative(DirectPosition point)`
  Gets the derivative of this transform at a point.
  `Matrix`
  AbstractMathTransform.Inverse.`derivative(DirectPosition point)`
  Gets the derivative of this transform at a point.
  `Matrix`
  AbstractMathTransform1D.`derivative(DirectPosition point)`
  Gets the derivative of this transform at a point.
  `Matrix`
  AbstractMathTransform1D.Inverse.`derivative(DirectPosition point)`
  Gets the derivative of this transform at a point.
  `Matrix`
  AbstractMathTransform2D.`derivative(Point2D point)`
  Gets the derivative of this transform at a point.
  `Matrix`
  AbstractMathTransform2D.Inverse.`derivative(Point2D point)`
  Gets the derivative of this transform at a point.
  `Matrix`
  EllipsoidToCentricTransform.`derivative(DirectPosition point)`
  Computes the derivative at the given location.
  `Matrix`
  PassThroughTransform.`derivative(DirectPosition point)`
  Gets the derivative of this transform at a point.
  `Matrix`
  WraparoundTransform.`derivative(DirectPosition point)`
  Gets the derivative of this transform at a point.
  `static Matrix`
  MathTransforms.`derivativeAndTransform(MathTransform transform, double[] srcPts, int srcOff, double[] dstPts, int dstOff)`
  A buckle method for calculating derivative and coordinate transformation in a single step.
  `Matrix`
  LinearTransform.`getMatrix()`
  Returns the coefficients of this linear transform as a matrix.
  `static Matrix`
  MathTransforms.`getMatrix(MathTransform transform)`
  If the given transform is linear, returns its coefficients as a matrix.
  `static Matrix`
  MathTransforms.`getMatrix(MathTransform toApproximate, DirectPosition tangentPoint)`
  Returns the coefficients of an affine transform in the vicinity of the given position.
  `abstract Matrix`
  AbstractMathTransform.`transform(double[] srcPts, int srcOff, double[] dstPts, int dstOff, boolean derivate)`
  Transforms a single coordinate tuple in an array, and optionally computes the transform derivative at that location.
  `Matrix`
  AbstractMathTransform1D.Inverse.`transform(double[] srcPts, int srcOff, double[] dstPts, int dstOff, boolean derivate)`
  Transforms a single point in the given array and opportunistically computes its derivative if requested.
  `Matrix`
  AbstractMathTransform1D.`transform(double[] srcPts, int srcOff, double[] dstPts, int dstOff, boolean derivate)`
  Transforms a single point in the given array and opportunistically computes its derivative if requested.
  `Matrix`
  EllipsoidToCentricTransform.`transform(double[] srcPts, int srcOff, double[] dstPts, int dstOff, boolean derivate)`
  Converts the (λ,φ) or (λ,φ,h) geodetic coordinates to to (X,Y,Z) geocentric coordinates, and optionally returns the derivative at that location.
  `Matrix`
  EllipsoidToRadiusTransform.`transform(double[] srcPts, int srcOff, double[] dstPts, int dstOff, boolean derivate)`
  Converts the (λ,Ω) spherical coordinates to (λ,Ω,R), and optionally returns the derivative at that location.
  `Matrix`
  InterpolatedGeocentricTransform.`transform(double[] srcPts, int srcOff, double[] dstPts, int dstOff, boolean derivate)`
  Transforms the (λ,φ) or (λ,φ,h) coordinates between two geographic CRS, and optionally returns the derivative at that location.
  `Matrix`
  InterpolatedTransform.`transform(double[] srcPts, int srcOff, double[] dstPts, int dstOff, boolean derivate)`
  Applies the datum shift on a coordinate tuple and optionally returns the derivative at that location.
  `Matrix`
  MolodenskyTransform.`transform(double[] srcPts, int srcOff, double[] dstPts, int dstOff, boolean derivate)`
  Transforms the (λ,φ) or (λ,φ,h) coordinates between two geographic CRS, and optionally returns the derivative at that location.
  `Matrix`
  PassThroughTransform.`transform(double[] srcPts, int srcOff, double[] dstPts, int dstOff, boolean derivate)`
  Transforms a single position in a sequence of coordinate tuples, and opportunistically computes the transform derivative if requested.
  `Matrix`
  PoleRotation.`transform(double[] srcPts, int srcOff, double[] dstPts, int dstOff, boolean derivate)`
  Transforms a single coordinate tuple in an array, and optionally computes the transform derivative at that location.
  `Matrix`
  WraparoundTransform.`transform(double[] srcPts, int srcOff, double[] dstPts, int dstOff, boolean derivate)`
  Applies wraparounds on a single point and optionally computes the transform derivative at that location.
  Methods in org.apache.sis.referencing.operation.transform with parameters of type Matrix
  Modifier and Type
  Method
  Description
  `MathTransform`
  DefaultMathTransformFactory.`createAffineTransform(Matrix matrix)`
  Creates an affine transform from a matrix.
  `static LinearTransform`
  MathTransforms.`linear(Matrix matrix)`
  Creates an arbitrary linear transform from the specified matrix.

- ## Uses of Matrix in org.opengis.referencing.operation

  Methods in org.opengis.referencing.operation that return Matrix
  Modifier and Type
  Method
  Description
  `Matrix`
  Matrix.`clone()`
  Returns a clone of this matrix.
  `Matrix`
  MathTransform.`derivative(DirectPosition point)`
  Gets the derivative of this transform at a point.
  `Matrix`
  MathTransform2D.`derivative(Point2D point)`
  Gets the derivative of this transform at a point.
  Methods in org.opengis.referencing.operation with parameters of type Matrix
  Modifier and Type
  Method
  Description
  `MathTransform`
  MathTransformFactory.`createAffineTransform(Matrix matrix)`
  Creates an affine transform from a matrix.