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

Curve

Courbes NURBS : CVs, paramètres, longueur et édition.

ClassAPI 2.0DAG
from weSkel.src.core.node.dag.curve.lib import Curve

À exécuter dans Maya ou dans un processus mayapy initialisé. L’import om n’est nécessaire que si votre script utilise des types OpenMaya.

Élément Valeur
Classe Curve
Module weSkel.src.core.node.dag.curve.lib
Type Maya nurbsCurve
Parent direct ControlPoint
Inventaire Membres définis ou redéfinis ici ; les membres hérités sont regroupés par parent dans chaque rubrique.

Signature : Curve(node) → Curve.

Paramètre Type accepté Défaut
node Union[str, om.MObject, om.MObjectHandle, om.MFnDependencyNode, om.MDagPath, om.MFnDagNode, om.MFnNurbsCurve, om.MFnNurbsCurveData] Obligatoire

Enveloppe un nœud existant ou prépare un wrapper pour un nom absent ; ne crée pas le nœud. Utiliser create() séparément. Un objet ou type incompatible peut lever TypeError. L’identité partagée peut renvoyer un wrapper compatible déjà enregistré.

Propriétés Python définies ou redéfinies ici. L : lecture seule ; L/E : setter disponible, avec les restrictions précisées dans la fiche. Les types om.* appartiennent à maya.api.OpenMaya.

Propriété Type retourné Accès
mfn_curve Optional[om.MFnNurbsCurve] L
mfn_curve_data Optional[om.MFnNurbsCurveData] L
cvs om.MPointArray L/E
num_cvs int L
degree int L/E
knots om.MDoubleArray L/E
form int L/E
is_rational bool L/E
area Callable[..., float] | float L
cv_positions om.MPointArray L/E

node.mfn_curveLecture seule

Function set de courbe, ou None si indisponible.

Élément Type / comportement
Retour Optional[om.MFnNurbsCurve]
Type observé sur géométrie live MFnNurbsCurve

node.mfn_curve_dataLecture seule

Function set des données de sortie local, ou None si indisponibles.

Élément Type / comportement
Retour Optional[om.MFnNurbsCurveData]
Type observé sur géométrie live MFnNurbsCurveData

node.cvsLecture / écriture

Tableau des points de contrôle ; consulter les limites du setter ci-dessous.

Élément Type / comportement
Retour om.MPointArray
Type observé sur géométrie live MPointArray
Valeur du setter Optional[Union[om.MPointArray, List[om.MPoint], List[List[float]]]]

Le setter ne déplace pas les CVs live : il mémorise les points et refuse l’absence de function set. Pour une édition live, utiliser cv_positions ou set_cv_positions().

node.num_cvsLecture seule

Nombre total de CVs.

Élément Type / comportement
Retour int
Type observé sur géométrie live int

node.degreeLecture / écriture

Degré de la courbe. La modification par ce setter est réservée à un wrapper sans courbe live.

Élément Type / comportement
Retour int
Type observé sur géométrie live int
Valeur du setter int

node.knotsLecture / écriture

Vecteur de nœuds NURBS. Le setter mémorise les valeurs et met à jour les knots de la courbe live lorsqu’elle existe.

Élément Type / comportement
Retour om.MDoubleArray
Type observé sur géométrie live MDoubleArray
Valeur du setter Union[om.MDoubleArray, Sequence[float]]

node.formLecture / écriture

Forme native de la courbe (ouverte, fermée ou périodique). Setter réservé à l’état sans courbe live.

Élément Type / comportement
Retour int
Type observé sur géométrie live int
Valeur du setter int

node.is_rationalLecture / écriture

État rationnel de la géométrie. Setter réservé à l’état sans géométrie live.

Élément Type / comportement
Retour bool
Type observé sur géométrie live bool
Valeur du setter bool

node.areaLecture seule

Aire de la géométrie ; voir le retour réel et les limites propres à cette classe.

Élément Type / comportement
Retour Callable[..., float] | float
Type observé sur géométrie live builtin_function_or_method

Le code renvoie la méthode native mfn_curve.area, sans l’appeler : retour callable sur une courbe live, 0.0 sinon, malgré l’annotation float. Pour obtenir un nombre, appeler node.mfn_curve.area() sur une courbe valide.

node.cv_positionsLecture / écriture

Positions des CVs en espace objet. Le setter utilise set_cv_positions() pour modifier la courbe live.

Élément Type / comportement
Retour om.MPointArray
Type observé sur géométrie live MPointArray
Valeur du setter Union[om.MPointArray, List[om.MPoint], List[List[float]]]
Propriétés héritées de DAGNode20
Propriété Type retourné Accès Description
dag_fn om.MFnDagNode L Function set DAG live, ou objet non attaché si le nœud est absent ou invalide.
dag_path om.MDagPath L Un chemin vers le nœud courant ; chemin vide si indisponible.
has_valid_dag_path bool L Validité du chemin renvoyé par dag_path.
full_path_name str L Chemin DAG complet ; chaîne vide si le chemin est invalide.
short_name str L Chemin DAG partiel renvoyé par Maya, éventuellement plus long qu’un simple nom ; chaîne vide si invalide.
is_valid_dag_fn bool L Validité du function set pour l’objet courant.
is_shape bool L Compatibilité de l’objet courant avec om.MFn.kShape.
parents list[DAGNode] L Tous les parents natifs.
parent DAGNode | None L/E Premier parent uniquement ; None sous le world.
is_instanced bool L Indique plusieurs chemins / parents pour l’objet DAG ; False si absent.
children list[DAGNode] L Enfants directs, sans parcours récursif.
is_under_world bool L Nœud live directement sous le world ; False si absent.
child_count int L Nombre d’enfants directs du chemin ; 0 si invalide.
child_names list[str] L Chemins complets des enfants directs ; liste vide si le chemin est invalide.
shape_count int L Nombre de shapes directement sous ce chemin ; 0 si invalide.
shapes list[DAGNode] L Shapes enfants directes, y compris les shapes intermédiaires ; liste vide si invalide.
shape_orig DAGNode | None L Première shape enfant avec intermediateObject=True ; None si absente.
intermediate_shapes list[DAGNode] L Toutes les shapes enfants directes marquées intermédiaires.
draw_override_info om.MDAGDrawOverrideInfo | None L Informations natives d’override du chemin ; None si indisponibles.
fn_bounding_box om.MBoundingBox | None L Bounding box locale obtenue par le function set ; None si indisponible.
Propriétés héritées de DGNode15
Propriété Type retourné Accès Description
dep_fn om.MFnDependencyNode L Function set live ; objet non attaché si le nœud est absent.
uuid str | None L UUID live, ou dernière valeur mémorisée si elle reste disponible.
name str | None L/E Nom live, sinon nom mémorisé.
absolute_name str | None L Nom absolu de namespace renvoyé par MFnDependencyNode.absoluteName() ; None sans nœud.
stripped_name str | None L/E Nom sans namespace, ou None si aucun nom.
namespace str | None L/E Namespace normalisé comme a:b ; None à la racine.
plugs Plugs | None L Gestionnaire des plugs du nœud live ; None sinon.
is_valid_dep_fn bool L Compatibilité du function set avec le MObject courant.
is_default_node bool L Indique un nœud par défaut de Maya ; False sans nœud.
is_from_referenced_file bool L Indique un nœud issu d’un fichier référencé ; False sans nœud.
is_locked bool L/E Verrouillage du nœud, distinct des locks de plugs.
is_shared bool L État partagé renvoyé par Maya ; False sans nœud.
plugin_name str | None L Nom du plugin Maya associé, éventuellement chaîne vide ; None sans nœud.
affect_animation bool L Résultat de MFnDependencyNode.affectsAnimation() ; False sans nœud.
type str | None L/E Type natif live ou type mémorisé.
Propriétés héritées de Node10
Propriété Type retourné Accès Description
mobject om.MObject L/E Objet Maya live, ou objet nul.
mobject_handle om.MObjectHandle L/E Handle associé au nœud.
api_type int | None L Identifiant du type API Maya.
api_type_str str L Nom du type API, par exemple "kTime".
exists bool L Le wrapper possède actuellement un nœud live.
is_null bool L L’objet Maya retourné est nul.
is_alive bool L L’objet existe avec un handle valide et vivant.
is_valid_handle bool L Validité du handle mémorisé.
is_dag_node bool L Compatibilité avec om.MFn.kDagNode.
hash_code int L Hash du handle Maya.

