Opération d'ajout ou suppression de mailles d'un matériau. Plus de détails...
#include <arcane/materials/internal/MaterialModifierOperation.h>
Fonctions membres publiques | |
bool | isAdd () const |
Indique si l'opération consiste à ajouter ou supprimer des mailles du matériau. | |
IMeshMaterial * | material () const |
Matériau dont on souhaite ajouter/supprimer des mailles. | |
SmallSpan< const Int32 > | ids () const |
Liste des localId() des mailles à ajouter/supprimer. | |
void | filterIds () |
Filtre les ids des mailles. | |
Fonctions membres publiques statiques | |
static MaterialModifierOperation * | createAdd (IMeshMaterial *mat, SmallSpan< const Int32 > ids) |
static MaterialModifierOperation * | createRemove (IMeshMaterial *mat, SmallSpan< const Int32 > ids) |
Fonctions membres privées | |
MaterialModifierOperation (IMeshMaterial *mat, SmallSpan< const Int32 > ids, bool is_add) | |
Fonctions membres privées statiques | |
static void | _filterValidIds (MaterialModifierOperation *operation, Int32Array &valid_ids) |
Filtre le tableau des mailles ids pour qu'il soit valide. | |
static Int32 | _checkMaterialPresence (MaterialModifierOperation *operation) |
Vérifie si les mailles ids sont déjà dans le matériau mat. | |
Attributs privés | |
IMeshMaterial * | m_mat = nullptr |
bool | m_is_add = false |
UniqueArray< Int32 > | m_ids |
Opération d'ajout ou suppression de mailles d'un matériau.
Définition à la ligne 34 du fichier MaterialModifierOperation.h.
Arcane::Materials::MaterialModifierOperation::MaterialModifierOperation | ( | ) |
Définition à la ligne 38 du fichier MaterialModifierOperation.cc.
|
private |
Définition à la ligne 47 du fichier MaterialModifierOperation.cc.
|
staticprivate |
Vérifie si les mailles ids sont déjà dans le matériau mat.
Si operation==eOperation::Add, vérifie que les mailles de ids ne sont pas déjà dans le matériau et si operation==eOperation::Remove, vérifie que les mailles de ids sont dans le matériau.
Vérifie aussi qu'un élément n'est présent qu'une fois dans la liste ids.
Retourne le nombre d'erreurs.
Définition à la ligne 70 du fichier MaterialModifierOperation.cc.
Références ids(), Arccore::TraceAccessor::info(), isAdd(), material(), et Arccore::TraceAccessor::traceMng().
|
staticprivate |
Filtre le tableau des mailles ids pour qu'il soit valide.
Cette méthode permet de filtrer les valeurs de ids afin qu'il ne reste que les valeurs valides pour qu'on puisse les ajouter (si do_add est vrai) ou supprimer (si do_add est faux) du matériau mat.
Les valeurs valides sont stockées dans valid_ids.
Définition à la ligne 133 du fichier MaterialModifierOperation.cc.
Références ids(), Arccore::TraceAccessor::info(), isAdd(), material(), et Arccore::TraceAccessor::traceMng().
|
inlinestatic |
Définition à la ligne 46 du fichier MaterialModifierOperation.h.
|
inlinestatic |
Définition à la ligne 50 du fichier MaterialModifierOperation.h.
void Arcane::Materials::MaterialModifierOperation::filterIds | ( | ) |
Filtre les ids des mailles.
Si isAdd() est vrai, filtre les ids pour supprimer ceux qui sont déjà dans la matériau. Si isAdd() est faux, filtre les ids pour supprimer ceux qui ne sont pas dans le matériau.
Ces opérations sont couteuses car il faut parcourir toutes les entités présentes. Il ne faut donc en général utiliser cette méthode qu'en mode vérification.
Définition à la ligne 185 du fichier MaterialModifierOperation.cc.
Références ARCANE_FATAL.
|
inline |
Liste des localId() des mailles à ajouter/supprimer.
Définition à la ligne 64 du fichier MaterialModifierOperation.h.
Références Arccore::Array< T >::view().
Référencé par _checkMaterialPresence(), et _filterValidIds().
|
inline |
Indique si l'opération consiste à ajouter ou supprimer des mailles du matériau.
Définition à la ligne 58 du fichier MaterialModifierOperation.h.
Référencé par _checkMaterialPresence(), _filterValidIds(), et Arcane::Materials::ConstituentModifierWorkInfo::setCurrentOperation().
|
inline |
Matériau dont on souhaite ajouter/supprimer des mailles.
Définition à la ligne 61 du fichier MaterialModifierOperation.h.
Référencé par _checkMaterialPresence(), et _filterValidIds().
|
private |
Définition à la ligne 89 du fichier MaterialModifierOperation.h.
Définition à la ligne 88 du fichier MaterialModifierOperation.h.
|
private |
Définition à la ligne 87 du fichier MaterialModifierOperation.h.