@jscad/modeling 2.12.5 → 3.0.1-alpha.0

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 (1206) hide show
  1. package/CHANGELOG.md +49 -321
  2. package/LICENSE +1 -1
  3. package/README.md +5 -3
  4. package/dist/jscad-modeling.es.js +7 -0
  5. package/dist/jscad-modeling.min.js +7 -1214
  6. package/global.d.ts +15 -0
  7. package/package.json +22 -19
  8. package/rollup.config.js +21 -0
  9. package/src/colors/colorNameToRgb.d.ts +2 -4
  10. package/src/colors/colorNameToRgb.js +4 -6
  11. package/src/colors/colorNameToRgb.test.js +2 -2
  12. package/src/colors/colorize.d.ts +6 -8
  13. package/src/colors/colorize.js +20 -26
  14. package/src/colors/colorize.test.js +14 -16
  15. package/src/colors/cssColors.d.ts +1 -1
  16. package/src/colors/cssColors.js +2 -4
  17. package/src/colors/hexToRgb.d.ts +2 -4
  18. package/src/colors/hexToRgb.js +3 -5
  19. package/src/colors/hexToRgb.test.js +2 -2
  20. package/src/colors/hslToRgb.d.ts +5 -7
  21. package/src/colors/hslToRgb.js +4 -6
  22. package/src/colors/hslToRgb.test.js +2 -2
  23. package/src/colors/hsvToRgb.d.ts +5 -7
  24. package/src/colors/hsvToRgb.js +3 -5
  25. package/src/colors/hsvToRgb.test.js +2 -2
  26. package/src/colors/hueToColorComponent.d.ts +1 -3
  27. package/src/colors/hueToColorComponent.js +2 -4
  28. package/src/colors/index.d.ts +11 -12
  29. package/src/colors/index.js +12 -13
  30. package/src/colors/rgbToHex.d.ts +3 -5
  31. package/src/colors/rgbToHex.js +2 -4
  32. package/src/colors/rgbToHex.test.js +2 -2
  33. package/src/colors/rgbToHsl.d.ts +5 -7
  34. package/src/colors/rgbToHsl.js +2 -4
  35. package/src/colors/rgbToHsl.test.js +2 -2
  36. package/src/colors/rgbToHsv.d.ts +5 -7
  37. package/src/colors/rgbToHsv.js +2 -4
  38. package/src/colors/rgbToHsv.test.js +2 -2
  39. package/src/connectors/create.js +3 -5
  40. package/src/connectors/create.test.js +3 -3
  41. package/src/connectors/extends.js +7 -8
  42. package/src/connectors/fromPointAxisNormal.js +6 -8
  43. package/src/connectors/fromPointAxisNormal.test.js +3 -3
  44. package/src/connectors/index.js +7 -9
  45. package/src/connectors/normalize.js +7 -9
  46. package/src/connectors/toString.js +1 -3
  47. package/src/connectors/transform.js +10 -12
  48. package/src/connectors/transform.test.js +3 -3
  49. package/src/connectors/transformationBetween.js +25 -27
  50. package/src/connectors/transformationBetween.test.js +13 -13
  51. package/src/curves/bezier/arcLengthToT.d.ts +2 -4
  52. package/src/curves/bezier/arcLengthToT.js +6 -8
  53. package/src/curves/bezier/arcLengthToT.test.js +13 -13
  54. package/src/curves/bezier/create.d.ts +2 -4
  55. package/src/curves/bezier/create.js +3 -5
  56. package/src/curves/bezier/create.test.js +2 -2
  57. package/src/curves/bezier/index.d.ts +7 -8
  58. package/src/curves/bezier/index.js +9 -8
  59. package/src/curves/bezier/length.d.ts +2 -4
  60. package/src/curves/bezier/length.js +4 -6
  61. package/src/curves/bezier/length.test.js +12 -12
  62. package/src/curves/bezier/lengths.d.ts +2 -4
  63. package/src/curves/bezier/lengths.js +5 -7
  64. package/src/curves/bezier/lengths.test.js +12 -12
  65. package/src/curves/bezier/tangentAt.d.ts +2 -4
  66. package/src/curves/bezier/tangentAt.js +2 -4
  67. package/src/curves/bezier/tangentAt.test.js +2 -2
  68. package/src/curves/bezier/type.d.ts +1 -3
  69. package/src/curves/bezier/valueAt.d.ts +2 -4
  70. package/src/curves/bezier/valueAt.js +2 -4
  71. package/src/curves/bezier/valueAt.test.js +2 -2
  72. package/src/curves/index.d.ts +1 -3
  73. package/src/curves/index.js +4 -5
  74. package/src/geometries/geom2/applyTransforms.js +7 -13
  75. package/src/geometries/geom2/applyTransforms.test.js +6 -6
  76. package/src/geometries/geom2/clone.d.ts +2 -4
  77. package/src/geometries/geom2/clone.js +3 -5
  78. package/src/geometries/geom2/clone.test.js +5 -5
  79. package/src/geometries/geom2/create.d.ts +3 -5
  80. package/src/geometries/geom2/create.js +19 -19
  81. package/src/geometries/geom2/create.test.js +6 -6
  82. package/src/geometries/geom2/fromCompactBinary.d.ts +2 -4
  83. package/src/geometries/geom2/fromCompactBinary.js +19 -11
  84. package/src/geometries/geom2/fromSides.d.ts +4 -0
  85. package/src/geometries/geom2/fromSides.js +115 -0
  86. package/src/geometries/geom2/fromToCompactBinary.test.js +16 -38
  87. package/src/geometries/geom2/index.d.ts +14 -15
  88. package/src/geometries/geom2/index.js +17 -24
  89. package/src/geometries/geom2/isA.d.ts +2 -4
  90. package/src/geometries/geom2/isA.js +4 -6
  91. package/src/geometries/geom2/isA.test.js +5 -3
  92. package/src/geometries/geom2/reverse.d.ts +2 -4
  93. package/src/geometries/geom2/reverse.js +12 -14
  94. package/src/geometries/geom2/reverse.test.js +29 -9
  95. package/src/geometries/geom2/toCompactBinary.d.ts +2 -4
  96. package/src/geometries/geom2/toCompactBinary.js +18 -15
  97. package/src/geometries/geom2/toOutlines.d.ts +3 -5
  98. package/src/geometries/geom2/toOutlines.js +3 -109
  99. package/src/geometries/geom2/toOutlines.test.js +34 -61
  100. package/src/geometries/geom2/toPoints.d.ts +3 -5
  101. package/src/geometries/geom2/toPoints.js +10 -13
  102. package/src/geometries/geom2/toPoints.test.js +8 -8
  103. package/src/geometries/geom2/toSides.d.ts +3 -5
  104. package/src/geometries/geom2/toSides.js +13 -6
  105. package/src/geometries/geom2/toString.d.ts +2 -4
  106. package/src/geometries/geom2/toString.js +9 -11
  107. package/src/geometries/geom2/toString.test.js +17 -0
  108. package/src/geometries/geom2/transform.d.ts +3 -5
  109. package/src/geometries/geom2/transform.js +9 -11
  110. package/src/geometries/geom2/transform.test.js +28 -29
  111. package/src/geometries/geom2/type.d.ts +5 -7
  112. package/src/geometries/geom2/validate.d.ts +1 -3
  113. package/src/geometries/geom2/validate.js +34 -13
  114. package/src/geometries/geom2/validate.test.js +39 -0
  115. package/src/geometries/geom3/applyTransforms.js +5 -7
  116. package/src/geometries/geom3/applyTransforms.test.js +6 -6
  117. package/src/geometries/geom3/clone.d.ts +2 -4
  118. package/src/geometries/geom3/clone.js +3 -5
  119. package/src/geometries/geom3/clone.test.js +5 -5
  120. package/src/geometries/geom3/create.d.ts +3 -5
  121. package/src/geometries/geom3/create.js +17 -8
  122. package/src/geometries/geom3/create.test.js +5 -5
  123. package/src/geometries/geom3/fromCompactBinary.d.ts +2 -4
  124. package/src/geometries/geom3/fromCompactBinary.js +6 -8
  125. package/src/geometries/geom3/fromPoints.d.ts +3 -5
  126. package/src/geometries/geom3/fromPoints.js +11 -19
  127. package/src/geometries/geom3/fromPoints.test.js +6 -6
  128. package/src/geometries/geom3/fromPointsConvex.d.ts +3 -5
  129. package/src/geometries/geom3/fromPointsConvex.js +6 -7
  130. package/src/geometries/geom3/fromPointsConvex.test.js +6 -5
  131. package/src/geometries/geom3/fromToCompactBinary.test.js +7 -7
  132. package/src/geometries/geom3/index.d.ts +14 -15
  133. package/src/geometries/geom3/index.js +22 -30
  134. package/src/geometries/geom3/invert.d.ts +2 -4
  135. package/src/geometries/geom3/invert.js +8 -10
  136. package/src/geometries/geom3/invert.test.js +5 -5
  137. package/src/geometries/geom3/isA.d.ts +2 -4
  138. package/src/geometries/geom3/isA.js +2 -4
  139. package/src/geometries/geom3/isA.test.js +2 -2
  140. package/src/geometries/geom3/toCompactBinary.d.ts +2 -4
  141. package/src/geometries/geom3/toCompactBinary.js +10 -12
  142. package/src/geometries/geom3/toPoints.d.ts +3 -5
  143. package/src/geometries/geom3/toPoints.js +5 -8
  144. package/src/geometries/geom3/toPoints.test.js +9 -9
  145. package/src/geometries/geom3/toPolygons.d.ts +3 -5
  146. package/src/geometries/geom3/toPolygons.js +4 -6
  147. package/src/geometries/geom3/toString.d.ts +2 -4
  148. package/src/geometries/geom3/toString.js +5 -7
  149. package/src/geometries/geom3/toString.test.js +17 -0
  150. package/src/geometries/geom3/transform.d.ts +3 -5
  151. package/src/geometries/geom3/transform.js +6 -8
  152. package/src/geometries/geom3/transform.test.js +6 -6
  153. package/src/geometries/geom3/type.d.ts +4 -6
  154. package/src/geometries/geom3/validate.d.ts +1 -3
  155. package/src/geometries/geom3/validate.js +5 -6
  156. package/src/geometries/geom3/validate.test.js +26 -0
  157. package/src/geometries/index.d.ts +6 -7
  158. package/src/geometries/index.js +10 -10
  159. package/src/geometries/path2/appendArc.d.ts +4 -6
  160. package/src/geometries/path2/appendArc.js +58 -60
  161. package/src/geometries/path2/appendArc.test.js +8 -7
  162. package/src/geometries/path2/appendBezier.d.ts +3 -5
  163. package/src/geometries/path2/appendBezier.js +41 -43
  164. package/src/geometries/path2/appendBezier.test.js +3 -3
  165. package/src/geometries/path2/appendPoints.d.ts +3 -5
  166. package/src/geometries/path2/appendPoints.js +6 -8
  167. package/src/geometries/path2/appendPoints.test.js +2 -2
  168. package/src/geometries/path2/applyTransforms.js +3 -5
  169. package/src/geometries/path2/applyTransforms.test.js +4 -4
  170. package/src/geometries/path2/clone.d.ts +2 -4
  171. package/src/geometries/path2/clone.js +3 -5
  172. package/src/geometries/path2/close.d.ts +2 -4
  173. package/src/geometries/path2/close.js +6 -8
  174. package/src/geometries/path2/close.test.js +2 -2
  175. package/src/geometries/path2/concat.d.ts +2 -4
  176. package/src/geometries/path2/concat.js +11 -13
  177. package/src/geometries/path2/concat.test.js +2 -2
  178. package/src/geometries/path2/create.d.ts +3 -5
  179. package/src/geometries/path2/create.js +12 -9
  180. package/src/geometries/path2/create.test.js +2 -2
  181. package/src/geometries/path2/equals.d.ts +2 -4
  182. package/src/geometries/path2/equals.js +9 -11
  183. package/src/geometries/path2/equals.test.js +2 -2
  184. package/src/geometries/path2/fromCompactBinary.d.ts +2 -4
  185. package/src/geometries/path2/fromCompactBinary.js +5 -7
  186. package/src/geometries/path2/fromPoints.d.ts +3 -5
  187. package/src/geometries/path2/fromPoints.js +9 -11
  188. package/src/geometries/path2/fromPoints.test.js +3 -3
  189. package/src/geometries/path2/fromToCompactBinary.test.js +2 -2
  190. package/src/geometries/path2/index.d.ts +18 -19
  191. package/src/geometries/path2/index.js +19 -28
  192. package/src/geometries/path2/isA.d.ts +2 -4
  193. package/src/geometries/path2/isA.js +2 -4
  194. package/src/geometries/path2/isA.test.js +2 -2
  195. package/src/geometries/path2/reverse.d.ts +2 -4
  196. package/src/geometries/path2/reverse.js +5 -7
  197. package/src/geometries/path2/reverse.test.js +2 -2
  198. package/src/geometries/path2/toCompactBinary.d.ts +2 -4
  199. package/src/geometries/path2/toCompactBinary.js +2 -4
  200. package/src/geometries/path2/toPoints.d.ts +3 -5
  201. package/src/geometries/path2/toPoints.js +4 -6
  202. package/src/geometries/path2/toPoints.test.js +3 -3
  203. package/src/geometries/path2/toString.d.ts +2 -4
  204. package/src/geometries/path2/toString.js +5 -7
  205. package/src/geometries/path2/transform.d.ts +3 -5
  206. package/src/geometries/path2/transform.js +6 -8
  207. package/src/geometries/path2/transform.test.js +5 -5
  208. package/src/geometries/path2/type.d.ts +4 -6
  209. package/src/geometries/path2/validate.d.ts +1 -3
  210. package/src/geometries/path2/validate.js +6 -7
  211. package/src/geometries/poly2/arePointsInside.d.ts +3 -5
  212. package/src/geometries/poly2/arePointsInside.js +21 -24
  213. package/src/geometries/poly2/arePointsInside.test.js +2 -2
  214. package/src/geometries/poly2/clone.d.ts +3 -0
  215. package/src/geometries/poly2/clone.js +8 -0
  216. package/src/geometries/poly2/clone.test.js +17 -0
  217. package/src/geometries/poly2/create.d.ts +3 -5
  218. package/src/geometries/poly2/create.js +11 -12
  219. package/src/geometries/poly2/create.test.js +4 -4
  220. package/src/geometries/poly2/index.d.ts +14 -6
  221. package/src/geometries/poly2/index.js +16 -11
  222. package/src/geometries/poly2/isA.d.ts +3 -0
  223. package/src/geometries/poly2/isA.js +16 -0
  224. package/src/geometries/poly2/isA.test.js +30 -0
  225. package/src/geometries/poly2/isConvex.d.ts +3 -0
  226. package/src/geometries/poly2/isConvex.js +37 -0
  227. package/src/geometries/poly2/isConvex.test.js +27 -0
  228. package/src/geometries/poly2/isSimple.d.ts +3 -0
  229. package/src/geometries/poly2/isSimple.js +38 -0
  230. package/src/geometries/poly2/isSimple.test.js +31 -0
  231. package/src/geometries/poly2/measureArea.d.ts +2 -4
  232. package/src/geometries/poly2/measureArea.js +5 -7
  233. package/src/geometries/poly2/measureArea.test.js +2 -2
  234. package/src/geometries/poly2/measureBoundingBox.d.ts +4 -0
  235. package/src/geometries/poly2/measureBoundingBox.js +18 -0
  236. package/src/geometries/poly2/measureBoundingBox.test.js +71 -0
  237. package/src/geometries/poly2/reverse.d.ts +3 -0
  238. package/src/geometries/poly2/reverse.js +13 -0
  239. package/src/geometries/poly2/reverse.test.js +27 -0
  240. package/src/geometries/poly2/toPoints.d.ts +4 -0
  241. package/src/geometries/poly2/toPoints.js +8 -0
  242. package/src/geometries/poly2/toPoints.test.js +18 -0
  243. package/src/geometries/poly2/toString.d.ts +3 -0
  244. package/src/geometries/poly2/toString.js +9 -0
  245. package/src/geometries/poly2/toString.test.js +10 -0
  246. package/src/geometries/poly2/transform.d.ts +4 -0
  247. package/src/geometries/poly2/transform.js +20 -0
  248. package/src/geometries/poly2/transform.test.js +62 -0
  249. package/src/geometries/poly2/type.d.ts +5 -5
  250. package/src/geometries/poly2/validate.d.ts +2 -0
  251. package/src/geometries/poly2/validate.js +46 -0
  252. package/src/geometries/poly2/validate.test.js +31 -0
  253. package/src/geometries/poly3/clone.d.ts +3 -5
  254. package/src/geometries/poly3/clone.js +6 -8
  255. package/src/geometries/poly3/clone.test.js +6 -5
  256. package/src/geometries/poly3/create.d.ts +3 -5
  257. package/src/geometries/poly3/create.js +6 -6
  258. package/src/geometries/poly3/create.test.js +15 -3
  259. package/src/geometries/poly3/fromVerticesAndPlane.d.ts +5 -0
  260. package/src/geometries/poly3/{fromPointsAndPlane.js → fromVerticesAndPlane.js} +5 -7
  261. package/src/geometries/poly3/index.d.ts +16 -18
  262. package/src/geometries/poly3/index.js +17 -22
  263. package/src/geometries/poly3/invert.d.ts +2 -4
  264. package/src/geometries/poly3/invert.js +6 -7
  265. package/src/geometries/poly3/invert.test.js +5 -5
  266. package/src/geometries/poly3/isA.d.ts +2 -4
  267. package/src/geometries/poly3/isA.js +2 -4
  268. package/src/geometries/poly3/isA.test.js +3 -3
  269. package/src/geometries/poly3/isConvex.d.ts +2 -4
  270. package/src/geometries/poly3/isConvex.js +21 -23
  271. package/src/geometries/poly3/isConvex.test.js +9 -9
  272. package/src/geometries/poly3/measureArea.d.ts +2 -4
  273. package/src/geometries/poly3/measureArea.js +4 -6
  274. package/src/geometries/poly3/measureArea.test.js +12 -11
  275. package/src/geometries/poly3/measureBoundingBox.d.ts +3 -5
  276. package/src/geometries/poly3/measureBoundingBox.js +6 -8
  277. package/src/geometries/poly3/measureBoundingBox.test.js +9 -8
  278. package/src/geometries/poly3/measureBoundingSphere.d.ts +3 -5
  279. package/src/geometries/poly3/measureBoundingSphere.js +4 -6
  280. package/src/geometries/poly3/measureBoundingSphere.test.js +8 -7
  281. package/src/geometries/poly3/measureSignedVolume.d.ts +2 -4
  282. package/src/geometries/poly3/measureSignedVolume.js +4 -6
  283. package/src/geometries/poly3/measureSignedVolume.test.js +8 -8
  284. package/src/geometries/poly3/plane.d.ts +3 -5
  285. package/src/geometries/poly3/plane.js +2 -4
  286. package/src/geometries/poly3/toString.d.ts +2 -4
  287. package/src/geometries/poly3/toString.js +4 -12
  288. package/src/geometries/poly3/toString.test.js +10 -0
  289. package/src/geometries/poly3/toVertices.d.ts +4 -0
  290. package/src/geometries/poly3/toVertices.js +8 -0
  291. package/src/geometries/poly3/transform.d.ts +3 -5
  292. package/src/geometries/poly3/transform.js +7 -9
  293. package/src/geometries/poly3/transform.test.js +7 -7
  294. package/src/geometries/poly3/type.d.ts +6 -6
  295. package/src/geometries/poly3/validate.d.ts +1 -3
  296. package/src/geometries/poly3/validate.js +14 -15
  297. package/src/geometries/slice/calculatePlane.d.ts +5 -0
  298. package/src/geometries/slice/calculatePlane.js +65 -0
  299. package/src/geometries/slice/calculatePlane.test.js +43 -0
  300. package/src/geometries/slice/clone.d.ts +3 -0
  301. package/src/geometries/slice/clone.js +9 -0
  302. package/src/geometries/slice/clone.test.js +14 -0
  303. package/src/geometries/slice/create.d.ts +4 -0
  304. package/src/geometries/slice/create.js +18 -0
  305. package/src/{operations/extrusions → geometries}/slice/create.test.js +3 -3
  306. package/src/{operations/extrusions → geometries/slice}/earcut/assignHoles.js +6 -8
  307. package/src/geometries/slice/earcut/assignHoles.test.js +75 -0
  308. package/src/{operations/extrusions → geometries/slice}/earcut/eliminateHoles.js +3 -5
  309. package/src/{operations/extrusions → geometries/slice}/earcut/index.js +7 -8
  310. package/src/{operations/extrusions → geometries/slice}/earcut/linkedList.js +3 -6
  311. package/src/{operations/extrusions → geometries/slice}/earcut/linkedListSort.js +1 -4
  312. package/src/{operations/extrusions → geometries/slice}/earcut/linkedPolygon.js +8 -10
  313. package/src/{operations/extrusions → geometries/slice}/earcut/polygonHierarchy.js +13 -13
  314. package/src/{operations/extrusions → geometries/slice}/earcut/triangle.js +2 -5
  315. package/src/geometries/slice/equals.d.ts +3 -0
  316. package/src/geometries/slice/equals.js +27 -0
  317. package/src/geometries/slice/equals.test.js +17 -0
  318. package/src/geometries/slice/fromGeom2.d.ts +5 -0
  319. package/src/geometries/slice/fromGeom2.js +17 -0
  320. package/src/geometries/slice/fromVertices.d.ts +7 -0
  321. package/src/geometries/slice/fromVertices.js +34 -0
  322. package/src/geometries/slice/fromVertices.test.js +11 -0
  323. package/src/geometries/slice/index.d.ts +16 -0
  324. package/src/geometries/slice/index.js +23 -0
  325. package/src/geometries/slice/isA.d.ts +3 -0
  326. package/src/geometries/slice/isA.js +16 -0
  327. package/src/{operations/extrusions → geometries}/slice/isA.test.js +3 -3
  328. package/src/geometries/slice/reverse.d.ts +3 -0
  329. package/src/geometries/slice/reverse.js +14 -0
  330. package/src/geometries/slice/toEdges.d.ts +3 -0
  331. package/src/geometries/slice/toEdges.js +20 -0
  332. package/src/geometries/slice/toPolygons.d.ts +5 -0
  333. package/src/{operations/extrusions → geometries}/slice/toPolygons.js +9 -10
  334. package/src/geometries/slice/toString.d.ts +3 -0
  335. package/src/geometries/slice/toString.js +16 -0
  336. package/src/geometries/slice/toString.test.js +17 -0
  337. package/src/geometries/slice/toVertices.d.ts +4 -0
  338. package/src/geometries/slice/toVertices.js +19 -0
  339. package/src/geometries/slice/transform.d.ts +5 -0
  340. package/src/geometries/slice/transform.js +19 -0
  341. package/src/{operations/extrusions → geometries}/slice/transform.test.js +11 -21
  342. package/src/geometries/slice/type.d.ts +7 -0
  343. package/src/geometries/slice/validate.d.ts +1 -0
  344. package/src/geometries/slice/validate.js +48 -0
  345. package/src/geometries/slice/validate.test.js +36 -0
  346. package/src/geometries/types.d.ts +12 -10
  347. package/src/index.d.ts +2 -4
  348. package/src/index.js +14 -16
  349. package/src/index.test-d.ts +3 -3
  350. package/src/maths/constants.d.ts +1 -1
  351. package/src/maths/constants.js +10 -20
  352. package/src/maths/index.d.ts +9 -11
  353. package/src/maths/index.js +11 -12
  354. package/src/maths/line2/clone.d.ts +2 -4
  355. package/src/maths/line2/clone.js +4 -6
  356. package/src/maths/line2/clone.test.js +4 -3
  357. package/src/maths/line2/closestPoint.d.ts +3 -5
  358. package/src/maths/line2/closestPoint.js +7 -9
  359. package/src/maths/line2/closestPoint.test.js +4 -3
  360. package/src/maths/line2/copy.d.ts +2 -4
  361. package/src/maths/line2/copy.js +4 -6
  362. package/src/maths/line2/copy.test.js +4 -3
  363. package/src/maths/line2/create.d.ts +2 -4
  364. package/src/maths/line2/create.js +5 -8
  365. package/src/maths/line2/create.test.js +3 -3
  366. package/src/maths/line2/direction.d.ts +3 -5
  367. package/src/maths/line2/direction.js +4 -6
  368. package/src/maths/line2/direction.test.js +3 -3
  369. package/src/maths/line2/distanceToPoint.d.ts +3 -5
  370. package/src/maths/line2/distanceToPoint.js +5 -7
  371. package/src/maths/line2/distanceToPoint.test.js +6 -4
  372. package/src/maths/line2/equals.d.ts +2 -4
  373. package/src/maths/line2/equals.js +4 -6
  374. package/src/maths/line2/equals.test.js +3 -2
  375. package/src/maths/line2/fromPoints.d.ts +3 -5
  376. package/src/maths/line2/fromPoints.js +6 -8
  377. package/src/maths/line2/fromPoints.test.js +4 -3
  378. package/src/maths/line2/fromValues.d.ts +2 -4
  379. package/src/maths/line2/fromValues.js +6 -8
  380. package/src/maths/line2/fromValues.test.js +4 -3
  381. package/src/maths/line2/index.d.ts +16 -17
  382. package/src/maths/line2/index.js +16 -18
  383. package/src/maths/line2/intersectPointOfLines.d.ts +3 -5
  384. package/src/maths/line2/intersectPointOfLines.js +7 -8
  385. package/src/maths/line2/intersectPointOfLines.test.js +4 -3
  386. package/src/maths/line2/origin.d.ts +3 -5
  387. package/src/maths/line2/origin.js +4 -6
  388. package/src/maths/line2/origin.test.js +4 -3
  389. package/src/maths/line2/reverse.d.ts +2 -4
  390. package/src/maths/line2/reverse.js +7 -9
  391. package/src/maths/line2/reverse.test.js +4 -3
  392. package/src/maths/line2/toString.d.ts +2 -4
  393. package/src/maths/line2/toString.js +3 -5
  394. package/src/maths/line2/transform.d.ts +3 -5
  395. package/src/maths/line2/transform.js +9 -11
  396. package/src/maths/line2/transform.test.js +4 -3
  397. package/src/maths/line2/type.d.ts +1 -3
  398. package/src/maths/line2/xAtY.d.ts +2 -4
  399. package/src/maths/line2/xAtY.js +5 -7
  400. package/src/maths/line2/xAtY.test.js +6 -4
  401. package/src/maths/line3/clone.d.ts +2 -4
  402. package/src/maths/line3/clone.js +5 -7
  403. package/src/maths/line3/clone.test.js +4 -3
  404. package/src/maths/line3/closestPoint.d.ts +3 -5
  405. package/src/maths/line3/closestPoint.js +12 -14
  406. package/src/maths/line3/closestPoint.test.js +4 -3
  407. package/src/maths/line3/copy.d.ts +2 -4
  408. package/src/maths/line3/copy.js +5 -7
  409. package/src/maths/line3/copy.test.js +4 -3
  410. package/src/maths/line3/create.d.ts +2 -4
  411. package/src/maths/line3/create.js +4 -7
  412. package/src/maths/line3/create.test.js +3 -3
  413. package/src/maths/line3/direction.d.ts +3 -5
  414. package/src/maths/line3/direction.js +3 -5
  415. package/src/maths/line3/direction.test.js +4 -3
  416. package/src/maths/line3/distanceToPoint.d.ts +3 -5
  417. package/src/maths/line3/distanceToPoint.js +8 -10
  418. package/src/maths/line3/distanceToPoint.test.js +6 -4
  419. package/src/maths/line3/equals.d.ts +2 -4
  420. package/src/maths/line3/equals.js +4 -6
  421. package/src/maths/line3/equals.test.js +3 -2
  422. package/src/maths/line3/fromPlanes.d.ts +3 -5
  423. package/src/maths/line3/fromPlanes.js +14 -17
  424. package/src/maths/line3/fromPlanes.test.js +4 -4
  425. package/src/maths/line3/fromPointAndDirection.d.ts +3 -5
  426. package/src/maths/line3/fromPointAndDirection.js +6 -8
  427. package/src/maths/line3/fromPointAndDirection.test.js +4 -3
  428. package/src/maths/line3/fromPoints.d.ts +3 -5
  429. package/src/maths/line3/fromPoints.js +7 -9
  430. package/src/maths/line3/fromPoints.test.js +4 -3
  431. package/src/maths/line3/index.d.ts +16 -17
  432. package/src/maths/line3/index.js +16 -18
  433. package/src/maths/line3/intersectPointOfLineAndPlane.d.ts +4 -6
  434. package/src/maths/line3/intersectPointOfLineAndPlane.js +10 -13
  435. package/src/maths/line3/intersectPointOfLineAndPlane.test.js +4 -4
  436. package/src/maths/line3/origin.d.ts +3 -5
  437. package/src/maths/line3/origin.js +3 -5
  438. package/src/maths/line3/origin.test.js +4 -3
  439. package/src/maths/line3/reverse.d.ts +2 -4
  440. package/src/maths/line3/reverse.js +6 -8
  441. package/src/maths/line3/reverse.test.js +4 -3
  442. package/src/maths/line3/toString.d.ts +2 -4
  443. package/src/maths/line3/toString.js +3 -5
  444. package/src/maths/line3/transform.d.ts +3 -5
  445. package/src/maths/line3/transform.js +10 -12
  446. package/src/maths/line3/transform.test.js +4 -3
  447. package/src/maths/line3/type.d.ts +2 -4
  448. package/src/maths/mat4/add.d.ts +2 -4
  449. package/src/maths/mat4/add.js +5 -7
  450. package/src/maths/mat4/add.test.js +4 -3
  451. package/src/maths/mat4/clone.d.ts +2 -4
  452. package/src/maths/mat4/clone.js +4 -6
  453. package/src/maths/mat4/clone.test.js +4 -3
  454. package/src/maths/mat4/copy.d.ts +2 -4
  455. package/src/maths/mat4/copy.js +4 -6
  456. package/src/maths/mat4/copy.test.js +4 -3
  457. package/src/maths/mat4/create.d.ts +2 -4
  458. package/src/maths/mat4/create.js +2 -5
  459. package/src/maths/mat4/create.test.js +3 -3
  460. package/src/maths/mat4/equals.d.ts +2 -4
  461. package/src/maths/mat4/equals.js +4 -6
  462. package/src/maths/mat4/equals.test.js +3 -2
  463. package/src/maths/mat4/fromRotation.d.ts +3 -5
  464. package/src/maths/mat4/fromRotation.js +8 -10
  465. package/src/maths/mat4/fromRotation.test.js +4 -3
  466. package/src/maths/mat4/fromScaling.d.ts +3 -5
  467. package/src/maths/mat4/fromScaling.js +4 -6
  468. package/src/maths/mat4/fromScaling.test.js +4 -3
  469. package/src/maths/mat4/fromTaitBryanRotation.d.ts +2 -4
  470. package/src/maths/mat4/fromTaitBryanRotation.js +7 -9
  471. package/src/maths/mat4/fromTaitBryanRotation.test.js +3 -3
  472. package/src/maths/mat4/fromTranslation.d.ts +3 -5
  473. package/src/maths/mat4/fromTranslation.js +4 -6
  474. package/src/maths/mat4/fromTranslation.test.js +4 -3
  475. package/src/maths/mat4/fromValues.d.ts +2 -4
  476. package/src/maths/mat4/fromValues.js +19 -21
  477. package/src/maths/mat4/fromValues.test.js +4 -3
  478. package/src/maths/mat4/fromVectorRotation.d.ts +3 -5
  479. package/src/maths/mat4/fromVectorRotation.js +8 -10
  480. package/src/maths/mat4/fromVectorRotation.test.js +4 -5
  481. package/src/maths/mat4/fromXRotation.d.ts +2 -4
  482. package/src/maths/mat4/fromXRotation.js +5 -7
  483. package/src/maths/mat4/fromXRotation.test.js +4 -3
  484. package/src/maths/mat4/fromYRotation.d.ts +2 -4
  485. package/src/maths/mat4/fromYRotation.js +5 -7
  486. package/src/maths/mat4/fromYRotation.test.js +4 -3
  487. package/src/maths/mat4/fromZRotation.d.ts +2 -4
  488. package/src/maths/mat4/fromZRotation.js +5 -7
  489. package/src/maths/mat4/fromZRotation.test.js +4 -3
  490. package/src/maths/mat4/identity.d.ts +2 -4
  491. package/src/maths/mat4/identity.js +3 -5
  492. package/src/maths/mat4/identity.test.js +4 -3
  493. package/src/maths/mat4/index.d.ts +30 -28
  494. package/src/maths/mat4/index.js +29 -31
  495. package/src/maths/mat4/invert.d.ts +3 -0
  496. package/src/maths/mat4/invert.js +7 -7
  497. package/src/maths/mat4/invert.test.js +6 -5
  498. package/src/maths/mat4/isIdentity.d.ts +2 -4
  499. package/src/maths/mat4/isIdentity.js +4 -6
  500. package/src/maths/mat4/isIdentity.test.js +2 -2
  501. package/src/maths/mat4/isMirroring.d.ts +2 -4
  502. package/src/maths/mat4/isMirroring.js +4 -6
  503. package/src/maths/mat4/isMirroring.test.js +3 -3
  504. package/src/maths/mat4/isOnlyTransformScale.d.ts +3 -0
  505. package/src/maths/mat4/isOnlyTransformScale.js +7 -5
  506. package/src/maths/mat4/isOnlyTransformScale.test.js +3 -3
  507. package/src/maths/mat4/mirrorByPlane.d.ts +3 -5
  508. package/src/maths/mat4/mirrorByPlane.js +4 -6
  509. package/src/maths/mat4/mirrorByPlane.test.js +4 -4
  510. package/src/maths/mat4/multiply.d.ts +2 -4
  511. package/src/maths/mat4/multiply.js +5 -7
  512. package/src/maths/mat4/multiply.test.js +4 -3
  513. package/src/maths/mat4/rotate.d.ts +3 -5
  514. package/src/maths/mat4/rotate.js +9 -11
  515. package/src/maths/mat4/rotate.test.js +6 -5
  516. package/src/maths/mat4/rotateX.d.ts +2 -4
  517. package/src/maths/mat4/rotateX.js +6 -8
  518. package/src/maths/mat4/rotateX.test.js +4 -3
  519. package/src/maths/mat4/rotateY.d.ts +2 -4
  520. package/src/maths/mat4/rotateY.js +6 -8
  521. package/src/maths/mat4/rotateY.test.js +4 -3
  522. package/src/maths/mat4/rotateZ.d.ts +2 -4
  523. package/src/maths/mat4/rotateZ.js +6 -8
  524. package/src/maths/mat4/rotateZ.test.js +4 -3
  525. package/src/maths/mat4/scale.d.ts +3 -5
  526. package/src/maths/mat4/scale.js +5 -7
  527. package/src/maths/mat4/scale.test.js +4 -3
  528. package/src/maths/mat4/subtract.d.ts +2 -4
  529. package/src/maths/mat4/subtract.js +5 -7
  530. package/src/maths/mat4/subtract.test.js +4 -3
  531. package/src/maths/mat4/toString.d.ts +2 -4
  532. package/src/maths/mat4/toString.js +3 -5
  533. package/src/maths/mat4/translate.d.ts +3 -5
  534. package/src/maths/mat4/translate.js +5 -7
  535. package/src/maths/mat4/translate.test.js +11 -15
  536. package/src/maths/mat4/type.d.ts +1 -3
  537. package/src/maths/plane/clone.d.ts +2 -4
  538. package/src/maths/plane/clone.test.js +4 -3
  539. package/src/maths/plane/copy.d.ts +2 -4
  540. package/src/maths/plane/copy.test.js +4 -3
  541. package/src/maths/plane/create.d.ts +2 -4
  542. package/src/maths/plane/create.test.js +3 -3
  543. package/src/maths/plane/equals.d.ts +2 -4
  544. package/src/maths/plane/equals.test.js +3 -2
  545. package/src/maths/plane/flip.d.ts +2 -4
  546. package/src/maths/plane/flip.js +4 -6
  547. package/src/maths/plane/flip.test.js +4 -3
  548. package/src/maths/plane/fromNormalAndPoint.d.ts +3 -5
  549. package/src/maths/plane/fromNormalAndPoint.js +6 -9
  550. package/src/maths/plane/fromNormalAndPoint.test.js +4 -3
  551. package/src/maths/plane/fromPoints.d.ts +3 -5
  552. package/src/maths/plane/fromPoints.js +4 -6
  553. package/src/maths/plane/fromPoints.test.js +4 -3
  554. package/src/maths/plane/fromPointsRandom.d.ts +3 -5
  555. package/src/maths/plane/fromPointsRandom.js +8 -10
  556. package/src/maths/plane/fromValues.d.ts +2 -4
  557. package/src/maths/plane/index.d.ts +14 -16
  558. package/src/maths/plane/index.js +38 -40
  559. package/src/maths/plane/projectionOfPoint.d.ts +3 -5
  560. package/src/maths/plane/projectionOfPoint.js +5 -7
  561. package/src/maths/plane/projectionOfPoint.test.js +3 -3
  562. package/src/maths/plane/signedDistanceToPoint.d.ts +3 -5
  563. package/src/maths/plane/signedDistanceToPoint.js +5 -7
  564. package/src/maths/plane/signedDistanceToPoint.test.js +3 -2
  565. package/src/maths/plane/toString.d.ts +2 -4
  566. package/src/maths/plane/transform.d.ts +3 -5
  567. package/src/maths/plane/transform.js +11 -13
  568. package/src/maths/plane/transform.test.js +4 -3
  569. package/src/maths/plane/type.d.ts +1 -3
  570. package/src/maths/rotation.test.js +4 -4
  571. package/src/maths/types.d.ts +15 -8
  572. package/src/maths/utils/OrthonormalFormula.d.ts +9 -0
  573. package/src/maths/utils/OrthonormalFormula.js +82 -0
  574. package/src/maths/utils/OrthonormalFormula.test.js +72 -0
  575. package/src/maths/utils/aboutEqualNormals.d.ts +2 -4
  576. package/src/maths/utils/aboutEqualNormals.js +4 -6
  577. package/src/maths/utils/area.d.ts +2 -4
  578. package/src/maths/utils/area.js +2 -4
  579. package/src/maths/utils/interpolateBetween2DPointsForY.d.ts +2 -4
  580. package/src/maths/utils/interpolateBetween2DPointsForY.js +4 -6
  581. package/src/maths/utils/intersect.d.ts +2 -4
  582. package/src/maths/utils/intersect.js +14 -9
  583. package/src/maths/utils/intersect.test.js +40 -0
  584. package/src/maths/utils/solve2Linear.d.ts +2 -4
  585. package/src/maths/utils/solve2Linear.js +1 -3
  586. package/src/maths/utils/trigonometry.js +7 -9
  587. package/src/maths/utils/trigonometry.test.js +3 -3
  588. package/src/maths/vec1/type.d.ts +1 -3
  589. package/src/maths/vec2/abs.d.ts +2 -4
  590. package/src/maths/vec2/abs.js +4 -6
  591. package/src/maths/vec2/abs.test.js +4 -3
  592. package/src/maths/vec2/add.d.ts +2 -4
  593. package/src/maths/vec2/add.js +5 -7
  594. package/src/maths/vec2/add.test.js +4 -3
  595. package/src/maths/vec2/angle.d.ts +1 -3
  596. package/src/maths/vec2/angle.js +1 -1
  597. package/src/maths/vec2/angleDegrees.d.ts +2 -4
  598. package/src/maths/vec2/angleDegrees.js +4 -6
  599. package/src/maths/vec2/angleDegrees.test.js +6 -4
  600. package/src/maths/vec2/angleRadians.d.ts +2 -4
  601. package/src/maths/vec2/angleRadians.js +3 -5
  602. package/src/maths/vec2/angleRadians.test.js +6 -4
  603. package/src/maths/vec2/clone.d.ts +2 -4
  604. package/src/maths/vec2/clone.js +4 -6
  605. package/src/maths/vec2/clone.test.js +4 -3
  606. package/src/maths/vec2/copy.d.ts +2 -4
  607. package/src/maths/vec2/copy.js +4 -6
  608. package/src/maths/vec2/copy.test.js +4 -3
  609. package/src/maths/vec2/create.d.ts +2 -4
  610. package/src/maths/vec2/create.js +2 -5
  611. package/src/maths/vec2/create.test.js +3 -3
  612. package/src/maths/vec2/cross.d.ts +3 -5
  613. package/src/maths/vec2/cross.js +5 -7
  614. package/src/maths/vec2/cross.test.js +14 -12
  615. package/src/maths/vec2/distance.d.ts +2 -4
  616. package/src/maths/vec2/distance.js +4 -6
  617. package/src/maths/vec2/distance.test.js +6 -4
  618. package/src/maths/vec2/divide.d.ts +2 -4
  619. package/src/maths/vec2/divide.js +5 -7
  620. package/src/maths/vec2/divide.test.js +4 -3
  621. package/src/maths/vec2/dot.d.ts +2 -4
  622. package/src/maths/vec2/dot.js +4 -6
  623. package/src/maths/vec2/dot.test.js +3 -2
  624. package/src/maths/vec2/equals.d.ts +2 -4
  625. package/src/maths/vec2/equals.js +3 -5
  626. package/src/maths/vec2/equals.test.js +3 -2
  627. package/src/maths/vec2/fromAngleDegrees.d.ts +2 -4
  628. package/src/maths/vec2/fromAngleDegrees.js +5 -7
  629. package/src/maths/vec2/fromAngleDegrees.test.js +4 -3
  630. package/src/maths/vec2/fromAngleRadians.d.ts +2 -4
  631. package/src/maths/vec2/fromAngleRadians.js +5 -7
  632. package/src/maths/vec2/fromAngleRadians.test.js +4 -4
  633. package/src/maths/vec2/fromScalar.d.ts +2 -4
  634. package/src/maths/vec2/fromScalar.js +4 -6
  635. package/src/maths/vec2/fromScalar.test.js +4 -3
  636. package/src/maths/vec2/fromValues.d.ts +2 -4
  637. package/src/maths/vec2/fromValues.js +5 -7
  638. package/src/maths/vec2/index.d.ts +34 -35
  639. package/src/maths/vec2/index.js +33 -35
  640. package/src/maths/vec2/length.d.ts +2 -4
  641. package/src/maths/vec2/length.js +3 -5
  642. package/src/maths/vec2/length.test.js +6 -4
  643. package/src/maths/vec2/lerp.d.ts +2 -4
  644. package/src/maths/vec2/lerp.js +6 -8
  645. package/src/maths/vec2/lerp.test.js +4 -3
  646. package/src/maths/vec2/max.d.ts +2 -4
  647. package/src/maths/vec2/max.js +5 -7
  648. package/src/maths/vec2/max.test.js +4 -3
  649. package/src/maths/vec2/min.d.ts +2 -4
  650. package/src/maths/vec2/min.js +5 -7
  651. package/src/maths/vec2/min.test.js +4 -3
  652. package/src/maths/vec2/multiply.d.ts +2 -4
  653. package/src/maths/vec2/multiply.js +5 -7
  654. package/src/maths/vec2/multiply.test.js +4 -3
  655. package/src/maths/vec2/negate.d.ts +2 -4
  656. package/src/maths/vec2/negate.js +4 -6
  657. package/src/maths/vec2/negate.test.js +4 -3
  658. package/src/maths/vec2/normal.d.ts +2 -4
  659. package/src/maths/vec2/normal.js +7 -9
  660. package/src/maths/vec2/normal.test.js +4 -3
  661. package/src/maths/vec2/normalize.d.ts +2 -4
  662. package/src/maths/vec2/normalize.js +4 -8
  663. package/src/maths/vec2/normalize.test.js +4 -3
  664. package/src/maths/vec2/rotate.d.ts +2 -4
  665. package/src/maths/vec2/rotate.js +6 -8
  666. package/src/maths/vec2/rotate.test.js +4 -4
  667. package/src/maths/vec2/scale.d.ts +2 -4
  668. package/src/maths/vec2/scale.js +5 -7
  669. package/src/maths/vec2/scale.test.js +4 -3
  670. package/src/maths/vec2/snap.d.ts +2 -4
  671. package/src/maths/vec2/snap.js +5 -7
  672. package/src/maths/vec2/snap.test.js +4 -3
  673. package/src/maths/vec2/squaredDistance.d.ts +2 -4
  674. package/src/maths/vec2/squaredDistance.js +4 -6
  675. package/src/maths/vec2/squaredDistance.test.js +6 -4
  676. package/src/maths/vec2/squaredLength.d.ts +2 -4
  677. package/src/maths/vec2/squaredLength.js +3 -5
  678. package/src/maths/vec2/squaredLength.test.js +6 -4
  679. package/src/maths/vec2/subtract.d.ts +2 -4
  680. package/src/maths/vec2/subtract.js +5 -7
  681. package/src/maths/vec2/subtract.test.js +4 -3
  682. package/src/maths/vec2/toString.d.ts +2 -4
  683. package/src/maths/vec2/toString.js +3 -5
  684. package/src/maths/vec2/transform.d.ts +3 -5
  685. package/src/maths/vec2/transform.js +5 -7
  686. package/src/maths/vec2/transform.test.js +4 -3
  687. package/src/maths/vec2/type.d.ts +1 -3
  688. package/src/maths/vec3/abs.d.ts +2 -4
  689. package/src/maths/vec3/abs.js +4 -6
  690. package/src/maths/vec3/abs.test.js +4 -3
  691. package/src/maths/vec3/add.d.ts +2 -4
  692. package/src/maths/vec3/add.js +5 -7
  693. package/src/maths/vec3/add.test.js +4 -3
  694. package/src/maths/vec3/angle.d.ts +2 -4
  695. package/src/maths/vec3/angle.js +5 -7
  696. package/src/maths/vec3/angle.test.js +6 -4
  697. package/src/maths/vec3/clone.d.ts +2 -4
  698. package/src/maths/vec3/clone.js +4 -6
  699. package/src/maths/vec3/clone.test.js +4 -3
  700. package/src/maths/vec3/copy.d.ts +2 -4
  701. package/src/maths/vec3/copy.js +4 -6
  702. package/src/maths/vec3/copy.test.js +4 -3
  703. package/src/maths/vec3/create.d.ts +2 -4
  704. package/src/maths/vec3/create.js +2 -5
  705. package/src/maths/vec3/create.test.js +3 -3
  706. package/src/maths/vec3/cross.d.ts +2 -4
  707. package/src/maths/vec3/cross.js +5 -7
  708. package/src/maths/vec3/cross.test.js +4 -3
  709. package/src/maths/vec3/distance.d.ts +2 -4
  710. package/src/maths/vec3/distance.js +4 -6
  711. package/src/maths/vec3/distance.test.js +6 -4
  712. package/src/maths/vec3/divide.d.ts +2 -4
  713. package/src/maths/vec3/divide.js +5 -7
  714. package/src/maths/vec3/divide.test.js +4 -3
  715. package/src/maths/vec3/dot.d.ts +2 -4
  716. package/src/maths/vec3/dot.js +4 -6
  717. package/src/maths/vec3/dot.test.js +3 -2
  718. package/src/maths/vec3/equals.d.ts +2 -4
  719. package/src/maths/vec3/equals.js +3 -5
  720. package/src/maths/vec3/equals.test.js +3 -2
  721. package/src/maths/vec3/fromScalar.d.ts +2 -4
  722. package/src/maths/vec3/fromScalar.js +4 -6
  723. package/src/maths/vec3/fromScalar.test.js +4 -3
  724. package/src/maths/vec3/fromValues.d.ts +2 -4
  725. package/src/maths/vec3/fromValues.js +6 -8
  726. package/src/maths/vec3/fromValues.test.js +4 -3
  727. package/src/maths/vec3/fromVec2.d.ts +3 -5
  728. package/src/maths/vec3/fromVec2.js +4 -6
  729. package/src/maths/vec3/fromVec2.test.js +3 -3
  730. package/src/maths/vec3/index.d.ts +33 -34
  731. package/src/maths/vec3/index.js +32 -34
  732. package/src/maths/vec3/length.d.ts +2 -4
  733. package/src/maths/vec3/length.js +3 -5
  734. package/src/maths/vec3/length.test.js +6 -4
  735. package/src/maths/vec3/lerp.d.ts +2 -4
  736. package/src/maths/vec3/lerp.js +6 -8
  737. package/src/maths/vec3/lerp.test.js +4 -3
  738. package/src/maths/vec3/max.d.ts +2 -4
  739. package/src/maths/vec3/max.js +5 -7
  740. package/src/maths/vec3/max.test.js +4 -3
  741. package/src/maths/vec3/min.d.ts +2 -4
  742. package/src/maths/vec3/min.js +5 -7
  743. package/src/maths/vec3/min.test.js +4 -3
  744. package/src/maths/vec3/multiply.d.ts +2 -4
  745. package/src/maths/vec3/multiply.js +5 -7
  746. package/src/maths/vec3/multiply.test.js +4 -3
  747. package/src/maths/vec3/negate.d.ts +2 -4
  748. package/src/maths/vec3/negate.js +4 -6
  749. package/src/maths/vec3/negate.test.js +4 -3
  750. package/src/maths/vec3/normalize.d.ts +2 -4
  751. package/src/maths/vec3/normalize.js +4 -6
  752. package/src/maths/vec3/normalize.test.js +4 -3
  753. package/src/maths/vec3/orthogonal.d.ts +2 -4
  754. package/src/maths/vec3/orthogonal.js +7 -9
  755. package/src/maths/vec3/orthogonal.test.js +4 -3
  756. package/src/maths/vec3/rotateX.d.ts +2 -4
  757. package/src/maths/vec3/rotateX.js +6 -8
  758. package/src/maths/vec3/rotateX.test.js +4 -4
  759. package/src/maths/vec3/rotateY.d.ts +2 -4
  760. package/src/maths/vec3/rotateY.js +6 -8
  761. package/src/maths/vec3/rotateY.test.js +4 -4
  762. package/src/maths/vec3/rotateZ.d.ts +2 -4
  763. package/src/maths/vec3/rotateZ.js +6 -8
  764. package/src/maths/vec3/rotateZ.test.js +4 -4
  765. package/src/maths/vec3/scale.d.ts +2 -4
  766. package/src/maths/vec3/scale.js +5 -7
  767. package/src/maths/vec3/scale.test.js +4 -3
  768. package/src/maths/vec3/snap.d.ts +2 -4
  769. package/src/maths/vec3/snap.js +5 -7
  770. package/src/maths/vec3/snap.test.js +4 -3
  771. package/src/maths/vec3/squaredDistance.d.ts +2 -4
  772. package/src/maths/vec3/squaredDistance.js +4 -6
  773. package/src/maths/vec3/squaredDistance.test.js +6 -4
  774. package/src/maths/vec3/squaredLength.d.ts +2 -4
  775. package/src/maths/vec3/squaredLength.js +3 -5
  776. package/src/maths/vec3/squaredLength.test.js +6 -4
  777. package/src/maths/vec3/subtract.d.ts +2 -4
  778. package/src/maths/vec3/subtract.js +5 -7
  779. package/src/maths/vec3/subtract.test.js +4 -3
  780. package/src/maths/vec3/toString.d.ts +2 -4
  781. package/src/maths/vec3/toString.js +3 -5
  782. package/src/maths/vec3/transform.d.ts +3 -5
  783. package/src/maths/vec3/transform.js +5 -7
  784. package/src/maths/vec3/transform.test.js +12 -15
  785. package/src/maths/vec3/type.d.ts +1 -3
  786. package/src/maths/vec4/clone.d.ts +2 -4
  787. package/src/maths/vec4/clone.js +4 -6
  788. package/src/maths/vec4/clone.test.js +4 -3
  789. package/src/maths/vec4/copy.d.ts +2 -4
  790. package/src/maths/vec4/copy.js +4 -6
  791. package/src/maths/vec4/copy.test.js +4 -3
  792. package/src/maths/vec4/create.d.ts +2 -4
  793. package/src/maths/vec4/create.js +2 -5
  794. package/src/maths/vec4/create.test.js +3 -3
  795. package/src/maths/vec4/dot.d.ts +2 -4
  796. package/src/maths/vec4/dot.js +4 -6
  797. package/src/maths/vec4/dot.test.js +2 -2
  798. package/src/maths/vec4/equals.d.ts +2 -4
  799. package/src/maths/vec4/equals.js +3 -5
  800. package/src/maths/vec4/equals.test.js +3 -2
  801. package/src/maths/vec4/fromScalar.d.ts +2 -4
  802. package/src/maths/vec4/fromScalar.js +3 -5
  803. package/src/maths/vec4/fromScalar.test.js +4 -3
  804. package/src/maths/vec4/fromValues.d.ts +2 -4
  805. package/src/maths/vec4/fromValues.js +7 -9
  806. package/src/maths/vec4/fromValues.test.js +4 -3
  807. package/src/maths/vec4/index.d.ts +10 -11
  808. package/src/maths/vec4/index.js +9 -11
  809. package/src/maths/vec4/toString.d.ts +2 -4
  810. package/src/maths/vec4/toString.js +3 -5
  811. package/src/maths/vec4/transform.d.ts +3 -5
  812. package/src/maths/vec4/transform.js +6 -7
  813. package/src/maths/vec4/transform.test.js +4 -3
  814. package/src/maths/vec4/type.d.ts +1 -3
  815. package/src/measurements/calculateEpsilonFromBounds.js +2 -4
  816. package/src/measurements/calculateEpsilonFromBounds.test.js +4 -3
  817. package/src/measurements/index.d.ts +13 -14
  818. package/src/measurements/index.js +13 -15
  819. package/src/measurements/measureAggregateArea.d.ts +3 -5
  820. package/src/measurements/measureAggregateArea.js +4 -7
  821. package/src/measurements/measureAggregateArea.test.js +4 -3
  822. package/src/measurements/measureAggregateBoundingBox.d.ts +4 -6
  823. package/src/measurements/measureAggregateBoundingBox.js +6 -9
  824. package/src/measurements/measureAggregateBoundingBox.test.js +4 -4
  825. package/src/measurements/measureAggregateEpsilon.d.ts +3 -5
  826. package/src/measurements/measureAggregateEpsilon.js +10 -9
  827. package/src/measurements/measureAggregateEpsilon.test.js +6 -4
  828. package/src/measurements/measureAggregateVolume.d.ts +3 -5
  829. package/src/measurements/measureAggregateVolume.js +4 -7
  830. package/src/measurements/measureAggregateVolume.test.js +4 -3
  831. package/src/measurements/measureArea.d.ts +5 -7
  832. package/src/measurements/measureArea.js +37 -20
  833. package/src/measurements/measureArea.test.js +14 -4
  834. package/src/measurements/measureBoundingBox.d.ts +6 -8
  835. package/src/measurements/measureBoundingBox.js +81 -82
  836. package/src/measurements/measureBoundingBox.test.js +26 -5
  837. package/src/measurements/measureBoundingSphere.d.ts +4 -7
  838. package/src/measurements/measureBoundingSphere.js +83 -64
  839. package/src/measurements/measureBoundingSphere.test.js +7 -4
  840. package/src/measurements/measureCenter.d.ts +4 -6
  841. package/src/measurements/measureCenter.js +4 -6
  842. package/src/measurements/measureCenter.test.js +7 -4
  843. package/src/measurements/measureCenterOfMass.d.ts +4 -6
  844. package/src/measurements/measureCenterOfMass.js +6 -8
  845. package/src/measurements/measureCenterOfMass.test.js +7 -4
  846. package/src/measurements/measureDimensions.d.ts +4 -6
  847. package/src/measurements/measureDimensions.js +3 -5
  848. package/src/measurements/measureDimensions.test.js +7 -4
  849. package/src/measurements/measureEpsilon.d.ts +5 -7
  850. package/src/measurements/measureEpsilon.js +14 -30
  851. package/src/measurements/measureEpsilon.test.js +7 -4
  852. package/src/measurements/measureVolume.d.ts +5 -7
  853. package/src/measurements/measureVolume.js +7 -31
  854. package/src/measurements/measureVolume.test.js +7 -4
  855. package/src/measurements/types.d.ts +2 -1
  856. package/src/operations/booleans/index.d.ts +4 -6
  857. package/src/operations/booleans/index.js +5 -7
  858. package/src/operations/booleans/intersect.d.ts +5 -6
  859. package/src/operations/booleans/intersect.js +13 -15
  860. package/src/operations/booleans/intersect.test.js +24 -0
  861. package/src/operations/booleans/intersectGeom2.js +10 -20
  862. package/src/operations/booleans/intersectGeom2.test.js +47 -17
  863. package/src/operations/booleans/intersectGeom3.js +9 -15
  864. package/src/operations/booleans/intersectGeom3.test.js +17 -17
  865. package/src/operations/booleans/intersectGeom3Sub.js +10 -11
  866. package/src/operations/booleans/martinez/compareEvents.js +45 -0
  867. package/src/operations/booleans/martinez/compareSegments.js +51 -0
  868. package/src/operations/booleans/martinez/computeFields.js +109 -0
  869. package/src/operations/booleans/martinez/connectEdges.js +189 -0
  870. package/src/operations/booleans/martinez/contour.js +12 -0
  871. package/src/operations/booleans/martinez/divideSegment.js +32 -0
  872. package/src/operations/booleans/martinez/edgeType.js +4 -0
  873. package/src/operations/booleans/martinez/fillQueue.js +80 -0
  874. package/src/operations/booleans/martinez/index.js +154 -0
  875. package/src/operations/booleans/martinez/operation.js +4 -0
  876. package/src/operations/booleans/martinez/possibleIntersection.js +113 -0
  877. package/src/operations/booleans/martinez/segmentIntersection.js +132 -0
  878. package/src/operations/booleans/martinez/signedArea.js +16 -0
  879. package/src/operations/booleans/martinez/splaytree.js +599 -0
  880. package/src/operations/booleans/martinez/subdivideSegments.js +82 -0
  881. package/src/operations/booleans/martinez/sweepEvent.js +132 -0
  882. package/src/operations/booleans/martinez/tinyqueue.js +76 -0
  883. package/src/operations/booleans/mayOverlap.js +5 -7
  884. package/src/operations/booleans/mayOverlap.test.js +6 -6
  885. package/src/operations/booleans/scission.d.ts +4 -5
  886. package/src/operations/booleans/scission.js +5 -13
  887. package/src/operations/booleans/scission.test.js +10 -4
  888. package/src/operations/booleans/scissionGeom3.js +15 -16
  889. package/src/operations/booleans/subtract.d.ts +5 -6
  890. package/src/operations/booleans/subtract.js +13 -15
  891. package/src/operations/booleans/subtract.test.js +24 -0
  892. package/src/operations/booleans/subtractGeom2.js +10 -20
  893. package/src/operations/booleans/subtractGeom2.test.js +46 -17
  894. package/src/operations/booleans/subtractGeom3.js +9 -15
  895. package/src/operations/booleans/subtractGeom3.test.js +16 -6
  896. package/src/operations/booleans/subtractGeom3Sub.js +10 -11
  897. package/src/operations/booleans/trees/Node.js +45 -48
  898. package/src/operations/booleans/trees/PolygonTreeNode.js +35 -37
  899. package/src/operations/booleans/trees/Tree.js +9 -12
  900. package/src/operations/booleans/trees/index.js +1 -3
  901. package/src/operations/booleans/trees/splitLineSegmentByPlane.js +2 -4
  902. package/src/operations/booleans/trees/splitPolygonByPlane.js +55 -57
  903. package/src/operations/booleans/union.d.ts +5 -6
  904. package/src/operations/booleans/union.js +13 -15
  905. package/src/operations/booleans/union.test.js +24 -0
  906. package/src/operations/booleans/unionGeom2.js +10 -20
  907. package/src/operations/booleans/unionGeom2.test.js +153 -84
  908. package/src/operations/booleans/unionGeom3.js +9 -15
  909. package/src/operations/booleans/unionGeom3.test.js +22 -9
  910. package/src/operations/booleans/unionGeom3Sub.js +10 -12
  911. package/src/operations/extrusions/extrudeFromSlices.d.ts +3 -6
  912. package/src/operations/extrusions/extrudeFromSlices.js +19 -31
  913. package/src/operations/extrusions/extrudeFromSlices.test.js +54 -48
  914. package/src/operations/extrusions/extrudeHelical.d.ts +2 -4
  915. package/src/operations/extrusions/extrudeHelical.js +19 -26
  916. package/src/operations/extrusions/extrudeHelical.test.js +6 -6
  917. package/src/operations/extrusions/extrudeLinear.d.ts +4 -6
  918. package/src/operations/extrusions/extrudeLinear.js +10 -16
  919. package/src/operations/extrusions/extrudeLinear.test.js +90 -67
  920. package/src/operations/extrusions/extrudeLinearGeom2.js +18 -23
  921. package/src/operations/extrusions/extrudeLinearPath2.js +11 -12
  922. package/src/operations/extrusions/extrudeRotate.d.ts +2 -4
  923. package/src/operations/extrusions/extrudeRotate.js +28 -32
  924. package/src/operations/extrusions/extrudeRotate.test.js +70 -34
  925. package/src/operations/extrusions/extrudeWalls.js +11 -14
  926. package/src/operations/extrusions/extrudeWalls.test.js +24 -48
  927. package/src/operations/extrusions/index.d.ts +5 -9
  928. package/src/operations/extrusions/index.js +6 -10
  929. package/src/operations/extrusions/project.d.ts +6 -8
  930. package/src/operations/extrusions/project.js +35 -32
  931. package/src/operations/extrusions/project.test.js +116 -83
  932. package/src/operations/hulls/hull.d.ts +5 -7
  933. package/src/operations/hulls/hull.js +14 -15
  934. package/src/operations/hulls/hull.test.js +101 -58
  935. package/src/operations/hulls/hullChain.d.ts +5 -7
  936. package/src/operations/hulls/hullChain.js +15 -10
  937. package/src/operations/hulls/hullChain.test.js +27 -8
  938. package/src/operations/hulls/hullGeom2.js +7 -13
  939. package/src/operations/hulls/hullGeom3.js +6 -12
  940. package/src/operations/hulls/hullPath2.js +6 -12
  941. package/src/operations/hulls/hullPath2.test.js +4 -4
  942. package/src/operations/hulls/hullPoints2.d.ts +2 -4
  943. package/src/operations/hulls/hullPoints2.js +3 -5
  944. package/src/operations/hulls/hullPoints2.test.js +2 -2
  945. package/src/operations/hulls/hullPoints3.d.ts +3 -5
  946. package/src/operations/hulls/hullPoints3.js +4 -6
  947. package/src/operations/hulls/index.d.ts +4 -6
  948. package/src/operations/hulls/index.js +5 -7
  949. package/src/operations/hulls/quickhull/Face.js +7 -21
  950. package/src/operations/hulls/quickhull/HalfEdge.js +2 -5
  951. package/src/operations/hulls/quickhull/QuickHull.js +14 -16
  952. package/src/operations/hulls/quickhull/Vertex.js +1 -3
  953. package/src/operations/hulls/quickhull/VertexList.js +1 -4
  954. package/src/operations/hulls/quickhull/index.js +2 -4
  955. package/src/operations/hulls/quickhull/point-line-distance.js +2 -6
  956. package/src/operations/hulls/toUniquePoints.js +4 -6
  957. package/src/operations/modifiers/generalize.d.ts +2 -2
  958. package/src/operations/modifiers/generalize.js +15 -21
  959. package/src/operations/modifiers/generalize.test.js +6 -6
  960. package/src/operations/modifiers/index.d.ts +3 -3
  961. package/src/operations/modifiers/index.js +4 -6
  962. package/src/operations/modifiers/insertTjunctions.js +164 -165
  963. package/src/operations/modifiers/insertTjunctions.test.js +5 -5
  964. package/src/operations/modifiers/mergePolygons.js +35 -36
  965. package/src/operations/modifiers/reTesselateCoplanarPolygons.js +235 -236
  966. package/src/operations/modifiers/reTesselateCoplanarPolygons.test.js +4 -4
  967. package/src/operations/modifiers/retessellate.d.ts +2 -2
  968. package/src/operations/modifiers/retessellate.js +7 -7
  969. package/src/operations/modifiers/retessellate.test.js +4 -4
  970. package/src/operations/modifiers/snap.d.ts +2 -2
  971. package/src/operations/modifiers/snap.js +30 -23
  972. package/src/operations/modifiers/snap.test.js +32 -10
  973. package/src/operations/modifiers/snapPolygons.js +14 -16
  974. package/src/operations/modifiers/snapPolygons.test.js +3 -3
  975. package/src/operations/modifiers/triangulatePolygons.js +5 -6
  976. package/src/operations/offsets/extrudePolygon.js +32 -0
  977. package/src/operations/offsets/index.d.ts +2 -0
  978. package/src/operations/offsets/index.js +9 -0
  979. package/src/operations/offsets/offset.d.ts +12 -0
  980. package/src/operations/offsets/offset.js +32 -0
  981. package/src/operations/offsets/offsetFromPoints.d.ts +10 -0
  982. package/src/operations/{expansions → offsets}/offsetFromPoints.js +29 -28
  983. package/src/operations/offsets/offsetFromPoints.test.js +316 -0
  984. package/src/operations/offsets/offsetGeom2.js +55 -0
  985. package/src/operations/offsets/offsetGeom2.test.js +269 -0
  986. package/src/operations/offsets/offsetGeom3.js +31 -0
  987. package/src/operations/{expansions/expandGeom3.test.js → offsets/offsetGeom3.test.js} +71 -5
  988. package/src/operations/{expansions/expandPath2.js → offsets/offsetPath2.js} +27 -33
  989. package/src/operations/offsets/offsetPath2.test.js +103 -0
  990. package/src/operations/{expansions/expandShell.js → offsets/offsetShell.js} +54 -56
  991. package/src/operations/transforms/align.d.ts +5 -7
  992. package/src/operations/transforms/align.js +16 -15
  993. package/src/operations/transforms/align.test.js +9 -8
  994. package/src/operations/transforms/center.d.ts +3 -3
  995. package/src/operations/transforms/center.js +12 -22
  996. package/src/operations/transforms/center.test.js +34 -6
  997. package/src/operations/transforms/index.d.ts +7 -9
  998. package/src/operations/transforms/index.js +8 -29
  999. package/src/operations/transforms/mirror.d.ts +3 -3
  1000. package/src/operations/transforms/mirror.js +12 -22
  1001. package/src/operations/transforms/mirror.test.js +16 -10
  1002. package/src/operations/transforms/rotate.d.ts +6 -6
  1003. package/src/operations/transforms/rotate.js +14 -24
  1004. package/src/operations/transforms/rotate.test.js +18 -7
  1005. package/src/operations/transforms/scale.d.ts +6 -6
  1006. package/src/operations/transforms/scale.js +13 -23
  1007. package/src/operations/transforms/scale.test.js +21 -6
  1008. package/src/operations/transforms/transform.d.ts +3 -3
  1009. package/src/operations/transforms/transform.js +8 -13
  1010. package/src/operations/transforms/transform.test.js +7 -7
  1011. package/src/operations/transforms/translate.d.ts +3 -5
  1012. package/src/operations/transforms/translate.js +14 -24
  1013. package/src/operations/transforms/translate.test.js +18 -6
  1014. package/src/primitives/arc.d.ts +3 -5
  1015. package/src/primitives/arc.js +26 -28
  1016. package/src/primitives/arc.test.js +17 -16
  1017. package/src/primitives/circle.d.ts +3 -5
  1018. package/src/primitives/circle.js +10 -12
  1019. package/src/primitives/circle.test.js +23 -12
  1020. package/src/primitives/commonChecks.js +3 -9
  1021. package/src/primitives/cube.d.ts +3 -5
  1022. package/src/primitives/cube.js +6 -9
  1023. package/src/primitives/cube.test.js +14 -4
  1024. package/src/primitives/cuboid.d.ts +3 -5
  1025. package/src/primitives/cuboid.js +8 -10
  1026. package/src/primitives/cuboid.test.js +14 -4
  1027. package/src/primitives/cylinder.d.ts +3 -5
  1028. package/src/primitives/cylinder.js +11 -15
  1029. package/src/primitives/cylinder.test.js +16 -4
  1030. package/src/primitives/cylinderElliptic.d.ts +3 -5
  1031. package/src/primitives/cylinderElliptic.js +33 -35
  1032. package/src/primitives/cylinderElliptic.test.js +26 -5
  1033. package/src/primitives/ellipse.d.ts +3 -5
  1034. package/src/primitives/ellipse.js +19 -21
  1035. package/src/primitives/ellipse.test.js +23 -12
  1036. package/src/primitives/ellipsoid.d.ts +3 -5
  1037. package/src/primitives/ellipsoid.js +48 -51
  1038. package/src/primitives/ellipsoid.test.js +16 -4
  1039. package/src/primitives/geodesicSphere.d.ts +2 -4
  1040. package/src/primitives/geodesicSphere.js +14 -17
  1041. package/src/primitives/geodesicSphere.test.js +12 -4
  1042. package/src/primitives/index.d.ts +21 -23
  1043. package/src/primitives/index.js +22 -24
  1044. package/src/primitives/line.d.ts +3 -5
  1045. package/src/primitives/line.js +3 -5
  1046. package/src/primitives/line.test.js +5 -5
  1047. package/src/primitives/polygon.d.ts +3 -5
  1048. package/src/primitives/polygon.js +17 -22
  1049. package/src/primitives/polygon.test.js +14 -9
  1050. package/src/primitives/polyhedron.d.ts +4 -6
  1051. package/src/primitives/polyhedron.js +15 -17
  1052. package/src/primitives/polyhedron.test.js +12 -6
  1053. package/src/primitives/rectangle.d.ts +3 -5
  1054. package/src/primitives/rectangle.js +10 -12
  1055. package/src/primitives/rectangle.test.js +13 -7
  1056. package/src/primitives/roundedCuboid.d.ts +3 -5
  1057. package/src/primitives/roundedCuboid.js +57 -58
  1058. package/src/primitives/roundedCuboid.test.js +24 -8
  1059. package/src/primitives/roundedCylinder.d.ts +3 -5
  1060. package/src/primitives/roundedCylinder.js +73 -76
  1061. package/src/primitives/roundedCylinder.test.js +24 -4
  1062. package/src/primitives/roundedRectangle.d.ts +3 -5
  1063. package/src/primitives/roundedRectangle.js +16 -16
  1064. package/src/primitives/roundedRectangle.test.js +19 -10
  1065. package/src/primitives/sphere.d.ts +3 -5
  1066. package/src/primitives/sphere.js +8 -11
  1067. package/src/primitives/sphere.test.js +16 -4
  1068. package/src/primitives/square.d.ts +3 -5
  1069. package/src/primitives/square.js +6 -9
  1070. package/src/primitives/square.test.js +14 -8
  1071. package/src/primitives/star.d.ts +3 -5
  1072. package/src/primitives/star.js +16 -18
  1073. package/src/primitives/star.test.js +18 -10
  1074. package/src/primitives/torus.d.ts +2 -4
  1075. package/src/primitives/torus.js +16 -18
  1076. package/src/primitives/torus.test.js +18 -6
  1077. package/src/primitives/triangle.d.ts +2 -4
  1078. package/src/primitives/triangle.js +9 -11
  1079. package/src/primitives/triangle.test.js +23 -13
  1080. package/src/text/fonts/single-line/hershey/simplex.js +1 -1
  1081. package/src/text/index.d.ts +2 -4
  1082. package/src/text/index.js +3 -5
  1083. package/src/text/vectorChar.d.ts +2 -8
  1084. package/src/text/vectorChar.js +51 -36
  1085. package/src/text/vectorChar.test.js +63 -0
  1086. package/src/text/vectorText.d.ts +2 -8
  1087. package/src/text/vectorText.js +100 -69
  1088. package/src/text/vectorText.test.js +267 -0
  1089. package/src/utils/areAllShapesTheSameType.d.ts +2 -4
  1090. package/src/utils/areAllShapesTheSameType.js +4 -6
  1091. package/src/utils/areAllShapesTheSameType.test.js +3 -3
  1092. package/src/utils/coalesce.d.ts +3 -0
  1093. package/src/utils/coalesce.js +20 -0
  1094. package/src/utils/degToRad.d.ts +1 -3
  1095. package/src/utils/degToRad.js +3 -5
  1096. package/src/utils/degToRad.test.js +3 -3
  1097. package/src/utils/flatten.d.ts +2 -4
  1098. package/src/utils/flatten.js +1 -3
  1099. package/src/utils/fnNumberSort.d.ts +1 -3
  1100. package/src/utils/fnNumberSort.js +1 -3
  1101. package/src/utils/index.d.ts +4 -9
  1102. package/src/utils/index.js +5 -10
  1103. package/src/utils/insertSorted.d.ts +1 -3
  1104. package/src/utils/insertSorted.js +11 -13
  1105. package/src/utils/padArrayToLength.d.ts +1 -3
  1106. package/src/utils/padArrayToLength.js +2 -4
  1107. package/src/utils/padArrayToLength.test.js +2 -2
  1108. package/src/utils/radToDeg.d.ts +1 -3
  1109. package/src/utils/radToDeg.js +3 -5
  1110. package/src/utils/radToDeg.test.js +3 -3
  1111. package/src/utils/radiusToSegments.d.ts +1 -3
  1112. package/src/utils/radiusToSegments.js +6 -8
  1113. package/src/utils/radiusToSegments.test.js +3 -3
  1114. package/src/utils/recursiveArray.d.ts +1 -3
  1115. package/test/helpers/asserts.js +9 -16
  1116. package/test/helpers/comparePoints.js +2 -4
  1117. package/test/helpers/comparePolygonLists.js +2 -4
  1118. package/test/helpers/comparePolygons.js +4 -6
  1119. package/test/helpers/comparePolygonsAsPoints.js +4 -6
  1120. package/test/helpers/compareVectors.js +5 -6
  1121. package/test/helpers/index.js +6 -8
  1122. package/test/helpers/nearlyEqual.js +1 -3
  1123. package/tsconfig.json +17 -0
  1124. package/src/geometries/geom2/fromPoints.d.ts +0 -6
  1125. package/src/geometries/geom2/fromPoints.js +0 -35
  1126. package/src/geometries/geom2/fromPoints.test.js +0 -22
  1127. package/src/geometries/poly2/flip.d.ts +0 -5
  1128. package/src/geometries/poly2/flip.js +0 -15
  1129. package/src/geometries/poly3/fromPoints.d.ts +0 -6
  1130. package/src/geometries/poly3/fromPoints.js +0 -25
  1131. package/src/geometries/poly3/fromPoints.test.js +0 -15
  1132. package/src/geometries/poly3/fromPointsAndPlane.d.ts +0 -7
  1133. package/src/geometries/poly3/toPoints.d.ts +0 -6
  1134. package/src/geometries/poly3/toPoints.js +0 -10
  1135. package/src/maths/OrthoNormalBasis.js +0 -59
  1136. package/src/maths/mat4/leftMultiplyVec2.d.ts +0 -6
  1137. package/src/maths/mat4/leftMultiplyVec2.js +0 -28
  1138. package/src/maths/mat4/leftMultiplyVec3.d.ts +0 -6
  1139. package/src/maths/mat4/leftMultiplyVec3.js +0 -29
  1140. package/src/maths/mat4/mirror.d.ts +0 -6
  1141. package/src/maths/mat4/mirror.js +0 -34
  1142. package/src/maths/mat4/rightMultiplyVec2.d.ts +0 -6
  1143. package/src/maths/mat4/rightMultiplyVec2.js +0 -29
  1144. package/src/maths/mat4/rightMultiplyVec3.d.ts +0 -6
  1145. package/src/maths/mat4/rightMultiplyVec3.js +0 -30
  1146. package/src/maths/plane/fromNoisyPoints.d.ts +0 -6
  1147. package/src/maths/plane/fromNoisyPoints.js +0 -106
  1148. package/src/maths/plane/fromNoisyPoints.test.js +0 -24
  1149. package/src/maths/utils/index.d.ts +0 -8
  1150. package/src/maths/utils/index.js +0 -15
  1151. package/src/operations/booleans/fromFakePolygons.js +0 -52
  1152. package/src/operations/booleans/to3DWalls.js +0 -36
  1153. package/src/operations/expansions/expand.d.ts +0 -18
  1154. package/src/operations/expansions/expand.js +0 -42
  1155. package/src/operations/expansions/expand.test.js +0 -188
  1156. package/src/operations/expansions/expandGeom2.js +0 -43
  1157. package/src/operations/expansions/expandGeom3.js +0 -36
  1158. package/src/operations/expansions/extrudePolygon.js +0 -34
  1159. package/src/operations/expansions/index.d.ts +0 -4
  1160. package/src/operations/expansions/index.js +0 -11
  1161. package/src/operations/expansions/offset.d.ts +0 -15
  1162. package/src/operations/expansions/offset.js +0 -36
  1163. package/src/operations/expansions/offset.test.js +0 -503
  1164. package/src/operations/expansions/offsetGeom2.js +0 -47
  1165. package/src/operations/expansions/offsetPath2.js +0 -32
  1166. package/src/operations/extrusions/earcut/assignHoles.test.js +0 -74
  1167. package/src/operations/extrusions/extrudeRectangular.d.ts +0 -17
  1168. package/src/operations/extrusions/extrudeRectangular.js +0 -45
  1169. package/src/operations/extrusions/extrudeRectangular.test.js +0 -72
  1170. package/src/operations/extrusions/extrudeRectangularGeom2.js +0 -46
  1171. package/src/operations/extrusions/extrudeRectangularPath2.js +0 -33
  1172. package/src/operations/extrusions/slice/calculatePlane.d.ts +0 -7
  1173. package/src/operations/extrusions/slice/calculatePlane.js +0 -41
  1174. package/src/operations/extrusions/slice/calculatePlane.test.js +0 -35
  1175. package/src/operations/extrusions/slice/clone.d.ts +0 -6
  1176. package/src/operations/extrusions/slice/clone.js +0 -28
  1177. package/src/operations/extrusions/slice/clone.test.js +0 -34
  1178. package/src/operations/extrusions/slice/create.d.ts +0 -5
  1179. package/src/operations/extrusions/slice/create.js +0 -20
  1180. package/src/operations/extrusions/slice/equals.d.ts +0 -5
  1181. package/src/operations/extrusions/slice/equals.js +0 -27
  1182. package/src/operations/extrusions/slice/equals.test.js +0 -17
  1183. package/src/operations/extrusions/slice/fromPoints.d.ts +0 -9
  1184. package/src/operations/extrusions/slice/fromPoints.js +0 -35
  1185. package/src/operations/extrusions/slice/fromPoints.test.js +0 -15
  1186. package/src/operations/extrusions/slice/fromSides.d.ts +0 -7
  1187. package/src/operations/extrusions/slice/fromSides.js +0 -27
  1188. package/src/operations/extrusions/slice/fromSides.test.js +0 -15
  1189. package/src/operations/extrusions/slice/index.d.ts +0 -16
  1190. package/src/operations/extrusions/slice/index.js +0 -19
  1191. package/src/operations/extrusions/slice/isA.d.ts +0 -5
  1192. package/src/operations/extrusions/slice/isA.js +0 -18
  1193. package/src/operations/extrusions/slice/repair.js +0 -62
  1194. package/src/operations/extrusions/slice/reverse.d.ts +0 -6
  1195. package/src/operations/extrusions/slice/reverse.js +0 -26
  1196. package/src/operations/extrusions/slice/toEdges.d.ts +0 -5
  1197. package/src/operations/extrusions/slice/toEdges.js +0 -13
  1198. package/src/operations/extrusions/slice/toPolygons.d.ts +0 -7
  1199. package/src/operations/extrusions/slice/toString.d.ts +0 -5
  1200. package/src/operations/extrusions/slice/toString.js +0 -15
  1201. package/src/operations/extrusions/slice/transform.d.ts +0 -7
  1202. package/src/operations/extrusions/slice/transform.js +0 -21
  1203. package/src/operations/extrusions/slice/type.d.ts +0 -7
  1204. package/src/operations/hulls/quickhull/get-plane-normal.js +0 -20
  1205. package/src/text/text.test.js +0 -187
  1206. package/src/text/vectorParams.js +0 -26
