fake-bpy-module-latest 20251003__py3-none-any.whl → 20260113__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 (137) hide show
  1. {bl_i18n_utils → _bl_i18n_utils}/__init__.pyi +1 -0
  2. {bl_i18n_utils → _bl_i18n_utils}/settings/__init__.pyi +2 -0
  3. _bl_i18n_utils/utils_spell_check/__init__.pyi +22 -0
  4. {bl_ui_utils → _bl_ui_utils}/__init__.pyi +1 -0
  5. _bpy_internal/__init__.pyi +1 -0
  6. _bpy_internal/disk_file_hash_service/__init__.pyi +19 -0
  7. _bpy_internal/disk_file_hash_service/backend_sqlite/__init__.pyi +48 -0
  8. _bpy_internal/disk_file_hash_service/hash_service/__init__.pyi +64 -0
  9. _bpy_internal/disk_file_hash_service/types/__init__.pyi +53 -0
  10. _bpy_types/__init__.pyi +17 -1
  11. aud/__init__.pyi +70 -0
  12. bl_math/__init__.pyi +3 -1
  13. bl_operators/__init__.pyi +1 -0
  14. bl_operators/anim/__init__.pyi +42 -0
  15. bl_operators/copy_global_transform/__init__.pyi +271 -0
  16. bl_operators/node/__init__.pyi +38 -4
  17. bl_operators/object/__init__.pyi +0 -7
  18. bl_operators/uvcalc_follow_active/__init__.pyi +1 -1
  19. bl_operators/uvcalc_transform/__init__.pyi +21 -8
  20. bl_ui/__init__.pyi +3 -0
  21. bl_ui/node_add_menu/__init__.pyi +13 -6
  22. bl_ui/node_add_menu_compositor/__init__.pyi +19 -19
  23. bl_ui/node_add_menu_geometry/__init__.pyi +56 -56
  24. bl_ui/node_add_menu_shader/__init__.pyi +10 -10
  25. bl_ui/node_add_menu_texture/__init__.pyi +1 -1
  26. bl_ui/properties_constraint/__init__.pyi +68 -0
  27. bl_ui/properties_object/__init__.pyi +37 -0
  28. bl_ui/properties_paint_common/__init__.pyi +23 -3
  29. bl_ui/properties_strip/__init__.pyi +786 -0
  30. bl_ui/properties_strip_modifier/__init__.pyi +47 -0
  31. bl_ui/properties_view_layer/__init__.pyi +7 -0
  32. bl_ui/space_clip/__init__.pyi +1 -0
  33. bl_ui/space_dopesheet/__init__.pyi +56 -0
  34. bl_ui/space_image/__init__.pyi +2 -2
  35. bl_ui/space_node/__init__.pyi +29 -2
  36. bl_ui/space_properties/__init__.pyi +31 -0
  37. bl_ui/space_sequencer/__init__.pyi +42 -772
  38. bl_ui/space_time/__init__.pyi +54 -0
  39. bl_ui/space_topbar/__init__.pyi +7 -0
  40. bl_ui/space_userpref/__init__.pyi +7 -2
  41. bl_ui/space_view3d/__init__.pyi +38 -10
  42. bl_ui/space_view3d_sidebar/__init__.pyi +135 -0
  43. bl_ui/space_view3d_toolbar/__init__.pyi +2 -1
  44. blf/__init__.pyi +9 -6
  45. bmesh/ops/__init__.pyi +3 -0
  46. bmesh/types/__init__.pyi +184 -36
  47. bmesh/utils/__init__.pyi +22 -5
  48. bpy/app/__init__.pyi +54 -52
  49. bpy/app/translations/__init__.pyi +1 -1
  50. bpy/ops/anim/__init__.pyi +18 -12
  51. bpy/ops/armature/__init__.pyi +1 -1
  52. bpy/ops/curves/__init__.pyi +3 -3
  53. bpy/ops/export_anim/__init__.pyi +3 -0
  54. bpy/ops/export_scene/__init__.pyi +1 -1
  55. bpy/ops/geometry/__init__.pyi +0 -83
  56. bpy/ops/grease_pencil/__init__.pyi +3 -3
  57. bpy/ops/import_anim/__init__.pyi +2 -2
  58. bpy/ops/mesh/__init__.pyi +2 -2
  59. bpy/ops/nla/__init__.pyi +1 -1
  60. bpy/ops/node/__init__.pyi +29 -7
  61. bpy/ops/object/__init__.pyi +93 -0
  62. bpy/ops/pose/__init__.pyi +4 -4
  63. bpy/ops/render/__init__.pyi +4 -1
  64. bpy/ops/screen/__init__.pyi +29 -0
  65. bpy/ops/sculpt/__init__.pyi +30 -41
  66. bpy/ops/sequencer/__init__.pyi +67 -3
  67. bpy/ops/text/__init__.pyi +3 -0
  68. bpy/ops/transform/__init__.pyi +10 -3
  69. bpy/ops/uv/__init__.pyi +54 -0
  70. bpy/ops/wm/__init__.pyi +20 -32
  71. bpy/props/__init__.pyi +5 -11
  72. bpy/stub_internal/rna_enums/__init__.pyi +52 -20
  73. bpy/types/__init__.pyi +7912 -3664
  74. bpy/utils/__init__.pyi +3 -3
  75. bpy/utils/previews/__init__.pyi +1 -1
  76. bpy_extras/anim_utils/__init__.pyi +9 -0
  77. bpy_extras/id_map_utils/__init__.pyi +15 -6
  78. bpy_extras/keyconfig_utils/__init__.pyi +1 -1
  79. {fake_bpy_module_latest-20251003.dist-info → fake_bpy_module_latest-20260113.dist-info}/METADATA +3 -1
  80. {fake_bpy_module_latest-20251003.dist-info → fake_bpy_module_latest-20260113.dist-info}/RECORD +137 -128
  81. {fake_bpy_module_latest-20251003.dist-info → fake_bpy_module_latest-20260113.dist-info}/top_level.txt +14 -14
  82. freestyle/utils/__init__.pyi +1 -1
  83. gpu/matrix/__init__.pyi +1 -1
  84. gpu/shader/__init__.pyi +22 -1
  85. gpu/state/__init__.pyi +77 -27
  86. gpu/types/__init__.pyi +91 -20
  87. gpu_extras/presets/__init__.pyi +7 -0
  88. idprop/types/__init__.pyi +6 -2
  89. imbuf/__init__.pyi +2 -2
  90. imbuf/types/__init__.pyi +2 -2
  91. keyingsets_builtins/__init__.pyi +1 -1
  92. mathutils/__init__.pyi +53 -29
  93. mathutils/bvhtree/__init__.pyi +3 -2
  94. mathutils/geometry/__init__.pyi +31 -13
  95. mathutils/interpolate/__init__.pyi +4 -2
  96. {animsys_refactor → _animsys_refactor}/__init__.pyi +0 -0
  97. {animsys_refactor → _animsys_refactor}/py.typed +0 -0
  98. {bl_console_utils → _bl_console_utils}/__init__.pyi +0 -0
  99. {bl_console_utils → _bl_console_utils}/autocomplete/__init__.pyi +0 -0
  100. {bl_console_utils → _bl_console_utils}/autocomplete/complete_calltip/__init__.pyi +0 -0
  101. {bl_console_utils → _bl_console_utils}/autocomplete/complete_import/__init__.pyi +0 -0
  102. {bl_console_utils → _bl_console_utils}/autocomplete/complete_namespace/__init__.pyi +0 -0
  103. {bl_console_utils → _bl_console_utils}/autocomplete/intellisense/__init__.pyi +0 -0
  104. {bl_console_utils → _bl_console_utils}/py.typed +0 -0
  105. {bl_i18n_utils → _bl_i18n_utils}/bl_extract_messages/__init__.pyi +0 -0
  106. {bl_i18n_utils → _bl_i18n_utils}/merge_po/__init__.pyi +0 -0
  107. {bl_i18n_utils → _bl_i18n_utils}/py.typed +0 -0
  108. {bl_i18n_utils → _bl_i18n_utils}/utils/__init__.pyi +0 -0
  109. {bl_i18n_utils → _bl_i18n_utils}/utils_cli/__init__.pyi +0 -0
  110. {bl_i18n_utils → _bl_i18n_utils}/utils_languages_menu/__init__.pyi +0 -0
  111. {bl_i18n_utils → _bl_i18n_utils}/utils_rtl/__init__.pyi +0 -0
  112. {bl_previews_utils → _bl_previews_utils}/__init__.pyi +0 -0
  113. {bl_previews_utils → _bl_previews_utils}/bl_previews_render/__init__.pyi +0 -0
  114. {bl_previews_utils → _bl_previews_utils}/py.typed +0 -0
  115. {bl_rna_utils → _bl_rna_utils}/__init__.pyi +0 -0
  116. {bl_rna_utils → _bl_rna_utils}/data_path/__init__.pyi +0 -0
  117. {bl_rna_utils → _bl_rna_utils}/py.typed +0 -0
  118. {bl_text_utils → _bl_text_utils}/__init__.pyi +0 -0
  119. {bl_text_utils → _bl_text_utils}/external_editor/__init__.pyi +0 -0
  120. {bl_text_utils → _bl_text_utils}/py.typed +0 -0
  121. {bl_ui_utils → _bl_ui_utils}/layout/__init__.pyi +0 -0
  122. {bl_ui_utils → _bl_ui_utils}/py.typed +0 -0
  123. {bpy_restrict_state → _bpy_restrict_state}/__init__.pyi +0 -0
  124. {bpy_restrict_state → _bpy_restrict_state}/py.typed +0 -0
  125. {console_python → _console_python}/__init__.pyi +0 -0
  126. {console_python → _console_python}/py.typed +0 -0
  127. {console_shell → _console_shell}/__init__.pyi +0 -0
  128. {console_shell → _console_shell}/py.typed +0 -0
  129. {graphviz_export → _graphviz_export}/__init__.pyi +0 -0
  130. {graphviz_export → _graphviz_export}/py.typed +0 -0
  131. {keyingsets_utils → _keyingsets_utils}/__init__.pyi +0 -0
  132. {keyingsets_utils → _keyingsets_utils}/py.typed +0 -0
  133. {rna_info → _rna_info}/__init__.pyi +0 -0
  134. {rna_info → _rna_info}/py.typed +0 -0
  135. {rna_xml → _rna_xml}/__init__.pyi +0 -0
  136. {rna_xml → _rna_xml}/py.typed +0 -0
  137. {fake_bpy_module_latest-20251003.dist-info → fake_bpy_module_latest-20260113.dist-info}/WHEEL +0 -0
