fake-bpy-module 20231205__py3-none-any.whl → 20231207__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 (855) hide show
  1. addon_utils/__init__.pyi +84 -0
  2. animsys_refactor/__init__.pyi +55 -0
  3. aud/__init__.pyi +1190 -0
  4. bgl/__init__.pyi +5084 -0
  5. bl_app_override/__init__.pyi +31 -0
  6. bl_app_override/helpers/__init__.pyi +42 -0
  7. bl_app_override/helpers/py.typed +0 -0
  8. bl_app_template_utils/__init__.pyi +36 -0
  9. bl_console_utils/autocomplete/__init__.pyi +8 -0
  10. bl_console_utils/autocomplete/complete_calltip/__init__.pyi +44 -0
  11. bl_console_utils/autocomplete/complete_calltip/py.typed +0 -0
  12. bl_console_utils/autocomplete/complete_import/__init__.pyi +28 -0
  13. bl_console_utils/autocomplete/complete_import/py.typed +0 -0
  14. bl_console_utils/autocomplete/complete_namespace/__init__.pyi +44 -0
  15. bl_console_utils/autocomplete/complete_namespace/py.typed +0 -0
  16. bl_console_utils/autocomplete/intellisense/__init__.pyi +20 -0
  17. bl_console_utils/autocomplete/intellisense/py.typed +0 -0
  18. bl_i18n_utils/__init__.pyi +11 -0
  19. bl_i18n_utils/bl_extract_messages/__init__.pyi +124 -0
  20. bl_i18n_utils/bl_extract_messages/py.typed +0 -0
  21. bl_i18n_utils/merge_po/__init__.pyi +12 -0
  22. bl_i18n_utils/merge_po/py.typed +0 -0
  23. bl_i18n_utils/settings/__init__.pyi +66 -0
  24. bl_i18n_utils/settings/py.typed +0 -0
  25. bl_i18n_utils/utils/__init__.pyi +338 -0
  26. bl_i18n_utils/utils/py.typed +0 -0
  27. bl_i18n_utils/utils_cli/__init__.pyi +52 -0
  28. bl_i18n_utils/utils_cli/py.typed +0 -0
  29. bl_i18n_utils/utils_languages_menu/__init__.pyi +12 -0
  30. bl_i18n_utils/utils_languages_menu/py.typed +0 -0
  31. bl_i18n_utils/utils_rtl/__init__.pyi +20 -0
  32. bl_i18n_utils/utils_rtl/py.typed +0 -0
  33. bl_keymap_utils/__init__.pyi +9 -0
  34. bl_keymap_utils/io/__init__.pyi +76 -0
  35. bl_keymap_utils/io/py.typed +0 -0
  36. bl_keymap_utils/keymap_from_toolbar/__init__.pyi +12 -0
  37. bl_keymap_utils/keymap_from_toolbar/py.typed +0 -0
  38. bl_keymap_utils/keymap_hierarchy/__init__.pyi +12 -0
  39. bl_keymap_utils/keymap_hierarchy/py.typed +0 -0
  40. bl_keymap_utils/platform_helpers/__init__.pyi +20 -0
  41. bl_keymap_utils/platform_helpers/py.typed +0 -0
  42. bl_keymap_utils/versioning/__init__.pyi +12 -0
  43. bl_keymap_utils/versioning/py.typed +0 -0
  44. bl_math/__init__.pyi +52 -0
  45. bl_operators/__init__.pyi +49 -0
  46. bl_operators/add_mesh_torus/__init__.pyi +231 -0
  47. bl_operators/add_mesh_torus/py.typed +0 -0
  48. bl_operators/anim/__init__.pyi +1291 -0
  49. bl_operators/anim/py.typed +0 -0
  50. bl_operators/assets/__init__.pyi +586 -0
  51. bl_operators/assets/py.typed +0 -0
  52. bl_operators/bmesh/find_adjacent/__init__.pyi +76 -0
  53. bl_operators/bmesh/find_adjacent/py.typed +0 -0
  54. bl_operators/clip/__init__.pyi +1898 -0
  55. bl_operators/clip/py.typed +0 -0
  56. bl_operators/console/__init__.pyi +918 -0
  57. bl_operators/console/py.typed +0 -0
  58. bl_operators/constraint/__init__.pyi +745 -0
  59. bl_operators/constraint/py.typed +0 -0
  60. bl_operators/file/__init__.pyi +560 -0
  61. bl_operators/file/py.typed +0 -0
  62. bl_operators/freestyle/__init__.pyi +751 -0
  63. bl_operators/freestyle/py.typed +0 -0
  64. bl_operators/geometry_nodes/__init__.pyi +2553 -0
  65. bl_operators/geometry_nodes/py.typed +0 -0
  66. bl_operators/image/__init__.pyi +548 -0
  67. bl_operators/image/py.typed +0 -0
  68. bl_operators/mesh/__init__.pyi +566 -0
  69. bl_operators/mesh/py.typed +0 -0
  70. bl_operators/node/__init__.pyi +1814 -0
  71. bl_operators/node/py.typed +0 -0
  72. bl_operators/object/__init__.pyi +3212 -0
  73. bl_operators/object/py.typed +0 -0
  74. bl_operators/object_align/__init__.pyi +215 -0
  75. bl_operators/object_align/py.typed +0 -0
  76. bl_operators/object_quick_effects/__init__.pyi +777 -0
  77. bl_operators/object_quick_effects/py.typed +0 -0
  78. bl_operators/object_randomize_transform/__init__.pyi +199 -0
  79. bl_operators/object_randomize_transform/py.typed +0 -0
  80. bl_operators/presets/__init__.pyi +3776 -0
  81. bl_operators/presets/py.typed +0 -0
  82. bl_operators/rigidbody/__init__.pyi +566 -0
  83. bl_operators/rigidbody/py.typed +0 -0
  84. bl_operators/screen_play_rendered_anim/__init__.pyi +192 -0
  85. bl_operators/screen_play_rendered_anim/py.typed +0 -0
  86. bl_operators/sequencer/__init__.pyi +1001 -0
  87. bl_operators/sequencer/py.typed +0 -0
  88. bl_operators/spreadsheet/__init__.pyi +202 -0
  89. bl_operators/spreadsheet/py.typed +0 -0
  90. bl_operators/userpref/__init__.pyi +4701 -0
  91. bl_operators/userpref/py.typed +0 -0
  92. bl_operators/uvcalc_follow_active/__init__.pyi +212 -0
  93. bl_operators/uvcalc_follow_active/py.typed +0 -0
  94. bl_operators/uvcalc_lightmap/__init__.pyi +257 -0
  95. bl_operators/uvcalc_lightmap/py.typed +0 -0
  96. bl_operators/uvcalc_transform/__init__.pyi +501 -0
  97. bl_operators/uvcalc_transform/py.typed +0 -0
  98. bl_operators/vertexpaint_dirt/__init__.pyi +207 -0
  99. bl_operators/vertexpaint_dirt/py.typed +0 -0
  100. bl_operators/view3d/__init__.pyi +955 -0
  101. bl_operators/view3d/py.typed +0 -0
  102. bl_operators/wm/__init__.pyi +8409 -0
  103. bl_operators/wm/py.typed +0 -0
  104. bl_previews_utils/bl_previews_render/__init__.pyi +60 -0
  105. bl_previews_utils/bl_previews_render/py.typed +0 -0
  106. bl_rna_utils/data_path/__init__.pyi +25 -0
  107. bl_rna_utils/data_path/py.typed +0 -0
  108. bl_text_utils/external_editor/__init__.pyi +12 -0
  109. bl_text_utils/external_editor/py.typed +0 -0
  110. bl_ui/__init__.pyi +706 -0
  111. bl_ui/asset_shelf/__init__.pyi +202 -0
  112. bl_ui/asset_shelf/py.typed +0 -0
  113. bl_ui/generic_ui_list/__init__.pyi +629 -0
  114. bl_ui/generic_ui_list/py.typed +0 -0
  115. bl_ui/node_add_menu/__init__.pyi +260 -0
  116. bl_ui/node_add_menu/py.typed +0 -0
  117. bl_ui/node_add_menu_compositor/__init__.pyi +3739 -0
  118. bl_ui/node_add_menu_compositor/py.typed +0 -0
  119. bl_ui/node_add_menu_geometry/__init__.pyi +8520 -0
  120. bl_ui/node_add_menu_geometry/py.typed +0 -0
  121. bl_ui/node_add_menu_shader/__init__.pyi +2139 -0
  122. bl_ui/node_add_menu_shader/py.typed +0 -0
  123. bl_ui/node_add_menu_texture/__init__.pyi +1868 -0
  124. bl_ui/node_add_menu_texture/py.typed +0 -0
  125. bl_ui/properties_animviz/__init__.pyi +38 -0
  126. bl_ui/properties_animviz/py.typed +0 -0
  127. bl_ui/properties_collection/__init__.pyi +1051 -0
  128. bl_ui/properties_collection/py.typed +0 -0
  129. bl_ui/properties_constraint/__init__.pyi +29694 -0
  130. bl_ui/properties_constraint/py.typed +0 -0
  131. bl_ui/properties_data_armature/__init__.pyi +2274 -0
  132. bl_ui/properties_data_armature/py.typed +0 -0
  133. bl_ui/properties_data_bone/__init__.pyi +2087 -0
  134. bl_ui/properties_data_bone/py.typed +0 -0
  135. bl_ui/properties_data_camera/__init__.pyi +3004 -0
  136. bl_ui/properties_data_camera/py.typed +0 -0
  137. bl_ui/properties_data_curve/__init__.pyi +3164 -0
  138. bl_ui/properties_data_curve/py.typed +0 -0
  139. bl_ui/properties_data_curves/__init__.pyi +1247 -0
  140. bl_ui/properties_data_curves/py.typed +0 -0
  141. bl_ui/properties_data_empty/__init__.pyi +426 -0
  142. bl_ui/properties_data_empty/py.typed +0 -0
  143. bl_ui/properties_data_gpencil/__init__.pyi +3758 -0
  144. bl_ui/properties_data_gpencil/py.typed +0 -0
  145. bl_ui/properties_data_grease_pencil/__init__.pyi +632 -0
  146. bl_ui/properties_data_grease_pencil/py.typed +0 -0
  147. bl_ui/properties_data_lattice/__init__.pyi +637 -0
  148. bl_ui/properties_data_lattice/py.typed +0 -0
  149. bl_ui/properties_data_light/__init__.pyi +2111 -0
  150. bl_ui/properties_data_light/py.typed +0 -0
  151. bl_ui/properties_data_lightprobe/__init__.pyi +1264 -0
  152. bl_ui/properties_data_lightprobe/py.typed +0 -0
  153. bl_ui/properties_data_mesh/__init__.pyi +4052 -0
  154. bl_ui/properties_data_mesh/py.typed +0 -0
  155. bl_ui/properties_data_metaball/__init__.pyi +1047 -0
  156. bl_ui/properties_data_metaball/py.typed +0 -0
  157. bl_ui/properties_data_modifier/__init__.pyi +1741 -0
  158. bl_ui/properties_data_modifier/py.typed +0 -0
  159. bl_ui/properties_data_pointcloud/__init__.pyi +1045 -0
  160. bl_ui/properties_data_pointcloud/py.typed +0 -0
  161. bl_ui/properties_data_shaderfx/__init__.pyi +214 -0
  162. bl_ui/properties_data_shaderfx/py.typed +0 -0
  163. bl_ui/properties_data_speaker/__init__.pyi +1056 -0
  164. bl_ui/properties_data_speaker/py.typed +0 -0
  165. bl_ui/properties_data_volume/__init__.pyi +1652 -0
  166. bl_ui/properties_data_volume/py.typed +0 -0
  167. bl_ui/properties_freestyle/__init__.pyi +5309 -0
  168. bl_ui/properties_freestyle/py.typed +0 -0
  169. bl_ui/properties_grease_pencil_common/__init__.pyi +2780 -0
  170. bl_ui/properties_grease_pencil_common/py.typed +0 -0
  171. bl_ui/properties_mask_common/__init__.pyi +1554 -0
  172. bl_ui/properties_mask_common/py.typed +0 -0
  173. bl_ui/properties_material/__init__.pyi +3117 -0
  174. bl_ui/properties_material/py.typed +0 -0
  175. bl_ui/properties_material_gpencil/__init__.pyi +2086 -0
  176. bl_ui/properties_material_gpencil/py.typed +0 -0
  177. bl_ui/properties_object/__init__.pyi +2875 -0
  178. bl_ui/properties_object/py.typed +0 -0
  179. bl_ui/properties_output/__init__.pyi +3799 -0
  180. bl_ui/properties_output/py.typed +0 -0
  181. bl_ui/properties_paint_common/__init__.pyi +814 -0
  182. bl_ui/properties_paint_common/py.typed +0 -0
  183. bl_ui/properties_particle/__init__.pyi +10938 -0
  184. bl_ui/properties_particle/py.typed +0 -0
  185. bl_ui/properties_physics_cloth/__init__.pyi +2984 -0
  186. bl_ui/properties_physics_cloth/py.typed +0 -0
  187. bl_ui/properties_physics_common/__init__.pyi +277 -0
  188. bl_ui/properties_physics_common/py.typed +0 -0
  189. bl_ui/properties_physics_dynamicpaint/__init__.pyi +5431 -0
  190. bl_ui/properties_physics_dynamicpaint/py.typed +0 -0
  191. bl_ui/properties_physics_field/__init__.pyi +2220 -0
  192. bl_ui/properties_physics_field/py.typed +0 -0
  193. bl_ui/properties_physics_fluid/__init__.pyi +7296 -0
  194. bl_ui/properties_physics_fluid/py.typed +0 -0
  195. bl_ui/properties_physics_geometry_nodes/__init__.pyi +214 -0
  196. bl_ui/properties_physics_geometry_nodes/py.typed +0 -0
  197. bl_ui/properties_physics_rigidbody/__init__.pyi +1698 -0
  198. bl_ui/properties_physics_rigidbody/py.typed +0 -0
  199. bl_ui/properties_physics_rigidbody_constraint/__init__.pyi +2734 -0
  200. bl_ui/properties_physics_rigidbody_constraint/py.typed +0 -0
  201. bl_ui/properties_physics_softbody/__init__.pyi +3198 -0
  202. bl_ui/properties_physics_softbody/py.typed +0 -0
  203. bl_ui/properties_render/__init__.pyi +12664 -0
  204. bl_ui/properties_render/py.typed +0 -0
  205. bl_ui/properties_scene/__init__.pyi +2872 -0
  206. bl_ui/properties_scene/py.typed +0 -0
  207. bl_ui/properties_texture/__init__.pyi +5470 -0
  208. bl_ui/properties_texture/py.typed +0 -0
  209. bl_ui/properties_view_layer/__init__.pyi +3493 -0
  210. bl_ui/properties_view_layer/py.typed +0 -0
  211. bl_ui/properties_workspace/__init__.pyi +630 -0
  212. bl_ui/properties_workspace/py.typed +0 -0
  213. bl_ui/properties_world/__init__.pyi +1478 -0
  214. bl_ui/properties_world/py.typed +0 -0
  215. bl_ui/space_clip/__init__.pyi +14313 -0
  216. bl_ui/space_clip/py.typed +0 -0
  217. bl_ui/space_console/__init__.pyi +1221 -0
  218. bl_ui/space_console/py.typed +0 -0
  219. bl_ui/space_dopesheet/__init__.pyi +5388 -0
  220. bl_ui/space_dopesheet/py.typed +0 -0
  221. bl_ui/space_filebrowser/__init__.pyi +5996 -0
  222. bl_ui/space_filebrowser/py.typed +0 -0
  223. bl_ui/space_graph/__init__.pyi +4053 -0
  224. bl_ui/space_graph/py.typed +0 -0
  225. bl_ui/space_image/__init__.pyi +14801 -0
  226. bl_ui/space_image/py.typed +0 -0
  227. bl_ui/space_info/__init__.pyi +1216 -0
  228. bl_ui/space_info/py.typed +0 -0
  229. bl_ui/space_nla/__init__.pyi +3460 -0
  230. bl_ui/space_nla/py.typed +0 -0
  231. bl_ui/space_node/__init__.pyi +6519 -0
  232. bl_ui/space_node/py.typed +0 -0
  233. bl_ui/space_outliner/__init__.pyi +2864 -0
  234. bl_ui/space_outliner/py.typed +0 -0
  235. bl_ui/space_properties/__init__.pyi +575 -0
  236. bl_ui/space_properties/py.typed +0 -0
  237. bl_ui/space_sequencer/__init__.pyi +15360 -0
  238. bl_ui/space_sequencer/py.typed +0 -0
  239. bl_ui/space_spreadsheet/__init__.pyi +226 -0
  240. bl_ui/space_spreadsheet/py.typed +0 -0
  241. bl_ui/space_statusbar/__init__.pyi +190 -0
  242. bl_ui/space_statusbar/py.typed +0 -0
  243. bl_ui/space_text/__init__.pyi +3223 -0
  244. bl_ui/space_text/py.typed +0 -0
  245. bl_ui/space_time/__init__.pyi +1472 -0
  246. bl_ui/space_time/py.typed +0 -0
  247. bl_ui/space_toolsystem_common/__init__.pyi +435 -0
  248. bl_ui/space_toolsystem_common/py.typed +0 -0
  249. bl_ui/space_toolsystem_toolbar/__init__.pyi +1671 -0
  250. bl_ui/space_toolsystem_toolbar/py.typed +0 -0
  251. bl_ui/space_topbar/__init__.pyi +5296 -0
  252. bl_ui/space_topbar/py.typed +0 -0
  253. bl_ui/space_userpref/__init__.pyi +17826 -0
  254. bl_ui/space_userpref/py.typed +0 -0
  255. bl_ui/space_view3d/__init__.pyi +51846 -0
  256. bl_ui/space_view3d/py.typed +0 -0
  257. bl_ui/space_view3d_toolbar/__init__.pyi +18993 -0
  258. bl_ui/space_view3d_toolbar/py.typed +0 -0
  259. bl_ui/utils/__init__.pyi +40 -0
  260. bl_ui/utils/py.typed +0 -0
  261. bl_ui_utils/__init__.pyi +6 -0
  262. bl_ui_utils/bug_report_url/__init__.pyi +12 -0
  263. bl_ui_utils/bug_report_url/py.typed +0 -0
  264. bl_ui_utils/layout/__init__.pyi +12 -0
  265. bl_ui_utils/layout/py.typed +0 -0
  266. blend_render_info/__init__.pyi +24 -0
  267. blf/__init__.pyi +231 -0
  268. bmesh/__init__.pyi +51 -0
  269. bmesh/geometry/__init__.pyi +23 -0
  270. bmesh/geometry/py.typed +0 -0
  271. bmesh/ops/__init__.pyi +1935 -0
  272. bmesh/ops/py.typed +0 -0
  273. bmesh/types/__init__.pyi +1399 -0
  274. bmesh/types/py.typed +0 -0
  275. bmesh/utils/__init__.pyi +207 -0
  276. bmesh/utils/py.typed +0 -0
  277. bpy/__init__.pyi +18 -0
  278. bpy/app/__init__.pyi +247 -0
  279. bpy/app/handlers/__init__.pyi +151 -0
  280. bpy/app/handlers/py.typed +0 -0
  281. bpy/app/icons/__init__.pyi +42 -0
  282. bpy/app/icons/py.typed +0 -0
  283. bpy/app/timers/__init__.pyi +42 -0
  284. bpy/app/timers/py.typed +0 -0
  285. bpy/app/translations/__init__.pyi +107 -0
  286. bpy/app/translations/py.typed +0 -0
  287. bpy/msgbus/__init__.pyi +40 -0
  288. bpy/msgbus/py.typed +0 -0
  289. bpy/ops/__init__.pyi +81 -0
  290. bpy/ops/action/__init__.pyi +723 -0
  291. bpy/ops/action/py.typed +0 -0
  292. bpy/ops/anim/__init__.pyi +978 -0
  293. bpy/ops/anim/py.typed +0 -0
  294. bpy/ops/armature/__init__.pyi +858 -0
  295. bpy/ops/armature/py.typed +0 -0
  296. bpy/ops/asset/__init__.pyi +339 -0
  297. bpy/ops/asset/py.typed +0 -0
  298. bpy/ops/boid/__init__.pyi +127 -0
  299. bpy/ops/boid/py.typed +0 -0
  300. bpy/ops/brush/__init__.pyi +171 -0
  301. bpy/ops/brush/py.typed +0 -0
  302. bpy/ops/buttons/__init__.pyi +255 -0
  303. bpy/ops/buttons/py.typed +0 -0
  304. bpy/ops/cachefile/__init__.pyi +241 -0
  305. bpy/ops/cachefile/py.typed +0 -0
  306. bpy/ops/camera/__init__.pyi +60 -0
  307. bpy/ops/camera/py.typed +0 -0
  308. bpy/ops/clip/__init__.pyi +1782 -0
  309. bpy/ops/clip/py.typed +0 -0
  310. bpy/ops/cloth/__init__.pyi +31 -0
  311. bpy/ops/cloth/py.typed +0 -0
  312. bpy/ops/collection/__init__.pyi +95 -0
  313. bpy/ops/collection/py.typed +0 -0
  314. bpy/ops/console/__init__.pyi +370 -0
  315. bpy/ops/console/py.typed +0 -0
  316. bpy/ops/constraint/__init__.pyi +391 -0
  317. bpy/ops/constraint/py.typed +0 -0
  318. bpy/ops/curve/__init__.pyi +1052 -0
  319. bpy/ops/curve/py.typed +0 -0
  320. bpy/ops/curves/__init__.pyi +259 -0
  321. bpy/ops/curves/py.typed +0 -0
  322. bpy/ops/cycles/__init__.pyi +67 -0
  323. bpy/ops/cycles/py.typed +0 -0
  324. bpy/ops/dpaint/__init__.pyi +87 -0
  325. bpy/ops/dpaint/py.typed +0 -0
  326. bpy/ops/ed/__init__.pyi +276 -0
  327. bpy/ops/ed/py.typed +0 -0
  328. bpy/ops/export_anim/__init__.pyi +45 -0
  329. bpy/ops/export_anim/py.typed +0 -0
  330. bpy/ops/export_mesh/__init__.pyi +62 -0
  331. bpy/ops/export_mesh/py.typed +0 -0
  332. bpy/ops/export_scene/__init__.pyi +577 -0
  333. bpy/ops/export_scene/py.typed +0 -0
  334. bpy/ops/file/__init__.pyi +787 -0
  335. bpy/ops/file/py.typed +0 -0
  336. bpy/ops/fluid/__init__.pyi +224 -0
  337. bpy/ops/fluid/py.typed +0 -0
  338. bpy/ops/font/__init__.pyi +537 -0
  339. bpy/ops/font/py.typed +0 -0
  340. bpy/ops/geometry/__init__.pyi +219 -0
  341. bpy/ops/geometry/py.typed +0 -0
  342. bpy/ops/gizmogroup/__init__.pyi +52 -0
  343. bpy/ops/gizmogroup/py.typed +0 -0
  344. bpy/ops/gpencil/__init__.pyi +3247 -0
  345. bpy/ops/gpencil/py.typed +0 -0
  346. bpy/ops/graph/__init__.pyi +1392 -0
  347. bpy/ops/graph/py.typed +0 -0
  348. bpy/ops/grease_pencil/__init__.pyi +724 -0
  349. bpy/ops/grease_pencil/py.typed +0 -0
  350. bpy/ops/image/__init__.pyi +1261 -0
  351. bpy/ops/image/py.typed +0 -0
  352. bpy/ops/import_anim/__init__.pyi +58 -0
  353. bpy/ops/import_anim/py.typed +0 -0
  354. bpy/ops/import_curve/__init__.pyi +26 -0
  355. bpy/ops/import_curve/py.typed +0 -0
  356. bpy/ops/import_mesh/__init__.pyi +50 -0
  357. bpy/ops/import_mesh/py.typed +0 -0
  358. bpy/ops/import_scene/__init__.pyi +191 -0
  359. bpy/ops/import_scene/py.typed +0 -0
  360. bpy/ops/info/__init__.pyi +140 -0
  361. bpy/ops/info/py.typed +0 -0
  362. bpy/ops/lattice/__init__.pyi +153 -0
  363. bpy/ops/lattice/py.typed +0 -0
  364. bpy/ops/marker/__init__.pyi +238 -0
  365. bpy/ops/marker/py.typed +0 -0
  366. bpy/ops/mask/__init__.pyi +747 -0
  367. bpy/ops/mask/py.typed +0 -0
  368. bpy/ops/material/__init__.pyi +47 -0
  369. bpy/ops/material/py.typed +0 -0
  370. bpy/ops/mball/__init__.pyi +168 -0
  371. bpy/ops/mball/py.typed +0 -0
  372. bpy/ops/mesh/__init__.pyi +4168 -0
  373. bpy/ops/mesh/py.typed +0 -0
  374. bpy/ops/nla/__init__.pyi +756 -0
  375. bpy/ops/nla/py.typed +0 -0
  376. bpy/ops/node/__init__.pyi +1894 -0
  377. bpy/ops/node/py.typed +0 -0
  378. bpy/ops/object/__init__.pyi +5343 -0
  379. bpy/ops/object/py.typed +0 -0
  380. bpy/ops/outliner/__init__.pyi +1172 -0
  381. bpy/ops/outliner/py.typed +0 -0
  382. bpy/ops/paint/__init__.pyi +1067 -0
  383. bpy/ops/paint/py.typed +0 -0
  384. bpy/ops/paintcurve/__init__.pyi +148 -0
  385. bpy/ops/paintcurve/py.typed +0 -0
  386. bpy/ops/palette/__init__.pyi +123 -0
  387. bpy/ops/palette/py.typed +0 -0
  388. bpy/ops/particle/__init__.pyi +635 -0
  389. bpy/ops/particle/py.typed +0 -0
  390. bpy/ops/pose/__init__.pyi +763 -0
  391. bpy/ops/pose/py.typed +0 -0
  392. bpy/ops/poselib/__init__.pyi +173 -0
  393. bpy/ops/poselib/py.typed +0 -0
  394. bpy/ops/preferences/__init__.pyi +849 -0
  395. bpy/ops/preferences/py.typed +0 -0
  396. bpy/ops/ptcache/__init__.pyi +114 -0
  397. bpy/ops/ptcache/py.typed +0 -0
  398. bpy/ops/render/__init__.pyi +262 -0
  399. bpy/ops/render/py.typed +0 -0
  400. bpy/ops/rigidbody/__init__.pyi +244 -0
  401. bpy/ops/rigidbody/py.typed +0 -0
  402. bpy/ops/scene/__init__.pyi +675 -0
  403. bpy/ops/scene/py.typed +0 -0
  404. bpy/ops/screen/__init__.pyi +846 -0
  405. bpy/ops/screen/py.typed +0 -0
  406. bpy/ops/script/__init__.pyi +60 -0
  407. bpy/ops/script/py.typed +0 -0
  408. bpy/ops/sculpt/__init__.pyi +862 -0
  409. bpy/ops/sculpt/py.typed +0 -0
  410. bpy/ops/sculpt_curves/__init__.pyi +94 -0
  411. bpy/ops/sculpt_curves/py.typed +0 -0
  412. bpy/ops/sequencer/__init__.pyi +2165 -0
  413. bpy/ops/sequencer/py.typed +0 -0
  414. bpy/ops/sound/__init__.pyi +395 -0
  415. bpy/ops/sound/py.typed +0 -0
  416. bpy/ops/spreadsheet/__init__.pyi +76 -0
  417. bpy/ops/spreadsheet/py.typed +0 -0
  418. bpy/ops/surface/__init__.pyi +215 -0
  419. bpy/ops/surface/py.typed +0 -0
  420. bpy/ops/text/__init__.pyi +863 -0
  421. bpy/ops/text/py.typed +0 -0
  422. bpy/ops/text_editor/__init__.pyi +31 -0
  423. bpy/ops/text_editor/py.typed +0 -0
  424. bpy/ops/texture/__init__.pyi +68 -0
  425. bpy/ops/texture/py.typed +0 -0
  426. bpy/ops/transform/__init__.pyi +1545 -0
  427. bpy/ops/transform/py.typed +0 -0
  428. bpy/ops/ui/__init__.pyi +536 -0
  429. bpy/ops/ui/py.typed +0 -0
  430. bpy/ops/uilist/__init__.pyi +74 -0
  431. bpy/ops/uilist/py.typed +0 -0
  432. bpy/ops/uv/__init__.pyi +1251 -0
  433. bpy/ops/uv/py.typed +0 -0
  434. bpy/ops/view2d/__init__.pyi +329 -0
  435. bpy/ops/view2d/py.typed +0 -0
  436. bpy/ops/view3d/__init__.pyi +1392 -0
  437. bpy/ops/view3d/py.typed +0 -0
  438. bpy/ops/wm/__init__.pyi +4821 -0
  439. bpy/ops/wm/py.typed +0 -0
  440. bpy/ops/workspace/__init__.pyi +115 -0
  441. bpy/ops/workspace/py.typed +0 -0
  442. bpy/ops/world/__init__.pyi +19 -0
  443. bpy/ops/world/py.typed +0 -0
  444. bpy/path/__init__.pyi +194 -0
  445. bpy/path/py.typed +0 -0
  446. bpy/props/__init__.pyi +509 -0
  447. bpy/props/py.typed +0 -0
  448. bpy/types/__init__.pyi +131533 -0
  449. bpy/types/py.typed +0 -0
  450. bpy/utils/__init__.pyi +429 -0
  451. bpy/utils/previews/__init__.pyi +73 -0
  452. bpy/utils/previews/py.typed +0 -0
  453. bpy/utils/units/__init__.pyi +61 -0
  454. bpy/utils/units/py.typed +0 -0
  455. bpy_extras/__init__.pyi +18 -0
  456. bpy_extras/anim_utils/__init__.pyi +108 -0
  457. bpy_extras/anim_utils/py.typed +0 -0
  458. bpy_extras/asset_utils/__init__.pyi +39 -0
  459. bpy_extras/asset_utils/py.typed +0 -0
  460. bpy_extras/bmesh_utils/__init__.pyi +20 -0
  461. bpy_extras/bmesh_utils/py.typed +0 -0
  462. bpy_extras/extensions/junction_module/__init__.pyi +48 -0
  463. bpy_extras/extensions/junction_module/py.typed +0 -0
  464. bpy_extras/id_map_utils/__init__.pyi +28 -0
  465. bpy_extras/id_map_utils/py.typed +0 -0
  466. bpy_extras/image_utils/__init__.pyi +42 -0
  467. bpy_extras/image_utils/py.typed +0 -0
  468. bpy_extras/io_utils/__init__.pyi +165 -0
  469. bpy_extras/io_utils/py.typed +0 -0
  470. bpy_extras/keyconfig_utils/__init__.pyi +28 -0
  471. bpy_extras/keyconfig_utils/py.typed +0 -0
  472. bpy_extras/mesh_utils/__init__.pyi +91 -0
  473. bpy_extras/mesh_utils/py.typed +0 -0
  474. bpy_extras/node_shader_utils/__init__.pyi +562 -0
  475. bpy_extras/node_shader_utils/py.typed +0 -0
  476. bpy_extras/node_utils/__init__.pyi +28 -0
  477. bpy_extras/node_utils/py.typed +0 -0
  478. bpy_extras/object_utils/__init__.pyi +87 -0
  479. bpy_extras/object_utils/py.typed +0 -0
  480. bpy_extras/view3d_utils/__init__.pyi +90 -0
  481. bpy_extras/view3d_utils/py.typed +0 -0
  482. bpy_extras/wm_utils/progress_report/__init__.pyi +98 -0
  483. bpy_extras/wm_utils/progress_report/py.typed +0 -0
  484. bpy_restrict_state/__init__.pyi +24 -0
  485. bpy_types/__init__.pyi +5189 -0
  486. console_python/__init__.pyi +71 -0
  487. console_shell/__init__.pyi +44 -0
  488. fake_bpy_module-20231207.dist-info/METADATA +175 -0
  489. fake_bpy_module-20231207.dist-info/RECORD +610 -0
  490. freestyle/chainingiterators/__init__.pyi +306 -0
  491. freestyle/chainingiterators/py.typed +0 -0
  492. freestyle/functions/__init__.pyi +1270 -0
  493. freestyle/functions/py.typed +0 -0
  494. freestyle/predicates/__init__.pyi +535 -0
  495. freestyle/predicates/py.typed +0 -0
  496. freestyle/shaders/__init__.pyi +872 -0
  497. freestyle/shaders/py.typed +0 -0
  498. freestyle/types/__init__.pyi +2407 -0
  499. freestyle/types/py.typed +0 -0
  500. freestyle/utils/ContextFunctions/__init__.pyi +127 -0
  501. freestyle/utils/ContextFunctions/py.typed +0 -0
  502. freestyle/utils/__init__.pyi +246 -0
  503. gpu/capabilities/__init__.pyi +186 -0
  504. gpu/capabilities/py.typed +0 -0
  505. gpu/matrix/__init__.pyi +162 -0
  506. gpu/matrix/py.typed +0 -0
  507. gpu/platform/__init__.pyi +54 -0
  508. gpu/platform/py.typed +0 -0
  509. gpu/select/__init__.pyi +15 -0
  510. gpu/select/py.typed +0 -0
  511. gpu/shader/__init__.pyi +38 -0
  512. gpu/shader/py.typed +0 -0
  513. gpu/state/__init__.pyi +214 -0
  514. gpu/state/py.typed +0 -0
  515. gpu/texture/__init__.pyi +18 -0
  516. gpu/texture/py.typed +0 -0
  517. gpu/types/__init__.pyi +698 -0
  518. gpu/types/py.typed +0 -0
  519. gpu_extras/batch/__init__.pyi +25 -0
  520. gpu_extras/batch/py.typed +0 -0
  521. gpu_extras/presets/__init__.pyi +43 -0
  522. gpu_extras/presets/py.typed +0 -0
  523. graphviz_export/__init__.pyi +21 -0
  524. idprop/types/__init__.pyi +98 -0
  525. idprop/types/py.typed +0 -0
  526. imbuf/__init__.pyi +44 -0
  527. imbuf/types/__init__.pyi +70 -0
  528. imbuf/types/py.typed +0 -0
  529. keyingsets_builtins/__init__.pyi +4028 -0
  530. keyingsets_utils/__init__.pyi +116 -0
  531. mathutils/__init__.pyi +2917 -0
  532. mathutils/bvhtree/__init__.pyi +124 -0
  533. mathutils/bvhtree/py.typed +0 -0
  534. mathutils/geometry/__init__.pyi +526 -0
  535. mathutils/geometry/py.typed +0 -0
  536. mathutils/interpolate/__init__.pyi +16 -0
  537. mathutils/interpolate/py.typed +0 -0
  538. mathutils/kdtree/__init__.pyi +77 -0
  539. mathutils/kdtree/py.typed +0 -0
  540. mathutils/noise/__init__.pyi +342 -0
  541. mathutils/noise/py.typed +0 -0
  542. nodeitems_builtins/__init__.pyi +69 -0
  543. nodeitems_utils/__init__.pyi +86 -0
  544. rna_info/__init__.pyi +343 -0
  545. rna_keymap_ui/__init__.pyi +52 -0
  546. rna_prop_ui/__init__.pyi +109 -0
  547. rna_xml/__init__.pyi +53 -0
  548. sys_info/__init__.pyi +12 -0
  549. addon_utils/__init__.py +0 -84
  550. animsys_refactor/__init__.py +0 -55
  551. aud/__init__.py +0 -1190
  552. bgl/__init__.py +0 -5084
  553. bl_app_override/__init__.py +0 -31
  554. bl_app_override/helpers.py +0 -42
  555. bl_app_template_utils/__init__.py +0 -36
  556. bl_console_utils/autocomplete/__init__.py +0 -8
  557. bl_console_utils/autocomplete/complete_calltip.py +0 -44
  558. bl_console_utils/autocomplete/complete_import.py +0 -28
  559. bl_console_utils/autocomplete/complete_namespace.py +0 -44
  560. bl_console_utils/autocomplete/intellisense.py +0 -20
  561. bl_i18n_utils/__init__.py +0 -11
  562. bl_i18n_utils/bl_extract_messages.py +0 -124
  563. bl_i18n_utils/merge_po.py +0 -12
  564. bl_i18n_utils/settings.py +0 -66
  565. bl_i18n_utils/utils.py +0 -338
  566. bl_i18n_utils/utils_cli.py +0 -52
  567. bl_i18n_utils/utils_languages_menu.py +0 -12
  568. bl_i18n_utils/utils_rtl.py +0 -20
  569. bl_keymap_utils/__init__.py +0 -9
  570. bl_keymap_utils/io.py +0 -76
  571. bl_keymap_utils/keymap_from_toolbar.py +0 -12
  572. bl_keymap_utils/keymap_hierarchy.py +0 -12
  573. bl_keymap_utils/platform_helpers.py +0 -20
  574. bl_keymap_utils/versioning.py +0 -12
  575. bl_math/__init__.py +0 -52
  576. bl_operators/__init__.py +0 -49
  577. bl_operators/add_mesh_torus.py +0 -231
  578. bl_operators/anim.py +0 -1291
  579. bl_operators/assets.py +0 -586
  580. bl_operators/bmesh/find_adjacent.py +0 -76
  581. bl_operators/clip.py +0 -1898
  582. bl_operators/console.py +0 -918
  583. bl_operators/constraint.py +0 -745
  584. bl_operators/file.py +0 -560
  585. bl_operators/freestyle.py +0 -751
  586. bl_operators/geometry_nodes.py +0 -2553
  587. bl_operators/image.py +0 -548
  588. bl_operators/mesh.py +0 -566
  589. bl_operators/node.py +0 -1814
  590. bl_operators/object.py +0 -3212
  591. bl_operators/object_align.py +0 -215
  592. bl_operators/object_quick_effects.py +0 -777
  593. bl_operators/object_randomize_transform.py +0 -199
  594. bl_operators/presets.py +0 -3776
  595. bl_operators/rigidbody.py +0 -566
  596. bl_operators/screen_play_rendered_anim.py +0 -192
  597. bl_operators/sequencer.py +0 -1001
  598. bl_operators/spreadsheet.py +0 -202
  599. bl_operators/userpref.py +0 -4701
  600. bl_operators/uvcalc_follow_active.py +0 -212
  601. bl_operators/uvcalc_lightmap.py +0 -257
  602. bl_operators/uvcalc_transform.py +0 -501
  603. bl_operators/vertexpaint_dirt.py +0 -207
  604. bl_operators/view3d.py +0 -955
  605. bl_operators/wm.py +0 -8409
  606. bl_previews_utils/bl_previews_render.py +0 -60
  607. bl_rna_utils/data_path.py +0 -25
  608. bl_text_utils/external_editor.py +0 -12
  609. bl_ui/__init__.py +0 -706
  610. bl_ui/asset_shelf.py +0 -202
  611. bl_ui/generic_ui_list.py +0 -629
  612. bl_ui/node_add_menu.py +0 -260
  613. bl_ui/node_add_menu_compositor.py +0 -3739
  614. bl_ui/node_add_menu_geometry.py +0 -8520
  615. bl_ui/node_add_menu_shader.py +0 -2139
  616. bl_ui/node_add_menu_texture.py +0 -1868
  617. bl_ui/properties_animviz.py +0 -38
  618. bl_ui/properties_collection.py +0 -1051
  619. bl_ui/properties_constraint.py +0 -29694
  620. bl_ui/properties_data_armature.py +0 -2274
  621. bl_ui/properties_data_bone.py +0 -2087
  622. bl_ui/properties_data_camera.py +0 -3004
  623. bl_ui/properties_data_curve.py +0 -3164
  624. bl_ui/properties_data_curves.py +0 -1247
  625. bl_ui/properties_data_empty.py +0 -426
  626. bl_ui/properties_data_gpencil.py +0 -3758
  627. bl_ui/properties_data_grease_pencil.py +0 -632
  628. bl_ui/properties_data_lattice.py +0 -637
  629. bl_ui/properties_data_light.py +0 -2111
  630. bl_ui/properties_data_lightprobe.py +0 -1264
  631. bl_ui/properties_data_mesh.py +0 -4052
  632. bl_ui/properties_data_metaball.py +0 -1047
  633. bl_ui/properties_data_modifier.py +0 -1741
  634. bl_ui/properties_data_pointcloud.py +0 -1045
  635. bl_ui/properties_data_shaderfx.py +0 -214
  636. bl_ui/properties_data_speaker.py +0 -1056
  637. bl_ui/properties_data_volume.py +0 -1652
  638. bl_ui/properties_freestyle.py +0 -5309
  639. bl_ui/properties_grease_pencil_common.py +0 -2780
  640. bl_ui/properties_mask_common.py +0 -1554
  641. bl_ui/properties_material.py +0 -3117
  642. bl_ui/properties_material_gpencil.py +0 -2086
  643. bl_ui/properties_object.py +0 -2875
  644. bl_ui/properties_output.py +0 -3799
  645. bl_ui/properties_paint_common.py +0 -814
  646. bl_ui/properties_particle.py +0 -10938
  647. bl_ui/properties_physics_cloth.py +0 -2984
  648. bl_ui/properties_physics_common.py +0 -277
  649. bl_ui/properties_physics_dynamicpaint.py +0 -5431
  650. bl_ui/properties_physics_field.py +0 -2220
  651. bl_ui/properties_physics_fluid.py +0 -7296
  652. bl_ui/properties_physics_geometry_nodes.py +0 -214
  653. bl_ui/properties_physics_rigidbody.py +0 -1698
  654. bl_ui/properties_physics_rigidbody_constraint.py +0 -2734
  655. bl_ui/properties_physics_softbody.py +0 -3198
  656. bl_ui/properties_render.py +0 -12664
  657. bl_ui/properties_scene.py +0 -2872
  658. bl_ui/properties_texture.py +0 -5470
  659. bl_ui/properties_view_layer.py +0 -3493
  660. bl_ui/properties_workspace.py +0 -630
  661. bl_ui/properties_world.py +0 -1478
  662. bl_ui/space_clip.py +0 -14313
  663. bl_ui/space_console.py +0 -1221
  664. bl_ui/space_dopesheet.py +0 -5388
  665. bl_ui/space_filebrowser.py +0 -5996
  666. bl_ui/space_graph.py +0 -4053
  667. bl_ui/space_image.py +0 -14801
  668. bl_ui/space_info.py +0 -1216
  669. bl_ui/space_nla.py +0 -3460
  670. bl_ui/space_node.py +0 -6519
  671. bl_ui/space_outliner.py +0 -2864
  672. bl_ui/space_properties.py +0 -575
  673. bl_ui/space_sequencer.py +0 -15360
  674. bl_ui/space_spreadsheet.py +0 -226
  675. bl_ui/space_statusbar.py +0 -190
  676. bl_ui/space_text.py +0 -3223
  677. bl_ui/space_time.py +0 -1472
  678. bl_ui/space_toolsystem_common.py +0 -435
  679. bl_ui/space_toolsystem_toolbar.py +0 -1671
  680. bl_ui/space_topbar.py +0 -5296
  681. bl_ui/space_userpref.py +0 -17826
  682. bl_ui/space_view3d.py +0 -51846
  683. bl_ui/space_view3d_toolbar.py +0 -18993
  684. bl_ui/utils.py +0 -40
  685. bl_ui_utils/__init__.py +0 -6
  686. bl_ui_utils/bug_report_url.py +0 -12
  687. bl_ui_utils/layout.py +0 -12
  688. blend_render_info/__init__.py +0 -24
  689. blf/__init__.py +0 -231
  690. bmesh/__init__.py +0 -51
  691. bmesh/geometry.py +0 -23
  692. bmesh/ops.py +0 -1935
  693. bmesh/types.py +0 -1399
  694. bmesh/utils.py +0 -207
  695. bpy/__init__.py +0 -18
  696. bpy/app/__init__.py +0 -247
  697. bpy/app/handlers.py +0 -160
  698. bpy/app/icons.py +0 -42
  699. bpy/app/timers.py +0 -42
  700. bpy/app/translations.py +0 -107
  701. bpy/msgbus.py +0 -40
  702. bpy/ops/__init__.py +0 -81
  703. bpy/ops/action.py +0 -723
  704. bpy/ops/anim.py +0 -978
  705. bpy/ops/armature.py +0 -858
  706. bpy/ops/asset.py +0 -339
  707. bpy/ops/boid.py +0 -127
  708. bpy/ops/brush.py +0 -171
  709. bpy/ops/buttons.py +0 -255
  710. bpy/ops/cachefile.py +0 -241
  711. bpy/ops/camera.py +0 -60
  712. bpy/ops/clip.py +0 -1782
  713. bpy/ops/cloth.py +0 -31
  714. bpy/ops/collection.py +0 -95
  715. bpy/ops/console.py +0 -370
  716. bpy/ops/constraint.py +0 -391
  717. bpy/ops/curve.py +0 -1052
  718. bpy/ops/curves.py +0 -259
  719. bpy/ops/cycles.py +0 -67
  720. bpy/ops/dpaint.py +0 -87
  721. bpy/ops/ed.py +0 -276
  722. bpy/ops/export_anim.py +0 -45
  723. bpy/ops/export_mesh.py +0 -62
  724. bpy/ops/export_scene.py +0 -577
  725. bpy/ops/file.py +0 -787
  726. bpy/ops/fluid.py +0 -224
  727. bpy/ops/font.py +0 -537
  728. bpy/ops/geometry.py +0 -219
  729. bpy/ops/gizmogroup.py +0 -52
  730. bpy/ops/gpencil.py +0 -3247
  731. bpy/ops/graph.py +0 -1392
  732. bpy/ops/grease_pencil.py +0 -724
  733. bpy/ops/image.py +0 -1261
  734. bpy/ops/import_anim.py +0 -58
  735. bpy/ops/import_curve.py +0 -26
  736. bpy/ops/import_mesh.py +0 -50
  737. bpy/ops/import_scene.py +0 -191
  738. bpy/ops/info.py +0 -140
  739. bpy/ops/lattice.py +0 -153
  740. bpy/ops/marker.py +0 -238
  741. bpy/ops/mask.py +0 -747
  742. bpy/ops/material.py +0 -47
  743. bpy/ops/mball.py +0 -168
  744. bpy/ops/mesh.py +0 -4168
  745. bpy/ops/nla.py +0 -756
  746. bpy/ops/node.py +0 -1894
  747. bpy/ops/object.py +0 -5343
  748. bpy/ops/outliner.py +0 -1172
  749. bpy/ops/paint.py +0 -1067
  750. bpy/ops/paintcurve.py +0 -148
  751. bpy/ops/palette.py +0 -123
  752. bpy/ops/particle.py +0 -635
  753. bpy/ops/pose.py +0 -763
  754. bpy/ops/poselib.py +0 -173
  755. bpy/ops/preferences.py +0 -849
  756. bpy/ops/ptcache.py +0 -114
  757. bpy/ops/render.py +0 -262
  758. bpy/ops/rigidbody.py +0 -244
  759. bpy/ops/scene.py +0 -675
  760. bpy/ops/screen.py +0 -846
  761. bpy/ops/script.py +0 -60
  762. bpy/ops/sculpt.py +0 -862
  763. bpy/ops/sculpt_curves.py +0 -94
  764. bpy/ops/sequencer.py +0 -2165
  765. bpy/ops/sound.py +0 -395
  766. bpy/ops/spreadsheet.py +0 -76
  767. bpy/ops/surface.py +0 -215
  768. bpy/ops/text.py +0 -863
  769. bpy/ops/text_editor.py +0 -31
  770. bpy/ops/texture.py +0 -68
  771. bpy/ops/transform.py +0 -1545
  772. bpy/ops/ui.py +0 -536
  773. bpy/ops/uilist.py +0 -74
  774. bpy/ops/uv.py +0 -1251
  775. bpy/ops/view2d.py +0 -329
  776. bpy/ops/view3d.py +0 -1392
  777. bpy/ops/wm.py +0 -4821
  778. bpy/ops/workspace.py +0 -115
  779. bpy/ops/world.py +0 -19
  780. bpy/path.py +0 -194
  781. bpy/props.py +0 -509
  782. bpy/types.py +0 -131806
  783. bpy/utils/__init__.py +0 -429
  784. bpy/utils/previews.py +0 -73
  785. bpy/utils/units.py +0 -61
  786. bpy_extras/__init__.py +0 -18
  787. bpy_extras/anim_utils.py +0 -108
  788. bpy_extras/asset_utils.py +0 -39
  789. bpy_extras/bmesh_utils.py +0 -20
  790. bpy_extras/extensions/junction_module.py +0 -48
  791. bpy_extras/id_map_utils.py +0 -28
  792. bpy_extras/image_utils.py +0 -42
  793. bpy_extras/io_utils.py +0 -165
  794. bpy_extras/keyconfig_utils.py +0 -28
  795. bpy_extras/mesh_utils.py +0 -91
  796. bpy_extras/node_shader_utils.py +0 -562
  797. bpy_extras/node_utils.py +0 -28
  798. bpy_extras/object_utils.py +0 -87
  799. bpy_extras/view3d_utils.py +0 -90
  800. bpy_extras/wm_utils/progress_report.py +0 -98
  801. bpy_restrict_state/__init__.py +0 -24
  802. bpy_types/__init__.py +0 -5189
  803. console_python/__init__.py +0 -71
  804. console_shell/__init__.py +0 -44
  805. fake_bpy_module-20231205.dist-info/METADATA +0 -175
  806. fake_bpy_module-20231205.dist-info/RECORD +0 -356
  807. freestyle/chainingiterators.py +0 -306
  808. freestyle/functions.py +0 -1270
  809. freestyle/predicates.py +0 -535
  810. freestyle/shaders.py +0 -872
  811. freestyle/types.py +0 -2409
  812. freestyle/utils/ContextFunctions.py +0 -127
  813. freestyle/utils/__init__.py +0 -246
  814. gpu/capabilities.py +0 -186
  815. gpu/matrix.py +0 -162
  816. gpu/platform.py +0 -54
  817. gpu/select.py +0 -15
  818. gpu/shader.py +0 -38
  819. gpu/state.py +0 -214
  820. gpu/texture.py +0 -18
  821. gpu/types.py +0 -698
  822. gpu_extras/batch.py +0 -25
  823. gpu_extras/presets.py +0 -43
  824. graphviz_export/__init__.py +0 -21
  825. idprop/types.py +0 -98
  826. imbuf/__init__.py +0 -44
  827. imbuf/types.py +0 -70
  828. keyingsets_builtins/__init__.py +0 -4028
  829. keyingsets_utils/__init__.py +0 -116
  830. mathutils/__init__.py +0 -2917
  831. mathutils/bvhtree.py +0 -124
  832. mathutils/geometry.py +0 -526
  833. mathutils/interpolate.py +0 -16
  834. mathutils/kdtree.py +0 -77
  835. mathutils/noise.py +0 -342
  836. nodeitems_builtins/__init__.py +0 -69
  837. nodeitems_utils/__init__.py +0 -86
  838. rna_info/__init__.py +0 -343
  839. rna_keymap_ui/__init__.py +0 -52
  840. rna_prop_ui/__init__.py +0 -109
  841. rna_xml/__init__.py +0 -53
  842. sys_info/__init__.py +0 -12
  843. /bl_console_utils/{__init__.py → __init__.pyi} +0 -0
  844. /bl_operators/bmesh/{__init__.py → __init__.pyi} +0 -0
  845. /bl_previews_utils/{__init__.py → __init__.pyi} +0 -0
  846. /bl_rna_utils/{__init__.py → __init__.pyi} +0 -0
  847. /bl_text_utils/{__init__.py → __init__.pyi} +0 -0
  848. /bpy_extras/extensions/{__init__.py → __init__.pyi} +0 -0
  849. /bpy_extras/wm_utils/{__init__.py → __init__.pyi} +0 -0
  850. {fake_bpy_module-20231205.dist-info → fake_bpy_module-20231207.dist-info}/WHEEL +0 -0
  851. {fake_bpy_module-20231205.dist-info → fake_bpy_module-20231207.dist-info}/top_level.txt +0 -0
  852. /freestyle/{__init__.py → __init__.pyi} +0 -0
  853. /gpu/{__init__.py → __init__.pyi} +0 -0
  854. /gpu_extras/{__init__.py → __init__.pyi} +0 -0
  855. /idprop/{__init__.py → __init__.pyi} +0 -0