Les defaults et flags ci-dessous sont les déclarations des specs, pas une garantie de valeur live. Un descriptor peut renvoyer un proxy : .value lit sa valeur ; .plug donne accès au Plug. Les noms des proxies décrivent le résultat, sans demander d’importer des classes privées. Les types observés proviennent d’un cas de contrôle ; une entrée géométrique non connectée peut notamment valoir None.

Pour une écriture dont il faut vérifier l’échec, utiliser explicitement le Plug et contrôler le résultat live. Les setters de descriptors ne propagent pas tous les échecs natifs.

Propriété Plug Maya Retour
tweak tweak _ValuePlugProxy · .value: bool
edit_points editPoints _DynNumericArrayProxy
x_value_ep editPoints[].xValueEp IndexedPathProxy
y_value_ep editPoints[].yValueEp IndexedPathProxy
z_value_ep editPoints[].zValueEp IndexedPathProxy
disp_cv dispCV _ValuePlugProxy · .value: bool
disp_curve_end_points dispCurveEndPoints _ValuePlugProxy · .value: bool
disp_ep dispEP _ValuePlugProxy · .value: bool
disp_geometry dispGeometry _ValuePlugProxy · .value: bool
disp_hull dispHull _ValuePlugProxy · .value: bool
cached cached _ValuePlugProxy · .value: CurveProxy
spec_degree degree _ValuePlugProxy · .value: int
spec_form form _ValuePlugProxy · .value: int
header header MObject
create_spec create _ValuePlugProxy · .value: None
local local _ValuePlugProxy · .value: CurveProxy
min_max_value minMaxValue _ValuePlugProxy · .value: tuple
min_value minValue _ValuePlugProxy · .value: float
max_value maxValue _ValuePlugProxy · .value: float
spans spans _ValuePlugProxy · .value: int
tweak_size tweakSize _ValuePlugProxy · .value: int
world_space worldSpace _ValuePlugProxy · .value: None
in_place inPlace _ValuePlugProxy · .value: bool
world_normal worldNormal _DynNumericArrayProxy
world_normal_x worldNormal[].worldNormalX IndexedPathProxy
world_normal_y worldNormal[].worldNormalY IndexedPathProxy
world_normal_z worldNormal[].worldNormalZ IndexedPathProxy
always_draw_on_top alwaysDrawOnTop _ValuePlugProxy · .value: bool
line_width lineWidth _ValuePlugProxy · .value: float

node.tweakSpec native

Accès au plug natif tweak.

Élément Type / comportement
Chemin Maya tweak
Retour de la propriété _ValuePlugProxy · .value: bool
Type déclaré numeric:bool
Défaut déclaré True
Flags input, output, connectable, stored
Lecture node.tweak.value
Affectation du descriptor node.tweak = value

node.edit_pointsSpec native

Accès au plug natif editPoints.

Élément Type / comportement
Chemin Maya editPoints
Retour de la propriété _DynNumericArrayProxy
Type déclaré array:double3
Défaut déclaré ()
Flags array, output, connectable
Plug sous-jacent node.edit_points.plug

node.x_value_epSpec native

Accès au plug natif editPoints[].xValueEp.

Élément Type / comportement
Chemin Maya editPoints[].xValueEp
Retour de la propriété IndexedPathProxy
Type déclaré unit:distance
Défaut déclaré 0.0
Flags output, connectable
Chemin explicite vérifié · Plug node.plugs["editPoints"][i1]["xValueEp"]

Limite constatée sur le cas vérifié : AttributeError: Child 'xValueEp' not found under 'curveShape1.editPoints[0]'. Les indices sont des indices logiques Maya ; adapter leur valeur aux éléments existants ou souhaités.

node.y_value_epSpec native

Accès au plug natif editPoints[].yValueEp.

Élément Type / comportement
Chemin Maya editPoints[].yValueEp
Retour de la propriété IndexedPathProxy
Type déclaré unit:distance
Défaut déclaré 0.0
Flags output, connectable
Chemin explicite vérifié · Plug node.plugs["editPoints"][i1]["yValueEp"]

Limite constatée sur le cas vérifié : AttributeError: Child 'yValueEp' not found under 'curveShape1.editPoints[0]'. Les indices sont des indices logiques Maya ; adapter leur valeur aux éléments existants ou souhaités.

node.z_value_epSpec native

Accès au plug natif editPoints[].zValueEp.

Élément Type / comportement
Chemin Maya editPoints[].zValueEp
Retour de la propriété IndexedPathProxy
Type déclaré unit:distance
Défaut déclaré 0.0
Flags output, connectable
Chemin explicite vérifié · Plug node.plugs["editPoints"][i1]["zValueEp"]

Limite constatée sur le cas vérifié : AttributeError: Child 'zValueEp' not found under 'curveShape1.editPoints[0]'. Les indices sont des indices logiques Maya ; adapter leur valeur aux éléments existants ou souhaités.

node.disp_cvSpec native

Accès au plug natif dispCV.

Élément Type / comportement
Chemin Maya dispCV
Retour de la propriété _ValuePlugProxy · .value: bool
Type déclaré numeric:bool
Défaut déclaré False
Flags input, output, connectable, stored
Lecture node.disp_cv.value
Affectation du descriptor node.disp_cv = value

node.disp_curve_end_pointsSpec native

Accès au plug natif dispCurveEndPoints.

Élément Type / comportement
Chemin Maya dispCurveEndPoints
Retour de la propriété _ValuePlugProxy · .value: bool
Type déclaré numeric:bool
Défaut déclaré False
Flags input, output, connectable, hidden
Lecture node.disp_curve_end_points.value

node.disp_epSpec native

Accès au plug natif dispEP.

Élément Type / comportement
Chemin Maya dispEP
Retour de la propriété _ValuePlugProxy · .value: bool
Type déclaré numeric:bool
Défaut déclaré False
Flags input, output, connectable, stored
Lecture node.disp_ep.value
Affectation du descriptor node.disp_ep = value

