ScadPy 0.4.4__tar.gz → 0.4.5__tar.gz

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 (542) hide show
  1. {scadpy-0.4.4 → scadpy-0.4.5}/PKG-INFO +1 -3
  2. {scadpy-0.4.4 → scadpy-0.4.5}/docs/_static/badges/coverage.svg +1 -1
  3. {scadpy-0.4.4 → scadpy-0.4.5}/docs/_static/badges/interrogate.svg +3 -3
  4. {scadpy-0.4.4 → scadpy-0.4.5}/pyproject.toml +2 -2
  5. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/core/assembly/topologies/vertex/get_assembly_vertex_coordinates.py +0 -2
  6. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/core/assembly/topologies/vertex/get_assembly_vertex_to_part.py +0 -2
  7. scadpy-0.4.5/scadpy/core/component/exporters/map_component_to_screen.py +79 -0
  8. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/core/part/combinations/intersect_parts.py +0 -1
  9. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/core/part/combinations/subtract_parts.py +0 -1
  10. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/core/part/combinations/unify_parts.py +0 -1
  11. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/core/part/utils/blend_part_colors.py +0 -1
  12. scadpy-0.4.4/scadpy/core/component/exporters/map_component_to_screen.py +0 -68
  13. {scadpy-0.4.4 → scadpy-0.4.5}/.claude/jedi_query.py +0 -0
  14. {scadpy-0.4.4 → scadpy-0.4.5}/.github/workflows/ci.yml +0 -0
  15. {scadpy-0.4.4 → scadpy-0.4.5}/.github/workflows/release.yml +0 -0
  16. {scadpy-0.4.4 → scadpy-0.4.5}/.gitignore +0 -0
  17. {scadpy-0.4.4 → scadpy-0.4.5}/LICENSE.md +0 -0
  18. {scadpy-0.4.4 → scadpy-0.4.5}/README.md +0 -0
  19. {scadpy-0.4.4 → scadpy-0.4.5}/docs/Makefile +0 -0
  20. {scadpy-0.4.4 → scadpy-0.4.5}/docs/_static/css/custom.css +0 -0
  21. {scadpy-0.4.4 → scadpy-0.4.5}/docs/_static/examples/bearing_dark.png +0 -0
  22. {scadpy-0.4.4 → scadpy-0.4.5}/docs/_static/examples/bearing_light.png +0 -0
  23. {scadpy-0.4.4 → scadpy-0.4.5}/docs/_static/examples/dice_dark.png +0 -0
  24. {scadpy-0.4.4 → scadpy-0.4.5}/docs/_static/examples/dice_light.png +0 -0
  25. {scadpy-0.4.4 → scadpy-0.4.5}/docs/_static/examples/extruded_plate_dark.png +0 -0
  26. {scadpy-0.4.4 → scadpy-0.4.5}/docs/_static/examples/extruded_plate_light.png +0 -0
  27. {scadpy-0.4.4 → scadpy-0.4.5}/docs/_static/examples/plate_dark.png +0 -0
  28. {scadpy-0.4.4 → scadpy-0.4.5}/docs/_static/examples/plate_light.png +0 -0
  29. {scadpy-0.4.4 → scadpy-0.4.5}/docs/_static/examples/storage_box_dark.png +0 -0
  30. {scadpy-0.4.4 → scadpy-0.4.5}/docs/_static/examples/storage_box_light.png +0 -0
  31. {scadpy-0.4.4 → scadpy-0.4.5}/docs/_static/logo.ico +0 -0
  32. {scadpy-0.4.4 → scadpy-0.4.5}/docs/_static/logo.png +0 -0
  33. {scadpy-0.4.4 → scadpy-0.4.5}/docs/conf.py +0 -0
  34. {scadpy-0.4.4 → scadpy-0.4.5}/docs/examples.rst +0 -0
  35. {scadpy-0.4.4 → scadpy-0.4.5}/docs/index.rst +0 -0
  36. {scadpy-0.4.4 → scadpy-0.4.5}/docs/scadpy/core/assembly/combinations.rst +0 -0
  37. {scadpy-0.4.4 → scadpy-0.4.5}/docs/scadpy/core/assembly/topologies.rst +0 -0
  38. {scadpy-0.4.4 → scadpy-0.4.5}/docs/scadpy/core/assembly/transformations.rst +0 -0
  39. {scadpy-0.4.4 → scadpy-0.4.5}/docs/scadpy/core/assembly/types.rst +0 -0
  40. {scadpy-0.4.4 → scadpy-0.4.5}/docs/scadpy/core/assembly/utils.rst +0 -0
  41. {scadpy-0.4.4 → scadpy-0.4.5}/docs/scadpy/core/assembly.rst +0 -0
  42. {scadpy-0.4.4 → scadpy-0.4.5}/docs/scadpy/core/component/exporters.rst +0 -0
  43. {scadpy-0.4.4 → scadpy-0.4.5}/docs/scadpy/core/component/features.rst +0 -0
  44. {scadpy-0.4.4 → scadpy-0.4.5}/docs/scadpy/core/component/utils.rst +0 -0
  45. {scadpy-0.4.4 → scadpy-0.4.5}/docs/scadpy/core/component.rst +0 -0
  46. {scadpy-0.4.4 → scadpy-0.4.5}/docs/scadpy/core/part/combinations.rst +0 -0
  47. {scadpy-0.4.4 → scadpy-0.4.5}/docs/scadpy/core/part.rst +0 -0
  48. {scadpy-0.4.4 → scadpy-0.4.5}/docs/scadpy/core.rst +0 -0
  49. {scadpy-0.4.4 → scadpy-0.4.5}/docs/scadpy/d2/shape/combinations.rst +0 -0
  50. {scadpy-0.4.4 → scadpy-0.4.5}/docs/scadpy/d2/shape/exporters.rst +0 -0
  51. {scadpy-0.4.4 → scadpy-0.4.5}/docs/scadpy/d2/shape/features.rst +0 -0
  52. {scadpy-0.4.4 → scadpy-0.4.5}/docs/scadpy/d2/shape/importers.rst +0 -0
  53. {scadpy-0.4.4 → scadpy-0.4.5}/docs/scadpy/d2/shape/primitives.rst +0 -0
  54. {scadpy-0.4.4 → scadpy-0.4.5}/docs/scadpy/d2/shape/topologies.rst +0 -0
  55. {scadpy-0.4.4 → scadpy-0.4.5}/docs/scadpy/d2/shape/transformations.rst +0 -0
  56. {scadpy-0.4.4 → scadpy-0.4.5}/docs/scadpy/d2/shape/types.rst +0 -0
  57. {scadpy-0.4.4 → scadpy-0.4.5}/docs/scadpy/d2/shape.rst +0 -0
  58. {scadpy-0.4.4 → scadpy-0.4.5}/docs/scadpy/d2.rst +0 -0
  59. {scadpy-0.4.4 → scadpy-0.4.5}/docs/scadpy/d3/solid/combinations.rst +0 -0
  60. {scadpy-0.4.4 → scadpy-0.4.5}/docs/scadpy/d3/solid/exporters.rst +0 -0
  61. {scadpy-0.4.4 → scadpy-0.4.5}/docs/scadpy/d3/solid/features.rst +0 -0
  62. {scadpy-0.4.4 → scadpy-0.4.5}/docs/scadpy/d3/solid/importers.rst +0 -0
  63. {scadpy-0.4.4 → scadpy-0.4.5}/docs/scadpy/d3/solid/primitives.rst +0 -0
  64. {scadpy-0.4.4 → scadpy-0.4.5}/docs/scadpy/d3/solid/topologies.rst +0 -0
  65. {scadpy-0.4.4 → scadpy-0.4.5}/docs/scadpy/d3/solid/transformations.rst +0 -0
  66. {scadpy-0.4.4 → scadpy-0.4.5}/docs/scadpy/d3/solid/types.rst +0 -0
  67. {scadpy-0.4.4 → scadpy-0.4.5}/docs/scadpy/d3/solid.rst +0 -0
  68. {scadpy-0.4.4 → scadpy-0.4.5}/docs/scadpy/d3.rst +0 -0
  69. {scadpy-0.4.4 → scadpy-0.4.5}/docs/scripts/build_skills.py +0 -0
  70. {scadpy-0.4.4 → scadpy-0.4.5}/docs/snapshots/d2__chamfer_shape_all__dark.md5 +0 -0
  71. {scadpy-0.4.4 → scadpy-0.4.5}/docs/snapshots/d2__chamfer_shape_all__light.md5 +0 -0
  72. {scadpy-0.4.4 → scadpy-0.4.5}/docs/snapshots/d2__chamfer_shape_clamp_proportional__dark.md5 +0 -0
  73. {scadpy-0.4.4 → scadpy-0.4.5}/docs/snapshots/d2__chamfer_shape_clamp_proportional__light.md5 +0 -0
  74. {scadpy-0.4.4 → scadpy-0.4.5}/docs/snapshots/d2__chamfer_shape_concave_asymmetric__dark.md5 +0 -0
  75. {scadpy-0.4.4 → scadpy-0.4.5}/docs/snapshots/d2__chamfer_shape_concave_asymmetric__light.md5 +0 -0
  76. {scadpy-0.4.4 → scadpy-0.4.5}/docs/snapshots/d2__chamfer_shape_convex_only__dark.md5 +0 -0
  77. {scadpy-0.4.4 → scadpy-0.4.5}/docs/snapshots/d2__chamfer_shape_convex_only__light.md5 +0 -0
  78. {scadpy-0.4.4 → scadpy-0.4.5}/docs/snapshots/d2__chamfer_shape_sharp_convex__dark.md5 +0 -0
  79. {scadpy-0.4.4 → scadpy-0.4.5}/docs/snapshots/d2__chamfer_shape_sharp_convex__light.md5 +0 -0
  80. {scadpy-0.4.4 → scadpy-0.4.5}/docs/snapshots/d2__color_shape__dark.md5 +0 -0
  81. {scadpy-0.4.4 → scadpy-0.4.5}/docs/snapshots/d2__color_shape__light.md5 +0 -0
  82. {scadpy-0.4.4 → scadpy-0.4.5}/docs/snapshots/d2__color_solid__dark.md5 +0 -0
  83. {scadpy-0.4.4 → scadpy-0.4.5}/docs/snapshots/d2__color_solid__light.md5 +0 -0
  84. {scadpy-0.4.4 → scadpy-0.4.5}/docs/snapshots/d2__concat_shape__dark.md5 +0 -0
  85. {scadpy-0.4.4 → scadpy-0.4.5}/docs/snapshots/d2__concat_shape__light.md5 +0 -0
  86. {scadpy-0.4.4 → scadpy-0.4.5}/docs/snapshots/d2__concat_solid__dark.md5 +0 -0
  87. {scadpy-0.4.4 → scadpy-0.4.5}/docs/snapshots/d2__concat_solid__light.md5 +0 -0
  88. {scadpy-0.4.4 → scadpy-0.4.5}/docs/snapshots/d2__cone__dark.md5 +0 -0
  89. {scadpy-0.4.4 → scadpy-0.4.5}/docs/snapshots/d2__cone__light.md5 +0 -0
  90. {scadpy-0.4.4 → scadpy-0.4.5}/docs/snapshots/d2__convexify_shape__dark.md5 +0 -0
  91. {scadpy-0.4.4 → scadpy-0.4.5}/docs/snapshots/d2__convexify_shape__light.md5 +0 -0
  92. {scadpy-0.4.4 → scadpy-0.4.5}/docs/snapshots/d2__convexify_shape_partial__dark.md5 +0 -0
  93. {scadpy-0.4.4 → scadpy-0.4.5}/docs/snapshots/d2__convexify_shape_partial__light.md5 +0 -0
  94. {scadpy-0.4.4 → scadpy-0.4.5}/docs/snapshots/d2__convexify_solid__dark.md5 +0 -0
  95. {scadpy-0.4.4 → scadpy-0.4.5}/docs/snapshots/d2__convexify_solid__light.md5 +0 -0
  96. {scadpy-0.4.4 → scadpy-0.4.5}/docs/snapshots/d2__cube__dark.md5 +0 -0
  97. {scadpy-0.4.4 → scadpy-0.4.5}/docs/snapshots/d2__cube__light.md5 +0 -0
  98. {scadpy-0.4.4 → scadpy-0.4.5}/docs/snapshots/d2__cuboid__dark.md5 +0 -0
  99. {scadpy-0.4.4 → scadpy-0.4.5}/docs/snapshots/d2__cuboid__light.md5 +0 -0
  100. {scadpy-0.4.4 → scadpy-0.4.5}/docs/snapshots/d2__cylinder__dark.md5 +0 -0
  101. {scadpy-0.4.4 → scadpy-0.4.5}/docs/snapshots/d2__cylinder__light.md5 +0 -0
  102. {scadpy-0.4.4 → scadpy-0.4.5}/docs/snapshots/d2__examples_bearing__dark.md5 +0 -0
  103. {scadpy-0.4.4 → scadpy-0.4.5}/docs/snapshots/d2__examples_bearing__light.md5 +0 -0
  104. {scadpy-0.4.4 → scadpy-0.4.5}/docs/snapshots/d2__examples_dice__dark.md5 +0 -0
  105. {scadpy-0.4.4 → scadpy-0.4.5}/docs/snapshots/d2__examples_dice__light.md5 +0 -0
  106. {scadpy-0.4.4 → scadpy-0.4.5}/docs/snapshots/d2__examples_extruded_plate__dark.md5 +0 -0
  107. {scadpy-0.4.4 → scadpy-0.4.5}/docs/snapshots/d2__examples_extruded_plate__light.md5 +0 -0
  108. {scadpy-0.4.4 → scadpy-0.4.5}/docs/snapshots/d2__examples_honeycomb_extruded_plate__dark.md5 +0 -0
  109. {scadpy-0.4.4 → scadpy-0.4.5}/docs/snapshots/d2__examples_honeycomb_extruded_plate__light.md5 +0 -0
  110. {scadpy-0.4.4 → scadpy-0.4.5}/docs/snapshots/d2__examples_labelized_extruded_plate__dark.md5 +0 -0
  111. {scadpy-0.4.4 → scadpy-0.4.5}/docs/snapshots/d2__examples_labelized_extruded_plate__light.md5 +0 -0
  112. {scadpy-0.4.4 → scadpy-0.4.5}/docs/snapshots/d2__examples_plate__dark.md5 +0 -0
  113. {scadpy-0.4.4 → scadpy-0.4.5}/docs/snapshots/d2__examples_plate__light.md5 +0 -0
  114. {scadpy-0.4.4 → scadpy-0.4.5}/docs/snapshots/d2__examples_storage_box__dark.md5 +0 -0
  115. {scadpy-0.4.4 → scadpy-0.4.5}/docs/snapshots/d2__examples_storage_box__light.md5 +0 -0
  116. {scadpy-0.4.4 → scadpy-0.4.5}/docs/snapshots/d2__examples_vertex_holes__dark.md5 +0 -0
  117. {scadpy-0.4.4 → scadpy-0.4.5}/docs/snapshots/d2__examples_vertex_holes__light.md5 +0 -0
  118. {scadpy-0.4.4 → scadpy-0.4.5}/docs/snapshots/d2__examples_waved_sphere__dark.md5 +0 -0
  119. {scadpy-0.4.4 → scadpy-0.4.5}/docs/snapshots/d2__examples_waved_sphere__light.md5 +0 -0
  120. {scadpy-0.4.4 → scadpy-0.4.5}/docs/snapshots/d2__exclude_shape__dark.md5 +0 -0
  121. {scadpy-0.4.4 → scadpy-0.4.5}/docs/snapshots/d2__exclude_shape__light.md5 +0 -0
  122. {scadpy-0.4.4 → scadpy-0.4.5}/docs/snapshots/d2__exclude_solid__dark.md5 +0 -0
  123. {scadpy-0.4.4 → scadpy-0.4.5}/docs/snapshots/d2__exclude_solid__light.md5 +0 -0
  124. {scadpy-0.4.4 → scadpy-0.4.5}/docs/snapshots/d2__fill_shape__dark.md5 +0 -0
  125. {scadpy-0.4.4 → scadpy-0.4.5}/docs/snapshots/d2__fill_shape__light.md5 +0 -0
  126. {scadpy-0.4.4 → scadpy-0.4.5}/docs/snapshots/d2__fill_shape_partial__dark.md5 +0 -0
  127. {scadpy-0.4.4 → scadpy-0.4.5}/docs/snapshots/d2__fill_shape_partial__light.md5 +0 -0
  128. {scadpy-0.4.4 → scadpy-0.4.5}/docs/snapshots/d2__fillet_shape_all__dark.md5 +0 -0
  129. {scadpy-0.4.4 → scadpy-0.4.5}/docs/snapshots/d2__fillet_shape_all__light.md5 +0 -0
  130. {scadpy-0.4.4 → scadpy-0.4.5}/docs/snapshots/d2__fillet_shape_clamp_proportional__dark.md5 +0 -0
  131. {scadpy-0.4.4 → scadpy-0.4.5}/docs/snapshots/d2__fillet_shape_clamp_proportional__light.md5 +0 -0
  132. {scadpy-0.4.4 → scadpy-0.4.5}/docs/snapshots/d2__fillet_shape_concave_asymmetric__dark.md5 +0 -0
  133. {scadpy-0.4.4 → scadpy-0.4.5}/docs/snapshots/d2__fillet_shape_concave_asymmetric__light.md5 +0 -0
  134. {scadpy-0.4.4 → scadpy-0.4.5}/docs/snapshots/d2__fillet_shape_convex_only__dark.md5 +0 -0
  135. {scadpy-0.4.4 → scadpy-0.4.5}/docs/snapshots/d2__fillet_shape_convex_only__light.md5 +0 -0
  136. {scadpy-0.4.4 → scadpy-0.4.5}/docs/snapshots/d2__fillet_shape_sharp_convex__dark.md5 +0 -0
  137. {scadpy-0.4.4 → scadpy-0.4.5}/docs/snapshots/d2__fillet_shape_sharp_convex__light.md5 +0 -0
  138. {scadpy-0.4.4 → scadpy-0.4.5}/docs/snapshots/d2__grow_shape__dark.md5 +0 -0
  139. {scadpy-0.4.4 → scadpy-0.4.5}/docs/snapshots/d2__grow_shape__light.md5 +0 -0
  140. {scadpy-0.4.4 → scadpy-0.4.5}/docs/snapshots/d2__grow_shape_partial__dark.md5 +0 -0
  141. {scadpy-0.4.4 → scadpy-0.4.5}/docs/snapshots/d2__grow_shape_partial__light.md5 +0 -0
  142. {scadpy-0.4.4 → scadpy-0.4.5}/docs/snapshots/d2__grow_shape_shrink__dark.md5 +0 -0
  143. {scadpy-0.4.4 → scadpy-0.4.5}/docs/snapshots/d2__grow_shape_shrink__light.md5 +0 -0
  144. {scadpy-0.4.4 → scadpy-0.4.5}/docs/snapshots/d2__hexagonal_cone__dark.md5 +0 -0
  145. {scadpy-0.4.4 → scadpy-0.4.5}/docs/snapshots/d2__hexagonal_cone__light.md5 +0 -0
  146. {scadpy-0.4.4 → scadpy-0.4.5}/docs/snapshots/d2__hexagonal_cylinder__dark.md5 +0 -0
  147. {scadpy-0.4.4 → scadpy-0.4.5}/docs/snapshots/d2__hexagonal_cylinder__light.md5 +0 -0
  148. {scadpy-0.4.4 → scadpy-0.4.5}/docs/snapshots/d2__index_2d__dark.md5 +0 -0
  149. {scadpy-0.4.4 → scadpy-0.4.5}/docs/snapshots/d2__index_2d__light.md5 +0 -0
  150. {scadpy-0.4.4 → scadpy-0.4.5}/docs/snapshots/d2__index_3d__dark.md5 +0 -0
  151. {scadpy-0.4.4 → scadpy-0.4.5}/docs/snapshots/d2__index_3d__light.md5 +0 -0
  152. {scadpy-0.4.4 → scadpy-0.4.5}/docs/snapshots/d2__index_bearing__dark.md5 +0 -0
  153. {scadpy-0.4.4 → scadpy-0.4.5}/docs/snapshots/d2__index_bearing__light.md5 +0 -0
  154. {scadpy-0.4.4 → scadpy-0.4.5}/docs/snapshots/d2__index_dice__dark.md5 +0 -0
  155. {scadpy-0.4.4 → scadpy-0.4.5}/docs/snapshots/d2__index_dice__light.md5 +0 -0
  156. {scadpy-0.4.4 → scadpy-0.4.5}/docs/snapshots/d2__index_extruded_plate__dark.md5 +0 -0
  157. {scadpy-0.4.4 → scadpy-0.4.5}/docs/snapshots/d2__index_extruded_plate__light.md5 +0 -0
  158. {scadpy-0.4.4 → scadpy-0.4.5}/docs/snapshots/d2__index_plate__dark.md5 +0 -0
  159. {scadpy-0.4.4 → scadpy-0.4.5}/docs/snapshots/d2__index_plate__light.md5 +0 -0
  160. {scadpy-0.4.4 → scadpy-0.4.5}/docs/snapshots/d2__index_storage_box__dark.md5 +0 -0
  161. {scadpy-0.4.4 → scadpy-0.4.5}/docs/snapshots/d2__index_storage_box__light.md5 +0 -0
  162. {scadpy-0.4.4 → scadpy-0.4.5}/docs/snapshots/d2__intersect_shape__dark.md5 +0 -0
  163. {scadpy-0.4.4 → scadpy-0.4.5}/docs/snapshots/d2__intersect_shape__light.md5 +0 -0
  164. {scadpy-0.4.4 → scadpy-0.4.5}/docs/snapshots/d2__intersect_shape_parts_example__dark.md5 +0 -0
  165. {scadpy-0.4.4 → scadpy-0.4.5}/docs/snapshots/d2__intersect_shape_parts_example__light.md5 +0 -0
  166. {scadpy-0.4.4 → scadpy-0.4.5}/docs/snapshots/d2__intersect_solid__dark.md5 +0 -0
  167. {scadpy-0.4.4 → scadpy-0.4.5}/docs/snapshots/d2__intersect_solid__light.md5 +0 -0
  168. {scadpy-0.4.4 → scadpy-0.4.5}/docs/snapshots/d2__intersect_solid_parts_example__dark.md5 +0 -0
  169. {scadpy-0.4.4 → scadpy-0.4.5}/docs/snapshots/d2__intersect_solid_parts_example__light.md5 +0 -0
  170. {scadpy-0.4.4 → scadpy-0.4.5}/docs/snapshots/d2__linear_cut_shape__dark.md5 +0 -0
  171. {scadpy-0.4.4 → scadpy-0.4.5}/docs/snapshots/d2__linear_cut_shape__light.md5 +0 -0
  172. {scadpy-0.4.4 → scadpy-0.4.5}/docs/snapshots/d2__linear_cut_shape_diagonal__dark.md5 +0 -0
  173. {scadpy-0.4.4 → scadpy-0.4.5}/docs/snapshots/d2__linear_cut_shape_diagonal__light.md5 +0 -0
  174. {scadpy-0.4.4 → scadpy-0.4.5}/docs/snapshots/d2__linear_extrude_shape_square__dark.md5 +0 -0
  175. {scadpy-0.4.4 → scadpy-0.4.5}/docs/snapshots/d2__linear_extrude_shape_square__light.md5 +0 -0
  176. {scadpy-0.4.4 → scadpy-0.4.5}/docs/snapshots/d2__linear_extrude_shape_tube__dark.md5 +0 -0
  177. {scadpy-0.4.4 → scadpy-0.4.5}/docs/snapshots/d2__linear_extrude_shape_tube__light.md5 +0 -0
  178. {scadpy-0.4.4 → scadpy-0.4.5}/docs/snapshots/d2__linear_pattern_shape_method_2d__dark.md5 +0 -0
  179. {scadpy-0.4.4 → scadpy-0.4.5}/docs/snapshots/d2__linear_pattern_shape_method_2d__light.md5 +0 -0
  180. {scadpy-0.4.4 → scadpy-0.4.5}/docs/snapshots/d2__linear_pattern_shape_method__dark.md5 +0 -0
  181. {scadpy-0.4.4 → scadpy-0.4.5}/docs/snapshots/d2__linear_pattern_shape_method__light.md5 +0 -0
  182. {scadpy-0.4.4 → scadpy-0.4.5}/docs/snapshots/d2__linear_pattern_solid_method_2d__dark.md5 +0 -0
  183. {scadpy-0.4.4 → scadpy-0.4.5}/docs/snapshots/d2__linear_pattern_solid_method_2d__light.md5 +0 -0
  184. {scadpy-0.4.4 → scadpy-0.4.5}/docs/snapshots/d2__linear_pattern_solid_method_3d__dark.md5 +0 -0
  185. {scadpy-0.4.4 → scadpy-0.4.5}/docs/snapshots/d2__linear_pattern_solid_method_3d__light.md5 +0 -0
  186. {scadpy-0.4.4 → scadpy-0.4.5}/docs/snapshots/d2__linear_pattern_solid_method__dark.md5 +0 -0
  187. {scadpy-0.4.4 → scadpy-0.4.5}/docs/snapshots/d2__linear_pattern_solid_method__light.md5 +0 -0
  188. {scadpy-0.4.4 → scadpy-0.4.5}/docs/snapshots/d2__linear_slice_shape_diagonal__dark.md5 +0 -0
  189. {scadpy-0.4.4 → scadpy-0.4.5}/docs/snapshots/d2__linear_slice_shape_diagonal__light.md5 +0 -0
  190. {scadpy-0.4.4 → scadpy-0.4.5}/docs/snapshots/d2__linear_slice_shape_horizontal__dark.md5 +0 -0
  191. {scadpy-0.4.4 → scadpy-0.4.5}/docs/snapshots/d2__linear_slice_shape_horizontal__light.md5 +0 -0
  192. {scadpy-0.4.4 → scadpy-0.4.5}/docs/snapshots/d2__linear_slice_shape_partial__dark.md5 +0 -0
  193. {scadpy-0.4.4 → scadpy-0.4.5}/docs/snapshots/d2__linear_slice_shape_partial__light.md5 +0 -0
  194. {scadpy-0.4.4 → scadpy-0.4.5}/docs/snapshots/d2__linear_slice_shape_pivot__dark.md5 +0 -0
  195. {scadpy-0.4.4 → scadpy-0.4.5}/docs/snapshots/d2__linear_slice_shape_pivot__light.md5 +0 -0
  196. {scadpy-0.4.4 → scadpy-0.4.5}/docs/snapshots/d2__low_resolution_sphere__dark.md5 +0 -0
  197. {scadpy-0.4.4 → scadpy-0.4.5}/docs/snapshots/d2__low_resolution_sphere__light.md5 +0 -0
  198. {scadpy-0.4.4 → scadpy-0.4.5}/docs/snapshots/d2__map_dxf_to_shape__dark.md5 +0 -0
  199. {scadpy-0.4.4 → scadpy-0.4.5}/docs/snapshots/d2__map_dxf_to_shape__light.md5 +0 -0
  200. {scadpy-0.4.4 → scadpy-0.4.5}/docs/snapshots/d2__map_geometries_to_shape__dark.md5 +0 -0
  201. {scadpy-0.4.4 → scadpy-0.4.5}/docs/snapshots/d2__map_geometries_to_shape__light.md5 +0 -0
  202. {scadpy-0.4.4 → scadpy-0.4.5}/docs/snapshots/d2__map_geometries_to_solid__dark.md5 +0 -0
  203. {scadpy-0.4.4 → scadpy-0.4.5}/docs/snapshots/d2__map_geometries_to_solid__light.md5 +0 -0
  204. {scadpy-0.4.4 → scadpy-0.4.5}/docs/snapshots/d2__map_geometry_to_shape__dark.md5 +0 -0
  205. {scadpy-0.4.4 → scadpy-0.4.5}/docs/snapshots/d2__map_geometry_to_shape__light.md5 +0 -0
  206. {scadpy-0.4.4 → scadpy-0.4.5}/docs/snapshots/d2__map_geometry_to_solid__dark.md5 +0 -0
  207. {scadpy-0.4.4 → scadpy-0.4.5}/docs/snapshots/d2__map_geometry_to_solid__light.md5 +0 -0
  208. {scadpy-0.4.4 → scadpy-0.4.5}/docs/snapshots/d2__map_parts_to_shape__dark.md5 +0 -0
  209. {scadpy-0.4.4 → scadpy-0.4.5}/docs/snapshots/d2__map_parts_to_shape__light.md5 +0 -0
  210. {scadpy-0.4.4 → scadpy-0.4.5}/docs/snapshots/d2__map_parts_to_solid__dark.md5 +0 -0
  211. {scadpy-0.4.4 → scadpy-0.4.5}/docs/snapshots/d2__map_parts_to_solid__light.md5 +0 -0
  212. {scadpy-0.4.4 → scadpy-0.4.5}/docs/snapshots/d2__map_svg_to_shape__dark.md5 +0 -0
  213. {scadpy-0.4.4 → scadpy-0.4.5}/docs/snapshots/d2__map_svg_to_shape__light.md5 +0 -0
  214. {scadpy-0.4.4 → scadpy-0.4.5}/docs/snapshots/d2__mirror_shape__dark.md5 +0 -0
  215. {scadpy-0.4.4 → scadpy-0.4.5}/docs/snapshots/d2__mirror_shape__light.md5 +0 -0
  216. {scadpy-0.4.4 → scadpy-0.4.5}/docs/snapshots/d2__mirror_solid__dark.md5 +0 -0
  217. {scadpy-0.4.4 → scadpy-0.4.5}/docs/snapshots/d2__mirror_solid__light.md5 +0 -0
  218. {scadpy-0.4.4 → scadpy-0.4.5}/docs/snapshots/d2__path_extrude_shape_tube__dark.md5 +0 -0
  219. {scadpy-0.4.4 → scadpy-0.4.5}/docs/snapshots/d2__path_extrude_shape_tube__light.md5 +0 -0
  220. {scadpy-0.4.4 → scadpy-0.4.5}/docs/snapshots/d2__path_extrude_shape_tube_strategy__dark.md5 +0 -0
  221. {scadpy-0.4.4 → scadpy-0.4.5}/docs/snapshots/d2__path_extrude_shape_tube_strategy__light.md5 +0 -0
  222. {scadpy-0.4.4 → scadpy-0.4.5}/docs/snapshots/d2__polyhedron__dark.md5 +0 -0
  223. {scadpy-0.4.4 → scadpy-0.4.5}/docs/snapshots/d2__polyhedron__light.md5 +0 -0
  224. {scadpy-0.4.4 → scadpy-0.4.5}/docs/snapshots/d2__pull_shape__dark.md5 +0 -0
  225. {scadpy-0.4.4 → scadpy-0.4.5}/docs/snapshots/d2__pull_shape__light.md5 +0 -0
  226. {scadpy-0.4.4 → scadpy-0.4.5}/docs/snapshots/d2__pull_solid__dark.md5 +0 -0
  227. {scadpy-0.4.4 → scadpy-0.4.5}/docs/snapshots/d2__pull_solid__light.md5 +0 -0
  228. {scadpy-0.4.4 → scadpy-0.4.5}/docs/snapshots/d2__push_shape__dark.md5 +0 -0
  229. {scadpy-0.4.4 → scadpy-0.4.5}/docs/snapshots/d2__push_shape__light.md5 +0 -0
  230. {scadpy-0.4.4 → scadpy-0.4.5}/docs/snapshots/d2__push_solid__dark.md5 +0 -0
  231. {scadpy-0.4.4 → scadpy-0.4.5}/docs/snapshots/d2__push_solid__light.md5 +0 -0
  232. {scadpy-0.4.4 → scadpy-0.4.5}/docs/snapshots/d2__radial_extrude_shape__dark.md5 +0 -0
  233. {scadpy-0.4.4 → scadpy-0.4.5}/docs/snapshots/d2__radial_extrude_shape__light.md5 +0 -0
  234. {scadpy-0.4.4 → scadpy-0.4.5}/docs/snapshots/d2__radial_extrude_shape_partial__dark.md5 +0 -0
  235. {scadpy-0.4.4 → scadpy-0.4.5}/docs/snapshots/d2__radial_extrude_shape_partial__light.md5 +0 -0
  236. {scadpy-0.4.4 → scadpy-0.4.5}/docs/snapshots/d2__radial_pattern_shape_method__dark.md5 +0 -0
  237. {scadpy-0.4.4 → scadpy-0.4.5}/docs/snapshots/d2__radial_pattern_shape_method__light.md5 +0 -0
  238. {scadpy-0.4.4 → scadpy-0.4.5}/docs/snapshots/d2__radial_pattern_solid_method__dark.md5 +0 -0
  239. {scadpy-0.4.4 → scadpy-0.4.5}/docs/snapshots/d2__radial_pattern_solid_method__light.md5 +0 -0
  240. {scadpy-0.4.4 → scadpy-0.4.5}/docs/snapshots/d2__radial_slice_shape_partial__dark.md5 +0 -0
  241. {scadpy-0.4.4 → scadpy-0.4.5}/docs/snapshots/d2__radial_slice_shape_partial__light.md5 +0 -0
  242. {scadpy-0.4.4 → scadpy-0.4.5}/docs/snapshots/d2__radial_slice_shape_pivot__dark.md5 +0 -0
  243. {scadpy-0.4.4 → scadpy-0.4.5}/docs/snapshots/d2__radial_slice_shape_pivot__light.md5 +0 -0
  244. {scadpy-0.4.4 → scadpy-0.4.5}/docs/snapshots/d2__radial_slice_shape_quarter__dark.md5 +0 -0
  245. {scadpy-0.4.4 → scadpy-0.4.5}/docs/snapshots/d2__radial_slice_shape_quarter__light.md5 +0 -0
  246. {scadpy-0.4.4 → scadpy-0.4.5}/docs/snapshots/d2__radial_slice_shape_three_quarter__dark.md5 +0 -0
  247. {scadpy-0.4.4 → scadpy-0.4.5}/docs/snapshots/d2__radial_slice_shape_three_quarter__light.md5 +0 -0
  248. {scadpy-0.4.4 → scadpy-0.4.5}/docs/snapshots/d2__recoordinate_shape__dark.md5 +0 -0
  249. {scadpy-0.4.4 → scadpy-0.4.5}/docs/snapshots/d2__recoordinate_shape__light.md5 +0 -0
  250. {scadpy-0.4.4 → scadpy-0.4.5}/docs/snapshots/d2__recoordinate_solid__dark.md5 +0 -0
  251. {scadpy-0.4.4 → scadpy-0.4.5}/docs/snapshots/d2__recoordinate_solid__light.md5 +0 -0
  252. {scadpy-0.4.4 → scadpy-0.4.5}/docs/snapshots/d2__resize_shape_auto__dark.md5 +0 -0
  253. {scadpy-0.4.4 → scadpy-0.4.5}/docs/snapshots/d2__resize_shape_auto__light.md5 +0 -0
  254. {scadpy-0.4.4 → scadpy-0.4.5}/docs/snapshots/d2__resize_shape_exact__dark.md5 +0 -0
  255. {scadpy-0.4.4 → scadpy-0.4.5}/docs/snapshots/d2__resize_shape_exact__light.md5 +0 -0
  256. {scadpy-0.4.4 → scadpy-0.4.5}/docs/snapshots/d2__resize_shape_freeze__dark.md5 +0 -0
  257. {scadpy-0.4.4 → scadpy-0.4.5}/docs/snapshots/d2__resize_shape_freeze__light.md5 +0 -0
  258. {scadpy-0.4.4 → scadpy-0.4.5}/docs/snapshots/d2__resize_solid_auto__dark.md5 +0 -0
  259. {scadpy-0.4.4 → scadpy-0.4.5}/docs/snapshots/d2__resize_solid_auto__light.md5 +0 -0
  260. {scadpy-0.4.4 → scadpy-0.4.5}/docs/snapshots/d2__resize_solid_exact__dark.md5 +0 -0
  261. {scadpy-0.4.4 → scadpy-0.4.5}/docs/snapshots/d2__resize_solid_exact__light.md5 +0 -0
  262. {scadpy-0.4.4 → scadpy-0.4.5}/docs/snapshots/d2__resize_solid_freeze__dark.md5 +0 -0
  263. {scadpy-0.4.4 → scadpy-0.4.5}/docs/snapshots/d2__resize_solid_freeze__light.md5 +0 -0
  264. {scadpy-0.4.4 → scadpy-0.4.5}/docs/snapshots/d2__rotate_shape__dark.md5 +0 -0
  265. {scadpy-0.4.4 → scadpy-0.4.5}/docs/snapshots/d2__rotate_shape__light.md5 +0 -0
  266. {scadpy-0.4.4 → scadpy-0.4.5}/docs/snapshots/d2__rotate_solid__dark.md5 +0 -0
  267. {scadpy-0.4.4 → scadpy-0.4.5}/docs/snapshots/d2__rotate_solid__light.md5 +0 -0
  268. {scadpy-0.4.4 → scadpy-0.4.5}/docs/snapshots/d2__scale_shape__dark.md5 +0 -0
  269. {scadpy-0.4.4 → scadpy-0.4.5}/docs/snapshots/d2__scale_shape__light.md5 +0 -0
  270. {scadpy-0.4.4 → scadpy-0.4.5}/docs/snapshots/d2__scale_solid__dark.md5 +0 -0
  271. {scadpy-0.4.4 → scadpy-0.4.5}/docs/snapshots/d2__scale_solid__light.md5 +0 -0
  272. {scadpy-0.4.4 → scadpy-0.4.5}/docs/snapshots/d2__shrink_shape__dark.md5 +0 -0
  273. {scadpy-0.4.4 → scadpy-0.4.5}/docs/snapshots/d2__shrink_shape__light.md5 +0 -0
  274. {scadpy-0.4.4 → scadpy-0.4.5}/docs/snapshots/d2__shrink_shape_negative__dark.md5 +0 -0
  275. {scadpy-0.4.4 → scadpy-0.4.5}/docs/snapshots/d2__shrink_shape_negative__light.md5 +0 -0
  276. {scadpy-0.4.4 → scadpy-0.4.5}/docs/snapshots/d2__shrink_shape_partial__dark.md5 +0 -0
  277. {scadpy-0.4.4 → scadpy-0.4.5}/docs/snapshots/d2__shrink_shape_partial__light.md5 +0 -0
  278. {scadpy-0.4.4 → scadpy-0.4.5}/docs/snapshots/d2__sphere__dark.md5 +0 -0
  279. {scadpy-0.4.4 → scadpy-0.4.5}/docs/snapshots/d2__sphere__light.md5 +0 -0
  280. {scadpy-0.4.4 → scadpy-0.4.5}/docs/snapshots/d2__subtract_shape__dark.md5 +0 -0
  281. {scadpy-0.4.4 → scadpy-0.4.5}/docs/snapshots/d2__subtract_shape__light.md5 +0 -0
  282. {scadpy-0.4.4 → scadpy-0.4.5}/docs/snapshots/d2__subtract_shape_parts_example__dark.md5 +0 -0
  283. {scadpy-0.4.4 → scadpy-0.4.5}/docs/snapshots/d2__subtract_shape_parts_example__light.md5 +0 -0
  284. {scadpy-0.4.4 → scadpy-0.4.5}/docs/snapshots/d2__subtract_solid__dark.md5 +0 -0
  285. {scadpy-0.4.4 → scadpy-0.4.5}/docs/snapshots/d2__subtract_solid__light.md5 +0 -0
  286. {scadpy-0.4.4 → scadpy-0.4.5}/docs/snapshots/d2__subtract_solid_parts_example__dark.md5 +0 -0
  287. {scadpy-0.4.4 → scadpy-0.4.5}/docs/snapshots/d2__subtract_solid_parts_example__light.md5 +0 -0
  288. {scadpy-0.4.4 → scadpy-0.4.5}/docs/snapshots/d2__text_example__dark.md5 +0 -0
  289. {scadpy-0.4.4 → scadpy-0.4.5}/docs/snapshots/d2__text_example__light.md5 +0 -0
  290. {scadpy-0.4.4 → scadpy-0.4.5}/docs/snapshots/d2__translate_shape__dark.md5 +0 -0
  291. {scadpy-0.4.4 → scadpy-0.4.5}/docs/snapshots/d2__translate_shape__light.md5 +0 -0
  292. {scadpy-0.4.4 → scadpy-0.4.5}/docs/snapshots/d2__translate_solid__dark.md5 +0 -0
  293. {scadpy-0.4.4 → scadpy-0.4.5}/docs/snapshots/d2__translate_solid__light.md5 +0 -0
  294. {scadpy-0.4.4 → scadpy-0.4.5}/docs/snapshots/d2__unify_shape__dark.md5 +0 -0
  295. {scadpy-0.4.4 → scadpy-0.4.5}/docs/snapshots/d2__unify_shape__light.md5 +0 -0
  296. {scadpy-0.4.4 → scadpy-0.4.5}/docs/snapshots/d2__unify_shape_parts_example__dark.md5 +0 -0
  297. {scadpy-0.4.4 → scadpy-0.4.5}/docs/snapshots/d2__unify_shape_parts_example__light.md5 +0 -0
  298. {scadpy-0.4.4 → scadpy-0.4.5}/docs/snapshots/d2__unify_solid__dark.md5 +0 -0
  299. {scadpy-0.4.4 → scadpy-0.4.5}/docs/snapshots/d2__unify_solid__light.md5 +0 -0
  300. {scadpy-0.4.4 → scadpy-0.4.5}/docs/snapshots/d2__unify_solid_parts_example__dark.md5 +0 -0
  301. {scadpy-0.4.4 → scadpy-0.4.5}/docs/snapshots/d2__unify_solid_parts_example__light.md5 +0 -0
  302. {scadpy-0.4.4 → scadpy-0.4.5}/project_bundle.json +0 -0
  303. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/__init__.py +0 -0
  304. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/color/__init__.py +0 -0
  305. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/color/constants/BEIGE.py +0 -0
  306. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/color/constants/BLACK.py +0 -0
  307. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/color/constants/BLUE.py +0 -0
  308. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/color/constants/BROWN.py +0 -0
  309. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/color/constants/DARK_GRAY.py +0 -0
  310. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/color/constants/DEFAULT_COLOR.py +0 -0
  311. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/color/constants/DEFAULT_OPACITY.py +0 -0
  312. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/color/constants/GRAY.py +0 -0
  313. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/color/constants/GREEN.py +0 -0
  314. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/color/constants/ORANGE.py +0 -0
  315. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/color/constants/RED.py +0 -0
  316. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/color/constants/WHITE.py +0 -0
  317. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/color/constants/YELLOW.py +0 -0
  318. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/color/constants/__init__.py +0 -0
  319. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/color/type/__init__.py +0 -0
  320. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/color/type/color.py +0 -0
  321. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/color/utils/__init__.py +0 -0
  322. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/color/utils/get_random_color.py +0 -0
  323. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/core/__init__.py +0 -0
  324. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/core/assembly/__init__.py +0 -0
  325. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/core/assembly/combinations/__init__.py +0 -0
  326. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/core/assembly/combinations/concat_assemblies.py +0 -0
  327. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/core/assembly/combinations/exclude_assemblies.py +0 -0
  328. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/core/assembly/combinations/intersect_assemblies.py +0 -0
  329. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/core/assembly/combinations/subtract_assemblies.py +0 -0
  330. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/core/assembly/combinations/unify_assemblies.py +0 -0
  331. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/core/assembly/topologies/__init__.py +0 -0
  332. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/core/assembly/topologies/directed_edge/__init__.py +0 -0
  333. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/core/assembly/topologies/directed_edge/get_assembly_directed_edge_directions.py +0 -0
  334. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/core/assembly/topologies/directed_edge/get_assembly_directed_edge_to_edge.py +0 -0
  335. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/core/assembly/topologies/directed_edge/get_assembly_directed_edge_to_vertex.py +0 -0
  336. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/core/assembly/topologies/edge/__init__.py +0 -0
  337. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/core/assembly/topologies/edge/get_assembly_edge_lengths.py +0 -0
  338. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/core/assembly/topologies/edge/get_assembly_edge_midpoints.py +0 -0
  339. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/core/assembly/topologies/edge/get_assembly_edge_normals.py +0 -0
  340. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/core/assembly/topologies/face_vertex/__init__.py +0 -0
  341. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/core/assembly/topologies/face_vertex/get_assembly_face_vertex_angles.py +0 -0
  342. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/core/assembly/topologies/face_vertex/get_assembly_face_vertex_normals.py +0 -0
  343. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/core/assembly/topologies/face_vertex/get_assembly_face_vertex_to_incoming_directed_edge.py +0 -0
  344. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/core/assembly/topologies/face_vertex/get_assembly_face_vertex_to_outgoing_directed_edge.py +0 -0
  345. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/core/assembly/topologies/part/__init__.py +0 -0
  346. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/core/assembly/topologies/part/get_assembly_part_colors.py +0 -0
  347. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/core/assembly/topologies/vertex/__init__.py +0 -0
  348. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/core/assembly/transformations/__init__.py +0 -0
  349. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/core/assembly/transformations/color_assembly.py +0 -0
  350. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/core/assembly/transformations/linear_pattern_assembly.py +0 -0
  351. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/core/assembly/transformations/mirror_vertex_coordinates.py +0 -0
  352. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/core/assembly/transformations/pull_vertex_coordinates.py +0 -0
  353. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/core/assembly/transformations/push_vertex_coordinates.py +0 -0
  354. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/core/assembly/transformations/radial_pattern_assembly.py +0 -0
  355. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/core/assembly/transformations/resize_vertex_coordinates.py +0 -0
  356. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/core/assembly/transformations/rotate_vertex_coordinates.py +0 -0
  357. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/core/assembly/transformations/scale_vertex_coordinates.py +0 -0
  358. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/core/assembly/transformations/translate_vertex_coordinates.py +0 -0
  359. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/core/assembly/types/__init__.py +0 -0
  360. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/core/assembly/types/assembly.py +0 -0
  361. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/core/assembly/types/topology_filter.py +0 -0
  362. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/core/assembly/utils/__init__.py +0 -0
  363. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/core/assembly/utils/lookup_pairs.py +0 -0
  364. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/core/assembly/utils/resolve_topology_filter.py +0 -0
  365. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/core/assembly/utils/transform_filtered_parts.py +0 -0
  366. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/core/component/__init__.py +0 -0
  367. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/core/component/exporters/__init__.py +0 -0
  368. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/core/component/exporters/map_component_to_html_file.py +0 -0
  369. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/core/component/features/__init__.py +0 -0
  370. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/core/component/features/get_component_bounds.py +0 -0
  371. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/core/component/utils/__init__.py +0 -0
  372. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/core/component/utils/blend_component_colors.py +0 -0
  373. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/core/component/utils/get_intersecting_component_index_groups.py +0 -0
  374. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/core/part/__init__.py +0 -0
  375. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/core/part/combinations/__init__.py +0 -0
  376. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/core/part/combinations/concat_parts.py +0 -0
  377. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/core/part/types/__init__.py +0 -0
  378. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/core/part/types/part.py +0 -0
  379. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/core/part/utils/__init__.py +0 -0
  380. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/d2/__init__.py +0 -0
  381. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/d2/shape/__init__.py +0 -0
  382. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/d2/shape/combinations/__init__.py +0 -0
  383. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/d2/shape/combinations/are_shape_parts_intersecting.py +0 -0
  384. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/d2/shape/combinations/concat_shape.py +0 -0
  385. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/d2/shape/combinations/exclude_shape.py +0 -0
  386. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/d2/shape/combinations/intersect_shape.py +0 -0
  387. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/d2/shape/combinations/intersect_shape_parts.py +0 -0
  388. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/d2/shape/combinations/subtract_shape.py +0 -0
  389. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/d2/shape/combinations/subtract_shape_parts.py +0 -0
  390. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/d2/shape/combinations/unify_shape.py +0 -0
  391. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/d2/shape/combinations/unify_shape_parts.py +0 -0
  392. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/d2/shape/exporters/__init__.py +0 -0
  393. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/d2/shape/exporters/map_shape_to_dxf.py +0 -0
  394. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/d2/shape/exporters/map_shape_to_dxf_file.py +0 -0
  395. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/d2/shape/exporters/map_shape_to_html.py +0 -0
  396. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/d2/shape/exporters/map_shape_to_html_file.py +0 -0
  397. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/d2/shape/exporters/map_shape_to_screen.py +0 -0
  398. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/d2/shape/exporters/map_shape_to_svg.py +0 -0
  399. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/d2/shape/exporters/map_shape_to_svg_file.py +0 -0
  400. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/d2/shape/features/__init__.py +0 -0
  401. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/d2/shape/features/get_shape_bounding_box.py +0 -0
  402. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/d2/shape/features/get_shape_bounds.py +0 -0
  403. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/d2/shape/features/get_shape_centroid.py +0 -0
  404. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/d2/shape/features/get_shape_part_bounds.py +0 -0
  405. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/d2/shape/features/is_shape_empty.py +0 -0
  406. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/d2/shape/importers/__init__.py +0 -0
  407. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/d2/shape/importers/map_dxf_to_shape.py +0 -0
  408. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/d2/shape/importers/map_geometries_to_shape.py +0 -0
  409. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/d2/shape/importers/map_geometry_to_shape.py +0 -0
  410. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/d2/shape/importers/map_parts_to_shape.py +0 -0
  411. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/d2/shape/importers/map_svg_to_shape.py +0 -0
  412. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/d2/shape/primitives/__init__.py +0 -0
  413. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/d2/shape/primitives/circle.py +0 -0
  414. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/d2/shape/primitives/polygon.py +0 -0
  415. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/d2/shape/primitives/rectangle.py +0 -0
  416. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/d2/shape/primitives/square.py +0 -0
  417. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/d2/shape/primitives/text.py +0 -0
  418. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/d2/shape/topologies/__init__.py +0 -0
  419. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/d2/shape/topologies/directed_edge/__init__.py +0 -0
  420. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/d2/shape/topologies/directed_edge/get_shape_directed_edge_directions.py +0 -0
  421. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/d2/shape/topologies/directed_edge/get_shape_directed_edge_to_edge.py +0 -0
  422. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/d2/shape/topologies/directed_edge/get_shape_directed_edge_to_vertex.py +0 -0
  423. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/d2/shape/topologies/edge/__init__.py +0 -0
  424. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/d2/shape/topologies/edge/get_shape_edge_lengths.py +0 -0
  425. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/d2/shape/topologies/edge/get_shape_edge_midpoints.py +0 -0
  426. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/d2/shape/topologies/edge/get_shape_edge_normals.py +0 -0
  427. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/d2/shape/topologies/edge/get_shape_edge_to_vertex.py +0 -0
  428. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/d2/shape/topologies/ring/__init__.py +0 -0
  429. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/d2/shape/topologies/ring/get_shape_ring_to_part.py +0 -0
  430. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/d2/shape/topologies/ring/get_shape_ring_types.py +0 -0
  431. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/d2/shape/topologies/vertex/__init__.py +0 -0
  432. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/d2/shape/topologies/vertex/are_shape_vertices_convex.py +0 -0
  433. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/d2/shape/topologies/vertex/get_shape_part_vertex_coordinates.py +0 -0
  434. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/d2/shape/topologies/vertex/get_shape_vertex_angles.py +0 -0
  435. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/d2/shape/topologies/vertex/get_shape_vertex_coordinates.py +0 -0
  436. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/d2/shape/topologies/vertex/get_shape_vertex_normals.py +0 -0
  437. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/d2/shape/topologies/vertex/get_shape_vertex_to_incoming_directed_edge.py +0 -0
  438. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/d2/shape/topologies/vertex/get_shape_vertex_to_neighbor_vertex.py +0 -0
  439. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/d2/shape/topologies/vertex/get_shape_vertex_to_outgoing_directed_edge.py +0 -0
  440. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/d2/shape/topologies/vertex/get_shape_vertex_to_part.py +0 -0
  441. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/d2/shape/topologies/vertex/get_shape_vertex_to_ring.py +0 -0
  442. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/d2/shape/transformations/__init__.py +0 -0
  443. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/d2/shape/transformations/chamfer_shape.py +0 -0
  444. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/d2/shape/transformations/color_shape.py +0 -0
  445. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/d2/shape/transformations/convexify_shape.py +0 -0
  446. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/d2/shape/transformations/extrusion_strategies/__init__.py +0 -0
  447. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/d2/shape/transformations/extrusion_strategies/resize_sweep.py +0 -0
  448. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/d2/shape/transformations/extrusion_strategies/reverse_sweep.py +0 -0
  449. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/d2/shape/transformations/extrusion_strategies/rotate_sweep.py +0 -0
  450. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/d2/shape/transformations/extrusion_strategies/scale_sweep.py +0 -0
  451. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/d2/shape/transformations/fill_shape.py +0 -0
  452. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/d2/shape/transformations/fillet_shape.py +0 -0
  453. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/d2/shape/transformations/grow_shape.py +0 -0
  454. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/d2/shape/transformations/linear_cut_shape.py +0 -0
  455. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/d2/shape/transformations/linear_extrude_shape.py +0 -0
  456. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/d2/shape/transformations/linear_pattern_shape.py +0 -0
  457. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/d2/shape/transformations/linear_slice_shape.py +0 -0
  458. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/d2/shape/transformations/mirror_shape.py +0 -0
  459. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/d2/shape/transformations/path_extrude_shape.py +0 -0
  460. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/d2/shape/transformations/pull_shape.py +0 -0
  461. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/d2/shape/transformations/push_shape.py +0 -0
  462. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/d2/shape/transformations/radial_extrude_shape.py +0 -0
  463. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/d2/shape/transformations/radial_pattern_shape.py +0 -0
  464. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/d2/shape/transformations/radial_slice_shape.py +0 -0
  465. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/d2/shape/transformations/recoordinate_shape.py +0 -0
  466. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/d2/shape/transformations/resize_shape.py +0 -0
  467. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/d2/shape/transformations/rotate_shape.py +0 -0
  468. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/d2/shape/transformations/scale_shape.py +0 -0
  469. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/d2/shape/transformations/shrink_shape.py +0 -0
  470. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/d2/shape/transformations/translate_shape.py +0 -0
  471. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/d2/shape/types/__init__.py +0 -0
  472. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/d2/shape/types/shape.py +0 -0
  473. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/d2/shape/types/utils/__init__.py +0 -0
  474. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/d2/shape/types/utils/shapely_base_geometry_to_shapely_polygons.py +0 -0
  475. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/d2/shape/utils/__init__.py +0 -0
  476. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/d2/shape/utils/shapely_base_geometry_to_shapely_polygons.py +0 -0
  477. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/d2/utils/__init__.py +0 -0
  478. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/d2/utils/resolve_vector_2d.py +0 -0
  479. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/d3/__init__.py +0 -0
  480. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/d3/solid/__init__.py +0 -0
  481. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/d3/solid/combinations/__init__.py +0 -0
  482. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/d3/solid/combinations/are_solid_parts_intersecting.py +0 -0
  483. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/d3/solid/combinations/concat_solid.py +0 -0
  484. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/d3/solid/combinations/exclude_solid.py +0 -0
  485. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/d3/solid/combinations/intersect_solid.py +0 -0
  486. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/d3/solid/combinations/intersect_solid_parts.py +0 -0
  487. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/d3/solid/combinations/subtract_solid.py +0 -0
  488. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/d3/solid/combinations/subtract_solid_parts.py +0 -0
  489. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/d3/solid/combinations/unify_solid.py +0 -0
  490. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/d3/solid/combinations/unify_solid_parts.py +0 -0
  491. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/d3/solid/exporters/__init__.py +0 -0
  492. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/d3/solid/exporters/map_solid_to_html.py +0 -0
  493. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/d3/solid/exporters/map_solid_to_html_file.py +0 -0
  494. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/d3/solid/exporters/map_solid_to_screen.py +0 -0
  495. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/d3/solid/exporters/map_solid_to_stl_file.py +0 -0
  496. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/d3/solid/features/__init__.py +0 -0
  497. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/d3/solid/features/get_solid_bounding_box.py +0 -0
  498. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/d3/solid/features/get_solid_bounds.py +0 -0
  499. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/d3/solid/features/get_solid_centroid.py +0 -0
  500. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/d3/solid/features/get_solid_part_bounds.py +0 -0
  501. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/d3/solid/features/get_solid_part_colors.py +0 -0
  502. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/d3/solid/features/is_solid_empty.py +0 -0
  503. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/d3/solid/importers/__init__.py +0 -0
  504. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/d3/solid/importers/map_geometries_to_solid.py +0 -0
  505. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/d3/solid/importers/map_geometry_to_solid.py +0 -0
  506. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/d3/solid/importers/map_parts_to_solid.py +0 -0
  507. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/d3/solid/importers/map_stl_to_solid.py +0 -0
  508. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/d3/solid/primitives/__init__.py +0 -0
  509. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/d3/solid/primitives/cone.py +0 -0
  510. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/d3/solid/primitives/cuboid.py +0 -0
  511. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/d3/solid/primitives/cylinder.py +0 -0
  512. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/d3/solid/primitives/polyhedron.py +0 -0
  513. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/d3/solid/primitives/sphere.py +0 -0
  514. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/d3/solid/topologies/__init__.py +0 -0
  515. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/d3/solid/topologies/triangle/__init__.py +0 -0
  516. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/d3/solid/topologies/triangle/get_solid_triangle_to_vertex.py +0 -0
  517. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/d3/solid/topologies/vertex/__init__.py +0 -0
  518. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/d3/solid/topologies/vertex/get_solid_vertex_coordinates.py +0 -0
  519. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/d3/solid/topologies/vertex/get_solid_vertex_to_part.py +0 -0
  520. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/d3/solid/transformations/__init__.py +0 -0
  521. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/d3/solid/transformations/color_solid.py +0 -0
  522. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/d3/solid/transformations/convexify_solid.py +0 -0
  523. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/d3/solid/transformations/linear_pattern_solid.py +0 -0
  524. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/d3/solid/transformations/mirror_solid.py +0 -0
  525. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/d3/solid/transformations/pull_solid.py +0 -0
  526. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/d3/solid/transformations/push_solid.py +0 -0
  527. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/d3/solid/transformations/radial_pattern_solid.py +0 -0
  528. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/d3/solid/transformations/recoordinate_solid.py +0 -0
  529. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/d3/solid/transformations/resize_solid.py +0 -0
  530. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/d3/solid/transformations/rotate_solid.py +0 -0
  531. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/d3/solid/transformations/scale_solid.py +0 -0
  532. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/d3/solid/transformations/translate_solid.py +0 -0
  533. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/d3/solid/types/__init__.py +0 -0
  534. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/d3/solid/types/solid.py +0 -0
  535. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/d3/utils/__init__.py +0 -0
  536. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/d3/utils/resolve_vector_3d.py +0 -0
  537. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/utils/__init__.py +0 -0
  538. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/utils/available_fonts.py +0 -0
  539. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/utils/resolve_vector.py +0 -0
  540. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/utils/x.py +0 -0
  541. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/utils/y.py +0 -0
  542. {scadpy-0.4.4 → scadpy-0.4.5}/scadpy/utils/z.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: ScadPy