@@ -0,0 +1,2407 @@
1
+ import sys
2
+ import typing
3
+ import mathutils
4
+
5
+ GenericType = typing.TypeVar("GenericType")
6
+
7
+
8
+ class AdjacencyIterator:
9
+ ''' Class hierarchy: `Iterator` > `AdjacencyIterator` Class for representing adjacency iterators used in the chaining process. An AdjacencyIterator is created in the increment() and decrement() methods of a `ChainingIterator` and passed to the traverse() method of the ChainingIterator.
10
+ '''
11
+
12
+ is_incoming: bool
13
+ ''' True if the current ViewEdge is coming towards the iteration vertex, and False otherwise.
14
+
15
+ :type: bool
16
+ '''
17
+
18
+ object: 'ViewEdge'
19
+ ''' The ViewEdge object currently pointed to by this iterator.
20
+
21
+ :type: 'ViewEdge'
22
+ '''
23
+
24
+ def __init__(self):
25
+ ''' __init__(brother) __init__(vertex, restrict_to_selection=True, restrict_to_unvisited=True) Builds an `AdjacencyIterator` using the default constructor, copy constructor or the overloaded constructor.
26
+
27
+ :param brother: An AdjacencyIterator object.
28
+ :type brother: 'AdjacencyIterator'
29
+ :param vertex: The vertex which is the next crossing.
30
+ :type vertex: 'ViewVertex'
31
+ :param restrict_to_selection: Indicates whether to force the chaining to stay within the set of selected ViewEdges or not.
32
+ :type restrict_to_selection: bool
33
+ :param restrict_to_unvisited: Indicates whether a ViewEdge that has already been chained must be ignored ot not.
34
+ :type restrict_to_unvisited: bool
35
+ '''
36
+ ...
37
+
38
+
39
+ class BBox:
40
+ ''' Class for representing a bounding box.
41
+ '''
42
+
43
+ def __init__(self):
44
+ ''' Default constructor.
45
+
46
+ '''
47
+ ...
48
+
49
+
50
+ class BinaryPredicate0D:
51
+ ''' Base class for binary predicates working on `Interface0D` objects. A BinaryPredicate0D is typically an ordering relation between two Interface0D objects. The predicate evaluates a relation between the two Interface0D instances and returns a boolean value (true or false). It is used by invoking the __call__() method.
52
+ '''
53
+
54
+ name: str
55
+ ''' The name of the binary 0D predicate.
56
+
57
+ :type: str
58
+ '''
59
+
60
+ def __init__(self):
61
+ ''' Default constructor.
62
+
63
+ '''
64
+ ...
65
+
66
+ def __call__(self, inter1: 'Interface0D', inter2: 'Interface0D') -> bool:
67
+ ''' Must be overload by inherited classes. It evaluates a relation between two Interface0D objects.
68
+
69
+ :param inter1: The first Interface0D object.
70
+ :type inter1: 'Interface0D'
71
+ :param inter2: The second Interface0D object.
72
+ :type inter2: 'Interface0D'
73
+ :rtype: bool
74
+ :return: True or false.
75
+ '''
76
+ ...
77
+
78
+
79
+ class BinaryPredicate1D:
80
+ ''' Base class for binary predicates working on `Interface1D` objects. A BinaryPredicate1D is typically an ordering relation between two Interface1D objects. The predicate evaluates a relation between the two Interface1D instances and returns a boolean value (true or false). It is used by invoking the __call__() method.
81
+ '''
82
+
83
+ name: str
84
+ ''' The name of the binary 1D predicate.
85
+
86
+ :type: str
87
+ '''
88
+
89
+ def __init__(self):
90
+ ''' Default constructor.
91
+
92
+ '''
93
+ ...
94
+
95
+ def __call__(self, inter1: 'Interface1D', inter2: 'Interface1D') -> bool:
96
+ ''' Must be overload by inherited classes. It evaluates a relation between two Interface1D objects.
97
+
98
+ :param inter1: The first Interface1D object.
99
+ :type inter1: 'Interface1D'
100
+ :param inter2: The second Interface1D object.
101
+ :type inter2: 'Interface1D'
102
+ :rtype: bool
103
+ :return: True or false.
104
+ '''
105
+ ...
106
+
107
+
108
+ class Chain:
109
+ ''' Class hierarchy: `Interface1D` > `Curve` > `Chain` Class to represent a 1D elements issued from the chaining process. A Chain is the last step before the `Stroke` and is used in the Splitting and Creation processes.
110
+ '''
111
+
112
+ def __init__(self):
113
+ ''' __init__(brother) __init__(id) Builds a `Chain` using the default constructor, copy constructor or from an `Id`.
114
+
115
+ :param brother: A Chain object.
116
+ :type brother: 'Chain'
117
+ :param id: An Id object.
118
+ :type id: 'Id'
119
+ '''
120
+ ...
121
+
122
+ def push_viewedge_back(self, viewedge: 'ViewEdge', orientation: bool):
123
+ ''' Adds a ViewEdge at the end of the Chain.
124
+
125
+ :param viewedge: The ViewEdge that must be added.
126
+ :type viewedge: 'ViewEdge'
127
+ :param orientation: The orientation with which the ViewEdge must be processed.
128
+ :type orientation: bool
129
+ '''
130
+ ...
131
+
132
+ def push_viewedge_front(self, viewedge: 'ViewEdge', orientation: bool):
133
+ ''' Adds a ViewEdge at the beginning of the Chain.
134
+
135
+ :param viewedge: The ViewEdge that must be added.
136
+ :type viewedge: 'ViewEdge'
137
+ :param orientation: The orientation with which the ViewEdge must be processed.
138
+ :type orientation: bool
139
+ '''
140
+ ...
141
+
142
+
143
+ class ChainingIterator:
144
+ ''' Class hierarchy: `Iterator` > `ViewEdgeIterator` > `ChainingIterator` Base class for chaining iterators. This class is designed to be overloaded in order to describe chaining rules. It makes the description of chaining rules easier. The two main methods that need to overloaded are traverse() and init(). traverse() tells which `ViewEdge` to follow, among the adjacent ones. If you specify restriction rules (such as "Chain only ViewEdges of the selection"), they will be included in the adjacency iterator (i.e, the adjacent iterator will only stop on "valid" edges).
145
+ '''
146
+
147
+ is_incrementing: bool
148
+ ''' True if the current iteration is an incrementation.
149
+
150
+ :type: bool
151
+ '''
152
+
153
+ next_vertex: 'ViewVertex'
154
+ ''' The ViewVertex that is the next crossing.
155
+
156
+ :type: 'ViewVertex'
157
+ '''
158
+
159
+ object: 'ViewEdge'
160
+ ''' The ViewEdge object currently pointed by this iterator.
161
+
162
+ :type: 'ViewEdge'
163
+ '''
164
+
165
+ def __init__(self,
166
+ restrict_to_selection: bool = True,
167
+ restrict_to_unvisited: bool = True,
168
+ begin: typing.Optional['ViewEdge'] = None,
169
+ orientation: bool = True):
170
+ ''' __init__(brother) Builds a Chaining Iterator from the first ViewEdge used for iteration and its orientation or by using the copy constructor.
171
+
172
+ :param restrict_to_selection: Indicates whether to force the chaining to stay within the set of selected ViewEdges or not.
173
+ :type restrict_to_selection: bool
174
+ :param restrict_to_unvisited: Indicates whether a ViewEdge that has already been chained must be ignored ot not.
175
+ :type restrict_to_unvisited: bool
176
+ :param begin: The ViewEdge from which to start the chain.
177
+ :type begin: typing.Optional['ViewEdge']
178
+ :param orientation: The direction to follow to explore the graph. If true, the direction indicated by the first ViewEdge is used.
179
+ :type orientation: bool
180
+ :param brother:
181
+ :type brother: 'ChainingIterator'
182
+ '''
183
+ ...
184
+
185
+ def init(self):
186
+ ''' Initializes the iterator context. This method is called each time a new chain is started. It can be used to reset some history information that you might want to keep.
187
+
188
+ '''
189
+ ...
190
+
191
+ def traverse(self, it: 'AdjacencyIterator') -> 'ViewEdge':
192
+ ''' This method iterates over the potential next ViewEdges and returns the one that will be followed next. Returns the next ViewEdge to follow or None when the end of the chain is reached.
193
+
194
+ :param it: The iterator over the ViewEdges adjacent to the end vertex of the current ViewEdge. The adjacency iterator reflects the restriction rules by only iterating over the valid ViewEdges.
195
+ :type it: 'AdjacencyIterator'
196
+ :rtype: 'ViewEdge'
197
+ :return: Returns the next ViewEdge to follow, or None if chaining ends.
198
+ '''
199
+ ...
200
+
201
+
202
+ class Curve:
203
+ ''' Class hierarchy: `Interface1D` > `Curve` Base class for curves made of CurvePoints. `SVertex` is the type of the initial curve vertices. A `Chain` is a specialization of a Curve.
204
+ '''
205
+
206
+ is_empty: bool
207
+ ''' True if the Curve doesn't have any Vertex yet.
208
+
209
+ :type: bool
210
+ '''
211
+
212
+ segments_size: int
213
+ ''' The number of segments in the polyline constituting the Curve.
214
+
215
+ :type: int
216
+ '''
217
+
218
+ def __init__(self):
219
+ ''' __init__(brother) __init__(id) Builds a `FrsCurve` using a default constructor, copy constructor or from an `Id`.
220
+
221
+ :param brother: A Curve object.
222
+ :type brother: 'Curve'
223
+ :param id: An Id object.
224
+ :type id: 'Id'
225
+ '''
226
+ ...
227
+
228
+ def push_vertex_back(self, vertex: typing.Union['SVertex', 'CurvePoint']):
229
+ ''' Adds a single vertex at the end of the Curve.
230
+
231
+ :param vertex: A vertex object.
232
+ :type vertex: typing.Union['SVertex', 'CurvePoint']
233
+ '''
234
+ ...
235
+
236
+ def push_vertex_front(self, vertex: typing.Union['SVertex', 'CurvePoint']):
237
+ ''' Adds a single vertex at the front of the Curve.
238
+
239
+ :param vertex: A vertex object.
240
+ :type vertex: typing.Union['SVertex', 'CurvePoint']
241
+ '''
242
+ ...
243
+
244
+
245
+ class CurvePoint:
246
+ ''' Class hierarchy: `Interface0D` > `CurvePoint` Class to represent a point of a curve. A CurvePoint can be any point of a 1D curve (it doesn't have to be a vertex of the curve). Any `Interface1D` is built upon ViewEdges, themselves built upon FEdges. Therefore, a curve is basically a polyline made of a list of `SVertex` objects. Thus, a CurvePoint is built by linearly interpolating two `SVertex` instances. CurvePoint can be used as virtual points while querying 0D information along a curve at a given resolution.
247
+ '''
248
+
249
+ fedge: 'FEdge'
250
+ ''' Gets the FEdge for the two SVertices that given CurvePoints consists out of. A shortcut for CurvePoint.first_svertex.get_fedge(CurvePoint.second_svertex).
251
+
252
+ :type: 'FEdge'
253
+ '''
254
+
255
+ first_svertex: 'SVertex'
256
+ ''' The first SVertex upon which the CurvePoint is built.
257
+
258
+ :type: 'SVertex'
259
+ '''
260
+
261
+ second_svertex: 'SVertex'
262
+ ''' The second SVertex upon which the CurvePoint is built.
263
+
264
+ :type: 'SVertex'
265
+ '''
266
+
267
+ t2d: float
268
+ ''' The 2D interpolation parameter.
269
+
270
+ :type: float
271
+ '''
272
+
273
+ def __init__(self):
274
+ ''' __init__(brother) __init__(first_vertex, second_vertex, t2d) __init__(first_point, second_point, t2d) Builds a CurvePoint using the default constructor, copy constructor, or one of the overloaded constructors. The over loaded constructors can either take two `SVertex` or two `CurvePoint` objects and an interpolation parameter
275
+
276
+ :param brother: A CurvePoint object.
277
+ :type brother: 'CurvePoint'
278
+ :param first_vertex: The first SVertex.
279
+ :type first_vertex: 'SVertex'
280
+ :param second_vertex: The second SVertex.
281
+ :type second_vertex: 'SVertex'
282
+ :param first_point: The first CurvePoint.
283
+ :type first_point: 'CurvePoint'
284
+ :param second_point: The second CurvePoint.
285
+ :type second_point: 'CurvePoint'
286
+ :param t2d: A 2D interpolation parameter used to linearly interpolate first_vertex and second_vertex or first_point and second_point.
287
+ :type t2d: float
288
+ '''
289
+ ...
290
+
291
+
292
+ class CurvePointIterator:
293
+ ''' Class hierarchy: `Iterator` > `CurvePointIterator` Class representing an iterator on a curve. Allows an iterating outside initial vertices. A CurvePoint is instantiated and returned through the .object attribute.
294
+ '''
295
+
296
+ object: 'CurvePoint'
297
+ ''' The CurvePoint object currently pointed by this iterator.
298
+
299
+ :type: 'CurvePoint'
300
+ '''
301
+
302
+ t: float
303
+ ''' The curvilinear abscissa of the current point.
304
+
305
+ :type: float
306
+ '''
307
+
308
+ u: float
309
+ ''' The point parameter at the current point in the stroke (0 <= u <= 1).
310
+
311
+ :type: float
312
+ '''
313
+
314
+ def __init__(self):
315
+ ''' __init__(brother) __init__(step=0.0) Builds a CurvePointIterator object using either the default constructor, copy constructor, or the overloaded constructor.
316
+
317
+ :param brother: A CurvePointIterator object.
318
+ :type brother: 'CurvePointIterator'
319
+ :param step: A resampling resolution with which the curve is resampled. If zero, no resampling is done (i.e., the iterator iterates over initial vertices).
320
+ :type step: float
321
+ '''
322
+ ...
323
+
324
+
325
+ class FEdge:
326
+ ''' Class hierarchy: `Interface1D` > `FEdge` Base Class for feature edges. This FEdge can represent a silhouette, a crease, a ridge/valley, a border or a suggestive contour. For silhouettes, the FEdge is oriented so that the visible face lies on the left of the edge. For borders, the FEdge is oriented so that the face lies on the left of the edge. An FEdge can represent an initial edge of the mesh or runs across a face of the initial mesh depending on the smoothness or sharpness of the mesh. This class is specialized into a smooth and a sharp version since their properties slightly vary from one to the other.
327
+ '''
328
+
329
+ first_svertex: 'SVertex'
330
+ ''' The first SVertex constituting this FEdge.
331
+
332
+ :type: 'SVertex'
333
+ '''
334
+
335
+ id: 'Id'
336
+ ''' The Id of this FEdge.
337
+
338
+ :type: 'Id'
339
+ '''
340
+
341
+ is_smooth: bool
342
+ ''' True if this FEdge is a smooth FEdge.
343
+
344
+ :type: bool
345
+ '''
346
+
347
+ nature: 'Nature'
348
+ ''' The nature of this FEdge.
349
+
350
+ :type: 'Nature'
351
+ '''
352
+
353
+ next_fedge: 'FEdge'
354
+ ''' The FEdge following this one in the ViewEdge. The value is None if this FEdge is the last of the ViewEdge.
355
+
356
+ :type: 'FEdge'
357
+ '''
358
+
359
+ previous_fedge: 'FEdge'
360
+ ''' The FEdge preceding this one in the ViewEdge. The value is None if this FEdge is the first one of the ViewEdge.
361
+
362
+ :type: 'FEdge'
363
+ '''
364
+
365
+ second_svertex: 'SVertex'
366
+ ''' The second SVertex constituting this FEdge.
367
+
368
+ :type: 'SVertex'
369
+ '''
370
+
371
+ viewedge: 'ViewEdge'
372
+ ''' The ViewEdge to which this FEdge belongs to.
373
+
374
+ :type: 'ViewEdge'
375
+ '''
376
+
377
+ def FEdge(self):
378
+ ''' FEdge(brother) Builds an `FEdge` using the default constructor, copy constructor, or between two `SVertex` objects.
379
+
380
+ :param brother: An FEdge object.
381
+ :type brother: 'FEdge'
382
+ :param first_vertex: The first SVertex.
383
+ :type first_vertex: 'SVertex'
384
+ :param second_vertex: The second SVertex.
385
+ :type second_vertex: 'SVertex'
386
+ '''
387
+ ...
388
+
389
+
390
+ class FEdgeSharp:
391
+ ''' Class hierarchy: `Interface1D` > `FEdge` > `FEdgeSharp` Class defining a sharp FEdge. A Sharp FEdge corresponds to an initial edge of the input mesh. It can be a silhouette, a crease or a border. If it is a crease edge, then it is bordered by two faces of the mesh. Face a lies on its right whereas Face b lies on its left. If it is a border edge, then it doesn't have any face on its right, and thus Face a is None.
392
+ '''
393
+
394
+ face_mark_left: bool
395
+ ''' The face mark of the face lying on the left of the FEdge.
396
+
397
+ :type: bool
398
+ '''
399
+
400
+ face_mark_right: bool
401
+ ''' The face mark of the face lying on the right of the FEdge. If this FEdge is a border, it has no face on the right and thus this property is set to false.
402
+
403
+ :type: bool
404
+ '''
405
+
406
+ material_index_left: int
407
+ ''' The index of the material of the face lying on the left of the FEdge.
408
+
409
+ :type: int
410
+ '''
411
+
412
+ material_index_right: int
413
+ ''' The index of the material of the face lying on the right of the FEdge. If this FEdge is a border, it has no Face on its right and therefore no material.
414
+
415
+ :type: int
416
+ '''
417
+
418
+ material_left: 'Material'
419
+ ''' The material of the face lying on the left of the FEdge.
420
+
421
+ :type: 'Material'
422
+ '''
423
+
424
+ material_right: 'Material'
425
+ ''' The material of the face lying on the right of the FEdge. If this FEdge is a border, it has no Face on its right and therefore no material.
426
+
427
+ :type: 'Material'
428
+ '''
429
+
430
+ normal_left: typing.Union[typing.Sequence[float], 'mathutils.Vector']
431
+ ''' The normal to the face lying on the left of the FEdge.
432
+
433
+ :type: typing.Union[typing.Sequence[float], 'mathutils.Vector']
434
+ '''
435
+
436
+ normal_right: typing.Union[typing.Sequence[float], 'mathutils.Vector']
437
+ ''' The normal to the face lying on the right of the FEdge. If this FEdge is a border, it has no Face on its right and therefore no normal.
438
+
439
+ :type: typing.Union[typing.Sequence[float], 'mathutils.Vector']
440
+ '''
441
+
442
+ def __init__(self):
443
+ ''' __init__(brother) __init__(first_vertex, second_vertex) Builds an `FEdgeSharp` using the default constructor, copy constructor, or between two `SVertex` objects.
444
+
445
+ :param brother: An FEdgeSharp object.
446
+ :type brother: 'FEdgeSharp'
447
+ :param first_vertex: The first SVertex object.
448
+ :type first_vertex: 'SVertex'
449
+ :param second_vertex: The second SVertex object.
450
+ :type second_vertex: 'SVertex'
451
+ '''
452
+ ...
453
+
454
+
455
+ class FEdgeSmooth:
456
+ ''' Class hierarchy: `Interface1D` > `FEdge` > `FEdgeSmooth` Class defining a smooth edge. This kind of edge typically runs across a face of the input mesh. It can be a silhouette, a ridge or valley, a suggestive contour.
457
+ '''
458
+
459
+ face_mark: bool
460
+ ''' The face mark of the face that this FEdge is running across.
461
+
462
+ :type: bool
463
+ '''
464
+
465
+ material: 'Material'
466
+ ''' The material of the face that this FEdge is running across.
467
+
468
+ :type: 'Material'
469
+ '''
470
+
471
+ material_index: int
472
+ ''' The index of the material of the face that this FEdge is running across.
473
+
474
+ :type: int
475
+ '''
476
+
477
+ normal: typing.Union[typing.Sequence[float], 'mathutils.Vector']
478
+ ''' The normal of the face that this FEdge is running across.
479
+
480
+ :type: typing.Union[typing.Sequence[float], 'mathutils.Vector']
481
+ '''
482
+
483
+ def __init__(self):
484
+ ''' __init__(brother) __init__(first_vertex, second_vertex) Builds an `FEdgeSmooth` using the default constructor, copy constructor, or between two `SVertex`.
485
+
486
+ :param brother: An FEdgeSmooth object.
487
+ :type brother: 'FEdgeSmooth'
488
+ :param first_vertex: The first SVertex object.
489
+ :type first_vertex: 'SVertex'
490
+ :param second_vertex: The second SVertex object.
491
+ :type second_vertex: 'SVertex'
492
+ '''
493
+ ...
494
+
495
+
496
+ class Id:
497
+ ''' Class for representing an object Id.
498
+ '''
499
+
500
+ first: int
501
+ ''' The first number constituting the Id.
502
+
503
+ :type: int
504
+ '''
505
+
506
+ second: int
507
+ ''' The second number constituting the Id.
508
+
509
+ :type: int
510
+ '''
511
+
512
+ def __init__(self, brother: 'Id'):
513
+ ''' __init__(first=0, second=0) Build the Id from two numbers or another `Id` using the copy constructor.
514
+
515
+ :param brother: An Id object.
516
+ :type brother: 'Id'
517
+ :param first:
518
+ :type first: int
519
+ :param second: The second number.
520
+ :type second: int
521
+ '''
522
+ ...
523
+
524
+
525
+ class IntegrationType:
526
+ ''' Class hierarchy: int > `IntegrationType` Different integration methods that can be invoked to integrate into a single value the set of values obtained from each 0D element of an 1D element: * IntegrationType.MEAN: The value computed for the 1D element is the mean of the values obtained for the 0D elements. * IntegrationType.MIN: The value computed for the 1D element is the minimum of the values obtained for the 0D elements. * IntegrationType.MAX: The value computed for the 1D element is the maximum of the values obtained for the 0D elements. * IntegrationType.FIRST: The value computed for the 1D element is the first of the values obtained for the 0D elements. * IntegrationType.LAST: The value computed for the 1D element is the last of the values obtained for the 0D elements.
527
+ '''
528
+
529
+ ...
530
+
531
+
532
+ class Interface0D:
533
+ ''' Base class for any 0D element.
534
+ '''
535
+
536
+ id: 'Id'
537
+ ''' The Id of this 0D element.
538
+
539
+ :type: 'Id'
540
+ '''
541
+
542
+ name: str
543
+ ''' The string of the name of this 0D element.
544
+
545
+ :type: str
546
+ '''
547
+
548
+ nature: 'Nature'
549
+ ''' The nature of this 0D element.
550
+
551
+ :type: 'Nature'
552
+ '''
553
+
554
+ point_2d: typing.Union[typing.Sequence[float], 'mathutils.Vector']
555
+ ''' The 2D point of this 0D element.
556
+
557
+ :type: typing.Union[typing.Sequence[float], 'mathutils.Vector']
558
+ '''
559
+
560
+ point_3d: typing.Union[typing.Sequence[float], 'mathutils.Vector']
561
+ ''' The 3D point of this 0D element.
562
+
563
+ :type: typing.Union[typing.Sequence[float], 'mathutils.Vector']
564
+ '''
565
+
566
+ projected_x: float
567
+ ''' The X coordinate of the projected 3D point of this 0D element.
568
+
569
+ :type: float
570
+ '''
571
+
572
+ projected_y: float
573
+ ''' The Y coordinate of the projected 3D point of this 0D element.
574
+
575
+ :type: float
576
+ '''
577
+
578
+ projected_z: float
579
+ ''' The Z coordinate of the projected 3D point of this 0D element.
580
+
581
+ :type: float
582
+ '''
583
+
584
+ def __init__(self):
585
+ ''' Default constructor.
586
+
587
+ '''
588
+ ...
589
+
590
+ def get_fedge(self, inter: 'Interface0D') -> 'FEdge':
591
+ ''' Returns the FEdge that lies between this 0D element and the 0D element given as the argument.
592
+
593
+ :param inter: A 0D element.
594
+ :type inter: 'Interface0D'
595
+ :rtype: 'FEdge'
596
+ :return: The FEdge lying between the two 0D elements.
597
+ '''
598
+ ...
599
+
600
+
601
+ class Interface0DIterator:
602
+ ''' Class hierarchy: `Iterator` > `Interface0DIterator` Class defining an iterator over Interface0D elements. An instance of this iterator is always obtained from a 1D element.
603
+ '''
604
+
605
+ at_last: bool
606
+ ''' True if the iterator points to the last valid element. For its counterpart (pointing to the first valid element), use it.is_begin.
607
+
608
+ :type: bool
609
+ '''
610
+
611
+ object: 'Interface0D'
612
+ ''' The 0D object currently pointed to by this iterator. Note that the object may be an instance of an Interface0D subclass. For example if the iterator has been created from the `vertices_begin()` method of the `Stroke` class, the .object property refers to a `StrokeVertex` object.
613
+
614
+ :type: 'Interface0D'
615
+ '''
616
+
617
+ t: float
618
+ ''' The curvilinear abscissa of the current point.
619
+
620
+ :type: float
621
+ '''
622
+
623
+ u: float
624
+ ''' The point parameter at the current point in the 1D element (0 <= u <= 1).
625
+
626
+ :type: float
627
+ '''
628
+
629
+ def __init__(self, brother: 'Interface0DIterator'):
630
+ ''' __init__(it) Construct a nested Interface0DIterator using either the copy constructor or the constructor that takes an he argument of a Function0D.
631
+
632
+ :param brother: An Interface0DIterator object.
633
+ :type brother: 'Interface0DIterator'
634
+ :param it: An iterator object to be nested.
635
+ :type it: typing.Union['SVertexIterator', 'CurvePointIterator', typing.Any, 'StrokeVertexIterator']
636
+ '''
637
+ ...
638
+
639
+
640
+ class Interface1D:
641
+ ''' Base class for any 1D element.
642
+ '''
643
+
644
+ id: 'Id'
645
+ ''' The Id of this Interface1D.
646
+
647
+ :type: 'Id'
648
+ '''
649
+
650
+ length_2d: float
651
+ ''' The 2D length of this Interface1D.
652
+
653
+ :type: float
654
+ '''
655
+
656
+ name: str
657
+ ''' The string of the name of the 1D element.
658
+
659
+ :type: str
660
+ '''
661
+
662
+ nature: 'Nature'
663
+ ''' The nature of this Interface1D.
664
+
665
+ :type: 'Nature'
666
+ '''
667
+
668
+ time_stamp: int
669
+ ''' The time stamp of the 1D element, mainly used for selection.
670
+
671
+ :type: int
672
+ '''
673
+
674
+ def __init__(self):
675
+ ''' Default constructor.
676
+
677
+ '''
678
+ ...
679
+
680
+ def points_begin(self, t: float = 0.0) -> 'Interface0DIterator':
681
+ ''' Returns an iterator over the Interface1D points, pointing to the first point. The difference with vertices_begin() is that here we can iterate over points of the 1D element at a any given sampling. Indeed, for each iteration, a virtual point is created.
682
+
683
+ :param t: A sampling with which we want to iterate over points of this 1D element.
684
+ :type t: float
685
+ :rtype: 'Interface0DIterator'
686
+ :return: An Interface0DIterator pointing to the first point.
687
+ '''
688
+ ...
689
+
690
+ def points_end(self, t: float = 0.0) -> 'Interface0DIterator':
691
+ ''' Returns an iterator over the Interface1D points, pointing after the last point. The difference with vertices_end() is that here we can iterate over points of the 1D element at a given sampling. Indeed, for each iteration, a virtual point is created.
692
+
693
+ :param t: A sampling with which we want to iterate over points of this 1D element.
694
+ :type t: float
695
+ :rtype: 'Interface0DIterator'
696
+ :return: An Interface0DIterator pointing after the last point.
697
+ '''
698
+ ...
699
+
700
+ def vertices_begin(self) -> 'Interface0DIterator':
701
+ ''' Returns an iterator over the Interface1D vertices, pointing to the first vertex.
702
+
703
+ :rtype: 'Interface0DIterator'
704
+ :return: An Interface0DIterator pointing to the first vertex.
705
+ '''
706
+ ...
707
+
708
+ def vertices_end(self) -> 'Interface0DIterator':
709
+ ''' Returns an iterator over the Interface1D vertices, pointing after the last vertex.
710
+
711
+ :rtype: 'Interface0DIterator'
712
+ :return: An Interface0DIterator pointing after the last vertex.
713
+ '''
714
+ ...
715
+
716
+
717
+ class Iterator:
718
+ ''' Base class to define iterators.
719
+ '''
720
+
721
+ is_begin: bool
722
+ ''' True if the iterator points to the first element.
723
+
724
+ :type: bool
725
+ '''
726
+
727
+ is_end: bool
728
+ ''' True if the iterator points to the last element.
729
+
730
+ :type: bool
731
+ '''
732
+
733
+ name: str
734
+ ''' The string of the name of this iterator.
735
+
736
+ :type: str
737
+ '''
738
+
739
+ def __init__(self):
740
+ ''' Default constructor.
741
+
742
+ '''
743
+ ...
744
+
745
+ def decrement(self):
746
+ ''' Makes the iterator point the previous element.
747
+
748
+ '''
749
+ ...
750
+
751
+ def increment(self):
752
+ ''' Makes the iterator point the next element.
753
+
754
+ '''
755
+ ...
756
+
757
+
758
+ class Material:
759
+ ''' Class defining a material.
760
+ '''
761
+
762
+ ambient: typing.Union[typing.Sequence[float], 'mathutils.Color']
763
+ ''' RGBA components of the ambient color of the material.
764
+
765
+ :type: typing.Union[typing.Sequence[float], 'mathutils.Color']
766
+ '''
767
+
768
+ diffuse: typing.Union[typing.Sequence[float], 'mathutils.Vector']
769
+ ''' RGBA components of the diffuse color of the material.
770
+
771
+ :type: typing.Union[typing.Sequence[float], 'mathutils.Vector']
772
+ '''
773
+
774
+ emission: typing.Union[typing.Sequence[float], 'mathutils.Color']
775
+ ''' RGBA components of the emissive color of the material.
776
+
777
+ :type: typing.Union[typing.Sequence[float], 'mathutils.Color']
778
+ '''
779
+
780
+ line: typing.Union[typing.Sequence[float], 'mathutils.Vector']
781
+ ''' RGBA components of the line color of the material.
782
+
783
+ :type: typing.Union[typing.Sequence[float], 'mathutils.Vector']
784
+ '''
785
+
786
+ priority: int
787
+ ''' Line color priority of the material.
788
+
789
+ :type: int
790
+ '''
791
+
792
+ shininess: float
793
+ ''' Shininess coefficient of the material.
794
+
795
+ :type: float
796
+ '''
797
+
798
+ specular: typing.Union[typing.Sequence[float], 'mathutils.Vector']
799
+ ''' RGBA components of the specular color of the material.
800
+
801
+ :type: typing.Union[typing.Sequence[float], 'mathutils.Vector']
802
+ '''
803
+
804
+ def __init__(self):
805
+ ''' __init__(brother) __init__(line, diffuse, ambient, specular, emission, shininess, priority) Creates a `FrsMaterial` using either default constructor, copy constructor, or an overloaded constructor
806
+
807
+ :param brother: A Material object to be used as a copy constructor.
808
+ :type brother: 'Material'
809
+ :param line: The line color.
810
+ :type line: typing.Union[typing.Sequence[float], 'mathutils.Vector', typing.List]
811
+ :param diffuse: The diffuse color.
812
+ :type diffuse: typing.Union[typing.Sequence[float], 'mathutils.Vector', typing.List]
813
+ :param ambient: The ambient color.
814
+ :type ambient: typing.Union[typing.Sequence[float], 'mathutils.Vector', typing.List]
815
+ :param specular: The specular color.
816
+ :type specular: typing.Union[typing.Sequence[float], 'mathutils.Vector', typing.List]
817
+ :param emission: The emissive color.
818
+ :type emission: typing.Union[typing.Sequence[float], 'mathutils.Vector', typing.List]
819
+ :param shininess: The shininess coefficient.
820
+ :type shininess: float
821
+ :param priority: The line color priority.
822
+ :type priority: int
823
+ '''
824
+ ...
825
+
826
+
827
+ class MediumType:
828
+ ''' Class hierarchy: int > `MediumType` The different blending modes available to simulate the interaction media-medium: * Stroke.DRY_MEDIUM: To simulate a dry medium such as Pencil or Charcoal. * Stroke.HUMID_MEDIUM: To simulate ink painting (color subtraction blending). * Stroke.OPAQUE_MEDIUM: To simulate an opaque medium (oil, spray...).
829
+ '''
830
+
831
+ ...
832
+
833
+
834
+ class Nature:
835
+ ''' Class hierarchy: int > `Nature` Different possible natures of 0D and 1D elements of the ViewMap. Vertex natures: * Nature.POINT: True for any 0D element. * Nature.S_VERTEX: True for SVertex. * Nature.VIEW_VERTEX: True for ViewVertex. * Nature.NON_T_VERTEX: True for NonTVertex. * Nature.T_VERTEX: True for TVertex. * Nature.CUSP: True for CUSP. Edge natures: * Nature.NO_FEATURE: True for non feature edges (always false for 1D elements of the ViewMap). * Nature.SILHOUETTE: True for silhouettes. * Nature.BORDER: True for borders. * Nature.CREASE: True for creases. * Nature.RIDGE: True for ridges. * Nature.VALLEY: True for valleys. * Nature.SUGGESTIVE_CONTOUR: True for suggestive contours. * Nature.MATERIAL_BOUNDARY: True for edges at material boundaries. * Nature.EDGE_MARK: True for edges having user-defined edge marks.
836
+ '''
837
+
838
+ ...
839
+
840
+
841
+ class Noise:
842
+ ''' Class to provide Perlin noise functionalities. Undocumented, consider `contributing <https://developer.blender.org/>`__. Undocumented, consider `contributing <https://developer.blender.org/>`__.
843
+ '''
844
+
845
+ def __init__(self, seed=' -1'):
846
+ ''' Builds a Noise object. Seed is an optional argument. The seed value is used as a seed for random number generation if it is equal to or greater than zero; otherwise, time is used as a seed.
847
+
848
+ :param seed: Seed for random number generation.
849
+ :type seed: int
850
+ '''
851
+ ...
852
+
853
+ def smoothNoise1(self, v: float) -> float:
854
+ ''' Returns a smooth noise value for a 1D element.
855
+
856
+ :param v: One-dimensional sample point.
857
+ :type v: float
858
+ :rtype: float
859
+ :return: A smooth noise value.
860
+ '''
861
+ ...
862
+
863
+ def smoothNoise2(
864
+ self,
865
+ v: typing.Union[typing.Sequence[float], 'mathutils.Vector', typing.
866
+ List]) -> float:
867
+ ''' Returns a smooth noise value for a 2D element.
868
+
869
+ :param v: Two-dimensional sample point.
870
+ :type v: typing.Union[typing.Sequence[float], 'mathutils.Vector', typing.List]
871
+ :rtype: float
872
+ :return: A smooth noise value.
873
+ '''
874
+ ...
875
+
876
+ def smoothNoise3(
877
+ self,
878
+ v: typing.Union[typing.Sequence[float], 'mathutils.Vector', typing.
879
+ List]) -> float:
880
+ ''' Returns a smooth noise value for a 3D element.
881
+
882
+ :param v: Three-dimensional sample point.
883
+ :type v: typing.Union[typing.Sequence[float], 'mathutils.Vector', typing.List]
884
+ :rtype: float
885
+ :return: A smooth noise value.
886
+ '''
887
+ ...
888
+
889
+ def turbulence1(self, v: float, freq: float, amp: float,
890
+ oct: int = 4) -> float:
891
+ ''' Returns a noise value for a 1D element.
892
+
893
+ :param v: One-dimensional sample point.
894
+ :type v: float
895
+ :param freq: Noise frequency.
896
+ :type freq: float
897
+ :param amp: Amplitude.
898
+ :type amp: float
899
+ :param oct: Number of octaves.
900
+ :type oct: int
901
+ :rtype: float
902
+ :return: A noise value.
903
+ '''
904
+ ...
905
+
906
+ def turbulence2(
907
+ self,
908
+ v: typing.Union[typing.Sequence[float], 'mathutils.Vector', typing.
909
+ List],
910
+ freq: float,
911
+ amp: float,
912
+ oct: int = 4) -> float:
913
+ ''' Returns a noise value for a 2D element.
914
+
915
+ :param v: Two-dimensional sample point.
916
+ :type v: typing.Union[typing.Sequence[float], 'mathutils.Vector', typing.List]
917
+ :param freq: Noise frequency.
918
+ :type freq: float
919
+ :param amp: Amplitude.
920
+ :type amp: float
921
+ :param oct: Number of octaves.
922
+ :type oct: int
923
+ :rtype: float
924
+ :return: A noise value.
925
+ '''
926
+ ...
927
+
928
+ def turbulence3(
929
+ self,
930
+ v: typing.Union[typing.Sequence[float], 'mathutils.Vector', typing.
931
+ List],
932
+ freq: float,
933
+ amp: float,
934
+ oct: int = 4) -> float:
935
+ ''' Returns a noise value for a 3D element.
936
+
937
+ :param v: Three-dimensional sample point.
938
+ :type v: typing.Union[typing.Sequence[float], 'mathutils.Vector', typing.List]
939
+ :param freq: Noise frequency.
940
+ :type freq: float
941
+ :param amp: Amplitude.
942
+ :type amp: float
943
+ :param oct: Number of octaves.
944
+ :type oct: int
945
+ :rtype: float
946
+ :return: A noise value.
947
+ '''
948
+ ...
949
+
950
+
951
+ class NonTVertex:
952
+ ''' Class hierarchy: `Interface0D` > `ViewVertex` > `NonTVertex` View vertex for corners, cusps, etc. associated to a single SVertex. Can be associated to 2 or more view edges.
953
+ '''
954
+
955
+ svertex: 'SVertex'
956
+ ''' The SVertex on top of which this NonTVertex is built.
957
+
958
+ :type: 'SVertex'
959
+ '''
960
+
961
+ def __init__(self):
962
+ ''' __init__(svertex) Builds a `NonTVertex` using the default constructor or a `SVertex`.
963
+
964
+ :param svertex: An SVertex object.
965
+ :type svertex: 'SVertex'
966
+ '''
967
+ ...
968
+
969
+
970
+ class Operators:
971
+ ''' Class defining the operators used in a style module. There are five types of operators: Selection, chaining, splitting, sorting and creation. All these operators are user controlled through functors, predicates and shaders that are taken as arguments.
972
+ '''
973
+
974
+ @staticmethod
975
+ def bidirectional_chain(it: 'ChainingIterator', pred: 'UnaryPredicate1D'):
976
+ ''' bidirectional_chain(it) Builds a set of chains from the current set of ViewEdges. Each ViewEdge of the current list potentially starts a new chain. The chaining operator then iterates over the ViewEdges of the ViewMap using the user specified iterator. This operator iterates both using the increment and decrement operators and is therefore bidirectional. This operator works with a ChainingIterator which contains the chaining rules. It is this last one which can be told to chain only edges that belong to the selection or not to process twice a ViewEdge during the chaining. Each time a ViewEdge is added to a chain, its chaining time stamp is incremented. This allows you to keep track of the number of chains to which a ViewEdge belongs to.
977
+
978
+ :param it: The ChainingIterator on the ViewEdges of the ViewMap. It contains the chaining rule.
979
+ :type it: 'ChainingIterator'
980
+ :param pred: The predicate on the ViewEdge that expresses the stopping condition. This parameter is optional, you make not want to pass a stopping criterion when the stopping criterion is already contained in the iterator definition.
981
+ :type pred: 'UnaryPredicate1D'
982
+ '''
983
+ ...
984
+
985
+ @staticmethod
986
+ def chain(it: 'ViewEdgeIterator', pred: 'UnaryPredicate1D',
987
+ modifier: 'UnaryFunction1DVoid'):
988
+ ''' chain(it, pred) Builds a set of chains from the current set of ViewEdges. Each ViewEdge of the current list starts a new chain. The chaining operator then iterates over the ViewEdges of the ViewMap using the user specified iterator. This operator only iterates using the increment operator and is therefore unidirectional.
989
+
990
+ :param it: The iterator on the ViewEdges of the ViewMap. It contains the chaining rule.
991
+ :type it: 'ViewEdgeIterator'
992
+ :param pred: The predicate on the ViewEdge that expresses the stopping condition.
993
+ :type pred: 'UnaryPredicate1D'
994
+ :param modifier: A function that takes a ViewEdge as argument and that is used to modify the processed ViewEdge state (the timestamp incrementation is a typical illustration of such a modifier). If this argument is not given, the time stamp is automatically managed.
995
+ :type modifier: 'UnaryFunction1DVoid'
996
+ '''
997
+ ...
998
+
999
+ @staticmethod
1000
+ def create(pred: 'UnaryPredicate1D', shaders: typing.List['StrokeShader']):
1001
+ ''' Creates and shades the strokes from the current set of chains. A predicate can be specified to make a selection pass on the chains.
1002
+
1003
+ :param pred: The predicate that a chain must verify in order to be transform as a stroke.
1004
+ :type pred: 'UnaryPredicate1D'
1005
+ :param shaders: The list of shaders used to shade the strokes.
1006
+ :type shaders: typing.List['StrokeShader']
1007
+ '''
1008
+ ...
1009
+
1010
+ @staticmethod
1011
+ def get_chain_from_index(i: int) -> 'Chain':
1012
+ ''' Returns the Chain at the index in the current set of Chains.
1013
+
1014
+ :param i: index (0 <= i < Operators.get_chains_size()).
1015
+ :type i: int
1016
+ :rtype: 'Chain'
1017
+ :return: The Chain object.
1018
+ '''
1019
+ ...
1020
+
1021
+ @staticmethod
1022
+ def get_chains_size() -> int:
1023
+ ''' Returns the number of Chains.
1024
+
1025
+ :rtype: int
1026
+ :return: The number of Chains.
1027
+ '''
1028
+ ...
1029
+
1030
+ @staticmethod
1031
+ def get_stroke_from_index(i: int) -> 'Stroke':
1032
+ ''' Returns the Stroke at the index in the current set of Strokes.
1033
+
1034
+ :param i: index (0 <= i < Operators.get_strokes_size()).
1035
+ :type i: int
1036
+ :rtype: 'Stroke'
1037
+ :return: The Stroke object.
1038
+ '''
1039
+ ...
1040
+
1041
+ @staticmethod
1042
+ def get_strokes_size() -> int:
1043
+ ''' Returns the number of Strokes.
1044
+
1045
+ :rtype: int
1046
+ :return: The number of Strokes.
1047
+ '''
1048
+ ...
1049
+
1050
+ @staticmethod
1051
+ def get_view_edges_size() -> int:
1052
+ ''' Returns the number of ViewEdges.
1053
+
1054
+ :rtype: int
1055
+ :return: The number of ViewEdges.
1056
+ '''
1057
+ ...
1058
+
1059
+ @staticmethod
1060
+ def get_viewedge_from_index(i: int) -> 'ViewEdge':
1061
+ ''' Returns the ViewEdge at the index in the current set of ViewEdges.
1062
+
1063
+ :param i: index (0 <= i < Operators.get_view_edges_size()).
1064
+ :type i: int
1065
+ :rtype: 'ViewEdge'
1066
+ :return: The ViewEdge object.
1067
+ '''
1068
+ ...
1069
+
1070
+ @staticmethod
1071
+ def recursive_split(func: 'UnaryFunction0DDouble',
1072
+ pred_1d: 'UnaryPredicate1D',
1073
+ sampling: float = 0.0):
1074
+ ''' recursive_split(func, pred_0d, pred_1d, sampling=0.0) Splits the current set of chains in a recursive way. We process the points of each chain (with a specified sampling) to find the point minimizing a specified function. The chain is split in two at this point and the two new chains are processed in the same way. The recursivity level is controlled through a predicate 1D that expresses a stopping condition on the chain that is about to be processed. The user can also specify a 0D predicate to make a first selection on the points that can potentially be split. A point that doesn't verify the 0D predicate won't be candidate in realizing the min.
1075
+
1076
+ :param func: The Unary Function evaluated at each point of the chain. The splitting point is the point minimizing this function.
1077
+ :type func: 'UnaryFunction0DDouble'
1078
+ :param pred_0d: The Unary Predicate 0D used to select the candidate points where the split can occur. For example, it is very likely that would rather have your chain splitting around its middle point than around one of its extremities. A 0D predicate working on the curvilinear abscissa allows to add this kind of constraints.
1079
+ :type pred_0d: 'UnaryPredicate0D'
1080
+ :param pred_1d: The Unary Predicate expressing the recursivity stopping condition. This predicate is evaluated for each curve before it actually gets split. If pred_1d(chain) is true, the curve won't be split anymore.
1081
+ :type pred_1d: 'UnaryPredicate1D'
1082
+ :param sampling: The resolution used to sample the chain for the predicates evaluation. (The chain is not actually resampled; a virtual point only progresses along the curve using this resolution.)
1083
+ :type sampling: float
1084
+ '''
1085
+ ...
1086
+
1087
+ @staticmethod
1088
+ def reset(delete_strokes: bool = True):
1089
+ ''' Resets the line stylization process to the initial state. The results of stroke creation are accumulated if **delete_strokes** is set to False.
1090
+
1091
+ :param delete_strokes: Delete the strokes that are currently stored.
1092
+ :type delete_strokes: bool
1093
+ '''
1094
+ ...
1095
+
1096
+ @staticmethod
1097
+ def select(pred: 'UnaryPredicate1D'):
1098
+ ''' Selects the ViewEdges of the ViewMap verifying a specified condition.
1099
+
1100
+ :param pred: The predicate expressing this condition.
1101
+ :type pred: 'UnaryPredicate1D'
1102
+ '''
1103
+ ...
1104
+
1105
+ @staticmethod
1106
+ def sequential_split(starting_pred: 'UnaryPredicate0D',
1107
+ stopping_pred: 'UnaryPredicate0D',
1108
+ sampling: float = 0.0):
1109
+ ''' sequential_split(pred, sampling=0.0) Splits each chain of the current set of chains in a sequential way. The points of each chain are processed (with a specified sampling) sequentially. The first point of the initial chain is the first point of one of the resulting chains. The splitting ends when no more chain can start.
1110
+
1111
+ :param starting_pred: The predicate on a point that expresses the starting condition. Each time this condition is verified, a new chain begins
1112
+ :type starting_pred: 'UnaryPredicate0D'
1113
+ :param stopping_pred: The predicate on a point that expresses the stopping condition. The chain ends as soon as this predicate is verified.
1114
+ :type stopping_pred: 'UnaryPredicate0D'
1115
+ :param pred: The predicate on a point that expresses the splitting condition. Each time the condition is verified, the chain is split into two chains. The resulting set of chains is a partition of the initial chain
1116
+ :type pred: 'UnaryPredicate0D'
1117
+ :param sampling: The resolution used to sample the chain for the predicates evaluation. (The chain is not actually resampled; a virtual point only progresses along the curve using this resolution.)
1118
+ :type sampling: float
1119
+ '''
1120
+ ...
1121
+
1122
+ @staticmethod
1123
+ def sort(pred: 'BinaryPredicate1D'):
1124
+ ''' Sorts the current set of chains (or viewedges) according to the comparison predicate given as argument.
1125
+
1126
+ :param pred: The binary predicate used for the comparison.
1127
+ :type pred: 'BinaryPredicate1D'
1128
+ '''
1129
+ ...
1130
+
1131
+
1132
+ class SShape:
1133
+ ''' Class to define a feature shape. It is the gathering of feature elements from an identified input shape.
1134
+ '''
1135
+
1136
+ bbox: 'BBox'
1137
+ ''' The bounding box of the SShape.
1138
+
1139
+ :type: 'BBox'
1140
+ '''
1141
+
1142
+ edges: typing.List['FEdge']
1143
+ ''' The list of edges constituting this SShape.
1144
+
1145
+ :type: typing.List['FEdge']
1146
+ '''
1147
+
1148
+ id: 'Id'
1149
+ ''' The Id of this SShape.
1150
+
1151
+ :type: 'Id'
1152
+ '''
1153
+
1154
+ name: str
1155
+ ''' The name of the SShape.
1156
+
1157
+ :type: str
1158
+ '''
1159
+
1160
+ vertices: typing.List['SVertex']
1161
+ ''' The list of vertices constituting this SShape.
1162
+
1163
+ :type: typing.List['SVertex']
1164
+ '''
1165
+
1166
+ def __init__(self):
1167
+ ''' __init__(brother) Creates a `SShape` class using either a default constructor or copy constructor.
1168
+
1169
+ :param brother: An SShape object.
1170
+ :type brother: 'SShape'
1171
+ '''
1172
+ ...
1173
+
1174
+ def add_edge(self, edge: 'FEdge'):
1175
+ ''' Adds an FEdge to the list of FEdges.
1176
+
1177
+ :param edge: An FEdge object.
1178
+ :type edge: 'FEdge'
1179
+ '''
1180
+ ...
1181
+
1182
+ def add_vertex(self, vertex: 'SVertex'):
1183
+ ''' Adds an SVertex to the list of SVertex of this Shape. The SShape attribute of the SVertex is also set to this SShape.
1184
+
1185
+ :param vertex: An SVertex object.
1186
+ :type vertex: 'SVertex'
1187
+ '''
1188
+ ...
1189
+
1190
+ def compute_bbox(self):
1191
+ ''' Compute the bbox of the SShape.
1192
+
1193
+ '''
1194
+ ...
1195
+
1196
+
1197
+ class SVertex:
1198
+ ''' Class hierarchy: `Interface0D` > `SVertex` Class to define a vertex of the embedding.
1199
+ '''
1200
+
1201
+ curvatures: typing.Tuple
1202
+ ''' Curvature information expressed in the form of a seven-element tuple (K1, e1, K2, e2, Kr, er, dKr), where K1 and K2 are scalar values representing the first (maximum) and second (minimum) principal curvatures at this SVertex, respectively; e1 and e2 are three-dimensional vectors representing the first and second principal directions, i.e. the directions of the normal plane where the curvature takes its maximum and minimum values, respectively; and Kr, er and dKr are the radial curvature, radial direction, and the derivative of the radial curvature at this SVertex, respectively.
1203
+
1204
+ :type: typing.Tuple
1205
+ '''
1206
+
1207
+ id: 'Id'
1208
+ ''' The Id of this SVertex.
1209
+
1210
+ :type: 'Id'
1211
+ '''
1212
+
1213
+ normals: typing.List['mathutils.Vector']
1214
+ ''' The normals for this Vertex as a list. In a sharp surface, an SVertex has exactly one normal. In a smooth surface, an SVertex can have any number of normals.
1215
+
1216
+ :type: typing.List['mathutils.Vector']
1217
+ '''
1218
+
1219
+ normals_size: int
1220
+ ''' The number of different normals for this SVertex.
1221
+
1222
+ :type: int
1223
+ '''
1224
+
1225
+ point_2d: typing.Union[typing.Sequence[float], 'mathutils.Vector']
1226
+ ''' The projected 3D coordinates of the SVertex.
1227
+
1228
+ :type: typing.Union[typing.Sequence[float], 'mathutils.Vector']
1229
+ '''
1230
+
1231
+ point_3d: typing.Union[typing.Sequence[float], 'mathutils.Vector']
1232
+ ''' The 3D coordinates of the SVertex.
1233
+
1234
+ :type: typing.Union[typing.Sequence[float], 'mathutils.Vector']
1235
+ '''
1236
+
1237
+ viewvertex: 'ViewVertex'
1238
+ ''' If this SVertex is also a ViewVertex, this property refers to the ViewVertex, and None otherwise.
1239
+
1240
+ :type: 'ViewVertex'
1241
+ '''
1242
+
1243
+ def __init__(self):
1244
+ ''' __init__(brother) __init__(point_3d, id) Builds a `SVertex` using the default constructor, copy constructor or the overloaded constructor which builds a `SVertex` from 3D coordinates and an Id.
1245
+
1246
+ :param brother: A SVertex object.
1247
+ :type brother: 'SVertex'
1248
+ :param point_3d: A three-dimensional vector.
1249
+ :type point_3d: typing.Union[typing.Sequence[float], 'mathutils.Vector']
1250
+ :param id: An Id object.
1251
+ :type id: 'Id'
1252
+ '''
1253
+ ...
1254
+
1255
+ def add_fedge(self, fedge: 'FEdge'):
1256
+ ''' Add an FEdge to the list of edges emanating from this SVertex.
1257
+
1258
+ :param fedge: An FEdge.
1259
+ :type fedge: 'FEdge'
1260
+ '''
1261
+ ...
1262
+
1263
+ def add_normal(
1264
+ self, normal: typing.
1265
+ Union[typing.Sequence[float], 'mathutils.Vector', typing.List]):
1266
+ ''' Adds a normal to the SVertex's set of normals. If the same normal is already in the set, nothing changes.
1267
+
1268
+ :param normal: A three-dimensional vector.
1269
+ :type normal: typing.Union[typing.Sequence[float], 'mathutils.Vector', typing.List]
1270
+ '''
1271
+ ...
1272
+
1273
+
1274
+ class SVertexIterator:
1275
+ ''' Class hierarchy: `Iterator` > `SVertexIterator` Class representing an iterator over `SVertex` of a `ViewEdge`. An instance of an SVertexIterator can be obtained from a ViewEdge by calling verticesBegin() or verticesEnd().
1276
+ '''
1277
+
1278
+ object: 'SVertex'
1279
+ ''' The SVertex object currently pointed by this iterator.
1280
+
1281
+ :type: 'SVertex'
1282
+ '''
1283
+
1284
+ t: float
1285
+ ''' The curvilinear abscissa of the current point.
1286
+
1287
+ :type: float
1288
+ '''
1289
+
1290
+ u: float
1291
+ ''' The point parameter at the current point in the 1D element (0 <= u <= 1).
1292
+
1293
+ :type: float
1294
+ '''
1295
+
1296
+ def __init__(self):
1297
+ ''' __init__(brother) __init__(vertex, begin, previous_edge, next_edge, t) Build an SVertexIterator using either the default constructor, copy constructor, or the overloaded constructor that starts iteration from an SVertex object vertex.
1298
+
1299
+ :param brother: An SVertexIterator object.
1300
+ :type brother: 'SVertexIterator'
1301
+ :param vertex: The SVertex from which the iterator starts iteration.
1302
+ :type vertex: 'SVertex'
1303
+ :param begin: The first SVertex of a ViewEdge.
1304
+ :type begin: 'SVertex'
1305
+ :param previous_edge: The previous FEdge coming to vertex.
1306
+ :type previous_edge: 'FEdge'
1307
+ :param next_edge: The next FEdge going out from vertex.
1308
+ :type next_edge: 'FEdge'
1309
+ :param t: The curvilinear abscissa at vertex.
1310
+ :type t: float
1311
+ '''
1312
+ ...
1313
+
1314
+
1315
+ class Stroke:
1316
+ ''' Class hierarchy: `Interface1D` > `Stroke` Class to define a stroke. A stroke is made of a set of 2D vertices (`StrokeVertex`), regularly spaced out. This set of vertices defines the stroke's backbone geometry. Each of these stroke vertices defines the stroke's shape and appearance at this vertex position.
1317
+ '''
1318
+
1319
+ id: 'Id'
1320
+ ''' The Id of this Stroke.
1321
+
1322
+ :type: 'Id'
1323
+ '''
1324
+
1325
+ length_2d: float
1326
+ ''' The 2D length of the Stroke.
1327
+
1328
+ :type: float
1329
+ '''
1330
+
1331
+ medium_type: 'MediumType'
1332
+ ''' The MediumType used for this Stroke.
1333
+
1334
+ :type: 'MediumType'
1335
+ '''
1336
+
1337
+ texture_id: int
1338
+ ''' The ID of the texture used to simulate th marks system for this Stroke.
1339
+
1340
+ :type: int
1341
+ '''
1342
+
1343
+ tips: bool
1344
+ ''' True if this Stroke uses a texture with tips, and false otherwise.
1345
+
1346
+ :type: bool
1347
+ '''
1348
+
1349
+ def Stroke(self):
1350
+ ''' Stroke(brother) Creates a `Stroke` using the default constructor or copy constructor
1351
+
1352
+ '''
1353
+ ...
1354
+
1355
+ def compute_sampling(self, n: int) -> float:
1356
+ ''' Compute the sampling needed to get N vertices. If the specified number of vertices is less than the actual number of vertices, the actual sampling value is returned. (To remove Vertices, use the RemoveVertex() method of this class.)
1357
+
1358
+ :param n: The number of stroke vertices we eventually want in our Stroke.
1359
+ :type n: int
1360
+ :rtype: float
1361
+ :return: The sampling that must be used in the Resample(float) method.
1362
+ '''
1363
+ ...
1364
+
1365
+ def insert_vertex(self, vertex: 'StrokeVertex',
1366
+ next: 'StrokeVertexIterator'):
1367
+ ''' Inserts the StrokeVertex given as argument into the Stroke before the point specified by next. The length and curvilinear abscissa are updated consequently.
1368
+
1369
+ :param vertex: The StrokeVertex to insert in the Stroke.
1370
+ :type vertex: 'StrokeVertex'
1371
+ :param next: A StrokeVertexIterator pointing to the StrokeVertex before which vertex must be inserted.
1372
+ :type next: 'StrokeVertexIterator'
1373
+ '''
1374
+ ...
1375
+
1376
+ def remove_all_vertices(self):
1377
+ ''' Removes all vertices from the Stroke.
1378
+
1379
+ '''
1380
+ ...
1381
+
1382
+ def remove_vertex(self, vertex: 'StrokeVertex'):
1383
+ ''' Removes the StrokeVertex given as argument from the Stroke. The length and curvilinear abscissa are updated consequently.
1384
+
1385
+ :param vertex: the StrokeVertex to remove from the Stroke.
1386
+ :type vertex: 'StrokeVertex'
1387
+ '''
1388
+ ...
1389
+
1390
+ def resample(self, n: int):
1391
+ ''' resample(sampling) Resamples the stroke so using one of two methods with the goal of creating a stroke with fewer points and the same shape.
1392
+
1393
+ :param n: Resamples the stroke so that it eventually has N points. That means it is going to add N-vertices_size, where vertices_size is the number of points we already have. If vertices_size >= N, no resampling is done.
1394
+ :type n: int
1395
+ :param sampling: Resamples the stroke with a given sampling value. If the sampling is smaller than the actual sampling value, no resampling is done.
1396
+ :type sampling: float
1397
+ '''
1398
+ ...
1399
+
1400
+ def stroke_vertices_begin(self, t: float = 0.0) -> 'StrokeVertexIterator':
1401
+ ''' Returns a StrokeVertexIterator pointing on the first StrokeVertex of the Stroke. One can specify a sampling value to re-sample the Stroke on the fly if needed.
1402
+
1403
+ :param t: The resampling value with which we want our Stroke to be resampled. If 0 is specified, no resampling is done.
1404
+ :type t: float
1405
+ :rtype: 'StrokeVertexIterator'
1406
+ :return: A StrokeVertexIterator pointing on the first StrokeVertex.
1407
+ '''
1408
+ ...
1409
+
1410
+ def stroke_vertices_end(self) -> 'StrokeVertexIterator':
1411
+ ''' Returns a StrokeVertexIterator pointing after the last StrokeVertex of the Stroke.
1412
+
1413
+ :rtype: 'StrokeVertexIterator'
1414
+ :return: A StrokeVertexIterator pointing after the last StrokeVertex.
1415
+ '''
1416
+ ...
1417
+
1418
+ def stroke_vertices_size(self) -> int:
1419
+ ''' Returns the number of StrokeVertex constituting the Stroke.
1420
+
1421
+ :rtype: int
1422
+ :return: The number of stroke vertices.
1423
+ '''
1424
+ ...
1425
+
1426
+ def update_length(self):
1427
+ ''' Updates the 2D length of the Stroke.
1428
+
1429
+ '''
1430
+ ...
1431
+
1432
+
1433
+ class StrokeAttribute:
1434
+ ''' Class to define a set of attributes associated with a `StrokeVertex`. The attribute set stores the color, alpha and thickness values for a Stroke Vertex.
1435
+ '''
1436
+
1437
+ alpha: float
1438
+ ''' Alpha component of the stroke color.
1439
+
1440
+ :type: float
1441
+ '''
1442
+
1443
+ color: typing.Union[typing.Sequence[float], 'mathutils.Color']
1444
+ ''' RGB components of the stroke color.
1445
+
1446
+ :type: typing.Union[typing.Sequence[float], 'mathutils.Color']
1447
+ '''
1448
+
1449
+ thickness: typing.Union[typing.Sequence[float], 'mathutils.Vector']
1450
+ ''' Right and left components of the stroke thickness. The right (left) component is the thickness on the right (left) of the vertex when following the stroke.
1451
+
1452
+ :type: typing.Union[typing.Sequence[float], 'mathutils.Vector']
1453
+ '''
1454
+
1455
+ visible: bool
1456
+ ''' The visibility flag. True if the StrokeVertex is visible.
1457
+
1458
+ :type: bool
1459
+ '''
1460
+
1461
+ def __init__(self):
1462
+ ''' __init__(brother) __init__(red, green, blue, alpha, thickness_right, thickness_left) __init__(attribute1, attribute2, t) Creates a `StrokeAttribute` object using either a default constructor, copy constructor, overloaded constructor, or and interpolation constructor to interpolate between two `StrokeAttribute` objects.
1463
+
1464
+ :param brother: A StrokeAttribute object to be used as a copy constructor.
1465
+ :type brother: 'StrokeAttribute'
1466
+ :param red: Red component of a stroke color.
1467
+ :type red: float
1468
+ :param green: Green component of a stroke color.
1469
+ :type green: float
1470
+ :param blue: Blue component of a stroke color.
1471
+ :type blue: float
1472
+ :param alpha: Alpha component of a stroke color.
1473
+ :type alpha: float
1474
+ :param thickness_right: Stroke thickness on the right.
1475
+ :type thickness_right: float
1476
+ :param thickness_left: Stroke thickness on the left.
1477
+ :type thickness_left: float
1478
+ :param attribute1: The first StrokeAttribute object.
1479
+ :type attribute1: 'StrokeAttribute'
1480
+ :param attribute2: The second StrokeAttribute object.
1481
+ :type attribute2: 'StrokeAttribute'
1482
+ :param t: The interpolation parameter (0 <= t <= 1).
1483
+ :type t: float
1484
+ '''
1485
+ ...
1486
+
1487
+ def get_attribute_real(self, name: str) -> float:
1488
+ ''' Returns an attribute of float type.
1489
+
1490
+ :param name: The name of the attribute.
1491
+ :type name: str
1492
+ :rtype: float
1493
+ :return: The attribute value.
1494
+ '''
1495
+ ...
1496
+
1497
+ def get_attribute_vec2(self, name: str) -> 'mathutils.Vector':
1498
+ ''' Returns an attribute of two-dimensional vector type.
1499
+
1500
+ :param name: The name of the attribute.
1501
+ :type name: str
1502
+ :rtype: 'mathutils.Vector'
1503
+ :return: The attribute value.
1504
+ '''
1505
+ ...
1506
+
1507
+ def get_attribute_vec3(self, name: str) -> 'mathutils.Vector':
1508
+ ''' Returns an attribute of three-dimensional vector type.
1509
+
1510
+ :param name: The name of the attribute.
1511
+ :type name: str
1512
+ :rtype: 'mathutils.Vector'
1513
+ :return: The attribute value.
1514
+ '''
1515
+ ...
1516
+
1517
+ def has_attribute_real(self, name: str) -> bool:
1518
+ ''' Checks whether the attribute name of float type is available.
1519
+
1520
+ :param name: The name of the attribute.
1521
+ :type name: str
1522
+ :rtype: bool
1523
+ :return: True if the attribute is available.
1524
+ '''
1525
+ ...
1526
+
1527
+ def has_attribute_vec2(self, name: str) -> bool:
1528
+ ''' Checks whether the attribute name of two-dimensional vector type is available.
1529
+
1530
+ :param name: The name of the attribute.
1531
+ :type name: str
1532
+ :rtype: bool
1533
+ :return: True if the attribute is available.
1534
+ '''
1535
+ ...
1536
+
1537
+ def has_attribute_vec3(self, name: str) -> bool:
1538
+ ''' Checks whether the attribute name of three-dimensional vector type is available.
1539
+
1540
+ :param name: The name of the attribute.
1541
+ :type name: str
1542
+ :rtype: bool
1543
+ :return: True if the attribute is available.
1544
+ '''
1545
+ ...
1546
+
1547
+ def set_attribute_real(self, name: str, value: float):
1548
+ ''' Adds a user-defined attribute of float type. If there is no attribute of the given name, it is added. Otherwise, the new value replaces the old one.
1549
+
1550
+ :param name: The name of the attribute.
1551
+ :type name: str
1552
+ :param value: The attribute value.
1553
+ :type value: float
1554
+ '''
1555
+ ...
1556
+
1557
+ def set_attribute_vec2(
1558
+ self, name: str, value: typing.
1559
+ Union[typing.Sequence[float], 'mathutils.Vector', typing.List]):
1560
+ ''' Adds a user-defined attribute of two-dimensional vector type. If there is no attribute of the given name, it is added. Otherwise, the new value replaces the old one.
1561
+
1562
+ :param name: The name of the attribute.
1563
+ :type name: str
1564
+ :param value: The attribute value.
1565
+ :type value: typing.Union[typing.Sequence[float], 'mathutils.Vector', typing.List]
1566
+ '''
1567
+ ...
1568
+
1569
+ def set_attribute_vec3(
1570
+ self, name: str, value: typing.
1571
+ Union[typing.Sequence[float], 'mathutils.Vector', typing.List]):
1572
+ ''' Adds a user-defined attribute of three-dimensional vector type. If there is no attribute of the given name, it is added. Otherwise, the new value replaces the old one.
1573
+
1574
+ :param name: The name of the attribute.
1575
+ :type name: str
1576
+ :param value: The attribute value.
1577
+ :type value: typing.Union[typing.Sequence[float], 'mathutils.Vector', typing.List]
1578
+ '''
1579
+ ...
1580
+
1581
+
1582
+ class StrokeShader:
1583
+ ''' Base class for stroke shaders. Any stroke shader must inherit from this class and overload the shade() method. A StrokeShader is designed to modify stroke attributes such as thickness, color, geometry, texture, blending mode, and so on. The basic way for this operation is to iterate over the stroke vertices of the `Stroke` and to modify the `StrokeAttribute` of each vertex. Here is a code example of such an iteration:: it = ioStroke.strokeVerticesBegin() while not it.is_end: att = it.object.attribute ## perform here any attribute modification it.increment()
1584
+ '''
1585
+
1586
+ name: str
1587
+ ''' The name of the stroke shader.
1588
+
1589
+ :type: str
1590
+ '''
1591
+
1592
+ def __init__(self):
1593
+ ''' Default constructor.
1594
+
1595
+ '''
1596
+ ...
1597
+
1598
+ def shade(self, stroke: 'Stroke'):
1599
+ ''' The shading method. Must be overloaded by inherited classes.
1600
+
1601
+ :param stroke: A Stroke object.
1602
+ :type stroke: 'Stroke'
1603
+ '''
1604
+ ...
1605
+
1606
+
1607
+ class StrokeVertex:
1608
+ ''' Class hierarchy: `Interface0D` > `CurvePoint` > `StrokeVertex` Class to define a stroke vertex.
1609
+ '''
1610
+
1611
+ attribute: 'StrokeAttribute'
1612
+ ''' StrokeAttribute for this StrokeVertex.
1613
+
1614
+ :type: 'StrokeAttribute'
1615
+ '''
1616
+
1617
+ curvilinear_abscissa: float
1618
+ ''' Curvilinear abscissa of this StrokeVertex in the Stroke.
1619
+
1620
+ :type: float
1621
+ '''
1622
+
1623
+ point: typing.Union[typing.Sequence[float], 'mathutils.Vector']
1624
+ ''' 2D point coordinates.
1625
+
1626
+ :type: typing.Union[typing.Sequence[float], 'mathutils.Vector']
1627
+ '''
1628
+
1629
+ stroke_length: float
1630
+ ''' Stroke length (it is only a value retained by the StrokeVertex, and it won't change the real stroke length).
1631
+
1632
+ :type: float
1633
+ '''
1634
+
1635
+ u: float
1636
+ ''' Curvilinear abscissa of this StrokeVertex in the Stroke.
1637
+
1638
+ :type: float
1639
+ '''
1640
+
1641
+ def __init__(self):
1642
+ ''' __init__(brother) __init__(first_vertex, second_vertex, t3d) __init__(point) __init__(svertex) __init__(svertex, attribute) Builds a `StrokeVertex` using the default constructor, copy constructor, from 2 `StrokeVertex` and an interpolation parameter, from a CurvePoint, from a SVertex, or a `SVertex` and a `StrokeAttribute` object.
1643
+
1644
+ :param brother: A StrokeVertex object.
1645
+ :type brother: 'StrokeVertex'
1646
+ :param first_vertex: The first StrokeVertex.
1647
+ :type first_vertex: 'StrokeVertex'
1648
+ :param second_vertex: The second StrokeVertex.
1649
+ :type second_vertex: 'StrokeVertex'
1650
+ :param t3d: An interpolation parameter.
1651
+ :type t3d: float
1652
+ :param point: A CurvePoint object.
1653
+ :type point: 'CurvePoint'
1654
+ :param svertex: An SVertex object. An SVertex object.
1655
+ :type svertex: 'SVertex'
1656
+ :param svertex: An SVertex object. An SVertex object.
1657
+ :type svertex: 'SVertex'
1658
+ :param attribute: A StrokeAttribute object.
1659
+ :type attribute: 'StrokeAttribute'
1660
+ '''
1661
+ ...
1662
+
1663
+
1664
+ class StrokeVertexIterator:
1665
+ ''' Class hierarchy: `Iterator` > `StrokeVertexIterator` Class defining an iterator designed to iterate over the `StrokeVertex` of a `Stroke`. An instance of a StrokeVertexIterator can be obtained from a Stroke by calling iter(), stroke_vertices_begin() or stroke_vertices_begin(). It is iterating over the same vertices as an `Interface0DIterator`. The difference resides in the object access: an Interface0DIterator only allows access to an Interface0D while one might need to access the specialized StrokeVertex type. In this case, one should use a StrokeVertexIterator. To call functions of the UnaryFuntion0D type, a StrokeVertexIterator can be converted to an Interface0DIterator by by calling Interface0DIterator(it).
1666
+ '''
1667
+
1668
+ at_last: bool
1669
+ ''' True if the iterator points to the last valid element. For its counterpart (pointing to the first valid element), use it.is_begin.
1670
+
1671
+ :type: bool
1672
+ '''
1673
+
1674
+ object: 'StrokeVertex'
1675
+ ''' The StrokeVertex object currently pointed to by this iterator.
1676
+
1677
+ :type: 'StrokeVertex'
1678
+ '''
1679
+
1680
+ t: float
1681
+ ''' The curvilinear abscissa of the current point.
1682
+
1683
+ :type: float
1684
+ '''
1685
+
1686
+ u: float
1687
+ ''' The point parameter at the current point in the stroke (0 <= u <= 1).
1688
+
1689
+ :type: float
1690
+ '''
1691
+
1692
+ def __init__(self):
1693
+ ''' __init__(brother) Creates a `StrokeVertexIterator` using either the default constructor or the copy constructor.
1694
+
1695
+ :param brother: A StrokeVertexIterator object.
1696
+ :type brother: 'StrokeVertexIterator'
1697
+ '''
1698
+ ...
1699
+
1700
+ def decremented(self) -> 'StrokeVertexIterator':
1701
+ ''' Returns a copy of a decremented StrokeVertexIterator.
1702
+
1703
+ :rtype: 'StrokeVertexIterator'
1704
+ :return: A StrokeVertexIterator pointing the previous StrokeVertex.
1705
+ '''
1706
+ ...
1707
+
1708
+ def incremented(self) -> 'StrokeVertexIterator':
1709
+ ''' Returns a copy of an incremented StrokeVertexIterator.
1710
+
1711
+ :rtype: 'StrokeVertexIterator'
1712
+ :return: A StrokeVertexIterator pointing the next StrokeVertex.
1713
+ '''
1714
+ ...
1715
+
1716
+ def reversed(self) -> 'StrokeVertexIterator':
1717
+ ''' Returns a StrokeVertexIterator that traverses stroke vertices in the reversed order.
1718
+
1719
+ :rtype: 'StrokeVertexIterator'
1720
+ :return: A StrokeVertexIterator traversing stroke vertices backward.
1721
+ '''
1722
+ ...
1723
+
1724
+
1725
+ class TVertex:
1726
+ ''' Class hierarchy: `Interface0D` > `ViewVertex` > `TVertex` Class to define a T vertex, i.e. an intersection between two edges. It points towards two SVertex and four ViewEdges. Among the ViewEdges, two are front and the other two are back. Basically a front edge hides part of a back edge. So, among the back edges, one is of invisibility N and the other of invisibility N+1.
1727
+ '''
1728
+
1729
+ back_svertex: 'SVertex'
1730
+ ''' The SVertex that is further away from the viewpoint.
1731
+
1732
+ :type: 'SVertex'
1733
+ '''
1734
+
1735
+ front_svertex: 'SVertex'
1736
+ ''' The SVertex that is closer to the viewpoint.
1737
+
1738
+ :type: 'SVertex'
1739
+ '''
1740
+
1741
+ id: 'Id'
1742
+ ''' The Id of this TVertex.
1743
+
1744
+ :type: 'Id'
1745
+ '''
1746
+
1747
+ def __init__(self):
1748
+ ''' Default constructor.
1749
+
1750
+ '''
1751
+ ...
1752
+
1753
+ def get_mate(self, viewedge: 'ViewEdge') -> 'ViewEdge':
1754
+ ''' Returns the mate edge of the ViewEdge given as argument. If the ViewEdge is frontEdgeA, frontEdgeB is returned. If the ViewEdge is frontEdgeB, frontEdgeA is returned. Same for back edges.
1755
+
1756
+ :param viewedge: A ViewEdge object.
1757
+ :type viewedge: 'ViewEdge'
1758
+ :rtype: 'ViewEdge'
1759
+ :return: The mate edge of the given ViewEdge.
1760
+ '''
1761
+ ...
1762
+
1763
+ def get_svertex(self, fedge: 'FEdge') -> 'SVertex':
1764
+ ''' Returns the SVertex (among the 2) belonging to the given FEdge.
1765
+
1766
+ :param fedge: An FEdge object.
1767
+ :type fedge: 'FEdge'
1768
+ :rtype: 'SVertex'
1769
+ :return: The SVertex belonging to the given FEdge.
1770
+ '''
1771
+ ...
1772
+
1773
+
1774
+ class UnaryFunction0D:
1775
+ ''' Base class for Unary Functions (functors) working on `Interface0DIterator`. A unary function will be used by invoking __call__() on an Interface0DIterator. In Python, several different subclasses of UnaryFunction0D are used depending on the types of functors' return values. For example, you would inherit from a `UnaryFunction0DDouble` if you wish to define a function that returns a double value. Available UnaryFunction0D subclasses are: * `UnaryFunction0DDouble` * `UnaryFunction0DEdgeNature` * `UnaryFunction0DFloat` * `UnaryFunction0DId` * `UnaryFunction0DMaterial` * `UnaryFunction0DUnsigned` * `UnaryFunction0DVec2f` * `UnaryFunction0DVec3f` * `UnaryFunction0DVectorViewShape` * `UnaryFunction0DViewShape`
1776
+ '''
1777
+
1778
+ name: str
1779
+ ''' The name of the unary 0D function.
1780
+
1781
+ :type: str
1782
+ '''
1783
+
1784
+
1785
+ class UnaryFunction0DDouble:
1786
+ ''' Class hierarchy: `UnaryFunction0D` > `UnaryFunction0DDouble` Base class for unary functions (functors) that work on `Interface0DIterator` and return a float value.
1787
+ '''
1788
+
1789
+ def __init__(self):
1790
+ ''' Default constructor.
1791
+
1792
+ '''
1793
+ ...
1794
+
1795
+
1796
+ class UnaryFunction0DEdgeNature:
1797
+ ''' Class hierarchy: `UnaryFunction0D` > `UnaryFunction0DEdgeNature` Base class for unary functions (functors) that work on `Interface0DIterator` and return a `Nature` object.
1798
+ '''
1799
+
1800
+ def __init__(self):
1801
+ ''' Default constructor.
1802
+
1803
+ '''
1804
+ ...
1805
+
1806
+
1807
+ class UnaryFunction0DFloat:
1808
+ ''' Class hierarchy: `UnaryFunction0D` > `UnaryFunction0DFloat` Base class for unary functions (functors) that work on `Interface0DIterator` and return a float value.
1809
+ '''
1810
+
1811
+ def __init__(self):
1812
+ ''' Default constructor.
1813
+
1814
+ '''
1815
+ ...
1816
+
1817
+
1818
+ class UnaryFunction0DId:
1819
+ ''' Class hierarchy: `UnaryFunction0D` > `UnaryFunction0DId` Base class for unary functions (functors) that work on `Interface0DIterator` and return an `Id` object.
1820
+ '''
1821
+
1822
+ def __init__(self):
1823
+ ''' Default constructor.
1824
+
1825
+ '''
1826
+ ...
1827
+
1828
+
1829
+ class UnaryFunction0DMaterial:
1830
+ ''' Class hierarchy: `UnaryFunction0D` > `UnaryFunction0DMaterial` Base class for unary functions (functors) that work on `Interface0DIterator` and return a `Material` object.
1831
+ '''
1832
+
1833
+ def __init__(self):
1834
+ ''' Default constructor.
1835
+
1836
+ '''
1837
+ ...
1838
+
1839
+
1840
+ class UnaryFunction0DUnsigned:
1841
+ ''' Class hierarchy: `UnaryFunction0D` > `UnaryFunction0DUnsigned` Base class for unary functions (functors) that work on `Interface0DIterator` and return an int value.
1842
+ '''
1843
+
1844
+ def __init__(self):
1845
+ ''' Default constructor.
1846
+
1847
+ '''
1848
+ ...
1849
+
1850
+
1851
+ class UnaryFunction0DVec2f:
1852
+ ''' Class hierarchy: `UnaryFunction0D` > `UnaryFunction0DVec2f` Base class for unary functions (functors) that work on `Interface0DIterator` and return a 2D vector.
1853
+ '''
1854
+
1855
+ def __init__(self):
1856
+ ''' Default constructor.
1857
+
1858
+ '''
1859
+ ...
1860
+
1861
+
1862
+ class UnaryFunction0DVec3f:
1863
+ ''' Class hierarchy: `UnaryFunction0D` > `UnaryFunction0DVec3f` Base class for unary functions (functors) that work on `Interface0DIterator` and return a 3D vector.
1864
+ '''
1865
+
1866
+ def __init__(self):
1867
+ ''' Default constructor.
1868
+
1869
+ '''
1870
+ ...
1871
+
1872
+
1873
+ class UnaryFunction0DVectorViewShape:
1874
+ ''' Class hierarchy: `UnaryFunction0D` > `UnaryFunction0DVectorViewShape` Base class for unary functions (functors) that work on `Interface0DIterator` and return a list of `ViewShape` objects.
1875
+ '''
1876
+
1877
+ def __init__(self):
1878
+ ''' Default constructor.
1879
+
1880
+ '''
1881
+ ...
1882
+
1883
+
1884
+ class UnaryFunction0DViewShape:
1885
+ ''' Class hierarchy: `UnaryFunction0D` > `UnaryFunction0DViewShape` Base class for unary functions (functors) that work on `Interface0DIterator` and return a `ViewShape` object.
1886
+ '''
1887
+
1888
+ def __init__(self):
1889
+ ''' Default constructor.
1890
+
1891
+ '''
1892
+ ...
1893
+
1894
+
1895
+ class UnaryFunction1D:
1896
+ ''' Base class for Unary Functions (functors) working on `Interface1D`. A unary function will be used by invoking __call__() on an Interface1D. In Python, several different subclasses of UnaryFunction1D are used depending on the types of functors' return values. For example, you would inherit from a `UnaryFunction1DDouble` if you wish to define a function that returns a double value. Available UnaryFunction1D subclasses are: * `UnaryFunction1DDouble` * `UnaryFunction1DEdgeNature` * `UnaryFunction1DFloat` * `UnaryFunction1DUnsigned` * `UnaryFunction1DVec2f` * `UnaryFunction1DVec3f` * `UnaryFunction1DVectorViewShape` * `UnaryFunction1DVoid`
1897
+ '''
1898
+
1899
+ name: str
1900
+ ''' The name of the unary 1D function.
1901
+
1902
+ :type: str
1903
+ '''
1904
+
1905
+
1906
+ class UnaryFunction1DDouble:
1907
+ ''' Class hierarchy: `UnaryFunction1D` > `UnaryFunction1DDouble` Base class for unary functions (functors) that work on `Interface1D` and return a float value.
1908
+ '''
1909
+
1910
+ integration_type: 'IntegrationType'
1911
+ ''' The integration method.
1912
+
1913
+ :type: 'IntegrationType'
1914
+ '''
1915
+
1916
+ def __init__(self):
1917
+ ''' __init__(integration_type) Builds a unary 1D function using the default constructor or the integration method given as an argument.
1918
+
1919
+ :param integration_type: An integration method.
1920
+ :type integration_type: 'IntegrationType'
1921
+ '''
1922
+ ...
1923
+
1924
+
1925
+ class UnaryFunction1DEdgeNature:
1926
+ ''' Class hierarchy: `UnaryFunction1D` > `UnaryFunction1DEdgeNature` Base class for unary functions (functors) that work on `Interface1D` and return a `Nature` object.
1927
+ '''
1928
+
1929
+ integration_type: 'IntegrationType'
1930
+ ''' The integration method.
1931
+
1932
+ :type: 'IntegrationType'
1933
+ '''
1934
+
1935
+ def __init__(self):
1936
+ ''' __init__(integration_type) Builds a unary 1D function using the default constructor or the integration method given as an argument.
1937
+
1938
+ :param integration_type: An integration method.
1939
+ :type integration_type: 'IntegrationType'
1940
+ '''
1941
+ ...
1942
+
1943
+
1944
+ class UnaryFunction1DFloat:
1945
+ ''' Class hierarchy: `UnaryFunction1D` > `UnaryFunction1DFloat` Base class for unary functions (functors) that work on `Interface1D` and return a float value.
1946
+ '''
1947
+
1948
+ integration_type: 'IntegrationType'
1949
+ ''' The integration method.
1950
+
1951
+ :type: 'IntegrationType'
1952
+ '''
1953
+
1954
+ def __init__(self):
1955
+ ''' __init__(integration_type) Builds a unary 1D function using the default constructor or the integration method given as an argument.
1956
+
1957
+ :param integration_type: An integration method.
1958
+ :type integration_type: 'IntegrationType'
1959
+ '''
1960
+ ...
1961
+
1962
+
1963
+ class UnaryFunction1DUnsigned:
1964
+ ''' Class hierarchy: `UnaryFunction1D` > `UnaryFunction1DUnsigned` Base class for unary functions (functors) that work on `Interface1D` and return an int value.
1965
+ '''
1966
+
1967
+ integration_type: 'IntegrationType'
1968
+ ''' The integration method.
1969
+
1970
+ :type: 'IntegrationType'
1971
+ '''
1972
+
1973
+ def __init__(self):
1974
+ ''' __init__(integration_type) Builds a unary 1D function using the default constructor or the integration method given as an argument.
1975
+
1976
+ :param integration_type: An integration method.
1977
+ :type integration_type: 'IntegrationType'
1978
+ '''
1979
+ ...
1980
+
1981
+
1982
+ class UnaryFunction1DVec2f:
1983
+ ''' Class hierarchy: `UnaryFunction1D` > `UnaryFunction1DVec2f` Base class for unary functions (functors) that work on `Interface1D` and return a 2D vector.
1984
+ '''
1985
+
1986
+ integration_type: 'IntegrationType'
1987
+ ''' The integration method.
1988
+
1989
+ :type: 'IntegrationType'
1990
+ '''
1991
+
1992
+ def __init__(self):
1993
+ ''' __init__(integration_type) Builds a unary 1D function using the default constructor or the integration method given as an argument.
1994
+
1995
+ :param integration_type: An integration method.
1996
+ :type integration_type: 'IntegrationType'
1997
+ '''
1998
+ ...
1999
+
2000
+
2001
+ class UnaryFunction1DVec3f:
2002
+ ''' Class hierarchy: `UnaryFunction1D` > `UnaryFunction1DVec3f` Base class for unary functions (functors) that work on `Interface1D` and return a 3D vector.
2003
+ '''
2004
+
2005
+ integration_type: 'IntegrationType'
2006
+ ''' The integration method.
2007
+
2008
+ :type: 'IntegrationType'
2009
+ '''
2010
+
2011
+ def __init__(self):
2012
+ ''' __init__(integration_type) Builds a unary 1D function using the default constructor or the integration method given as an argument.
2013
+
2014
+ :param integration_type: An integration method.
2015
+ :type integration_type: 'IntegrationType'
2016
+ '''
2017
+ ...
2018
+
2019
+
2020
+ class UnaryFunction1DVectorViewShape:
2021
+ ''' Class hierarchy: `UnaryFunction1D` > `UnaryFunction1DVectorViewShape` Base class for unary functions (functors) that work on `Interface1D` and return a list of `ViewShape` objects.
2022
+ '''
2023
+
2024
+ integration_type: 'IntegrationType'
2025
+ ''' The integration method.
2026
+
2027
+ :type: 'IntegrationType'
2028
+ '''
2029
+
2030
+ def __init__(self):
2031
+ ''' __init__(integration_type) Builds a unary 1D function using the default constructor or the integration method given as an argument.
2032
+
2033
+ :param integration_type: An integration method.
2034
+ :type integration_type: 'IntegrationType'
2035
+ '''
2036
+ ...
2037
+
2038
+
2039
+ class UnaryFunction1DVoid:
2040
+ ''' Class hierarchy: `UnaryFunction1D` > `UnaryFunction1DVoid` Base class for unary functions (functors) working on `Interface1D`.
2041
+ '''
2042
+
2043
+ integration_type: 'IntegrationType'
2044
+ ''' The integration method.
2045
+
2046
+ :type: 'IntegrationType'
2047
+ '''
2048
+
2049
+ def __init__(self):
2050
+ ''' __init__(integration_type) Builds a unary 1D function using either a default constructor or the integration method given as an argument.
2051
+
2052
+ :param integration_type: An integration method.
2053
+ :type integration_type: 'IntegrationType'
2054
+ '''
2055
+ ...
2056
+
2057
+
2058
+ class UnaryPredicate0D:
2059
+ ''' Base class for unary predicates that work on `Interface0DIterator`. A UnaryPredicate0D is a functor that evaluates a condition on an Interface0DIterator and returns true or false depending on whether this condition is satisfied or not. The UnaryPredicate0D is used by invoking its __call__() method. Any inherited class must overload the __call__() method.
2060
+ '''
2061
+
2062
+ name: str
2063
+ ''' The name of the unary 0D predicate.
2064
+
2065
+ :type: str
2066
+ '''
2067
+
2068
+ def __init__(self):
2069
+ ''' Default constructor.
2070
+
2071
+ '''
2072
+ ...
2073
+
2074
+ def __call__(self, it: 'Interface0DIterator') -> bool:
2075
+ ''' Must be overload by inherited classes.
2076
+
2077
+ :param it: The Interface0DIterator pointing onto the Interface0D at which we wish to evaluate the predicate.
2078
+ :type it: 'Interface0DIterator'
2079
+ :rtype: bool
2080
+ :return: True if the condition is satisfied, false otherwise.
2081
+ '''
2082
+ ...
2083
+
2084
+
2085
+ class UnaryPredicate1D:
2086
+ ''' Base class for unary predicates that work on `Interface1D`. A UnaryPredicate1D is a functor that evaluates a condition on a Interface1D and returns true or false depending on whether this condition is satisfied or not. The UnaryPredicate1D is used by invoking its __call__() method. Any inherited class must overload the __call__() method.
2087
+ '''
2088
+
2089
+ name: str
2090
+ ''' The name of the unary 1D predicate.
2091
+
2092
+ :type: str
2093
+ '''
2094
+
2095
+ def __init__(self):
2096
+ ''' Default constructor.
2097
+
2098
+ '''
2099
+ ...
2100
+
2101
+ def __call__(self, inter: 'Interface1D') -> bool:
2102
+ ''' Must be overload by inherited classes.
2103
+
2104
+ :param inter: The Interface1D on which we wish to evaluate the predicate.
2105
+ :type inter: 'Interface1D'
2106
+ :rtype: bool
2107
+ :return: True if the condition is satisfied, false otherwise.
2108
+ '''
2109
+ ...
2110
+
2111
+
2112
+ class ViewEdge:
2113
+ ''' Class hierarchy: `Interface1D` > `ViewEdge` Class defining a ViewEdge. A ViewEdge in an edge of the image graph. it connects two `ViewVertex` objects. It is made by connecting a set of FEdges.
2114
+ '''
2115
+
2116
+ chaining_time_stamp: int
2117
+ ''' The time stamp of this ViewEdge.
2118
+
2119
+ :type: int
2120
+ '''
2121
+
2122
+ first_fedge: 'FEdge'
2123
+ ''' The first FEdge that constitutes this ViewEdge.
2124
+
2125
+ :type: 'FEdge'
2126
+ '''
2127
+
2128
+ first_viewvertex: 'ViewVertex'
2129
+ ''' The first ViewVertex.
2130
+
2131
+ :type: 'ViewVertex'
2132
+ '''
2133
+
2134
+ id: 'Id'
2135
+ ''' The Id of this ViewEdge.
2136
+
2137
+ :type: 'Id'
2138
+ '''
2139
+
2140
+ is_closed: bool
2141
+ ''' True if this ViewEdge forms a closed loop.
2142
+
2143
+ :type: bool
2144
+ '''
2145
+
2146
+ last_fedge: 'FEdge'
2147
+ ''' The last FEdge that constitutes this ViewEdge.
2148
+
2149
+ :type: 'FEdge'
2150
+ '''
2151
+
2152
+ last_viewvertex: 'ViewVertex'
2153
+ ''' The second ViewVertex.
2154
+
2155
+ :type: 'ViewVertex'
2156
+ '''
2157
+
2158
+ nature: 'Nature'
2159
+ ''' The nature of this ViewEdge.
2160
+
2161
+ :type: 'Nature'
2162
+ '''
2163
+
2164
+ occludee: 'ViewShape'
2165
+ ''' The shape that is occluded by the ViewShape to which this ViewEdge belongs to. If no object is occluded, this property is set to None.
2166
+
2167
+ :type: 'ViewShape'
2168
+ '''
2169
+
2170
+ qi: int
2171
+ ''' The quantitative invisibility.
2172
+
2173
+ :type: int
2174
+ '''
2175
+
2176
+ viewshape: 'ViewShape'
2177
+ ''' The ViewShape to which this ViewEdge belongs to.
2178
+
2179
+ :type: 'ViewShape'
2180
+ '''
2181
+
2182
+ def __init__(self):
2183
+ ''' __init__(brother) Builds a `ViewEdge` using the default constructor or the copy constructor.
2184
+
2185
+ :param brother: A ViewEdge object.
2186
+ :type brother: 'ViewEdge'
2187
+ '''
2188
+ ...
2189
+
2190
+ def update_fedges(self):
2191
+ ''' Sets Viewedge to this for all embedded fedges.
2192
+
2193
+ '''
2194
+ ...
2195
+
2196
+
2197
+ class ViewEdgeIterator:
2198
+ ''' Class hierarchy: `Iterator` > `ViewEdgeIterator` Base class for iterators over ViewEdges of the `ViewMap` Graph. Basically the increment() operator of this class should be able to take the decision of "where" (on which ViewEdge) to go when pointing on a given ViewEdge.
2199
+ '''
2200
+
2201
+ begin: 'ViewEdge'
2202
+ ''' The first ViewEdge used for the iteration.
2203
+
2204
+ :type: 'ViewEdge'
2205
+ '''
2206
+
2207
+ current_edge: 'ViewEdge'
2208
+ ''' The ViewEdge object currently pointed by this iterator.
2209
+
2210
+ :type: 'ViewEdge'
2211
+ '''
2212
+
2213
+ object: 'ViewEdge'
2214
+ ''' The ViewEdge object currently pointed by this iterator.
2215
+
2216
+ :type: 'ViewEdge'
2217
+ '''
2218
+
2219
+ orientation: bool
2220
+ ''' The orientation of the pointed ViewEdge in the iteration. If true, the iterator looks for the next ViewEdge among those ViewEdges that surround the ending ViewVertex of the "begin" ViewEdge. If false, the iterator searches over the ViewEdges surrounding the ending ViewVertex of the "begin" ViewEdge.
2221
+
2222
+ :type: bool
2223
+ '''
2224
+
2225
+ def __init__(self,
2226
+ begin: typing.Optional['ViewEdge'] = None,
2227
+ orientation: bool = True):
2228
+ ''' __init__(brother) Builds a ViewEdgeIterator from a starting ViewEdge and its orientation or the copy constructor.
2229
+
2230
+ :param begin: The ViewEdge from where to start the iteration.
2231
+ :type begin: typing.Optional['ViewEdge']
2232
+ :param orientation: If true, we'll look for the next ViewEdge among the ViewEdges that surround the ending ViewVertex of begin. If false, we'll search over the ViewEdges surrounding the ending ViewVertex of begin.
2233
+ :type orientation: bool
2234
+ :param brother: A ViewEdgeIterator object.
2235
+ :type brother: 'ViewEdgeIterator'
2236
+ '''
2237
+ ...
2238
+
2239
+ def change_orientation(self):
2240
+ ''' Changes the current orientation.
2241
+
2242
+ '''
2243
+ ...
2244
+
2245
+
2246
+ class ViewMap:
2247
+ ''' Class defining the ViewMap.
2248
+ '''
2249
+
2250
+ scene_bbox: 'BBox'
2251
+ ''' The 3D bounding box of the scene.
2252
+
2253
+ :type: 'BBox'
2254
+ '''
2255
+
2256
+ def __init__(self):
2257
+ ''' Default constructor.
2258
+
2259
+ '''
2260
+ ...
2261
+
2262
+ def get_closest_fedge(self, x: float, y: float) -> 'FEdge':
2263
+ ''' Gets the FEdge nearest to the 2D point specified as arguments.
2264
+
2265
+ :param x: X coordinate of a 2D point.
2266
+ :type x: float
2267
+ :param y: Y coordinate of a 2D point.
2268
+ :type y: float
2269
+ :rtype: 'FEdge'
2270
+ :return: The FEdge nearest to the specified 2D point.
2271
+ '''
2272
+ ...
2273
+
2274
+ def get_closest_viewedge(self, x: float, y: float) -> 'ViewEdge':
2275
+ ''' Gets the ViewEdge nearest to the 2D point specified as arguments.
2276
+
2277
+ :param x: X coordinate of a 2D point.
2278
+ :type x: float
2279
+ :param y: Y coordinate of a 2D point.
2280
+ :type y: float
2281
+ :rtype: 'ViewEdge'
2282
+ :return: The ViewEdge nearest to the specified 2D point.
2283
+ '''
2284
+ ...
2285
+
2286
+
2287
+ class ViewShape:
2288
+ ''' Class gathering the elements of the ViewMap (i.e., `ViewVertex` and `ViewEdge`) that are issued from the same input shape.
2289
+ '''
2290
+
2291
+ edges: typing.List['ViewEdge']
2292
+ ''' The list of ViewEdge objects contained in this ViewShape.
2293
+
2294
+ :type: typing.List['ViewEdge']
2295
+ '''
2296
+
2297
+ id: 'Id'
2298
+ ''' The Id of this ViewShape.
2299
+
2300
+ :type: 'Id'
2301
+ '''
2302
+
2303
+ library_path: typing.Union[str, typing.Any]
2304
+ ''' The library path of the ViewShape.
2305
+
2306
+ :type: typing.Union[str, typing.Any]
2307
+ '''
2308
+
2309
+ name: str
2310
+ ''' The name of the ViewShape.
2311
+
2312
+ :type: str
2313
+ '''
2314
+
2315
+ sshape: 'SShape'
2316
+ ''' The SShape on top of which this ViewShape is built.
2317
+
2318
+ :type: 'SShape'
2319
+ '''
2320
+
2321
+ vertices: typing.List['ViewVertex']
2322
+ ''' The list of ViewVertex objects contained in this ViewShape.
2323
+
2324
+ :type: typing.List['ViewVertex']
2325
+ '''
2326
+
2327
+ def __init__(self):
2328
+ ''' __init__(brother) __init__(sshape) Builds a `ViewShape` using the default constructor, copy constructor, or from a `SShape`.
2329
+
2330
+ :param brother: A ViewShape object.
2331
+ :type brother: 'ViewShape'
2332
+ :param sshape: An SShape object.
2333
+ :type sshape: 'SShape'
2334
+ '''
2335
+ ...
2336
+
2337
+ def add_edge(self, edge: 'ViewEdge'):
2338
+ ''' Adds a ViewEdge to the list of ViewEdge objects.
2339
+
2340
+ :param edge: A ViewEdge object.
2341
+ :type edge: 'ViewEdge'
2342
+ '''
2343
+ ...
2344
+
2345
+ def add_vertex(self, vertex: 'ViewVertex'):
2346
+ ''' Adds a ViewVertex to the list of the ViewVertex objects.
2347
+
2348
+ :param vertex: A ViewVertex object.
2349
+ :type vertex: 'ViewVertex'
2350
+ '''
2351
+ ...
2352
+
2353
+
2354
+ class ViewVertex:
2355
+ ''' Class hierarchy: `Interface0D` > `ViewVertex` Class to define a view vertex. A view vertex is a feature vertex corresponding to a point of the image graph, where the characteristics of an edge (e.g., nature and visibility) might change. A `ViewVertex` can be of two kinds: A `TVertex` when it corresponds to the intersection between two ViewEdges or a `NonTVertex` when it corresponds to a vertex of the initial input mesh (it is the case for vertices such as corners for example). Thus, this class can be specialized into two classes, the `TVertex` class and the `NonTVertex` class.
2356
+ '''
2357
+
2358
+ nature: 'Nature'
2359
+ ''' The nature of this ViewVertex.
2360
+
2361
+ :type: 'Nature'
2362
+ '''
2363
+
2364
+ def edges_begin(self) -> 'orientedViewEdgeIterator':
2365
+ ''' Returns an iterator over the ViewEdges that goes to or comes from this ViewVertex pointing to the first ViewEdge of the list. The orientedViewEdgeIterator allows to iterate in CCW order over these ViewEdges and to get the orientation for each ViewEdge (incoming/outgoing).
2366
+
2367
+ :rtype: 'orientedViewEdgeIterator'
2368
+ :return: An orientedViewEdgeIterator pointing to the first ViewEdge.
2369
+ '''
2370
+ ...
2371
+
2372
+ def edges_end(self) -> 'orientedViewEdgeIterator':
2373
+ ''' Returns an orientedViewEdgeIterator over the ViewEdges around this ViewVertex, pointing after the last ViewEdge.
2374
+
2375
+ :rtype: 'orientedViewEdgeIterator'
2376
+ :return: An orientedViewEdgeIterator pointing after the last ViewEdge.
2377
+ '''
2378
+ ...
2379
+
2380
+ def edges_iterator(self, edge: 'ViewEdge') -> 'orientedViewEdgeIterator':
2381
+ ''' Returns an orientedViewEdgeIterator pointing to the ViewEdge given as argument.
2382
+
2383
+ :param edge: A ViewEdge object.
2384
+ :type edge: 'ViewEdge'
2385
+ :rtype: 'orientedViewEdgeIterator'
2386
+ :return: An orientedViewEdgeIterator pointing to the given ViewEdge.
2387
+ '''
2388
+ ...
2389
+
2390
+
2391
+ class orientedViewEdgeIterator:
2392
+ ''' Class hierarchy: `Iterator` > `orientedViewEdgeIterator` Class representing an iterator over oriented ViewEdges around a `ViewVertex`. This iterator allows a CCW iteration (in the image plane). An instance of an orientedViewEdgeIterator can only be obtained from a ViewVertex by calling edges_begin() or edges_end().
2393
+ '''
2394
+
2395
+ object: typing.Union[bool, 'ViewEdge']
2396
+ ''' The oriented ViewEdge (i.e., a tuple of the pointed ViewEdge and a boolean value) currently pointed to by this iterator. If the boolean value is true, the ViewEdge is incoming.
2397
+
2398
+ :type: typing.Union[bool, 'ViewEdge']
2399
+ '''
2400
+
2401
+ def __init__(self):
2402
+ ''' __init__(iBrother) Creates an `orientedViewEdgeIterator` using either the default constructor or the copy constructor.
2403
+
2404
+ :param iBrother: An orientedViewEdgeIterator object.
2405
+ :type iBrother: 'orientedViewEdgeIterator'
2406
+ '''
2407
+ ...