node.disp_geometrySpec native

Accès au plug natif dispGeometry.

Élément Type / comportement
Chemin Maya dispGeometry
Retour de la propriété _ValuePlugProxy · .value: bool
Type déclaré numeric:bool
Défaut déclaré True
Flags input, output, connectable, stored
Lecture node.disp_geometry.value
Affectation du descriptor node.disp_geometry = value

node.disp_hullSpec native

Accès au plug natif dispHull.

Élément Type / comportement
Chemin Maya dispHull
Retour de la propriété _ValuePlugProxy · .value: bool
Type déclaré numeric:bool
Défaut déclaré False
Flags input, output, connectable, stored
Lecture node.disp_hull.value
Affectation du descriptor node.disp_hull = value

node.cachedSpec native

Accès au plug natif cached.

Élément Type / comportement
Chemin Maya cached
Retour de la propriété _ValuePlugProxy · .value: CurveProxy
Type déclaré typed:nurbsCurve
Défaut déclaré None
Flags input, output, connectable
Lecture node.cached.value

node.spec_degreeSpec native

Accès au plug natif degree.

Élément Type / comportement
Chemin Maya degree
Retour de la propriété _ValuePlugProxy · .value: int
Type déclaré numeric:short
Défaut déclaré 0
Flags output, connectable
Lecture node.spec_degree.value

node.spec_formSpec native

Accès au plug natif form.

Élément Type / comportement
Chemin Maya form
Retour de la propriété _ValuePlugProxy · .value: int
Type déclaré numeric:short
Défaut déclaré 0
Flags output, connectable
Lecture node.spec_form.value

node.headerSpec native

Accès au plug natif header.

Élément Type / comportement
Chemin Maya header
Retour de la propriété MObject
Type déclaré typed:nurbsCurveHeader
Défaut déclaré None
Flags input, output

Le setter du descriptor refuse l’affectation ; utiliser les opérations de connexion du Plug.

node.create_specSpec native

Accès au plug natif create.

Élément Type / comportement
Chemin Maya create
Retour de la propriété _ValuePlugProxy · .value: None
Type déclaré typed:nurbsCurve
Défaut déclaré None
Flags input, output, connectable
Lecture node.create_spec.value

node.localSpec native

Accès au plug natif local.

Élément Type / comportement
Chemin Maya local
Retour de la propriété _ValuePlugProxy · .value: CurveProxy
Type déclaré typed:nurbsCurve
Défaut déclaré None
Flags output, connectable
Lecture node.local.value

node.min_max_valueSpec native

Accès au plug natif minMaxValue.

Élément Type / comportement
Chemin Maya minMaxValue
Retour de la propriété _ValuePlugProxy · .value: tuple
Type déclaré double2
Défaut déclaré (0.0, 0.0)
Flags output, connectable
Lecture node.min_max_value.value

node.min_valueSpec native

Accès au plug natif minValue.

Élément Type / comportement
Chemin Maya minValue
Retour de la propriété _ValuePlugProxy · .value: float
Type déclaré numeric:double
Défaut déclaré 0.0
Flags output, connectable
Lecture node.min_value.value

node.max_valueSpec native

Accès au plug natif maxValue.

Élément Type / comportement
Chemin Maya maxValue
Retour de la propriété _ValuePlugProxy · .value: float
Type déclaré numeric:double
Défaut déclaré 0.0
Flags output, connectable
Lecture node.max_value.value

node.spansSpec native

Accès au plug natif spans.

Élément Type / comportement
Chemin Maya spans
Retour de la propriété _ValuePlugProxy · .value: int
Type déclaré numeric:int
Défaut déclaré 0
Flags output, connectable
Lecture node.spans.value

node.tweak_sizeSpec native

Accès au plug natif tweakSize.

Élément Type / comportement
Chemin Maya tweakSize
Retour de la propriété _ValuePlugProxy · .value: int
Type déclaré numeric:int
Défaut déclaré -1
Flags input, output, connectable
Lecture node.tweak_size.value

node.world_spaceSpec native

Accès au plug natif worldSpace.

Élément Type / comportement
Chemin Maya worldSpace
Retour de la propriété _ValuePlugProxy · .value: None
Type déclaré typed:nurbsCurve
Défaut déclaré None
Flags array, output, connectable
Lecture node.world_space.value

node.in_placeSpec native

Accès au plug natif inPlace.

Élément Type / comportement
Chemin Maya inPlace
Retour de la propriété _ValuePlugProxy · .value: bool
Type déclaré numeric:bool
Défaut déclaré False
Flags input, output, connectable, stored
Lecture node.in_place.value
Affectation du descriptor node.in_place = value

node.world_normalSpec native

Accès au plug natif worldNormal.

Élément Type / comportement
Chemin Maya worldNormal
Retour de la propriété _DynNumericArrayProxy
Type déclaré array:double3
Défaut déclaré ()
Flags array, output, connectable
Plug sous-jacent node.world_normal.plug

node.world_normal_xSpec native

Accès au plug natif worldNormal[].worldNormalX.

Élément Type / comportement
Chemin Maya worldNormal[].worldNormalX
Retour de la propriété IndexedPathProxy
Type déclaré numeric:double
Défaut déclaré 0.0
Flags output, connectable
Chemin explicite vérifié · Plug node.plugs["worldNormal"][i1]["worldNormalX"]

Limite constatée sur le cas vérifié : AttributeError: Child 'worldNormalX' not found under 'curveShape1.worldNormal[0]'. Les indices sont des indices logiques Maya ; adapter leur valeur aux éléments existants ou souhaités.

node.world_normal_ySpec native

Accès au plug natif worldNormal[].worldNormalY.

Élément Type / comportement
Chemin Maya worldNormal[].worldNormalY
Retour de la propriété IndexedPathProxy
Type déclaré numeric:double
Défaut déclaré 0.0
Flags output, connectable
Chemin explicite vérifié · Plug node.plugs["worldNormal"][i1]["worldNormalY"]

Limite constatée sur le cas vérifié : AttributeError: Child 'worldNormalY' not found under 'curveShape1.worldNormal[0]'. Les indices sont des indices logiques Maya ; adapter leur valeur aux éléments existants ou souhaités.

node.world_normal_zSpec native

Accès au plug natif worldNormal[].worldNormalZ.

Élément Type / comportement
Chemin Maya worldNormal[].worldNormalZ
Retour de la propriété IndexedPathProxy
Type déclaré numeric:double
Défaut déclaré 0.0
Flags output, connectable
Chemin explicite vérifié · Plug node.plugs["worldNormal"][i1]["worldNormalZ"]

Limite constatée sur le cas vérifié : AttributeError: Child 'worldNormalZ' not found under 'curveShape1.worldNormal[0]'. Les indices sont des indices logiques Maya ; adapter leur valeur aux éléments existants ou souhaités.

node.always_draw_on_topSpec native

Accès au plug natif alwaysDrawOnTop.

Élément Type / comportement
Chemin Maya alwaysDrawOnTop
Retour de la propriété _ValuePlugProxy · .value: bool
Type déclaré numeric:bool
Défaut déclaré False
Flags input, output, connectable, stored
Lecture node.always_draw_on_top.value
Affectation du descriptor node.always_draw_on_top = value

