Aller au contenu
weSkelDOCUMENTATION
Documentation/Référence API/SVDView

SVDView

Vue live des sources, valeurs et destinations d’un plug.

ClassSVDSDK

SVDView expose Source / Value / Destinations sans capturer de copie. Chaque propriété consulte le plug au moment de la lecture.

objectSVDView
from weSkel.src.core.props.svd import SVDView

À exécuter dans Maya avec weSkel disponible. Les types om.* désignent maya.api.OpenMaya.

Élément Valeur
Classe SVDView
Module weSkel.src.core.props.svd
Parent direct object
Nature dataclass; frozen=True
Propriétés issues des specs Aucune.

Cette fiche documente les membres définis par cette classe. Les mécanismes Python standard et les membres natifs hérités sont exclus des compteurs.

SVDView(plug: Plug) → SVDView

Paramètre Type Défaut
plug Plug obligatoire

Fournir un Plug valide. node.svd("scaleX") est un autre point d’entrée. Le constructeur ne copie aucune valeur et ne contrôle pas les annotations à l’exécution.

Champs déclarés ; une dataclass frozen empêche la réaffectation, pas toutes les mutations imbriquées.

Champ Type retourné Accès Rôle
plug Plug L Plug consulté par la vue.

view.plugLecture seule

Type Contrat
Plug Plug consulté par la vue.

Membres propres. L = lecture seule ; L/E = lecture et écriture.

Propriété Type retourné Accès Rôle
attr_name str L Nom long courant de l’attribut, sans préfixe de nœud.
source Optional[Plug] L Source logique courante, ou None.
value Any L Valeur relue dans Maya à chaque accès.
destinations PlugArray L Destinations logiques relues à chaque accès.

view.attr_nameLecture seule

Type Contrat
str Nom long courant de l’attribut, sans préfixe de nœud.

view.sourceLecture seule

Type Contrat
Optional[Plug] Source logique courante, ou None.

view.valueLecture seule

Type Contrat
Any Valeur relue dans Maya à chaque accès.

view.destinationsLecture seule

Type Contrat
PlugArray Destinations logiques relues à chaque accès.

La dataclass est frozen : ses champs ne se réaffectent pas normalement. Cela ne rend pas le plug ni la scène immuables. Modifier le plug ailleurs change le résultat de la prochaine lecture.

value renvoie la valeur évaluée, même si une source existe. En replay SVD, la source a priorité sur une valeur locale. La vue ne valide pas son argument à la construction : un plug absent ou une identité supprimée peut faire échouer les lectures.

from uuid import uuid4
from weSkel.src.core.node.dag.transform.lib import Transform
from weSkel.src.core.props.svd import SVDView
node = Transform("sdk_live_" + uuid4().hex[:8])
try:
node.create()
plug = node.plugs["scaleX"]
view = SVDView(plug)
plug.value = 2.0
assert view.value == 2.0
plug.value = 4.0
assert view.value == 4.0
assert view.source is None and len(view.destinations) == 0
assert view.attr_name == "scale.scaleX"
print("SVDView: PASS")
finally:
node.delete(snapshot=False)

Résultat attendu : SVDView: PASS. Les nœuds temporaires sont supprimés dans finally.

Voir aussi : SVDPlug · SVDSnapshot · FSEntry.