mathutils/__init__.pyi CHANGED
@@ -409,8 +409,11 @@ class Euler:
409
409
  :type: bool
410
410
  """
411
411
 
412
- order: typing.Any
413
- """ Euler rotation order."""
412
+ order: typing.Literal["XYZ", "XZY", "YXZ", "YZX", "ZXY", "ZYX"]
413
+ """ Euler rotation order.
414
+
415
+ :type: typing.Literal['XYZ', 'XZY', 'YXZ', 'YZX', 'ZXY', 'ZYX']
416
+ """
414
417
 
415
418
  owner: typing.Any
416
419
  """ The item this is wrapping or None (read-only)."""
@@ -476,7 +479,7 @@ class Euler:
476
479
 
477
480
  def rotate_axis(
478
481
  self,
479
- axis,
482
+ axis: typing.Literal["X", "Y", "Z"],
480
483
  angle: float,
481
484
  /,
482
485
  ) -> None:
@@ -484,6 +487,7 @@ class Euler:
484
487
  (no 720 degree pitches).
485
488
 
486
489
  :param axis: An axis string.
490
+ :type axis: typing.Literal['X', 'Y', 'Z']
487
491
  :param angle: angle in radians.
488
492
  :type angle: float
489
493
  """
@@ -704,7 +708,9 @@ class Matrix:
704
708
  @classmethod
