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