3
- Version: 0.4.4
3
+ Version: 0.4.5
4
4
  Summary: Simplified 2D/3D modeling for Python with fluent API and boolean operations
5
5
  Author: m-fabregue
6
6
  License: # MIT License
@@ -55,11 +55,9 @@ Requires-Python: >=3.12
55
55
  Requires-Dist: ipython~=8.30
56
56
  Requires-Dist: manifold3d==3.2.1
57
57
  Requires-Dist: matplotlib==3.10.6
58
- Requires-Dist: pyside6~=6.10
59
58
  Requires-Dist: python-fcl~=0.7
60
59
  Requires-Dist: triangle==20250106
61
60
  Requires-Dist: trimesh[easy]~=4.10
62
- Requires-Dist: typeguard~=4.4
63
61
  Provides-Extra: dev
64
62
  Requires-Dist: coverage; extra == 'dev'
65
63
  Requires-Dist: furo==2025.7.19; extra == 'dev'
@@ -1 +1 @@
1
- <svg xmlns="http://www.w3.org/2000/svg" width="114" height="20" role="img" aria-label="coverage: 90.15%"><title>coverage: 90.15%</title><linearGradient id="s" x2="0" y2="100%"><stop offset="0" stop-color="#bbb" stop-opacity=".1"/><stop offset="1" stop-opacity=".1"/></linearGradient><clipPath id="r"><rect width="114" height="20" rx="3" fill="#fff"/></clipPath><g clip-path="url(#r)"><rect width="61" height="20" fill="#555"/><rect x="61" width="53" height="20" fill="#4c1"/><rect width="114" height="20" fill="url(#s)"/></g><g fill="#fff" text-anchor="middle" font-family="Verdana,Geneva,DejaVu Sans,sans-serif" text-rendering="geometricPrecision" font-size="110"><text aria-hidden="true" x="315" y="150" fill="#010101" fill-opacity=".3" transform="scale(.1)" textLength="510">coverage</text><text x="315" y="140" transform="scale(.1)" fill="#fff" textLength="510">coverage</text><text aria-hidden="true" x="865" y="150" fill="#010101" fill-opacity=".3" transform="scale(.1)" textLength="430">90.15%</text><text x="865" y="140" transform="scale(.1)" fill="#fff" textLength="430">90.15%</text></g></svg>
1
+ <svg xmlns="http://www.w3.org/2000/svg" width="114" height="20" role="img" aria-label="coverage: 90.20%"><title>coverage: 90.20%</title><linearGradient id="s" x2="0" y2="100%"><stop offset="0" stop-color="#bbb" stop-opacity=".1"/><stop offset="1" stop-opacity=".1"/></linearGradient><clipPath id="r"><rect width="114" height="20" rx="3" fill="#fff"/></clipPath><g clip-path="url(#r)"><rect width="61" height="20" fill="#555"/><rect x="61" width="53" height="20" fill="#4c1"/><rect width="114" height="20" fill="url(#s)"/></g><g fill="#fff" text-anchor="middle" font-family="Verdana,Geneva,DejaVu Sans,sans-serif" text-rendering="geometricPrecision" font-size="110"><text aria-hidden="true" x="315" y="150" fill="#010101" fill-opacity=".3" transform="scale(.1)" textLength="510">coverage</text><text x="315" y="140" transform="scale(.1)" fill="#fff" textLength="510">coverage</text><text aria-hidden="true" x="865" y="150" fill="#010101" fill-opacity=".3" transform="scale(.1)" textLength="430">90.20%</text><text x="865" y="140" transform="scale(.1)" fill="#fff" textLength="430">90.20%</text></g></svg>
@@ -1,5 +1,5 @@
1
1
  <svg width="140" height="20" viewBox="0 0 140 20" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xml:space="preserve" xmlns:serif="http://www.serif.com/" style="fill-rule:evenodd;clip-rule:evenodd;stroke-linejoin:round;stroke-miterlimit:2;">