package/CHANGELOG.md CHANGED
@@ -3,208 +3,159 @@
3
3
  All notable changes to this project will be documented in this file.
4
4
  See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
5
5
 
6
- ## [2.12.5](https://github.com/jscad/OpenJSCAD.org/compare/@jscad/modeling@2.12.4...@jscad/modeling@2.12.5) (2024-12-29)
7
-
8
- **Note:** Version bump only for package @jscad/modeling
9
-
10
-
11
-
12
-
13
-
14
- ## [2.12.4](https://github.com/jscad/OpenJSCAD.org/compare/@jscad/modeling@2.12.3...@jscad/modeling@2.12.4) (2024-11-10)
15
-
16
- **Note:** Version bump only for package @jscad/modeling
17
-
18
-
19
-
20
-
21
-
22
- ## [2.12.3](https://github.com/jscad/OpenJSCAD.org/compare/@jscad/modeling@2.12.2...@jscad/modeling@2.12.3) (2024-10-06)
23
-
6
+ ## [3.0.1-alpha.0](https://github.com/jscad/OpenJSCAD.org/compare/@jscad/modeling@2.10.0...@jscad/modeling@3.0.1-alpha.0) (2025-01-03)
24
7
 
25
8
  ### Bug Fixes
26
9
 
27
- * **modeling:** added optional plane to poly3 TS definition ([2a3337a](https://github.com/jscad/OpenJSCAD.org/commit/2a3337a4b6d06d9072cb7f193eb0ef8de446c8c0))
28
- * **modeling:** corrected hull of single unconvex solid ([b3901f2](https://github.com/jscad/OpenJSCAD.org/commit/b3901f2b61a64a82a687f6f6062f15a20d35611b))
29
- * **modeling:** corrected TS definition of scission ([ad3d37d](https://github.com/jscad/OpenJSCAD.org/commit/ad3d37d32c308e99141d9ff0d8965e4d1d166123))
30
- * **modeling:** expose hullPoints2 and hullPoints3 ([01ceae8](https://github.com/jscad/OpenJSCAD.org/commit/01ceae89570dcaf40f9676aadd4ced515e41c291))
31
-
32
-
33
-
34
-
35
-
36
- ## [2.12.2](https://github.com/jscad/OpenJSCAD.org/compare/@jscad/modeling@2.12.1...@jscad/modeling@2.12.2) (2024-06-02)
37
-
38
-
39
- ### Bug Fixes
40
-
41
- * **modeling:** added geom3.fromPointsConvex() ([e1af657](https://github.com/jscad/OpenJSCAD.org/commit/e1af6579498e9bce118d66b47f6cffbb875e9639))
42
- * **modeling:** added TS definitions for mat4.isIdentity() ([0d02c83](https://github.com/jscad/OpenJSCAD.org/commit/0d02c8343127270380f0474815f4f24fe8a04763))
43
- * **modeling:** create scission.d.ts and update index.d.ts ([7f02f7d](https://github.com/jscad/OpenJSCAD.org/commit/7f02f7d9474358d68bee9803d53a7c422e6e22dd))
44
- * **modeling:** created TS definitions for splitPolygonByPlane ([0998e7e](https://github.com/jscad/OpenJSCAD.org/commit/0998e7e933e1583331e20086fb05795bd08df5a6))
45
- * **typo:** fix typo in rounded error messages ([f6d5286](https://github.com/jscad/OpenJSCAD.org/commit/f6d52860f19587d4fb6d006308d7ad43bf213e0f))
46
-
47
-
48
-
10
+ * **all:** various fixes to pass tests ([5cb1d64](https://github.com/jscad/OpenJSCAD.org/commit/5cb1d648d3af1a4448d2c9a6a6acc701d38f36d3))
11
+ * **cli:** rework logic for generating blobs, both singular and multiple as parts ([f88669b](https://github.com/jscad/OpenJSCAD.org/commit/f88669b286d9564165f5c33944703fce730dfc1f))
12
+ * **modeling:** added geom3.fromPointsConvex() ([e23a5ab](https://github.com/jscad/OpenJSCAD.org/commit/e23a5ab55bb78d5e94b3562529fd100a5f163cf9))
13
+ * **modeling:** added new TS definitions for mat4, and adjusted doc strings ([9fa56b7](https://github.com/jscad/OpenJSCAD.org/commit/9fa56b7b72fc40d49794ee153fd9d29b2fede785))
14
+ * **modeling:** added orientation option to polygon ([cfa0e91](https://github.com/jscad/OpenJSCAD.org/commit/cfa0e9124c0df70d57502e4be7b29af31e03c2b9))
15
+ * **modeling:** corrected checks of parameters to booleans ([29788a1](https://github.com/jscad/OpenJSCAD.org/commit/29788a14cefd142d6c0544871a606ea742ad0c39))
16
+ * **modeling:** corrected geom2 mirroring transform ([8a1f04b](https://github.com/jscad/OpenJSCAD.org/commit/8a1f04b18bc866781ed08c2f38de3a495ea9581c))
17
+ * **modeling:** corrected parameter names to follow standards ([4c35d41](https://github.com/jscad/OpenJSCAD.org/commit/4c35d41289ff4633a7e1a8b58e87e00fd565ce14))
18
+ * **modeling:** create scission.d.ts and update index.d.ts ([5917d67](https://github.com/jscad/OpenJSCAD.org/commit/5917d6759889e9394a6cf4fd42065b0ff07750b1))
19
+ * **modeling:** created TS definitions for splitPolygonByPlane ([f9a3715](https://github.com/jscad/OpenJSCAD.org/commit/f9a3715fc8b6528c1f1dde1599897cc30e2fe758))
20
+ * **modeling:** fix ts definitions and ts hints in comments ([6855c73](https://github.com/jscad/OpenJSCAD.org/commit/6855c73c7835ef9e255355ff56a7b38fdd26d0f8))
21
+ * **modeling:** small fixes to comments and tests ([d59217e](https://github.com/jscad/OpenJSCAD.org/commit/d59217eb550093d650e9df8d9e178d3b796ccaba))
22
+ * **modeling:** use modern typescript imports ([0a0d2e8](https://github.com/jscad/OpenJSCAD.org/commit/0a0d2e8e4ac5db50cf9a6f05a33dba9bdd68c98a))
23
+ * **typo:** fix typo in rounded error messages ([8870b43](https://github.com/jscad/OpenJSCAD.org/commit/8870b434c7508074dcfacd5a2c616518bc35d3b2))
49
24
 
25
+ ### Features
50
26
 
51
- ## [2.12.1](https://github.com/jscad/OpenJSCAD.org/compare/@jscad/modeling@2.12.0...@jscad/modeling@2.12.1) (2024-02-18)
27
+ * **modeling:** added Martinez library for 2D booleans, refactored 2D booleans ([e035291](https://github.com/jscad/OpenJSCAD.org/commit/e035291fb4577d1a4c9f98f0c7b2de11711caf43))
28
+ * **modeling:** added validate to slice, as well as measurements ([5cfb4d2](https://github.com/jscad/OpenJSCAD.org/commit/5cfb4d21edf1ac5b52ece776e6dd3760d3e28d87))
29
+ * **modeling:** corrected vectorChar and vectorText options to align with the common API ([c3a950f](https://github.com/jscad/OpenJSCAD.org/commit/c3a950f2615d938243fde55d323b94dd0fd9f06c))
30
+ * **modeling:** enhanced poly2 into a complete geometry ([7180c35](https://github.com/jscad/OpenJSCAD.org/commit/7180c35f95b8a36f78117a86e4ae26f5ed6bab12))
31
+ * **modeling:** preserve color for offset and extrude ([48606fc](https://github.com/jscad/OpenJSCAD.org/commit/48606fc32fff26dd8bde6ec03ce10b3c7086ee37))
32
+ * **modeling:** remove unused mat4 functions ([3602faf](https://github.com/jscad/OpenJSCAD.org/commit/3602fafea32506e35f75b74f94ecd9d762116da6))
33
+ * **modeling:** removed extrudeRectangular ([6c0cb4a](https://github.com/jscad/OpenJSCAD.org/commit/6c0cb4aae6f03a38f6f77f82db2d8e5b1166d8d8))
34
+ * **modeling:** rename expansions to offsets, and unify expand into offset ([f2b3e31](https://github.com/jscad/OpenJSCAD.org/commit/f2b3e3162fedbd7c438bb2925abeac73342e62c6))
35
+ * **modeling:** renamed poly3 toVertices and fromVerticesAndPlane ([58621b9](https://github.com/jscad/OpenJSCAD.org/commit/58621b9d23d8e0905eff23faf8e9dddb2c4023fb))
36
+ * **modeling:** rework orthonormal formula ([008a462](https://github.com/jscad/OpenJSCAD.org/commit/008a4623b73ea95112c33cd9b48831055961bb96))
37
+ * **modeling:** reworked exports to expose a flattened API ([8235238](https://github.com/jscad/OpenJSCAD.org/commit/8235238ad63d063f1e501478cae1208deb130a9c))
38
+ * **modeling:** reworked vectorChar and vectorText to return segments as path2 objects ([d388fab](https://github.com/jscad/OpenJSCAD.org/commit/d388fab1c6341265f01db2b24360186de07f5c58))
39
+ * **modeling:** support nested array structures in the API ([b8d8fb8](https://github.com/jscad/OpenJSCAD.org/commit/b8d8fb856f76985f9954eb70ea759dc6c07af07e))
52
40
 
41
+ # [3.0.0-alpha.0](https://github.com/jscad/OpenJSCAD.org/compare/@jscad/modeling@2.10.0...@jscad/modeling@3.0.0-alpha.0) (2023-10-09)
53
42
 
54
43
  ### Bug Fixes
55
44
 
56
- * **modeling:** added fromNoisyPoints() to plane ([1d9efb5](https://github.com/jscad/OpenJSCAD.org/commit/1d9efb506503cde581421f11a6eea9d33f89e4fc))
57
- * **modeling:** added orientation option to polygon ([6c7be85](https://github.com/jscad/OpenJSCAD.org/commit/6c7be85d7e208a2b100c3bce10380ada8f9d7e32))
58
- * **modeling:** corrected geom2 mirroring transform ([8b0306e](https://github.com/jscad/OpenJSCAD.org/commit/8b0306e06cc42d1850c137c7221bcc122851f53d))
59
-
60
-
45
+ * **cli:** rework logic for generating blobs, both singular and multiple as parts ([f88669b](https://github.com/jscad/OpenJSCAD.org/commit/f88669b286d9564165f5c33944703fce730dfc1f))
46
+ * **modeling:** added new TS definitions for mat4, and adjusted doc strings ([9fa56b7](https://github.com/jscad/OpenJSCAD.org/commit/9fa56b7b72fc40d49794ee153fd9d29b2fede785))
47
+ * **modeling:** corrected checks of parameters to booleans ([29788a1](https://github.com/jscad/OpenJSCAD.org/commit/29788a14cefd142d6c0544871a606ea742ad0c39))
48
+ * **modeling:** corrected parameter names to follow standards ([4c35d41](https://github.com/jscad/OpenJSCAD.org/commit/4c35d41289ff4633a7e1a8b58e87e00fd565ce14))
49
+ * **modeling:** fix ts definitions and ts hints in comments ([6855c73](https://github.com/jscad/OpenJSCAD.org/commit/6855c73c7835ef9e255355ff56a7b38fdd26d0f8))
50
+ * **modeling:** small fixes to comments and tests ([d59217e](https://github.com/jscad/OpenJSCAD.org/commit/d59217eb550093d650e9df8d9e178d3b796ccaba))
51
+ * **modeling:** use modern typescript imports ([0a0d2e8](https://github.com/jscad/OpenJSCAD.org/commit/0a0d2e8e4ac5db50cf9a6f05a33dba9bdd68c98a))
61
52
 
53
+ ### Features
62
54
 
55
+ * **modeling:** added Martinez library for 2D booleans, refactored 2D booleans ([e035291](https://github.com/jscad/OpenJSCAD.org/commit/e035291fb4577d1a4c9f98f0c7b2de11711caf43))
56
+ * **modeling:** added validate to slice, as well as measurements ([5cfb4d2](https://github.com/jscad/OpenJSCAD.org/commit/5cfb4d21edf1ac5b52ece776e6dd3760d3e28d87))
57
+ * **modeling:** corrected vectorChar and vectorText options to align with the common API ([c3a950f](https://github.com/jscad/OpenJSCAD.org/commit/c3a950f2615d938243fde55d323b94dd0fd9f06c))
58
+ * **modeling:** enhanced poly2 into a complete geometry ([7180c35](https://github.com/jscad/OpenJSCAD.org/commit/7180c35f95b8a36f78117a86e4ae26f5ed6bab12))
59
+ * **modeling:** preserve color for offset and extrude ([48606fc](https://github.com/jscad/OpenJSCAD.org/commit/48606fc32fff26dd8bde6ec03ce10b3c7086ee37))
60
+ * **modeling:** removed extrudeRectangular ([6c0cb4a](https://github.com/jscad/OpenJSCAD.org/commit/6c0cb4aae6f03a38f6f77f82db2d8e5b1166d8d8))
61
+ * **modeling:** rename expansions to offsets, and unify expand into offset ([f2b3e31](https://github.com/jscad/OpenJSCAD.org/commit/f2b3e3162fedbd7c438bb2925abeac73342e62c6))
62
+ * **modeling:** renamed poly3 toVertices and fromVerticesAndPlane ([58621b9](https://github.com/jscad/OpenJSCAD.org/commit/58621b9d23d8e0905eff23faf8e9dddb2c4023fb))
63
+ * **modeling:** rework orthonormal formula ([008a462](https://github.com/jscad/OpenJSCAD.org/commit/008a4623b73ea95112c33cd9b48831055961bb96))
64
+ * **modeling:** reworked exports to expose a flattened API ([8235238](https://github.com/jscad/OpenJSCAD.org/commit/8235238ad63d063f1e501478cae1208deb130a9c))
65
+ * **modeling:** reworked vectorChar and vectorText to return segments as path2 objects ([d388fab](https://github.com/jscad/OpenJSCAD.org/commit/d388fab1c6341265f01db2b24360186de07f5c58))
63
66
 
64
67
  # [2.12.0](https://github.com/jscad/OpenJSCAD.org/compare/@jscad/modeling@2.11.1...@jscad/modeling@2.12.0) (2023-06-27)
65
68
 
66
-
67
69
  ### Bug Fixes
68
70
 
69
71
  * **modeling:** add missing extrudeHelical typing definition ([7f5f8e1](https://github.com/jscad/OpenJSCAD.org/commit/7f5f8e1d777ced7bc4ee5989f895ca06b30bd6d8))
70
72
 
71
-
72
73
  ### Features
73
74
 
74
75
  * **modeling:** allow zero size in primitives ([76b7369](https://github.com/jscad/OpenJSCAD.org/commit/76b73690ec2ae8000ab00a19f692569fe3595fe3))
75
76
 
76
-
77
77
  ### Performance Improvements
78
78
 
79
79
  * **modeling:** performance improvements for retessellate as part of booleans ([12157ac](https://github.com/jscad/OpenJSCAD.org/commit/12157ac886b714214223074d2f0a413c99da0a29))
80
80
 
81
-
82
-
83
-
84
-
85
81
  ## [2.11.1](https://github.com/jscad/OpenJSCAD.org/compare/@jscad/modeling@2.11.0...@jscad/modeling@2.11.1) (2023-04-30)
86
82
 
87
-
88
83
  ### Bug Fixes
89
84
 
90
85
  * **modeling:** arcLengthToT first argument is required ([fc4ceef](https://github.com/jscad/OpenJSCAD.org/commit/fc4ceef607abfcf3c0076155dd69254d19efab0a))
91
86
  * **modeling:** export retessellate from modifiers ([fe40aea](https://github.com/jscad/OpenJSCAD.org/commit/fe40aea35af8cde2934e9fea614a6384b1c291c6))
92
87
  * **modeling:** fix line2.closestPoint ([4419fe5](https://github.com/jscad/OpenJSCAD.org/commit/4419fe5a9b08f368fb0df91bd20acc3dc3ca7af7))
93
88
 
94
-
95
-
96
-
97
-
98
89
  # [2.11.0](https://github.com/jscad/OpenJSCAD.org/compare/@jscad/modeling@2.10.0...@jscad/modeling@2.11.0) (2022-11-26)
99
90
 
100
-
101
91
  ### Bug Fixes
102
92
 
103
93
  * **modeling:** added TS definitions for missing measurement functions ([acf79ca](https://github.com/jscad/OpenJSCAD.org/commit/acf79ca17223e37f49048b9960c9282dfdf72327))
104
94
 
105
-
106
95
  ### Features
107
96
 
108
97
  * **modeling:** added extrudeHelical ([#1164](https://github.com/jscad/OpenJSCAD.org/issues/1164)) ([a202bc9](https://github.com/jscad/OpenJSCAD.org/commit/a202bc94e4e79ac1d1034dc0d9d1854ff19de84d))
109
98
 
110
-
111
-
112
-
113
-
114
99
  # [2.10.0](https://github.com/jscad/OpenJSCAD.org/compare/@jscad/modeling@2.9.6...@jscad/modeling@2.10.0) (2022-08-21)
115
100
 
116
-
117
101
  ### Bug Fixes
118
102
 
119
103
  * **modeling:** added TS definitions for modifiers ([33ae2c4](https://github.com/jscad/OpenJSCAD.org/commit/33ae2c4c07986218464d30d08147d248c50a8a0b))
120
104
  * **modeling:** export modifiers for TypeScript ([#1129](https://github.com/jscad/OpenJSCAD.org/issues/1129)) ([a936675](https://github.com/jscad/OpenJSCAD.org/commit/a93667515922ab99bcd4488f59ee0488dcac6ef4))
121
105
 
122
-
123
106
  ### Features
124
107
 
125
108
  * **modeling:** added TAU constant to maths, and refactored code and documentation ([#1128](https://github.com/jscad/OpenJSCAD.org/issues/1128)) ([b8dd700](https://github.com/jscad/OpenJSCAD.org/commit/b8dd700d5641ec27b842dfdf4b6f9403a64084aa))
126
109
 
127
-
128
-
129
-
130
-
131
110
  ## [2.9.6](https://github.com/jscad/OpenJSCAD.org/compare/@jscad/modeling@2.9.5...@jscad/modeling@2.9.6) (2022-07-17)
132
111
 
133
-
134
112
  ### Bug Fixes
135
113
 
136
114
  * **modeling:** corrected concat to prevent modifying original paths ([#1118](https://github.com/jscad/OpenJSCAD.org/issues/1118)) ([ebeaa26](https://github.com/jscad/OpenJSCAD.org/commit/ebeaa26d087646cc6b0f9b927a9230db471a0469))
137
115
 
138
-
139
116
  ### Performance Improvements
140
117
 
141
118
  * **modeling:** convert {} objects to Map in insertTjunctions ([#1109](https://github.com/jscad/OpenJSCAD.org/issues/1109)) ([03c7fd1](https://github.com/jscad/OpenJSCAD.org/commit/03c7fd12af53ca025e32d481989563717b8d2137))
142
119
 
143
-
144
-
145
-
146
-
147
120
  ## [2.9.5](https://github.com/jscad/OpenJSCAD.org/compare/@jscad/modeling@2.9.4...@jscad/modeling@2.9.5) (2022-06-12)
148
121
 
149
-
150
122
  ### Bug Fixes
151
123
 
152
124
  * **modeling:** use special trig functions for rotations in maths and primitives ([#1090](https://github.com/jscad/OpenJSCAD.org/issues/1090)) ([42c2664](https://github.com/jscad/OpenJSCAD.org/commit/42c2664c088dd3cf1d53dcb26aa79524ac2958db))
153
125
 
154
-
155
126
  ### Performance Improvements
156
127
 
157
128
  * **modeling:** optimize poly3.measureBoundingSphere and cache results for performance ([6ad02d5](https://github.com/jscad/OpenJSCAD.org/commit/6ad02d5514ac130b8867d51a090f5745115a278d))
158
129
  * **modeling:** replace Math.hypot with faster Math.sqrt()([#1099](https://github.com/jscad/OpenJSCAD.org/issues/1099)) ([1f71c5b](https://github.com/jscad/OpenJSCAD.org/commit/1f71c5b88d4132333458242d3461a91c5e637f88))
159
130
 
160
-
161
-
162
-
163
-
164
131
  ## [2.9.4](https://github.com/jscad/OpenJSCAD.org/compare/@jscad/modeling@2.9.3...@jscad/modeling@2.9.4) (2022-05-15)
165
132
 
166
-
167
133
  ### Performance Improvements
168
134
 
169
135
  * **maths:** reworked mat4 isMirror to use pure math, eliminating vec3 creation ([#1088](https://github.com/jscad/OpenJSCAD.org/issues/1088)) ([db4f220](https://github.com/jscad/OpenJSCAD.org/commit/db4f220d000fd08c7e3adab16401a8ea3b06478a))
170
136
  * **modeling:** improved performance of reTesselateCoplanarPolygons by using maps or sets ([#1085](https://github.com/jscad/OpenJSCAD.org/issues/1085)) ([fc57103](https://github.com/jscad/OpenJSCAD.org/commit/fc57103f3183781dd3cf97600e9a33386da9a514))
171
137
  * **modeling:** use Map instead of {} for slice.repair ([#1083](https://github.com/jscad/OpenJSCAD.org/issues/1083)) ([05d2984](https://github.com/jscad/OpenJSCAD.org/commit/05d29849404193f2e4ed6e945a058aec2b124e3d))
172
138
 
173
-
174
-
175
-
176
-
177
139
  ## [2.9.3](https://github.com/jscad/OpenJSCAD.org/compare/@jscad/modeling@2.9.2...@jscad/modeling@2.9.3) (2022-04-24)
178
140
 
179
-
180
141
  ### Bug Fixes
181
142
 
182
143
  * **modeling:** corrected torus manifolds ([#1046](https://github.com/jscad/OpenJSCAD.org/issues/1046)) ([fe3901f](https://github.com/jscad/OpenJSCAD.org/commit/fe3901fa71d82e2b967021504cac818af04efbb5))
183
144
  * **modeling:** removed path2.eachPoint which was broken and unused ([#1069](https://github.com/jscad/OpenJSCAD.org/issues/1069)) ([f704548](https://github.com/jscad/OpenJSCAD.org/commit/f70454813f3373055e97bcc7d47325920ba2d59f))
184
145
  * **modeling:** reworked project to correct union of small polygons ([#1058](https://github.com/jscad/OpenJSCAD.org/issues/1058)) ([45d04ac](https://github.com/jscad/OpenJSCAD.org/commit/45d04ac6b1e622d57d08b11370def33755632f51))
185
146
 
186
-
187
147
  ### Performance Improvements
188
148
 
189
149
  * **modeling:** changed internals to use geom3.create(), path2.create(), poly3.create() ([#1072](https://github.com/jscad/OpenJSCAD.org/issues/1072)) ([dc4cd15](https://github.com/jscad/OpenJSCAD.org/commit/dc4cd15c28d1d137a935e941c3777389f7c7e391))
190
150
  * **modeling:** faster geom2.toOutlines ([#1064](https://github.com/jscad/OpenJSCAD.org/issues/1064)) ([5cb2f65](https://github.com/jscad/OpenJSCAD.org/commit/5cb2f652fa099593e6ec133fe879ecf8a09705e9))
191
151
  * **modeling:** performance improvements to mergePolygons and triangulatePolygons ([647ffdf](https://github.com/jscad/OpenJSCAD.org/commit/647ffdf2a726a1daa270717eadde2690b38aebda))
192
152
 
193
-
194
-
195
-
196
-
197
153
  ## [2.9.2](https://github.com/jscad/OpenJSCAD.org/compare/@jscad/modeling@2.9.1...@jscad/modeling@2.9.2) (2022-04-03)
198
154
 
199
155
  **Note:** Version bump only for package @jscad/modeling
200
156
 
201
-
202
-
203
-
204
-
205
157
  ## [2.9.1](https://github.com/jscad/OpenJSCAD.org/compare/@jscad/modeling@2.9.0...@jscad/modeling@2.9.1) (2022-04-03)
206
158
 
207
-
208
159
  ### Bug Fixes
209
160
 
210
161
  * **modeling:** corrected ellipse and ellipsoid manifolds ([#1043](https://github.com/jscad/OpenJSCAD.org/issues/1043)) ([3af3506](https://github.com/jscad/OpenJSCAD.org/commit/3af3506d6830ffe026f01490ded5d704301cb542))
@@ -212,186 +163,115 @@ See [Conventional Commits](https://conventionalcommits.org) for commit guideline
212
163
  * **modeling:** fixed areAllShapesTheSameType and add a test ([#1034](https://github.com/jscad/OpenJSCAD.org/issues/1034)) ([c92e9be](https://github.com/jscad/OpenJSCAD.org/commit/c92e9be0fe8696a992e2151a981fc34609c47e7d))
213
164
  * **modeling:** fixed cylinder construction, enhanced to support zero radius ([#1039](https://github.com/jscad/OpenJSCAD.org/issues/1039)) ([93f103d](https://github.com/jscad/OpenJSCAD.org/commit/93f103d0aec53618966bffa7fedc355547a6008c))
214
165
 
215
-
216
-
217
-
218
-
219
166
  # [2.9.0](https://github.com/jscad/OpenJSCAD.org/compare/@jscad/modeling@2.8.0...@jscad/modeling@2.9.0) (2022-03-13)
220
167
 
221
-
222
168
  ### Features
223
169
 
224
170
  * **modeling:** added earcut triangulation algorithm for extrusion caps ([#1021](https://github.com/jscad/OpenJSCAD.org/issues/1021)) ([c7f8ddf](https://github.com/jscad/OpenJSCAD.org/commit/c7f8ddfb34d3ff6a0c8d2c129f2b150c23987f59))
225
171
 
226
-
227
-
228
-
229
-
230
172
  # [2.8.0](https://github.com/jscad/OpenJSCAD.org/compare/@jscad/modeling@2.7.2...@jscad/modeling@2.8.0) (2022-03-06)
231
173
 
232
-
233
174
  ### Bug Fixes
234
175
 
235
176
  * **modeling:** fixed type of relativeTo in align() options, TS ([#1015](https://github.com/jscad/OpenJSCAD.org/issues/1015)) ([ca4927e](https://github.com/jscad/OpenJSCAD.org/commit/ca4927eb37b21a7c278b46375b788c808d235e77))
236
177
 
237
-
238
178
  ### Features
239
179
 
240
180
  * **modeling:** enchanced extrudeLinear to support path2 ([#1009](https://github.com/jscad/OpenJSCAD.org/issues/1009)) ([5a62a6b](https://github.com/jscad/OpenJSCAD.org/commit/5a62a6b9fe4cca9f85ff48be0dc12cdd1323f70a))
241
181
 
242
-
243
182
  ### Performance Improvements
244
183
 
245
184
  * **modeling:** improved performace of path2 offsets ([#1013](https://github.com/jscad/OpenJSCAD.org/issues/1013)) ([47f824b](https://github.com/jscad/OpenJSCAD.org/commit/47f824b5abe2b31077a03604ac62f9b14ada64d9))
246
185
  * **modeling:** improved performance of expanding geom3, and bug fix ([#1008](https://github.com/jscad/OpenJSCAD.org/issues/1008)) ([d0d035a](https://github.com/jscad/OpenJSCAD.org/commit/d0d035a5d94eaff8de7360fe96e60cc496231eef))
247
186
  * **modeling:** use Set to create unique points in hullPath2 ([#1007](https://github.com/jscad/OpenJSCAD.org/issues/1007)) ([bd75a98](https://github.com/jscad/OpenJSCAD.org/commit/bd75a9870d614796a64a25fb874b5e77ad359e6f))
248
187
 
249
-
250
-
251
-
252
-
253
188
  ## [2.7.2](https://github.com/jscad/OpenJSCAD.org/compare/@jscad/modeling@2.7.1...@jscad/modeling@2.7.2) (2022-02-19)
254
189
 
255
-
256
190
  ### Performance Improvements
257
191
 
258
192
  * **modeling:** changed geom2.toOutlines to use a map when creating unique edges ([#997](https://github.com/jscad/OpenJSCAD.org/issues/997)) ([338065f](https://github.com/jscad/OpenJSCAD.org/commit/338065fa37041a41e66cbe648ba2080239f3db97))
259
193
  * **modeling:** Use hypot instead of sqrt when possible ([#996](https://github.com/jscad/OpenJSCAD.org/issues/996)) ([113c636](https://github.com/jscad/OpenJSCAD.org/commit/113c636b1ac33e351c97789eb6ce0a546365141e))
260
194
 
261
-
262
-
263
-
264
-
265
195
  ## [2.7.1](https://github.com/jscad/OpenJSCAD.org/compare/@jscad/modeling@2.7.0...@jscad/modeling@2.7.1) (2021-12-26)
266
196
 
267
-
268
197
  ### Bug Fixes
269
198
 
270
199
  * **modeling:** revert measureBoundingBox to only cache per geometry ([#967](https://github.com/jscad/OpenJSCAD.org/issues/967)) ([b18c02c](https://github.com/jscad/OpenJSCAD.org/commit/b18c02c333b225981a9093caf0593795bc0861ad))
271
200
 
272
-
273
-
274
-
275
-
276
201
  # [2.7.0](https://github.com/jscad/OpenJSCAD.org/compare/@jscad/modeling@2.6.1...@jscad/modeling@2.7.0) (2021-12-11)
277
202
 
278
-
279
203
  ### Bug Fixes
280
204
 
281
205
  * **modeling:** compute planes from average of all vertex normals ([#953](https://github.com/jscad/OpenJSCAD.org/issues/953)) ([c8a37ad](https://github.com/jscad/OpenJSCAD.org/commit/c8a37ad6430aec8361a5e121730b34629c0d969c))
282
206
 
283
-
284
207
  ### Features
285
208
 
286
209
  * **modeling:** new triangle primitive ([#954](https://github.com/jscad/OpenJSCAD.org/issues/954)) ([ce00d7d](https://github.com/jscad/OpenJSCAD.org/commit/ce00d7d4aed364496b7086221af7feae4ffec29c))
287
210
 
288
-
289
211
  ### Performance Improvements
290
212
 
291
213
  * **modeling:** improved measureBoundingBox by eliminating allocations ([8abe361](https://github.com/jscad/OpenJSCAD.org/commit/8abe361fc0249ec10e438382353b316aec4644a4))
292
214
 
293
-
294
-
295
-
296
-
297
215
  ## [2.6.1](https://github.com/jscad/OpenJSCAD.org/compare/@jscad/modeling@2.6.0...@jscad/modeling@2.6.1) (2021-11-07)
298
216
 
299
-
300
217
  ### Bug Fixes
301
218
 
302
219
  * **modeling:** corrected measureBoundingBox for mirrored shapes ([#946](https://github.com/jscad/OpenJSCAD.org/issues/946)) ([ab2d505](https://github.com/jscad/OpenJSCAD.org/commit/ab2d50595129167a85f330adf286eaa56ae45de5))
303
220
  * **modeling:** handle negative area polygons in snapPolygons ([#941](https://github.com/jscad/OpenJSCAD.org/issues/941)) ([971343a](https://github.com/jscad/OpenJSCAD.org/commit/971343ac8ef90701a8dd54a1889f8932bebab5da))
304
221
 
305
-
306
-
307
-
308
-
309
222
  # [2.6.0](https://github.com/jscad/OpenJSCAD.org/compare/@jscad/modeling@2.5.3...@jscad/modeling@2.6.0) (2021-10-17)
310
223
 
311
-
312
224
  ### Features
313
225
 
314
226
  * **modeling:** add new measurements for BoundingSphere, Center, CenterOfMass, and Dimensions ([#850](https://github.com/jscad/OpenJSCAD.org/issues/850)) ([ad032f4](https://github.com/jscad/OpenJSCAD.org/commit/ad032f49b30055abcbb5464ba4249b5abb5077b2))
315
227
  * **modeling:** change geometry transforms to preserve user attributes ([#927](https://github.com/jscad/OpenJSCAD.org/issues/927)) ([a581a02](https://github.com/jscad/OpenJSCAD.org/commit/a581a02afb18a12954ffda806f4d0f04c99fb9ef))
316
228
  * **modeling:** Performance improvement for measure bounding box ([#869](https://github.com/jscad/OpenJSCAD.org/issues/869)) ([ee1c7b1](https://github.com/jscad/OpenJSCAD.org/commit/ee1c7b198a6e7a949b3c5d96d11f6537d39629fd))
317
229
 
318
-
319
-
320
-
321
-
322
230
  ## [2.5.3](https://github.com/jscad/OpenJSCAD.org/compare/@jscad/modeling@2.5.2...@jscad/modeling@2.5.3) (2021-10-04)
323
231
 
324
-
325
232
  ### Bug Fixes
326
233
 
327
234
  * **modeling:** corrected vec2.rotate, and enhanced test cases ([#918](https://github.com/jscad/OpenJSCAD.org/issues/918)) ([e2bea2d](https://github.com/jscad/OpenJSCAD.org/commit/e2bea2d033462a70eac15bb2b7d4f8674216a7bf))
328
235
 
329
-
330
-
331
-
332
-
333
236
  ## [2.5.2](https://github.com/jscad/OpenJSCAD.org/compare/@jscad/modeling@2.5.1...@jscad/modeling@2.5.2) (2021-09-27)
334
237
 
335
-
336
238
  ### Bug Fixes
337
239
 
338
240
  * **modeling:** added exit condition to Node to prevent infinite loops in boolean ops ([#898](https://github.com/jscad/OpenJSCAD.org/issues/898)) ([bf4d6d4](https://github.com/jscad/OpenJSCAD.org/commit/bf4d6d48900aa7e35d00c12cd8d2f15051424956))
339
241
  * **modeling:** corrected concat to ignore duplicate points ([#913](https://github.com/jscad/OpenJSCAD.org/issues/913))corrected appendArc to maintain last point ([3eea3ef](https://github.com/jscad/OpenJSCAD.org/commit/3eea3efed3b3d4bacb49c1ee4691bfc159b08261))
340
242
 
341
-
342
-
343
-
344
-
345
243
  ## [2.5.1](https://github.com/jscad/OpenJSCAD.org/compare/@jscad/modeling@2.5.0...@jscad/modeling@2.5.1) (2021-09-09)
346
244
 
347
-
348
245
  ### Bug Fixes
349
246
 
350
247
  * **modeling:** corrected CCW determination in 2D hulls ([#897](https://github.com/jscad/OpenJSCAD.org/issues/897)) ([23fe2ac](https://github.com/jscad/OpenJSCAD.org/commit/23fe2ac98fb62ebf6a9bf5a3055e644ffb0e432f)), closes [#114](https://github.com/jscad/OpenJSCAD.org/issues/114)
351
248
  * **web:** added open issues and discord community to help ([4ea1196](https://github.com/jscad/OpenJSCAD.org/commit/4ea11966af4b3ecbb5c1a3d53b7ac90c4cd349b1))
352
249
 
353
-
354
-
355
-
356
-
357
250
  # [2.5.0](https://github.com/jscad/OpenJSCAD.org/compare/@jscad/modeling@2.4.0...@jscad/modeling@2.5.0) (2021-06-20)
358
251
 
359
-
360
252
  ### Features
361
253
 
362
254
  * **modeling:** added mat4.isIdentity() ([c22b7cc](https://github.com/jscad/OpenJSCAD.org/commit/c22b7ccfb64f2769381162f0d442ea0ecff5e8d1))
363
255
 
364
-
365
-
366
-
367
-
368
256
  # [2.4.0](https://github.com/jscad/OpenJSCAD.org/compare/@jscad/modeling@2.3.0...@jscad/modeling@2.4.0) (2021-06-11)
369
257
 
370
-
371
258
  ### Bug Fixes
372
259
 
373
260
  * **modeling:** corrected snapPolygons to maintain color attributes ([eba8ebc](https://github.com/jscad/OpenJSCAD.org/commit/eba8ebc5b910b7c6d3b8021a26bcc92a73672247))
374
261
  * **modeling:** corrected triangulatePolygons to maintain color attributes ([f59958a](https://github.com/jscad/OpenJSCAD.org/commit/f59958a9640c3c81c8f081fab9ec64a592adef44))
375
262
 
376
-
377
263
  ### Features
378
264
 
379
265
  * **modeling:** added mat4.invert ([#860](https://github.com/jscad/OpenJSCAD.org/issues/860)) ([3eedab3](https://github.com/jscad/OpenJSCAD.org/commit/3eedab3ba1f8a8f3e909eeeb74dca230af8ac435))
380
266
 
381
-
382
-
383
-
384
-
385
267
  # [2.3.0](https://github.com/jscad/OpenJSCAD.org/compare/@jscad/modeling@2.2.0...@jscad/modeling@2.3.0) (2021-06-01)
386
268
 
387
-
388
269
  ### Bug Fixes
389
270
 
390
271
  * **modeling:** fixed use of vec3.snap in triangulatePolygons ([c0b82a0](https://github.com/jscad/OpenJSCAD.org/commit/c0b82a0fce4dc69eb152b184a7c36a587fbe4a97))
391
272
  * **modeling:** rewrote vec3 orthogonal() to do the correct thing, and adjusted test suites ([f5cb4a3](https://github.com/jscad/OpenJSCAD.org/commit/f5cb4a31bfc331123cf0da95c012b02b7baafcc8))
392
273
  * **modeling:** update and correct TypeScript type definitions ([#849](https://github.com/jscad/OpenJSCAD.org/issues/849)) ([6036be7](https://github.com/jscad/OpenJSCAD.org/commit/6036be7586a3f2808f34764baa4195c5edbc6165))
393
274
 
394
-
395
275
  ### Features
396
276
 
397
277
  * **modeling:** added aboutEqualNormals() to math utils ([986d402](https://github.com/jscad/OpenJSCAD.org/commit/986d402cff0f857c77ac77995090fbb0da7ecdaf))
@@ -401,13 +281,8 @@ See [Conventional Commits](https://conventionalcommits.org) for commit guideline
401
281
  * **modeling:** new scission() function added to booleans ([#846](https://github.com/jscad/OpenJSCAD.org/issues/846)) ([b8b3bae](https://github.com/jscad/OpenJSCAD.org/commit/b8b3bae0f45301a8c4b80a757331f89e962f86fc))
402
282
  * **modeling:** rework math objects to conform with gl-matrix ([#804](https://github.com/jscad/OpenJSCAD.org/issues/804)) ([2e52f10](https://github.com/jscad/OpenJSCAD.org/commit/2e52f104e569f2bb7dd9e1be3d238f471f4d3dfa))
403
283
 
404
-
405
-
406
-
407
-
408
284
  # [2.2.0](https://github.com/jscad/OpenJSCAD.org/compare/@jscad/modeling@2.0.0-alpha.0...@jscad/modeling@2.2.0) (2021-04-20)
409
285
 
410
-
411
286
  ### Bug Fixes
412
287
 
413
288
  * **all:** V2 : several fixes for modeling ([#705](https://github.com/jscad/OpenJSCAD.org/issues/705)) ([62017a4](https://github.com/jscad/OpenJSCAD.org/commit/62017a41214169d6e000f1e0c11aaefdd68e1097))
@@ -422,7 +297,6 @@ See [Conventional Commits](https://conventionalcommits.org) for commit guideline
422
297
  * **modeling:** V2 - primitives revisited ([#697](https://github.com/jscad/OpenJSCAD.org/issues/697)) ([4721484](https://github.com/jscad/OpenJSCAD.org/commit/47214847b9ea1a144bd0ec595318979199c47dea))
423
298
  * **modeling:** V2 revisit modifiers ([#773](https://github.com/jscad/OpenJSCAD.org/issues/773)) ([1e28120](https://github.com/jscad/OpenJSCAD.org/commit/1e28120d2b8505dc1882cf3d607296d6fcd5526d))
424
299
 
425
-
426
300
  ### Features
427
301
 
428
302
  * **examples:** examples overhaul for V2 JSCAD ([d73e06f](https://github.com/jscad/OpenJSCAD.org/commit/d73e06f51e187e673487c3d9599672e66ac441d7))
@@ -432,13 +306,8 @@ See [Conventional Commits](https://conventionalcommits.org) for commit guideline
432
306
  * **modeling:** V2 : rename option to align and center ([#775](https://github.com/jscad/OpenJSCAD.org/issues/775)) ([c5b0f48](https://github.com/jscad/OpenJSCAD.org/commit/c5b0f48bbd980b59876d73b673a0e3bef44d2b30))
433
307
  * **modeling:** V2 fix extrusions ([#761](https://github.com/jscad/OpenJSCAD.org/issues/761)) ([466910e](https://github.com/jscad/OpenJSCAD.org/commit/466910e7c1a3398065ba2895871c42f35877834a))
434
308
 
435
-
436
-
437
-
438
-
439
309
  # [2.1.0](https://github.com/jscad/OpenJSCAD.org/compare/@jscad/modeling@2.0.0-alpha.0...@jscad/modeling@2.1.0) (2021-04-15)
440
310
 
441
-
442
311
  ### Bug Fixes
443
312
 
444
313
  * **all:** V2 : several fixes for modeling ([#705](https://github.com/jscad/OpenJSCAD.org/issues/705)) ([62017a4](https://github.com/jscad/OpenJSCAD.org/commit/62017a41214169d6e000f1e0c11aaefdd68e1097))
@@ -453,7 +322,6 @@ See [Conventional Commits](https://conventionalcommits.org) for commit guideline
453
322
  * **modeling:** V2 - primitives revisited ([#697](https://github.com/jscad/OpenJSCAD.org/issues/697)) ([4721484](https://github.com/jscad/OpenJSCAD.org/commit/47214847b9ea1a144bd0ec595318979199c47dea))
454
323
  * **modeling:** V2 revisit modifiers ([#773](https://github.com/jscad/OpenJSCAD.org/issues/773)) ([1e28120](https://github.com/jscad/OpenJSCAD.org/commit/1e28120d2b8505dc1882cf3d607296d6fcd5526d))
455
324
 
456
-
457
325
  ### Features
458
326
 
459
327
  * **examples:** examples overhaul for V2 JSCAD ([d73e06f](https://github.com/jscad/OpenJSCAD.org/commit/d73e06f51e187e673487c3d9599672e66ac441d7))
@@ -463,153 +331,88 @@ See [Conventional Commits](https://conventionalcommits.org) for commit guideline
463
331
  * **modeling:** V2 : rename option to align and center ([#775](https://github.com/jscad/OpenJSCAD.org/issues/775)) ([c5b0f48](https://github.com/jscad/OpenJSCAD.org/commit/c5b0f48bbd980b59876d73b673a0e3bef44d2b30))
464
332
  * **modeling:** V2 fix extrusions ([#761](https://github.com/jscad/OpenJSCAD.org/issues/761)) ([466910e](https://github.com/jscad/OpenJSCAD.org/commit/466910e7c1a3398065ba2895871c42f35877834a))
465
333
 
466
-
467
-
468
-
469
-
470
334
  # [2.0.0](https://github.com/jscad/OpenJSCAD.org/compare/@jscad/modeling@2.0.0-alpha.11...@jscad/modeling@2.0.0) (2021-04-12)
471
335
 
472
336
  **Note:** Version bump only for package @jscad/modeling
473
337
 
474
-
475
-
476
-
477
-
478
338
  # [2.0.0-alpha.11](https://github.com/jscad/OpenJSCAD.org/compare/@jscad/modeling@2.0.0-alpha.10...@jscad/modeling@2.0.0-alpha.11) (2021-03-07)
479
339
 
480
-
481
340
  ### Bug Fixes
482
341
 
483
342
  * **modeling:** V2 revisit modifiers ([#773](https://github.com/jscad/OpenJSCAD.org/issues/773)) ([1e28120](https://github.com/jscad/OpenJSCAD.org/commit/1e28120d2b8505dc1882cf3d607296d6fcd5526d))
484
343
 
485
-
486
344
  ### Features
487
345
 
488
346
  * **modeling:** V2 : rename option to align and center ([#775](https://github.com/jscad/OpenJSCAD.org/issues/775)) ([c5b0f48](https://github.com/jscad/OpenJSCAD.org/commit/c5b0f48bbd980b59876d73b673a0e3bef44d2b30))
489
347
 
490
-
491
-
492
-
493
-
494
348
  # [2.0.0-alpha.10](https://github.com/jscad/OpenJSCAD.org/compare/@jscad/modeling@2.0.0-alpha.9...@jscad/modeling@2.0.0-alpha.10) (2021-02-07)
495
349
 
496
-
497
350
  ### Features
498
351
 
499
352
  * **modeling:** adding new class of operations to modeling; modifiers ([#743](https://github.com/jscad/OpenJSCAD.org/issues/743)) ([9e20303](https://github.com/jscad/OpenJSCAD.org/commit/9e20303255fb10bf11251dbefffa6b8c1dad9b49))
500
353
  * **modeling:** enhanced options to extrudeFromSlices ([#761](https://github.com/jscad/OpenJSCAD.org/issues/761)) ([466910e](https://github.com/jscad/OpenJSCAD.org/commit/466910e7c1a3398065ba2895871c42f35877834a))
501
354
 
502
-
503
-
504
-
505
-
506
355
  # [2.0.0-alpha.9](https://github.com/jscad/OpenJSCAD.org/compare/@jscad/modeling@2.0.0-alpha.8...@jscad/modeling@2.0.0-alpha.9) (2021-01-02)
507
356
 
508
-
509
357
  ### Bug Fixes
510
358
 
511
359
  * **core,modeling:** V2 fix extrude ([#751](https://github.com/jscad/OpenJSCAD.org/issues/751)) ([767b6fc](https://github.com/jscad/OpenJSCAD.org/commit/767b6fc13a24b6203248c197210645e5b7cebc28))
512
360
  * **modeling:** re-implemented poly2.isPointInside to correct issues ([#741](https://github.com/jscad/OpenJSCAD.org/issues/741)) ([4266c8f](https://github.com/jscad/OpenJSCAD.org/commit/4266c8f623f3de9f8c8a5999647e654c8d5aaf31))
513
361
 
514
-
515
-
516
-
517
-
518
362
  # [2.0.0-alpha.8](https://github.com/jscad/OpenJSCAD.org/compare/@jscad/modeling@2.0.0-alpha.7...@jscad/modeling@2.0.0-alpha.8) (2020-12-04)
519
363
 
520
364
  **Note:** Version bump only for package @jscad/modeling
521
365
 
522
-
523
-
524
-
525
-
526
366
  # [2.0.0-alpha.7](https://github.com/jscad/OpenJSCAD.org/compare/@jscad/modeling@2.0.0-alpha.6...@jscad/modeling@2.0.0-alpha.7) (2020-11-07)
527
367
 
528
-
529
368
  ### Bug Fixes
530
369
 
531
370
  * **modeling:** fix extrude rotate ([#727](https://github.com/jscad/OpenJSCAD.org/issues/727)) ([13de037](https://github.com/jscad/OpenJSCAD.org/commit/13de03788336ac5c2e00818fadd631bc8aadc523))
532
371
 
533
-
534
-
535
-
536
-
537
372
  # [2.0.0-alpha.6](https://github.com/jscad/openjscad.org/compare/@jscad/modeling@2.0.0-alpha.5...@jscad/modeling@2.0.0-alpha.6) (2020-10-11)
538
373
 
539
-
540
374
  ### Bug Fixes
541
375
 
542
376
  * **all:** V2 : several fixes for modeling ([#705](https://github.com/jscad/openjscad.org/issues/705)) ([62017a4](https://github.com/jscad/openjscad.org/commit/62017a41214169d6e000f1e0c11aaefdd68e1097))
543
377
  * **core:** Remove connectors from public api ([#703](https://github.com/jscad/openjscad.org/issues/703)) ([a3bf8a4](https://github.com/jscad/openjscad.org/commit/a3bf8a42e7ccf2204351da4a4acff55c2d6acad6))
544
378
 
545
-
546
-
547
-
548
-
549
379
  # [2.0.0-alpha.5](https://github.com/jscad/openjscad.org/compare/@jscad/modeling@2.0.0-alpha.4...@jscad/modeling@2.0.0-alpha.5) (2020-09-29)
550
380
 
551
-
552
381
  ### Bug Fixes
553
382
 
554
383
  * **modeling:** V2 - primitives revisited ([#697](https://github.com/jscad/openjscad.org/issues/697)) ([4721484](https://github.com/jscad/openjscad.org/commit/47214847b9ea1a144bd0ec595318979199c47dea))
555
384
 
556
-
557
-
558
-
559
-
560
385
  # [2.0.0-alpha.4](https://github.com/jscad/openjscad.org/compare/@jscad/modeling@2.0.0-alpha.3...@jscad/modeling@2.0.0-alpha.4) (2020-09-28)
561
386
 
562
-
563
387
  ### Features
564
388
 
565
389
  * **modeling:** added aggregate functions for area, volume, epsilon measurements ([cf558bb](https://github.com/jscad/openjscad.org/commit/cf558bb7d0df1ab4562fda022a8db2c4216d7514))
566
390
 
567
-
568
-
569
-
570
-
571
391
  # [2.0.0-alpha.3](https://github.com/jscad/openjscad.org/compare/@jscad/modeling@2.0.0-alpha.2...@jscad/modeling@2.0.0-alpha.3) (2020-09-19)
572
392
 
573
-
574
393
  ### Features
575
394
 
576
395
  * **modeling:** add align() and measureAggregateBoundingBox() functions ([72df65c](https://github.com/jscad/openjscad.org/commit/72df65cfec065f26a84a8bb1ff80f5750a9972bf))
577
396
 
578
-
579
-
580
-
581
-
582
397
  # [2.0.0-alpha.2](https://github.com/jscad/openjscad.org/compare/@jscad/modeling@2.0.0-alpha.1...@jscad/modeling@2.0.0-alpha.2) (2020-09-08)
583
398
 
584
-
585
399
  ### Bug Fixes
586
400
 
587
401
  * **modeling:** Adding & improving tests, docs, removing some equals() ([1f3724b](https://github.com/jscad/openjscad.org/commit/1f3724b7cb9c8afd5ddc61587de506dbac93125e))
588
402
  * **modeling:** fix torus offset when outerRotation is supplied ([f7b3a2a](https://github.com/jscad/openjscad.org/commit/f7b3a2a9adfee91ecc2be1661883f5f17264a798))
589
403
 
590
-
591
404
  ### Features
592
405
 
593
406
  * **examples:** examples overhaul for V2 JSCAD ([d73e06f](https://github.com/jscad/openjscad.org/commit/d73e06f51e187e673487c3d9599672e66ac441d7))
594
407
 
595
-
596
-
597
-
598
-
599
408
  # [2.0.0-alpha.1](https://github.com/jscad/openjscad.org/compare/@jscad/modeling@2.0.0-alpha.0...@jscad/modeling@2.0.0-alpha.1) (2020-08-19)
600
409
 
601
-
602
410
  ### Bug Fixes
603
411
 
604
412
  * **modeling:** ensure extrude rectangular expand produces shapes with positive area ([43ce5dd](https://github.com/jscad/openjscad.org/commit/43ce5dd4341935966ed976ce16cb5a7e452becc2))
605
413
 
606
-
607
-
608
-
609
-
610
414
  # 2.0.0-alpha.0 (2020-08-13)
611
415
 
612
-
613
416
  ### Bug Fixes
614
417
 
615
418
  * **booleans:** corrected fromFakePolygons to ignore 0 length sides ([#552](https://github.com/jscad/openjscad.org/issues/552)) ([a44650b](https://github.com/jscad/openjscad.org/commit/a44650b2ce471b44ae2a40f4debddbc47e8d8c34))
@@ -627,7 +430,6 @@ See [Conventional Commits](https://conventionalcommits.org) for commit guideline
627
430
  * **utils:** exposed additional user utility functions
628
431
  * **geometries:** corrected order of transforms in geom2, geom3, and path2
629
432
 
630
-
631
433
  ### Features
632
434
 
633
435
  * **modeling:** merge csg.js into main repo (#482)
@@ -645,233 +447,159 @@ See [Conventional Commits](https://conventionalcommits.org) for commit guideline
645
447
  * **modeling:** moved measurements out of operations
646
448
  * **modeling:** adding curves/bezier object for curve-based easing and…
647
449
 
648
-
649
-
650
-
651
-
652
450
  <a name="0.6.0"></a>
653
451
  # [0.6.0](https://github.com/jscad/csg.js/compare/v0.5.4...v0.6.0) (2018-06-21)
654
452
 
655
-
656
453
  ### Bug Fixes
657
454
 
658
455
  * **2d shape factories:** fix fromNestedPointsArray([#103](https://github.com/jscad/csg.js/issues/103)) ([729d459](https://github.com/jscad/csg.js/commit/729d459))
659
456
  * **polygon:** params custom paths ([#104](https://github.com/jscad/csg.js/issues/104)) ([7d93db8](https://github.com/jscad/csg.js/commit/7d93db8))
660
457
 
661
-
662
458
  ### Features
663
459
 
664
460
  * **2d polygons:** add support for polygons (2D) with holes([#101](https://github.com/jscad/csg.js/issues/101)) ([22f8f80](https://github.com/jscad/csg.js/commit/22f8f80))
665
461
  * **vector_text/char:** big overhaul & additions to the vector_text/ char system ([#107](https://github.com/jscad/csg.js/issues/107)) ([eadcd58](https://github.com/jscad/csg.js/commit/eadcd58))
666
462
 
667
-
668
-
669
463
  <a name="0.5.4"></a>
670
464
  ## [0.5.4](https://github.com/jscad/csg.js/compare/v0.5.3...v0.5.4) (2018-03-16)
671
465
 
672
-
673
466
  ### Bug Fixes
674
467
 
675
468
  * **center:** Correcting center() functionality ([#97](https://github.com/jscad/csg.js/issues/97)) ([52e792d](https://github.com/jscad/csg.js/commit/52e792d))
676
469
 
677
-
678
-
679
470
  <a name="0.5.3"></a>
680
471
  ## [0.5.3](https://github.com/jscad/csg.js/compare/v0.5.2...v0.5.3) (2018-02-13)
681
472
 
682
-
683
-
684
473
  <a name="0.5.2"></a>
685
474
  ## [0.5.2](https://github.com/jscad/csg.js/compare/v0.5.1...v0.5.2) (2018-01-29)
686
475
 
687
-
688
476
  ### Bug Fixes
689
477
 
690
478
  * **rotate:** fixing angle-axis style rotation ([#90](https://github.com/jscad/csg.js/issues/90)) ([6c28c1c](https://github.com/jscad/csg.js/commit/6c28c1c))
691
479
 
692
-
693
-
694
480
  <a name="0.5.1"></a>
695
481
  ## [0.5.1](https://github.com/jscad/csg.js/compare/v0.5.0...v0.5.1) (2018-01-29)
696
482
 
697
-
698
483
  ### Bug Fixes
699
484
 
700
485
  * **CAG:** added back missing CAG.fromCompactBinary ([#91](https://github.com/jscad/csg.js/issues/91)) ([57e8f5d](https://github.com/jscad/csg.js/commit/57e8f5d))
701
486
 
702
-
703
-
704
487
  <a name="0.5.0"></a>
705
488
  # [0.5.0](https://github.com/jscad/csg.js/compare/v0.4.1...v0.5.0) (2018-01-19)
706
489
 
707
-
708
-
709
490
  <a name="0.4.1"></a>
710
491
  ## [0.4.1](https://github.com/jscad/csg.js/compare/v0.4.0...v0.4.1) (2018-01-19)
711
492
 
712
-
713
-
714
493
  <a name="0.4.0"></a>
715
494
  # [0.4.0](https://github.com/jscad/csg.js/compare/v0.3.8...v0.4.0) (2018-01-05)
716
495
 
717
-
718
496
  ### Bug Fixes
719
497
 
720
498
  * **docstring:** fixed a few bad docstrings which prevented docs from being generated ([#76](https://github.com/jscad/csg.js/issues/76)) ([441fd18](https://github.com/jscad/csg.js/commit/441fd18))
721
499
 
722
-
723
-
724
500
  <a name="0.3.8"></a>
725
501
  ## [0.3.8](https://github.com/jscad/csg.js/compare/v0.3.7...v0.3.8) (2018-01-04)
726
502
 
727
-
728
503
  ### Bug Fixes
729
504
 
730
505
  * **shared object:** support shared objects without color ([#74](https://github.com/jscad/csg.js/issues/74)) ([f90ad50](https://github.com/jscad/csg.js/commit/f90ad50))
731
506
 
732
-
733
-
734
507
  <a name="0.3.7"></a>
735
508
  ## [0.3.7](https://github.com/jscad/csg.js/compare/v0.3.6...v0.3.7) (2017-11-13)
736
509
 
737
-
738
-
739
510
  <a name="0.3.6"></a>
740
511
  ## [0.3.6](https://github.com/jscad/csg.js/compare/v0.3.5...v0.3.6) (2017-11-03)
741
512
 
742
-
743
-
744
513
  <a name="0.3.5"></a>
745
514
  ## [0.3.5](https://github.com/jscad/csg.js/compare/v0.3.4...v0.3.5) (2017-11-03)
746
515
 
747
-
748
516
  ### Bug Fixes
749
517
 
750
518
  * **fixTJunctions:** fixes issues with fixTJunctions ([#63](https://github.com/jscad/csg.js/issues/63)) ([78c5102](https://github.com/jscad/csg.js/commit/78c5102))
751
519
 
752
-
753
-
754
520
  <a name="0.3.4"></a>
755
521
  ## [0.3.4](https://github.com/jscad/csg.js/compare/v0.3.3...v0.3.4) (2017-11-01)
756
522
 
757
-
758
523
  ### Bug Fixes
759
524
 
760
525
  * **ConnectorsList:** add back missing ConnectorsList ([#62](https://github.com/jscad/csg.js/issues/62)) ([cfc1c7e](https://github.com/jscad/csg.js/commit/cfc1c7e))
761
526
 
762
-
763
-
764
527
  <a name="0.3.3"></a>
765
528
  ## [0.3.3](https://github.com/jscad/csg.js/compare/v0.3.2...v0.3.3) (2017-11-01)
766
529
 
767
-
768
-
769
530
  <a name="0.3.2"></a>
770
531
  ## [0.3.2](https://github.com/jscad/csg.js/compare/v0.3.1...v0.3.2) (2017-10-28)
771
532
 
772
-
773
533
  ### Bug Fixes
774
534
 
775
535
  * **path2D:** added missing innerToCAG method to path2D proto & added tests & docs ([#52](https://github.com/jscad/csg.js/issues/52)) ([4a5e37e](https://github.com/jscad/csg.js/commit/4a5e37e))
776
536
 
777
-
778
-
779
537
  <a name="0.3.1"></a>
780
538
  ## [0.3.1](https://github.com/jscad/csg.js/compare/v0.3.0...v0.3.1) (2017-06-11)
781
539
 
782
-
783
-
784
540
  <a name="0.3.0"></a>
785
541
  # [0.3.0](https://github.com/jscad/csg.js/compare/v0.2.4...v0.3.0) (2017-05-30)
786
542
 
787
-
788
543
  ### Features
789
544
 
790
545
  * **CAG.toPoints:** CAG Enhancement for toPoints() ([d023243](https://github.com/jscad/csg.js/commit/d023243))
791
546
 
792
-
793
-
794
547
  <a name="0.2.4"></a>
795
548
  ## [0.2.4](https://github.com/jscad/csg.js/compare/v0.2.3...v0.2.4) (2017-05-20)
796
549
 
797
-
798
550
  ### Bug Fixes
799
551
 
800
552
  * **CAG:** reverted back CAG to default to canonicalized = false ([68a0558](https://github.com/jscad/csg.js/commit/68a0558))
801
553
 
802
-
803
-
804
554
  <a name="0.2.3"></a>
805
555
  ## [0.2.3](https://github.com/jscad/csg.js/compare/v0.2.2...v0.2.3) (2017-05-19)
806
556
 
807
-
808
-
809
557
  <a name="0.2.2"></a>
810
558
  ## [0.2.2](https://github.com/jscad/csg.js/compare/v0.2.1...v0.2.2) (2017-05-19)
811
559
 
812
-
813
-
814
560
  <a name="0.2.1"></a>
815
561
  ## [0.2.1](https://github.com/jscad/csg.js/compare/v0.2.0...v0.2.1) (2017-04-27)
816
562
 
817
-
818
-
819
563
  <a name="0.2.0"></a>
820
564
  # [0.2.0](https://github.com/jscad/csg.js/compare/v0.1.4...v0.2.0) (2017-04-27)
821
565
 
822
-
823
566
  ### Bug Fixes
824
567
 
825
568
  * **asserts:** fixed issue with asserts in latest ava ([1210f66](https://github.com/jscad/csg.js/commit/1210f66))
826
569
 
827
-
828
-
829
570
  <a name="0.1.4"></a>
830
571
  ## [0.1.4](https://github.com/jscad/csg.js/compare/v0.1.3...v0.1.4) (2017-01-27)
831
572
 
832
-
833
573
  ### Bug Fixes
834
574
 
835
575
  * **README:** more attempts at fixing README on npm ... ([a5ae096](https://github.com/jscad/csg.js/commit/a5ae096))
836
576
 
837
-
838
-
839
577
  <a name="0.1.3"></a>
840
578
  ## [0.1.3](https://github.com/jscad/csg.js/compare/v0.1.2...v0.1.3) (2017-01-27)
841
579
 
842
-
843
-
844
580
  <a name="0.1.2"></a>
845
581
  ## [0.1.2](https://github.com/jscad/csg.js/compare/v0.1.1...v0.1.2) (2017-01-27)
846
582
 
847
-
848
583
  ### Bug Fixes
849
584
 
850
585
  * **typo:** fixed typo in package name ([4f2aec6](https://github.com/jscad/csg.js/commit/4f2aec6))
851
586
 
852
-
853
-
854
587
  <a name="0.1.1"></a>
855
588
  ## [0.1.1](https://github.com/jscad/csg.js/compare/v0.1.0...v0.1.1) (2017-01-27)
856
589
 
857
-
858
590
  ### Bug Fixes
859
591
 
860
592
  * **babelrc:** added missing babelrc ([94f9684](https://github.com/jscad/csg.js/commit/94f9684))
861
593
  * **package:** removed part of package relevant to 'builds' ([7bf4815](https://github.com/jscad/csg.js/commit/7bf4815))
862
594
 
863
-
864
-
865
595
  <a name="0.1.0"></a>
866
596
  # [0.1.0](https://github.com/jscad/csg.js/compare/af6453c...v0.1.0) (2017-01-16)
867
597
 
868
-
869
598
  ### Bug Fixes
870
599
 
871
600
  * bools fail if cylinder resolution not integer. Solution: parse all resolution as int ([af6453c](https://github.com/jscad/csg.js/commit/af6453c))
872
601
  * **package:** fixed package name ([cbba148](https://github.com/jscad/csg.js/commit/cbba148))
873
602
 
874
-
875
603
  ### Features
876
604
 
877
605
  * **csg.js:** updated csg.js based on recent changes in OpenjSCAD.org ([db1d133](https://github.com/jscad/csg.js/commit/db1d133))