705
709
  def OrthoProjection(
706
710
  cls,
707
- axis: Vector | collections.abc.Sequence[float],
711
+ axis: Vector
712
+ | collections.abc.Sequence[float]
713
+ | typing.Literal["X", "Y", "XY", "XZ", "YZ"],
708
714
  size: int,
709
715
  /,
710
716
  ) -> typing_extensions.Self:
@@ -713,7 +719,7 @@ class Matrix:
713
719
  :param axis: An axis string,
714
720
  where a single axis is for a 2D matrix.
715
721
  Or a vector for an arbitrary axis
716
- :type axis: Vector | collections.abc.Sequence[float]
722
+ :type axis: Vector | collections.abc.Sequence[float] | typing.Literal['X', 'Y', 'XY', 'XZ', 'YZ']
717
723
  :param size: The size of the projection matrix to construct [2, 4].
718
724
  :type size: int
719
725
  :return: A new projection matrix.
@@ -725,7 +731,10 @@ class Matrix:
725
731
  cls,
726
732
  angle: float,
727
733
  size: int,
728
- axis: Vector | collections.abc.Sequence[float] | None = [],
734
+ axis: Vector
735
+ | collections.abc.Sequence[float]
736
+ | typing.Literal["X", "Y", "Z"]
737
+ | None = [],
729
738
  /,
