fake-bge-module 20250312__py3-none-any.whl → 20260203__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.
Files changed (395) hide show
  1. {animsys_refactor → _animsys_refactor}/__init__.pyi +7 -6
  2. {bl_console_utils → _bl_console_utils}/__init__.pyi +1 -0
  3. {bl_console_utils → _bl_console_utils}/autocomplete/__init__.pyi +1 -0
  4. {bl_console_utils → _bl_console_utils}/autocomplete/complete_calltip/__init__.pyi +1 -13
  5. {bl_console_utils → _bl_console_utils}/autocomplete/complete_import/__init__.pyi +1 -5
  6. {bl_console_utils → _bl_console_utils}/autocomplete/complete_namespace/__init__.pyi +3 -13
  7. {bl_console_utils → _bl_console_utils}/autocomplete/intellisense/__init__.pyi +1 -10
  8. {bl_i18n_utils → _bl_i18n_utils}/__init__.pyi +2 -0
  9. _bl_i18n_utils/bl_extract_messages/__init__.pyi +28 -0
  10. {bl_i18n_utils → _bl_i18n_utils}/merge_po/__init__.pyi +2 -1
  11. {bl_i18n_utils → _bl_i18n_utils}/settings/__init__.pyi +10 -7
  12. {bl_i18n_utils → _bl_i18n_utils}/utils/__init__.pyi +53 -50
  13. _bl_i18n_utils/utils_cli/__init__.pyi +11 -0
  14. _bl_i18n_utils/utils_languages_menu/__init__.pyi +6 -0
  15. {bl_i18n_utils → _bl_i18n_utils}/utils_rtl/__init__.pyi +3 -2
  16. _bl_i18n_utils/utils_spell_check/__init__.pyi +22 -0
  17. {bl_previews_utils → _bl_previews_utils}/__init__.pyi +1 -0
  18. _bl_previews_utils/bl_previews_render/__init__.pyi +14 -0
  19. {bl_rna_utils → _bl_rna_utils}/__init__.pyi +1 -0
  20. {bl_rna_utils → _bl_rna_utils}/data_path/__init__.pyi +3 -2
  21. {bl_text_utils → _bl_text_utils}/__init__.pyi +1 -0
  22. _bl_text_utils/external_editor/__init__.pyi +6 -0
  23. {bl_ui_utils → _bl_ui_utils}/__init__.pyi +1 -0
  24. {bl_ui_utils → _bl_ui_utils}/layout/__init__.pyi +2 -1
  25. _blendfile_header/__init__.pyi +48 -0
  26. _bpy_internal/__init__.pyi +5 -1
  27. _bpy_internal/addons/__init__.pyi +1 -0
  28. _bpy_internal/addons/cli/__init__.pyi +2 -1
  29. _bpy_internal/assets/__init__.pyi +5 -0
  30. _bpy_internal/assets/remote_library_listing/__init__.pyi +5 -0
  31. _bpy_internal/assets/remote_library_listing/blender_asset_library_openapi/__init__.pyi +13 -0
  32. _bpy_internal/disk_file_hash_service/__init__.pyi +19 -0
  33. _bpy_internal/disk_file_hash_service/backend_sqlite/__init__.pyi +48 -0
  34. _bpy_internal/disk_file_hash_service/hash_service/__init__.pyi +64 -0
  35. _bpy_internal/disk_file_hash_service/types/__init__.pyi +53 -0
  36. _bpy_internal/extensions/__init__.pyi +1 -0
  37. _bpy_internal/extensions/junction_module/__init__.pyi +8 -7
  38. _bpy_internal/extensions/stale_file_manager/__init__.pyi +9 -8
  39. _bpy_internal/extensions/wheel_manager/__init__.pyi +6 -5
  40. {bl_i18n_utils/utils_languages_menu → _bpy_internal/filesystem}/__init__.pyi +2 -2
  41. _bpy_internal/filesystem/locking/__init__.pyi +28 -0
  42. _bpy_internal/grease_pencil/__init__.pyi +1 -0
  43. _bpy_internal/grease_pencil/stroke/__init__.pyi +22 -6
  44. _bpy_internal/platform/__init__.pyi +5 -0
  45. _bpy_internal/platform/freedesktop/__init__.pyi +21 -0
  46. _bpy_internal/system_info/__init__.pyi +1 -0
  47. _bpy_internal/system_info/text_generate_runtime/__init__.pyi +2 -1
  48. _bpy_internal/system_info/url_prefill_runtime/__init__.pyi +2 -1
  49. _bpy_internal/system_info/url_prefill_startup/__init__.pyi +3 -2
  50. {bpy_restrict_state → _bpy_restrict_state}/__init__.pyi +1 -0
  51. _bpy_types/__init__.pyi +1635 -0
  52. {console_python → _console_python}/__init__.pyi +8 -7
  53. _console_shell/__init__.pyi +10 -0
  54. {graphviz_export → _graphviz_export}/__init__.pyi +3 -2
  55. _keyingsets_utils/__init__.pyi +21 -0
  56. {rna_info → _rna_info}/__init__.pyi +32 -27
  57. {rna_xml → _rna_xml}/__init__.pyi +7 -6
  58. addon_utils/__init__.pyi +13 -25
  59. aud/__init__.pyi +133 -155
  60. bge/__init__.pyi +1 -0
  61. bge/app/__init__.pyi +1 -0
  62. bge/constraints/__init__.pyi +22 -51
  63. bge/types/__init__.pyi +618 -1913
  64. bge_extras/__init__.pyi +1 -0
  65. bge_extras/logger/__init__.pyi +4 -3
  66. bgui/__init__.pyi +1 -0
  67. bgui/frame/__init__.pyi +1 -0
  68. bgui/frame_button/__init__.pyi +1 -0
  69. bgui/image/__init__.pyi +1 -1
  70. bgui/image_button/__init__.pyi +1 -0
  71. bgui/label/__init__.pyi +1 -0
  72. bgui/list_box/__init__.pyi +1 -1
  73. bgui/progress_bar/__init__.pyi +2 -1
  74. bgui/system/__init__.pyi +3 -5
  75. bgui/text_block/__init__.pyi +1 -0
  76. bgui/text_input/__init__.pyi +9 -8
  77. bgui/theme/__init__.pyi +4 -3
  78. bgui/widget/__init__.pyi +5 -4
  79. bl_app_override/__init__.pyi +4 -3
  80. bl_app_override/helpers/__init__.pyi +3 -2
  81. bl_app_template_utils/__init__.pyi +5 -4
  82. bl_app_templates_system/Game_Engine/__init__.pyi +5 -4
  83. bl_app_templates_system/Storyboarding/__init__.pyi +11 -0
  84. bl_app_templates_system/__init__.pyi +2 -0
  85. bl_keymap_utils/__init__.pyi +1 -0
  86. bl_keymap_utils/io/__init__.pyi +10 -9
  87. bl_keymap_utils/keymap_from_toolbar/__init__.pyi +2 -1
  88. bl_keymap_utils/keymap_hierarchy/__init__.pyi +2 -1
  89. bl_keymap_utils/platform_helpers/__init__.pyi +3 -2
  90. bl_keymap_utils/versioning/__init__.pyi +2 -1
  91. bl_math/__init__.pyi +4 -13
  92. bl_operators/__init__.pyi +4 -2
  93. bl_operators/add_mesh_torus/__init__.pyi +9 -9
  94. bl_operators/anim/__init__.pyi +90 -62
  95. bl_operators/assets/__init__.pyi +14 -18
  96. bl_operators/bmesh/__init__.pyi +1 -0
  97. bl_operators/bmesh/find_adjacent/__init__.pyi +12 -9
  98. bl_operators/bone_selection_sets/__init__.pyi +34 -60
  99. bl_operators/clip/__init__.pyi +39 -57
  100. bl_operators/connect_to_output/__init__.pyi +20 -18
  101. bl_operators/console/__init__.pyi +17 -25
  102. bl_operators/constraint/__init__.pyi +15 -21
  103. bl_operators/copy_global_transform/__init__.pyi +261 -0
  104. bl_operators/file/__init__.pyi +13 -17
  105. bl_operators/freestyle/__init__.pyi +15 -21
  106. bl_operators/geometry_nodes/__init__.pyi +30 -36
  107. bl_operators/grease_pencil/__init__.pyi +5 -5
  108. bl_operators/image/__init__.pyi +14 -22
  109. bl_operators/image_as_planes/__init__.pyi +36 -42
  110. bl_operators/mesh/__init__.pyi +8 -53
  111. bl_operators/node/__init__.pyi +375 -92
  112. bl_operators/node_editor/__init__.pyi +1 -0
  113. bl_operators/node_editor/node_functions/__init__.pyi +10 -9
  114. bl_operators/object/__init__.pyi +57 -98
  115. bl_operators/object_align/__init__.pyi +8 -8
  116. bl_operators/object_quick_effects/__init__.pyi +15 -21
  117. bl_operators/object_randomize_transform/__init__.pyi +6 -6
  118. bl_operators/presets/__init__.pyi +46 -94
  119. bl_operators/rigidbody/__init__.pyi +12 -16
  120. bl_operators/screen_play_rendered_anim/__init__.pyi +5 -5
  121. bl_operators/sequencer/__init__.pyi +40 -54
  122. bl_operators/spreadsheet/__init__.pyi +7 -7
  123. bl_operators/userpref/__init__.pyi +69 -117
  124. bl_operators/uvcalc_follow_active/__init__.pyi +8 -8
  125. bl_operators/uvcalc_lightmap/__init__.pyi +12 -12
  126. bl_operators/uvcalc_transform/__init__.pyi +39 -28
  127. bl_operators/vertexpaint_dirt/__init__.pyi +7 -7
  128. bl_operators/view3d/__init__.pyi +31 -43
  129. bl_operators/wm/__init__.pyi +139 -231
  130. bl_operators/world/__init__.pyi +6 -6
  131. bl_ui/__init__.pyi +18 -17
  132. bl_ui/anim/__init__.pyi +5 -5
  133. bl_ui/asset_shelf/__init__.pyi +5 -5
  134. bl_ui/generic_ui_list/__init__.pyi +12 -26
  135. bl_ui/node_add_menu/__init__.pyi +281 -12
  136. bl_ui/node_add_menu_compositor/__init__.pyi +135 -91
  137. bl_ui/node_add_menu_geometry/__init__.pyi +407 -263
  138. bl_ui/node_add_menu_shader/__init__.pyi +67 -67
  139. bl_ui/node_add_menu_texture/__init__.pyi +25 -69
  140. bl_ui/properties_animviz/__init__.pyi +3 -2
  141. bl_ui/properties_collection/__init__.pyi +20 -30
  142. bl_ui/properties_constraint/__init__.pyi +228 -450
  143. bl_ui/properties_data_armature/__init__.pyi +45 -79
  144. bl_ui/properties_data_bone/__init__.pyi +33 -51
  145. bl_ui/properties_data_camera/__init__.pyi +43 -75
  146. bl_ui/properties_data_curve/__init__.pyi +42 -101
  147. bl_ui/properties_data_curves/__init__.pyi +21 -35
  148. bl_ui/properties_data_empty/__init__.pyi +8 -10
  149. bl_ui/properties_data_grease_pencil/__init__.pyi +49 -87
  150. bl_ui/properties_data_lattice/__init__.pyi +12 -18
  151. bl_ui/properties_data_light/__init__.pyi +28 -46
  152. bl_ui/properties_data_lightprobe/__init__.pyi +35 -61
  153. bl_ui/properties_data_mesh/__init__.pyi +73 -120
  154. bl_ui/properties_data_metaball/__init__.pyi +16 -26
  155. bl_ui/properties_data_modifier/__init__.pyi +34 -39
  156. bl_ui/properties_data_pointcloud/__init__.pyi +17 -27
  157. bl_ui/properties_data_shaderfx/__init__.pyi +4 -4
  158. bl_ui/properties_data_speaker/__init__.pyi +15 -25
  159. bl_ui/properties_data_volume/__init__.pyi +22 -38
  160. bl_ui/properties_freestyle/__init__.pyi +79 -127
  161. bl_ui/properties_game/__init__.pyi +88 -84
  162. bl_ui/properties_grease_pencil_common/__init__.pyi +33 -190
  163. bl_ui/properties_mask_common/__init__.pyi +33 -45
  164. bl_ui/properties_material/__init__.pyi +52 -111
  165. bl_ui/properties_material_gpencil/__init__.pyi +48 -68
  166. bl_ui/properties_object/__init__.pyi +123 -93
  167. bl_ui/properties_output/__init__.pyi +103 -81
  168. bl_ui/properties_paint_common/__init__.pyi +78 -59
  169. bl_ui/properties_particle/__init__.pyi +160 -262
  170. bl_ui/properties_physics_cloth/__init__.pyi +36 -62
  171. bl_ui/properties_physics_common/__init__.pyi +11 -11
  172. bl_ui/properties_physics_dynamicpaint/__init__.pyi +81 -123
  173. bl_ui/properties_physics_field/__init__.pyi +35 -53
  174. bl_ui/properties_physics_fluid/__init__.pyi +106 -160
  175. bl_ui/properties_physics_geometry_nodes/__init__.pyi +6 -6
  176. bl_ui/properties_physics_rigidbody/__init__.pyi +28 -42
  177. bl_ui/properties_physics_rigidbody_constraint/__init__.pyi +44 -68
  178. bl_ui/properties_physics_softbody/__init__.pyi +38 -66
  179. bl_ui/properties_render/__init__.pyi +267 -259
  180. bl_ui/properties_scene/__init__.pyi +69 -72
  181. bl_ui/properties_strip/__init__.pyi +744 -0
  182. bl_ui/properties_strip_modifier/__init__.pyi +45 -0
  183. bl_ui/properties_texture/__init__.pyi +69 -122
  184. bl_ui/properties_view_layer/__init__.pyi +97 -51
  185. bl_ui/properties_workspace/__init__.pyi +12 -18
  186. bl_ui/properties_world/__init__.pyi +33 -53
  187. bl_ui/space_clip/__init__.pyi +231 -311
  188. bl_ui/space_console/__init__.pyi +14 -24
  189. bl_ui/space_dopesheet/__init__.pyi +193 -125
  190. bl_ui/space_filebrowser/__init__.pyi +107 -131
  191. bl_ui/space_graph/__init__.pyi +93 -80
  192. bl_ui/space_image/__init__.pyi +207 -291
  193. bl_ui/space_info/__init__.pyi +14 -24
  194. bl_ui/space_logic/__init__.pyi +14 -22
  195. bl_ui/space_nla/__init__.pyi +63 -69
  196. bl_ui/space_node/__init__.pyi +215 -154
  197. bl_ui/space_outliner/__init__.pyi +65 -61
  198. bl_ui/space_properties/__init__.pyi +41 -16
  199. bl_ui/space_sequencer/__init__.pyi +276 -979
  200. bl_ui/space_spreadsheet/__init__.pyi +27 -23
  201. bl_ui/space_statusbar/__init__.pyi +4 -4
  202. bl_ui/space_text/__init__.pyi +39 -73
  203. bl_ui/space_time/__init__.pyi +33 -78
  204. bl_ui/space_toolsystem_common/__init__.pyi +31 -28
  205. bl_ui/space_toolsystem_toolbar/__init__.pyi +67 -43
  206. bl_ui/space_topbar/__init__.pyi +68 -111
  207. bl_ui/space_userpref/__init__.pyi +310 -445
  208. bl_ui/space_view3d/__init__.pyi +667 -1122
  209. bl_ui/space_view3d_sidebar/__init__.pyi +127 -0
  210. bl_ui/space_view3d_toolbar/__init__.pyi +237 -966
  211. bl_ui/utils/__init__.pyi +4 -3
  212. blend_render_info/__init__.pyi +4 -2
  213. blf/__init__.pyi +92 -59
  214. bmesh/__init__.pyi +4 -10
  215. bmesh/geometry/__init__.pyi +2 -4
  216. bmesh/ops/__init__.pyi +442 -815
  217. bmesh/types/__init__.pyi +377 -720
  218. bmesh/utils/__init__.pyi +20 -45
  219. bpy/__init__.pyi +2 -1
  220. bpy/app/__init__.pyi +96 -90
  221. bpy/app/handlers/__init__.pyi +24 -19
  222. bpy/app/icons/__init__.pyi +2 -7
  223. bpy/app/timers/__init__.pyi +5 -18
  224. bpy/app/translations/__init__.pyi +21 -35
  225. bpy/msgbus/__init__.pyi +20 -9
  226. bpy/ops/__init__.pyi +21 -3
  227. bpy/ops/action/__init__.pyi +121 -226
  228. bpy/ops/anim/__init__.pyi +204 -358
  229. bpy/ops/armature/__init__.pyi +129 -249
  230. bpy/ops/asset/__init__.pyi +82 -111
  231. bpy/ops/bge_bricknodes/__init__.pyi +61 -0
  232. bpy/ops/boid/__init__.pyi +44 -50
  233. bpy/ops/bricknodes/__init__.pyi +37 -0
  234. bpy/ops/brush/__init__.pyi +33 -120
  235. bpy/ops/buttons/__init__.pyi +27 -83
  236. bpy/ops/cachefile/__init__.pyi +16 -74
  237. bpy/ops/camera/__init__.pyi +3 -13
  238. bpy/ops/clip/__init__.pyi +278 -558
  239. bpy/ops/cloth/__init__.pyi +2 -6
  240. bpy/ops/collection/__init__.pyi +34 -44
  241. bpy/ops/console/__init__.pyi +70 -111
  242. bpy/ops/constraint/__init__.pyi +34 -102
  243. bpy/ops/curve/__init__.pyi +163 -315
  244. bpy/ops/curves/__init__.pyi +163 -189
  245. bpy/ops/cycles/__init__.pyi +8 -18
  246. bpy/ops/dpaint/__init__.pyi +21 -30
  247. bpy/ops/ed/__init__.pyi +59 -103
  248. bpy/ops/export_anim/__init__.pyi +4 -11
  249. bpy/ops/export_scene/__init__.pyi +29 -174
  250. bpy/ops/extensions/__init__.pyi +102 -194
  251. bpy/ops/file/__init__.pyi +166 -272
  252. bpy/ops/fluid/__init__.pyi +78 -86
  253. bpy/ops/font/__init__.pyi +73 -164
  254. bpy/ops/geometry/__init__.pyi +33 -144
  255. bpy/ops/gizmogroup/__init__.pyi +8 -14
  256. bpy/ops/gpencil/__init__.pyi +31 -58
  257. bpy/ops/graph/__init__.pyi +176 -411
  258. bpy/ops/grease_pencil/__init__.pyi +416 -639
  259. bpy/ops/image/__init__.pyi +148 -492
  260. bpy/ops/import_anim/__init__.pyi +5 -18
  261. bpy/ops/import_curve/__init__.pyi +4 -6
  262. bpy/ops/import_scene/__init__.pyi +22 -49
  263. bpy/ops/info/__init__.pyi +27 -43
  264. bpy/ops/lattice/__init__.pyi +26 -43
  265. bpy/ops/logic/__init__.pyi +49 -122
  266. bpy/ops/logic_nodes/__init__.pyi +461 -0
  267. bpy/ops/marker/__init__.pyi +24 -60
  268. bpy/ops/mask/__init__.pyi +118 -222
  269. bpy/ops/material/__init__.pyi +19 -18
  270. bpy/ops/mball/__init__.pyi +13 -39
  271. bpy/ops/mesh/__init__.pyi +409 -1264
  272. bpy/ops/nla/__init__.pyi +140 -232
  273. bpy/ops/node/__init__.pyi +1189 -807
  274. bpy/ops/object/__init__.pyi +806 -1659
  275. bpy/ops/outliner/__init__.pyi +284 -432
  276. bpy/ops/paint/__init__.pyi +189 -381
  277. bpy/ops/paintcurve/__init__.pyi +29 -44
  278. bpy/ops/palette/__init__.pyi +23 -34
  279. bpy/ops/particle/__init__.pyi +135 -201
  280. bpy/ops/pointcloud/__init__.pyi +23 -42
  281. bpy/ops/pose/__init__.pyi +195 -310
  282. bpy/ops/poselib/__init__.pyi +45 -73
  283. bpy/ops/preferences/__init__.pyi +89 -221
  284. bpy/ops/ptcache/__init__.pyi +32 -39
  285. bpy/ops/render/__init__.pyi +36 -83
  286. bpy/ops/rigidbody/__init__.pyi +47 -78
  287. bpy/ops/scene/__init__.pyi +169 -222
  288. bpy/ops/screen/__init__.pyi +146 -259
  289. bpy/ops/script/__init__.pyi +9 -15
  290. bpy/ops/sculpt/__init__.pyi +194 -354
  291. bpy/ops/sculpt_curves/__init__.pyi +21 -29
  292. bpy/ops/sequencer/__init__.pyi +586 -836
  293. bpy/ops/sound/__init__.pyi +25 -131
  294. bpy/ops/spreadsheet/__init__.pyi +34 -21
  295. bpy/ops/surface/__init__.pyi +7 -54
  296. bpy/ops/text/__init__.pyi +166 -281
  297. bpy/ops/text_editor/__init__.pyi +2 -6
  298. bpy/ops/texture/__init__.pyi +20 -22
  299. bpy/ops/transform/__init__.pyi +108 -445
  300. bpy/ops/ui/__init__.pyi +157 -219
  301. bpy/ops/uilist/__init__.pyi +4 -16
  302. bpy/ops/uv/__init__.pyi +291 -347
  303. bpy/ops/view2d/__init__.pyi +29 -88
  304. bpy/ops/view3d/__init__.pyi +238 -438
  305. bpy/ops/wm/__init__.pyi +651 -1510
  306. bpy/ops/workspace/__init__.pyi +42 -44
  307. bpy/ops/world/__init__.pyi +12 -13
  308. bpy/path/__init__.pyi +6 -37
  309. bpy/props/__init__.pyi +395 -259
  310. bpy/{_typing → stub_internal}/__init__.pyi +1 -0
  311. bpy/{_typing → stub_internal}/rna_enums/__init__.pyi +214 -114
  312. bpy/types/__init__.pyi +93286 -103826
  313. bpy/utils/__init__.pyi +46 -104
  314. bpy/utils/previews/__init__.pyi +7 -15
  315. bpy/utils/units/__init__.pyi +6 -15
  316. bpy_extras/__init__.pyi +1 -0
  317. bpy_extras/anim_utils/__init__.pyi +32 -23
  318. bpy_extras/asset_utils/__init__.pyi +1 -0
  319. bpy_extras/bmesh_utils/__init__.pyi +2 -2
  320. bpy_extras/id_map_utils/__init__.pyi +15 -6
  321. bpy_extras/image_utils/__init__.pyi +3 -11
  322. bpy_extras/io_utils/__init__.pyi +22 -38
  323. bpy_extras/keyconfig_utils/__init__.pyi +5 -4
  324. bpy_extras/mesh_utils/__init__.pyi +3 -14
  325. bpy_extras/node_shader_utils/__init__.pyi +63 -70
  326. bpy_extras/node_utils/__init__.pyi +4 -3
  327. bpy_extras/object_utils/__init__.pyi +6 -19
  328. bpy_extras/view3d_utils/__init__.pyi +1 -18
  329. bpy_extras/wm_utils/__init__.pyi +1 -0
  330. bpy_extras/wm_utils/progress_report/__init__.pyi +12 -11
  331. {fake_bge_module-20250312.dist-info → fake_bge_module-20260203.dist-info}/METADATA +9 -3
  332. fake_bge_module-20260203.dist-info/RECORD +414 -0
  333. {fake_bge_module-20250312.dist-info → fake_bge_module-20260203.dist-info}/WHEEL +1 -1
  334. {fake_bge_module-20250312.dist-info → fake_bge_module-20260203.dist-info}/top_level.txt +16 -16
  335. freestyle/__init__.pyi +1 -0
  336. freestyle/chainingiterators/__init__.pyi +41 -60
  337. freestyle/functions/__init__.pyi +56 -194
  338. freestyle/predicates/__init__.pyi +11 -61
  339. freestyle/shaders/__init__.pyi +95 -156
  340. freestyle/types/__init__.pyi +306 -941
  341. freestyle/utils/ContextFunctions/__init__.pyi +4 -24
  342. freestyle/utils/__init__.pyi +46 -36
  343. gpu/__init__.pyi +84 -5
  344. gpu/capabilities/__init__.pyi +1 -21
  345. gpu/matrix/__init__.pyi +16 -24
  346. gpu/platform/__init__.pyi +3 -7
  347. gpu/select/__init__.pyi +2 -1
  348. gpu/shader/__init__.pyi +43 -9
  349. gpu/state/__init__.pyi +66 -44
  350. gpu/texture/__init__.pyi +4 -5
  351. gpu/types/__init__.pyi +216 -216
  352. gpu_extras/__init__.pyi +1 -0
  353. gpu_extras/batch/__init__.pyi +2 -5
  354. gpu_extras/presets/__init__.pyi +9 -10
  355. idprop/__init__.pyi +17 -0
  356. idprop/types/__init__.pyi +18 -17
  357. imbuf/__init__.pyi +13 -9
  358. imbuf/types/__init__.pyi +10 -23
  359. keyingsets_builtins/__init__.pyi +51 -93
  360. mathutils/__init__.pyi +296 -2255
  361. mathutils/bvhtree/__init__.pyi +24 -30
  362. mathutils/geometry/__init__.pyi +83 -132
  363. mathutils/interpolate/__init__.pyi +7 -5
  364. mathutils/kdtree/__init__.pyi +5 -14
  365. mathutils/noise/__init__.pyi +62 -106
  366. nodeitems_builtins/__init__.pyi +5 -4
  367. nodeitems_utils/__init__.pyi +10 -9
  368. rna_keymap_ui/__init__.pyi +7 -6
  369. rna_prop_ui/__init__.pyi +14 -13
  370. _bpy_internal/freedesktop/__init__.pyi +0 -20
  371. bgl/__init__.pyi +0 -4235
  372. bl_i18n_utils/bl_extract_messages/__init__.pyi +0 -24
  373. bl_i18n_utils/utils_cli/__init__.pyi +0 -10
  374. bl_previews_utils/bl_previews_render/__init__.pyi +0 -11
  375. bl_text_utils/external_editor/__init__.pyi +0 -5
  376. bpy_types/__init__.pyi +0 -29
  377. console_shell/__init__.pyi +0 -9
  378. fake_bge_module-20250312.dist-info/RECORD +0 -395
  379. keyingsets_utils/__init__.pyi +0 -18
  380. {animsys_refactor → _animsys_refactor}/py.typed +0 -0
  381. {bgl → _bl_console_utils}/py.typed +0 -0
  382. {bl_console_utils → _bl_i18n_utils}/py.typed +0 -0
  383. {bl_i18n_utils → _bl_previews_utils}/py.typed +0 -0
  384. {bl_previews_utils → _bl_rna_utils}/py.typed +0 -0
  385. {bl_rna_utils → _bl_text_utils}/py.typed +0 -0
  386. {bl_text_utils → _bl_ui_utils}/py.typed +0 -0
  387. {bl_ui_utils → _blendfile_header}/py.typed +0 -0
  388. {bpy_restrict_state → _bpy_restrict_state}/py.typed +0 -0
  389. {bpy_types → _bpy_types}/py.typed +0 -0
  390. {console_python → _console_python}/py.typed +0 -0
  391. {console_shell → _console_shell}/py.typed +0 -0
  392. {graphviz_export → _graphviz_export}/py.typed +0 -0
  393. {keyingsets_utils → _keyingsets_utils}/py.typed +0 -0
  394. {rna_info → _rna_info}/py.typed +0 -0
  395. {rna_xml → _rna_xml}/py.typed +0 -0