node.line_widthSpec native

Accès au plug natif lineWidth.

Élément Type / comportement
Chemin Maya lineWidth
Retour de la propriété _ValuePlugProxy · .value: float
Type déclaré numeric:float
Défaut déclaré -1.0
Flags input, output, connectable, stored
Lecture node.line_width.value
Affectation du descriptor node.line_width = value
Specs héritées de ControlPoint31
Propriété Plug Maya Retour Description
blind_data_nodes blindDataNodes list[str] Données de liens vers les nœuds de blind data.
color_set colorSet ArrayCompoundProxy Tableau des color sets.
current_color_set currentColorSet _ValuePlugProxy · .value: str Nom du color set courant.
color_name colorSet[].colorName IndexedPathProxy Nom du color set indexé.
clamped colorSet[].clamped IndexedPathProxy État clamped du color set.
representation colorSet[].representation IndexedPathProxy Mode de représentation des couleurs.
color_set_points colorSet[].colorSetPoints AttributeError (accès direct) Couleurs sous un color set indexé.
color_set_points_r colorSet[].colorSetPoints[].colorSetPointsR IndexedPathProxy Composante R de color_set_points.
color_set_points_g colorSet[].colorSetPoints[].colorSetPointsG IndexedPathProxy Composante G de color_set_points.
color_set_points_b colorSet[].colorSetPoints[].colorSetPointsB IndexedPathProxy Composante B de color_set_points.
color_set_points_a colorSet[].colorSetPoints[].colorSetPointsA IndexedPathProxy Composante A de color_set_points.
control_points controlPoints ArrayCompoundProxy Tableau natif des control points / tweaks ; ce n’est pas une lecture universelle des positions finales.
control_points_x_value controlPoints[].xValue IndexedPathProxy Composante X du control point indexé.
control_points_y_value controlPoints[].yValue IndexedPathProxy Composante Y du control point indexé.
control_points_z_value controlPoints[].zValue IndexedPathProxy Composante Z du control point indexé.
relative_tweak relativeTweak _ValuePlugProxy · .value: bool Mode de tweak relatif.
tweak_location tweakLocation Any (donnée native) Données natives de localisation des tweaks.
display_immediate displayImmediate _ValuePlugProxy · .value: bool Option native d’affichage immédiat.
display_color_channel displayColorChannel _ValuePlugProxy · .value: str Canal de couleur affiché.
display_colors displayColors _ValuePlugProxy · .value: bool Activation de l’affichage des couleurs de composants.
current_uv_set currentUVSet _ValuePlugProxy · .value: str Nom du UV set courant.
uv_set uvSet ArrayCompoundProxy Tableau des UV sets.
uv_set_name uvSet[].uvSetName IndexedPathProxy Nom du UV set indexé.
uv_set_points uvSet[].uvSetPoints _DynNumericArrayProxy Paires UV du UV set ; accès via son élément parent pour choisir le set.
uv_set_points_u uvSet[].uvSetPoints[].uvSetPointsU IndexedPathProxy Coordonnée U à deux indices logiques.
uv_set_points_v uvSet[].uvSetPoints[].uvSetPointsV IndexedPathProxy Coordonnée V à deux indices logiques.
uv_set_tweak_location uvSet[].uvSetTweakLocation IndexedPathProxy Données de localisation des tweaks du UV set.
uv_pivot uvPivot _ValuePlugProxy · .value: tuple[float, float] Pivot UV à deux composantes.
uv_pivot_x uvPivot.uvPivotX _ValuePlugProxy · .value: float Première composante du pivot UV.
uv_pivot_y uvPivot.uvPivotY _ValuePlugProxy · .value: float Deuxième composante du pivot UV.
weights weights TypedArrayProxy Poids natifs des control points ; distincts des poids d’influences d’un skinCluster.
Specs héritées de GeometryShape32
Propriété Plug Maya Retour Description
as_background asBackground _ValuePlugProxy · .value: bool Option native d’utilisation en arrière-plan.
depth_jitter depthJitter _ValuePlugProxy · .value: bool Option native de depth jitter.
primary_visiblity primaryVisibility _ValuePlugProxy · .value: bool Visibilité primaire au rendu.
antialiasing_level antialiasingLevel _ValuePlugProxy · .value: int Niveau d’antialiasing de la géométrie.
geometry_antialiasing_override geometryAntialiasingOverride _ValuePlugProxy · .value: bool Activation de l’override d’antialiasing.
component_tags componentTags ArrayCompoundProxy Tableau des tags de composants.
component_tag_name componentTags[].componentTagName IndexedPathProxy Nom du tag à l’indice demandé.
component_tag_contents componentTags[].componentTagContents IndexedPathProxy Contenu du tag de composants.
casts_shadows castsShadows _ValuePlugProxy · .value: bool Participation à la projection d’ombres.
hardware_fog_multiplier hardwareFogMultiplier _ValuePlugProxy · .value: float Multiplicateur de brouillard matériel.
ignore_self_shadowing ignoreSelfShadowing _ValuePlugProxy · .value: bool Option pour ignorer l’auto-ombrage.
max_shading_samples maxShadingSamples _ValuePlugProxy · .value: int Nombre maximal d’échantillons de shading.
receive_shadows receiveShadows _ValuePlugProxy · .value: bool Réception des ombres.
shading_samples shadingSamples _ValuePlugProxy · .value: int Nombre d’échantillons de shading.
shading_samples_override shadingSamplesOverride _ValuePlugProxy · .value: bool Activation de l’override des échantillons de shading.
inst_material_assign instMaterialAssign list[str] Données d’affectation de matériau par instance.
pick_texture pickTexture None Connexion native de sélection de texture.
comp_inst_obj_groups compInstObjGroups ArrayCompoundProxy Groupes de composants par instance.
comp_object_groups compInstObjGroups[].objectGroups AttributeError (accès direct) Groupes sous une instance de composants.
comp_object_grp_comp_list compInstObjGroups[].objectGroups[].objectGrpCompList IndexedPathProxy Liste de composants du groupe indexé.
comp_object_group_id compInstObjGroups[].objectGroups[].objectGroupId IndexedPathProxy Identifiant du groupe de composants indexé.
reference_object referenceObject None Connexion à l’objet de référence de la shape.
max_visibility_samples maxVisibilitySamples _ValuePlugProxy · .value: int Nombre maximal d’échantillons de visibilité.
max_visibility_samples_override maxVisibilitySamplesOverride _ValuePlugProxy · .value: bool Activation de l’override des échantillons de visibilité.
render_type renderType _ValuePlugProxy · .value: int Type de rendu natif de la shape.
render_volume renderVolume _ValuePlugProxy · .value: bool Option native de rendu volumique.
visible_fraction visibleFraction _ValuePlugProxy · .value: float Fraction visible native.
visible_in_reflections visibleInReflections _ValuePlugProxy · .value: bool Visibilité dans les réflexions.
visible_in_refractions visibleInRefractions _ValuePlugProxy · .value: bool Visibilité dans les réfractions.
volume_samples volumeSamples _ValuePlugProxy · .value: int Nombre d’échantillons de volume.
volume_samples_override volumeSamplesOverride _ValuePlugProxy · .value: bool Activation de l’override des échantillons de volume.
motion_blur motionBlur _ValuePlugProxy · .value: bool Participation au motion blur.
Specs héritées de DAGNode93
Propriété Plug Maya Retour Description
use_object_color useObjectColor _ValuePlugProxy · .value: int Mode d’utilisation de la couleur de l’objet.
visibility visibility _ValuePlugProxy · .value: bool Visibilité locale du nœud ; elle ne résume pas la visibilité de toute sa hiérarchie.
template template _ValuePlugProxy · .value: bool Affichage de l’objet en mode template.
lod_visibility lodVisibility _ValuePlugProxy · .value: bool Visibilité associée au niveau de détail.
object_color objectColor _ValuePlugProxy · .value: int Indice de couleur de l’objet.
object_color_rgb objectColorRGB _ValuePlugProxy · .value: tuple[float, float, float] Couleur RGB de l’objet.
object_color_r objectColorR _ValuePlugProxy · .value: float Composante R de object_color_rgb.
object_color_g objectColorG _ValuePlugProxy · .value: float Composante G de object_color_rgb.
object_color_b objectColorB _ValuePlugProxy · .value: float Composante B de object_color_rgb.
wire_color_rgb wireColorRGB _ValuePlugProxy · .value: tuple[float, float, float] Couleur RGB du wireframe.
wire_color_r wireColorRGB.wireColorR _ValuePlugProxy · .value: float Composante R de wire_color_rgb.
wire_color_g wireColorRGB.wireColorG _ValuePlugProxy · .value: float Composante G de wire_color_rgb.
wire_color_b wireColorRGB.wireColorB _ValuePlugProxy · .value: float Composante B de wire_color_rgb.
hidden_in_outliner hiddenInOutliner _ValuePlugProxy · .value: bool Masquage dans l’Outliner.
use_outliner_color useOutlinerColor _ValuePlugProxy · .value: bool Activation de la couleur personnalisée dans l’Outliner.
outliner_color outlinerColor _ValuePlugProxy · .value: tuple[float, float, float] Couleur RGB dans l’Outliner.
outliner_color_r outlinerColorR _ValuePlugProxy · .value: float Composante R de outliner_color.
outliner_color_g outlinerColorG _ValuePlugProxy · .value: float Composante G de outliner_color.
outliner_color_b outlinerColorB _ValuePlugProxy · .value: float Composante B de outliner_color.
ghosting ghosting _ValuePlugProxy · .value: bool Activation du ghosting Maya.
ghosting_mode ghostingMode _ValuePlugProxy · .value: int Mode de ghosting.
ghost_custom_steps ghostCustomSteps CompoundProxy Réglages composés des pas de ghosting.
ghost_pre_frames ghostCustomSteps.ghostPreFrames _ValuePlugProxy · .value: int Nombre de frames avant la frame courante.
ghost_post_frames ghostCustomSteps.ghostPostFrames _ValuePlugProxy · .value: int Nombre de frames après la frame courante.
ghosts_step ghostCustomSteps.ghostsStep _ValuePlugProxy · .value: int Pas entre les échantillons de ghosting.
ghost_frames ghostFrames TypedArrayProxy Liste native des frames de ghosting.
ghost_use_driver ghostUseDriver _ValuePlugProxy · .value: bool Utilisation d’un driver pour le ghosting.
ghost_driver ghostDriver None Connexion au driver de ghosting.
ghost_color_pre ghostColorPre _ValuePlugProxy · .value: tuple[float, float, float] Couleur des ghosts précédents.
ghost_color_pre_r ghostColorPre.ghostColorPreR _ValuePlugProxy · .value: float Composante R de ghost_color_pre.
ghost_color_pre_g ghostColorPre.ghostColorPreG _ValuePlugProxy · .value: float Composante G de ghost_color_pre.
ghost_color_pre_b ghostColorPre.ghostColorPreB _ValuePlugProxy · .value: float Composante B de ghost_color_pre.
ghost_color_post ghostColorPost _ValuePlugProxy · .value: tuple[float, float, float] Couleur des ghosts suivants.
ghost_color_post_r ghostColorPost.ghostColorPostR _ValuePlugProxy · .value: float Composante R de ghost_color_post.
ghost_color_post_g ghostColorPost.ghostColorPostG _ValuePlugProxy · .value: float Composante G de ghost_color_post.
ghost_color_post_b ghostColorPost.ghostColorPostB _ValuePlugProxy · .value: float Composante B de ghost_color_post.
ghost_opacity_range ghostOpacityRange _ValuePlugProxy · .value: tuple[float, float] Plage composée d’opacité du ghosting.
ghost_near_opacity ghostOpacityRange.ghostNearOpacity _ValuePlugProxy · .value: float Opacité des ghosts proches.
ghost_far_opacity ghostOpacityRange.ghostFarOpacity _ValuePlugProxy · .value: float Opacité des ghosts éloignés.
render_info renderInfo CompoundProxy Informations composées de rendu du nœud.
identification renderInfo.identification _ValuePlugProxy · .value: int Identifiant natif dans les informations de rendu.
layer_renderable renderInfo.layerRenderable _ValuePlugProxy · .value: bool Participation au rendu du layer.
layer_override_color renderInfo.layerOverrideColor _ValuePlugProxy · .value: int Indice de couleur de remplacement du layer.
render_layer_info renderLayerInfo ArrayCompoundProxy Tableau d’informations par render layer.
render_layer_id renderLayerInfo[].renderLayerId IndexedPathProxy Identifiant du render layer à l’indice demandé.
render_layer_renderable renderLayerInfo[].renderLayerRenderable IndexedPathProxy Participation au rendu du layer à l’indice demandé.
render_layer_color renderLayerInfo[].renderLayerColor IndexedPathProxy Indice de couleur du render layer.
selection_child_highlighting selectionChildHighlighting _ValuePlugProxy · .value: bool Surlignage des enfants lors de la sélection.
inst_obj_groups instObjGroups ArrayCompoundProxy Groupes d’appartenance par instance DAG.
object_groups instObjGroups[].objectGroups AttributeError (accès direct) Groupes de composants sous une instance DAG.
object_grp_comp_list instObjGroups[].objectGroups[].objectGrpCompList IndexedPathProxy Composants du groupe à deux indices logiques.
object_group_id instObjGroups[].objectGroups[].objectGroupId IndexedPathProxy Identifiant du groupe de composants.
object_grp_color instObjGroups[].objectGroups[].objectGrpColor IndexedPathProxy Indice de couleur du groupe de composants.
matrix matrix _ValuePlugProxy · .value: om.MMatrix Matrice locale évaluée par Maya.
inverse_matrix inverseMatrix _ValuePlugProxy · .value: om.MMatrix Inverse de la matrice locale.
parent_matrix parentMatrix TypedArrayProxy Matrices des parents, indexées par instance.
parent_inverse_matrix parentInverseMatrix TypedArrayProxy Inverses des matrices des parents.
world_matrix worldMatrix TypedArrayProxy Matrices monde, indexées par instance DAG.
world_inverse_matrix worldInverseMatrix TypedArrayProxy Inverses des matrices monde.
intermediate_object intermediateObject _ValuePlugProxy · .value: bool Marqueur Maya de shape intermédiaire.
draw_override drawOverride CompoundProxy Ensemble des overrides d’affichage.
override_enabled overrideEnabled _ValuePlugProxy · .value: bool Activation des overrides d’affichage.
override_display_type overrideDisplayType _ValuePlugProxy · .value: int Type d’affichage imposé par l’override.
override_level_of_detail overrideLevelOfDetail _ValuePlugProxy · .value: int Niveau de détail imposé par l’override.
override_shading overrideShading _ValuePlugProxy · .value: bool Activation du shading dans l’override.
override_texturing overrideTexturing _ValuePlugProxy · .value: bool Activation des textures dans l’override.
override_playback overridePlayback _ValuePlugProxy · .value: bool Affichage pendant la lecture, selon l’override.
override_visibility overrideVisibility _ValuePlugProxy · .value: bool Visibilité imposée par l’override.
override_color overrideColor _ValuePlugProxy · .value: int Indice de couleur de l’override.
hide_on_playback hideOnPlayback _ValuePlugProxy · .value: bool Masquage pendant la lecture.
override_rgb_colors overrideRGBColors _ValuePlugProxy · .value: bool Utilisation de la couleur RGB pour l’override.
override_color_rgb overrideColorRGB _ValuePlugProxy · .value: tuple[float, float, float] Couleur RGB de l’override.
override_color_r overrideColorRGB.overrideColorR _ValuePlugProxy · .value: float Composante R de override_color_rgb.
override_color_g overrideColorRGB.overrideColorG _ValuePlugProxy · .value: float Composante G de override_color_rgb.
override_color_b overrideColorRGB.overrideColorB _ValuePlugProxy · .value: float Composante B de override_color_rgb.
override_color_a overrideColorA _ValuePlugProxy · .value: float Composante alpha de la couleur d’override.
bounding_box boundingBox CompoundProxy Plugs composés de la bounding box ; distincts de fn_bounding_box.
bounding_box_min boundingBox.boundingBoxMin _ValuePlugProxy · .value: tuple[float, float, float] Coin minimum de la bounding box locale.
bounding_box_min_x boundingBox.boundingBoxMin.boundingBoxMinX _ValuePlugProxy · .value: float Composante X de bounding_box_min.
bounding_box_min_y boundingBox.boundingBoxMin.boundingBoxMinY _ValuePlugProxy · .value: float Composante Y de bounding_box_min.
bounding_box_min_z boundingBox.boundingBoxMin.boundingBoxMinZ _ValuePlugProxy · .value: float Composante Z de bounding_box_min.
bounding_box_max boundingBox.boundingBoxMax _ValuePlugProxy · .value: tuple[float, float, float] Coin maximum de la bounding box locale.
bounding_box_max_x boundingBox.boundingBoxMax.boundingBoxMaxX _ValuePlugProxy · .value: float Composante X de bounding_box_max.
bounding_box_max_y boundingBox.boundingBoxMax.boundingBoxMaxY _ValuePlugProxy · .value: float Composante Y de bounding_box_max.
bounding_box_max_z boundingBox.boundingBoxMax.boundingBoxMaxZ _ValuePlugProxy · .value: float Composante Z de bounding_box_max.
bounding_box_size boundingBox.boundingBoxSize _ValuePlugProxy · .value: tuple[float, float, float] Dimensions de la bounding box locale.
bounding_box_size_x boundingBox.boundingBoxSize.boundingBoxSizeX _ValuePlugProxy · .value: float Composante X de bounding_box_size.
bounding_box_size_y boundingBox.boundingBoxSize.boundingBoxSizeY _ValuePlugProxy · .value: float Composante Y de bounding_box_size.
bounding_box_size_z boundingBox.boundingBoxSize.boundingBoxSizeZ _ValuePlugProxy · .value: float Composante Z de bounding_box_size.
center center _ValuePlugProxy · .value: tuple[float, float, float] Centre de la bounding box locale.
center_x center.boundingBoxCenterX _ValuePlugProxy · .value: float Composante X de center.
center_y center.boundingBoxCenterY _ValuePlugProxy · .value: float Composante Y de center.
center_z center.boundingBoxCenterZ _ValuePlugProxy · .value: float Composante Z de center.
Specs héritées de ContainerBase21
Propriété Plug Maya Retour Description
black_box blackBox _ValuePlugProxy · .value: bool Présentation du container en boîte noire dans Maya.
border_connections borderConnections list[str] Données de connexions à la frontière du container.
creator creator _ValuePlugProxy · .value: str Métadonnée de créateur du container.
creation_date creationDate _ValuePlugProxy · .value: str Métadonnée de date de création.
custom_treatment customTreatment _ValuePlugProxy · .value: str Traitement personnalisé du container.
hyper_layout hyperLayout None Connexion au layout de l’Hypergraph.
icon_name iconName _ValuePlugProxy · .value: str Nom d’icône associé au container.
is_collapsed isCollapsed _ValuePlugProxy · .value: bool État replié du container dans les vues Maya.
is_hierarchical_connection isHierarchicalConnection TypedArrayProxy Indicateurs de connexions hiérarchiques.
rmb_command rmbCommand _ValuePlugProxy · .value: str Commande de menu contextuel associée au container.
template_name templateName _ValuePlugProxy · .value: str Nom du template du container.
template_path templatePath _ValuePlugProxy · .value: str Chemin du template du container.
template_version templateVersion _ValuePlugProxy · .value: int Version du template du container.
container_type containerType _ValuePlugProxy · .value: str Métadonnée de type du container.
ui_treatment uiTreatment _ValuePlugProxy · .value: int Mode de présentation du container.
view_mode viewMode _ValuePlugProxy · .value: int Mode de vue du container.
view_name viewName _ValuePlugProxy · .value: str Nom de la vue du container.
published_node_info publishedNodeInfo ArrayCompoundProxy Tableau des informations sur les nœuds publiés.
published_node publishedNodeInfo[].publishedNode IndexedPathProxy Connexion vers le nœud publié à un indice donné.
is_hierarchical_node publishedNodeInfo[].isHierarchicalNode IndexedPathProxy Indicateur hiérarchique d’un nœud publié.
published_node_type publishedNodeInfo[].publishedNodeType IndexedPathProxy Type déclaré d’un nœud publié.
Specs héritées de DGNode6
Propriété Plug Maya Retour Description
message message None Plug de message du nœud ; sert aux connexions, sans valeur numérique.
frozen frozen _ValuePlugProxy · .value: bool État natif de gel de l’évaluation.
is_historically_interesting isHistoricallyInteresting _ValuePlugProxy · .value: int Niveau d’intérêt du nœud dans l’historique Maya.
bin_membership binMembership _ValuePlugProxy · .value: str Appartenance aux bins Maya.
caching_enabled caching _ValuePlugProxy · .value: bool Activation du cache natif du nœud.
caching_node_state nodeState _ValuePlugProxy · .value: int État d’évaluation natif nodeState.

