[Bf-extensions-cvs] [80d5a67f] master: Rigify: reduce the number of noinspection comment markers.
Alexander Gavrilov
noreply at git.blender.org
Tue Nov 22 13:42:15 CET 2022
Commit: 80d5a67fc4059fe41931dac790cc8ede0d967b2f
Author: Alexander Gavrilov
Date: Mon Nov 21 15:28:06 2022 +0200
Branches: master
https://developer.blender.org/rBA80d5a67fc4059fe41931dac790cc8ede0d967b2f
Rigify: reduce the number of noinspection comment markers.
- Introduce IdPropSequence, declaring the interface of python
collection properties.
- Introduce additional accessors to injected bpy.types properties.
- Rename a few fields and functions.
- Prefer the more standard 'noqa' tag comment.
===================================================================
M rigify/__init__.py
M rigify/generate.py
M rigify/metarig_menu.py
M rigify/operators/action_layers.py
M rigify/operators/copy_mirror_parameters.py
M rigify/rig_ui_template.py
M rigify/rigs/basic/raw_copy.py
M rigify/ui.py
M rigify/utils/action_layers.py
M rigify/utils/animation.py
M rigify/utils/misc.py
M rigify/utils/rig.py
M rigify/utils/widgets.py
===================================================================
diff --git a/rigify/__init__.py b/rigify/__init__.py
index 66fe8f91..42fde50d 100644
--- a/rigify/__init__.py
+++ b/rigify/__init__.py
@@ -154,8 +154,7 @@ class RigifyFeatureSets(bpy.types.PropertyGroup):
# noinspection PyPep8Naming, SpellCheckingInspection
class RIGIFY_UL_FeatureSets(bpy.types.UIList):
- # noinspection PyMethodOverriding
- def draw_item(self, context, layout, data, item, icon, active_data, active_propname):
+ def draw_item(self, context, layout, data, item, icon, active_data, active_propname, _index=0, _flag=0):
# rigify_prefs: RigifyPreferences = data
# feature_sets = rigify_prefs.rigify_feature_sets
# active_set: RigifyFeatureSets = feature_sets[rigify_prefs.active_feature_set_index]
@@ -506,7 +505,6 @@ classes = (
)
-# noinspection PyPep8Naming
def register():
from bpy.utils import register_class
@@ -561,16 +559,16 @@ def register():
('THEME20', 'THEME20', '')
), name='Theme')
- IDStore = bpy.types.WindowManager
- IDStore.rigify_collection = EnumProperty(
+ id_store = bpy.types.WindowManager
+ id_store.rigify_collection = EnumProperty(
items=(("All", "All", "All"),), default="All",
name="Rigify Active Collection",
description="The selected rig collection")
- IDStore.rigify_widgets = CollectionProperty(type=RigifyName)
- IDStore.rigify_types = CollectionProperty(type=RigifyName)
- IDStore.rigify_active_type = IntProperty(name="Rigify Active Type",
- description="The selected rig type")
+ id_store.rigify_widgets = CollectionProperty(type=RigifyName)
+ id_store.rigify_types = CollectionProperty(type=RigifyName)
+ id_store.rigify_active_type = IntProperty(name="Rigify Active Type",
+ description="The selected rig type")
bpy.types.Armature.rigify_force_widget_update = BoolProperty(
name="Overwrite Widget Meshes",
@@ -618,7 +616,7 @@ def register():
name="Finalize Script",
description="Run this script after generation to apply user-specific changes")
- IDStore.rigify_transfer_only_selected = BoolProperty(
+ id_store.rigify_transfer_only_selected = BoolProperty(
name="Transfer Only Selected",
description="Transfer selected bones only", default=True)
@@ -645,7 +643,6 @@ def register_rig_parameters():
traceback.print_exc()
-# noinspection PyPep8Naming
def unregister():
from bpy.utils import unregister_class
@@ -653,30 +650,30 @@ def unregister():
prefs.register_feature_sets(False)
# Properties on PoseBones and Armature. (Annotated to suppress unknown attribute warnings.)
- PoseBone: typing.Any = bpy.types.PoseBone
-
- del PoseBone.rigify_type
- del PoseBone.rigify_parameters
-
- ArmStore: typing.Any = bpy.types.Armature
-
- del ArmStore.rigify_layers
- del ArmStore.active_feature_set
- del ArmStore.rigify_colors
- del ArmStore.rigify_selection_colors
- del ArmStore.rigify_colors_index
- del ArmStore.rigify_colors_lock
- del ArmStore.rigify_theme_to_add
- del ArmStore.rigify_force_widget_update
- del ArmStore.rigify_target_rig
- del ArmStore.rigify_rig_ui
-
- IDStore: typing.Any = bpy.types.WindowManager
-
- del IDStore.rigify_collection
- del IDStore.rigify_types
- del IDStore.rigify_active_type
- del IDStore.rigify_transfer_only_selected
+ pose_bone: typing.Any = bpy.types.PoseBone
+
+ del pose_bone.rigify_type
+ del pose_bone.rigify_parameters
+
+ arm_store: typing.Any = bpy.types.Armature
+
+ del arm_store.rigify_layers
+ del arm_store.active_feature_set
+ del arm_store.rigify_colors
+ del arm_store.rigify_selection_colors
+ del arm_store.rigify_colors_index
+ del arm_store.rigify_colors_lock
+ del arm_store.rigify_theme_to_add
+ del arm_store.rigify_force_widget_update
+ del arm_store.rigify_target_rig
+ del arm_store.rigify_rig_ui
+
+ id_store: typing.Any = bpy.types.WindowManager
+
+ del id_store.rigify_collection
+ del id_store.rigify_types
+ del id_store.rigify_active_type
+ del id_store.rigify_transfer_only_selected
# Classes.
for cls in classes:
diff --git a/rigify/generate.py b/rigify/generate.py
index 7060c448..515f1a18 100644
--- a/rigify/generate.py
+++ b/rigify/generate.py
@@ -15,7 +15,9 @@ from .utils.mechanism import refresh_all_drivers
from .utils.misc import gamma_correct, select_object, ArmatureObject, verify_armature_obj
from .utils.collections import (ensure_collection, list_layer_collections,
filter_layer_collections_by_object)
-from .utils.rig import get_rigify_type, get_rigify_layers
+from .utils.rig import get_rigify_type, get_rigify_layers, get_rigify_target_rig,\
+ get_rigify_rig_basename, get_rigify_force_widget_update, get_rigify_finalize_script,\
+ get_rigify_mirror_widgets
from .utils.action_layers import ActionLayerBuilder
from . import base_generate
@@ -68,11 +70,10 @@ class Generator(base_generate.BaseGenerator):
print("Fetch rig.")
meta_data = self.metarig.data
- target_rig: ArmatureObject = meta_data.rigify_target_rig
+ target_rig = get_rigify_target_rig(meta_data)
if not target_rig:
- # noinspection PyUnresolvedReferences
- rig_basename = meta_data.rigify_rig_basename
+ rig_basename = get_rigify_rig_basename(meta_data)
if rig_basename:
rig_new_name = rig_basename
@@ -159,16 +160,14 @@ class Generator(base_generate.BaseGenerator):
self.metarig.data.rigify_widgets_collection = self.widget_collection
- # noinspection PyUnresolvedReferences
- self.use_mirror_widgets = self.metarig.data.rigify_mirror_widgets
+ self.use_mirror_widgets = get_rigify_mirror_widgets(self.metarig.data)
# Build tables for existing widgets
self.old_widget_table = {}
self.new_widget_table = {}
self.widget_mirror_mesh = {}
- # noinspection PyUnresolvedReferences
- if self.metarig.data.rigify_force_widget_update:
+ if get_rigify_force_widget_update(self.metarig.data):
# Remove widgets if force update is set
for obj in list(self.widget_collection.objects):
bpy.data.objects.remove(obj)
@@ -588,8 +587,7 @@ class Generator(base_generate.BaseGenerator):
###########################################
# Execute the finalize script
- # noinspection PyUnresolvedReferences
- finalize_script = metarig.data.rigify_finalize_script
+ finalize_script = get_rigify_finalize_script(metarig.data)
if finalize_script:
bpy.ops.object.mode_set(mode='OBJECT')
@@ -637,8 +635,7 @@ def create_selection_set_for_rig_layer(rig: ArmatureObject, set_name: str, layer
The set will contain all bones on the rig layer with the given index.
"""
- # noinspection PyUnresolvedReferences
- sel_set = rig.selection_sets.add()
+ sel_set = rig.selection_sets.add() # noqa
sel_set.name = set_name
for b in rig.pose.bones:
@@ -660,8 +657,7 @@ def create_selection_sets(obj: ArmatureObject, metarig: ArmatureObject):
and 'bone_selection_sets' not in bpy.context.preferences.addons:
return
- # noinspection PyUnresolvedReferences
- obj.selection_sets.clear()
+ obj.selection_sets.clear() # noqa
rigify_layers = get_rigify_layers(metarig.data)
diff --git a/rigify/metarig_menu.py b/rigify/metarig_menu.py
index f090deda..3f3e7653 100644
--- a/rigify/metarig_menu.py
+++ b/rigify/metarig_menu.py
@@ -114,12 +114,11 @@ def get_internal_metarigs():
[*base_rigify_path, METARIG_DIR])
-# noinspection SpellCheckingInspection
-def infinite_defaultdict():
- return defaultdict(infinite_defaultdict)
+def infinite_default_dict():
+ return defaultdict(infinite_default_dict)
-metarigs = infinite_defaultdict()
+metarigs = infinite_default_dict()
metarig_ops = {}
armature_submenus = []
menu_funcs = []
diff --git a/rigify/operators/action_layers.py b/rigify/operators/action_layers.py
index 9e4b9505..6e6375ef 100644
--- a/rigify/operators/action_layers.py
+++ b/rigify/operators/action_layers.py
@@ -2,7 +2,7 @@
import bpy
-from typing import Tuple, Optional, Sequence
+from typing import Tuple, Optional, Sequence, Any
from bpy.types import PropertyGroup, Action, UIList, UILayout, Context, Panel, Operator, Armature
from bpy.props import (EnumProperty, IntProperty, BoolProperty, StringProperty, FloatProperty,
@@ -12,6 +12,7 @@ from .generic_ui_list import draw_ui_list
from ..utils.naming import mirror_name
from ..utils.action_layers import ActionSlotBase
+from ..utils.rig import get_rigify_target_rig
def get_action_slots(arm: Armature) -> Sequence['ActionSlot']:
@@ -272,8 +273,7 @@ class RIGIFY_UL_action_slots(UIList):
text = action_slot.subtarget
icon = 'BONE_DATA'
- # noinspection PyUnresolvedReferences
- target_rig: Object = data.rigify_target_rig
+ target_rig = get_rigify_target_rig(data)
if not action_slot.subtarget:
row.alert = True
@@ -356,8 +356,7 @@ class DATA_PT_rigify_actions(Panel):
if active_slot.is_corrective:
self.draw_ui_corrective(context, active_slot)
else:
- # noinspection PyUnresolvedReferences
- target_rig = armature_id_store.rigify_target_rig
+ target_rig = get_rigify_target_rig(armature_id_store)
self.draw_slot_ui(layout, active_slot, target_rig)
self.draw_status(active_slot)
@@ -406,8 +405,7 @@ class DATA_PT_rigify_actions(Panel):
if show:
col = layout.column(align=True)
col.enabled = False
- # noinspection PyUnresolvedReferences
- target_rig = metarig.data.rigify_target_rig
+ target_rig = get_rigify_target_rig(metarig.data)
self.draw_slot_ui(col, trigger_slo
@@ Diff output truncated at 10240 characters. @@
More information about the Bf-extensions-cvs
mailing list