730
739
  ) -> typing_extensions.Self:
731
740
  """Create a matrix representing a rotation.
@@ -736,7 +745,7 @@ class Matrix:
736
745
  :type size: int
737
746
  :param axis: an axis string or a 3D Vector Object
738
747
  (optional when size is 2).
739
- :type axis: Vector | collections.abc.Sequence[float] | None
748
+ :type axis: Vector | collections.abc.Sequence[float] | typing.Literal['X', 'Y', 'Z'] | None
740
749
  :return: A new rotation matrix.
741
750
  :rtype: typing_extensions.Self
742
751
  """
@@ -764,7 +773,7 @@ class Matrix:
764
773
  @classmethod
765
774
  def Shear(
766
775
  cls,
767
- plane,
776
+ plane: typing.Literal["X", "Y", "XY", "XZ", "YZ"],
768
777
  size: int,
769
778
  factor: collections.abc.Sequence[float] | float,
770
779
  /,
@@ -773,6 +782,7 @@ class Matrix:
773
782
 
774
783
  :param plane: An axis string,
775
784
  where a single axis is for a 2D matrix only.
785
+ :type plane: typing.Literal['X', 'Y', 'XY', 'XZ', 'YZ']
776
786
  :param size: The size of the shear matrix to construct [2, 4].
777
787
  :type size: int
778
788
  :param factor: The factor of shear to apply. For a 2 size matrix use a single float. For a 3 or 4 size matrix pass a pair of floats corresponding with the plane axis.
@@ -1399,13 +1409,14 @@ class Quaternion:
1399
1409
 
1400
1410
  def to_euler(
1401
1411
  self,
1402
- order="XYZ",
1412
+ order: typing.Literal["XYZ", "XZY", "YXZ", "YZX", "ZXY", "ZYX"] = "XYZ",
1403
1413
  euler_compat: Euler | collections.abc.Sequence[float] | None = None,
1404
1414
  /,
1405
1415
  ) -> Euler:
1406
1416
  """Return Euler representation of the quaternion.
1407
1417
 
1408
1418
  :param order: Rotation order.
1419
+ :type order: typing.Literal['XYZ', 'XZY', 'YXZ', 'YZX', 'ZXY', 'ZYX']
1409
1420
  :param euler_compat: Optional euler argument the new euler will be made
1410
1421
  compatible with (no axis flipping between them).
1411
1422
  Useful for converting a series of matrices to animation curves.
@@ -1415,7 +1426,7 @@ class Quaternion:
1415
1426
  """
1416
1427
 
1417
1428
  def to_exponential_map(self) -> None:
1418
- """Return the exponential map representation of the quaternion.This representation consist of the rotation axis multiplied by the rotation angle.
1429
+ """Return the exponential map representation of the quaternion.This representation consists of the rotation axis multiplied by the rotation angle.
1419
1430
  Such a representation is useful for interpolation between multiple orientations.To convert back to a quaternion, pass it to the `Quaternion` constructor.
1420
1431
 
1421
1432
  :return: exponential map.
@@ -1430,13 +1441,14 @@ class Quaternion:
1430
1441
 
1431
1442
  def to_swing_twist(
1432
1443
  self,
1433
- axis,
1444
+ axis: typing.Literal["X", "Y", "Z"],
1434
1445
  /,
1435
1446
  ) -> tuple[Quaternion, float]:
1436
1447
  """Split the rotation into a swing quaternion with the specified
1437
1448
  axis fixed at zero, and the remaining twist rotation angle.
1438
1449
 
1439
1450
  :param axis: Twist axis as a string.
1451
+ :type axis: typing.Literal['X', 'Y', 'Z']
1440
1452
  :return: Swing, twist angle.
1441
1453
  :rtype: tuple[Quaternion, float]
1442
1454
  """
@@ -3707,31 +3719,35 @@ class Vector:
3707
3719
  size: int,
3708
3720
  fill: float = 0.0,
3709
3721
  /,
3710
- ) -> None:
3722
+ ) -> typing_extensions.Self:
3711
3723
  """Create a vector of length size with all values set to fill.
3712
3724
 
3713
3725
  :param size: The length of the vector to be created.
3714
3726
  :type size: int
3715
3727
  :param fill: The value used to fill the vector.
3716
3728
  :type fill: float
3729
+ :return: A new vector.
3730
+ :rtype: typing_extensions.Self
3717
3731
  """
