fake-bge-module 20250317__py3-none-any.whl → 20260201__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.
- {animsys_refactor → _animsys_refactor}/__init__.pyi +7 -6
- {bl_console_utils → _bl_console_utils}/__init__.pyi +1 -0
- {bl_console_utils → _bl_console_utils}/autocomplete/__init__.pyi +1 -0
- {bl_console_utils → _bl_console_utils}/autocomplete/complete_calltip/__init__.pyi +1 -13
- {bl_console_utils → _bl_console_utils}/autocomplete/complete_import/__init__.pyi +1 -5
- {bl_console_utils → _bl_console_utils}/autocomplete/complete_namespace/__init__.pyi +3 -13
- {bl_console_utils → _bl_console_utils}/autocomplete/intellisense/__init__.pyi +1 -10
- {bl_i18n_utils → _bl_i18n_utils}/__init__.pyi +2 -0
- _bl_i18n_utils/bl_extract_messages/__init__.pyi +28 -0
- {bl_i18n_utils → _bl_i18n_utils}/merge_po/__init__.pyi +2 -1
- {bl_i18n_utils → _bl_i18n_utils}/settings/__init__.pyi +10 -7
- {bl_i18n_utils → _bl_i18n_utils}/utils/__init__.pyi +53 -50
- _bl_i18n_utils/utils_cli/__init__.pyi +11 -0
- _bl_i18n_utils/utils_languages_menu/__init__.pyi +6 -0
- {bl_i18n_utils → _bl_i18n_utils}/utils_rtl/__init__.pyi +3 -2
- _bl_i18n_utils/utils_spell_check/__init__.pyi +22 -0
- {bl_previews_utils → _bl_previews_utils}/__init__.pyi +1 -0
- _bl_previews_utils/bl_previews_render/__init__.pyi +14 -0
- {bl_rna_utils → _bl_rna_utils}/__init__.pyi +1 -0
- {bl_rna_utils → _bl_rna_utils}/data_path/__init__.pyi +3 -2
- {bl_text_utils → _bl_text_utils}/__init__.pyi +1 -0
- _bl_text_utils/external_editor/__init__.pyi +6 -0
- {bl_ui_utils → _bl_ui_utils}/__init__.pyi +1 -0
- {bl_ui_utils → _bl_ui_utils}/layout/__init__.pyi +2 -1
- _blendfile_header/__init__.pyi +48 -0
- _bpy_internal/__init__.pyi +5 -1
- _bpy_internal/addons/__init__.pyi +1 -0
- _bpy_internal/addons/cli/__init__.pyi +2 -1
- _bpy_internal/assets/__init__.pyi +5 -0
- _bpy_internal/assets/remote_library_listing/__init__.pyi +5 -0
- _bpy_internal/assets/remote_library_listing/blender_asset_library_openapi/__init__.pyi +13 -0
- _bpy_internal/disk_file_hash_service/__init__.pyi +19 -0
- _bpy_internal/disk_file_hash_service/backend_sqlite/__init__.pyi +48 -0
- _bpy_internal/disk_file_hash_service/hash_service/__init__.pyi +64 -0
- _bpy_internal/disk_file_hash_service/types/__init__.pyi +53 -0
- _bpy_internal/extensions/__init__.pyi +1 -0
- _bpy_internal/extensions/junction_module/__init__.pyi +8 -7
- _bpy_internal/extensions/stale_file_manager/__init__.pyi +9 -8
- _bpy_internal/extensions/wheel_manager/__init__.pyi +6 -5
- {bl_i18n_utils/utils_languages_menu → _bpy_internal/filesystem}/__init__.pyi +2 -2
- _bpy_internal/filesystem/locking/__init__.pyi +28 -0
- _bpy_internal/grease_pencil/__init__.pyi +1 -0
- _bpy_internal/grease_pencil/stroke/__init__.pyi +22 -6
- _bpy_internal/platform/__init__.pyi +5 -0
- _bpy_internal/platform/freedesktop/__init__.pyi +21 -0
- _bpy_internal/system_info/__init__.pyi +1 -0
- _bpy_internal/system_info/text_generate_runtime/__init__.pyi +2 -1
- _bpy_internal/system_info/url_prefill_runtime/__init__.pyi +2 -1
- _bpy_internal/system_info/url_prefill_startup/__init__.pyi +3 -2
- {bpy_restrict_state → _bpy_restrict_state}/__init__.pyi +1 -0
- _bpy_types/__init__.pyi +1635 -0
- {console_python → _console_python}/__init__.pyi +8 -7
- _console_shell/__init__.pyi +10 -0
- {graphviz_export → _graphviz_export}/__init__.pyi +3 -2
- _keyingsets_utils/__init__.pyi +21 -0
- {rna_info → _rna_info}/__init__.pyi +32 -27
- {rna_xml → _rna_xml}/__init__.pyi +7 -6
- addon_utils/__init__.pyi +13 -25
- aud/__init__.pyi +133 -155
- bge/__init__.pyi +1 -0
- bge/app/__init__.pyi +1 -0
- bge/constraints/__init__.pyi +22 -51
- bge/types/__init__.pyi +618 -1913
- bge_extras/__init__.pyi +1 -0
- bge_extras/logger/__init__.pyi +4 -3
- bgui/__init__.pyi +1 -0
- bgui/frame/__init__.pyi +1 -0
- bgui/frame_button/__init__.pyi +1 -0
- bgui/image/__init__.pyi +1 -1
- bgui/image_button/__init__.pyi +1 -0
- bgui/label/__init__.pyi +1 -0
- bgui/list_box/__init__.pyi +1 -1
- bgui/progress_bar/__init__.pyi +2 -1
- bgui/system/__init__.pyi +3 -5
- bgui/text_block/__init__.pyi +1 -0
- bgui/text_input/__init__.pyi +9 -8
- bgui/theme/__init__.pyi +4 -3
- bgui/widget/__init__.pyi +5 -4
- bl_app_override/__init__.pyi +4 -3
- bl_app_override/helpers/__init__.pyi +3 -2
- bl_app_template_utils/__init__.pyi +5 -4
- bl_app_templates_system/Game_Engine/__init__.pyi +5 -4
- bl_app_templates_system/Storyboarding/__init__.pyi +11 -0
- bl_app_templates_system/__init__.pyi +2 -0
- bl_keymap_utils/__init__.pyi +1 -0
- bl_keymap_utils/io/__init__.pyi +10 -9
- bl_keymap_utils/keymap_from_toolbar/__init__.pyi +2 -1
- bl_keymap_utils/keymap_hierarchy/__init__.pyi +2 -1
- bl_keymap_utils/platform_helpers/__init__.pyi +3 -2
- bl_keymap_utils/versioning/__init__.pyi +2 -1
- bl_math/__init__.pyi +4 -13
- bl_operators/__init__.pyi +4 -2
- bl_operators/add_mesh_torus/__init__.pyi +9 -9
- bl_operators/anim/__init__.pyi +90 -62
- bl_operators/assets/__init__.pyi +14 -18
- bl_operators/bmesh/__init__.pyi +1 -0
- bl_operators/bmesh/find_adjacent/__init__.pyi +12 -9
- bl_operators/bone_selection_sets/__init__.pyi +34 -60
- bl_operators/clip/__init__.pyi +39 -57
- bl_operators/connect_to_output/__init__.pyi +20 -18
- bl_operators/console/__init__.pyi +17 -25
- bl_operators/constraint/__init__.pyi +15 -21
- bl_operators/copy_global_transform/__init__.pyi +261 -0
- bl_operators/file/__init__.pyi +13 -17
- bl_operators/freestyle/__init__.pyi +15 -21
- bl_operators/geometry_nodes/__init__.pyi +30 -36
- bl_operators/grease_pencil/__init__.pyi +5 -5
- bl_operators/image/__init__.pyi +14 -22
- bl_operators/image_as_planes/__init__.pyi +36 -42
- bl_operators/mesh/__init__.pyi +8 -53
- bl_operators/node/__init__.pyi +375 -92
- bl_operators/node_editor/__init__.pyi +1 -0
- bl_operators/node_editor/node_functions/__init__.pyi +10 -9
- bl_operators/object/__init__.pyi +57 -98
- bl_operators/object_align/__init__.pyi +8 -8
- bl_operators/object_quick_effects/__init__.pyi +15 -21
- bl_operators/object_randomize_transform/__init__.pyi +6 -6
- bl_operators/presets/__init__.pyi +46 -94
- bl_operators/rigidbody/__init__.pyi +12 -16
- bl_operators/screen_play_rendered_anim/__init__.pyi +5 -5
- bl_operators/sequencer/__init__.pyi +40 -54
- bl_operators/spreadsheet/__init__.pyi +7 -7
- bl_operators/userpref/__init__.pyi +69 -117
- bl_operators/uvcalc_follow_active/__init__.pyi +8 -8
- bl_operators/uvcalc_lightmap/__init__.pyi +12 -12
- bl_operators/uvcalc_transform/__init__.pyi +39 -28
- bl_operators/vertexpaint_dirt/__init__.pyi +7 -7
- bl_operators/view3d/__init__.pyi +31 -43
- bl_operators/wm/__init__.pyi +139 -231
- bl_operators/world/__init__.pyi +6 -6
- bl_ui/__init__.pyi +18 -17
- bl_ui/anim/__init__.pyi +5 -5
- bl_ui/asset_shelf/__init__.pyi +5 -5
- bl_ui/generic_ui_list/__init__.pyi +11 -25
- bl_ui/node_add_menu/__init__.pyi +281 -12
- bl_ui/node_add_menu_compositor/__init__.pyi +135 -91
- bl_ui/node_add_menu_geometry/__init__.pyi +407 -263
- bl_ui/node_add_menu_shader/__init__.pyi +67 -67
- bl_ui/node_add_menu_texture/__init__.pyi +25 -69
- bl_ui/properties_animviz/__init__.pyi +3 -2
- bl_ui/properties_collection/__init__.pyi +20 -30
- bl_ui/properties_constraint/__init__.pyi +228 -450
- bl_ui/properties_data_armature/__init__.pyi +45 -79
- bl_ui/properties_data_bone/__init__.pyi +33 -51
- bl_ui/properties_data_camera/__init__.pyi +43 -75
- bl_ui/properties_data_curve/__init__.pyi +42 -101
- bl_ui/properties_data_curves/__init__.pyi +21 -35
- bl_ui/properties_data_empty/__init__.pyi +8 -10
- bl_ui/properties_data_grease_pencil/__init__.pyi +49 -87
- bl_ui/properties_data_lattice/__init__.pyi +12 -18
- bl_ui/properties_data_light/__init__.pyi +28 -46
- bl_ui/properties_data_lightprobe/__init__.pyi +35 -61
- bl_ui/properties_data_mesh/__init__.pyi +73 -120
- bl_ui/properties_data_metaball/__init__.pyi +16 -26
- bl_ui/properties_data_modifier/__init__.pyi +34 -39
- bl_ui/properties_data_pointcloud/__init__.pyi +17 -27
- bl_ui/properties_data_shaderfx/__init__.pyi +4 -4
- bl_ui/properties_data_speaker/__init__.pyi +15 -25
- bl_ui/properties_data_volume/__init__.pyi +22 -38
- bl_ui/properties_freestyle/__init__.pyi +79 -127
- bl_ui/properties_game/__init__.pyi +88 -84
- bl_ui/properties_grease_pencil_common/__init__.pyi +33 -190
- bl_ui/properties_mask_common/__init__.pyi +33 -45
- bl_ui/properties_material/__init__.pyi +52 -111
- bl_ui/properties_material_gpencil/__init__.pyi +48 -68
- bl_ui/properties_object/__init__.pyi +123 -93
- bl_ui/properties_output/__init__.pyi +103 -81
- bl_ui/properties_paint_common/__init__.pyi +78 -59
- bl_ui/properties_particle/__init__.pyi +160 -262
- bl_ui/properties_physics_cloth/__init__.pyi +36 -62
- bl_ui/properties_physics_common/__init__.pyi +11 -11
- bl_ui/properties_physics_dynamicpaint/__init__.pyi +81 -123
- bl_ui/properties_physics_field/__init__.pyi +35 -53
- bl_ui/properties_physics_fluid/__init__.pyi +106 -160
- bl_ui/properties_physics_geometry_nodes/__init__.pyi +6 -6
- bl_ui/properties_physics_rigidbody/__init__.pyi +28 -42
- bl_ui/properties_physics_rigidbody_constraint/__init__.pyi +44 -68
- bl_ui/properties_physics_softbody/__init__.pyi +38 -66
- bl_ui/properties_render/__init__.pyi +267 -259
- bl_ui/properties_scene/__init__.pyi +69 -72
- bl_ui/properties_strip/__init__.pyi +744 -0
- bl_ui/properties_strip_modifier/__init__.pyi +45 -0
- bl_ui/properties_texture/__init__.pyi +69 -122
- bl_ui/properties_view_layer/__init__.pyi +97 -51
- bl_ui/properties_workspace/__init__.pyi +12 -18
- bl_ui/properties_world/__init__.pyi +33 -53
- bl_ui/space_clip/__init__.pyi +231 -311
- bl_ui/space_console/__init__.pyi +14 -24
- bl_ui/space_dopesheet/__init__.pyi +193 -125
- bl_ui/space_filebrowser/__init__.pyi +107 -131
- bl_ui/space_graph/__init__.pyi +93 -80
- bl_ui/space_image/__init__.pyi +207 -291
- bl_ui/space_info/__init__.pyi +14 -24
- bl_ui/space_logic/__init__.pyi +14 -22
- bl_ui/space_nla/__init__.pyi +63 -69
- bl_ui/space_node/__init__.pyi +215 -154
- bl_ui/space_outliner/__init__.pyi +65 -61
- bl_ui/space_properties/__init__.pyi +41 -16
- bl_ui/space_sequencer/__init__.pyi +276 -980
- bl_ui/space_spreadsheet/__init__.pyi +27 -23
- bl_ui/space_statusbar/__init__.pyi +4 -4
- bl_ui/space_text/__init__.pyi +39 -73
- bl_ui/space_time/__init__.pyi +33 -78
- bl_ui/space_toolsystem_common/__init__.pyi +31 -28
- bl_ui/space_toolsystem_toolbar/__init__.pyi +67 -43
- bl_ui/space_topbar/__init__.pyi +68 -111
- bl_ui/space_userpref/__init__.pyi +310 -445
- bl_ui/space_view3d/__init__.pyi +667 -1122
- bl_ui/space_view3d_sidebar/__init__.pyi +127 -0
- bl_ui/space_view3d_toolbar/__init__.pyi +237 -966
- bl_ui/utils/__init__.pyi +4 -3
- blend_render_info/__init__.pyi +4 -2
- blf/__init__.pyi +92 -59
- bmesh/__init__.pyi +4 -10
- bmesh/geometry/__init__.pyi +2 -4
- bmesh/ops/__init__.pyi +442 -815
- bmesh/types/__init__.pyi +377 -720
- bmesh/utils/__init__.pyi +20 -45
- bpy/__init__.pyi +2 -1
- bpy/app/__init__.pyi +96 -90
- bpy/app/handlers/__init__.pyi +24 -19
- bpy/app/icons/__init__.pyi +2 -7
- bpy/app/timers/__init__.pyi +5 -18
- bpy/app/translations/__init__.pyi +21 -35
- bpy/msgbus/__init__.pyi +20 -9
- bpy/ops/__init__.pyi +21 -3
- bpy/ops/action/__init__.pyi +121 -226
- bpy/ops/anim/__init__.pyi +204 -358
- bpy/ops/armature/__init__.pyi +129 -249
- bpy/ops/asset/__init__.pyi +82 -111
- bpy/ops/bge_bricknodes/__init__.pyi +61 -0
- bpy/ops/boid/__init__.pyi +44 -50
- bpy/ops/bricknodes/__init__.pyi +37 -0
- bpy/ops/brush/__init__.pyi +33 -120
- bpy/ops/buttons/__init__.pyi +27 -83
- bpy/ops/cachefile/__init__.pyi +16 -74
- bpy/ops/camera/__init__.pyi +3 -13
- bpy/ops/clip/__init__.pyi +278 -558
- bpy/ops/cloth/__init__.pyi +2 -6
- bpy/ops/collection/__init__.pyi +34 -44
- bpy/ops/console/__init__.pyi +70 -111
- bpy/ops/constraint/__init__.pyi +34 -102
- bpy/ops/curve/__init__.pyi +163 -315
- bpy/ops/curves/__init__.pyi +163 -189
- bpy/ops/cycles/__init__.pyi +8 -18
- bpy/ops/dpaint/__init__.pyi +21 -30
- bpy/ops/ed/__init__.pyi +59 -103
- bpy/ops/export_anim/__init__.pyi +4 -11
- bpy/ops/export_scene/__init__.pyi +29 -174
- bpy/ops/extensions/__init__.pyi +102 -194
- bpy/ops/file/__init__.pyi +166 -272
- bpy/ops/fluid/__init__.pyi +78 -86
- bpy/ops/font/__init__.pyi +73 -164
- bpy/ops/geometry/__init__.pyi +33 -144
- bpy/ops/gizmogroup/__init__.pyi +8 -14
- bpy/ops/gpencil/__init__.pyi +31 -58
- bpy/ops/graph/__init__.pyi +176 -411
- bpy/ops/grease_pencil/__init__.pyi +416 -639
- bpy/ops/image/__init__.pyi +148 -492
- bpy/ops/import_anim/__init__.pyi +5 -18
- bpy/ops/import_curve/__init__.pyi +4 -6
- bpy/ops/import_scene/__init__.pyi +22 -49
- bpy/ops/info/__init__.pyi +27 -43
- bpy/ops/lattice/__init__.pyi +26 -43
- bpy/ops/logic/__init__.pyi +49 -122
- bpy/ops/logic_nodes/__init__.pyi +461 -0
- bpy/ops/marker/__init__.pyi +24 -60
- bpy/ops/mask/__init__.pyi +118 -222
- bpy/ops/material/__init__.pyi +19 -18
- bpy/ops/mball/__init__.pyi +13 -39
- bpy/ops/mesh/__init__.pyi +409 -1264
- bpy/ops/nla/__init__.pyi +140 -232
- bpy/ops/node/__init__.pyi +1189 -807
- bpy/ops/object/__init__.pyi +806 -1659
- bpy/ops/outliner/__init__.pyi +284 -432
- bpy/ops/paint/__init__.pyi +189 -381
- bpy/ops/paintcurve/__init__.pyi +29 -44
- bpy/ops/palette/__init__.pyi +23 -34
- bpy/ops/particle/__init__.pyi +135 -201
- bpy/ops/pointcloud/__init__.pyi +23 -42
- bpy/ops/pose/__init__.pyi +195 -310
- bpy/ops/poselib/__init__.pyi +45 -73
- bpy/ops/preferences/__init__.pyi +89 -221
- bpy/ops/ptcache/__init__.pyi +32 -39
- bpy/ops/render/__init__.pyi +36 -83
- bpy/ops/rigidbody/__init__.pyi +47 -78
- bpy/ops/scene/__init__.pyi +169 -222
- bpy/ops/screen/__init__.pyi +146 -259
- bpy/ops/script/__init__.pyi +9 -15
- bpy/ops/sculpt/__init__.pyi +194 -354
- bpy/ops/sculpt_curves/__init__.pyi +21 -29
- bpy/ops/sequencer/__init__.pyi +586 -836
- bpy/ops/sound/__init__.pyi +25 -131
- bpy/ops/spreadsheet/__init__.pyi +34 -21
- bpy/ops/surface/__init__.pyi +7 -54
- bpy/ops/text/__init__.pyi +166 -281
- bpy/ops/text_editor/__init__.pyi +2 -6
- bpy/ops/texture/__init__.pyi +20 -22
- bpy/ops/transform/__init__.pyi +108 -445
- bpy/ops/ui/__init__.pyi +157 -219
- bpy/ops/uilist/__init__.pyi +4 -16
- bpy/ops/uv/__init__.pyi +291 -347
- bpy/ops/view2d/__init__.pyi +29 -88
- bpy/ops/view3d/__init__.pyi +238 -438
- bpy/ops/wm/__init__.pyi +651 -1510
- bpy/ops/workspace/__init__.pyi +42 -44
- bpy/ops/world/__init__.pyi +12 -13
- bpy/path/__init__.pyi +5 -36
- bpy/props/__init__.pyi +395 -259
- bpy/{_typing → stub_internal}/__init__.pyi +1 -0
- bpy/{_typing → stub_internal}/rna_enums/__init__.pyi +214 -114
- bpy/types/__init__.pyi +93285 -103831
- bpy/utils/__init__.pyi +46 -104
- bpy/utils/previews/__init__.pyi +7 -15
- bpy/utils/units/__init__.pyi +6 -15
- bpy_extras/__init__.pyi +1 -0
- bpy_extras/anim_utils/__init__.pyi +32 -23
- bpy_extras/asset_utils/__init__.pyi +1 -0
- bpy_extras/bmesh_utils/__init__.pyi +2 -2
- bpy_extras/id_map_utils/__init__.pyi +15 -6
- bpy_extras/image_utils/__init__.pyi +3 -11
- bpy_extras/io_utils/__init__.pyi +22 -38
- bpy_extras/keyconfig_utils/__init__.pyi +5 -4
- bpy_extras/mesh_utils/__init__.pyi +3 -14
- bpy_extras/node_shader_utils/__init__.pyi +63 -70
- bpy_extras/node_utils/__init__.pyi +4 -3
- bpy_extras/object_utils/__init__.pyi +6 -19
- bpy_extras/view3d_utils/__init__.pyi +1 -18
- bpy_extras/wm_utils/__init__.pyi +1 -0
- bpy_extras/wm_utils/progress_report/__init__.pyi +12 -11
- {fake_bge_module-20250317.dist-info → fake_bge_module-20260201.dist-info}/METADATA +9 -3
- fake_bge_module-20260201.dist-info/RECORD +414 -0
- {fake_bge_module-20250317.dist-info → fake_bge_module-20260201.dist-info}/WHEEL +1 -1
- {fake_bge_module-20250317.dist-info → fake_bge_module-20260201.dist-info}/top_level.txt +16 -16
- freestyle/__init__.pyi +1 -0
- freestyle/chainingiterators/__init__.pyi +41 -60
- freestyle/functions/__init__.pyi +56 -194
- freestyle/predicates/__init__.pyi +11 -61
- freestyle/shaders/__init__.pyi +95 -156
- freestyle/types/__init__.pyi +306 -941
- freestyle/utils/ContextFunctions/__init__.pyi +4 -24
- freestyle/utils/__init__.pyi +46 -36
- gpu/__init__.pyi +84 -5
- gpu/capabilities/__init__.pyi +1 -21
- gpu/matrix/__init__.pyi +16 -24
- gpu/platform/__init__.pyi +3 -7
- gpu/select/__init__.pyi +2 -1
- gpu/shader/__init__.pyi +43 -9
- gpu/state/__init__.pyi +66 -44
- gpu/texture/__init__.pyi +4 -5
- gpu/types/__init__.pyi +216 -216
- gpu_extras/__init__.pyi +1 -0
- gpu_extras/batch/__init__.pyi +2 -5
- gpu_extras/presets/__init__.pyi +9 -10
- idprop/__init__.pyi +17 -0
- idprop/types/__init__.pyi +18 -17
- imbuf/__init__.pyi +13 -9
- imbuf/types/__init__.pyi +10 -23
- keyingsets_builtins/__init__.pyi +51 -93
- mathutils/__init__.pyi +296 -2255
- mathutils/bvhtree/__init__.pyi +22 -29
- mathutils/geometry/__init__.pyi +83 -132
- mathutils/interpolate/__init__.pyi +7 -5
- mathutils/kdtree/__init__.pyi +5 -14
- mathutils/noise/__init__.pyi +62 -106
- nodeitems_builtins/__init__.pyi +5 -4
- nodeitems_utils/__init__.pyi +10 -9
- rna_keymap_ui/__init__.pyi +7 -6
- rna_prop_ui/__init__.pyi +14 -13
- _bpy_internal/freedesktop/__init__.pyi +0 -20
- bgl/__init__.pyi +0 -4235
- bl_i18n_utils/bl_extract_messages/__init__.pyi +0 -24
- bl_i18n_utils/utils_cli/__init__.pyi +0 -10
- bl_previews_utils/bl_previews_render/__init__.pyi +0 -11
- bl_text_utils/external_editor/__init__.pyi +0 -5
- bpy_types/__init__.pyi +0 -29
- console_shell/__init__.pyi +0 -9
- fake_bge_module-20250317.dist-info/RECORD +0 -395
- keyingsets_utils/__init__.pyi +0 -18
- {animsys_refactor → _animsys_refactor}/py.typed +0 -0
- {bgl → _bl_console_utils}/py.typed +0 -0
- {bl_console_utils → _bl_i18n_utils}/py.typed +0 -0
- {bl_i18n_utils → _bl_previews_utils}/py.typed +0 -0
- {bl_previews_utils → _bl_rna_utils}/py.typed +0 -0
- {bl_rna_utils → _bl_text_utils}/py.typed +0 -0
- {bl_text_utils → _bl_ui_utils}/py.typed +0 -0
- {bl_ui_utils → _blendfile_header}/py.typed +0 -0
- {bpy_restrict_state → _bpy_restrict_state}/py.typed +0 -0
- {bpy_types → _bpy_types}/py.typed +0 -0
- {console_python → _console_python}/py.typed +0 -0
- {console_shell → _console_shell}/py.typed +0 -0
- {graphviz_export → _graphviz_export}/py.typed +0 -0
- {keyingsets_utils → _keyingsets_utils}/py.typed +0 -0
- {rna_info → _rna_info}/py.typed +0 -0
- {rna_xml → _rna_xml}/py.typed +0 -0
bpy/ops/sculpt/__init__.pyi
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import typing
|
|
2
2
|
import collections.abc
|
|
3
3
|
import typing_extensions
|
|
4
|
+
import numpy.typing as npt
|
|
4
5
|
import bpy.types
|
|
5
6
|
import mathutils
|
|
6
7
|
|
|
@@ -11,17 +12,15 @@ def brush_stroke(
|
|
|
11
12
|
*,
|
|
12
13
|
stroke: bpy.types.bpy_prop_collection[bpy.types.OperatorStrokeElement]
|
|
13
14
|
| None = None,
|
|
14
|
-
mode: typing.Literal["NORMAL", "INVERT"
|
|
15
|
+
mode: typing.Literal["NORMAL", "INVERT"] | None = "NORMAL",
|
|
16
|
+
brush_toggle: typing.Literal["None", "SMOOTH", "ERASE", "MASK"] | None = "None",
|
|
15
17
|
pen_flip: bool | None = False,
|
|
16
18
|
override_location: bool | None = False,
|
|
17
19
|
ignore_background_click: bool | None = False,
|
|
18
|
-
):
|
|
20
|
+
) -> None:
|
|
19
21
|
"""Sculpt a stroke into the geometry
|
|
20
22
|
|
|
21
|
-
:type execution_context: int | str | None
|
|
22
|
-
:type undo: bool | None
|
|
23
23
|
:param stroke: Stroke
|
|
24
|
-
:type stroke: bpy.types.bpy_prop_collection[bpy.types.OperatorStrokeElement] | None
|
|
25
24
|
:param mode: Stroke Mode, Action taken when a paint stroke is made
|
|
26
25
|
|
|
27
26
|
NORMAL
|
|
@@ -29,19 +28,22 @@ def brush_stroke(
|
|
|
29
28
|
|
|
30
29
|
INVERT
|
|
31
30
|
Invert -- Invert action of brush for duration of stroke.
|
|
31
|
+
:param brush_toggle: Temporary Brush Toggle Type, Brush to use for duration of stroke
|
|
32
|
+
|
|
33
|
+
None
|
|
34
|
+
None -- Apply brush normally.
|
|
32
35
|
|
|
33
36
|
SMOOTH
|
|
34
|
-
Smooth -- Switch
|
|
37
|
+
Smooth -- Switch to smooth brush for duration of stroke.
|
|
35
38
|
|
|
36
39
|
ERASE
|
|
37
|
-
Erase -- Switch
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
:param
|
|
42
|
-
:
|
|
40
|
+
Erase -- Switch to erase brush for duration of stroke.
|
|
41
|
+
|
|
42
|
+
MASK
|
|
43
|
+
Mask -- Switch to mask brush for duration of stroke.
|
|
44
|
+
:param pen_flip: Pen Flip, Whether a tablets eraser mode is being used
|
|
45
|
+
:param override_location: Override Location, Override the given "location" array by recalculating object space positions from the provided "mouse_event" positions
|
|
43
46
|
:param ignore_background_click: Ignore Background Click, Clicks on the background do not start the stroke
|
|
44
|
-
:type ignore_background_click: bool | None
|
|
45
47
|
"""
|
|
46
48
|
|
|
47
49
|
def cloth_filter(
|
|
@@ -63,20 +65,13 @@ def cloth_filter(
|
|
|
63
65
|
cloth_damping: float | None = 0.0,
|
|
64
66
|
use_face_sets: bool | None = False,
|
|
65
67
|
use_collisions: bool | None = False,
|
|
66
|
-
):
|
|
68
|
+
) -> None:
|
|
67
69
|
"""Applies a cloth simulation deformation to the entire mesh
|
|
68
70
|
|
|
69
|
-
:type execution_context: int | str | None
|
|
70
|
-
:type undo: bool | None
|
|
71
71
|
:param start_mouse: Starting Mouse
|
|
72
|
-
:type start_mouse: collections.abc.Iterable[int] | None
|
|
73
72
|
:param area_normal_radius: Normal Radius, Radius used for calculating area normal on initial click,in percentage of brush radius
|
|
74
|
-
:type area_normal_radius: float | None
|
|
75
73
|
:param strength: Strength, Filter strength
|
|
76
|
-
:type strength: float | None
|
|
77
74
|
:param iteration_count: Repeat, How many times to repeat the filter
|
|
78
|
-
:type iteration_count: int | None
|
|
79
|
-
:type event_history: bpy.types.bpy_prop_collection[bpy.types.OperatorStrokeElement] | None
|
|
80
75
|
:param type: Filter Type, Operation that is going to be applied to the mesh
|
|
81
76
|
|
|
82
77
|
GRAVITY
|
|
@@ -86,14 +81,13 @@ def cloth_filter(
|
|
|
86
81
|
Inflate -- Inflates the cloth.
|
|
87
82
|
|
|
88
83
|
EXPAND
|
|
89
|
-
Expand -- Expands the
|
|
84
|
+
Expand -- Expands the cloths dimensions.
|
|
90
85
|
|
|
91
86
|
PINCH
|
|
92
|
-
Pinch -- Pulls the cloth to the
|
|
87
|
+
Pinch -- Pulls the cloth to the cursors start position.
|
|
93
88
|
|
|
94
89
|
SCALE
|
|
95
90
|
Scale -- Scales the mesh as a soft body using the origin of the object as scale.
|
|
96
|
-
:type type: typing.Literal['GRAVITY','INFLATE','EXPAND','PINCH','SCALE'] | None
|
|
97
91
|
:param force_axis: Force Axis, Apply the force in the selected axis
|
|
98
92
|
|
|
99
93
|
X
|
|
@@ -104,7 +98,6 @@ def cloth_filter(
|
|
|
104
98
|
|
|
105
99
|
Z
|
|
106
100
|
Z -- Apply force in the Z axis.
|
|
107
|
-
:type force_axis: set[typing.Literal['X','Y','Z']] | None
|
|
108
101
|
:param orientation: Orientation, Orientation of the axis to limit the filter force
|
|
109
102
|
|
|
110
103
|
LOCAL
|
|
@@ -115,15 +108,10 @@ def cloth_filter(
|
|
|
115
108
|
|
|
116
109
|
VIEW
|
|
117
110
|
View -- Use the view axis to limit the force and set the gravity direction.
|
|
118
|
-
:type orientation: typing.Literal['LOCAL','WORLD','VIEW'] | None
|
|
119
111
|
:param cloth_mass: Cloth Mass, Mass of each simulation particle
|
|
120
|
-
:type cloth_mass: float | None
|
|
121
112
|
:param cloth_damping: Cloth Damping, How much the applied forces are propagated through the cloth
|
|
122
|
-
:
|
|
123
|
-
:param use_face_sets: Use Face Sets, Apply the filter only to the Face Set under the cursor
|
|
124
|
-
:type use_face_sets: bool | None
|
|
113
|
+
:param use_face_sets: Use Face Sets, Apply the filter only to the face set under the cursor
|
|
125
114
|
:param use_collisions: Use Collisions, Collide with other collider objects in the scene
|
|
126
|
-
:type use_collisions: bool | None
|
|
127
115
|
"""
|
|
128
116
|
|
|
129
117
|
def color_filter(
|
|
@@ -155,20 +143,13 @@ def color_filter(
|
|
|
155
143
|
1.0,
|
|
156
144
|
1.0,
|
|
157
145
|
),
|
|
158
|
-
):
|
|
146
|
+
) -> None:
|
|
159
147
|
"""Applies a filter to modify the active color attribute
|
|
160
148
|
|
|
161
|
-
:type execution_context: int | str | None
|
|
162
|
-
:type undo: bool | None
|
|
163
149
|
:param start_mouse: Starting Mouse
|
|
164
|
-
:type start_mouse: collections.abc.Iterable[int] | None
|
|
165
150
|
:param area_normal_radius: Normal Radius, Radius used for calculating area normal on initial click,in percentage of brush radius
|
|
166
|
-
:type area_normal_radius: float | None
|
|
167
151
|
:param strength: Strength, Filter strength
|
|
168
|
-
:type strength: float | None
|
|
169
152
|
:param iteration_count: Repeat, How many times to repeat the filter
|
|
170
|
-
:type iteration_count: int | None
|
|
171
|
-
:type event_history: bpy.types.bpy_prop_collection[bpy.types.OperatorStrokeElement] | None
|
|
172
153
|
:param type: Filter Type
|
|
173
154
|
|
|
174
155
|
FILL
|
|
@@ -200,37 +181,29 @@ def color_filter(
|
|
|
200
181
|
|
|
201
182
|
BLUE
|
|
202
183
|
Blue -- Change blue channel.
|
|
203
|
-
:type type: typing.Literal['FILL','HUE','SATURATION','VALUE','BRIGHTNESS','CONTRAST','SMOOTH','RED','GREEN','BLUE'] | None
|
|
204
184
|
:param fill_color: Fill Color
|
|
205
|
-
:type fill_color: collections.abc.Sequence[float] | mathutils.Color | None
|
|
206
185
|
"""
|
|
207
186
|
|
|
208
187
|
def detail_flood_fill(
|
|
209
|
-
execution_context: int | str | None = None,
|
|
210
|
-
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
|
|
214
|
-
:type undo: bool | None
|
|
215
|
-
"""
|
|
188
|
+
execution_context: int | str | None = None,
|
|
189
|
+
undo: bool | None = None,
|
|
190
|
+
/,
|
|
191
|
+
) -> None:
|
|
192
|
+
"""Flood fill the mesh with the selected detail setting"""
|
|
216
193
|
|
|
217
194
|
def dynamic_topology_toggle(
|
|
218
|
-
execution_context: int | str | None = None,
|
|
219
|
-
|
|
220
|
-
|
|
221
|
-
|
|
222
|
-
|
|
223
|
-
:type undo: bool | None
|
|
224
|
-
"""
|
|
195
|
+
execution_context: int | str | None = None,
|
|
196
|
+
undo: bool | None = None,
|
|
197
|
+
/,
|
|
198
|
+
) -> None:
|
|
199
|
+
"""Dynamic topology alters the mesh topology while sculpting"""
|
|
225
200
|
|
|
226
201
|
def dyntopo_detail_size_edit(
|
|
227
|
-
execution_context: int | str | None = None,
|
|
228
|
-
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
:type undo: bool | None
|
|
233
|
-
"""
|
|
202
|
+
execution_context: int | str | None = None,
|
|
203
|
+
undo: bool | None = None,
|
|
204
|
+
/,
|
|
205
|
+
) -> None:
|
|
206
|
+
"""Modify the detail size of dyntopo interactively"""
|
|
234
207
|
|
|
235
208
|
def expand(
|
|
236
209
|
execution_context: int | str | None = None,
|
|
@@ -257,31 +230,19 @@ def expand(
|
|
|
257
230
|
max_geodesic_move_preview: int | None = 10000,
|
|
258
231
|
use_auto_mask: bool | None = False,
|
|
259
232
|
normal_falloff_smooth: int | None = 2,
|
|
260
|
-
):
|
|
233
|
+
) -> None:
|
|
261
234
|
"""Generic sculpt expand operator
|
|
262
235
|
|
|
263
|
-
:type execution_context: int | str | None
|
|
264
|
-
:type undo: bool | None
|
|
265
236
|
:param target: Data Target, Data that is going to be modified in the expand operation
|
|
266
|
-
:type target: typing.Literal['MASK','FACE_SETS','COLOR'] | None
|
|
267
237
|
:param falloff_type: Falloff Type, Initial falloff of the expand operation
|
|
268
|
-
:type falloff_type: typing.Literal['GEODESIC','TOPOLOGY','TOPOLOGY_DIAGONALS','NORMALS','SPHERICAL','BOUNDARY_TOPOLOGY','BOUNDARY_FACE_SET','ACTIVE_FACE_SET'] | None
|
|
269
238
|
:param invert: Invert, Invert the expand active elements
|
|
270
|
-
:type invert: bool | None
|
|
271
239
|
:param use_mask_preserve: Preserve Previous, Preserve the previous state of the target data
|
|
272
|
-
:type use_mask_preserve: bool | None
|
|
273
240
|
:param use_falloff_gradient: Falloff Gradient, Expand Using a linear falloff
|
|
274
|
-
:
|
|
275
|
-
:param use_modify_active: Modify Active, Modify the active Face Set instead of creating a new one
|
|
276
|
-
:type use_modify_active: bool | None
|
|
241
|
+
:param use_modify_active: Modify Active, Modify the active face set instead of creating a new one
|
|
277
242
|
:param use_reposition_pivot: Reposition Pivot, Reposition the sculpt transform pivot to the boundary of the expand active area
|
|
278
|
-
:type use_reposition_pivot: bool | None
|
|
279
243
|
:param max_geodesic_move_preview: Max Vertex Count for Geodesic Move Preview, Maximum number of vertices in the mesh for using geodesic falloff when moving the origin of expand. If the total number of vertices is greater than this value, the falloff will be set to spherical when moving
|
|
280
|
-
:type max_geodesic_move_preview: int | None
|
|
281
244
|
:param use_auto_mask: Auto Create, Fill in mask if nothing is already masked
|
|
282
|
-
:type use_auto_mask: bool | None
|
|
283
245
|
:param normal_falloff_smooth: Normal Smooth, Blurring steps for normal falloff
|
|
284
|
-
:type normal_falloff_smooth: int | None
|
|
285
246
|
"""
|
|
286
247
|
|
|
287
248
|
def face_set_box_gesture(
|
|
@@ -295,23 +256,15 @@ def face_set_box_gesture(
|
|
|
295
256
|
ymax: int | None = 0,
|
|
296
257
|
wait_for_input: bool | None = True,
|
|
297
258
|
use_front_faces_only: bool | None = False,
|
|
298
|
-
):
|
|
259
|
+
) -> None:
|
|
299
260
|
"""Add a face set in a rectangle defined by the cursor
|
|
300
261
|
|
|
301
|
-
:type execution_context: int | str | None
|
|
302
|
-
:type undo: bool | None
|
|
303
262
|
:param xmin: X Min
|
|
304
|
-
:type xmin: int | None
|
|
305
263
|
:param xmax: X Max
|
|
306
|
-
:type xmax: int | None
|
|
307
264
|
:param ymin: Y Min
|
|
308
|
-
:type ymin: int | None
|
|
309
265
|
:param ymax: Y Max
|
|
310
|
-
:type ymax: int | None
|
|
311
266
|
:param wait_for_input: Wait for Input
|
|
312
|
-
:type wait_for_input: bool | None
|
|
313
267
|
:param use_front_faces_only: Front Faces Only, Affect only faces facing towards the view
|
|
314
|
-
:type use_front_faces_only: bool | None
|
|
315
268
|
"""
|
|
316
269
|
|
|
317
270
|
def face_set_change_visibility(
|
|
@@ -320,22 +273,21 @@ def face_set_change_visibility(
|
|
|
320
273
|
/,
|
|
321
274
|
*,
|
|
322
275
|
mode: typing.Literal["TOGGLE", "SHOW_ACTIVE", "HIDE_ACTIVE"] | None = "TOGGLE",
|
|
323
|
-
|
|
324
|
-
|
|
276
|
+
active_face_set: int | None = 0,
|
|
277
|
+
) -> None:
|
|
278
|
+
"""Change the visibility of the face sets of the sculpt
|
|
325
279
|
|
|
326
|
-
:type execution_context: int | str | None
|
|
327
|
-
:type undo: bool | None
|
|
328
280
|
:param mode: Mode
|
|
329
281
|
|
|
330
282
|
TOGGLE
|
|
331
|
-
Toggle Visibility -- Hide all
|
|
283
|
+
Toggle Visibility -- Hide all face sets except for the active one.
|
|
332
284
|
|
|
333
285
|
SHOW_ACTIVE
|
|
334
|
-
Show Active Face Set -- Show
|
|
286
|
+
Show Active Face Set -- Show the active face set.
|
|
335
287
|
|
|
336
288
|
HIDE_ACTIVE
|
|
337
|
-
Hide Active Face
|
|
338
|
-
:
|
|
289
|
+
Hide Active Face Set -- Hide the active face set.
|
|
290
|
+
:param active_face_set: Active Face Set
|
|
339
291
|
"""
|
|
340
292
|
|
|
341
293
|
def face_set_edit(
|
|
@@ -350,34 +302,46 @@ def face_set_edit(
|
|
|
350
302
|
| None = "GROW",
|
|
351
303
|
strength: float | None = 1.0,
|
|
352
304
|
modify_hidden: bool | None = False,
|
|
353
|
-
):
|
|
354
|
-
"""Edits the current active
|
|
305
|
+
) -> None:
|
|
306
|
+
"""Edits the current active face set
|
|
355
307
|
|
|
356
|
-
:type execution_context: int | str | None
|
|
357
|
-
:type undo: bool | None
|
|
358
308
|
:param active_face_set: Active Face Set
|
|
359
|
-
:type active_face_set: int | None
|
|
360
309
|
:param mode: Mode
|
|
361
310
|
|
|
362
311
|
GROW
|
|
363
|
-
Grow Face Set -- Grows the
|
|
312
|
+
Grow Face Set -- Grows the face set boundary by one face based on mesh topology.
|
|
364
313
|
|
|
365
314
|
SHRINK
|
|
366
|
-
Shrink Face Set -- Shrinks the
|
|
315
|
+
Shrink Face Set -- Shrinks the face set boundary by one face based on mesh topology.
|
|
367
316
|
|
|
368
317
|
DELETE_GEOMETRY
|
|
369
|
-
Delete Geometry -- Deletes the faces that are assigned to the
|
|
318
|
+
Delete Geometry -- Deletes the faces that are assigned to the face set.
|
|
370
319
|
|
|
371
320
|
FAIR_POSITIONS
|
|
372
|
-
Fair Positions -- Creates a smooth as possible geometry patch from the
|
|
321
|
+
Fair Positions -- Creates a smooth as possible geometry patch from the face set minimizing changes in vertex positions.
|
|
373
322
|
|
|
374
323
|
FAIR_TANGENCY
|
|
375
|
-
Fair Tangency -- Creates a smooth as possible geometry patch from the
|
|
376
|
-
:type mode: typing.Literal['GROW','SHRINK','DELETE_GEOMETRY','FAIR_POSITIONS','FAIR_TANGENCY'] | None
|
|
324
|
+
Fair Tangency -- Creates a smooth as possible geometry patch from the face set minimizing changes in vertex tangents.
|
|
377
325
|
:param strength: Strength
|
|
378
|
-
:type strength: float | None
|
|
379
326
|
:param modify_hidden: Modify Hidden, Apply the edit operation to hidden geometry
|
|
380
|
-
|
|
327
|
+
"""
|
|
328
|
+
|
|
329
|
+
def face_set_extract(
|
|
330
|
+
execution_context: int | str | None = None,
|
|
331
|
+
undo: bool | None = None,
|
|
332
|
+
/,
|
|
333
|
+
*,
|
|
334
|
+
add_boundary_loop: bool | None = True,
|
|
335
|
+
smooth_iterations: int | None = 4,
|
|
336
|
+
apply_shrinkwrap: bool | None = True,
|
|
337
|
+
add_solidify: bool | None = True,
|
|
338
|
+
) -> None:
|
|
339
|
+
"""Create a new mesh object from the selected face set
|
|
340
|
+
|
|
341
|
+
:param add_boundary_loop: Add Boundary Loop, Add an extra edge loop to better preserve the shape when applying a subdivision surface modifier
|
|
342
|
+
:param smooth_iterations: Smooth Iterations, Smooth iterations applied to the extracted mesh
|
|
343
|
+
:param apply_shrinkwrap: Project to Sculpt, Project the extracted mesh into the original sculpt
|
|
344
|
+
:param add_solidify: Extract as Solid, Extract the mask as a solid object with a solidify modifier
|
|
381
345
|
"""
|
|
382
346
|
|
|
383
347
|
def face_set_lasso_gesture(
|
|
@@ -390,21 +354,14 @@ def face_set_lasso_gesture(
|
|
|
390
354
|
smooth_stroke_factor: float | None = 0.75,
|
|
391
355
|
smooth_stroke_radius: int | None = 35,
|
|
392
356
|
use_front_faces_only: bool | None = False,
|
|
393
|
-
):
|
|
357
|
+
) -> None:
|
|
394
358
|
"""Add a face set in a shape defined by the cursor
|
|
395
359
|
|
|
396
|
-
:type execution_context: int | str | None
|
|
397
|
-
:type undo: bool | None
|
|
398
360
|
:param path: Path
|
|
399
|
-
:type path: bpy.types.bpy_prop_collection[bpy.types.OperatorMousePath] | None
|
|
400
361
|
:param use_smooth_stroke: Stabilize Stroke, Selection lags behind mouse and follows a smoother path
|
|
401
|
-
:type use_smooth_stroke: bool | None
|
|
402
362
|
:param smooth_stroke_factor: Smooth Stroke Factor, Higher values gives a smoother stroke
|
|
403
|
-
:type smooth_stroke_factor: float | None
|
|
404
363
|
:param smooth_stroke_radius: Smooth Stroke Radius, Minimum distance from last point before selection continues
|
|
405
|
-
:type smooth_stroke_radius: int | None
|
|
406
364
|
:param use_front_faces_only: Front Faces Only, Affect only faces facing towards the view
|
|
407
|
-
:type use_front_faces_only: bool | None
|
|
408
365
|
"""
|
|
409
366
|
|
|
410
367
|
def face_set_line_gesture(
|
|
@@ -420,27 +377,17 @@ def face_set_line_gesture(
|
|
|
420
377
|
cursor: int | None = 5,
|
|
421
378
|
use_front_faces_only: bool | None = False,
|
|
422
379
|
use_limit_to_segment: bool | None = False,
|
|
423
|
-
):
|
|
380
|
+
) -> None:
|
|
424
381
|
"""Add a face set to one side of a line defined by the cursor
|
|
425
382
|
|
|
426
|
-
:type execution_context: int | str | None
|
|
427
|
-
:type undo: bool | None
|
|
428
383
|
:param xstart: X Start
|
|
429
|
-
:type xstart: int | None
|
|
430
384
|
:param xend: X End
|
|
431
|
-
:type xend: int | None
|
|
432
385
|
:param ystart: Y Start
|
|
433
|
-
:type ystart: int | None
|
|
434
386
|
:param yend: Y End
|
|
435
|
-
:type yend: int | None
|
|
436
387
|
:param flip: Flip
|
|
437
|
-
:type flip: bool | None
|
|
438
388
|
:param cursor: Cursor, Mouse cursor style to use during the modal operator
|
|
439
|
-
:type cursor: int | None
|
|
440
389
|
:param use_front_faces_only: Front Faces Only, Affect only faces facing towards the view
|
|
441
|
-
:type use_front_faces_only: bool | None
|
|
442
390
|
:param use_limit_to_segment: Limit to Segment, Apply the gesture action only to the area that is contained within the segment without extending its effect to the entire line
|
|
443
|
-
:type use_limit_to_segment: bool | None
|
|
444
391
|
"""
|
|
445
392
|
|
|
446
393
|
def face_set_polyline_gesture(
|
|
@@ -450,15 +397,11 @@ def face_set_polyline_gesture(
|
|
|
450
397
|
*,
|
|
451
398
|
path: bpy.types.bpy_prop_collection[bpy.types.OperatorMousePath] | None = None,
|
|
452
399
|
use_front_faces_only: bool | None = False,
|
|
453
|
-
):
|
|
400
|
+
) -> None:
|
|
454
401
|
"""Add a face set in a shape defined by the cursor
|
|
455
402
|
|
|
456
|
-
:type execution_context: int | str | None
|
|
457
|
-
:type undo: bool | None
|
|
458
403
|
:param path: Path
|
|
459
|
-
:type path: bpy.types.bpy_prop_collection[bpy.types.OperatorMousePath] | None
|
|
460
404
|
:param use_front_faces_only: Front Faces Only, Affect only faces facing towards the view
|
|
461
|
-
:type use_front_faces_only: bool | None
|
|
462
405
|
"""
|
|
463
406
|
|
|
464
407
|
def face_sets_create(
|
|
@@ -467,25 +410,22 @@ def face_sets_create(
|
|
|
467
410
|
/,
|
|
468
411
|
*,
|
|
469
412
|
mode: typing.Literal["MASKED", "VISIBLE", "ALL", "SELECTION"] | None = "MASKED",
|
|
470
|
-
):
|
|
471
|
-
"""Create a new
|
|
413
|
+
) -> None:
|
|
414
|
+
"""Create a new face set
|
|
472
415
|
|
|
473
|
-
:type execution_context: int | str | None
|
|
474
|
-
:type undo: bool | None
|
|
475
416
|
:param mode: Mode
|
|
476
417
|
|
|
477
418
|
MASKED
|
|
478
|
-
Face Set from Masked -- Create a new
|
|
419
|
+
Face Set from Masked -- Create a new face set from the masked faces.
|
|
479
420
|
|
|
480
421
|
VISIBLE
|
|
481
|
-
Face Set from Visible -- Create a new
|
|
422
|
+
Face Set from Visible -- Create a new face set from the visible vertices.
|
|
482
423
|
|
|
483
424
|
ALL
|
|
484
|
-
Face Set Full Mesh -- Create an unique
|
|
425
|
+
Face Set Full Mesh -- Create an unique face set with all faces in the sculpt.
|
|
485
426
|
|
|
486
427
|
SELECTION
|
|
487
|
-
Face Set from Edit Mode Selection -- Create an
|
|
488
|
-
:type mode: typing.Literal['MASKED','VISIBLE','ALL','SELECTION'] | None
|
|
428
|
+
Face Set from Edit Mode Selection -- Create an face set corresponding to the Edit Mode face selection.
|
|
489
429
|
"""
|
|
490
430
|
|
|
491
431
|
def face_sets_init(
|
|
@@ -505,49 +445,43 @@ def face_sets_init(
|
|
|
505
445
|
]
|
|
506
446
|
| None = "LOOSE_PARTS",
|
|
507
447
|
threshold: float | None = 0.5,
|
|
508
|
-
):
|
|
509
|
-
"""Initializes all
|
|
448
|
+
) -> None:
|
|
449
|
+
"""Initializes all face sets in the mesh
|
|
510
450
|
|
|
511
|
-
:type execution_context: int | str | None
|
|
512
|
-
:type undo: bool | None
|
|
513
451
|
:param mode: Mode
|
|
514
452
|
|
|
515
453
|
LOOSE_PARTS
|
|
516
|
-
Face Sets from Loose Parts -- Create a
|
|
454
|
+
Face Sets from Loose Parts -- Create a face set per loose part in the mesh.
|
|
517
455
|
|
|
518
456
|
MATERIALS
|
|
519
|
-
Face Sets from Material Slots -- Create a
|
|
457
|
+
Face Sets from Material Slots -- Create a face set per material slot.
|
|
520
458
|
|
|
521
459
|
NORMALS
|
|
522
|
-
Face Sets from Mesh Normals -- Create
|
|
460
|
+
Face Sets from Mesh Normals -- Create face sets for faces that have similar normal.
|
|
523
461
|
|
|
524
462
|
UV_SEAMS
|
|
525
|
-
Face Sets from UV Seams -- Create
|
|
463
|
+
Face Sets from UV Seams -- Create face sets using UV seams as boundaries.
|
|
526
464
|
|
|
527
465
|
CREASES
|
|
528
|
-
Face Sets from Edge Creases -- Create
|
|
466
|
+
Face Sets from Edge Creases -- Create face sets using edge creases as boundaries.
|
|
529
467
|
|
|
530
468
|
BEVEL_WEIGHT
|
|
531
|
-
Face Sets from Bevel Weight -- Create
|
|
469
|
+
Face Sets from Bevel Weight -- Create face sets using bevel weights as boundaries.
|
|
532
470
|
|
|
533
471
|
SHARP_EDGES
|
|
534
|
-
Face Sets from Sharp Edges -- Create
|
|
472
|
+
Face Sets from Sharp Edges -- Create face sets using sharp edges as boundaries.
|
|
535
473
|
|
|
536
474
|
FACE_SET_BOUNDARIES
|
|
537
|
-
Face Sets from Face Set Boundaries -- Create a
|
|
538
|
-
:
|
|
539
|
-
:param threshold: Threshold, Minimum value to consider a certain attribute a boundary when creating the Face Sets
|
|
540
|
-
:type threshold: float | None
|
|
475
|
+
Face Sets from Face Set Boundaries -- Create a face set per isolated face set.
|
|
476
|
+
:param threshold: Threshold, Minimum value to consider a certain attribute a boundary when creating the face sets
|
|
541
477
|
"""
|
|
542
478
|
|
|
543
479
|
def face_sets_randomize_colors(
|
|
544
|
-
execution_context: int | str | None = None,
|
|
545
|
-
|
|
546
|
-
|
|
547
|
-
|
|
548
|
-
|
|
549
|
-
:type undo: bool | None
|
|
550
|
-
"""
|
|
480
|
+
execution_context: int | str | None = None,
|
|
481
|
+
undo: bool | None = None,
|
|
482
|
+
/,
|
|
483
|
+
) -> None:
|
|
484
|
+
"""Generates a new set of random colors to render the face sets in the viewport"""
|
|
551
485
|
|
|
552
486
|
def mask_by_color(
|
|
553
487
|
execution_context: int | str | None = None,
|
|
@@ -559,21 +493,14 @@ def mask_by_color(
|
|
|
559
493
|
preserve_previous_mask: bool | None = False,
|
|
560
494
|
threshold: float | None = 0.35,
|
|
561
495
|
location: collections.abc.Iterable[int] | None = (0, 0),
|
|
562
|
-
):
|
|
496
|
+
) -> None:
|
|
563
497
|
"""Creates a mask based on the active color attribute
|
|
564
498
|
|
|
565
|
-
:type execution_context: int | str | None
|
|
566
|
-
:type undo: bool | None
|
|
567
499
|
:param contiguous: Contiguous, Mask only contiguous color areas
|
|
568
|
-
:type contiguous: bool | None
|
|
569
500
|
:param invert: Invert, Invert the generated mask
|
|
570
|
-
:type invert: bool | None
|
|
571
501
|
:param preserve_previous_mask: Preserve Previous Mask, Preserve the previous mask and add or subtract the new one generated by the colors
|
|
572
|
-
:type preserve_previous_mask: bool | None
|
|
573
502
|
:param threshold: Threshold, How much changes in color affect the mask generation
|
|
574
|
-
:type threshold: float | None
|
|
575
503
|
:param location: Location, Region coordinates of sampling
|
|
576
|
-
:type location: collections.abc.Iterable[int] | None
|
|
577
504
|
"""
|
|
578
505
|
|
|
579
506
|
def mask_filter(
|
|
@@ -587,17 +514,12 @@ def mask_filter(
|
|
|
587
514
|
| None = "SMOOTH",
|
|
588
515
|
iterations: int | None = 1,
|
|
589
516
|
auto_iteration_count: bool | None = True,
|
|
590
|
-
):
|
|
517
|
+
) -> None:
|
|
591
518
|
"""Applies a filter to modify the current mask
|
|
592
519
|
|
|
593
|
-
:type execution_context: int | str | None
|
|
594
|
-
:type undo: bool | None
|
|
595
520
|
:param filter_type: Type, Filter that is going to be applied to the mask
|
|
596
|
-
:type filter_type: typing.Literal['SMOOTH','SHARPEN','GROW','SHRINK','CONTRAST_INCREASE','CONTRAST_DECREASE'] | None
|
|
597
521
|
:param iterations: Iterations, Number of times that the filter is going to be applied
|
|
598
|
-
:type iterations: int | None
|
|
599
522
|
:param auto_iteration_count: Auto Iteration Count, Use an automatic number of iterations based on the number of vertices of the sculpt
|
|
600
|
-
:type auto_iteration_count: bool | None
|
|
601
523
|
"""
|
|
602
524
|
|
|
603
525
|
def mask_from_boundary(
|
|
@@ -611,15 +533,11 @@ def mask_from_boundary(
|
|
|
611
533
|
settings_source: typing.Literal["OPERATOR", "BRUSH", "SCENE"] | None = "OPERATOR",
|
|
612
534
|
boundary_mode: typing.Literal["MESH", "FACE_SETS"] | None = "MESH",
|
|
613
535
|
propagation_steps: int | None = 1,
|
|
614
|
-
):
|
|
536
|
+
) -> None:
|
|
615
537
|
"""Creates a mask based on the boundaries of the surface
|
|
616
538
|
|
|
617
|
-
:type execution_context: int | str | None
|
|
618
|
-
:type undo: bool | None
|
|
619
539
|
:param mix_mode: Mode, Mix mode
|
|
620
|
-
:type mix_mode: typing.Literal['MIX','MULTIPLY','DIVIDE','ADD','SUBTRACT'] | None
|
|
621
540
|
:param mix_factor: Mix Factor
|
|
622
|
-
:type mix_factor: float | None
|
|
623
541
|
:param settings_source: Settings, Use settings from here
|
|
624
542
|
|
|
625
543
|
OPERATOR
|
|
@@ -630,7 +548,6 @@ def mask_from_boundary(
|
|
|
630
548
|
|
|
631
549
|
SCENE
|
|
632
550
|
Scene -- Use settings from scene.
|
|
633
|
-
:type settings_source: typing.Literal['OPERATOR','BRUSH','SCENE'] | None
|
|
634
551
|
:param boundary_mode: Mode, Boundary type to mask
|
|
635
552
|
|
|
636
553
|
MESH
|
|
@@ -638,9 +555,7 @@ def mask_from_boundary(
|
|
|
638
555
|
|
|
639
556
|
FACE_SETS
|
|
640
557
|
Face Sets -- Calculate the boundary mask between face sets.
|
|
641
|
-
:type boundary_mode: typing.Literal['MESH','FACE_SETS'] | None
|
|
642
558
|
:param propagation_steps: Propagation Steps
|
|
643
|
-
:type propagation_steps: int | None
|
|
644
559
|
"""
|
|
645
560
|
|
|
646
561
|
def mask_from_cavity(
|
|
@@ -656,15 +571,11 @@ def mask_from_cavity(
|
|
|
656
571
|
blur_steps: int | None = 2,
|
|
657
572
|
use_curve: bool | None = False,
|
|
658
573
|
invert: bool | None = False,
|
|
659
|
-
):
|
|
574
|
+
) -> None:
|
|
660
575
|
"""Creates a mask based on the curvature of the surface
|
|
661
576
|
|
|
662
|
-
:type execution_context: int | str | None
|
|
663
|
-
:type undo: bool | None
|
|
664
577
|
:param mix_mode: Mode, Mix mode
|
|
665
|
-
:type mix_mode: typing.Literal['MIX','MULTIPLY','DIVIDE','ADD','SUBTRACT'] | None
|
|
666
578
|
:param mix_factor: Mix Factor
|
|
667
|
-
:type mix_factor: float | None
|
|
668
579
|
:param settings_source: Settings, Use settings from here
|
|
669
580
|
|
|
670
581
|
OPERATOR
|
|
@@ -675,15 +586,10 @@ def mask_from_cavity(
|
|
|
675
586
|
|
|
676
587
|
SCENE
|
|
677
588
|
Scene -- Use settings from scene.
|
|
678
|
-
:type settings_source: typing.Literal['OPERATOR','BRUSH','SCENE'] | None
|
|
679
589
|
:param factor: Factor, The contrast of the cavity mask
|
|
680
|
-
:type factor: float | None
|
|
681
590
|
:param blur_steps: Blur, The number of times the cavity mask is blurred
|
|
682
|
-
:type blur_steps: int | None
|
|
683
591
|
:param use_curve: Custom Curve
|
|
684
|
-
:type use_curve: bool | None
|
|
685
592
|
:param invert: Cavity (Inverted)
|
|
686
|
-
:type invert: bool | None
|
|
687
593
|
"""
|
|
688
594
|
|
|
689
595
|
def mask_init(
|
|
@@ -695,13 +601,10 @@ def mask_init(
|
|
|
695
601
|
"RANDOM_PER_VERTEX", "RANDOM_PER_FACE_SET", "RANDOM_PER_LOOSE_PART"
|
|
696
602
|
]
|
|
697
603
|
| None = "RANDOM_PER_VERTEX",
|
|
698
|
-
):
|
|
604
|
+
) -> None:
|
|
699
605
|
"""Creates a new mask for the entire mesh
|
|
700
606
|
|
|
701
|
-
:type execution_context: int | str | None
|
|
702
|
-
:type undo: bool | None
|
|
703
607
|
:param mode: Mode
|
|
704
|
-
:type mode: typing.Literal['RANDOM_PER_VERTEX','RANDOM_PER_FACE_SET','RANDOM_PER_LOOSE_PART'] | None
|
|
705
608
|
"""
|
|
706
609
|
|
|
707
610
|
def mesh_filter(
|
|
@@ -736,20 +639,13 @@ def mesh_filter(
|
|
|
736
639
|
sharpen_smooth_ratio: float | None = 0.35,
|
|
737
640
|
sharpen_intensify_detail_strength: float | None = 0.0,
|
|
738
641
|
sharpen_curvature_smooth_iterations: int | None = 0,
|
|
739
|
-
):
|
|
642
|
+
) -> None:
|
|
740
643
|
"""Applies a filter to modify the current mesh
|
|
741
644
|
|
|
742
|
-
:type execution_context: int | str | None
|
|
743
|
-
:type undo: bool | None
|
|
744
645
|
:param start_mouse: Starting Mouse
|
|
745
|
-
:type start_mouse: collections.abc.Iterable[int] | None
|
|
746
646
|
:param area_normal_radius: Normal Radius, Radius used for calculating area normal on initial click,in percentage of brush radius
|
|
747
|
-
:type area_normal_radius: float | None
|
|
748
647
|
:param strength: Strength, Filter strength
|
|
749
|
-
:type strength: float | None
|
|
750
648
|
:param iteration_count: Repeat, How many times to repeat the filter
|
|
751
|
-
:type iteration_count: int | None
|
|
752
|
-
:type event_history: bpy.types.bpy_prop_collection[bpy.types.OperatorStrokeElement] | None
|
|
753
649
|
:param type: Filter Type, Operation that is going to be applied to the mesh
|
|
754
650
|
|
|
755
651
|
SMOOTH
|
|
@@ -771,7 +667,7 @@ def mesh_filter(
|
|
|
771
667
|
Relax -- Relax mesh.
|
|
772
668
|
|
|
773
669
|
RELAX_FACE_SETS
|
|
774
|
-
Relax Face Sets -- Smooth the edges of all the
|
|
670
|
+
Relax Face Sets -- Smooth the edges of all the face sets.
|
|
775
671
|
|
|
776
672
|
SURFACE_SMOOTH
|
|
777
673
|
Surface Smooth -- Smooth the surface of the mesh, preserving the volume.
|
|
@@ -784,7 +680,6 @@ def mesh_filter(
|
|
|
784
680
|
|
|
785
681
|
ERASE_DISPLACEMENT
|
|
786
682
|
Erase Displacement -- Deletes the displacement of the Multires Modifier.
|
|
787
|
-
:type type: typing.Literal['SMOOTH','SCALE','INFLATE','SPHERE','RANDOM','RELAX','RELAX_FACE_SETS','SURFACE_SMOOTH','SHARPEN','ENHANCE_DETAILS','ERASE_DISPLACEMENT'] | None
|
|
788
683
|
:param deform_axis: Deform Axis, Apply the deformation in the selected axis
|
|
789
684
|
|
|
790
685
|
X
|
|
@@ -795,7 +690,6 @@ def mesh_filter(
|
|
|
795
690
|
|
|
796
691
|
Z
|
|
797
692
|
Z -- Deform in the Z axis.
|
|
798
|
-
:type deform_axis: set[typing.Literal['X','Y','Z']] | None
|
|
799
693
|
:param orientation: Orientation, Orientation of the axis to limit the filter displacement
|
|
800
694
|
|
|
801
695
|
LOCAL
|
|
@@ -806,24 +700,54 @@ def mesh_filter(
|
|
|
806
700
|
|
|
807
701
|
VIEW
|
|
808
702
|
View -- Use the view axis to limit the displacement.
|
|
809
|
-
:type orientation: typing.Literal['LOCAL','WORLD','VIEW'] | None
|
|
810
703
|
:param surface_smooth_shape_preservation: Shape Preservation, How much of the original shape is preserved when smoothing
|
|
811
|
-
:type surface_smooth_shape_preservation: float | None
|
|
812
704
|
:param surface_smooth_current_vertex: Per Vertex Displacement, How much the position of each individual vertex influences the final result
|
|
813
|
-
:type surface_smooth_current_vertex: float | None
|
|
814
705
|
:param sharpen_smooth_ratio: Smooth Ratio, How much smoothing is applied to polished surfaces
|
|
815
|
-
:type sharpen_smooth_ratio: float | None
|
|
816
706
|
:param sharpen_intensify_detail_strength: Intensify Details, How much creases and valleys are intensified
|
|
817
|
-
:type sharpen_intensify_detail_strength: float | None
|
|
818
707
|
:param sharpen_curvature_smooth_iterations: Curvature Smooth Iterations, How much smooth the resulting shape is, ignoring high frequency details
|
|
819
|
-
:type sharpen_curvature_smooth_iterations: int | None
|
|
820
708
|
"""
|
|
821
709
|
|
|
822
|
-
def optimize(
|
|
823
|
-
|
|
710
|
+
def optimize(
|
|
711
|
+
execution_context: int | str | None = None,
|
|
712
|
+
undo: bool | None = None,
|
|
713
|
+
/,
|
|
714
|
+
) -> None:
|
|
715
|
+
"""Recalculate the sculpt BVH to improve performance"""
|
|
824
716
|
|
|
825
|
-
|
|
826
|
-
:
|
|
717
|
+
def paint_mask_extract(
|
|
718
|
+
execution_context: int | str | None = None,
|
|
719
|
+
undo: bool | None = None,
|
|
720
|
+
/,
|
|
721
|
+
*,
|
|
722
|
+
mask_threshold: float | None = 0.5,
|
|
723
|
+
add_boundary_loop: bool | None = True,
|
|
724
|
+
smooth_iterations: int | None = 4,
|
|
725
|
+
apply_shrinkwrap: bool | None = True,
|
|
726
|
+
add_solidify: bool | None = True,
|
|
727
|
+
) -> None:
|
|
728
|
+
"""Create a new mesh object from the current paint mask
|
|
729
|
+
|
|
730
|
+
:param mask_threshold: Threshold, Minimum mask value to consider the vertex valid to extract a face from the original mesh
|
|
731
|
+
:param add_boundary_loop: Add Boundary Loop, Add an extra edge loop to better preserve the shape when applying a subdivision surface modifier
|
|
732
|
+
:param smooth_iterations: Smooth Iterations, Smooth iterations applied to the extracted mesh
|
|
733
|
+
:param apply_shrinkwrap: Project to Sculpt, Project the extracted mesh into the original sculpt
|
|
734
|
+
:param add_solidify: Extract as Solid, Extract the mask as a solid object with a solidify modifier
|
|
735
|
+
"""
|
|
736
|
+
|
|
737
|
+
def paint_mask_slice(
|
|
738
|
+
execution_context: int | str | None = None,
|
|
739
|
+
undo: bool | None = None,
|
|
740
|
+
/,
|
|
741
|
+
*,
|
|
742
|
+
mask_threshold: float | None = 0.5,
|
|
743
|
+
fill_holes: bool | None = True,
|
|
744
|
+
new_object: bool | None = True,
|
|
745
|
+
) -> None:
|
|
746
|
+
"""Slices the paint mask from the mesh
|
|
747
|
+
|
|
748
|
+
:param mask_threshold: Threshold, Minimum mask value to consider the vertex valid to extract a face from the original mesh
|
|
749
|
+
:param fill_holes: Fill Holes, Fill holes after slicing the mask
|
|
750
|
+
:param new_object: Slice to New Object, Create a new object from the sliced mask
|
|
827
751
|
"""
|
|
828
752
|
|
|
829
753
|
def project_line_gesture(
|
|
@@ -839,34 +763,17 @@ def project_line_gesture(
|
|
|
839
763
|
cursor: int | None = 5,
|
|
840
764
|
use_front_faces_only: bool | None = False,
|
|
841
765
|
use_limit_to_segment: bool | None = False,
|
|
842
|
-
):
|
|
766
|
+
) -> None:
|
|
843
767
|
"""Project the geometry onto a plane defined by a line
|
|
844
768
|
|
|
845
|
-
:type execution_context: int | str | None
|
|
846
|
-
:type undo: bool | None
|
|
847
769
|
:param xstart: X Start
|
|
848
|
-
:type xstart: int | None
|
|
849
770
|
:param xend: X End
|
|
850
|
-
:type xend: int | None
|
|
851
771
|
:param ystart: Y Start
|
|
852
|
-
:type ystart: int | None
|
|
853
772
|
:param yend: Y End
|
|
854
|
-
:type yend: int | None
|
|
855
773
|
:param flip: Flip
|
|
856
|
-
:type flip: bool | None
|
|
857
774
|
:param cursor: Cursor, Mouse cursor style to use during the modal operator
|
|
858
|
-
:type cursor: int | None
|
|
859
775
|
:param use_front_faces_only: Front Faces Only, Affect only faces facing towards the view
|
|
860
|
-
:type use_front_faces_only: bool | None
|
|
861
776
|
:param use_limit_to_segment: Limit to Segment, Apply the gesture action only to the area that is contained within the segment without extending its effect to the entire line
|
|
862
|
-
:type use_limit_to_segment: bool | None
|
|
863
|
-
"""
|
|
864
|
-
|
|
865
|
-
def sample_color(execution_context: int | str | None = None, undo: bool | None = None):
|
|
866
|
-
"""Sample the vertex color of the active vertex
|
|
867
|
-
|
|
868
|
-
:type execution_context: int | str | None
|
|
869
|
-
:type undo: bool | None
|
|
870
777
|
"""
|
|
871
778
|
|
|
872
779
|
def sample_detail_size(
|
|
@@ -876,13 +783,10 @@ def sample_detail_size(
|
|
|
876
783
|
*,
|
|
877
784
|
location: collections.abc.Iterable[int] | None = (0, 0),
|
|
878
785
|
mode: typing.Literal["DYNTOPO", "VOXEL"] | None = "DYNTOPO",
|
|
879
|
-
):
|
|
786
|
+
) -> None:
|
|
880
787
|
"""Sample the mesh detail on clicked point
|
|
881
788
|
|
|
882
|
-
:type execution_context: int | str | None
|
|
883
|
-
:type undo: bool | None
|
|
884
789
|
:param location: Location, Screen coordinates of sampling
|
|
885
|
-
:type location: collections.abc.Iterable[int] | None
|
|
886
790
|
:param mode: Detail Mode, Target sculpting workflow that is going to use the sampled size
|
|
887
791
|
|
|
888
792
|
DYNTOPO
|
|
@@ -890,26 +794,21 @@ def sample_detail_size(
|
|
|
890
794
|
|
|
891
795
|
VOXEL
|
|
892
796
|
Voxel -- Sample mesh voxel size.
|
|
893
|
-
:type mode: typing.Literal['DYNTOPO','VOXEL'] | None
|
|
894
797
|
"""
|
|
895
798
|
|
|
896
799
|
def sculptmode_toggle(
|
|
897
|
-
execution_context: int | str | None = None,
|
|
898
|
-
|
|
899
|
-
|
|
900
|
-
|
|
901
|
-
|
|
902
|
-
:type undo: bool | None
|
|
903
|
-
"""
|
|
800
|
+
execution_context: int | str | None = None,
|
|
801
|
+
undo: bool | None = None,
|
|
802
|
+
/,
|
|
803
|
+
) -> None:
|
|
804
|
+
"""Toggle sculpt mode in 3D view"""
|
|
904
805
|
|
|
905
806
|
def set_persistent_base(
|
|
906
|
-
execution_context: int | str | None = None,
|
|
907
|
-
|
|
908
|
-
|
|
909
|
-
|
|
910
|
-
|
|
911
|
-
:type undo: bool | None
|
|
912
|
-
"""
|
|
807
|
+
execution_context: int | str | None = None,
|
|
808
|
+
undo: bool | None = None,
|
|
809
|
+
/,
|
|
810
|
+
) -> None:
|
|
811
|
+
"""Reset the copy of the mesh that is being sculpted on"""
|
|
913
812
|
|
|
914
813
|
def set_pivot_position(
|
|
915
814
|
execution_context: int | str | None = None,
|
|
@@ -920,11 +819,9 @@ def set_pivot_position(
|
|
|
920
819
|
| None = "UNMASKED",
|
|
921
820
|
mouse_x: float | None = 0.0,
|
|
922
821
|
mouse_y: float | None = 0.0,
|
|
923
|
-
):
|
|
822
|
+
) -> None:
|
|
924
823
|
"""Sets the sculpt transform pivot position
|
|
925
824
|
|
|
926
|
-
:type execution_context: int | str | None
|
|
927
|
-
:type undo: bool | None
|
|
928
825
|
:param mode: Mode
|
|
929
826
|
|
|
930
827
|
ORIGIN
|
|
@@ -941,11 +838,8 @@ def set_pivot_position(
|
|
|
941
838
|
|
|
942
839
|
SURFACE
|
|
943
840
|
Surface -- Sets the pivot position to the surface under the cursor.
|
|
944
|
-
:
|
|
945
|
-
:param
|
|
946
|
-
:type mouse_x: float | None
|
|
947
|
-
:param mouse_y: Mouse Position Y, Position of the mouse used for "Surface" mode
|
|
948
|
-
:type mouse_y: float | None
|
|
841
|
+
:param mouse_x: Mouse Position X, Position of the mouse used for "Surface" and "Active Vertex" mode
|
|
842
|
+
:param mouse_y: Mouse Position Y, Position of the mouse used for "Surface" and "Active Vertex" mode
|
|
949
843
|
"""
|
|
950
844
|
|
|
951
845
|
def symmetrize(
|
|
@@ -954,13 +848,10 @@ def symmetrize(
|
|
|
954
848
|
/,
|
|
955
849
|
*,
|
|
956
850
|
merge_tolerance: float | None = 0.0005,
|
|
957
|
-
):
|
|
851
|
+
) -> None:
|
|
958
852
|
"""Symmetrize the topology modifications
|
|
959
853
|
|
|
960
|
-
:type execution_context: int | str | None
|
|
961
|
-
:type undo: bool | None
|
|
962
854
|
:param merge_tolerance: Merge Distance, Distance within which symmetrical vertices are merged
|
|
963
|
-
:type merge_tolerance: float | None
|
|
964
855
|
"""
|
|
965
856
|
|
|
966
857
|
def trim_box_gesture(
|
|
@@ -979,26 +870,17 @@ def trim_box_gesture(
|
|
|
979
870
|
use_cursor_depth: bool | None = False,
|
|
980
871
|
trim_orientation: typing.Literal["VIEW", "SURFACE"] | None = "VIEW",
|
|
981
872
|
trim_extrude_mode: typing.Literal["PROJECT", "FIXED"] | None = "FIXED",
|
|
982
|
-
trim_solver: typing.Literal["EXACT", "
|
|
983
|
-
):
|
|
873
|
+
trim_solver: typing.Literal["EXACT", "FLOAT", "MANIFOLD"] | None = "MANIFOLD",
|
|
874
|
+
) -> None:
|
|
984
875
|
"""Execute a boolean operation on the mesh and a rectangle defined by the cursor
|
|
985
876
|
|
|
986
|
-
:type execution_context: int | str | None
|
|
987
|
-
:type undo: bool | None
|
|
988
877
|
:param xmin: X Min
|
|
989
|
-
:type xmin: int | None
|
|
990
878
|
:param xmax: X Max
|
|
991
|
-
:type xmax: int | None
|
|
992
879
|
:param ymin: Y Min
|
|
993
|
-
:type ymin: int | None
|
|
994
880
|
:param ymax: Y Max
|
|
995
|
-
:type ymax: int | None
|
|
996
881
|
:param wait_for_input: Wait for Input
|
|
997
|
-
:type wait_for_input: bool | None
|
|
998
882
|
:param use_front_faces_only: Front Faces Only, Affect only faces facing towards the view
|
|
999
|
-
:type use_front_faces_only: bool | None
|
|
1000
883
|
:param location: Location, Mouse location
|
|
1001
|
-
:type location: collections.abc.Iterable[int] | None
|
|
1002
884
|
:param trim_mode: Trim Mode
|
|
1003
885
|
|
|
1004
886
|
DIFFERENCE
|
|
@@ -1009,9 +891,7 @@ def trim_box_gesture(
|
|
|
1009
891
|
|
|
1010
892
|
JOIN
|
|
1011
893
|
Join -- Join the new mesh as separate geometry, without performing any boolean operation.
|
|
1012
|
-
:type trim_mode: typing.Literal['DIFFERENCE','UNION','JOIN'] | None
|
|
1013
894
|
:param use_cursor_depth: Use Cursor for Depth, Use cursor location and radius for the dimensions and position of the trimming shape
|
|
1014
|
-
:type use_cursor_depth: bool | None
|
|
1015
895
|
:param trim_orientation: Shape Orientation
|
|
1016
896
|
|
|
1017
897
|
VIEW
|
|
@@ -1019,7 +899,6 @@ def trim_box_gesture(
|
|
|
1019
899
|
|
|
1020
900
|
SURFACE
|
|
1021
901
|
Surface -- Use the surface normal to orientate the trimming shape.
|
|
1022
|
-
:type trim_orientation: typing.Literal['VIEW','SURFACE'] | None
|
|
1023
902
|
:param trim_extrude_mode: Extrude Mode
|
|
1024
903
|
|
|
1025
904
|
PROJECT
|
|
@@ -1027,15 +906,16 @@ def trim_box_gesture(
|
|
|
1027
906
|
|
|
1028
907
|
FIXED
|
|
1029
908
|
Fixed -- Align trim geometry orthogonally for a shape with 90 degree angles.
|
|
1030
|
-
:type trim_extrude_mode: typing.Literal['PROJECT','FIXED'] | None
|
|
1031
909
|
:param trim_solver: Solver
|
|
1032
910
|
|
|
1033
911
|
EXACT
|
|
1034
|
-
Exact --
|
|
912
|
+
Exact -- Slower solver with the best results for coplanar faces.
|
|
913
|
+
|
|
914
|
+
FLOAT
|
|
915
|
+
Float -- Simple solver with good performance, without support for overlapping geometry.
|
|
1035
916
|
|
|
1036
|
-
|
|
1037
|
-
|
|
1038
|
-
:type trim_solver: typing.Literal['EXACT','FAST'] | None
|
|
917
|
+
MANIFOLD
|
|
918
|
+
Manifold -- Fastest solver that works only on manifold meshes but gives better results.
|
|
1039
919
|
"""
|
|
1040
920
|
|
|
1041
921
|
def trim_lasso_gesture(
|
|
@@ -1053,24 +933,16 @@ def trim_lasso_gesture(
|
|
|
1053
933
|
use_cursor_depth: bool | None = False,
|
|
1054
934
|
trim_orientation: typing.Literal["VIEW", "SURFACE"] | None = "VIEW",
|
|
1055
935
|
trim_extrude_mode: typing.Literal["PROJECT", "FIXED"] | None = "FIXED",
|
|
1056
|
-
trim_solver: typing.Literal["EXACT", "
|
|
1057
|
-
):
|
|
936
|
+
trim_solver: typing.Literal["EXACT", "FLOAT", "MANIFOLD"] | None = "MANIFOLD",
|
|
937
|
+
) -> None:
|
|
1058
938
|
"""Execute a boolean operation on the mesh and a shape defined by the cursor
|
|
1059
939
|
|
|
1060
|
-
:type execution_context: int | str | None
|
|
1061
|
-
:type undo: bool | None
|
|
1062
940
|
:param path: Path
|
|
1063
|
-
:type path: bpy.types.bpy_prop_collection[bpy.types.OperatorMousePath] | None
|
|
1064
941
|
:param use_smooth_stroke: Stabilize Stroke, Selection lags behind mouse and follows a smoother path
|
|
1065
|
-
:type use_smooth_stroke: bool | None
|
|
1066
942
|
:param smooth_stroke_factor: Smooth Stroke Factor, Higher values gives a smoother stroke
|
|
1067
|
-
:type smooth_stroke_factor: float | None
|
|
1068
943
|
:param smooth_stroke_radius: Smooth Stroke Radius, Minimum distance from last point before selection continues
|
|
1069
|
-
:type smooth_stroke_radius: int | None
|
|
1070
944
|
:param use_front_faces_only: Front Faces Only, Affect only faces facing towards the view
|
|
1071
|
-
:type use_front_faces_only: bool | None
|
|
1072
945
|
:param location: Location, Mouse location
|
|
1073
|
-
:type location: collections.abc.Iterable[int] | None
|
|
1074
946
|
:param trim_mode: Trim Mode
|
|
1075
947
|
|
|
1076
948
|
DIFFERENCE
|
|
@@ -1081,9 +953,7 @@ def trim_lasso_gesture(
|
|
|
1081
953
|
|
|
1082
954
|
JOIN
|
|
1083
955
|
Join -- Join the new mesh as separate geometry, without performing any boolean operation.
|
|
1084
|
-
:type trim_mode: typing.Literal['DIFFERENCE','UNION','JOIN'] | None
|
|
1085
956
|
:param use_cursor_depth: Use Cursor for Depth, Use cursor location and radius for the dimensions and position of the trimming shape
|
|
1086
|
-
:type use_cursor_depth: bool | None
|
|
1087
957
|
:param trim_orientation: Shape Orientation
|
|
1088
958
|
|
|
1089
959
|
VIEW
|
|
@@ -1091,7 +961,6 @@ def trim_lasso_gesture(
|
|
|
1091
961
|
|
|
1092
962
|
SURFACE
|
|
1093
963
|
Surface -- Use the surface normal to orientate the trimming shape.
|
|
1094
|
-
:type trim_orientation: typing.Literal['VIEW','SURFACE'] | None
|
|
1095
964
|
:param trim_extrude_mode: Extrude Mode
|
|
1096
965
|
|
|
1097
966
|
PROJECT
|
|
@@ -1099,15 +968,16 @@ def trim_lasso_gesture(
|
|
|
1099
968
|
|
|
1100
969
|
FIXED
|
|
1101
970
|
Fixed -- Align trim geometry orthogonally for a shape with 90 degree angles.
|
|
1102
|
-
:type trim_extrude_mode: typing.Literal['PROJECT','FIXED'] | None
|
|
1103
971
|
:param trim_solver: Solver
|
|
1104
972
|
|
|
1105
973
|
EXACT
|
|
1106
|
-
Exact --
|
|
974
|
+
Exact -- Slower solver with the best results for coplanar faces.
|
|
1107
975
|
|
|
1108
|
-
|
|
1109
|
-
|
|
1110
|
-
|
|
976
|
+
FLOAT
|
|
977
|
+
Float -- Simple solver with good performance, without support for overlapping geometry.
|
|
978
|
+
|
|
979
|
+
MANIFOLD
|
|
980
|
+
Manifold -- Fastest solver that works only on manifold meshes but gives better results.
|
|
1111
981
|
"""
|
|
1112
982
|
|
|
1113
983
|
def trim_line_gesture(
|
|
@@ -1128,30 +998,19 @@ def trim_line_gesture(
|
|
|
1128
998
|
use_cursor_depth: bool | None = False,
|
|
1129
999
|
trim_orientation: typing.Literal["VIEW", "SURFACE"] | None = "VIEW",
|
|
1130
1000
|
trim_extrude_mode: typing.Literal["PROJECT", "FIXED"] | None = "FIXED",
|
|
1131
|
-
trim_solver: typing.Literal["EXACT", "
|
|
1132
|
-
):
|
|
1001
|
+
trim_solver: typing.Literal["EXACT", "FLOAT", "MANIFOLD"] | None = "MANIFOLD",
|
|
1002
|
+
) -> None:
|
|
1133
1003
|
"""Remove a portion of the mesh on one side of a line
|
|
1134
1004
|
|
|
1135
|
-
:type execution_context: int | str | None
|
|
1136
|
-
:type undo: bool | None
|
|
1137
1005
|
:param xstart: X Start
|
|
1138
|
-
:type xstart: int | None
|
|
1139
1006
|
:param xend: X End
|
|
1140
|
-
:type xend: int | None
|
|
1141
1007
|
:param ystart: Y Start
|
|
1142
|
-
:type ystart: int | None
|
|
1143
1008
|
:param yend: Y End
|
|
1144
|
-
:type yend: int | None
|
|
1145
1009
|
:param flip: Flip
|
|
1146
|
-
:type flip: bool | None
|
|
1147
1010
|
:param cursor: Cursor, Mouse cursor style to use during the modal operator
|
|
1148
|
-
:type cursor: int | None
|
|
1149
1011
|
:param use_front_faces_only: Front Faces Only, Affect only faces facing towards the view
|
|
1150
|
-
:type use_front_faces_only: bool | None
|
|
1151
1012
|
:param use_limit_to_segment: Limit to Segment, Apply the gesture action only to the area that is contained within the segment without extending its effect to the entire line
|
|
1152
|
-
:type use_limit_to_segment: bool | None
|
|
1153
1013
|
:param location: Location, Mouse location
|
|
1154
|
-
:type location: collections.abc.Iterable[int] | None
|
|
1155
1014
|
:param trim_mode: Trim Mode
|
|
1156
1015
|
|
|
1157
1016
|
DIFFERENCE
|
|
@@ -1162,9 +1021,7 @@ def trim_line_gesture(
|
|
|
1162
1021
|
|
|
1163
1022
|
JOIN
|
|
1164
1023
|
Join -- Join the new mesh as separate geometry, without performing any boolean operation.
|
|
1165
|
-
:type trim_mode: typing.Literal['DIFFERENCE','UNION','JOIN'] | None
|
|
1166
1024
|
:param use_cursor_depth: Use Cursor for Depth, Use cursor location and radius for the dimensions and position of the trimming shape
|
|
1167
|
-
:type use_cursor_depth: bool | None
|
|
1168
1025
|
:param trim_orientation: Shape Orientation
|
|
1169
1026
|
|
|
1170
1027
|
VIEW
|
|
@@ -1172,7 +1029,6 @@ def trim_line_gesture(
|
|
|
1172
1029
|
|
|
1173
1030
|
SURFACE
|
|
1174
1031
|
Surface -- Use the surface normal to orientate the trimming shape.
|
|
1175
|
-
:type trim_orientation: typing.Literal['VIEW','SURFACE'] | None
|
|
1176
1032
|
:param trim_extrude_mode: Extrude Mode
|
|
1177
1033
|
|
|
1178
1034
|
PROJECT
|
|
@@ -1180,15 +1036,16 @@ def trim_line_gesture(
|
|
|
1180
1036
|
|
|
1181
1037
|
FIXED
|
|
1182
1038
|
Fixed -- Align trim geometry orthogonally for a shape with 90 degree angles.
|
|
1183
|
-
:type trim_extrude_mode: typing.Literal['PROJECT','FIXED'] | None
|
|
1184
1039
|
:param trim_solver: Solver
|
|
1185
1040
|
|
|
1186
1041
|
EXACT
|
|
1187
|
-
Exact --
|
|
1042
|
+
Exact -- Slower solver with the best results for coplanar faces.
|
|
1043
|
+
|
|
1044
|
+
FLOAT
|
|
1045
|
+
Float -- Simple solver with good performance, without support for overlapping geometry.
|
|
1188
1046
|
|
|
1189
|
-
|
|
1190
|
-
|
|
1191
|
-
:type trim_solver: typing.Literal['EXACT','FAST'] | None
|
|
1047
|
+
MANIFOLD
|
|
1048
|
+
Manifold -- Fastest solver that works only on manifold meshes but gives better results.
|
|
1192
1049
|
"""
|
|
1193
1050
|
|
|
1194
1051
|
def trim_polyline_gesture(
|
|
@@ -1203,18 +1060,13 @@ def trim_polyline_gesture(
|
|
|
1203
1060
|
use_cursor_depth: bool | None = False,
|
|
1204
1061
|
trim_orientation: typing.Literal["VIEW", "SURFACE"] | None = "VIEW",
|
|
1205
1062
|
trim_extrude_mode: typing.Literal["PROJECT", "FIXED"] | None = "FIXED",
|
|
1206
|
-
trim_solver: typing.Literal["EXACT", "
|
|
1207
|
-
):
|
|
1063
|
+
trim_solver: typing.Literal["EXACT", "FLOAT", "MANIFOLD"] | None = "MANIFOLD",
|
|
1064
|
+
) -> None:
|
|
1208
1065
|
"""Execute a boolean operation on the mesh and a polygonal shape defined by the cursor
|
|
1209
1066
|
|
|
1210
|
-
:type execution_context: int | str | None
|
|
1211
|
-
:type undo: bool | None
|
|
1212
1067
|
:param path: Path
|
|
1213
|
-
:type path: bpy.types.bpy_prop_collection[bpy.types.OperatorMousePath] | None
|
|
1214
1068
|
:param use_front_faces_only: Front Faces Only, Affect only faces facing towards the view
|
|
1215
|
-
:type use_front_faces_only: bool | None
|
|
1216
1069
|
:param location: Location, Mouse location
|
|
1217
|
-
:type location: collections.abc.Iterable[int] | None
|
|
1218
1070
|
:param trim_mode: Trim Mode
|
|
1219
1071
|
|
|
1220
1072
|
DIFFERENCE
|
|
@@ -1225,9 +1077,7 @@ def trim_polyline_gesture(
|
|
|
1225
1077
|
|
|
1226
1078
|
JOIN
|
|
1227
1079
|
Join -- Join the new mesh as separate geometry, without performing any boolean operation.
|
|
1228
|
-
:type trim_mode: typing.Literal['DIFFERENCE','UNION','JOIN'] | None
|
|
1229
1080
|
:param use_cursor_depth: Use Cursor for Depth, Use cursor location and radius for the dimensions and position of the trimming shape
|
|
1230
|
-
:type use_cursor_depth: bool | None
|
|
1231
1081
|
:param trim_orientation: Shape Orientation
|
|
1232
1082
|
|
|
1233
1083
|
VIEW
|
|
@@ -1235,7 +1085,6 @@ def trim_polyline_gesture(
|
|
|
1235
1085
|
|
|
1236
1086
|
SURFACE
|
|
1237
1087
|
Surface -- Use the surface normal to orientate the trimming shape.
|
|
1238
|
-
:type trim_orientation: typing.Literal['VIEW','SURFACE'] | None
|
|
1239
1088
|
:param trim_extrude_mode: Extrude Mode
|
|
1240
1089
|
|
|
1241
1090
|
PROJECT
|
|
@@ -1243,15 +1092,16 @@ def trim_polyline_gesture(
|
|
|
1243
1092
|
|
|
1244
1093
|
FIXED
|
|
1245
1094
|
Fixed -- Align trim geometry orthogonally for a shape with 90 degree angles.
|
|
1246
|
-
:type trim_extrude_mode: typing.Literal['PROJECT','FIXED'] | None
|
|
1247
1095
|
:param trim_solver: Solver
|
|
1248
1096
|
|
|
1249
1097
|
EXACT
|
|
1250
|
-
Exact --
|
|
1098
|
+
Exact -- Slower solver with the best results for coplanar faces.
|
|
1099
|
+
|
|
1100
|
+
FLOAT
|
|
1101
|
+
Float -- Simple solver with good performance, without support for overlapping geometry.
|
|
1251
1102
|
|
|
1252
|
-
|
|
1253
|
-
|
|
1254
|
-
:type trim_solver: typing.Literal['EXACT','FAST'] | None
|
|
1103
|
+
MANIFOLD
|
|
1104
|
+
Manifold -- Fastest solver that works only on manifold meshes but gives better results.
|
|
1255
1105
|
"""
|
|
1256
1106
|
|
|
1257
1107
|
def uv_sculpt_grab(
|
|
@@ -1260,13 +1110,10 @@ def uv_sculpt_grab(
|
|
|
1260
1110
|
/,
|
|
1261
1111
|
*,
|
|
1262
1112
|
use_invert: bool | None = False,
|
|
1263
|
-
):
|
|
1113
|
+
) -> None:
|
|
1264
1114
|
"""Grab UVs
|
|
1265
1115
|
|
|
1266
|
-
:type execution_context: int | str | None
|
|
1267
|
-
:type undo: bool | None
|
|
1268
1116
|
:param use_invert: Invert, Invert action for the duration of the stroke
|
|
1269
|
-
:type use_invert: bool | None
|
|
1270
1117
|
"""
|
|
1271
1118
|
|
|
1272
1119
|
def uv_sculpt_pinch(
|
|
@@ -1275,13 +1122,10 @@ def uv_sculpt_pinch(
|
|
|
1275
1122
|
/,
|
|
1276
1123
|
*,
|
|
1277
1124
|
use_invert: bool | None = False,
|
|
1278
|
-
):
|
|
1125
|
+
) -> None:
|
|
1279
1126
|
"""Pinch UVs
|
|
1280
1127
|
|
|
1281
|
-
:type execution_context: int | str | None
|
|
1282
|
-
:type undo: bool | None
|
|
1283
1128
|
:param use_invert: Invert, Invert action for the duration of the stroke
|
|
1284
|
-
:type use_invert: bool | None
|
|
1285
1129
|
"""
|
|
1286
1130
|
|
|
1287
1131
|
def uv_sculpt_relax(
|
|
@@ -1290,14 +1134,11 @@ def uv_sculpt_relax(
|
|
|
1290
1134
|
/,
|
|
1291
1135
|
*,
|
|
1292
1136
|
use_invert: bool | None = False,
|
|
1293
|
-
relax_method: typing.Literal["LAPLACIAN", "HC", "COTAN"] | None = "
|
|
1294
|
-
):
|
|
1137
|
+
relax_method: typing.Literal["LAPLACIAN", "HC", "COTAN"] | None = "LAPLACIAN",
|
|
1138
|
+
) -> None:
|
|
1295
1139
|
"""Relax UVs
|
|
1296
1140
|
|
|
1297
|
-
:type execution_context: int | str | None
|
|
1298
|
-
:type undo: bool | None
|
|
1299
1141
|
:param use_invert: Invert, Invert action for the duration of the stroke
|
|
1300
|
-
:type use_invert: bool | None
|
|
1301
1142
|
:param relax_method: Relax Method, Algorithm used for UV relaxation
|
|
1302
1143
|
|
|
1303
1144
|
LAPLACIAN
|
|
@@ -1308,5 +1149,4 @@ def uv_sculpt_relax(
|
|
|
1308
1149
|
|
|
1309
1150
|
COTAN
|
|
1310
1151
|
Geometry -- Use Geometry (cotangent) relaxation, making UVs follow the underlying 3D geometry.
|
|
1311
|
-
:type relax_method: typing.Literal['LAPLACIAN','HC','COTAN'] | None
|
|
1312
1152
|
"""
|