2
- <title>interrogate: 89.4%</title>
2
+ <title>interrogate: 88.5%</title>
3
3
  <g transform="matrix(1,0,0,1,22,0)">
4
4
  <g id="backgrounds" transform="matrix(1.32789,0,0,1,-22.3892,0)">
5
5
  <rect x="0" y="0" width="71" height="20" style="fill:rgb(85,85,85);"/>
@@ -12,8 +12,8 @@
12
12
  <g fill="#fff" text-anchor="middle" font-family="DejaVu Sans,Verdana,Geneva,sans-serif" font-size="110">
13
13
  <text x="590" y="150" fill="#010101" fill-opacity=".3" transform="scale(.1)" textLength="610">interrogate</text>
14
14
  <text x="590" y="140" transform="scale(.1)" textLength="610">interrogate</text>
15
- <text x="1160" y="150" fill="#010101" fill-opacity=".3" transform="scale(.1)" textLength="370" data-interrogate="result">89.4%</text>
16
- <text x="1160" y="140" transform="scale(.1)" textLength="370" data-interrogate="result">89.4%</text>
15
+ <text x="1160" y="150" fill="#010101" fill-opacity=".3" transform="scale(.1)" textLength="370" data-interrogate="result">88.5%</text>
16
+ <text x="1160" y="140" transform="scale(.1)" textLength="370" data-interrogate="result">88.5%</text>
17
17
  </g>
