Bases: MayaInstancePlugin
, OptionalPyblishPluginMixin
Validate all joints are hidden visually.
This includes being hidden
- visibility off,
- in a display layer that has visibility off,
- having hidden parents or
- being an intermediate object.
Source code in client/ayon_maya/plugins/publish/validate_rig_joints_hidden.py
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50 | class ValidateRigJointsHidden(plugin.MayaInstancePlugin,
OptionalPyblishPluginMixin):
"""Validate all joints are hidden visually.
This includes being hidden:
- visibility off,
- in a display layer that has visibility off,
- having hidden parents or
- being an intermediate object.
"""
order = ValidateContentsOrder
families = ['rig']
label = "Joints Hidden"
actions = [ayon_maya.api.action.SelectInvalidAction,
RepairAction]
optional = True
@staticmethod
def get_invalid(instance):
joints = cmds.ls(instance, type='joint', long=True)
return [j for j in joints if lib.is_visible(j, displayLayer=True)]
def process(self, instance):
"""Process all the nodes in the instance 'objectSet'"""
if not self.is_active(instance.data):
return
invalid = self.get_invalid(instance)
if invalid:
raise PublishValidationError(
"Visible joints found: {0}".format(invalid))
@classmethod
def repair(cls, instance):
import maya.mel as mel
mel.eval("HideJoints")
|
process(instance)
Process all the nodes in the instance 'objectSet'
Source code in client/ayon_maya/plugins/publish/validate_rig_joints_hidden.py
37
38
39
40
41
42
43
44
45 | def process(self, instance):
"""Process all the nodes in the instance 'objectSet'"""
if not self.is_active(instance.data):
return
invalid = self.get_invalid(instance)
if invalid:
raise PublishValidationError(
"Visible joints found: {0}".format(invalid))
|