[section label= »Qu’est-ce qu’un Layer ? » anchor= »definition-layer »]
Qu’est-ce qu’un Layer dans Mari ?
Les Layers de Mari sont assimilables aux calques Photoshop. Ce sont des couches sur lesquelles il est possible de peindre, d’appliquer une texture, d’ajouter un masque,…
Les Layers constituent donc la source de vos textures.
Les Layers sont créés dans ce qui s’appelle un Layer Stack (littéralement: « empilement de couches ») appartenant à un Channel. En effet, chaque Channel contient un empilement différent de différents Layers.
Vous pouvez créer 4 types de Layers:
- Paintable Layer
- Adjustment Layer
- Procedural Layer
- Group Layer
- Ainsi que des masques pour ces derniers
Les Layers au sommet de l’empilement priment sur les Layers plus bas.
[section label= »Lister les layers du channel courant d’un objet » anchor= »liste-layers-channel »]
Lister les layers du channel courant d’un objet
1 2 3 | obj = mari.geo.current() # Objet courant channel = obj.currentChannel() # Channel courant layerList = channel.layerList() # Liste des layers |
[section label= »Créer un Layer » anchor= »creer-layer »]
Créer un Layer
1 2 3 4 5 6 7 8 9 10 | obj = mari.geo.current() # Objet courant channel = obj.currentChannel() # Channel courant # Paintable Layer newLayer = channel.createPaintableLayer("New Layer Name") # Adjustment Layer* newLayer = channel.createAdjustmentLayer("New Layer Name", "Filter/Brightness") # Procedural Layer* newLayer = channel.createProceduralLayer("New Layer Name", "Basic/Color") # Group Layer newLayer = channel.createGroupLayer("New Layer Name") |
*Cf: liste des types de layers d’ajustements et de procédures
[section label= »Mettre un layer dans un groupe » anchor= »layer-groupe »]
Mettre un layer dans un groupe
1 2 3 4 5 6 7 8 9 | # Objet courant obj = mari.geo.current() # Objet courant # Création du channel channel = obj.createChannel("Mon Channel", 2048, 2048, 16) # Création du groupe (group layer) et de son "empilement" group = channel.createGroupLayer("Mon groupe") groupStack = group.layerStack() # Création d'un layer dans le groupe layer = groupStack.createPaintableLayer("Mon layer") |
[section label= »Changer le mode de fusion d’un layer » anchor= »mode-fusion »]
Changer le mode de fusion d’un layer
1 2 | # Avec "value" un int entre 1 et 30* layer.setBlendMode(value) |
*Cf: liste des modes de fusion des layers
Créer un masque sur un layer
1 2 3 4 5 6 | # Création du masque mask = layer.makeMask() # Création de la couleur du masque color = mari.Color(0, 0, 0) for image in mask.imageSets(): image.setUniformColor( color ) |
[section label= »Modes de création » anchor= »modes-creation »]
Modes de création
- Reveal all
Le mode Reveal All rempli le masque de blanc.
- Hide all
Le mode Hide All fait un Fill Color avec du noir.
Partager sur:
Laisser un commentaire