3718
3732
 
3719
3733
  @classmethod
3720
3734
  def Linspace(
3721
3735
  cls,
3722
- start: int,
3723
- stop: int,
3736
+ start: float,
3737
+ stop: float,
3724
3738
  size: int,
3725
3739
  /,
3726
- ) -> None:
3740
+ ) -> typing_extensions.Self:
3727
3741
  """Create a vector of the specified size which is filled with linearly spaced values between start and stop values.
3728
3742
 
3729
3743
  :param start: The start of the range used to fill the vector.
3730
- :type start: int
3744
+ :type start: float
3731
3745
  :param stop: The end of the range used to fill the vector.
3732
- :type stop: int
3746
+ :type stop: float
3733
3747
  :param size: The size of the vector to be created.
3734
3748
  :type size: int
3749
+ :return: A new vector.
3750
+ :rtype: typing_extensions.Self
3735
3751
  """
3736
3752
 
3737
3753
  @classmethod
@@ -3741,8 +3757,8 @@ class Vector:
3741
3757
  stop: int,
3742
3758
  step: int = 1,
3743
3759
  /,
3744
- ) -> None:
3745
- """Create a filled with a range of values.
3760
+ ) -> typing_extensions.Self:
3761
+ """Create a vector filled with a range of values.
3746
3762
 
3747
3763
  :param start: The start of the range used to fill the vector.
3748
3764
  :type start: int
@@ -3750,6 +3766,8 @@ class Vector:
3750
3766
  :type stop: int
3751
3767
  :param step: The step between successive values in the vector.
3752
3768
  :type step: int
3769
+ :return: A new vector.
3770
+ :rtype: typing_extensions.Self
3753
3771
  """
3754
3772
 
3755
3773
  @classmethod
@@ -3758,13 +3776,15 @@ class Vector:
3758
3776
  vector: collections.abc.Sequence[float] | typing_extensions.Self,
3759
3777
  size: int,
3760
3778
  /,
3761
- ) -> None:
3779
+ ) -> typing_extensions.Self:
3762
3780
  """Create a vector by repeating the values in vector until the required size is reached.
3763
3781
 
3764
3782
  :param vector: The vector to draw values from.
3765
3783
  :type vector: collections.abc.Sequence[float] | typing_extensions.Self
3766
3784
  :param size: The size of the vector to be created.
3767
3785
  :type size: int
3786
+ :return: A new vector.
3787
+ :rtype: typing_extensions.Self
3768
3788
  """
3769
3789
 
3770
3790
  def angle(
@@ -3905,32 +3925,34 @@ class Vector:
3905
3925
 
3906
3926
  def resize(
3907
3927
  self,
3908
- size,
3928
+ size: int,
3909
3929
  /,
3910
3930
  ) -> None:
3911
3931
  """Resize the vector to have size number of elements.
3912
3932
 
3913
- :param size:
3933
+ :param size: The new size of the vector.
3934
+ :type size: int
3914
3935
  """
3915
3936
 
3916
3937
  def resize_2d(self) -> None:
3917
- """Resize the vector to 2D (x, y)."""
3938
+ """Resize the vector to 2D (x, y)."""
3918
3939
 
3919
3940
  def resize_3d(self) -> None:
3920
- """Resize the vector to 3D (x, y, z)."""
3941
+ """Resize the vector to 3D (x, y, z)."""
3921
3942
 
3922
3943
  def resize_4d(self) -> None:
3923
3944
  """Resize the vector to 4D (x, y, z, w)."""
3924
3945
 
3925
3946
  def resized(
3926
3947
  self,
3927
- size,
3948
+ size: int,
3928
3949
  /,
3929
3950
  ) -> typing_extensions.Self:
3930
3951
  """Return a resized copy of the vector with size number of elements.
3931
3952
 
3932
- :param size:
3933
- :return: a new vector
3953
+ :param size: The new size of the vector.
3954
+ :type size: int
3955
+ :return: A new vector.
3934
3956
  :rtype: typing_extensions.Self