18
18
  <g id="logo-shadow" serif:id="logo shadow" transform="matrix(0.854876,0,0,0.854876,-6.73514,1.732)">
19
19
  <g transform="matrix(0.299012,0,0,0.299012,9.70229,-6.68582)">
@@ -4,7 +4,7 @@ build-backend = "hatchling.build"
4
4
 
5
5
  [project]
6
6
  name = "ScadPy"
7
- version = "0.4.4"
7
+ version = "0.4.5"
8
8
  description = "Simplified 2D/3D modeling for Python with fluent API and boolean operations"
9
9
  requires-python = ">= 3.12"
10
10
  authors = [{ name = "m-fabregue" }]
@@ -16,7 +16,7 @@ classifiers = [
16
16
  "Programming Language :: Python :: 3",
17
17
  "Programming Language :: Python :: 3.12",
18
18
  ]
19
- dependencies = ["triangle == 20250106", "PySide6 ~= 6.10", "typeguard ~= 4.4", "trimesh[easy] ~= 4.10", "manifold3d == 3.2.1", "ipython ~= 8.30", "matplotlib == 3.10.6", "python-fcl ~= 0.7"]
19
+ dependencies = ["triangle == 20250106", "trimesh[easy] ~= 4.10", "manifold3d == 3.2.1", "ipython ~= 8.30", "matplotlib == 3.10.6", "python-fcl ~= 0.7"]
20
20
 