node.snapshot(profile: str='rig') → CurveSnapshotMéthode

Capture un dictionnaire d’état SVD et ajoute les champs spécifiques de la classe. Mémorise cette capture sur le wrapper ; ce n’est pas une sauvegarde complète de scène.

Élément Type / comportement
Retour CurveSnapshot
profile str · défaut : 'rig'

node.closest_point(point: Union[om.MPoint, List[float], Tuple[float, float, float]], tolerance: Optional[float]=None, guess: Optional[float]=None, space: Optional[om.MSpace]=None) → Tuple[om.MPoint, float]Méthode

Recherche le point géométrique le plus proche de la position fournie.

Élément Type / comportement
Retour Tuple[om.MPoint, float]
point Union[om.MPoint, List[float], Tuple[float, float, float]] · défaut : —
tolerance Optional[float] · défaut : None
guess Optional[float] · défaut : None
space Optional[om.MSpace] · défaut : None

Nécessite une courbe live valide ; l’absence de function set lève RuntimeError.

node.get_cv_position(index: int, space: Optional[om.MSpace]=None) → om.MPointMéthode

Lit la position d’un CV dans l’espace demandé.

Élément Type / comportement
Retour om.MPoint
index int · défaut : —
space Optional[om.MSpace] · défaut : None

Nécessite une courbe live valide ; l’absence de function set lève RuntimeError.