3935
3957
  """
3936
3958
 
@@ -4006,14 +4028,16 @@ class Vector:
4006
4028
 
4007
4029
  def to_track_quat(
4008
4030
  self,
4009
- track="Z",
4010
- up="Y",
4031
+ track: typing.Literal["-", "X", "Y", "Z", "-X", "-Y", "-Z"] = "Z",
4032
+ up: typing.Literal["X", "Y", "Z"] = "Y",
4011
4033
  /,
4012
4034
  ) -> Quaternion:
4013
4035
  """Return a quaternion rotation from the vector and the track and up axis.
4014
4036
 
4015
4037
  :param track: Track axis string.
4038
+ :type track: typing.Literal['-', 'X', 'Y', 'Z', '-X', '-Y', '-Z']
4016
4039
  :param up: Up axis string.
4040
+ :type up: typing.Literal['X', 'Y', 'Z']
4017
4041
  :return: rotation from the vector and the track and up axis.
4018
4042
  :rtype: Quaternion
4019
4043
  """
@@ -72,7 +72,7 @@ class BVHTree:
72
72
 
73
73
  def find_nearest(
74
74
  self,
75
- origin,
75
+ origin: collections.abc.Sequence[float] | mathutils.Vector,
76
76
  distance: float = 1.84467e19,
77
77
  /,
78
78
  ) -> tuple[
@@ -80,7 +80,8 @@ class BVHTree:
80
80
  ]:
81
81
  """Find the nearest element (typically face index) to a point.
82
82
 
83
- :param origin:
83
+ :param origin: Find nearest element to this point.
84
+ :type origin: collections.abc.Sequence[float] | mathutils.Vector
84
85
  :param distance: Maximum distance threshold.
85
86
  :type distance: float
86
87
  :return: Returns a tuple: (position, normal, index, distance),
