faciliter l'accès et le repérage des données. C'est par exemple une différence essentielle avec le
modèle MED fichier comme on le verra plus tard.
-.. note:: La méthode similaire permettant d'agréger par composante (plutôt que par tuples) s'appelle ``Meld()``.
+.. note:: La méthode permettant d'agréger par composante (c'est-à-dire de concaténer des tableaux
+ colonne par colonne, plutôt que par tuples) s'appelle ``Meld()``.
Trouver les tuples égaux
~~~~~~~~~~~~~~~~~~~~~~~~
La méthode ``findCommonTuples()`` retourne ainsi 2 paramètres: un tableau contenant la liste des tuples communs
et un tableau d'index qui permet de naviguer dans le premier tableau.
Il s'agit d'une forme de retour très classique dans MEDCoupling, appelée *indirect indexing*. Cela apparaît souvent dans la manipulation des
-maillages non structurés. Cette représentation est rappelée sur l'image ci-dessous, où le premier tableau et en haut,
+maillages non structurés. Cette représentation est rappelée sur l'image ci-dessous, où le premier tableau est en haut,
et le deuxième tableau permettant de la parcourir en bas:
.. image:: images/IndirectIndex.jpg
.. note:: Pour toutes les opérations de renumérotation en MEDCoupling (bijection),
le format "old-2-new" est systématiquement utilisé.
-La méthode statique ``DataArrayInt.BuildOld2NewArrayFromSurjectiveFormat2()`` (nom un peu barbare, on vous l'accorde)
+La méthode statique ``DataArrayInt.ConvertIndexArrayToO2N()`` (nom un peu barbare, on vous l'accorde)
permet de passer du mode de stockage de cette surjection ``c``, ``cI`` au format ``o2n``.
On récupère au passage card(Y) c'est-à-dire le ``newNbOfTuples``. ::
- o2n, newNbOfTuples = mc.DataArrayInt.BuildOld2NewArrayFromSurjectiveFormat2(oldNbOfTuples,c,cI)
+ o2n, newNbOfTuples = mc.DataArrayInt.ConvertIndexArrayToO2N(oldNbOfTuples,c,cI)
print "Have I got the right number of tuples?"
print "myNewNbOfTuples = %d, newNbOfTuples = %d" % (myNewNbOfTuples, newNbOfTuples)
assert(myNewNbOfTuples == newNbOfTuples)
d3 += [3.3,4.4]
-Constuire un maillage non strucuturé
+Constuire un maillage non structuré
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
On chercher maintenant à créer le maillage final montré dans la figure. Nous avons déjà construit le tableau
cell_connec = o2n[6*i:6*(i+1)]
m.insertNextCell(mc.NORM_POLYGON, cell_connec.getValues())
pass
- m.finishInsertingCells()
-
-.. note:: Après SALOME 6.6, l'appel à ``MEDCouplingUMesh.finishInsertingCells()`` n'est plus nécessaire.
Vérifier que ``m`` est correct et ne contient pas d'anomalie. ::
- m.checkCoherency()
+ m.checkConsistencyLight()
.. note:: Il est toujours une bonne idée d'appeler cette méthode après la construction "from scratch" d'un maillage.
Cela assure qu'il n'y a pas de gros "couacs" dans la connectivité, etc ...