public interface MatrixMap<E> extends Iterable<E>
MatrixMap permet de stocker les elements avec des cles de n'importe quel type. Les coordonnees utilisant ces objets sont converti en coordonnees numeriques qui est la seul chose que sait gere Matrix. Ces coordonnees numeriques sont alors convertis en coordonnees lineaire pour le stockage dans Vector. On decoupe ainsi les problemes et on minimise le stockage et certain traitement sur les données puisqu'au final toutes les données sont dans une simple liste.
Pour créer une nouvelle matrice, il faut utiliser une des méthodes de
MatrixMap.Factory
Modifier and Type | Interface and Description |
---|---|
static class |
MatrixMap.AbstractMatrixMap<E>
Classe abstraite permettant de facilement implanter les matrice fixe,
elastique et submatrix
|
static class |
MatrixMap.Factory
Classe permettant la creation de matrice
|
static interface |
MatrixMap.MapFunction<E>
Permet de faire un traitement sur des valeurs et d'en retourner
des nouvelles.
|
static class |
MatrixMap.Matrix<E>
Objet matrice qui ne permet que le stockage avec des positions int
dans une matrice a autant de dimension que l'on souhaite.
|
static class |
MatrixMap.MatrixHelper
Classe contenant des méthodes statiques pour aider a la manipulation
des matrices
|
static class |
MatrixMap.MatrixIterator<E> |
static class |
MatrixMap.MatrixMapElastic<E>
Implantation particuliere de matrice, qui lorsqu'on lui passe des
dimension qui n'existe pas, elle les ajoutes dans les semantiques.
|
static class |
MatrixMap.MatrixMapFixed<E>
Implantation de MatrixMap dont les dimensions sont fixees a la creation
Les dimensions ne change plus par la suite
|
static interface |
MatrixMap.MatrixMapIterator<E>
Iterateur de matrice
|
static class |
MatrixMap.MatrixMapIteratorImpl<E> |
static class |
MatrixMap.SemanticList<T>
Collection particuliere utilisee pour la stockage des semantiques.
|
static class |
MatrixMap.SubMatrix<E>
Pour l'instant une sous matrice a obligatoirement le meme nombre de dimension
que la matrice qu'elle contient.
|
static class |
MatrixMap.Vector<E>
Permet de stocker des données à une position lineaire et de la redemander.
|
Modifier and Type | Method and Description |
---|---|
MatrixMap<E> |
copy()
Copy la matrice pour pouvoir la modifier sans perdre les donnees
initiales.
|
boolean |
equals(MatrixMap mat)
Verifie que deux matrices sont completement equals
(dimension, semantique, nom, valeur, ...)
|
boolean |
equalsValues(MatrixMap<E> mat)
Verifie si les matrices sont egales en ne regardant que les valeurs et
pas les semantiques
|
MatrixMap<E> |
extend(Object... sems)
Permet de retourner une nouvelle matrice ayant les semantiques passées
en parametre.
|
int[] |
getDim() |
int |
getDim(int d) |
int |
getDimCount() |
String |
getDimensionName(int dim) |
String[] |
getDimensionNames() |
String |
getName() |
MatrixMap.SemanticList |
getSemantic(int dim) |
MatrixMap.SemanticList[] |
getSemantics() |
MatrixMap<E> |
getSubMatrix(int dim,
Object... elem)
Permet de prendre une sous matrice dans la matrice courante.
|
MatrixMap<E> |
getSubMatrix(int dim,
Object start,
int nb)
Permet de prendre une sous matrice dans la matrice courante.
|
MatrixMap<E> |
getSubMatrix(Object[]... elems)
Permet de prendre une sous matrice dans la matrice courante.
|
E |
getValue(Object... coordinates)
Retourne l'element a une certaine position en utilisant les semantiques
|
E |
getValueIndex(int... coordinates)
Retourne l'element a une certaine position en utilisant des indices
ex: 2,3,1
|
boolean |
isValidCoordinates(Object[] semantics)
Indique si les semantiques passées en argument sont valable pour la
matrice courante
|
MatrixMap.MatrixMapIterator<E> |
iterator() |
MatrixMap<E> |
map(MatrixMap.MapFunction<E> f)
Applique sur chaque element de la matrice la fonction f
|
MatrixMap |
paste(MatrixMap<E> mat)
Copie une matrice dans la matrice actuelle.
|
MatrixMap<E> |
reduce()
Reduit la matrice de sorte que toutes les dimensions qui n'ont qu'un
élement soit supprimée.
|
MatrixMap<E> |
reduce(int minNbDim)
Reduit la matrice de sorte que toutes les dimensions qui n'ont qu'un
élement soit supprimée.
|
MatrixMap<E> |
reduceDims(int... dims)
Reduit le matrice seulement sur les dimensions passées en argument.
|
void |
setDimensionName(int dim,
String name) |
void |
setDimensionNames(String[] names) |
void |
setName(String name) |
void |
setSemantic(int dim,
List sem) |
void |
setValue(E value,
Object... coordinates)
Modifie l'element a une certaine position en utilisant les semantiques
|
void |
setValueIndex(E value,
int... coordinates)
Modifie l'element a une certaine position en utilisant des indices
ex: 2,3,1
|
String |
toStringGeneric()
Representation string de la matrice quelque soit le nombre de dimension
|
forEach, spliterator
MatrixMap.MatrixMapIterator<E> iterator()
MatrixMap<E> copy()
MatrixMap.SemanticList[] getSemantics()
MatrixMap.SemanticList getSemantic(int dim)
void setSemantic(int dim, List sem)
void setName(String name)
String getName()
String[] getDimensionNames()
void setDimensionNames(String[] names)
void setDimensionName(int dim, String name)
String getDimensionName(int dim)
int getDimCount()
int[] getDim()
int getDim(int d)
MatrixMap<E> map(MatrixMap.MapFunction<E> f)
f
- la fonction a appliquerE getValueIndex(int... coordinates)
coordinates
- FIXMEvoid setValueIndex(E value, int... coordinates)
value
- la nouvelle valeurcoordinates
- FIXMEE getValue(Object... coordinates)
coordinates
- FIXMEvoid setValue(E value, Object... coordinates)
value
- la nouvelle valeurcoordinates
- FIXMEboolean equals(MatrixMap mat)
mat
- FIXMEboolean equalsValues(MatrixMap<E> mat)
mat
- FIXMEString toStringGeneric()
boolean isValidCoordinates(Object[] semantics)
semantics
- FIXMEMatrixMap paste(MatrixMap<E> mat)
mat
- la matrice à copierMatrixMap<E> getSubMatrix(int dim, Object start, int nb)
dim
- la dimension dans lequel on veut une sous matricestart
- la position dans dim d'ou il faut partir pour prendre la
sous matrice. 0 ≤ start < dim.size si start est négatif alors
la position de départ est calculé par rapport à la fin de la
dimension, pour avoir le dernier élément il faut passer -1nb
- le nombre d'élément à prendre dans la dimension si nb est
inférieur ou égal à 0 alors cela indique qu'il faut prendre
tous les éléments jusqu'à la fin de la dimension.MatrixMap<E> getSubMatrix(int dim, Object... elem)
dim
- la dimension dans lequel on veut une sous matriceelem
- les éléments dans la dimension à conserverMatrixMap<E> getSubMatrix(Object[]... elems)
Réalise plusieurs appels à getSubMatrix(int, Object...)
suivant
l'implémentation.
elems
- les éléments dans la dimension à conserverMatrixMap<E> reduce()
MatrixMap<E> reduceDims(int... dims)
dims
- les dimensions sur lequel il faut faire la reductionMatrixMap<E> reduce(int minNbDim)
minNbDim
- le nombre minimum de dimension que l'on souhaite pour la
matrice résultatCopyright © 2004–2020 CodeLutin. All rights reserved.