@@ -103,6 +103,7 @@ def closest_point_on_tri(
103
103
 
104
104
  def convex_hull_2d(
105
105
  points: collections.abc.Sequence[collections.abc.Sequence[float]],
106
+ /,
106
107
  ) -> list[int]:
107
108
  """Returns a list of indices into the list given
108
109
 
@@ -286,7 +287,7 @@ def intersect_line_sphere(
286
287
  :type sphere_co: collections.abc.Sequence[float] | mathutils.Vector
287
288
  :param sphere_radius: Radius of the sphere
288
289
  :type sphere_radius: float
289
- :param clip: When False, dont restrict the intersection to the area of the sphere.
290
+ :param clip: When False, dont restrict the intersection to the line segment.
290
291
  :type clip: bool
291
292
  :return: The intersection points as a pair of vectors or None when there is no intersection
292
293
  :rtype: tuple[mathutils.Vector | None, mathutils.Vector | None]
@@ -311,7 +312,7 @@ def intersect_line_sphere_2d(
311
312
  :type sphere_co: collections.abc.Sequence[float] | mathutils.Vector
312
313
  :param sphere_radius: Radius of the sphere
313
314
  :type sphere_radius: float
314
- :param clip: When False, dont restrict the intersection to the area of the sphere.
315
+ :param clip: When False, dont restrict the intersection to the line segment.
315
316
  :type clip: bool
316
317
  :return: The intersection points as a pair of vectors or None when there is no intersection
317
318
  :rtype: tuple[mathutils.Vector | None, mathutils.Vector | None]
@@ -472,7 +473,7 @@ def intersect_sphere_sphere_2d(
472
473
  radius_b: float,
473
474
  /,
474
475
  ) -> tuple[None, None] | tuple[mathutils.Vector, mathutils.Vector]:
475
- """Returns 2 points on between intersecting circles.
476
+ """Returns 2 points between intersecting circles.
476
477
 
477
478
  :param p_a: Center of the first circle
478
479
  :type p_a: collections.abc.Sequence[float] | mathutils.Vector
@@ -482,21 +483,34 @@ def intersect_sphere_sphere_2d(
482
483
  :type p_b: collections.abc.Sequence[float] | mathutils.Vector
483
484
  :param radius_b: Radius of the second circle
484
485
  :type radius_b: float
485
- :return: 2 points on between intersecting circles or None when there is no intersection.
486
+ :return: 2 points between intersecting circles or None when there is no intersection.
486
487
  :rtype: tuple[None, None] | tuple[mathutils.Vector, mathutils.Vector]
487
488
  """
488
489
 
489
490
  def intersect_tri_tri_2d(
490
- tri_a1,
491
- tri_a2,
492
- tri_a3,
493
- tri_b1,
494
- tri_b2,
495
- tri_b3,
491
+ tri_a1: collections.abc.Sequence[float] | mathutils.Vector,
492
+ tri_a2: collections.abc.Sequence[float] | mathutils.Vector,
493
+ tri_a3: collections.abc.Sequence[float] | mathutils.Vector,
494
+ tri_b1: collections.abc.Sequence[float] | mathutils.Vector,
495
+ tri_b2: collections.abc.Sequence[float] | mathutils.Vector,
496
+ tri_b3: collections.abc.Sequence[float] | mathutils.Vector,
496
497
  /,
497
498
  ) -> bool:
498
499
  """Check if two 2D triangles intersect.
499
500
 
501
+ :param tri_a1: First vertex of the first triangle.
502
+ :type tri_a1: collections.abc.Sequence[float] | mathutils.Vector
503
+ :param tri_a2: Second vertex of the first triangle.
504
+ :type tri_a2: collections.abc.Sequence[float] | mathutils.Vector
505
+ :param tri_a3: Third vertex of the first triangle.
506
+ :type tri_a3: collections.abc.Sequence[float] | mathutils.Vector
507
+ :param tri_b1: First vertex of the second triangle.
508
+ :type tri_b1: collections.abc.Sequence[float] | mathutils.Vector
509
+ :param tri_b2: Second vertex of the second triangle.
510
+ :type tri_b2: collections.abc.Sequence[float] | mathutils.Vector
511
+ :param tri_b3: Third vertex of the second triangle.
512
+ :type tri_b3: collections.abc.Sequence[float] | mathutils.Vector
513
+ :return: True if the triangles intersect.
500
514
  :rtype: bool
501
515
  """
502
516
 
@@ -520,21 +534,25 @@ def points_in_planes(
520
534
 
521
535
  :param planes: List of planes (4D vectors).
522
536
  :type planes: list[collections.abc.Sequence[float] | mathutils.Vector]
523
- :param epsilon_coplanar: Epsilon value for interpreting plane pairs as co-plannar.
537
+ :param epsilon_coplanar: Epsilon value for interpreting plane pairs as co-planar.
524
538
  :type epsilon_coplanar: float
525
539
  :param epsilon_isect: Epsilon value for intersection.
526
540
  :type epsilon_isect: float
527
- :return: Two lists, once containing the 3D coordinates inside the planes, another containing the plane indices used.
541
+ :return: Two lists, one containing the 3D coordinates inside the planes, another containing the plane indices used.
528
542
  :rtype: tuple[list[mathutils.Vector], list[int]]
529
543
  """
530
544
 
531
545
  def tessellate_polygon(
532
- polylines,
546
+ polylines: collections.abc.Sequence[
547
+ collections.abc.Sequence[collections.abc.Sequence[float]]
548
+ ],
533
549
  /,
534
550
  ) -> list[tuple[int, int, int]]:
535
551
  """Takes a list of polylines (each point a pair or triplet of numbers) and returns the point indices for a polyline filled with triangles. Does not handle degenerate geometry (such as zero-length lines due to consecutive identical points).
536
552
 
537
553
  :param polylines: Polygons where each polygon is a sequence of 2D or 3D points.
554
+ :type polylines: collections.abc.Sequence[collections.abc.Sequence[collections.abc.Sequence[float]]]
555
+ :return: A list of triangles.
538
556
  :rtype: list[tuple[int, int, int]]
539
557
  """
540
558
 
@@ -10,13 +10,15 @@ import numpy.typing as npt
10
10
 
11
11
  def poly_3d_calc(
12
12
  veclist: collections.abc.Sequence[collections.abc.Sequence[float]],
13
- pt,
13
+ pt: collections.abc.Sequence[float],
14
14
  /,
15
15
  ) -> list[float]:
16
16
  """Calculate barycentric weights for a point on a polygon.
17
17
 
18
18
  :param veclist: Sequence of 3D positions.
19
19
  :type veclist: collections.abc.Sequence[collections.abc.Sequence[float]]
20
- :param pt: 2D or 3D position. :type pt: Sequence[float] :return: list of per-vector weights.
20
+ :param pt: 2D or 3D position.
21
+ :type pt: collections.abc.Sequence[float]
22
+ :return: list of per-vector weights.
21
23
  :rtype: list[float]
22
24
  """
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes