fake-bpy-module 20240519__py3-none-any.whl → 20240521__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of fake-bpy-module might be problematic. Click here for more details.
- _bpy_internal/__init__.pyi +1 -0
- _bpy_internal/freedesktop/__init__.pyi +1 -0
- addon_utils/__init__.pyi +1 -0
- animsys_refactor/__init__.pyi +1 -0
- aud/__init__.pyi +1 -0
- bgl/__init__.pyi +119 -145
- bl_app_override/__init__.pyi +1 -0
- bl_app_override/helpers/__init__.pyi +1 -0
- bl_app_template_utils/__init__.pyi +1 -0
- bl_console_utils/__init__.pyi +1 -0
- bl_console_utils/autocomplete/__init__.pyi +1 -0
- bl_console_utils/autocomplete/complete_calltip/__init__.pyi +1 -0
- bl_console_utils/autocomplete/complete_import/__init__.pyi +1 -0
- bl_console_utils/autocomplete/complete_namespace/__init__.pyi +1 -0
- bl_console_utils/autocomplete/intellisense/__init__.pyi +1 -0
- bl_i18n_utils/__init__.pyi +1 -0
- bl_i18n_utils/bl_extract_messages/__init__.pyi +1 -0
- bl_i18n_utils/merge_po/__init__.pyi +1 -0
- bl_i18n_utils/settings/__init__.pyi +1 -0
- bl_i18n_utils/utils/__init__.pyi +1 -0
- bl_i18n_utils/utils_cli/__init__.pyi +1 -0
- bl_i18n_utils/utils_languages_menu/__init__.pyi +1 -0
- bl_i18n_utils/utils_rtl/__init__.pyi +1 -0
- bl_keymap_utils/__init__.pyi +1 -0
- bl_keymap_utils/io/__init__.pyi +1 -0
- bl_keymap_utils/keymap_from_toolbar/__init__.pyi +1 -0
- bl_keymap_utils/keymap_hierarchy/__init__.pyi +1 -0
- bl_keymap_utils/platform_helpers/__init__.pyi +1 -0
- bl_keymap_utils/versioning/__init__.pyi +1 -0
- bl_math/__init__.pyi +1 -0
- bl_operators/__init__.pyi +1 -0
- bl_operators/add_mesh_torus/__init__.pyi +1 -0
- bl_operators/anim/__init__.pyi +1 -0
- bl_operators/assets/__init__.pyi +1 -0
- bl_operators/bmesh/__init__.pyi +1 -0
- bl_operators/bmesh/find_adjacent/__init__.pyi +1 -0
- bl_operators/clip/__init__.pyi +1 -0
- bl_operators/console/__init__.pyi +1 -0
- bl_operators/constraint/__init__.pyi +1 -0
- bl_operators/file/__init__.pyi +1 -0
- bl_operators/freestyle/__init__.pyi +1 -0
- bl_operators/geometry_nodes/__init__.pyi +1 -0
- bl_operators/image/__init__.pyi +1 -0
- bl_operators/mesh/__init__.pyi +1 -0
- bl_operators/node/__init__.pyi +1 -0
- bl_operators/object/__init__.pyi +1 -0
- bl_operators/object_align/__init__.pyi +1 -0
- bl_operators/object_quick_effects/__init__.pyi +1 -0
- bl_operators/object_randomize_transform/__init__.pyi +1 -0
- bl_operators/presets/__init__.pyi +1 -0
- bl_operators/rigidbody/__init__.pyi +1 -0
- bl_operators/screen_play_rendered_anim/__init__.pyi +1 -0
- bl_operators/sequencer/__init__.pyi +1 -0
- bl_operators/spreadsheet/__init__.pyi +1 -0
- bl_operators/userpref/__init__.pyi +1 -0
- bl_operators/uvcalc_follow_active/__init__.pyi +1 -0
- bl_operators/uvcalc_lightmap/__init__.pyi +1 -0
- bl_operators/uvcalc_transform/__init__.pyi +1 -0
- bl_operators/vertexpaint_dirt/__init__.pyi +1 -0
- bl_operators/view3d/__init__.pyi +1 -0
- bl_operators/wm/__init__.pyi +1 -0
- bl_operators/world/__init__.pyi +1 -0
- bl_previews_utils/__init__.pyi +1 -0
- bl_previews_utils/bl_previews_render/__init__.pyi +1 -0
- bl_rna_utils/__init__.pyi +1 -0
- bl_rna_utils/data_path/__init__.pyi +1 -0
- bl_text_utils/__init__.pyi +1 -0
- bl_text_utils/external_editor/__init__.pyi +1 -0
- bl_ui/__init__.pyi +1 -0
- bl_ui/anim/__init__.pyi +1 -0
- bl_ui/asset_shelf/__init__.pyi +1 -0
- bl_ui/generic_ui_list/__init__.pyi +3 -2
- bl_ui/node_add_menu/__init__.pyi +1 -0
- bl_ui/node_add_menu_compositor/__init__.pyi +1 -0
- bl_ui/node_add_menu_geometry/__init__.pyi +1 -0
- bl_ui/node_add_menu_shader/__init__.pyi +1 -0
- bl_ui/node_add_menu_texture/__init__.pyi +1 -0
- bl_ui/properties_animviz/__init__.pyi +1 -0
- bl_ui/properties_collection/__init__.pyi +1 -0
- bl_ui/properties_constraint/__init__.pyi +1 -0
- bl_ui/properties_data_armature/__init__.pyi +1 -0
- bl_ui/properties_data_bone/__init__.pyi +1 -0
- bl_ui/properties_data_camera/__init__.pyi +1 -0
- bl_ui/properties_data_curve/__init__.pyi +1 -0
- bl_ui/properties_data_curves/__init__.pyi +1 -0
- bl_ui/properties_data_empty/__init__.pyi +1 -0
- bl_ui/properties_data_gpencil/__init__.pyi +1 -0
- bl_ui/properties_data_grease_pencil/__init__.pyi +1 -0
- bl_ui/properties_data_lattice/__init__.pyi +1 -0
- bl_ui/properties_data_light/__init__.pyi +1 -0
- bl_ui/properties_data_lightprobe/__init__.pyi +1 -0
- bl_ui/properties_data_mesh/__init__.pyi +1 -0
- bl_ui/properties_data_metaball/__init__.pyi +1 -0
- bl_ui/properties_data_modifier/__init__.pyi +1 -0
- bl_ui/properties_data_pointcloud/__init__.pyi +1 -0
- bl_ui/properties_data_shaderfx/__init__.pyi +1 -0
- bl_ui/properties_data_speaker/__init__.pyi +1 -0
- bl_ui/properties_data_volume/__init__.pyi +1 -0
- bl_ui/properties_freestyle/__init__.pyi +1 -0
- bl_ui/properties_grease_pencil_common/__init__.pyi +1 -0
- bl_ui/properties_mask_common/__init__.pyi +1 -0
- bl_ui/properties_material/__init__.pyi +1 -0
- bl_ui/properties_material_gpencil/__init__.pyi +1 -0
- bl_ui/properties_object/__init__.pyi +1 -0
- bl_ui/properties_output/__init__.pyi +1 -0
- bl_ui/properties_paint_common/__init__.pyi +1 -0
- bl_ui/properties_particle/__init__.pyi +1 -0
- bl_ui/properties_physics_cloth/__init__.pyi +1 -0
- bl_ui/properties_physics_common/__init__.pyi +1 -0
- bl_ui/properties_physics_dynamicpaint/__init__.pyi +1 -0
- bl_ui/properties_physics_field/__init__.pyi +1 -0
- bl_ui/properties_physics_fluid/__init__.pyi +1 -0
- bl_ui/properties_physics_geometry_nodes/__init__.pyi +1 -0
- bl_ui/properties_physics_rigidbody/__init__.pyi +1 -0
- bl_ui/properties_physics_rigidbody_constraint/__init__.pyi +1 -0
- bl_ui/properties_physics_softbody/__init__.pyi +1 -0
- bl_ui/properties_render/__init__.pyi +1 -0
- bl_ui/properties_scene/__init__.pyi +1 -0
- bl_ui/properties_texture/__init__.pyi +1 -0
- bl_ui/properties_view_layer/__init__.pyi +1 -0
- bl_ui/properties_workspace/__init__.pyi +1 -0
- bl_ui/properties_world/__init__.pyi +1 -0
- bl_ui/space_clip/__init__.pyi +1 -0
- bl_ui/space_console/__init__.pyi +1 -0
- bl_ui/space_dopesheet/__init__.pyi +1 -0
- bl_ui/space_filebrowser/__init__.pyi +1 -0
- bl_ui/space_graph/__init__.pyi +1 -0
- bl_ui/space_image/__init__.pyi +1 -0
- bl_ui/space_info/__init__.pyi +1 -0
- bl_ui/space_nla/__init__.pyi +1 -0
- bl_ui/space_node/__init__.pyi +1 -0
- bl_ui/space_outliner/__init__.pyi +1 -0
- bl_ui/space_properties/__init__.pyi +1 -0
- bl_ui/space_sequencer/__init__.pyi +1 -0
- bl_ui/space_spreadsheet/__init__.pyi +1 -0
- bl_ui/space_statusbar/__init__.pyi +1 -0
- bl_ui/space_text/__init__.pyi +1 -0
- bl_ui/space_time/__init__.pyi +1 -0
- bl_ui/space_toolsystem_common/__init__.pyi +1 -0
- bl_ui/space_toolsystem_toolbar/__init__.pyi +1 -0
- bl_ui/space_topbar/__init__.pyi +1 -0
- bl_ui/space_userpref/__init__.pyi +1 -0
- bl_ui/space_view3d/__init__.pyi +1 -0
- bl_ui/space_view3d_toolbar/__init__.pyi +1 -0
- bl_ui/temp_anim_layers/__init__.pyi +1 -0
- bl_ui/utils/__init__.pyi +1 -0
- bl_ui_utils/__init__.pyi +1 -0
- bl_ui_utils/bug_report_url/__init__.pyi +1 -0
- bl_ui_utils/layout/__init__.pyi +1 -0
- blend_render_info/__init__.pyi +1 -0
- blf/__init__.pyi +1 -0
- bmesh/__init__.pyi +1 -0
- bmesh/geometry/__init__.pyi +1 -0
- bmesh/ops/__init__.pyi +37 -36
- bmesh/types/__init__.pyi +3 -1
- bmesh/utils/__init__.pyi +1 -0
- bpy/__init__.pyi +1 -0
- bpy/app/__init__.pyi +1 -0
- bpy/app/handlers/__init__.pyi +1 -0
- bpy/app/icons/__init__.pyi +1 -0
- bpy/app/timers/__init__.pyi +1 -0
- bpy/app/translations/__init__.pyi +1 -0
- bpy/msgbus/__init__.pyi +1 -0
- bpy/ops/__init__.pyi +1 -0
- bpy/ops/action/__init__.pyi +33 -32
- bpy/ops/anim/__init__.pyi +31 -30
- bpy/ops/armature/__init__.pyi +21 -20
- bpy/ops/asset/__init__.pyi +7 -6
- bpy/ops/bl_pkg/__init__.pyi +3 -2
- bpy/ops/boid/__init__.pyi +3 -2
- bpy/ops/brush/__init__.pyi +9 -8
- bpy/ops/buttons/__init__.pyi +9 -8
- bpy/ops/cachefile/__init__.pyi +11 -10
- bpy/ops/camera/__init__.pyi +1 -0
- bpy/ops/clip/__init__.pyi +39 -38
- bpy/ops/cloth/__init__.pyi +1 -0
- bpy/ops/collection/__init__.pyi +7 -6
- bpy/ops/console/__init__.pyi +7 -6
- bpy/ops/constraint/__init__.pyi +29 -28
- bpy/ops/curve/__init__.pyi +35 -34
- bpy/ops/curves/__init__.pyi +17 -16
- bpy/ops/cycles/__init__.pyi +1 -0
- bpy/ops/dpaint/__init__.pyi +5 -4
- bpy/ops/ed/__init__.pyi +5 -4
- bpy/ops/export_anim/__init__.pyi +3 -2
- bpy/ops/export_scene/__init__.pyi +39 -38
- bpy/ops/file/__init__.pyi +19 -18
- bpy/ops/fluid/__init__.pyi +1 -0
- bpy/ops/font/__init__.pyi +21 -20
- bpy/ops/geometry/__init__.pyi +21 -20
- bpy/ops/gizmogroup/__init__.pyi +1 -0
- bpy/ops/gpencil/__init__.pyi +133 -132
- bpy/ops/graph/__init__.pyi +55 -54
- bpy/ops/grease_pencil/__init__.pyi +43 -42
- bpy/ops/image/__init__.pyi +29 -28
- bpy/ops/import_anim/__init__.pyi +9 -8
- bpy/ops/import_curve/__init__.pyi +1 -0
- bpy/ops/import_scene/__init__.pyi +19 -18
- bpy/ops/info/__init__.pyi +5 -4
- bpy/ops/lattice/__init__.pyi +7 -6
- bpy/ops/marker/__init__.pyi +9 -8
- bpy/ops/mask/__init__.pyi +13 -12
- bpy/ops/material/__init__.pyi +1 -0
- bpy/ops/mball/__init__.pyi +7 -6
- bpy/ops/mesh/__init__.pyi +145 -144
- bpy/ops/nla/__init__.pyi +17 -16
- bpy/ops/node/__init__.pyi +33 -32
- bpy/ops/object/__init__.pyi +253 -252
- bpy/ops/outliner/__init__.pyi +41 -40
- bpy/ops/paint/__init__.pyi +73 -72
- bpy/ops/paintcurve/__init__.pyi +1 -0
- bpy/ops/palette/__init__.pyi +5 -4
- bpy/ops/particle/__init__.pyi +15 -14
- bpy/ops/pose/__init__.pyi +43 -42
- bpy/ops/poselib/__init__.pyi +1 -0
- bpy/ops/preferences/__init__.pyi +13 -12
- bpy/ops/ptcache/__init__.pyi +1 -0
- bpy/ops/render/__init__.pyi +3 -2
- bpy/ops/rigidbody/__init__.pyi +17 -16
- bpy/ops/scene/__init__.pyi +25 -24
- bpy/ops/screen/__init__.pyi +21 -20
- bpy/ops/script/__init__.pyi +1 -0
- bpy/ops/sculpt/__init__.pyi +67 -66
- bpy/ops/sculpt_curves/__init__.pyi +3 -2
- bpy/ops/sequencer/__init__.pyi +75 -74
- bpy/ops/sound/__init__.pyi +21 -20
- bpy/ops/spreadsheet/__init__.pyi +1 -0
- bpy/ops/surface/__init__.pyi +13 -12
- bpy/ops/text/__init__.pyi +23 -22
- bpy/ops/text_editor/__init__.pyi +1 -0
- bpy/ops/texture/__init__.pyi +3 -2
- bpy/ops/transform/__init__.pyi +89 -88
- bpy/ops/ui/__init__.pyi +7 -6
- bpy/ops/uilist/__init__.pyi +3 -2
- bpy/ops/uv/__init__.pyi +67 -66
- bpy/ops/view2d/__init__.pyi +1 -0
- bpy/ops/view3d/__init__.pyi +35 -34
- bpy/ops/wm/__init__.pyi +197 -196
- bpy/ops/workspace/__init__.pyi +1 -0
- bpy/ops/world/__init__.pyi +1 -0
- bpy/path/__init__.pyi +1 -0
- bpy/props/__init__.pyi +1 -0
- bpy/types/__init__.pyi +3523 -3341
- bpy/utils/__init__.pyi +1 -0
- bpy/utils/previews/__init__.pyi +1 -0
- bpy/utils/units/__init__.pyi +1 -0
- bpy_extras/__init__.pyi +1 -0
- bpy_extras/anim_utils/__init__.pyi +1 -0
- bpy_extras/asset_utils/__init__.pyi +1 -0
- bpy_extras/bmesh_utils/__init__.pyi +1 -0
- bpy_extras/extensions/__init__.pyi +1 -0
- bpy_extras/extensions/junction_module/__init__.pyi +1 -0
- bpy_extras/id_map_utils/__init__.pyi +1 -0
- bpy_extras/image_utils/__init__.pyi +1 -0
- bpy_extras/io_utils/__init__.pyi +1 -0
- bpy_extras/keyconfig_utils/__init__.pyi +1 -0
- bpy_extras/mesh_utils/__init__.pyi +1 -0
- bpy_extras/node_shader_utils/__init__.pyi +1 -0
- bpy_extras/node_utils/__init__.pyi +1 -0
- bpy_extras/object_utils/__init__.pyi +1 -0
- bpy_extras/view3d_utils/__init__.pyi +1 -0
- bpy_extras/wm_utils/__init__.pyi +1 -0
- bpy_extras/wm_utils/progress_report/__init__.pyi +1 -0
- bpy_restrict_state/__init__.pyi +1 -0
- bpy_types/__init__.pyi +1 -0
- console_python/__init__.pyi +1 -0
- console_shell/__init__.pyi +1 -0
- {fake_bpy_module-20240519.dist-info → fake_bpy_module-20240521.dist-info}/METADATA +1 -1
- fake_bpy_module-20240521.dist-info/RECORD +353 -0
- freestyle/__init__.pyi +1 -0
- freestyle/chainingiterators/__init__.pyi +1 -0
- freestyle/functions/__init__.pyi +1 -0
- freestyle/predicates/__init__.pyi +1 -0
- freestyle/shaders/__init__.pyi +1 -0
- freestyle/types/__init__.pyi +1 -0
- freestyle/utils/ContextFunctions/__init__.pyi +1 -0
- freestyle/utils/__init__.pyi +1 -0
- gpu/__init__.pyi +1 -0
- gpu/capabilities/__init__.pyi +1 -0
- gpu/matrix/__init__.pyi +1 -0
- gpu/platform/__init__.pyi +1 -0
- gpu/select/__init__.pyi +1 -0
- gpu/shader/__init__.pyi +1 -0
- gpu/state/__init__.pyi +1 -0
- gpu/texture/__init__.pyi +1 -0
- gpu/types/__init__.pyi +1 -0
- gpu_extras/__init__.pyi +1 -0
- gpu_extras/batch/__init__.pyi +1 -0
- gpu_extras/presets/__init__.pyi +1 -0
- graphviz_export/__init__.pyi +1 -0
- idprop/__init__.pyi +1 -0
- idprop/types/__init__.pyi +1 -0
- imbuf/__init__.pyi +1 -0
- imbuf/types/__init__.pyi +1 -0
- keyingsets_builtins/__init__.pyi +1 -0
- keyingsets_utils/__init__.pyi +1 -0
- mathutils/__init__.pyi +3 -1
- mathutils/bvhtree/__init__.pyi +1 -0
- mathutils/geometry/__init__.pyi +1 -0
- mathutils/interpolate/__init__.pyi +1 -0
- mathutils/kdtree/__init__.pyi +1 -0
- mathutils/noise/__init__.pyi +1 -0
- nodeitems_builtins/__init__.pyi +1 -0
- nodeitems_utils/__init__.pyi +1 -0
- rna_info/__init__.pyi +1 -0
- rna_keymap_ui/__init__.pyi +1 -0
- rna_prop_ui/__init__.pyi +1 -0
- rna_xml/__init__.pyi +1 -0
- sys_info/__init__.pyi +1 -0
- fake_bpy_module-20240519.dist-info/RECORD +0 -353
- {fake_bpy_module-20240519.dist-info → fake_bpy_module-20240521.dist-info}/WHEEL +0 -0
- {fake_bpy_module-20240519.dist-info → fake_bpy_module-20240521.dist-info}/top_level.txt +0 -0
bpy/ops/sculpt/__init__.pyi
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import typing
|
|
2
|
+
import collections.abc
|
|
2
3
|
import bpy.types
|
|
3
4
|
|
|
4
5
|
GenericType1 = typing.TypeVar("GenericType1")
|
|
@@ -10,7 +11,7 @@ def brush_stroke(
|
|
|
10
11
|
undo: bool | None = None,
|
|
11
12
|
stroke: bpy.types.bpy_prop_collection[bpy.types.OperatorStrokeElement]
|
|
12
13
|
| None = None,
|
|
13
|
-
mode: str |
|
|
14
|
+
mode: str | None = "NORMAL",
|
|
14
15
|
ignore_background_click: bool | typing.Any | None = False,
|
|
15
16
|
):
|
|
16
17
|
"""Sculpt a stroke into the geometry
|
|
@@ -30,7 +31,7 @@ def brush_stroke(
|
|
|
30
31
|
|
|
31
32
|
SMOOTH
|
|
32
33
|
Smooth -- Switch brush to smooth mode for duration of stroke.
|
|
33
|
-
:type mode: str |
|
|
34
|
+
:type mode: str | None
|
|
34
35
|
:param ignore_background_click: Ignore Background Click, Clicks on the background do not start the stroke
|
|
35
36
|
:type ignore_background_click: bool | typing.Any | None
|
|
36
37
|
"""
|
|
@@ -47,9 +48,9 @@ def cloth_filter(
|
|
|
47
48
|
iteration_count: typing.Any | None = 1,
|
|
48
49
|
event_history: bpy.types.bpy_prop_collection[bpy.types.OperatorStrokeElement]
|
|
49
50
|
| None = None,
|
|
50
|
-
type: str |
|
|
51
|
-
force_axis: set[str] |
|
|
52
|
-
orientation: str |
|
|
51
|
+
type: str | None = "GRAVITY",
|
|
52
|
+
force_axis: set[str] | None = {"X", "Y", "Z"},
|
|
53
|
+
orientation: str | None = "LOCAL",
|
|
53
54
|
cloth_mass: typing.Any | None = 1.0,
|
|
54
55
|
cloth_damping: typing.Any | None = 0.0,
|
|
55
56
|
use_face_sets: bool | typing.Any | None = False,
|
|
@@ -85,7 +86,7 @@ def cloth_filter(
|
|
|
85
86
|
|
|
86
87
|
SCALE
|
|
87
88
|
Scale -- Scales the mesh as a soft body using the origin of the object as scale.
|
|
88
|
-
:type type: str |
|
|
89
|
+
:type type: str | None
|
|
89
90
|
:param force_axis: Force Axis, Apply the force in the selected axis
|
|
90
91
|
|
|
91
92
|
X
|
|
@@ -96,7 +97,7 @@ def cloth_filter(
|
|
|
96
97
|
|
|
97
98
|
Z
|
|
98
99
|
Z -- Apply force in the Z axis.
|
|
99
|
-
:type force_axis: set[str] |
|
|
100
|
+
:type force_axis: set[str] | None
|
|
100
101
|
:param orientation: Orientation, Orientation of the axis to limit the filter force
|
|
101
102
|
|
|
102
103
|
LOCAL
|
|
@@ -107,7 +108,7 @@ def cloth_filter(
|
|
|
107
108
|
|
|
108
109
|
VIEW
|
|
109
110
|
View -- Use the view axis to limit the force and set the gravity direction.
|
|
110
|
-
:type orientation: str |
|
|
111
|
+
:type orientation: str | None
|
|
111
112
|
:param cloth_mass: Cloth Mass, Mass of each simulation particle
|
|
112
113
|
:type cloth_mass: typing.Any | None
|
|
113
114
|
:param cloth_damping: Cloth Damping, How much the applied forces are propagated through the cloth
|
|
@@ -130,7 +131,7 @@ def color_filter(
|
|
|
130
131
|
iteration_count: typing.Any | None = 1,
|
|
131
132
|
event_history: bpy.types.bpy_prop_collection[bpy.types.OperatorStrokeElement]
|
|
132
133
|
| None = None,
|
|
133
|
-
type: str |
|
|
134
|
+
type: str | None = "FILL",
|
|
134
135
|
fill_color: typing.Any | None = (1.0, 1.0, 1.0),
|
|
135
136
|
):
|
|
136
137
|
"""Applies a filter to modify the active color attribute
|
|
@@ -178,7 +179,7 @@ def color_filter(
|
|
|
178
179
|
|
|
179
180
|
BLUE
|
|
180
181
|
Blue -- Change blue channel.
|
|
181
|
-
:type type: str |
|
|
182
|
+
:type type: str | None
|
|
182
183
|
:param fill_color: Fill Color
|
|
183
184
|
:type fill_color: typing.Any | None
|
|
184
185
|
"""
|
|
@@ -231,8 +232,8 @@ def expand(
|
|
|
231
232
|
override_context: dict[str, typing.Any] | bpy.types.Context | None = None,
|
|
232
233
|
execution_context: str | int | None = None,
|
|
233
234
|
undo: bool | None = None,
|
|
234
|
-
target: str |
|
|
235
|
-
falloff_type: str |
|
|
235
|
+
target: str | None = "MASK",
|
|
236
|
+
falloff_type: str | None = "GEODESIC",
|
|
236
237
|
invert: bool | typing.Any | None = False,
|
|
237
238
|
use_mask_preserve: bool | typing.Any | None = False,
|
|
238
239
|
use_falloff_gradient: bool | typing.Any | None = False,
|
|
@@ -248,9 +249,9 @@ def expand(
|
|
|
248
249
|
:type execution_context: str | int | None
|
|
249
250
|
:type undo: bool | None
|
|
250
251
|
:param target: Data Target, Data that is going to be modified in the expand operation
|
|
251
|
-
:type target: str |
|
|
252
|
+
:type target: str | None
|
|
252
253
|
:param falloff_type: Falloff Type, Initial falloff of the expand operation
|
|
253
|
-
:type falloff_type: str |
|
|
254
|
+
:type falloff_type: str | None
|
|
254
255
|
:param invert: Invert, Invert the expand active elements
|
|
255
256
|
:type invert: bool | typing.Any | None
|
|
256
257
|
:param use_mask_preserve: Preserve Previous, Preserve the previous state of the target data
|
|
@@ -307,7 +308,7 @@ def face_set_change_visibility(
|
|
|
307
308
|
override_context: dict[str, typing.Any] | bpy.types.Context | None = None,
|
|
308
309
|
execution_context: str | int | None = None,
|
|
309
310
|
undo: bool | None = None,
|
|
310
|
-
mode: str |
|
|
311
|
+
mode: str | None = "TOGGLE",
|
|
311
312
|
):
|
|
312
313
|
"""Change the visibility of the Face Sets of the sculpt
|
|
313
314
|
|
|
@@ -324,7 +325,7 @@ def face_set_change_visibility(
|
|
|
324
325
|
|
|
325
326
|
HIDE_ACTIVE
|
|
326
327
|
Hide Active Face Sets -- Hide Active Face Sets.
|
|
327
|
-
:type mode: str |
|
|
328
|
+
:type mode: str | None
|
|
328
329
|
"""
|
|
329
330
|
|
|
330
331
|
...
|
|
@@ -334,7 +335,7 @@ def face_set_edit(
|
|
|
334
335
|
execution_context: str | int | None = None,
|
|
335
336
|
undo: bool | None = None,
|
|
336
337
|
active_face_set: typing.Any | None = 1,
|
|
337
|
-
mode: str |
|
|
338
|
+
mode: str | None = "GROW",
|
|
338
339
|
strength: typing.Any | None = 1.0,
|
|
339
340
|
modify_hidden: bool | typing.Any | None = True,
|
|
340
341
|
):
|
|
@@ -361,7 +362,7 @@ def face_set_edit(
|
|
|
361
362
|
|
|
362
363
|
FAIR_TANGENCY
|
|
363
364
|
Fair Tangency -- Creates a smooth as possible geometry patch from the Face Set minimizing changes in vertex tangents.
|
|
364
|
-
:type mode: str |
|
|
365
|
+
:type mode: str | None
|
|
365
366
|
:param strength: Strength
|
|
366
367
|
:type strength: typing.Any | None
|
|
367
368
|
:param modify_hidden: Modify Hidden, Apply the edit operation to hidden geometry
|
|
@@ -394,7 +395,7 @@ def face_sets_create(
|
|
|
394
395
|
override_context: dict[str, typing.Any] | bpy.types.Context | None = None,
|
|
395
396
|
execution_context: str | int | None = None,
|
|
396
397
|
undo: bool | None = None,
|
|
397
|
-
mode: str |
|
|
398
|
+
mode: str | None = "MASKED",
|
|
398
399
|
):
|
|
399
400
|
"""Create a new Face Set
|
|
400
401
|
|
|
@@ -414,7 +415,7 @@ def face_sets_create(
|
|
|
414
415
|
|
|
415
416
|
SELECTION
|
|
416
417
|
Face Set from Edit Mode Selection -- Create an Face Set corresponding to the Edit Mode face selection.
|
|
417
|
-
:type mode: str |
|
|
418
|
+
:type mode: str | None
|
|
418
419
|
"""
|
|
419
420
|
|
|
420
421
|
...
|
|
@@ -423,7 +424,7 @@ def face_sets_init(
|
|
|
423
424
|
override_context: dict[str, typing.Any] | bpy.types.Context | None = None,
|
|
424
425
|
execution_context: str | int | None = None,
|
|
425
426
|
undo: bool | None = None,
|
|
426
|
-
mode: str |
|
|
427
|
+
mode: str | None = "LOOSE_PARTS",
|
|
427
428
|
threshold: typing.Any | None = 0.5,
|
|
428
429
|
):
|
|
429
430
|
"""Initializes all Face Sets in the mesh
|
|
@@ -456,7 +457,7 @@ def face_sets_init(
|
|
|
456
457
|
|
|
457
458
|
FACE_SET_BOUNDARIES
|
|
458
459
|
Face Sets from Face Set Boundaries -- Create a Face Set per isolated Face Set.
|
|
459
|
-
:type mode: str |
|
|
460
|
+
:type mode: str | None
|
|
460
461
|
:param threshold: Threshold, Minimum value to consider a certain attribute a boundary when creating the Face Sets
|
|
461
462
|
:type threshold: typing.Any | None
|
|
462
463
|
"""
|
|
@@ -507,7 +508,7 @@ def mask_filter(
|
|
|
507
508
|
override_context: dict[str, typing.Any] | bpy.types.Context | None = None,
|
|
508
509
|
execution_context: str | int | None = None,
|
|
509
510
|
undo: bool | None = None,
|
|
510
|
-
filter_type: str |
|
|
511
|
+
filter_type: str | None = "SMOOTH",
|
|
511
512
|
iterations: typing.Any | None = 1,
|
|
512
513
|
auto_iteration_count: bool | typing.Any | None = True,
|
|
513
514
|
):
|
|
@@ -517,7 +518,7 @@ def mask_filter(
|
|
|
517
518
|
:type execution_context: str | int | None
|
|
518
519
|
:type undo: bool | None
|
|
519
520
|
:param filter_type: Type, Filter that is going to be applied to the mask
|
|
520
|
-
:type filter_type: str |
|
|
521
|
+
:type filter_type: str | None
|
|
521
522
|
:param iterations: Iterations, Number of times that the filter is going to be applied
|
|
522
523
|
:type iterations: typing.Any | None
|
|
523
524
|
:param auto_iteration_count: Auto Iteration Count, Use a automatic number of iterations based on the number of vertices of the sculpt
|
|
@@ -530,9 +531,9 @@ def mask_from_cavity(
|
|
|
530
531
|
override_context: dict[str, typing.Any] | bpy.types.Context | None = None,
|
|
531
532
|
execution_context: str | int | None = None,
|
|
532
533
|
undo: bool | None = None,
|
|
533
|
-
mix_mode: str |
|
|
534
|
+
mix_mode: str | None = "MIX",
|
|
534
535
|
mix_factor: typing.Any | None = 1.0,
|
|
535
|
-
settings_source: str |
|
|
536
|
+
settings_source: str | None = "OPERATOR",
|
|
536
537
|
factor: typing.Any | None = 0.5,
|
|
537
538
|
blur_steps: typing.Any | None = 2,
|
|
538
539
|
use_curve: bool | typing.Any | None = False,
|
|
@@ -544,7 +545,7 @@ def mask_from_cavity(
|
|
|
544
545
|
:type execution_context: str | int | None
|
|
545
546
|
:type undo: bool | None
|
|
546
547
|
:param mix_mode: Mode, Mix mode
|
|
547
|
-
:type mix_mode: str |
|
|
548
|
+
:type mix_mode: str | None
|
|
548
549
|
:param mix_factor: Mix Factor
|
|
549
550
|
:type mix_factor: typing.Any | None
|
|
550
551
|
:param settings_source: Settings, Use settings from here
|
|
@@ -557,7 +558,7 @@ def mask_from_cavity(
|
|
|
557
558
|
|
|
558
559
|
SCENE
|
|
559
560
|
Scene -- Use settings from scene.
|
|
560
|
-
:type settings_source: str |
|
|
561
|
+
:type settings_source: str | None
|
|
561
562
|
:param factor: Factor, The contrast of the cavity mask
|
|
562
563
|
:type factor: typing.Any | None
|
|
563
564
|
:param blur_steps: Blur, The number of times the cavity mask is blurred
|
|
@@ -574,7 +575,7 @@ def mask_init(
|
|
|
574
575
|
override_context: dict[str, typing.Any] | bpy.types.Context | None = None,
|
|
575
576
|
execution_context: str | int | None = None,
|
|
576
577
|
undo: bool | None = None,
|
|
577
|
-
mode: str |
|
|
578
|
+
mode: str | None = "RANDOM_PER_VERTEX",
|
|
578
579
|
):
|
|
579
580
|
"""Creates a new mask for the entire mesh
|
|
580
581
|
|
|
@@ -582,7 +583,7 @@ def mask_init(
|
|
|
582
583
|
:type execution_context: str | int | None
|
|
583
584
|
:type undo: bool | None
|
|
584
585
|
:param mode: Mode
|
|
585
|
-
:type mode: str |
|
|
586
|
+
:type mode: str | None
|
|
586
587
|
"""
|
|
587
588
|
|
|
588
589
|
...
|
|
@@ -597,9 +598,9 @@ def mesh_filter(
|
|
|
597
598
|
iteration_count: typing.Any | None = 1,
|
|
598
599
|
event_history: bpy.types.bpy_prop_collection[bpy.types.OperatorStrokeElement]
|
|
599
600
|
| None = None,
|
|
600
|
-
type: str |
|
|
601
|
-
deform_axis: set[str] |
|
|
602
|
-
orientation: str |
|
|
601
|
+
type: str | None = "INFLATE",
|
|
602
|
+
deform_axis: set[str] | None = {"X", "Y", "Z"},
|
|
603
|
+
orientation: str | None = "LOCAL",
|
|
603
604
|
surface_smooth_shape_preservation: typing.Any | None = 0.5,
|
|
604
605
|
surface_smooth_current_vertex: typing.Any | None = 0.5,
|
|
605
606
|
sharpen_smooth_ratio: typing.Any | None = 0.35,
|
|
@@ -654,7 +655,7 @@ def mesh_filter(
|
|
|
654
655
|
|
|
655
656
|
ERASE_DISCPLACEMENT
|
|
656
657
|
Erase Displacement -- Deletes the displacement of the Multires Modifier.
|
|
657
|
-
:type type: str |
|
|
658
|
+
:type type: str | None
|
|
658
659
|
:param deform_axis: Deform Axis, Apply the deformation in the selected axis
|
|
659
660
|
|
|
660
661
|
X
|
|
@@ -665,7 +666,7 @@ def mesh_filter(
|
|
|
665
666
|
|
|
666
667
|
Z
|
|
667
668
|
Z -- Deform in the Z axis.
|
|
668
|
-
:type deform_axis: set[str] |
|
|
669
|
+
:type deform_axis: set[str] | None
|
|
669
670
|
:param orientation: Orientation, Orientation of the axis to limit the filter displacement
|
|
670
671
|
|
|
671
672
|
LOCAL
|
|
@@ -676,7 +677,7 @@ def mesh_filter(
|
|
|
676
677
|
|
|
677
678
|
VIEW
|
|
678
679
|
View -- Use the view axis to limit the displacement.
|
|
679
|
-
:type orientation: str |
|
|
680
|
+
:type orientation: str | None
|
|
680
681
|
:param surface_smooth_shape_preservation: Shape Preservation, How much of the original shape is preserved when smoothing
|
|
681
682
|
:type surface_smooth_shape_preservation: typing.Any | None
|
|
682
683
|
:param surface_smooth_current_vertex: Per Vertex Displacement, How much the position of each individual vertex influences the final result
|
|
@@ -762,7 +763,7 @@ def sample_detail_size(
|
|
|
762
763
|
execution_context: str | int | None = None,
|
|
763
764
|
undo: bool | None = None,
|
|
764
765
|
location: typing.Any | None = (0, 0),
|
|
765
|
-
mode: str |
|
|
766
|
+
mode: str | None = "DYNTOPO",
|
|
766
767
|
):
|
|
767
768
|
"""Sample the mesh detail on clicked point
|
|
768
769
|
|
|
@@ -778,7 +779,7 @@ def sample_detail_size(
|
|
|
778
779
|
|
|
779
780
|
VOXEL
|
|
780
781
|
Voxel -- Sample mesh voxel size.
|
|
781
|
-
:type mode: str |
|
|
782
|
+
:type mode: str | None
|
|
782
783
|
"""
|
|
783
784
|
|
|
784
785
|
...
|
|
@@ -815,7 +816,7 @@ def set_pivot_position(
|
|
|
815
816
|
override_context: dict[str, typing.Any] | bpy.types.Context | None = None,
|
|
816
817
|
execution_context: str | int | None = None,
|
|
817
818
|
undo: bool | None = None,
|
|
818
|
-
mode: str |
|
|
819
|
+
mode: str | None = "UNMASKED",
|
|
819
820
|
mouse_x: typing.Any | None = 0.0,
|
|
820
821
|
mouse_y: typing.Any | None = 0.0,
|
|
821
822
|
):
|
|
@@ -840,7 +841,7 @@ def set_pivot_position(
|
|
|
840
841
|
|
|
841
842
|
SURFACE
|
|
842
843
|
Surface -- Sets the pivot position to the surface under the cursor.
|
|
843
|
-
:type mode: str |
|
|
844
|
+
:type mode: str | None
|
|
844
845
|
:param mouse_x: Mouse Position X, Position of the mouse used for "Surface" mode
|
|
845
846
|
:type mouse_x: typing.Any | None
|
|
846
847
|
:param mouse_y: Mouse Position Y, Position of the mouse used for "Surface" mode
|
|
@@ -877,11 +878,11 @@ def trim_box_gesture(
|
|
|
877
878
|
wait_for_input: bool | typing.Any | None = True,
|
|
878
879
|
use_front_faces_only: bool | typing.Any | None = False,
|
|
879
880
|
location: typing.Any | None = (0, 0),
|
|
880
|
-
trim_mode: str |
|
|
881
|
+
trim_mode: str | None = "DIFFERENCE",
|
|
881
882
|
use_cursor_depth: bool | typing.Any | None = False,
|
|
882
|
-
trim_orientation: str |
|
|
883
|
-
trim_extrude_mode: str |
|
|
884
|
-
trim_solver: str |
|
|
883
|
+
trim_orientation: str | None = "VIEW",
|
|
884
|
+
trim_extrude_mode: str | None = "FIXED",
|
|
885
|
+
trim_solver: str | None = "FAST",
|
|
885
886
|
):
|
|
886
887
|
"""Execute a boolean operation on the mesh and a rectangle defined by the cursor
|
|
887
888
|
|
|
@@ -912,7 +913,7 @@ def trim_box_gesture(
|
|
|
912
913
|
|
|
913
914
|
JOIN
|
|
914
915
|
Join -- Join the new mesh as separate geometry, without performing any boolean operation.
|
|
915
|
-
:type trim_mode: str |
|
|
916
|
+
:type trim_mode: str | None
|
|
916
917
|
:param use_cursor_depth: Use Cursor for Depth, Use cursor location and radius for the dimensions and position of the trimming shape
|
|
917
918
|
:type use_cursor_depth: bool | typing.Any | None
|
|
918
919
|
:param trim_orientation: Shape Orientation
|
|
@@ -922,7 +923,7 @@ def trim_box_gesture(
|
|
|
922
923
|
|
|
923
924
|
SURFACE
|
|
924
925
|
Surface -- Use the surface normal to orientate the trimming shape.
|
|
925
|
-
:type trim_orientation: str |
|
|
926
|
+
:type trim_orientation: str | None
|
|
926
927
|
:param trim_extrude_mode: Extrude Mode
|
|
927
928
|
|
|
928
929
|
PROJECT
|
|
@@ -930,7 +931,7 @@ def trim_box_gesture(
|
|
|
930
931
|
|
|
931
932
|
FIXED
|
|
932
933
|
Fixed -- Extrude back faces by fixed amount.
|
|
933
|
-
:type trim_extrude_mode: str |
|
|
934
|
+
:type trim_extrude_mode: str | None
|
|
934
935
|
:param trim_solver: Solver
|
|
935
936
|
|
|
936
937
|
EXACT
|
|
@@ -938,7 +939,7 @@ def trim_box_gesture(
|
|
|
938
939
|
|
|
939
940
|
FAST
|
|
940
941
|
Fast -- Use the fast float boolean solver.
|
|
941
|
-
:type trim_solver: str |
|
|
942
|
+
:type trim_solver: str | None
|
|
942
943
|
"""
|
|
943
944
|
|
|
944
945
|
...
|
|
@@ -950,11 +951,11 @@ def trim_lasso_gesture(
|
|
|
950
951
|
path: bpy.types.bpy_prop_collection[bpy.types.OperatorMousePath] | None = None,
|
|
951
952
|
use_front_faces_only: bool | typing.Any | None = False,
|
|
952
953
|
location: typing.Any | None = (0, 0),
|
|
953
|
-
trim_mode: str |
|
|
954
|
+
trim_mode: str | None = "DIFFERENCE",
|
|
954
955
|
use_cursor_depth: bool | typing.Any | None = False,
|
|
955
|
-
trim_orientation: str |
|
|
956
|
-
trim_extrude_mode: str |
|
|
957
|
-
trim_solver: str |
|
|
956
|
+
trim_orientation: str | None = "VIEW",
|
|
957
|
+
trim_extrude_mode: str | None = "FIXED",
|
|
958
|
+
trim_solver: str | None = "FAST",
|
|
958
959
|
):
|
|
959
960
|
"""Execute a boolean operation on the mesh and a shape defined by the cursor
|
|
960
961
|
|
|
@@ -977,7 +978,7 @@ def trim_lasso_gesture(
|
|
|
977
978
|
|
|
978
979
|
JOIN
|
|
979
980
|
Join -- Join the new mesh as separate geometry, without performing any boolean operation.
|
|
980
|
-
:type trim_mode: str |
|
|
981
|
+
:type trim_mode: str | None
|
|
981
982
|
:param use_cursor_depth: Use Cursor for Depth, Use cursor location and radius for the dimensions and position of the trimming shape
|
|
982
983
|
:type use_cursor_depth: bool | typing.Any | None
|
|
983
984
|
:param trim_orientation: Shape Orientation
|
|
@@ -987,7 +988,7 @@ def trim_lasso_gesture(
|
|
|
987
988
|
|
|
988
989
|
SURFACE
|
|
989
990
|
Surface -- Use the surface normal to orientate the trimming shape.
|
|
990
|
-
:type trim_orientation: str |
|
|
991
|
+
:type trim_orientation: str | None
|
|
991
992
|
:param trim_extrude_mode: Extrude Mode
|
|
992
993
|
|
|
993
994
|
PROJECT
|
|
@@ -995,7 +996,7 @@ def trim_lasso_gesture(
|
|
|
995
996
|
|
|
996
997
|
FIXED
|
|
997
998
|
Fixed -- Extrude back faces by fixed amount.
|
|
998
|
-
:type trim_extrude_mode: str |
|
|
999
|
+
:type trim_extrude_mode: str | None
|
|
999
1000
|
:param trim_solver: Solver
|
|
1000
1001
|
|
|
1001
1002
|
EXACT
|
|
@@ -1003,7 +1004,7 @@ def trim_lasso_gesture(
|
|
|
1003
1004
|
|
|
1004
1005
|
FAST
|
|
1005
1006
|
Fast -- Use the fast float boolean solver.
|
|
1006
|
-
:type trim_solver: str |
|
|
1007
|
+
:type trim_solver: str | None
|
|
1007
1008
|
"""
|
|
1008
1009
|
|
|
1009
1010
|
...
|
|
@@ -1021,11 +1022,11 @@ def trim_line_gesture(
|
|
|
1021
1022
|
use_front_faces_only: bool | typing.Any | None = False,
|
|
1022
1023
|
use_limit_to_segment: bool | typing.Any | None = False,
|
|
1023
1024
|
location: typing.Any | None = (0, 0),
|
|
1024
|
-
trim_mode: str |
|
|
1025
|
+
trim_mode: str | None = "DIFFERENCE",
|
|
1025
1026
|
use_cursor_depth: bool | typing.Any | None = False,
|
|
1026
|
-
trim_orientation: str |
|
|
1027
|
-
trim_extrude_mode: str |
|
|
1028
|
-
trim_solver: str |
|
|
1027
|
+
trim_orientation: str | None = "VIEW",
|
|
1028
|
+
trim_extrude_mode: str | None = "FIXED",
|
|
1029
|
+
trim_solver: str | None = "FAST",
|
|
1029
1030
|
):
|
|
1030
1031
|
"""Remove a portion of the mesh on one side of a line
|
|
1031
1032
|
|
|
@@ -1060,7 +1061,7 @@ def trim_line_gesture(
|
|
|
1060
1061
|
|
|
1061
1062
|
JOIN
|
|
1062
1063
|
Join -- Join the new mesh as separate geometry, without performing any boolean operation.
|
|
1063
|
-
:type trim_mode: str |
|
|
1064
|
+
:type trim_mode: str | None
|
|
1064
1065
|
:param use_cursor_depth: Use Cursor for Depth, Use cursor location and radius for the dimensions and position of the trimming shape
|
|
1065
1066
|
:type use_cursor_depth: bool | typing.Any | None
|
|
1066
1067
|
:param trim_orientation: Shape Orientation
|
|
@@ -1070,7 +1071,7 @@ def trim_line_gesture(
|
|
|
1070
1071
|
|
|
1071
1072
|
SURFACE
|
|
1072
1073
|
Surface -- Use the surface normal to orientate the trimming shape.
|
|
1073
|
-
:type trim_orientation: str |
|
|
1074
|
+
:type trim_orientation: str | None
|
|
1074
1075
|
:param trim_extrude_mode: Extrude Mode
|
|
1075
1076
|
|
|
1076
1077
|
PROJECT
|
|
@@ -1078,7 +1079,7 @@ def trim_line_gesture(
|
|
|
1078
1079
|
|
|
1079
1080
|
FIXED
|
|
1080
1081
|
Fixed -- Extrude back faces by fixed amount.
|
|
1081
|
-
:type trim_extrude_mode: str |
|
|
1082
|
+
:type trim_extrude_mode: str | None
|
|
1082
1083
|
:param trim_solver: Solver
|
|
1083
1084
|
|
|
1084
1085
|
EXACT
|
|
@@ -1086,7 +1087,7 @@ def trim_line_gesture(
|
|
|
1086
1087
|
|
|
1087
1088
|
FAST
|
|
1088
1089
|
Fast -- Use the fast float boolean solver.
|
|
1089
|
-
:type trim_solver: str |
|
|
1090
|
+
:type trim_solver: str | None
|
|
1090
1091
|
"""
|
|
1091
1092
|
|
|
1092
1093
|
...
|
|
@@ -1130,7 +1131,7 @@ def uv_sculpt_relax(
|
|
|
1130
1131
|
execution_context: str | int | None = None,
|
|
1131
1132
|
undo: bool | None = None,
|
|
1132
1133
|
use_invert: bool | typing.Any | None = False,
|
|
1133
|
-
relax_method: str |
|
|
1134
|
+
relax_method: str | None = "COTAN",
|
|
1134
1135
|
):
|
|
1135
1136
|
"""Relax UVs
|
|
1136
1137
|
|
|
@@ -1149,7 +1150,7 @@ def uv_sculpt_relax(
|
|
|
1149
1150
|
|
|
1150
1151
|
COTAN
|
|
1151
1152
|
Geometry -- Use Geometry (cotangent) relaxation, making UVs follow the underlying 3D geometry.
|
|
1152
|
-
:type relax_method: str |
|
|
1153
|
+
:type relax_method: str | None
|
|
1153
1154
|
"""
|
|
1154
1155
|
|
|
1155
1156
|
...
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import typing
|
|
2
|
+
import collections.abc
|
|
2
3
|
import bpy.types
|
|
3
4
|
|
|
4
5
|
GenericType1 = typing.TypeVar("GenericType1")
|
|
@@ -10,7 +11,7 @@ def brush_stroke(
|
|
|
10
11
|
undo: bool | None = None,
|
|
11
12
|
stroke: bpy.types.bpy_prop_collection[bpy.types.OperatorStrokeElement]
|
|
12
13
|
| None = None,
|
|
13
|
-
mode: str |
|
|
14
|
+
mode: str | None = "NORMAL",
|
|
14
15
|
):
|
|
15
16
|
"""Sculpt curves using a brush
|
|
16
17
|
|
|
@@ -29,7 +30,7 @@ def brush_stroke(
|
|
|
29
30
|
|
|
30
31
|
SMOOTH
|
|
31
32
|
Smooth -- Switch brush to smooth mode for duration of stroke.
|
|
32
|
-
:type mode: str |
|
|
33
|
+
:type mode: str | None
|
|
33
34
|
"""
|
|
34
35
|
|
|
35
36
|
...
|