node.get_cv_positions(space: Optional[om.MSpace]=None) → om.MPointArrayMéthode

Lit toutes les positions de CVs dans l’espace demandé.

Élément Type / comportement
Retour om.MPointArray
space Optional[om.MSpace] · défaut : None

Nécessite une courbe live valide ; l’absence de function set lève RuntimeError.

node.set_cv_position(index: int, point: Union[om.MPoint, List[float], Tuple[float, float, float]], space: Optional[om.MSpace]=None) → NoneMéthode

Modifie la position d’un CV live.

Élément Type / comportement
Retour None
index int · défaut : —
point Union[om.MPoint, List[float], Tuple[float, float, float]] · défaut : —
space Optional[om.MSpace] · défaut : None

Nécessite une courbe live valide ; l’absence de function set lève RuntimeError.

node.set_cv_positions(points: Union[om.MPointArray, List[om.MPoint], List[List[float]]], space: Optional[om.MSpace]=None) → NoneMéthode

Modifie toutes les positions de CVs live et met à jour la géométrie.

Élément Type / comportement
Retour None
points Union[om.MPointArray, List[om.MPoint], List[List[float]]] · défaut : —
space Optional[om.MSpace] · défaut : None

Nécessite une courbe live valide ; l’absence de function set lève RuntimeError.

node.cvs_in_range(start: int, end: int) → om.MObjectMéthode

Renvoie le composant Maya correspondant à un intervalle de CVs.

Élément Type / comportement
Retour om.MObject
start int · défaut : —
end int · défaut : —

Nécessite une courbe live valide ; l’absence de function set lève RuntimeError.

node.distance_to_point(point: Union[om.MPoint, List[float], Tuple[float, float, float]], space: Optional[om.MSpace]=None) → floatMéthode

Calcule la distance entre une position et la courbe.

Élément Type / comportement
Retour float
point Union[om.MPoint, List[float], Tuple[float, float, float]] · défaut : —
space Optional[om.MSpace] · défaut : None

Nécessite une courbe live valide ; l’absence de function set lève RuntimeError.

node.find_length_from_param(param: float) → floatMéthode

Calcule la longueur de courbe entre son début et le paramètre demandé.

Élément Type / comportement
Retour float
param float · défaut : —

Nécessite une courbe live valide ; l’absence de function set lève RuntimeError.

node.find_param_from_length(length: float, tolerance: Optional[float]=None) → floatMéthode

Recherche le paramètre correspondant à une longueur depuis le début de la courbe.

Élément Type / comportement
Retour float
length float · défaut : —
tolerance Optional[float] · défaut : None

Nécessite une courbe live valide ; l’absence de function set lève RuntimeError.

node.get_param_at_point(point: Union[om.MPoint, List[float], Tuple[float, float, float]], tolerance: Optional[float]=None, space: Optional[om.MSpace]=None) → floatMéthode

Recherche le ou les paramètres au point fourni ; ce n’est pas une projection automatique depuis un point éloigné.

Élément Type / comportement
Retour float
point Union[om.MPoint, List[float], Tuple[float, float, float]] · défaut : —
tolerance Optional[float] · défaut : None
space Optional[om.MSpace] · défaut : None

Nécessite une courbe live valide ; l’absence de function set lève RuntimeError.

node.get_point_at_param(param: float, space: Optional[om.MSpace]=None) → om.MPointMéthode

Évalue la position au paramètre demandé.

Élément Type / comportement
Retour om.MPoint
param float · défaut : —
space Optional[om.MSpace] · défaut : None

Nécessite une courbe live valide ; l’absence de function set lève RuntimeError.

node.is_param_on_curve(param: float) → boolMéthode

Vérifie si le paramètre appartient au domaine de la courbe.

Élément Type / comportement
Retour bool
param float · défaut : —

Nécessite une courbe live valide ; l’absence de function set lève RuntimeError.

node.is_point_on_curve(point: Union[om.MPoint, List[float], Tuple[float, float, float]], tolerance: Optional[float]=None, space: Optional[om.MSpace]=None) → boolMéthode

Teste l’appartenance du point à la courbe avec une tolérance.

Élément Type / comportement
Retour bool
point Union[om.MPoint, List[float], Tuple[float, float, float]] · défaut : —
tolerance Optional[float] · défaut : None
space Optional[om.MSpace] · défaut : None

Nécessite une courbe live valide ; l’absence de function set lève RuntimeError.

node.get_knot(index: int) → floatMéthode

Lit un knot à l’indice demandé.

Élément Type / comportement
Retour float
index int · défaut : —

Nécessite une courbe live valide ; l’absence de function set lève RuntimeError.

node.set_knot(index: int, param: float) → NoneMéthode

Modifie un knot à l’indice demandé.

Élément Type / comportement
Retour None
index int · défaut : —
param float · défaut : —

Nécessite une courbe live valide ; l’absence de function set lève RuntimeError.

node.set_knots_in_range(start_index: int, end_index: int, params: Union[om.MDoubleArray, Sequence[float]]) → NoneMéthode

Modifie un intervalle de knots et met à jour la courbe.

Élément Type / comportement
Retour None
start_index int · défaut : —
end_index int · défaut : —
params Union[om.MDoubleArray, Sequence[float]] · défaut : —

Nécessite une courbe live valide ; l’absence de function set lève RuntimeError.

node.get_length(tolerance: Optional[float]=None) → floatMéthode

Calcule la longueur de la courbe avec la tolérance demandée.

Élément Type / comportement
Retour float
tolerance Optional[float] · défaut : None

Nécessite une courbe live valide ; l’absence de function set lève RuntimeError.

node.make_multiple_end_knots() → NoneMéthode

Ajuste les knots d’extrémité via le function set natif.

Élément Type / comportement
Retour None

Nécessite une courbe live valide ; l’absence de function set lève RuntimeError.

node.get_normal_at_param(param: float, space: Optional[om.MSpace]=None) → om.MVectorMéthode

Renvoie la normale au paramètre demandé.

Élément Type / comportement
Retour om.MVector
param float · défaut : —
space Optional[om.MSpace] · défaut : None

Nécessite une courbe live valide ; l’absence de function set lève RuntimeError.

node.reverse() → NoneMéthode

Inverse la direction de la courbe via le function set natif.

Élément Type / comportement
Retour None

Nécessite une courbe live valide ; l’absence de function set lève RuntimeError.

node.tangent_at_param(param: float, space: Optional[om.MSpace]=None) → om.MVectorMéthode

Renvoie la tangente au paramètre demandé.

Élément Type / comportement
Retour om.MVector
param float · défaut : —
space Optional[om.MSpace] · défaut : None

Nécessite une courbe live valide ; l’absence de function set lève RuntimeError.

node.translate_by(vector: Union[om.MVector, Sequence[float], float, int]) → NoneMéthode

Ajoute une translation. Pour une Curve, déplace les CVs en espace objet ; pour un Transform, modifie la transformation.

Élément Type / comportement
Retour None
vector Union[om.MVector, Sequence[float], float, int] · défaut : —

Nécessite une courbe live valide ; l’absence de function set lève RuntimeError.

node.rotate_by(rotation: Union[om.MEulerRotation, om.MQuaternion, om.MVector, Sequence[Union[float, om.MAngle]]]) → NoneMéthode

Applique une rotation. Pour une Curve, tourne les CVs autour de l’origine objet ; pour un Transform, modifie sa rotation.

Élément Type / comportement
Retour None
rotation Union[om.MEulerRotation, om.MQuaternion, om.MVector, Sequence[Union[float, om.MAngle]]] · défaut : —

Nécessite une courbe live valide ; l’absence de function set lève RuntimeError.

node.scale_by(scale: Union[om.MVector, Sequence[float], float, int]) → NoneMéthode

Multiplie les positions des CVs, axe par axe, autour de l’origine objet.

Élément Type / comportement
Retour None
scale Union[om.MVector, Sequence[float], float, int] · défaut : —

Nécessite une courbe live valide ; l’absence de function set lève RuntimeError.

node.export_curve(name: str) → NoneMéthode

Écrit la définition de la courbe dans un fichier JSON sous export_path.

Élément Type / comportement
Retour None
name str · défaut : —

La méthode ne contient aucun return : elle renvoie None, malgré son annotation str. Elle écrit sur disque ; vérifier export_path et le nom avant l’appel. Nécessite une courbe live valide ; l’absence de function set lève RuntimeError.

node.import_curve(name: str) → NoneMéthode

Lit un JSON puis assigne CVs, knots, degré, forme et état rationnel dans cet ordre ; voir les limites du parcours actuel.

Élément Type / comportement
Retour None
name str · défaut : —

Le parcours n’est pas un import transactionnel validé : les setters de degré et de forme refusent une courbe live, et le setter de CVs refuse un wrapper sans function set. Ne pas l’utiliser pour remplacer une courbe de production. Nécessite une courbe live valide ; l’absence de function set lève RuntimeError.

Méthodes héritées de DAGNode4
Méthode Retour Description
create None Crée un nœud DAG absent avec son éventuel parent préparé.
delete None Utilise la suppression de DGNode.
finalize None Mémorise le dictionnaire puis délègue le replay à DGNode.finalize().
set_parent None Reparente le nœud live.
Méthodes héritées de DGNode3
Méthode Retour Description
snapshot_svd SVDSnapshot Capture Source / Value / Destinations pour la liste demandée.
svd SVDView Renvoie une vue live en lecture seule de la source, de la valeur et des destinations ; ce n’est pas une capture figée.
clear_attr_cache None Vide le cache d’attributs de cette instance ; ne supprime aucun nœud et ne vide pas le registre global de wrappers.
Méthodes héritées de Node2
Méthode Retour Description
has_fn(fn_type) bool Tester la compatibilité avec un function set Maya.
clear_node_registry() None Détacher les wrappers enregistrés et vider leur registre partagé.
Attribut Valeur / composition
NODE_TYPE 'nurbsCurve'
SPEC_LAYERS get_dg_specs_all, get_container_base_specs_all, get_dag_specs_all, get_geometry_shape_specs_all, get_control_point_specs_all, get_curve_specs_all, get_curve_spec_overrides_map

NODE_REGISTRY et les autres attributs de classe non redéfinis restent hérités. Les types Snapshot exportés décrivent des dictionnaires ; utiliser node.snapshot() pour effectuer une capture.

Point Comportement
Identité Un nœud recréé sous le même nom est un nouvel objet Maya.
Création et géométrie Créer une shape vide ne construit pas sa topologie. L’exemple ci-dessous utilise API 2.0 pour la géométrie et le wrapper pour les opérations documentées.
Capture Les snapshots peuvent contenir des objets Maya ; ne pas supposer un JSON prêt à exporter ni une reconstruction complète de géométrie.
area Le code renvoie la méthode native mfn_curve.area, sans l’appeler : retour callable sur une courbe live, 0.0 sinon, malgré l’annotation float. Pour obtenir un nombre, appeler node.mfn_curve.area() sur une courbe valide.
cvs Le setter ne déplace pas les CVs live : il mémorise les points et refuse l’absence de function set. Pour une édition live, utiliser cv_positions ou set_cv_positions().
export_curve La méthode ne contient aucun return : elle renvoie None, malgré son annotation str. Elle écrit sur disque ; vérifier export_path et le nom avant l’appel.
import_curve Le parcours n’est pas un import transactionnel validé : les setters de degré et de forme refusent une courbe live, et le setter de CVs refuse un wrapper sans function set. Ne pas l’utiliser pour remplacer une courbe de production.

Exemple autonome pour le Script Editor Python de Maya. Dans mayapy, initialiser maya.standalone avant ce bloc. La démonstration crée ses propres nœuds et les supprime dans le finally.

from uuid import uuid4
import maya.api.OpenMaya as om
from weSkel.src.core.node.dag.transform.lib import Transform
from weSkel.src.core.node.dag.curve.lib import Curve
parent = Transform("api_curve_" + uuid4().hex[:8])
try:
parent.create()
points = om.MPointArray([(0, 0, 0), (1, 1, 0), (2, 1, 0), (3, 0, 0)])
obj = om.MFnNurbsCurve().create(points, [0, 0, 0, 1, 1, 1], 3,
om.MFnNurbsCurve.kOpen, False, False, parent.mobject)
node = Curve(obj)
assert node.num_cvs == 4
before = node.get_cv_position(0)
node.set_cv_position(0, before + om.MVector(0, 0.25, 0))
assert abs(node.get_cv_position(0).y - 0.25) < 1e-6
assert node.get_length() > 0.0
print("Curve: native shape, CV editing and length OK")
finally:
parent.delete(snapshot=False)

Résultat attendu : Curve: native shape, CV editing and length OK.

Checkpoint SDK 87c3486. Inventaire des membres et lectures de contrôle vérifiés sous Maya 2025.3 et 2026.3 ; exemple exécuté dans les deux versions. Les méthodes ne sont pas toutes couvertes par cet exemple. Les limites indiquées restent présentes dans les sources ; le package compilé n’est pas validé par ces contrôles.