bmesh/types/__init__.pyi CHANGED
@@ -1,4 +1,16 @@
1
1
  """
2
+ SUBSTITUTION REPLACEMENT 'UV_STICKY_SELECT_MODE_REF':
3
+ (bpy.types.ToolSettings.uv_sticky_select_mode which may be passed in directly).
4
+
5
+ SUBSTITUTION REPLACEMENT 'UV_STICKY_SELECT_MODE_TYPE':
6
+ Literal['SHARED_LOCATION', 'DISABLED', 'SHARED_VERTEX']
7
+
8
+ SUBSTITUTION REPLACEMENT 'UV_SELECT_FLUSH_MODE_NEEDED':
9
+ This function selection-mode independent, typically bmesh.types.BMesh.uv_select_flush_mode should be called afterwards.
10
+
11
+ SUBSTITUTION REPLACEMENT 'UV_SELECT_SYNC_TO_MESH_NEEDED':
12
+ This function doesn't flush the selection to the mesh, typically bmesh.types.BMesh.uv_select_sync_to_mesh should be called afterwards.
13
+
2
14
 
3
15
  --------------------
4
16
 
@@ -22,166 +34,112 @@
22
34
  import typing
23
35
  import collections.abc
24
36
  import typing_extensions
37
+ import numpy.typing as npt
25
38
  import bpy.types
26
39
  import mathutils
27
40
 
28
41
  class BMDeformVert:
29
- def clear(self):
42
+ def clear(self) -> None:
30
43
  """Clears all weights."""
31
44
 
32
- def get(self, key: int, default: typing.Any | None = None):
45
+ def get(self, key: int, default: typing.Any | None = None) -> None:
33
46
  """Returns the deform weight matching the key or default
