See: Description
Class | Description |
---|---|
AffineTransforms2D |
Bridge between
Matrix and Java2D AffineTransform instances. |
Matrices |
Matrix factory methods and utilities. |
Matrix1 | |
Matrix2 | |
Matrix3 | |
Matrix4 | |
MatrixSIS |
A
Matrix able to perform some operations of interest to Spatial Information Systems (SIS). |
Exception | Description |
---|---|
MismatchedMatrixSizeException |
Thrown when two matrices can not be added or multiplied because the sizes do not match.
|
NoninvertibleMatrixException |
Thrown when a matrix can not be inverted.
|
Matrices.createTransform(…)
.NaN
values and non-square matrix in some situations.This package provides public implementations of small square matrices, with size ranging from 1×1 to 4×4. Those implementations are made public because in many cases, the user know that (s)he is working with (for example) three-dimensional Coordinate Reference Systems (CRS). If the number of CRS dimensions is fixed to 3, then affine transforms between those CRS can be represented by 4×4 matrices, and the derivatives of those transforms can be represented by 3×3 matrices. Since the user know the matrices size, (s)he can use the specific implementation and read or write directly the mrow column field.
Example: in the two dimensional case, an affine transform from a map projection (units in metres) to the screen (units in pixels) can be performed by the following matrix multiplication:
The current implementation uses double-double arithmetic. However this may change in any future SIS version.
org.apache.sis.referencing
for making clearer that this is not a general-purpose library.
For computational intensive calculations, better guarantees on numerical stability, sparse matrices support
and more, consider using an dedicated library like jblas instead.
The Vecmath library shares similar goals than MatrixSIS
.
Like SIS, Vecmath is optimized for small matrices of interest for 2D and 3D graphics.
Defined in the sis-referencing
module
Copyright © 2010–2014 The Apache Software Foundation. All rights reserved.