21
21
  [project.optional-dependencies]
22
22
  dev = [
@@ -10,8 +10,6 @@ if TYPE_CHECKING:
10
10
  from scadpy.core.part import Part
11
11
 
12
12
 
13
- # @typechecked is intentionally omitted: typeguard v4 cannot validate Callable types
14
- # that contain generic type variables (e.g. Part[G]) at runtime.
15
13
  def get_assembly_vertex_coordinates[G](
16
14
  parts: Sequence[Part[G]],
17
15
  get_part_vertex_coordinates: Callable[[Part[G]], NDArray[np.float64]],
@@ -10,8 +10,6 @@ if TYPE_CHECKING:
10
10
  from scadpy.core.part import Part
11
11
 
12
12
 
13
- # @typechecked is intentionally omitted: typeguard v4 cannot validate Callable types
14
- # that contain generic type variables (e.g. Part[G]) at runtime.
15
13
  def get_assembly_vertex_to_part[G](
16
14
  parts: Sequence[Part[G]],
17
15
  get_part_vertex_coordinates: Callable[[Part[G]], NDArray[np.float64]],
@@ -0,0 +1,79 @@
1
+ from __future__ import annotations
2
+
3
+ import threading
4
+ import webbrowser
5
+ from collections.abc import Callable
6
+ from http.server import BaseHTTPRequestHandler, HTTPServer
7
+ from typing import TYPE_CHECKING
8
+
9
+ if TYPE_CHECKING:
10
+ # Lazy: IPython (~0.6s) is heavy; used only as a type annotation here
11
+ # (from __future__ import annotations makes all annotations strings at runtime).
12
+ from IPython.core.display import HTML
13
+
14
+
15
+ def map_component_to_screen[Component](
16
+ component: Component, to_html: Callable[[Component], HTML]
17
+ ):
18
+ """
19
+ Render a component as HTML and display it in the system browser.
20
+
21
+ Starts a one-shot local HTTP server on a random available port, opens the
22
+ browser, and shuts the server down as soon as the page has been served.
23
+
24
+ Parameters
25
+ ----------
26
+ component : Component
27
+ The component to export and display.
28
+ to_html : Callable[[Component], HTML]
29
+ Function that converts the component to an IPython HTML object.
30
+
31
+ Examples
32
+ --------
33
+ >>> from IPython.core.display import HTML
34
+ >>> from scadpy import map_component_to_screen
35
+
36
+ >>> component = "Hello, World!"
37
+ >>> map_component_to_screen(
38
+ ... component,
39
+ ... to_html=lambda c: HTML(f"<h1>{c}</h1>")
40
+ ... ) # doctest: +SKIP
41
+ """
42
+ inner = str(to_html(component).data)
43
+ html_bytes = f"""<!DOCTYPE html>
44
+ <html>
45
+ <head>
46
+ <meta charset="utf-8">
47
+ <style>
48
+ *, *::before, *::after {{ box-sizing: border-box; margin: 0; padding: 0; }}
49
+ html, body {{ width: 100%; height: 100%; display: flex; justify-content: center; align-items: center; background: #ffffff; }}
50
+ #scadpy-content {{ width: min(100vw, 100vh); height: min(100vw, 100vh); }}
51
+ #scadpy-content svg {{ width: 100%; height: 100%; }}
52
+ </style>
53
+ </head>
54
+ <body><div id="scadpy-content">{inner}</div></body>
55
+ </html>""".encode("utf-8")
56
+ served = threading.Event()
57
+
58
+ class _OneShot(BaseHTTPRequestHandler):
59
+ def do_GET(self) -> None:
60
+ self.send_response(200)
61
+ self.send_header("Content-Type", "text/html; charset=utf-8")
62
+ self.send_header("Content-Length", str(len(html_bytes)))
63
+ self.end_headers()
64
+ self.wfile.write(html_bytes)
65
+ served.set()
66
+
67
+ def log_message(self, format: str, *args: object) -> None:
68
+ pass # suppress request logs
69
+
70
+ server = HTTPServer(("127.0.0.1", 0), _OneShot)
71
+ port = server.server_address[1]
72
+
73
+ thread = threading.Thread(target=server.serve_forever, daemon=True)
74
+ thread.start()
75
+
76
+ webbrowser.open(f"http://127.0.0.1:{port}")
77
+
78
+ served.wait()
79
+ server.shutdown()
@@ -10,7 +10,6 @@ if TYPE_CHECKING:
10
10
  from scadpy.color import Color
11
11
 
12
12
 
13
- # @typechecked
14
13
  def intersect_parts[A, P, G](
15
14
  parts: Sequence[P],
16
15
  get_part_color: Callable[[P], Color],
@@ -7,7 +7,6 @@ if TYPE_CHECKING:
7
7
  from scadpy.color import Color
8
8
 
9
9
 
10
- # @typechecked
11
10
  def subtract_parts[A, P, G](
12
11
  to_be_subtracted: P,
13
12
  to_subtract: Sequence[P],
@@ -10,7 +10,6 @@ if TYPE_CHECKING:
10
10
  from scadpy.color import Color
11
11
 
12
12
 
13
- # @typechecked
14
13
  def unify_parts[A, P, G](
15
14
  parts: Sequence[P],
16
15
  get_part_color: Callable[[P], Color],
@@ -9,7 +9,6 @@ if TYPE_CHECKING:
9
9
  from scadpy import Color, Part
10
10
 
11
11
 
12
- # @typechecked
13
12
  def blend_part_colors[G](
14
13
  parts: Sequence[Part[G]],
15
14
  get_part_magnitude: Callable[[Part[G]], float],
@@ -1,68 +0,0 @@
1
- from __future__ import annotations
2
-
3
- import sys
4
- import tempfile
5
- from collections.abc import Callable
6
- from typing import TYPE_CHECKING
7
-
8
- if TYPE_CHECKING:
9
- # Lazy: IPython (~0.6s) is heavy; used only as a type annotation here
10
- # (from __future__ import annotations makes all annotations strings at runtime).
11
- from IPython.core.display import HTML
12
-
13
-
14
- def map_component_to_screen[Component](
15
- component: Component, to_html: Callable[[Component], HTML]
16
- ):
17
- """
18
- Render a component as HTML and display it in a Qt-based window.
19
-
20
- Parameters
21
- ----------
22
- component : Component
23
- The component to export and display.
24
- to_html : Callable[[Component], HTML]
25
- Function that converts the component to an IPython HTML object.
26
-
27
- Examples
28
- --------
29
- >>> from IPython.core.display import HTML
30
- >>> from scadpy import map_component_to_screen
31
-
32
- >>> component = "Hello, World!"
33
- >>> map_component_to_screen(
34
- ... component,
35
- ... to_html=lambda c: HTML(f"<h1>{c}</h1>")
36
- ... ) # doctest: +SKIP
37
- """
38
-
39
- # Lazy imports: PySide6 (~1s) is heavy at module level;
40
- # importing here defers the cost until the function is actually called.
41
- from PySide6.QtCore import QUrl
42
- from PySide6.QtWebEngineCore import QWebEngineSettings
43
- from PySide6.QtWebEngineWidgets import QWebEngineView
44
- from PySide6.QtWidgets import QApplication
45
-
46
- html = str(to_html(component).data)
47
-
48
- app = QApplication.instance()
49
- if app is None:
50
- app = QApplication(sys.argv)
51
-
52
- tmp = tempfile.NamedTemporaryFile(mode="w", suffix=".html", delete=False, encoding="utf-8")
53
- tmp.write(html)
54
- tmp.close()
55
-
56
- view = QWebEngineView()
57
- view.settings().setAttribute(
58
- QWebEngineSettings.WebAttribute.LocalContentCanAccessRemoteUrls, True
59
- )
60
- view.load(QUrl.fromLocalFile(tmp.name))
61
- view.setWindowTitle("ScadPy")
62
- view.resize(800, 800)
63
- view.show()
64
-
65
- view.raise_()
66
- view.activateWindow()
67
-
68
- sys.exit(app.exec())
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