34
- when not found (matches Python's dictionary function of the same name).
47
+ when not found (matches Pythons dictionary function of the same name).
35
48
 
36
49
  :param key: The key associated with deform weight.
37
- :type key: int
38
50
  :param default: Optional argument for the value to return if
39
51
  key is not found.
40
- :type default: typing.Any | None
41
52
  """
42
53
 
43
54
  def items(self) -> list[tuple[int, float]]:
44
55
  """Return (group, weight) pairs for this vertex
45
- (matching Python's dict.items() functionality).
56
+ (matching Pythons dict.items() functionality).
46
57
 
47
58
  :return: (key, value) pairs for each deform weight of this vertex.
48
- :rtype: list[tuple[int, float]]
49
59
  """
50
60
 
51
61
  def keys(self) -> list[int]:
52
62
  """Return the group indices used by this vertex
53
- (matching Python's dict.keys() functionality).
63
+ (matching Pythons dict.keys() functionality).
54
64
 
55
65
  :return: the deform group this vertex uses
56
- :rtype: list[int]
57
66
  """
58
67
 
59
68
  def values(self) -> list[float]:
60
69
  """Return the weights of the deform vertex
61
- (matching Python's dict.values() functionality).
70
+ (matching Pythons dict.values() functionality).
62
71
 
63
72
  :return: The weights that influence this vertex
64
- :rtype: list[float]
65
73
  """
66
74
 
67
75
  class BMEdge:
68
76
  """The BMesh edge connecting 2 verts"""
69
77
 
70
78
  hide: bool
71
- """ Hidden state of this element.
72
-
73
- :type: bool
74
- """
79
+ """ Hidden state of this element."""
75
80
 
76
81
  index: int
77
- """ Index of this element.
78
-
79
- :type: int
80
- """
82
+ """ Index of this element."""
81
83
 
82
84
  is_boundary: bool
83
- """ True when this edge is at the boundary of a face (read-only).
84
-
85
- :type: bool
86
- """
85
+ """ True when this edge is at the boundary of a face (read-only)."""
87
86
 
88
87
  is_contiguous: bool
89
- """ True when this edge is manifold, between two faces with the same winding (read-only).
90
-
91
- :type: bool
92
- """
88
+ """ True when this edge is manifold, between two faces with the same winding (read-only)."""
93
89
 
94
90
  is_convex: bool
95
- """ True when this edge joins two convex faces, depends on a valid face normal (read-only).
96
-
97
- :type: bool
98
- """
91
+ """ True when this edge joins two convex faces, depends on a valid face normal (read-only)."""
99
92
 
100
93
  is_manifold: bool
101
- """ True when this edge is manifold (read-only).
102
-
103
- :type: bool
104
- """
94
+ """ True when this edge is manifold (read-only)."""
105
95
 
106
96
  is_valid: bool
107
- """ True when this element is valid (hasn't been removed).
108
-
109
- :type: bool
110
- """
97
+ """ True when this element is valid (hasn't been removed)."""
111
98
 
112
99
  is_wire: bool
113
- """ True when this edge is not connected to any faces (read-only).
114
-
115
- :type: bool
116
- """
100
+ """ True when this edge is not connected to any faces (read-only)."""
117
101
 
118
- link_faces: BMElemSeq[BMFace]
119
- """ Faces connected to this edge, (read-only).
102
+ link_faces: typing.Any
103
+ """ Faces connected to this edge, (read-only)."""
120
104
 
121
- :type: BMElemSeq[BMFace]
122
- """
123
-
124
- link_loops: BMElemSeq[BMLoop]
125
- """ Loops connected to this edge, (read-only).
126
-
127
- :type: BMElemSeq[BMLoop]
128
- """
105
+ link_loops: typing.Any
106
+ """ Loops connected to this edge, (read-only)."""
129
107
 
130
108
  seam: bool
131
- """ Seam for UV unwrapping.
132
-
133
- :type: bool
134
- """
109
+ """ Seam for UV unwrapping."""
135
110
 
136
111
  select: bool
137
- """ Selected state of this element.
138
-
139
- :type: bool
140
- """
112
+ """ Selected state of this element."""
141
113
 
142
114
  smooth: bool
143
- """ Smooth state of this element.
144
-
145
- :type: bool
146
- """
115
+ """ Smooth state of this element."""
147
116
 
148
117
  tag: bool
149
- """ Generic attribute scripts can use for own logic
150
-
151
- :type: bool
152
- """
118
+ """ Generic attribute scripts can use for own logic"""
153
119
 
154
- verts: BMElemSeq[BMVert]
155
- """ Verts this edge uses (always 2), (read-only).
156
-
157
- :type: BMElemSeq[BMVert]
158
- """
120
+ verts: typing.Any
121
+ """ Verts this edge uses (always 2), (read-only)."""
159
122
 
160
123
  def calc_face_angle(self, fallback: typing.Any | None = None) -> float:
161
124
  """
162
125
 
163
- :param fallback: return this when the edge doesn't have 2 faces
126
+ :param fallback: return this when the edge doesnt have 2 faces
164
127
  (instead of raising a `ValueError`).
165
- :type fallback: typing.Any | None
166
128
  :return: The angle between 2 connected faces in radians.
167
- :rtype: float
168
129
  """
169
130
 
170
131
  def calc_face_angle_signed(self, fallback: typing.Any | None = None) -> float:
171
132
  """
172
133
 
173
- :param fallback: return this when the edge doesn't have 2 faces
134
+ :param fallback: return this when the edge doesnt have 2 faces
174
135
  (instead of raising a `ValueError`).
175
- :type fallback: typing.Any | None
176
136
  :return: The angle between 2 connected faces in radians (negative for concave join).
177
- :rtype: float
178
137
  """
179
138
 
180
139
  def calc_length(self) -> float:
181
140
  """
182
141
 
183
142
  :return: The length between both verts.
184
- :rtype: float
185
143
  """
186
144
 
187
145
  def calc_tangent(self, loop: BMLoop) -> mathutils.Vector:
@@ -189,44 +147,37 @@ class BMEdge:
189
147
  This uses the face normal for calculation.
190
148
 
191
149
  :param loop: The loop used for tangent calculation.
192
- :type loop: BMLoop
193
150
  :return: a normalized vector.
194
- :rtype: mathutils.Vector
195
151
  """
196
152
 
197
- def copy_from(self, other: typing_extensions.Self):
153
+ def copy_from(self, other: typing_extensions.Self) -> None:
198
154
  """Copy values from another element of matching type.
199
155
 
200
156
  :param other:
201
- :type other: typing_extensions.Self
202
157
  """
203
158
 
204
- def hide_set(self, hide: bool):
159
+ def hide_set(self, hide: bool) -> None:
205
160
  """Set the hide state.
206
161
  This is different from the hide attribute because it updates the selection and hide state of associated geometry.
207
162
 
208
163
  :param hide: Hidden or visible.
209
- :type hide: bool
210
164
  """
211
165
 
212
- def normal_update(self):
166
+ def normal_update(self) -> None:
213
167
  """Update normals of all connected faces and the edge verts."""
214
168
 
215
169
  def other_vert(self, vert: BMVert) -> BMVert | None:
216
170
  """Return the other vertex on this edge or None if the vertex is not used by this edge.
217
171
 
218
172
  :param vert: a vert in this edge.
219
- :type vert: BMVert
220
173
  :return: The edges other vert.
221
- :rtype: BMVert | None
222
174
  """
223
175
 
224
- def select_set(self, select: bool):
176
+ def select_set(self, select: bool) -> None:
225
177
  """Set the selection.
226
178
  This is different from the select attribute because it updates the selection state of associated geometry.
227
179
 
228
180
  :param select: Select or de-select.
229
- :type select: bool
230
181
  """
231
182
 
232
183
  def __getitem__[_GenericType1](
@@ -235,50 +186,44 @@ class BMEdge:
235
186
  """
236
187
 
237
188
  :param key:
238
- :type key: BMLayerItem[_GenericType1]
239
189
  :return:
240
- :rtype: _GenericType1
241
190
  """
242
191
 
243
192
  def __setitem__[_GenericType1](
244
193
  self, key: BMLayerItem[_GenericType1], value: _GenericType1
245
- ):
194
+ ) -> None:
246
195
  """
247
196
 
248
197
  :param key:
249
- :type key: BMLayerItem[_GenericType1]
250
198
  :param value:
251
- :type value: _GenericType1
252
199
  """
253
200
 
254
- def __delitem__[_GenericType1](self, key: BMLayerItem[_GenericType1]):
201
+ def __delitem__[_GenericType1](self, key: BMLayerItem[_GenericType1]) -> None:
255
202
  """
256
203
 
257
204
  :param key:
258
- :type key: BMLayerItem[_GenericType1]
259
205
  """
260
206
 
261
207
  class BMEdgeSeq:
262
208
  layers: BMLayerAccessEdge
263
- """ custom-data layers (read-only).
264
-
265
- :type: BMLayerAccessEdge
266
- """
209
+ """ custom-data layers (read-only)."""
267
210
 
268
- def ensure_lookup_table(self):
211
+ def ensure_lookup_table(self) -> None:
269
212
  """Ensure internal data needed for int subscription is initialized with verts/edges/faces, eg bm.verts[index].This needs to be called again after adding/removing data in this sequence."""
270
213
 
271
- def get(self, verts: collections.abc.Sequence[BMVert], fallback=None) -> BMEdge:
214
+ def get(
215
+ self,
216
+ verts: collections.abc.Sequence[BMVert],
217
+ fallback: typing.Any | None = None,
218
+ ) -> BMEdge:
272
219
  """Return an edge which uses the verts passed.
273
220
 
274
221
  :param verts: Sequence of verts.
275
- :type verts: collections.abc.Sequence[BMVert]
276
222
  :param fallback: Return this value if nothing is found.
277
223
  :return: The edge found or None
278
- :rtype: BMEdge
279
224
  """
280
225
 
281
- def index_update(self):
226
+ def index_update(self) -> None:
282
227
  """Initialize the index values of this sequence.This is the equivalent of looping over all elements and assigning the index values."""
283
228
 
284
229
  def new(
@@ -287,34 +232,29 @@ class BMEdgeSeq:
287
232
  """Create a new edge from a given pair of verts.
288
233
 
289
234
  :param verts: Vertex pair.
290
- :type verts: collections.abc.Sequence[BMVert]
291
235
  :param example: Existing edge to initialize settings (optional argument).
292
- :type example: BMEdge | None
293
236
  :return: The newly created edge.
294
- :rtype: BMEdge
295
237
  """
296
238
 
297
- def remove(self, edge: BMEdge):
239
+ def remove(self, edge: BMEdge) -> None:
298
240
  """Remove an edge.
299
241
 
300
- :param edge:
301
- :type edge: BMEdge
242
+ :param edge: The edge to remove.
302
243
  """
303
244
 
304
245
  def sort(
305
246
  self,
247
+ *,
306
248
  key: None
307
249
  | collections.abc.Callable[[BMVert | BMEdge | BMFace], int]
308
250
  | None = None,
309
251
  reverse: bool = False,
310
- ):
252
+ ) -> None:
311
253
  """Sort the elements of this sequence, using an optional custom sort key.
312
- Indices of elements are not changed, `BMElemSeq.index_update` can be used for that.
254
+ Indices of elements are not changed, `bmesh.types.BMElemSeq.index_update` can be used for that.
313
255
 
314
256
  :param key: The key that sets the ordering of the elements.
315
- :type key: None | collections.abc.Callable[[BMVert | BMEdge | BMFace], int] | None
316
257
  :param reverse: Reverse the order of the elements
317
- :type reverse: bool
318
258
  """
319
259
 
320
260
  @typing.overload
@@ -322,75 +262,66 @@ class BMEdgeSeq:
322
262
  """
323
263
 
324
264
  :param key:
325
- :type key: int
326
265
  :return:
327
- :rtype: BMEdge
328
266
  """
329
267
 
330
268
  @typing.overload
331
- def __getitem__(self, key: slice) -> list[BMEdge, ...]:
269
+ def __getitem__(self, key: slice) -> list[BMEdge]:
332
270
  """
333
271
 
334
272
  :param key:
335
- :type key: slice
336
273
  :return:
337
- :rtype: list[BMEdge, ...]
338
274
  """
339
275
 
340
276
  def __iter__(self) -> BMIter[BMEdge]:
341
277
  """
342
278
 
343
279
  :return:
344
- :rtype: BMIter[BMEdge]
345
280
  """
346
281
 
347
282
  def __len__(self) -> int:
348
283
  """
349
284
 
350
285
  :return:
351
- :rtype: int
352
286
  """
353
287
 
354
288
  class BMEditSelIter: ...
355
289
 
356
290
  class BMEditSelSeq:
357
291
  active: BMEdge | BMFace | BMVert
358
- """ The last selected element or None (read-only).
359
-
360
- :type: BMEdge | BMFace | BMVert
361
- """
292
+ """ The last selected element or None (read-only)."""
362
293
 
363
- def add(self, element):
294
+ def add(self, element) -> None:
364
295
  """Add an element to the selection history (no action taken if its already added).
365
296
 
366
297
  :param element:
367
298
  """
368
299
 
369
- def clear(self):
300
+ def clear(self) -> None:
370
301
  """Empties the selection history."""
371
302
 
372
- def discard(self, element):
373
- """Discard an element from the selection history.Like remove but doesn't raise an error when the elements not in the selection list.
303
+ def discard(self, element) -> None:
304
+ """Discard an element from the selection history.Like remove but doesnt raise an error when the elements not in the selection list.
374
305
 
375
306
  :param element:
376
307
  """
377
308
 
378
- def remove(self, element):
309
+ def remove(self, element) -> None:
379
310
  """Remove an element from the selection history.
380
311
 
381
312
  :param element:
382
313
  """
383
314
 
384
- def validate(self):
315
+ def validate(self) -> None:
385
316
  """Ensures all elements in the selection history are selected."""
386
317
 
387
318
  class BMElemSeq[_GenericType1]:
388
319
  """General sequence type used for accessing any sequence of
389
- `BMVert`, `BMEdge`, `BMFace`, `BMLoop`.When accessed via `BMesh.verts`, `BMesh.edges`, `BMesh.faces`
320
+ `bmesh.types.BMVert`, `bmesh.types.BMEdge`, `bmesh.types.BMFace`, `bmesh.types.BMLoop`.When accessed via `bmesh.types.BMesh.verts`, `bmesh.types.BMesh.edges`, `bmesh.types.BMesh.faces`
390
321
  there are also functions to create/remove items.
391
322
  """
392
323
 
393
- def index_update(self):
324
+ def index_update(self) -> None:
394
325
  """Initialize the index values of this sequence.This is the equivalent of looping over all elements and assigning the index values."""
395
326
 
396
327
  @typing.overload
@@ -398,217 +329,172 @@ class BMElemSeq[_GenericType1]:
398
329
  """
399
330
 
400
331
  :param key:
401
- :type key: int
402
332
  :return:
403
- :rtype: _GenericType1
404
333
  """
405
334
 
406
335
  @typing.overload
407
- def __getitem__(self, key: slice) -> list[_GenericType1, ...]:
336
+ def __getitem__(self, key: slice) -> list[_GenericType1]:
408
337
  """
409
338
 
410
339
  :param key:
411
- :type key: slice
412
340
  :return:
413
- :rtype: list[_GenericType1, ...]
414
341
  """
415
342
 
416
343
  def __iter__(self) -> BMIter[_GenericType1]:
417
344
  """
418
345
 
419
346
  :return:
420
- :rtype: BMIter[_GenericType1]
421
347
  """
422
348
 
423
349
  def __len__(self) -> int:
424
350
  """
425
351
 
426
352
  :return:
427
- :rtype: int
428
353
  """
429
354
 
430
355
  class BMFace:
431
356
  """The BMesh face with 3 or more sides"""
432
357
 
433
- edges: BMElemSeq[BMEdge]
434
- """ Edges of this face, (read-only).
435
-
436
- :type: BMElemSeq[BMEdge]
437
- """
358
+ edges: typing.Any
359
+ """ Edges of this face, (read-only)."""
438
360
 
439
361
  hide: bool
440
- """ Hidden state of this element.
441
-
442
- :type: bool
443
- """
362
+ """ Hidden state of this element."""
444
363
 
445
364
  index: int
446
- """ Index of this element.
447
-
448
- :type: int
449
- """
365
+ """ Index of this element."""
450
366
 
451
367
  is_valid: bool
452
- """ True when this element is valid (hasn't been removed).
453
-
454
- :type: bool
455
- """
368
+ """ True when this element is valid (hasn't been removed)."""
456
369
 
457
- loops: BMElemSeq[BMLoop]
458
- """ Loops of this face, (read-only).
459
-
460
- :type: BMElemSeq[BMLoop]
461
- """
370
+ loops: typing.Any
371
+ """ Loops of this face, (read-only)."""
462
372
 
463
373
  material_index: int
464
- """ The face's material index.
465
-
466
- :type: int
467
- """
374
+ """ The face's material index."""
468
375
 
469
376
  normal: mathutils.Vector
470
- """ The normal for this face as a 3D, wrapped vector.
471
-
472
- :type: mathutils.Vector
473
- """
377
+ """ The normal for this face as a 3D, wrapped vector."""
474
378
 
475
379
  select: bool
476
- """ Selected state of this element.
477
-
478
- :type: bool
479
- """
380
+ """ Selected state of this element."""
480
381
 
481
382
  smooth: bool
482
- """ Smooth state of this element.
483
-
484
- :type: bool
485
- """
383
+ """ Smooth state of this element."""
486
384
 
487
385
  tag: bool
488
- """ Generic attribute scripts can use for own logic
489
-
490
- :type: bool
491
- """
386
+ """ Generic attribute scripts can use for own logic"""
492
387
 
493
- verts: BMElemSeq[BMVert]
494
- """ Verts of this face, (read-only).
388
+ uv_select: bool
389
+ """ UV selected state of this element."""
495
390
 
496
- :type: BMElemSeq[BMVert]
497
- """
391
+ verts: typing.Any
392
+ """ Verts of this face, (read-only)."""
498
393
 
499
394
  def calc_area(self) -> float:
500
395
  """Return the area of the face.
501
396
 
502
397
  :return: Return the area of the face.
503
- :rtype: float
504
398
  """
505
399
 
506
400
  def calc_center_bounds(self) -> mathutils.Vector:
507
401
  """Return bounds center of the face.
508
402
 
509
403
  :return: a 3D vector.
510
- :rtype: mathutils.Vector
511
404
  """
512
405
 
513
406
  def calc_center_median(self) -> mathutils.Vector:
514
407
  """Return median center of the face.
515
408
 
516
409
  :return: a 3D vector.
517
- :rtype: mathutils.Vector
518
410
  """
519
411
 
520
412
  def calc_center_median_weighted(self) -> mathutils.Vector:
521
413
  """Return median center of the face weighted by edge lengths.
522
414
 
523
415
  :return: a 3D vector.
524
- :rtype: mathutils.Vector
525
416
  """
526
417
 
527
418
  def calc_perimeter(self) -> float:
528
419
  """Return the perimeter of the face.
529
420
 
530
421
  :return: Return the perimeter of the face.
531
- :rtype: float
532
422
  """
533
423
 
534
424
  def calc_tangent_edge(self) -> mathutils.Vector:
535
425
  """Return face tangent based on longest edge.
536
426
 
537
427
  :return: a normalized vector.
538
- :rtype: mathutils.Vector
539
428
  """
540
429
 
541
430
  def calc_tangent_edge_diagonal(self) -> mathutils.Vector:
542
431
  """Return face tangent based on the edge farthest from any vertex.
543
432
 
544
433
  :return: a normalized vector.
545
- :rtype: mathutils.Vector
546
434
  """
547
435
 
548
436
  def calc_tangent_edge_pair(self) -> mathutils.Vector:
549
437
  """Return face tangent based on the two longest disconnected edges.
550
438
 
551
439
  :return: a normalized vector.
552
- :rtype: mathutils.Vector
553
440
  """
554
441
 
555
442
  def calc_tangent_vert_diagonal(self) -> mathutils.Vector:
556
443
  """Return face tangent based on the two most distant vertices.
557
444
 
558
445
  :return: a normalized vector.
559
- :rtype: mathutils.Vector
560
446
  """
561
447
 
562
- def copy(self, verts: bool = True, edges: bool = True) -> typing_extensions.Self:
448
+ def copy(self, *, verts: bool = True, edges: bool = True) -> typing_extensions.Self:
563
449
  """Make a copy of this face.
564
450
 
565
451
  :param verts: When set, the faces verts will be duplicated too.
566
- :type verts: bool
567
452
  :param edges: When set, the faces edges will be duplicated too.
568
- :type edges: bool
569
453
  :return: The newly created face.
570
- :rtype: typing_extensions.Self
571
454
  """
572
455
 
573
- def copy_from(self, other: typing_extensions.Self):
456
+ def copy_from(self, other: typing_extensions.Self) -> None:
574
457
  """Copy values from another element of matching type.
575
458
 
576
459
  :param other:
577
- :type other: typing_extensions.Self
578
460
  """
579
461
 
580
- def copy_from_face_interp(self, face: typing_extensions.Self, vert: bool = True):
462
+ def copy_from_face_interp(
463
+ self, face: typing_extensions.Self, vert: bool = True
464
+ ) -> None:
581
465
  """Interpolate the customdata from another face onto this one (faces should overlap).
582
466
 
583
467
  :param face: The face to interpolate data from.
584
- :type face: typing_extensions.Self
585
468
  :param vert: When True, also copy vertex data.
586
- :type vert: bool
587
469
  """
588
470
 
589
- def hide_set(self, hide: bool):
471
+ def hide_set(self, hide: bool) -> None:
590
472
  """Set the hide state.
591
473
  This is different from the hide attribute because it updates the selection and hide state of associated geometry.
592
474
 
593
475
  :param hide: Hidden or visible.
594
- :type hide: bool
595
476
  """
596
477
 
597
- def normal_flip(self):
478
+ def normal_flip(self) -> None:
598
479
  """Reverses winding of a face, which flips its normal."""
599
480
 
600
- def normal_update(self):
481
+ def normal_update(self) -> None:
601
482
  """Update face normal based on the positions of the face verts.
602
483
  This does not update the normals of face verts.
603
484
 
604
485
  """
605
486
 
606
- def select_set(self, select: bool):
487
+ def select_set(self, select: bool) -> None:
607
488
  """Set the selection.
608
489
  This is different from the select attribute because it updates the selection state of associated geometry.
609
490
 
610
491
  :param select: Select or de-select.
611
- :type select: bool
492
+ """
493
+
494
+ def uv_select_set(self, select: bool) -> None:
495
+ """Select the face.
496
+
497
+ :param select: Select or de-select.
612
498
  """
613
499
 
614
500
  def __getitem__[_GenericType1](
@@ -617,56 +503,47 @@ class BMFace:
617
503
  """
618
504
 
619
505
  :param key:
620
- :type key: BMLayerItem[_GenericType1]
621
506
  :return:
622
- :rtype: _GenericType1
623
507
  """
624
508
 
625
509
  def __setitem__[_GenericType1](
626
510
  self, key: BMLayerItem[_GenericType1], value: _GenericType1
627
- ):
511
+ ) -> None:
628
512
  """
629
513
 
630
514
  :param key:
631
- :type key: BMLayerItem[_GenericType1]
632
515
  :param value:
633
- :type value: _GenericType1
634
516
  """
635
517
 
636
- def __delitem__[_GenericType1](self, key: BMLayerItem[_GenericType1]):
518
+ def __delitem__[_GenericType1](self, key: BMLayerItem[_GenericType1]) -> None:
637
519
  """
638
520
 
639
521
  :param key:
640
- :type key: BMLayerItem[_GenericType1]
641
522
  """
642
523
 
643
524
  class BMFaceSeq:
644
525
  active: BMFace | None
645
- """ active face.
646
-
647
- :type: BMFace | None
648
- """
526
+ """ active face."""
649
527
 
650
528
  layers: BMLayerAccessFace
651
- """ custom-data layers (read-only).
652
-
653
- :type: BMLayerAccessFace
654
- """
529
+ """ custom-data layers (read-only)."""
655
530
 
656
- def ensure_lookup_table(self):
531
+ def ensure_lookup_table(self) -> None:
657
532
  """Ensure internal data needed for int subscription is initialized with verts/edges/faces, eg bm.verts[index].This needs to be called again after adding/removing data in this sequence."""
658
533
 
659
- def get(self, verts: collections.abc.Sequence[BMVert], fallback=None) -> BMFace:
534
+ def get(
535
+ self,
536
+ verts: collections.abc.Sequence[BMVert],
537
+ fallback: typing.Any | None = None,
538
+ ) -> BMFace:
660
539
  """Return a face which uses the verts passed.
661
540
 
662
541
  :param verts: Sequence of verts.
663
- :type verts: collections.abc.Sequence[BMVert]
664
542
  :param fallback: Return this value if nothing is found.
665
543
  :return: The face found or None
666
- :rtype: BMFace
667
544
  """
668
545
 
669
- def index_update(self):
546
+ def index_update(self) -> None:
670
547
  """Initialize the index values of this sequence.This is the equivalent of looping over all elements and assigning the index values."""
671
548
 
672
549
  def new(
@@ -675,34 +552,29 @@ class BMFaceSeq:
675
552
  """Create a new face from a given set of verts.
676
553
 
677
554
  :param verts: Sequence of 3 or more verts.
678
- :type verts: collections.abc.Sequence[BMVert]
679
555
  :param example: Existing face to initialize settings (optional argument).
680
- :type example: BMFace | None
681
556
  :return: The newly created face.
682
- :rtype: BMFace
683
557
  """
684
558
 
685
- def remove(self, face: BMFace):
559
+ def remove(self, face: BMFace) -> None:
686
560
  """Remove a face.
687
561
 
688
- :param face:
689
- :type face: BMFace
562
+ :param face: The face to remove.
690
563
  """
691
564
 
692
565
  def sort(
693
566
  self,
567
+ *,
694
568
  key: None
695
569
  | collections.abc.Callable[[BMVert | BMEdge | BMFace], int]
696
570
  | None = None,
697
571
  reverse: bool = False,
698
- ):
572
+ ) -> None:
699
573
  """Sort the elements of this sequence, using an optional custom sort key.
700
- Indices of elements are not changed, `BMElemSeq.index_update` can be used for that.
574
+ Indices of elements are not changed, `bmesh.types.BMElemSeq.index_update` can be used for that.
701
575
 
702
576
  :param key: The key that sets the ordering of the elements.
703
- :type key: None | collections.abc.Callable[[BMVert | BMEdge | BMFace], int] | None
704
577
  :param reverse: Reverse the order of the elements
705
- :type reverse: bool
706
578
  """
707
579
 
708
580
  @typing.overload
@@ -710,441 +582,275 @@ class BMFaceSeq:
710
582
  """
711
583
 
712
584
  :param key:
713
- :type key: int
714
585
  :return:
715
- :rtype: BMFace
716
586
  """
717
587
 
718
588
  @typing.overload
719
- def __getitem__(self, key: slice) -> list[BMFace, ...]:
589
+ def __getitem__(self, key: slice) -> list[BMFace]:
720
590
  """
721
591
 
722
592
  :param key:
723
- :type key: slice
724
593
  :return:
725
- :rtype: list[BMFace, ...]
726
594
  """
727
595
 
728
596
  def __iter__(self) -> BMIter[BMFace]:
729
597
  """
730
598
 
731
599
  :return:
732
- :rtype: BMIter[BMFace]
733
600
  """
734
601
 
735
602
  def __len__(self) -> int:
736
603
  """
737
604
 
738
605
  :return:
739
- :rtype: int
740
606
  """
741
607
 
742
608
  class BMIter[_GenericType1]:
743
609
  """Internal BMesh type for looping over verts/faces/edges,
744
- used for iterating over `BMElemSeq` types.
610
+ used for iterating over `bmesh.types.BMElemSeq` types.
745
611
  """
746
612
 
747
613
  def __iter__(self) -> BMIter[_GenericType1]:
748
614
  """
749
615
 
750
616
  :return:
751
- :rtype: BMIter[_GenericType1]
752
617
  """
753
618
 
754
619
  def __next__(self) -> _GenericType1:
755
620
  """
756
621
 
757
622
  :return:
758
- :rtype: _GenericType1
759
623
  """
760
624
 
761
625
  class BMLayerAccessEdge:
762
626
  """Exposes custom-data layer attributes."""
763
627
 
764
- bool: BMLayerCollection[boolean]
765
- """ Generic boolean custom-data layer.
766
-
767
- :type: BMLayerCollection[boolean]
768
- """
769
-
770
- color: BMLayerCollection[mathutils.Vector]
771
- """ Generic RGBA color with 8-bit precision custom-data layer.
772
-
773
- :type: BMLayerCollection[mathutils.Vector]
774
- """
775
-
776
- float: BMLayerCollection[float]
777
- """ Generic float custom-data layer.
778
-
779
- :type: BMLayerCollection[float]
780
- """
781
-
782
- float_color: BMLayerCollection[mathutils.Vector]
783
- """ Generic RGBA color with float precision custom-data layer.
628
+ bool: typing.Any
629
+ """ Generic boolean custom-data layer."""
784
630
 
785
- :type: BMLayerCollection[mathutils.Vector]
786
- """
787
-
788
- float_vector: BMLayerCollection[mathutils.Vector]
789
- """ Generic 3D vector with float precision custom-data layer.
790
-
791
- :type: BMLayerCollection[mathutils.Vector]
792
- """
631
+ color: typing.Any
632
+ """ Generic RGBA color with 8-bit precision custom-data layer."""
793
633
 
794
- freestyle: BMLayerCollection
795
- """ Accessor for Freestyle edge layer.
634
+ float: typing.Any
635
+ """ Generic float custom-data layer."""
796
636
 
797
- :type: BMLayerCollection
798
- """
799
-
800
- int: BMLayerCollection[int]
801
- """ Generic int custom-data layer.
637
+ float_color: typing.Any
638
+ """ Generic RGBA color with float precision custom-data layer."""
802
639
 
803
- :type: BMLayerCollection[int]
804
- """
640
+ float_vector: typing.Any
641
+ """ Generic 3D vector with float precision custom-data layer."""
805
642
 
806
- string: BMLayerCollection[bytes]
807
- """ Generic string custom-data layer (exposed as bytes, 255 max length).
643
+ int: typing.Any
644
+ """ Generic int custom-data layer."""
808
645
 
809
- :type: BMLayerCollection[bytes]
810
- """
646
+ string: typing.Any
647
+ """ Generic string custom-data layer (exposed as bytes, 255 max length)."""
811
648
 
812
649
  class BMLayerAccessFace:
813
650
  """Exposes custom-data layer attributes."""
814
651
 
815
- bool: BMLayerCollection[boolean]
816
- """ Generic boolean custom-data layer.
652
+ bool: typing.Any
653
+ """ Generic boolean custom-data layer."""
817
654
 
818
- :type: BMLayerCollection[boolean]
819
- """
820
-
821
- color: BMLayerCollection[mathutils.Vector]
822
- """ Generic RGBA color with 8-bit precision custom-data layer.
823
-
824
- :type: BMLayerCollection[mathutils.Vector]
825
- """
655
+ color: typing.Any
656
+ """ Generic RGBA color with 8-bit precision custom-data layer."""
826
657
 
827
- float: BMLayerCollection[float]
828
- """ Generic float custom-data layer.
658
+ float: typing.Any
659
+ """ Generic float custom-data layer."""
829
660
 
830
- :type: BMLayerCollection[float]
831
- """
832
-
833
- float_color: BMLayerCollection[mathutils.Vector]
834
- """ Generic RGBA color with float precision custom-data layer.
661
+ float_color: typing.Any
662
+ """ Generic RGBA color with float precision custom-data layer."""
835
663
 
836
- :type: BMLayerCollection[mathutils.Vector]
837
- """
664
+ float_vector: typing.Any
665
+ """ Generic 3D vector with float precision custom-data layer."""
838
666
 
839
- float_vector: BMLayerCollection[mathutils.Vector]
840
- """ Generic 3D vector with float precision custom-data layer.
667
+ int: typing.Any
668
+ """ Generic int custom-data layer."""
841
669
 
842
- :type: BMLayerCollection[mathutils.Vector]
843
- """
844
-
845
- freestyle: BMLayerCollection
846
- """ Accessor for Freestyle face layer.
847
-
848
- :type: BMLayerCollection
849
- """
850
-
851
- int: BMLayerCollection[int]
852
- """ Generic int custom-data layer.
853
-
854
- :type: BMLayerCollection[int]
855
- """
856
-
857
- string: BMLayerCollection[bytes]
858
- """ Generic string custom-data layer (exposed as bytes, 255 max length).
859
-
860
- :type: BMLayerCollection[bytes]
861
- """
670
+ string: typing.Any
671
+ """ Generic string custom-data layer (exposed as bytes, 255 max length)."""
862
672
 
863
673
  class BMLayerAccessLoop:
864
674
  """Exposes custom-data layer attributes."""
865
675
 
866
- bool: BMLayerCollection[boolean]
867
- """ Generic boolean custom-data layer.
868
-
869
- :type: BMLayerCollection[boolean]
870
- """
871
-
872
- color: BMLayerCollection[mathutils.Vector]
873
- """ Generic RGBA color with 8-bit precision custom-data layer.
676
+ bool: typing.Any
677
+ """ Generic boolean custom-data layer."""
874
678
 
875
- :type: BMLayerCollection[mathutils.Vector]
876
- """
679
+ color: typing.Any
680
+ """ Generic RGBA color with 8-bit precision custom-data layer."""
877
681
 
878
- float: BMLayerCollection[float]
879
- """ Generic float custom-data layer.
682
+ float: typing.Any
683
+ """ Generic float custom-data layer."""
880
684
 
881
- :type: BMLayerCollection[float]
882
- """
685
+ float_color: typing.Any
686
+ """ Generic RGBA color with float precision custom-data layer."""
883
687
 
884
- float_color: BMLayerCollection[mathutils.Vector]
885
- """ Generic RGBA color with float precision custom-data layer.
688
+ float_vector: typing.Any
689
+ """ Generic 3D vector with float precision custom-data layer."""
886
690
 
887
- :type: BMLayerCollection[mathutils.Vector]
888
- """
691
+ int: typing.Any
692
+ """ Generic int custom-data layer."""
889
693
 
890
- float_vector: BMLayerCollection[mathutils.Vector]
891
- """ Generic 3D vector with float precision custom-data layer.
694
+ string: typing.Any
695
+ """ Generic string custom-data layer (exposed as bytes, 255 max length)."""
892
696
 
893
- :type: BMLayerCollection[mathutils.Vector]
894
- """
895
-
896
- int: BMLayerCollection[int]
897
- """ Generic int custom-data layer.
898
-
899
- :type: BMLayerCollection[int]
900
- """
901
-
902
- string: BMLayerCollection[bytes]
903
- """ Generic string custom-data layer (exposed as bytes, 255 max length).
904
-
905
- :type: BMLayerCollection[bytes]
906
- """
907
-
908
- uv: BMLayerCollection[BMLoopUV]
909
- """ Accessor for `BMLoopUV` UV (as a 2D Vector).
910
-
911
- :type: BMLayerCollection[BMLoopUV]
912
- """
697
+ uv: typing.Any
698
+ """ Accessor for `bmesh.types.BMLoopUV` UV (as a 2D Vector)."""
913
699
 
914
700
  class BMLayerAccessVert:
915
701
  """Exposes custom-data layer attributes."""
916
702
 
917
- bool: BMLayerCollection[boolean]
918
- """ Generic boolean custom-data layer.
703
+ bool: typing.Any
704
+ """ Generic boolean custom-data layer."""
919
705
 
920
- :type: BMLayerCollection[boolean]
921
- """
706
+ color: typing.Any
707
+ """ Generic RGBA color with 8-bit precision custom-data layer."""
922
708
 
923
- color: BMLayerCollection[mathutils.Vector]
924
- """ Generic RGBA color with 8-bit precision custom-data layer.
709
+ deform: typing.Any
710
+ """ Vertex deform weight `bmesh.types.BMDeformVert` (TODO)."""
925
711
 
926
- :type: BMLayerCollection[mathutils.Vector]
927
- """
712
+ float: typing.Any
713
+ """ Generic float custom-data layer."""
928
714
 
929
- deform: BMLayerCollection[BMDeformVert]
930
- """ Vertex deform weight `BMDeformVert` (TODO).
715
+ float_color: typing.Any
716
+ """ Generic RGBA color with float precision custom-data layer."""
931
717
 
932
- :type: BMLayerCollection[BMDeformVert]
933
- """
718
+ float_vector: typing.Any
719
+ """ Generic 3D vector with float precision custom-data layer."""
934
720
 
935
- float: BMLayerCollection[float]
936
- """ Generic float custom-data layer.
721
+ int: typing.Any
722
+ """ Generic int custom-data layer."""
937
723
 
938
- :type: BMLayerCollection[float]
939
- """
940
-
941
- float_color: BMLayerCollection[mathutils.Vector]
942
- """ Generic RGBA color with float precision custom-data layer.
943
-
944
- :type: BMLayerCollection[mathutils.Vector]
945
- """
946
-
947
- float_vector: BMLayerCollection[mathutils.Vector]
948
- """ Generic 3D vector with float precision custom-data layer.
949
-
950
- :type: BMLayerCollection[mathutils.Vector]
951
- """
952
-
953
- int: BMLayerCollection[int]
954
- """ Generic int custom-data layer.
955
-
956
- :type: BMLayerCollection[int]
957
- """
958
-
959
- shape: BMLayerCollection[mathutils.Vector]
960
- """ Vertex shapekey absolute location (as a 3D Vector).
961
-
962
- :type: BMLayerCollection[mathutils.Vector]
963
- """
724
+ shape: typing.Any
725
+ """ Vertex shape-key absolute location (as a 3D Vector)."""
964
726
 
965
727
  skin: typing.Any
966
728
  """ Accessor for skin layer."""
967
729
 
968
- string: BMLayerCollection[bytes]
969
- """ Generic string custom-data layer (exposed as bytes, 255 max length).
970
-
971
- :type: BMLayerCollection[bytes]
972
- """
730
+ string: typing.Any
731
+ """ Generic string custom-data layer (exposed as bytes, 255 max length)."""
973
732
 
974
733
  class BMLayerCollection[_GenericType1]:
975
734
  """Gives access to a collection of custom-data layers of the same type and behaves like Python dictionaries, except for the ability to do list like index access."""
976
735
 
977
736
  active: BMLayerItem[_GenericType1]
978
- """
979
-
980
- :type: BMLayerItem[_GenericType1]
981
- """
982
-
983
737
  is_singleton: bool
984
- """ True if there can exists only one layer of this type (read-only).
985
-
986
- :type: bool
987
- """
738
+ """ True if there can exists only one layer of this type (read-only)."""
988
739
 
989
740
  def get[_GenericType2](
990
741
  self, key: str, default: _GenericType2 = None
991
742
  ) -> BMLayerItem[_GenericType1] | _GenericType2:
992
743
  """Returns the value of the layer matching the key or default
993
- when not found (matches Python's dictionary function of the same name).
744
+ when not found (matches Pythons dictionary function of the same name).
994
745
 
995
746
  :param key: The key associated with the layer.
996
- :type key: str
997
747
  :param default: Optional argument for the value to return if
998
748
  key is not found.
999
- :type default: _GenericType2
1000
749
  :return:
1001
- :rtype: BMLayerItem[_GenericType1] | _GenericType2
1002
750
  """
1003
751
 
1004
752
  def items(self) -> list[str, BMLayerItem[_GenericType1]]:
1005
753
  """Return the identifiers of collection members
1006
- (matching Python's dict.items() functionality).
754
+ (matching Pythons dict.items() functionality).
1007
755
 
1008
756
  :return: (key, value) pairs for each member of this collection.
1009
- :rtype: list[str, BMLayerItem[_GenericType1]]
1010
757
  """
1011
758
 
1012
759
  def keys(self) -> list[str]:
1013
760
  """Return the identifiers of collection members
1014
- (matching Python's dict.keys() functionality).
761
+ (matching Pythons dict.keys() functionality).
1015
762
 
1016
763
  :return: the identifiers for each member of this collection.
1017
- :rtype: list[str]
1018
764
  """
1019
765
 
1020
766
  def new(self, name: str | None = "") -> BMLayerItem[_GenericType1]:
1021
767
  """Create a new layer
1022
768
 
1023
769
  :param name: Optional name argument (will be made unique).
1024
- :type name: str | None
1025
770
  :return: The newly created layer.
1026
- :rtype: BMLayerItem[_GenericType1]
1027
771
  """
1028
772
 
1029
- def remove(self, layer: BMLayerItem[_GenericType1]):
773
+ def remove(self, layer: BMLayerItem[_GenericType1]) -> None:
1030
774
  """Remove a layer
1031
775
 
1032
776
  :param layer: The layer to remove.
1033
- :type layer: BMLayerItem[_GenericType1]
1034
777
  """
1035
778
 
1036
779
  def values(self) -> list[BMLayerItem[_GenericType1]]:
1037
780
  """Return the values of collection
1038
- (matching Python's dict.values() functionality).
781
+ (matching Pythons dict.values() functionality).
1039
782
 
1040
783
  :return: the members of this collection.
1041
- :rtype: list[BMLayerItem[_GenericType1]]
1042
784
  """
1043
785
 
1044
786
  def verify(self) -> BMLayerItem[_GenericType1]:
1045
787
  """Create a new layer or return an existing active layer
1046
788
 
1047
789
  :return: The newly verified layer.
1048
- :rtype: BMLayerItem[_GenericType1]
1049
790
  """
1050
791
 
1051
792
  class BMLayerItem[_GenericType1]:
1052
793
  """Exposes a single custom data layer, their main purpose is for use as item accessors to custom-data when used with vert/edge/face/loop data."""
1053
794
 
1054
795
  name: str
1055
- """ The layers unique name (read-only).
1056
-
1057
- :type: str
1058
- """
796
+ """ The layers unique name (read-only)."""
1059
797
 
1060
- def copy_from(self, other: typing_extensions.Self):
1061
- """Return a copy of the layer
798
+ def copy_from(self, other: typing_extensions.Self) -> None:
799
+ """Copy data from another layer.
1062
800
 
1063
801
  :param other: Another layer to copy from.
1064
- :type other: typing_extensions.Self
1065
802
  """
1066
803
 
1067
804
  class BMLoop:
1068
- """This is normally accessed from `BMFace.loops` where each face loop represents a corner of the face."""
805
+ """This is normally accessed from `bmesh.types.BMFace.loops` where each face loop represents a corner of the face."""
1069
806
 
1070
807
  edge: BMEdge
1071
- """ The loop's edge (between this loop and the next), (read-only).
1072
-
1073
- :type: BMEdge
1074
- """
808
+ """ The loop's edge (between this loop and the next), (read-only)."""
1075
809
 
1076
810
  face: BMFace
1077
- """ The face this loop makes (read-only).
1078
-
1079
- :type: BMFace
1080
- """
811
+ """ The face this loop makes (read-only)."""
1081
812
 
1082
813
  index: int
1083
- """ Index of this element.
1084
-
1085
- :type: int
1086
- """
814
+ """ Index of this element."""
1087
815
 
1088
816
  is_convex: bool
1089
- """ True when this loop is at the convex corner of a face, depends on a valid face normal (read-only).
1090
-
1091
- :type: bool
1092
- """
817
+ """ True when this loop is at the convex corner of a face, depends on a valid face normal (read-only)."""
1093
818
 
1094
819
  is_valid: bool
1095
- """ True when this element is valid (hasn't been removed).
1096
-
1097
- :type: bool
1098
- """
820
+ """ True when this element is valid (hasn't been removed)."""
1099
821
 
1100
822
  link_loop_next: typing_extensions.Self
1101
- """ The next face corner (read-only).
1102
-
1103
- :type: typing_extensions.Self
1104
- """
823
+ """ The next face corner (read-only)."""
1105
824
 
1106
825
  link_loop_prev: typing_extensions.Self
1107
- """ The previous face corner (read-only).
1108
-
1109
- :type: typing_extensions.Self
1110
- """
826
+ """ The previous face corner (read-only)."""
1111
827
 
1112
828
  link_loop_radial_next: typing_extensions.Self
1113
- """ The next loop around the edge (read-only).
1114
-
1115
- :type: typing_extensions.Self
1116
- """
829
+ """ The next loop around the edge (read-only)."""
1117
830
 
1118
831
  link_loop_radial_prev: typing_extensions.Self
1119
- """ The previous loop around the edge (read-only).
1120
-
1121
- :type: typing_extensions.Self
1122
- """
1123
-
1124
- link_loops: BMElemSeq[BMLoop]
1125
- """ Loops connected to this loop, (read-only).
832
+ """ The previous loop around the edge (read-only)."""
1126
833
 
1127
- :type: BMElemSeq[BMLoop]
1128
- """
834
+ link_loops: typing.Any
835
+ """ Loops connected to this loop, (read-only)."""
1129
836
 
1130
837
  tag: bool
1131
- """ Generic attribute scripts can use for own logic
838
+ """ Generic attribute scripts can use for own logic"""
1132
839
 
1133
- :type: bool
1134
- """
840
+ uv_select_edge: bool
841
+ """ UV selected state of this element."""
1135
842
 
1136
- vert: BMVert
1137
- """ The loop's vertex (read-only).
843
+ uv_select_vert: bool
844
+ """ UV selected state of this element."""
1138
845
 
1139
- :type: BMVert
1140
- """
846
+ vert: BMVert
847
+ """ The loop's vertex (read-only)."""
1141
848
 
1142
849
  def calc_angle(self) -> float:
1143
850
  """Return the angle at this loops corner of the face.
1144
851
  This is calculated so sharper corners give lower angles.
1145
852
 
1146
853
  :return: The angle in radians.
1147
- :rtype: float
1148
854
  """
1149
855
 
1150
856
  def calc_normal(self) -> mathutils.Vector:
@@ -1152,7 +858,6 @@ class BMLoop:
1152
858
  Falls back to the face normal for straight lines.
1153
859
 
1154
860
  :return: a normalized vector.
1155
- :rtype: mathutils.Vector
1156
861
  """
1157
862
 
1158
863
  def calc_tangent(self) -> mathutils.Vector:
@@ -1160,27 +865,34 @@ class BMLoop:
1160
865
  Falls back to the face normal for straight lines.
1161
866
 
1162
867
  :return: a normalized vector.
1163
- :rtype: mathutils.Vector
1164
868
  """
1165
869
 
1166
- def copy_from(self, other: typing_extensions.Self):
870
+ def copy_from(self, other: typing_extensions.Self) -> None:
1167
871
  """Copy values from another element of matching type.
1168
872
 
1169
873
  :param other:
1170
- :type other: typing_extensions.Self
1171
874
  """
1172
875
 
1173
876
  def copy_from_face_interp(
1174
877
  self, face: BMFace, vert: bool = True, multires: bool = True
1175
- ):
878
+ ) -> None:
1176
879
  """Interpolate the customdata from a face onto this loop (the loops vert should overlap the face).
1177
880
 
1178
881
  :param face: The face to interpolate data from.
1179
- :type face: BMFace
1180
882
  :param vert: When enabled, interpolate the loops vertex data (optional).
1181
- :type vert: bool
1182
883
  :param multires: When enabled, interpolate the loops multires data (optional).
1183
- :type multires: bool
884
+ """
885
+
886
+ def uv_select_edge_set(self, select: bool) -> None:
887
+ """Set the UV edge selection state.
888
+
889
+ :param select: Select or de-select.
890
+ """
891
+
892
+ def uv_select_vert_set(self, select: bool) -> None:
893
+ """Select the UV vertex.
894
+
895
+ :param select: Select or de-select.
1184
896
  """
1185
897
 
1186
898
  def __getitem__[_GenericType1](
@@ -1189,184 +901,111 @@ class BMLoop:
1189
901
  """
1190
902
 
1191
903
  :param key:
1192
- :type key: BMLayerItem[_GenericType1]
1193
904
  :return:
1194
- :rtype: _GenericType1
1195
905
  """
1196
906
 
1197
907
  def __setitem__[_GenericType1](
1198
908
  self, key: BMLayerItem[_GenericType1], value: _GenericType1
1199
- ):
909
+ ) -> None:
1200
910
  """
1201
911
 
1202
912
  :param key:
1203
- :type key: BMLayerItem[_GenericType1]
1204
913
  :param value:
1205
- :type value: _GenericType1
1206
914
  """
1207
915
 
1208
- def __delitem__[_GenericType1](self, key: BMLayerItem[_GenericType1]):
916
+ def __delitem__[_GenericType1](self, key: BMLayerItem[_GenericType1]) -> None:
1209
917
  """
1210
918
 
1211
919
  :param key:
1212
- :type key: BMLayerItem[_GenericType1]
1213
920
  """
1214
921
 
1215
922
  class BMLoopSeq:
1216
923
  layers: BMLayerAccessLoop
1217
- """ custom-data layers (read-only).
1218
-
1219
- :type: BMLayerAccessLoop
1220
- """
924
+ """ custom-data layers (read-only)."""
1221
925
 
1222
926
  @typing.overload
1223
927
  def __getitem__(self, key: int) -> BMLoop:
1224
928
  """
1225
929
 
1226
930
  :param key:
1227
- :type key: int
1228
931
  :return:
1229
- :rtype: BMLoop
1230
932
  """
1231
933
 
1232
934
  @typing.overload
1233
- def __getitem__(self, key: slice) -> list[BMLoop, ...]:
935
+ def __getitem__(self, key: slice) -> list[BMLoop]:
1234
936
  """
1235
937
 
1236
938
  :param key:
1237
- :type key: slice
1238
939
  :return:
1239
- :rtype: list[BMLoop, ...]
1240
940
  """
1241
941
 
1242
942
  def __iter__(self) -> BMIter[BMLoop]:
1243
943
  """
1244
944
 
1245
945
  :return:
1246
- :rtype: BMIter[BMLoop]
1247
946
  """
1248
947
 
1249
948
  def __len__(self) -> int:
1250
949
  """
1251
950
 
1252
951
  :return:
1253
- :rtype: int
1254
952
  """
1255
953
 
1256
954
  class BMLoopUV:
1257
955
  pin_uv: bool
1258
- """ UV pin state.
1259
-
1260
- :type: bool
1261
- """
1262
-
1263
- select: bool
1264
- """ UV select state.
1265
-
1266
- :type: bool
1267
- """
1268
-
1269
- select_edge: bool
1270
- """ UV edge select state.
1271
-
1272
- :type: bool
1273
- """
956
+ """ UV pin state."""
1274
957
 
1275
958
  uv: mathutils.Vector
1276
- """ Loops UV (as a 2D Vector).
1277
-
1278
- :type: mathutils.Vector
1279
- """
959
+ """ Loops UV (as a 2D Vector)."""
1280
960
 
1281
961
  class BMVert:
1282
962
  """The BMesh vertex type"""
1283
963
 
1284
964
  co: mathutils.Vector
1285
- """ The coordinates for this vertex as a 3D, wrapped vector.
1286
-
1287
- :type: mathutils.Vector
1288
- """
965
+ """ The coordinates for this vertex as a 3D, wrapped vector."""
1289
966
 
1290
967
  hide: bool
1291
- """ Hidden state of this element.
1292
-
1293
- :type: bool
1294
- """
968
+ """ Hidden state of this element."""
1295
969
 
1296
970
  index: int
1297
- """ Index of this element.
1298
-
1299
- :type: int
1300
- """
971
+ """ Index of this element."""
1301
972
 
1302
973
  is_boundary: bool
1303
- """ True when this vertex is connected to boundary edges (read-only).
1304
-
1305
- :type: bool
1306
- """
974
+ """ True when this vertex is connected to boundary edges (read-only)."""
1307
975
 
1308
976
  is_manifold: bool
1309
- """ True when this vertex is manifold (read-only).
1310
-
1311
- :type: bool
1312
- """
977
+ """ True when this vertex is manifold (read-only)."""
1313
978
 
1314
979
  is_valid: bool
1315
- """ True when this element is valid (hasn't been removed).
1316
-
1317
- :type: bool
1318
- """
980
+ """ True when this element is valid (hasn't been removed)."""
1319
981
 
1320
982
  is_wire: bool
1321
- """ True when this vertex is not connected to any faces (read-only).
1322
-
1323
- :type: bool
1324
- """
1325
-
1326
- link_edges: BMElemSeq[BMEdge]
1327
- """ Edges connected to this vertex (read-only).
1328
-
1329
- :type: BMElemSeq[BMEdge]
1330
- """
983
+ """ True when this vertex is not connected to any faces (read-only)."""
1331
984
 
1332
- link_faces: BMElemSeq[BMFace]
1333
- """ Faces connected to this vertex (read-only).
985
+ link_edges: typing.Any
986
+ """ Edges connected to this vertex (read-only)."""
1334
987
 
1335
- :type: BMElemSeq[BMFace]
1336
- """
1337
-
1338
- link_loops: BMElemSeq[BMLoop]
1339
- """ Loops that use this vertex (read-only).
988
+ link_faces: typing.Any
989
+ """ Faces connected to this vertex (read-only)."""
1340
990
 
1341
- :type: BMElemSeq[BMLoop]
1342
- """
991
+ link_loops: typing.Any
992
+ """ Loops that use this vertex (read-only)."""
1343
993
 
1344
994
  normal: mathutils.Vector
1345
- """ The normal for this vertex as a 3D, wrapped vector.
1346
-
1347
- :type: mathutils.Vector
1348
- """
995
+ """ The normal for this vertex as a 3D, wrapped vector."""
1349
996
 
1350
997
  select: bool
1351
- """ Selected state of this element.
1352
-
1353
- :type: bool
1354
- """
998
+ """ Selected state of this element."""
1355
999
 
1356
1000
  tag: bool
1357
- """ Generic attribute scripts can use for own logic
1358
-
1359
- :type: bool
1360
- """
1001
+ """ Generic attribute scripts can use for own logic"""
1361
1002
 
1362
1003
  def calc_edge_angle(self, fallback: typing.Any | None = None) -> float:
1363
- """Return the angle between this vert's two connected edges.
1004
+ """Return the angle between this verts two connected edges.
1364
1005
 
1365
- :param fallback: return this when the vert doesn't have 2 edges
1006
+ :param fallback: return this when the vert doesnt have 2 edges
1366
1007
  (instead of raising a `ValueError`).
1367
- :type fallback: typing.Any | None
1368
1008
  :return: Angle between edges in radians.
1369
- :rtype: float
1370
1009
  """
1371
1010
 
1372
1011
  def calc_shell_factor(self) -> float:
@@ -1375,54 +1014,47 @@ class BMVert:
1375
1014
  This is used to maintain shell thickness when offsetting verts along their normals.
1376
1015
 
1377
1016
  :return: offset multiplier
1378
- :rtype: float
1379
1017
  """
1380
1018
 
1381
- def copy_from(self, other: typing_extensions.Self):
1019
+ def copy_from(self, other: typing_extensions.Self) -> None:
1382
1020
  """Copy values from another element of matching type.
1383
1021
 
1384
1022
  :param other:
1385
- :type other: typing_extensions.Self
1386
1023
  """
1387
1024
 
1388
- def copy_from_face_interp(self, face: BMFace):
1025
+ def copy_from_face_interp(self, face: BMFace) -> None:
1389
1026
  """Interpolate the customdata from a face onto this loop (the loops vert should overlap the face).
1390
1027
 
1391
1028
  :param face: The face to interpolate data from.
1392
- :type face: BMFace
1393
1029
  """
1394
1030
 
1395
1031
  def copy_from_vert_interp(
1396
1032
  self, vert_pair: collections.abc.Sequence[BMVert], fac: float
1397
- ):
1033
+ ) -> None:
1398
1034
  """Interpolate the customdata from a vert between 2 other verts.
1399
1035
 
1400
1036
  :param vert_pair: The verts between which to interpolate data from.
1401
- :type vert_pair: collections.abc.Sequence[BMVert]
1402
- :param fac:
1403
- :type fac: float
1037
+ :param fac: The interpolation factor.
1404
1038
  """
1405
1039
 
1406
- def hide_set(self, hide: bool):
1040
+ def hide_set(self, hide: bool) -> None:
1407
1041
  """Set the hide state.
1408
1042
  This is different from the hide attribute because it updates the selection and hide state of associated geometry.
1409
1043
 
1410
1044
  :param hide: Hidden or visible.
1411
- :type hide: bool
1412
1045
  """
1413
1046
 
1414
- def normal_update(self):
1047
+ def normal_update(self) -> None:
1415
1048
  """Update vertex normal.
1416
1049
  This does not update the normals of adjoining faces.
1417
1050
 
1418
1051
  """
1419
1052
 
1420
- def select_set(self, select: bool):
1053
+ def select_set(self, select: bool) -> None:
1421
1054
  """Set the selection.
1422
1055
  This is different from the select attribute because it updates the selection state of associated geometry.
1423
1056
 
1424
1057
  :param select: Select or de-select.
1425
- :type select: bool
1426
1058
  """
1427
1059
 
1428
1060
  def __getitem__[_GenericType1](
@@ -1431,40 +1063,32 @@ class BMVert:
1431
1063
  """
1432
1064
 
1433
1065
  :param key:
1434
- :type key: BMLayerItem[_GenericType1]
1435
1066
  :return:
1436
- :rtype: _GenericType1
1437
1067
  """
1438
1068
 
1439
1069
  def __setitem__[_GenericType1](
1440
1070
  self, key: BMLayerItem[_GenericType1], value: _GenericType1
1441
- ):
1071
+ ) -> None:
1442
1072
  """
1443
1073
 
1444
1074
  :param key:
1445
- :type key: BMLayerItem[_GenericType1]
1446
1075
  :param value:
1447
- :type value: _GenericType1
1448
1076
  """
1449
1077
 
1450
- def __delitem__[_GenericType1](self, key: BMLayerItem[_GenericType1]):
1078
+ def __delitem__[_GenericType1](self, key: BMLayerItem[_GenericType1]) -> None:
1451
1079
  """
1452
1080
 
1453
1081
  :param key:
1454
- :type key: BMLayerItem[_GenericType1]
1455
1082
  """
1456
1083
 
1457
1084
  class BMVertSeq:
1458
1085
  layers: BMLayerAccessVert
1459
- """ custom-data layers (read-only).
1460
-
1461
- :type: BMLayerAccessVert
1462
- """
1086
+ """ custom-data layers (read-only)."""
1463
1087
 
1464
- def ensure_lookup_table(self):
1088
+ def ensure_lookup_table(self) -> None:
1465
1089
  """Ensure internal data needed for int subscription is initialized with verts/edges/faces, eg bm.verts[index].This needs to be called again after adding/removing data in this sequence."""
1466
1090
 
1467
- def index_update(self):
1091
+ def index_update(self) -> None:
1468
1092
  """Initialize the index values of this sequence.This is the equivalent of looping over all elements and assigning the index values."""
1469
1093
 
1470
1094
  def new(
@@ -1475,34 +1099,29 @@ class BMVertSeq:
1475
1099
  """Create a new vertex.
1476
1100
 
1477
1101
  :param co: The initial location of the vertex (optional argument).
1478
- :type co: collections.abc.Sequence[float] | mathutils.Vector
1479
1102
  :param example: Existing vert to initialize settings.
1480
- :type example: BMVert | None
1481
1103
  :return: The newly created vertex.
1482
- :rtype: BMVert
1483
1104
  """
1484
1105
 
1485
- def remove(self, vert: BMVert):
1106
+ def remove(self, vert: BMVert) -> None:
1486
1107
  """Remove a vert.
1487
1108
 
1488
- :param vert:
1489
- :type vert: BMVert
1109
+ :param vert: The vert to remove.
1490
1110
  """
1491
1111
 
1492
1112
  def sort(
1493
1113
  self,
1114
+ *,
1494
1115
  key: None
1495
1116
  | collections.abc.Callable[[BMVert | BMEdge | BMFace], int]
1496
1117
  | None = None,
1497
1118
  reverse: bool = False,
1498
- ):
1119
+ ) -> None:
1499
1120
  """Sort the elements of this sequence, using an optional custom sort key.
1500
- Indices of elements are not changed, `BMElemSeq.index_update` can be used for that.
1121
+ Indices of elements are not changed, `bmesh.types.BMElemSeq.index_update` can be used for that.
1501
1122
 
1502
1123
  :param key: The key that sets the ordering of the elements.
1503
- :type key: None | collections.abc.Callable[[BMVert | BMEdge | BMFace], int] | None
1504
1124
  :param reverse: Reverse the order of the elements
1505
- :type reverse: bool
1506
1125
  """
1507
1126
 
1508
1127
  @typing.overload
@@ -1510,188 +1129,226 @@ class BMVertSeq:
1510
1129
  """
1511
1130
 
1512
1131
  :param key:
1513
- :type key: int
1514
1132
  :return:
1515
- :rtype: BMVert
1516
1133
  """
1517
1134
 
1518
1135
  @typing.overload
1519
- def __getitem__(self, key: slice) -> list[BMVert, ...]:
1136
+ def __getitem__(self, key: slice) -> list[BMVert]:
1520
1137
  """
1521
1138
 
1522
1139
  :param key:
1523
- :type key: slice
1524
1140
  :return:
1525
- :rtype: list[BMVert, ...]
1526
1141
  """
1527
1142
 
1528
1143
  def __iter__(self) -> BMIter[BMVert]:
1529
1144
  """
1530
1145
 
1531
1146
  :return:
1532
- :rtype: BMIter[BMVert]
1533
1147
  """
1534
1148
 
1535
1149
  def __len__(self) -> int:
1536
1150
  """
1537
1151
 
1538
1152
  :return:
1539
- :rtype: int
1540
1153
  """
1541
1154
 
1542
1155
  class BMesh:
1543
1156
  """The BMesh data structure"""
1544
1157
 
1545
1158
  edges: BMEdgeSeq
1546
- """ This meshes edge sequence (read-only).
1547
-
1548
- :type: BMEdgeSeq
1549
- """
1159
+ """ This meshes edge sequence (read-only)."""
1550
1160
 
1551
1161
  faces: BMFaceSeq
1552
- """ This meshes face sequence (read-only).
1553
-
1554
- :type: BMFaceSeq
1555
- """
1162
+ """ This meshes face sequence (read-only)."""
1556
1163
 
1557
1164
  is_valid: bool
1558
- """ True when this element is valid (hasn't been removed).
1559
-
1560
- :type: bool
1561
- """
1165
+ """ True when this element is valid (hasn't been removed)."""
1562
1166
 
1563
1167
  is_wrapped: bool
1564
- """ True when this mesh is owned by blender (typically the editmode BMesh).
1565
-
1566
- :type: bool
1567
- """
1168
+ """ True when this mesh is owned by blender (typically the editmode BMesh)."""
1568
1169
 
1569
1170
  loops: BMLoopSeq
1570
- """ This meshes loops (read-only).
1571
-
1572
- :type: BMLoopSeq
1573
- """
1171
+ """ This meshes loops (read-only)."""
1574
1172
 
1575
1173
  select_history: BMEditSelSeq
1576
- """ Sequence of selected items (the last is displayed as active).
1577
-
1578
- :type: BMEditSelSeq
1579
- """
1174
+ """ Sequence of selected items (the last is displayed as active)."""
1580
1175
 
1581
- select_mode: set
1582
- """ The selection mode, values can be {'VERT', 'EDGE', 'FACE'}, can't be assigned an empty set.
1176
+ select_mode: set[typing.Literal["VERT", "EDGE", "FACE"]]
1177
+ """ The selection mode, cannot be assigned an empty set."""
1583
1178
 
1584
- :type: set
1585
- """
1179
+ uv_select_sync_valid: bool
1180
+ """ When true, the UV selection has been synchronized. Setting to False means the UV selection will be ignored. While setting to true is supported it is up to the script author to ensure a correct selection state before doing so."""
1586
1181
 
1587
1182
  verts: BMVertSeq
1588
- """ This meshes vert sequence (read-only).
1589
-
1590
- :type: BMVertSeq
1591
- """
1183
+ """ This meshes vert sequence (read-only)."""
1592
1184
 
1593
1185
  def calc_loop_triangles(self) -> list[tuple[BMLoop, BMLoop, BMLoop]]:
1594
1186
  """Calculate triangle tessellation from quads/ngons.
1595
1187
 
1596
1188
  :return: The triangulated faces.
1597
- :rtype: list[tuple[BMLoop, BMLoop, BMLoop]]
1598
1189
  """
1599
1190
 
1600
- def calc_volume(self, signed: bool = False) -> float:
1191
+ def calc_volume(self, *, signed: bool = False) -> float:
1601
1192
  """Calculate mesh volume based on face normals.
1602
1193
 
1603
1194
  :param signed: when signed is true, negative values may be returned.
1604
- :type signed: bool
1605
1195
  :return: The volume of the mesh.
1606
- :rtype: float
1607
1196
  """
1608
1197
 
1609
- def clear(self):
1198
+ def clear(self) -> None:
1610
1199
  """Clear all mesh data."""
1611
1200
 
1612
1201
  def copy(self) -> typing_extensions.Self:
1613
1202
  """
1614
1203
 
1615
1204
  :return: A copy of this BMesh.
1616
- :rtype: typing_extensions.Self
1617
1205
  """
1618
1206
 
1619
- def free(self):
1207
+ def free(self) -> None:
1620
1208
  """Explicitly free the BMesh data from memory, causing exceptions on further access."""
1621
1209
 
1622
1210
  def from_mesh(
1623
1211
  self,
1624
1212
  mesh: bpy.types.Mesh,
1213
+ *,
1625
1214
  face_normals: bool = True,
1626
1215
  vertex_normals: bool = True,
1627
1216
  use_shape_key: bool = False,
1628
1217
  shape_key_index: int = 0,
1629
- ):
1630
- """Initialize this bmesh from existing mesh datablock.
1218
+ ) -> None:
1219
+ """Initialize this bmesh from existing mesh data-block.
1631
1220
 
1632
1221
  :param mesh: The mesh data to load.
1633
- :type mesh: bpy.types.Mesh
1634
- :param face_normals:
1635
- :type face_normals: bool
1636
- :param vertex_normals:
1637
- :type vertex_normals: bool
1222
+ :param face_normals: Calculate face normals.
1223
+ :param vertex_normals: Calculate vertex normals.
1638
1224
  :param use_shape_key: Use the locations from a shape key.
1639
- :type use_shape_key: bool
1640
1225
  :param shape_key_index: The shape key index to use.
1641
- :type shape_key_index: int
1642
1226
  """
1643
1227
 
1644
1228
  def from_object(
1645
1229
  self,
1646
1230
  object: bpy.types.Object,
1647
1231
  depsgraph: bpy.types.Depsgraph,
1232
+ *,
1648
1233
  cage: bool = False,
1649
1234
  face_normals: bool = True,
1650
1235
  vertex_normals: bool = True,
1651
- ):
1236
+ ) -> None:
1652
1237
  """Initialize this bmesh from existing object data-block (only meshes are currently supported).
1653
1238
 
1654
1239
  :param object: The object data to load.
1655
- :type object: bpy.types.Object
1656
- :param depsgraph:
1657
- :type depsgraph: bpy.types.Depsgraph
1240
+ :param depsgraph: The dependency graph for evaluated data.
1658
1241
  :param cage: Get the mesh as a deformed cage.
1659
- :type cage: bool
1660
1242
  :param face_normals: Calculate face normals.
1661
- :type face_normals: bool
1662
1243
  :param vertex_normals: Calculate vertex normals.
1663
- :type vertex_normals: bool
1664
1244
  """
1665
1245
 
1666
- def normal_update(self):
1246
+ def normal_update(self) -> None:
1667
1247
  """Update normals of mesh faces and verts."""
1668
1248
 
1669
- def select_flush(self, select: bool):
1670
- """Flush selection, independent of the current selection mode.
1249
+ def select_flush(self, select: bool) -> None:
1250
+ """Flush selection from vertices, independent of the current selection mode.
1671
1251
 
1672
1252
  :param select: flush selection or de-selected elements.
1673
- :type select: bool
1674
1253
  """
1675
1254
 
1676
- def select_flush_mode(self):
1677
- """flush selection based on the current mode current `BMesh.select_mode`."""
1255
+ def select_flush_mode(self, *, flush_down: bool = False) -> None:
1256
+ """Flush selection based on the current mode current `bmesh.types.BMesh.select_mode`.
1678
1257
 
1679
- def to_mesh(self, mesh: bpy.types.Mesh):
1680
- """Writes this BMesh data into an existing Mesh datablock.
1258
+ :param flush_down: Flush selection down from faces to edges & verts or from edges to verts. This option is ignored when vertex selection mode is enabled.
1259
+ """
1260
+
1261
+ def to_mesh(self, mesh: bpy.types.Mesh) -> None:
1262
+ """Writes this BMesh data into an existing Mesh data-block.
1681
1263
 
1682
1264
  :param mesh: The mesh data to write into.
1683
- :type mesh: bpy.types.Mesh
1684
1265
  """
1685
1266
 
1686
1267
  def transform(
1687
1268
  self,
1688
1269
  matrix: collections.abc.Sequence[collections.abc.Sequence[float]]
1689
1270
  | mathutils.Matrix,
1690
- filter=None,
1691
- ):
1271
+ *,
1272
+ filter: set[typing.Literal["SELECT", "HIDE", "SEAM", "SMOOTH", "TAG"]]
1273
+ | None = None,
1274
+ ) -> None:
1692
1275
  """Transform the mesh (optionally filtering flagged data only).
1693
1276
 
1694
- :param matrix: 4x4x transform matrix.
1695
- :type matrix: collections.abc.Sequence[collections.abc.Sequence[float]] | mathutils.Matrix
1696
- :param filter: set of values in ('SELECT', 'HIDE', 'SEAM', 'SMOOTH', 'TAG').
1277
+ :param matrix: 4x4 transform matrix.
1278
+ :param filter: Flag to filter vertices.
1697
1279
  """
1280
+
1281
+ def uv_select_flush(self, select: bool) -> None:
1282
+ """Flush selection from UV vertices to edges & faces independent of the selection mode.
1283
+
1284
+ :param select: Flush selection or de-selected elements.
1285
+ """
1286
+
1287
+ def uv_select_flush_mode(self, *, flush_down: bool = False) -> None:
1288
+ """Flush selection based on the current mode current `BMesh.select_mode`.
1289
+
1290
+ :param flush_down: Flush selection down from faces to edges & verts or from edges to verts. This option is ignored when vertex selection mode is enabled.
1291
+ """
1292
+
1293
+ def uv_select_flush_shared(self, select: bool) -> None:
1294
+ """Flush selection from UV vertices to contiguous UVs independent of the selection mode.
1295
+
1296
+ :param select: Flush selection or de-selected elements.
1297
+ """
1298
+
1299
+ def uv_select_foreach_set(
1300
+ self,
1301
+ select: bool,
1302
+ /,
1303
+ *,
1304
+ loop_verts: collections.abc.Iterable[BMLoop] = (),
1305
+ loop_edges: collections.abc.Iterable[BMLoop] = (),
1306
+ faces: collections.abc.Iterable[BMFace] = (),
1307
+ sticky_select_mode: typing.Literal[
1308
+ "SHARED_LOCATION", "DISABLED", "SHARED_VERTEX"
1309
+ ] = "SHARED_LOCATION",
1310
+ ) -> None:
1311
+ """Set the UV selection state for loop-vertices, loop-edges & faces.This is a close equivalent to selecting in the UV editor.
1312
+
1313
+ :param select: The selection state to set.
1314
+ :param loop_verts: Loop verts to operate on.
1315
+ :param loop_edges: Loop edges to operate on.
1316
+ :param faces: Faces to operate on.
1317
+ :param sticky_select_mode: See UV_STICKY_SELECT_MODE_REF.
1318
+ """
1319
+
1320
+ def uv_select_foreach_set_from_mesh(
1321
+ self,
1322
+ select: bool,
1323
+ /,
1324
+ *,
1325
+ verts: collections.abc.Iterable[BMVert] = (),
1326
+ edges: collections.abc.Iterable[BMEdge] = (),
1327
+ faces: collections.abc.Iterable[BMFace] = (),
1328
+ sticky_select_mode: typing.Literal[
1329
+ "SHARED_LOCATION", "DISABLED", "SHARED_VERTEX"
1330
+ ] = "SHARED_LOCATION",
1331
+ ) -> None:
1332
+ """Select or de-select mesh elements, updating the UV selection.An equivalent to selecting from the 3D viewport for selection operations that support maintaining a synchronized UV selection.
1333
+
1334
+ :param select: The selection state to set.
1335
+ :param verts: Verts to operate on.
1336
+ :param edges: Edges to operate on.
1337
+ :param faces: Faces to operate on.
1338
+ :param sticky_select_mode: See UV_STICKY_SELECT_MODE_REF.
1339
+ """
1340
+
1341
+ def uv_select_sync_from_mesh(
1342
+ self,
1343
+ *,
1344
+ sticky_select_mode: typing.Literal[
1345
+ "SHARED_LOCATION", "DISABLED", "SHARED_VERTEX"
1346
+ ] = "SHARED_LOCATION",
1347
+ ) -> None:
1348
+ """Sync selection from mesh to UVs.
1349
+
1350
+ :param sticky_select_mode: Behavior when flushing from the mesh to UV selection UV_STICKY_SELECT_MODE_REF. This should only be used when preparing to create a UV selection.
1351
+ """
1352
+
1353
+ def uv_select_sync_to_mesh(self) -> None:
1354
+ """Sync selection from UVs to the mesh."""