plotboilerplate 1.27.0 → 1.28.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.
- package/dist/index.esm.js +11286 -166
- package/dist/index.esm.js.map +1 -1
- package/dist/index.esm.min.js +1 -1
- package/dist/index.esm.min.js.map +1 -1
- package/dist/plotboilerplate.browser.min.js +1 -1
- package/dist/plotboilerplate.browser.min.js.map +1 -1
- package/dist/plotboilerplate.js +96 -17
- package/dist/plotboilerplate.min.js +1 -1
- package/package.json +2 -1
- package/src/_cjs/BezierPath.d.ts +610 -0
- package/src/_cjs/BezierPath.js +1127 -0
- package/src/_cjs/BezierPath.js.map +1 -0
- package/src/_cjs/Bounds.d.ts +252 -0
- package/src/_cjs/Bounds.js +320 -0
- package/src/_cjs/Bounds.js.map +1 -0
- package/src/_cjs/Circle.d.ts +214 -0
- package/src/_cjs/Circle.js +339 -0
- package/src/_cjs/Circle.js.map +1 -0
- package/src/_cjs/CircleSector.d.ts +211 -0
- package/src/_cjs/CircleSector.js +364 -0
- package/src/_cjs/CircleSector.js.map +1 -0
- package/src/_cjs/CubicBezierCurve.d.ts +656 -0
- package/src/_cjs/CubicBezierCurve.js +1062 -0
- package/src/_cjs/CubicBezierCurve.js.map +1 -0
- package/src/_cjs/Grid.d.ts +83 -0
- package/src/_cjs/Grid.js +90 -0
- package/src/_cjs/Grid.js.map +1 -0
- package/src/_cjs/KeyHandler.d.ts +177 -0
- package/src/_cjs/KeyHandler.js +435 -0
- package/src/_cjs/KeyHandler.js.map +1 -0
- package/src/_cjs/Line.d.ts +134 -0
- package/src/_cjs/Line.js +220 -0
- package/src/_cjs/Line.js.map +1 -0
- package/src/_cjs/MouseHandler.d.ts +283 -0
- package/src/_cjs/MouseHandler.js +423 -0
- package/src/_cjs/MouseHandler.js.map +1 -0
- package/src/_cjs/PBImage.d.ts +81 -0
- package/src/_cjs/PBImage.js +61 -0
- package/src/_cjs/PBImage.js.map +1 -0
- package/src/_cjs/PBText.d.ts +118 -0
- package/src/_cjs/PBText.js +63 -0
- package/src/_cjs/PBText.js.map +1 -0
- package/src/_cjs/PlotBoilerplate.d.ts +899 -0
- package/src/_cjs/PlotBoilerplate.js +2348 -0
- package/src/_cjs/PlotBoilerplate.js.map +1 -0
- package/src/_cjs/Polygon.d.ts +520 -0
- package/src/_cjs/Polygon.js +933 -0
- package/src/_cjs/Polygon.js.map +1 -0
- package/src/_cjs/SVGBuilder.d.ts +47 -0
- package/src/_cjs/SVGBuilder.js +100 -0
- package/src/_cjs/SVGBuilder.js.map +1 -0
- package/src/_cjs/Triangle.d.ts +392 -0
- package/src/_cjs/Triangle.js +497 -0
- package/src/_cjs/Triangle.js.map +1 -0
- package/src/_cjs/UIDGenerator.d.ts +12 -0
- package/src/_cjs/UIDGenerator.js +21 -0
- package/src/_cjs/UIDGenerator.js.map +1 -0
- package/src/_cjs/VEllipse.d.ts +319 -0
- package/src/_cjs/VEllipse.js +578 -0
- package/src/_cjs/VEllipse.js.map +1 -0
- package/src/_cjs/VEllipseSector.d.ts +230 -0
- package/src/_cjs/VEllipseSector.js +428 -0
- package/src/_cjs/VEllipseSector.js.map +1 -0
- package/src/_cjs/Vector.d.ts +126 -0
- package/src/_cjs/Vector.js +199 -0
- package/src/_cjs/Vector.js.map +1 -0
- package/src/_cjs/VertTuple.d.ts +284 -0
- package/src/_cjs/VertTuple.js +348 -0
- package/src/_cjs/VertTuple.js.map +1 -0
- package/src/_cjs/Vertex.d.ts +498 -0
- package/src/_cjs/Vertex.js +703 -0
- package/src/_cjs/Vertex.js.map +1 -0
- package/src/_cjs/VertexAttr.d.ts +72 -0
- package/src/_cjs/VertexAttr.js +59 -0
- package/src/_cjs/VertexAttr.js.map +1 -0
- package/src/_cjs/VertexListeners.d.ts +208 -0
- package/src/_cjs/VertexListeners.js +267 -0
- package/src/_cjs/VertexListeners.js.map +1 -0
- package/src/_cjs/draw.d.ts +657 -0
- package/src/_cjs/draw.js +1164 -0
- package/src/_cjs/draw.js.map +1 -0
- package/src/_cjs/drawgl.d.ts +544 -0
- package/src/_cjs/drawgl.js +794 -0
- package/src/_cjs/drawgl.js.map +1 -0
- package/src/_cjs/drawutilssvg.d.ts +954 -0
- package/src/_cjs/drawutilssvg.js +1713 -0
- package/src/_cjs/drawutilssvg.js.map +1 -0
- package/src/_cjs/entry-glsupport.js +28 -0
- package/src/_cjs/entry.js +29 -0
- package/src/_cjs/geomutils.d.ts +77 -0
- package/src/_cjs/geomutils.js +126 -0
- package/src/_cjs/geomutils.js.map +1 -0
- package/src/_cjs/index.d.ts +102 -0
- package/src/_cjs/index.js +128 -0
- package/src/_cjs/index.js.map +1 -0
- package/src/_cjs/interfaces/DrawLib.d.ts +582 -0
- package/src/_cjs/interfaces/DrawLib.js +32 -0
- package/src/_cjs/interfaces/DrawLib.js.map +1 -0
- package/src/_cjs/interfaces/additionals.d.ts +95 -0
- package/src/_cjs/interfaces/additionals.js +3 -0
- package/src/_cjs/interfaces/additionals.js.map +1 -0
- package/src/_cjs/interfaces/core.d.ts +286 -0
- package/src/_cjs/interfaces/core.js +30 -0
- package/src/_cjs/interfaces/core.js.map +1 -0
- package/src/_cjs/interfaces/externals.d.ts +56 -0
- package/src/_cjs/interfaces/externals.js +8 -0
- package/src/_cjs/interfaces/externals.js.map +1 -0
- package/src/_cjs/interfaces/index.d.ts +4 -0
- package/src/_cjs/interfaces/index.js +21 -0
- package/src/_cjs/interfaces/index.js.map +1 -0
- package/src/_cjs/module.d.ts +26 -0
- package/src/_cjs/module.js +60 -0
- package/src/_cjs/module.js.map +1 -0
- package/src/_cjs/utils/InitializationObserver.d.ts +18 -0
- package/src/_cjs/utils/InitializationObserver.js +63 -0
- package/src/_cjs/utils/InitializationObserver.js.map +1 -0
- package/src/_cjs/utils/LissajousFigure.d.ts +34 -0
- package/src/_cjs/utils/LissajousFigure.js +100 -0
- package/src/_cjs/utils/LissajousFigure.js.map +1 -0
- package/src/_cjs/utils/NGons.d.ts +13 -0
- package/src/_cjs/utils/NGons.js +36 -0
- package/src/_cjs/utils/NGons.js.map +1 -0
- package/src/_cjs/utils/Params.d.ts +17 -0
- package/src/_cjs/utils/Params.js +53 -0
- package/src/_cjs/utils/Params.js.map +1 -0
- package/src/_cjs/utils/PerlinNoise.d.ts +19 -0
- package/src/_cjs/utils/PerlinNoise.js +352 -0
- package/src/_cjs/utils/PerlinNoise.js.map +1 -0
- package/src/_cjs/utils/SVGPathUtils.d.ts +22 -0
- package/src/_cjs/utils/SVGPathUtils.js +45 -0
- package/src/_cjs/utils/SVGPathUtils.js.map +1 -0
- package/src/_cjs/utils/WebColors.d.ts +35 -0
- package/src/_cjs/utils/WebColors.js +58 -0
- package/src/_cjs/utils/WebColors.js.map +1 -0
- package/src/_cjs/utils/WebColorsContrast.d.ts +6 -0
- package/src/_cjs/utils/WebColorsContrast.js +12 -0
- package/src/_cjs/utils/WebColorsContrast.js.map +1 -0
- package/src/_cjs/utils/WebColorsMalachite.d.ts +12 -0
- package/src/_cjs/utils/WebColorsMalachite.js +28 -0
- package/src/_cjs/utils/WebColorsMalachite.js.map +1 -0
- package/src/_cjs/utils/algorithms/CatmullRomPath.d.ts +60 -0
- package/src/_cjs/utils/algorithms/CatmullRomPath.js +108 -0
- package/src/_cjs/utils/algorithms/CatmullRomPath.js.map +1 -0
- package/src/_cjs/utils/algorithms/CircleIntersections.d.ts +170 -0
- package/src/_cjs/utils/algorithms/CircleIntersections.js +310 -0
- package/src/_cjs/utils/algorithms/CircleIntersections.js.map +1 -0
- package/src/_cjs/utils/algorithms/ContourLineDetection.d.ts +150 -0
- package/src/_cjs/utils/algorithms/ContourLineDetection.js +367 -0
- package/src/_cjs/utils/algorithms/ContourLineDetection.js.map +1 -0
- package/src/_cjs/utils/algorithms/CubicSplinePath.d.ts +63 -0
- package/src/_cjs/utils/algorithms/CubicSplinePath.js +175 -0
- package/src/_cjs/utils/algorithms/CubicSplinePath.js.map +1 -0
- package/src/_cjs/utils/algorithms/HobbyPath.d.ts +81 -0
- package/src/_cjs/utils/algorithms/HobbyPath.js +278 -0
- package/src/_cjs/utils/algorithms/HobbyPath.js.map +1 -0
- package/src/_cjs/utils/algorithms/Metaballs.d.ts +30 -0
- package/src/_cjs/utils/algorithms/Metaballs.js +114 -0
- package/src/_cjs/utils/algorithms/Metaballs.js.map +1 -0
- package/src/_cjs/utils/algorithms/PolygonInset.d.ts +184 -0
- package/src/_cjs/utils/algorithms/PolygonInset.js +431 -0
- package/src/_cjs/utils/algorithms/PolygonInset.js.map +1 -0
- package/src/_cjs/utils/algorithms/PolygonTesselationOutlines.d.ts +145 -0
- package/src/_cjs/utils/algorithms/PolygonTesselationOutlines.js +269 -0
- package/src/_cjs/utils/algorithms/PolygonTesselationOutlines.js.map +1 -0
- package/src/_cjs/utils/algorithms/arrayFill.d.ts +8 -0
- package/src/_cjs/utils/algorithms/arrayFill.js +18 -0
- package/src/_cjs/utils/algorithms/arrayFill.js.map +1 -0
- package/src/_cjs/utils/algorithms/arrayResize.d.ts +8 -0
- package/src/_cjs/utils/algorithms/arrayResize.js +24 -0
- package/src/_cjs/utils/algorithms/arrayResize.js.map +1 -0
- package/src/_cjs/utils/algorithms/arrayShuffle.d.ts +8 -0
- package/src/_cjs/utils/algorithms/arrayShuffle.js +15 -0
- package/src/_cjs/utils/algorithms/arrayShuffle.js.map +1 -0
- package/src/_cjs/utils/algorithms/clearDuplicateVertices.d.ts +22 -0
- package/src/_cjs/utils/algorithms/clearDuplicateVertices.js +51 -0
- package/src/_cjs/utils/algorithms/clearDuplicateVertices.js.map +1 -0
- package/src/_cjs/utils/algorithms/clearPolygonDuplicateVertices.d.ts +24 -0
- package/src/_cjs/utils/algorithms/clearPolygonDuplicateVertices.js +61 -0
- package/src/_cjs/utils/algorithms/clearPolygonDuplicateVertices.js.map +1 -0
- package/src/_cjs/utils/algorithms/convexHull.d.ts +23 -0
- package/src/_cjs/utils/algorithms/convexHull.js +71 -0
- package/src/_cjs/utils/algorithms/convexHull.js.map +1 -0
- package/src/_cjs/utils/algorithms/convexPolygonIncircle.d.ts +41 -0
- package/src/_cjs/utils/algorithms/convexPolygonIncircle.js +145 -0
- package/src/_cjs/utils/algorithms/convexPolygonIncircle.js.map +1 -0
- package/src/_cjs/utils/algorithms/delaunay.d.ts +30 -0
- package/src/_cjs/utils/algorithms/delaunay.js +158 -0
- package/src/_cjs/utils/algorithms/delaunay.js.map +1 -0
- package/src/_cjs/utils/algorithms/delaunay2voronoi.d.ts +25 -0
- package/src/_cjs/utils/algorithms/delaunay2voronoi.js +104 -0
- package/src/_cjs/utils/algorithms/delaunay2voronoi.js.map +1 -0
- package/src/_cjs/utils/algorithms/detectPaths.d.ts +21 -0
- package/src/_cjs/utils/algorithms/detectPaths.js +169 -0
- package/src/_cjs/utils/algorithms/detectPaths.js.map +1 -0
- package/src/_cjs/utils/algorithms/findPolygonSelfIntersections.d.ts +21 -0
- package/src/_cjs/utils/algorithms/findPolygonSelfIntersections.js +51 -0
- package/src/_cjs/utils/algorithms/findPolygonSelfIntersections.js.map +1 -0
- package/src/_cjs/utils/algorithms/getContrastColor.d.ts +13 -0
- package/src/_cjs/utils/algorithms/getContrastColor.js +26 -0
- package/src/_cjs/utils/algorithms/getContrastColor.js.map +1 -0
- package/src/_cjs/utils/algorithms/matrixFill.d.ts +10 -0
- package/src/_cjs/utils/algorithms/matrixFill.js +21 -0
- package/src/_cjs/utils/algorithms/matrixFill.js.map +1 -0
- package/src/_cjs/utils/algorithms/pixelCornersToRoundPaths.d.ts +23 -0
- package/src/_cjs/utils/algorithms/pixelCornersToRoundPaths.js +270 -0
- package/src/_cjs/utils/algorithms/pixelCornersToRoundPaths.js.map +1 -0
- package/src/_cjs/utils/algorithms/splitPolygonToNonIntersecting.d.ts +28 -0
- package/src/_cjs/utils/algorithms/splitPolygonToNonIntersecting.js +102 -0
- package/src/_cjs/utils/algorithms/splitPolygonToNonIntersecting.js.map +1 -0
- package/src/_cjs/utils/algorithms/sutherlandHodgman.d.ts +16 -0
- package/src/_cjs/utils/algorithms/sutherlandHodgman.js +76 -0
- package/src/_cjs/utils/algorithms/sutherlandHodgman.js.map +1 -0
- package/src/_cjs/utils/cloneVertexArray.d.ts +13 -0
- package/src/_cjs/utils/cloneVertexArray.js +23 -0
- package/src/_cjs/utils/cloneVertexArray.js.map +1 -0
- package/src/_cjs/utils/createRandomizedPolygon.d.ts +14 -0
- package/src/_cjs/utils/createRandomizedPolygon.js +32 -0
- package/src/_cjs/utils/createRandomizedPolygon.js.map +1 -0
- package/src/_cjs/utils/creategui.js +434 -0
- package/src/_cjs/utils/dat.gui.arrowbounce.polyfill.js +128 -0
- package/src/_cjs/utils/dat.gui.title.polyfill.js +35 -0
- package/src/_cjs/utils/datastructures/CircularIntervalSet.d.ts +83 -0
- package/src/_cjs/utils/datastructures/CircularIntervalSet.js +163 -0
- package/src/_cjs/utils/datastructures/CircularIntervalSet.js.map +1 -0
- package/src/_cjs/utils/datastructures/Color.d.ts +391 -0
- package/src/_cjs/utils/datastructures/Color.js +1084 -0
- package/src/_cjs/utils/datastructures/Color.js.map +1 -0
- package/src/_cjs/utils/datastructures/ColorGradient.d.ts +81 -0
- package/src/_cjs/utils/datastructures/ColorGradient.js +176 -0
- package/src/_cjs/utils/datastructures/ColorGradient.js.map +1 -0
- package/src/_cjs/utils/datastructures/DataGrid2d.d.ts +53 -0
- package/src/_cjs/utils/datastructures/DataGrid2d.js +20 -0
- package/src/_cjs/utils/datastructures/DataGrid2d.js.map +1 -0
- package/src/_cjs/utils/datastructures/DataGrid2dArrayMatrix.d.ts +88 -0
- package/src/_cjs/utils/datastructures/DataGrid2dArrayMatrix.js +155 -0
- package/src/_cjs/utils/datastructures/DataGrid2dArrayMatrix.js.map +1 -0
- package/src/_cjs/utils/datastructures/DataGrid2dListAdapter.d.ts +59 -0
- package/src/_cjs/utils/datastructures/DataGrid2dListAdapter.js +84 -0
- package/src/_cjs/utils/datastructures/DataGrid2dListAdapter.js.map +1 -0
- package/src/_cjs/utils/datastructures/GenericPath.d.ts +86 -0
- package/src/_cjs/utils/datastructures/GenericPath.js +122 -0
- package/src/_cjs/utils/datastructures/GenericPath.js.map +1 -0
- package/src/_cjs/utils/datastructures/GeometryMesh.d.ts +49 -0
- package/src/_cjs/utils/datastructures/GeometryMesh.js +58 -0
- package/src/_cjs/utils/datastructures/GeometryMesh.js.map +1 -0
- package/src/_cjs/utils/datastructures/Girih.d.ts +181 -0
- package/src/_cjs/utils/datastructures/Girih.js +266 -0
- package/src/_cjs/utils/datastructures/Girih.js.map +1 -0
- package/src/_cjs/utils/datastructures/GirihBowtie.d.ts +37 -0
- package/src/_cjs/utils/datastructures/GirihBowtie.js +152 -0
- package/src/_cjs/utils/datastructures/GirihBowtie.js.map +1 -0
- package/src/_cjs/utils/datastructures/GirihDecagon.d.ts +52 -0
- package/src/_cjs/utils/datastructures/GirihDecagon.js +132 -0
- package/src/_cjs/utils/datastructures/GirihDecagon.js.map +1 -0
- package/src/_cjs/utils/datastructures/GirihHexagon.d.ts +39 -0
- package/src/_cjs/utils/datastructures/GirihHexagon.js +200 -0
- package/src/_cjs/utils/datastructures/GirihHexagon.js.map +1 -0
- package/src/_cjs/utils/datastructures/GirihPenroseRhombus.d.ts +46 -0
- package/src/_cjs/utils/datastructures/GirihPenroseRhombus.js +189 -0
- package/src/_cjs/utils/datastructures/GirihPenroseRhombus.js.map +1 -0
- package/src/_cjs/utils/datastructures/GirihPentagon.d.ts +37 -0
- package/src/_cjs/utils/datastructures/GirihPentagon.js +109 -0
- package/src/_cjs/utils/datastructures/GirihPentagon.js.map +1 -0
- package/src/_cjs/utils/datastructures/GirihRhombus.d.ts +38 -0
- package/src/_cjs/utils/datastructures/GirihRhombus.js +155 -0
- package/src/_cjs/utils/datastructures/GirihRhombus.js.map +1 -0
- package/src/_cjs/utils/datastructures/GirihTile.d.ts +283 -0
- package/src/_cjs/utils/datastructures/GirihTile.js +308 -0
- package/src/_cjs/utils/datastructures/GirihTile.js.map +1 -0
- package/src/_cjs/utils/datastructures/Matrix4x4.d.ts +244 -0
- package/src/_cjs/utils/datastructures/Matrix4x4.js +262 -0
- package/src/_cjs/utils/datastructures/Matrix4x4.js.map +1 -0
- package/src/_cjs/utils/datastructures/VoronoiCell.d.ts +122 -0
- package/src/_cjs/utils/datastructures/VoronoiCell.js +183 -0
- package/src/_cjs/utils/datastructures/VoronoiCell.js.map +1 -0
- package/src/_cjs/utils/datastructures/interfaces.d.ts +13 -0
- package/src/_cjs/utils/datastructures/interfaces.js +10 -0
- package/src/_cjs/utils/datastructures/interfaces.js.map +1 -0
- package/src/_cjs/utils/detectDarkMode.d.ts +10 -0
- package/src/_cjs/utils/detectDarkMode.js +41 -0
- package/src/_cjs/utils/detectDarkMode.js.map +1 -0
- package/src/_cjs/utils/dom/components/ColorGradientPicker.d.ts +246 -0
- package/src/_cjs/utils/dom/components/ColorGradientPicker.js +667 -0
- package/src/_cjs/utils/dom/components/ColorGradientPicker.js.map +1 -0
- package/src/_cjs/utils/dom/components/ColorGradientPickerJSX.d.ts +129 -0
- package/src/_cjs/utils/dom/components/ColorGradientPickerJSX.js +520 -0
- package/src/_cjs/utils/dom/components/ColorGradientPickerJSX.js.map +1 -0
- package/src/_cjs/utils/dom/components/ColorGradientSelector.d.ts +118 -0
- package/src/_cjs/utils/dom/components/ColorGradientSelector.js +327 -0
- package/src/_cjs/utils/dom/components/ColorGradientSelector.js.map +1 -0
- package/src/_cjs/utils/dom/components/Test.d.ts +7 -0
- package/src/_cjs/utils/dom/components/Test.js +30 -0
- package/src/_cjs/utils/dom/components/Test.js.map +1 -0
- package/src/_cjs/utils/dom/getAvailableContainerSpace.d.ts +2 -0
- package/src/_cjs/utils/dom/getAvailableContainerSpace.js +29 -0
- package/src/_cjs/utils/dom/getAvailableContainerSpace.js.map +1 -0
- package/src/_cjs/utils/dom/getFProp.d.ts +5 -0
- package/src/_cjs/utils/dom/getFProp.js +12 -0
- package/src/_cjs/utils/dom/getFProp.js.map +1 -0
- package/src/_cjs/utils/dom/guiSizeToggler.d.ts +18 -0
- package/src/_cjs/utils/dom/guiSizeToggler.js +44 -0
- package/src/_cjs/utils/dom/guiSizeToggler.js.map +1 -0
- package/src/_cjs/utils/findInVertexArray.d.ts +19 -0
- package/src/_cjs/utils/findInVertexArray.js +29 -0
- package/src/_cjs/utils/findInVertexArray.js.map +1 -0
- package/src/_cjs/utils/getFProp.d.ts +5 -0
- package/src/_cjs/utils/getFProp.js +12 -0
- package/src/_cjs/utils/getFProp.js.map +1 -0
- package/src/_cjs/utils/gup.d.ts +14 -0
- package/src/_cjs/utils/gup.js +31 -0
- package/src/_cjs/utils/gup.js.map +1 -0
- package/src/_cjs/utils/helpers/BezierPathInteractionHelper.d.ts +272 -0
- package/src/_cjs/utils/helpers/BezierPathInteractionHelper.js +655 -0
- package/src/_cjs/utils/helpers/BezierPathInteractionHelper.js.map +1 -0
- package/src/_cjs/utils/helpers/CircleHelper.d.ts +73 -0
- package/src/_cjs/utils/helpers/CircleHelper.js +93 -0
- package/src/_cjs/utils/helpers/CircleHelper.js.map +1 -0
- package/src/_cjs/utils/helpers/CircleSectorHelper.d.ts +90 -0
- package/src/_cjs/utils/helpers/CircleSectorHelper.js +114 -0
- package/src/_cjs/utils/helpers/CircleSectorHelper.js.map +1 -0
- package/src/_cjs/utils/helpers/TriangleHelper.d.ts +57 -0
- package/src/_cjs/utils/helpers/TriangleHelper.js +83 -0
- package/src/_cjs/utils/helpers/TriangleHelper.js.map +1 -0
- package/src/_cjs/utils/helpers/VEllipseHelper.d.ts +32 -0
- package/src/_cjs/utils/helpers/VEllipseHelper.js +88 -0
- package/src/_cjs/utils/helpers/VEllipseHelper.js.map +1 -0
- package/src/_cjs/utils/helpers/VEllipseSectorHelper.d.ts +52 -0
- package/src/_cjs/utils/helpers/VEllipseSectorHelper.js +135 -0
- package/src/_cjs/utils/helpers/VEllipseSectorHelper.js.map +1 -0
- package/src/_cjs/utils/io/DndFileHandler.d.ts +63 -0
- package/src/_cjs/utils/io/DndFileHandler.js +112 -0
- package/src/_cjs/utils/io/DndFileHandler.js.map +1 -0
- package/src/_cjs/utils/io/FileDrop.d.ts +110 -0
- package/src/_cjs/utils/io/FileDrop.js +177 -0
- package/src/_cjs/utils/io/FileDrop.js.map +1 -0
- package/src/_cjs/utils/lil.gui.arrowbounce.polyfill.js +133 -0
- package/src/_cjs/utils/lil.gui.title.polyfill.js +32 -0
- package/src/_cjs/utils/module.js +18 -0
- package/src/_cjs/utils/parsers/LinearColorGradientParser.d.ts +78 -0
- package/src/_cjs/utils/parsers/LinearColorGradientParser.js +224 -0
- package/src/_cjs/utils/parsers/LinearColorGradientParser.js.map +1 -0
- package/src/_cjs/utils/parsers/OBJParser.d.ts +24 -0
- package/src/_cjs/utils/parsers/OBJParser.js +77 -0
- package/src/_cjs/utils/parsers/OBJParser.js.map +1 -0
- package/src/_cjs/utils/parsers/STLParser.d.ts +61 -0
- package/src/_cjs/utils/parsers/STLParser.js +182 -0
- package/src/_cjs/utils/parsers/STLParser.js.map +1 -0
- package/src/_cjs/utils/parsers/svg/parseSVGPathData.d.ts +27 -0
- package/src/_cjs/utils/parsers/svg/parseSVGPathData.js +486 -0
- package/src/_cjs/utils/parsers/svg/parseSVGPathData.js.map +1 -0
- package/src/_cjs/utils/parsers/svg/splitSVGPathData.d.ts +20 -0
- package/src/_cjs/utils/parsers/svg/splitSVGPathData.js +53 -0
- package/src/_cjs/utils/parsers/svg/splitSVGPathData.js.map +1 -0
- package/src/_cjs/utils/parsers/svg/types.d.ts +63 -0
- package/src/_cjs/utils/parsers/svg/types.js +17 -0
- package/src/_cjs/utils/parsers/svg/types.js.map +1 -0
- package/src/_cjs/utils/ts-runner.js +146 -0
- package/src/_cjs/utils/tsAsyncScriptLoader.js +74 -0
- package/src/_esm/BezierPath.d.ts +610 -0
- package/src/_esm/BezierPath.js +1124 -0
- package/src/_esm/BezierPath.js.map +1 -0
- package/src/_esm/Bounds.d.ts +252 -0
- package/src/_esm/Bounds.js +317 -0
- package/src/_esm/Bounds.js.map +1 -0
- package/src/_esm/Circle.d.ts +214 -0
- package/src/_esm/Circle.js +335 -0
- package/src/_esm/Circle.js.map +1 -0
- package/src/_esm/CircleSector.d.ts +211 -0
- package/src/_esm/CircleSector.js +359 -0
- package/src/_esm/CircleSector.js.map +1 -0
- package/src/_esm/CubicBezierCurve.d.ts +656 -0
- package/src/_esm/CubicBezierCurve.js +1057 -0
- package/src/_esm/CubicBezierCurve.js.map +1 -0
- package/src/_esm/Grid.d.ts +83 -0
- package/src/_esm/Grid.js +89 -0
- package/src/_esm/Grid.js.map +1 -0
- package/src/_esm/KeyHandler.d.ts +177 -0
- package/src/_esm/KeyHandler.js +434 -0
- package/src/_esm/KeyHandler.js.map +1 -0
- package/src/_esm/Line.d.ts +134 -0
- package/src/_esm/Line.js +200 -0
- package/src/_esm/Line.js.map +1 -0
- package/src/_esm/MouseHandler.d.ts +283 -0
- package/src/_esm/MouseHandler.js +397 -0
- package/src/_esm/MouseHandler.js.map +1 -0
- package/src/_esm/PBImage.d.ts +81 -0
- package/src/_esm/PBImage.js +60 -0
- package/src/_esm/PBImage.js.map +1 -0
- package/src/_esm/PBText.d.ts +118 -0
- package/src/_esm/PBText.js +62 -0
- package/src/_esm/PBText.js.map +1 -0
- package/src/_esm/PlotBoilerplate.d.ts +899 -0
- package/src/_esm/PlotBoilerplate.js +2347 -0
- package/src/_esm/PlotBoilerplate.js.map +1 -0
- package/src/_esm/Polygon.d.ts +520 -0
- package/src/_esm/Polygon.js +924 -0
- package/src/_esm/Polygon.js.map +1 -0
- package/src/_esm/SVGBuilder.d.ts +47 -0
- package/src/_esm/SVGBuilder.js +95 -0
- package/src/_esm/SVGBuilder.js.map +1 -0
- package/src/_esm/Triangle.d.ts +392 -0
- package/src/_esm/Triangle.js +493 -0
- package/src/_esm/Triangle.js.map +1 -0
- package/src/_esm/UIDGenerator.d.ts +12 -0
- package/src/_esm/UIDGenerator.js +18 -0
- package/src/_esm/UIDGenerator.js.map +1 -0
- package/src/_esm/VEllipse.d.ts +319 -0
- package/src/_esm/VEllipse.js +574 -0
- package/src/_esm/VEllipse.js.map +1 -0
- package/src/_esm/VEllipseSector.d.ts +230 -0
- package/src/_esm/VEllipseSector.js +422 -0
- package/src/_esm/VEllipseSector.js.map +1 -0
- package/src/_esm/Vector.d.ts +126 -0
- package/src/_esm/Vector.js +181 -0
- package/src/_esm/Vector.js.map +1 -0
- package/src/_esm/VertTuple.d.ts +284 -0
- package/src/_esm/VertTuple.js +347 -0
- package/src/_esm/VertTuple.js.map +1 -0
- package/src/_esm/Vertex.d.ts +498 -0
- package/src/_esm/Vertex.js +702 -0
- package/src/_esm/Vertex.js.map +1 -0
- package/src/_esm/VertexAttr.d.ts +72 -0
- package/src/_esm/VertexAttr.js +58 -0
- package/src/_esm/VertexAttr.js.map +1 -0
- package/src/_esm/VertexListeners.d.ts +209 -0
- package/src/_esm/VertexListeners.js +270 -0
- package/src/_esm/VertexListeners.js.map +1 -0
- package/src/_esm/draw.d.ts +657 -0
- package/src/_esm/draw.js +1159 -0
- package/src/_esm/draw.js.map +1 -0
- package/src/_esm/drawgl.d.ts +544 -0
- package/src/_esm/drawgl.js +812 -0
- package/src/_esm/drawgl.js.map +1 -0
- package/src/_esm/drawutilssvg.d.ts +954 -0
- package/src/_esm/drawutilssvg.js +1705 -0
- package/src/_esm/drawutilssvg.js.map +1 -0
- package/src/_esm/entry-glsupport.js +28 -0
- package/src/_esm/entry.js +29 -0
- package/src/_esm/geomutils.d.ts +77 -0
- package/src/_esm/geomutils.js +126 -0
- package/src/_esm/geomutils.js.map +1 -0
- package/src/_esm/index.d.ts +102 -0
- package/src/_esm/index.js +128 -0
- package/src/_esm/index.js.map +1 -0
- package/src/_esm/interfaces/DrawLib.d.ts +582 -0
- package/src/_esm/interfaces/DrawLib.js +32 -0
- package/src/_esm/interfaces/DrawLib.js.map +1 -0
- package/src/_esm/interfaces/additionals.d.ts +95 -0
- package/src/_esm/interfaces/additionals.js +3 -0
- package/src/_esm/interfaces/additionals.js.map +1 -0
- package/src/_esm/interfaces/core.d.ts +286 -0
- package/src/_esm/interfaces/core.js +30 -0
- package/src/_esm/interfaces/core.js.map +1 -0
- package/src/_esm/interfaces/externals.d.ts +56 -0
- package/src/_esm/interfaces/externals.js +8 -0
- package/src/_esm/interfaces/externals.js.map +1 -0
- package/src/_esm/interfaces/index.d.ts +4 -0
- package/src/_esm/interfaces/index.js +21 -0
- package/src/_esm/interfaces/index.js.map +1 -0
- package/src/_esm/module.d.ts +26 -0
- package/src/_esm/module.js +60 -0
- package/src/_esm/module.js.map +1 -0
- package/src/_esm/src/ts/BezierPath.d.ts +610 -0
- package/src/_esm/src/ts/BezierPath.js +1120 -0
- package/src/_esm/src/ts/BezierPath.js.map +1 -0
- package/src/_esm/src/ts/Bounds.d.ts +252 -0
- package/src/_esm/src/ts/Bounds.js +313 -0
- package/src/_esm/src/ts/Bounds.js.map +1 -0
- package/src/_esm/src/ts/Circle.d.ts +214 -0
- package/src/_esm/src/ts/Circle.js +331 -0
- package/src/_esm/src/ts/Circle.js.map +1 -0
- package/src/_esm/src/ts/CircleSector.d.ts +211 -0
- package/src/_esm/src/ts/CircleSector.js +355 -0
- package/src/_esm/src/ts/CircleSector.js.map +1 -0
- package/src/_esm/src/ts/CubicBezierCurve.d.ts +656 -0
- package/src/_esm/src/ts/CubicBezierCurve.js +1053 -0
- package/src/_esm/src/ts/CubicBezierCurve.js.map +1 -0
- package/src/_esm/src/ts/Grid.d.ts +83 -0
- package/src/_esm/src/ts/Grid.js +85 -0
- package/src/_esm/src/ts/Grid.js.map +1 -0
- package/src/_esm/src/ts/KeyHandler.d.ts +177 -0
- package/src/_esm/src/ts/KeyHandler.js +430 -0
- package/src/_esm/src/ts/KeyHandler.js.map +1 -0
- package/src/_esm/src/ts/Line.d.ts +134 -0
- package/src/_esm/src/ts/Line.js +196 -0
- package/src/_esm/src/ts/Line.js.map +1 -0
- package/src/_esm/src/ts/MouseHandler.d.ts +283 -0
- package/src/_esm/src/ts/MouseHandler.js +391 -0
- package/src/_esm/src/ts/MouseHandler.js.map +1 -0
- package/src/_esm/src/ts/PBImage.d.ts +81 -0
- package/src/_esm/src/ts/PBImage.js +56 -0
- package/src/_esm/src/ts/PBImage.js.map +1 -0
- package/src/_esm/src/ts/PBText.d.ts +118 -0
- package/src/_esm/src/ts/PBText.js +58 -0
- package/src/_esm/src/ts/PBText.js.map +1 -0
- package/src/_esm/src/ts/PlotBoilerplate.d.ts +899 -0
- package/src/_esm/src/ts/PlotBoilerplate.js +2340 -0
- package/src/_esm/src/ts/PlotBoilerplate.js.map +1 -0
- package/src/_esm/src/ts/Polygon.d.ts +520 -0
- package/src/_esm/src/ts/Polygon.js +920 -0
- package/src/_esm/src/ts/Polygon.js.map +1 -0
- package/src/_esm/src/ts/Triangle.d.ts +392 -0
- package/src/_esm/src/ts/Triangle.js +489 -0
- package/src/_esm/src/ts/Triangle.js.map +1 -0
- package/src/_esm/src/ts/UIDGenerator.d.ts +12 -0
- package/src/_esm/src/ts/UIDGenerator.js +14 -0
- package/src/_esm/src/ts/UIDGenerator.js.map +1 -0
- package/src/_esm/src/ts/VEllipse.d.ts +319 -0
- package/src/_esm/src/ts/VEllipse.js +570 -0
- package/src/_esm/src/ts/VEllipse.js.map +1 -0
- package/src/_esm/src/ts/VEllipseSector.d.ts +230 -0
- package/src/_esm/src/ts/VEllipseSector.js +418 -0
- package/src/_esm/src/ts/VEllipseSector.js.map +1 -0
- package/src/_esm/src/ts/Vector.d.ts +126 -0
- package/src/_esm/src/ts/Vector.js +177 -0
- package/src/_esm/src/ts/Vector.js.map +1 -0
- package/src/_esm/src/ts/VertTuple.d.ts +284 -0
- package/src/_esm/src/ts/VertTuple.js +343 -0
- package/src/_esm/src/ts/VertTuple.js.map +1 -0
- package/src/_esm/src/ts/Vertex.d.ts +498 -0
- package/src/_esm/src/ts/Vertex.js +698 -0
- package/src/_esm/src/ts/Vertex.js.map +1 -0
- package/src/_esm/src/ts/VertexAttr.d.ts +72 -0
- package/src/_esm/src/ts/VertexAttr.js +54 -0
- package/src/_esm/src/ts/VertexAttr.js.map +1 -0
- package/src/_esm/src/ts/VertexListeners.d.ts +209 -0
- package/src/_esm/src/ts/VertexListeners.js +266 -0
- package/src/_esm/src/ts/VertexListeners.js.map +1 -0
- package/src/_esm/src/ts/draw.d.ts +657 -0
- package/src/_esm/src/ts/draw.js +1155 -0
- package/src/_esm/src/ts/draw.js.map +1 -0
- package/src/_esm/src/ts/drawgl.d.ts +544 -0
- package/src/_esm/src/ts/drawgl.js +808 -0
- package/src/_esm/src/ts/drawgl.js.map +1 -0
- package/src/_esm/src/ts/drawutilssvg.d.ts +954 -0
- package/src/_esm/src/ts/drawutilssvg.js +1701 -0
- package/src/_esm/src/ts/drawutilssvg.js.map +1 -0
- package/src/_esm/src/ts/geomutils.d.ts +77 -0
- package/src/_esm/src/ts/geomutils.js +123 -0
- package/src/_esm/src/ts/geomutils.js.map +1 -0
- package/src/_esm/src/ts/index.d.ts +102 -0
- package/src/_esm/src/ts/index.js +112 -0
- package/src/_esm/src/ts/index.js.map +1 -0
- package/src/_esm/src/ts/interfaces/DrawLib.d.ts +582 -0
- package/src/_esm/src/ts/interfaces/DrawLib.js +31 -0
- package/src/_esm/src/ts/interfaces/DrawLib.js.map +1 -0
- package/src/_esm/src/ts/interfaces/additionals.d.ts +95 -0
- package/src/_esm/src/ts/interfaces/additionals.js +2 -0
- package/src/_esm/src/ts/interfaces/additionals.js.map +1 -0
- package/src/_esm/src/ts/interfaces/core.d.ts +286 -0
- package/src/_esm/src/ts/interfaces/core.js +29 -0
- package/src/_esm/src/ts/interfaces/core.js.map +1 -0
- package/src/_esm/src/ts/interfaces/externals.d.ts +56 -0
- package/src/_esm/src/ts/interfaces/externals.js +7 -0
- package/src/_esm/src/ts/interfaces/externals.js.map +1 -0
- package/src/_esm/src/ts/interfaces/index.d.ts +4 -0
- package/src/_esm/src/ts/interfaces/index.js +5 -0
- package/src/_esm/src/ts/interfaces/index.js.map +1 -0
- package/src/_esm/src/ts/module.d.ts +26 -0
- package/src/_esm/src/ts/module.js +38 -0
- package/src/_esm/src/ts/module.js.map +1 -0
- package/src/_esm/src/ts/utils/InitializationObserver.d.ts +18 -0
- package/src/_esm/src/ts/utils/InitializationObserver.js +57 -0
- package/src/_esm/src/ts/utils/InitializationObserver.js.map +1 -0
- package/src/_esm/src/ts/utils/LissajousFigure.d.ts +34 -0
- package/src/_esm/src/ts/utils/LissajousFigure.js +95 -0
- package/src/_esm/src/ts/utils/LissajousFigure.js.map +1 -0
- package/src/_esm/src/ts/utils/NGons.d.ts +13 -0
- package/src/_esm/src/ts/utils/NGons.js +33 -0
- package/src/_esm/src/ts/utils/NGons.js.map +1 -0
- package/src/_esm/src/ts/utils/Params.d.ts +17 -0
- package/src/_esm/src/ts/utils/Params.js +48 -0
- package/src/_esm/src/ts/utils/Params.js.map +1 -0
- package/src/_esm/src/ts/utils/PerlinNoise.d.ts +19 -0
- package/src/_esm/src/ts/utils/PerlinNoise.js +346 -0
- package/src/_esm/src/ts/utils/PerlinNoise.js.map +1 -0
- package/src/_esm/src/ts/utils/SVGPathUtils.d.ts +22 -0
- package/src/_esm/src/ts/utils/SVGPathUtils.js +42 -0
- package/src/_esm/src/ts/utils/SVGPathUtils.js.map +1 -0
- package/src/_esm/src/ts/utils/WebColors.d.ts +35 -0
- package/src/_esm/src/ts/utils/WebColors.js +54 -0
- package/src/_esm/src/ts/utils/WebColors.js.map +1 -0
- package/src/_esm/src/ts/utils/WebColorsContrast.d.ts +6 -0
- package/src/_esm/src/ts/utils/WebColorsContrast.js +9 -0
- package/src/_esm/src/ts/utils/WebColorsContrast.js.map +1 -0
- package/src/_esm/src/ts/utils/WebColorsMalachite.d.ts +12 -0
- package/src/_esm/src/ts/utils/WebColorsMalachite.js +25 -0
- package/src/_esm/src/ts/utils/WebColorsMalachite.js.map +1 -0
- package/src/_esm/src/ts/utils/algorithms/CatmullRomPath.d.ts +60 -0
- package/src/_esm/src/ts/utils/algorithms/CatmullRomPath.js +103 -0
- package/src/_esm/src/ts/utils/algorithms/CatmullRomPath.js.map +1 -0
- package/src/_esm/src/ts/utils/algorithms/CircleIntersections.d.ts +170 -0
- package/src/_esm/src/ts/utils/algorithms/CircleIntersections.js +303 -0
- package/src/_esm/src/ts/utils/algorithms/CircleIntersections.js.map +1 -0
- package/src/_esm/src/ts/utils/algorithms/ContourLineDetection.d.ts +150 -0
- package/src/_esm/src/ts/utils/algorithms/ContourLineDetection.js +362 -0
- package/src/_esm/src/ts/utils/algorithms/ContourLineDetection.js.map +1 -0
- package/src/_esm/src/ts/utils/algorithms/CubicSplinePath.d.ts +63 -0
- package/src/_esm/src/ts/utils/algorithms/CubicSplinePath.js +170 -0
- package/src/_esm/src/ts/utils/algorithms/CubicSplinePath.js.map +1 -0
- package/src/_esm/src/ts/utils/algorithms/HobbyPath.d.ts +81 -0
- package/src/_esm/src/ts/utils/algorithms/HobbyPath.js +273 -0
- package/src/_esm/src/ts/utils/algorithms/HobbyPath.js.map +1 -0
- package/src/_esm/src/ts/utils/algorithms/Metaballs.d.ts +30 -0
- package/src/_esm/src/ts/utils/algorithms/Metaballs.js +109 -0
- package/src/_esm/src/ts/utils/algorithms/Metaballs.js.map +1 -0
- package/src/_esm/src/ts/utils/algorithms/PolygonInset.d.ts +184 -0
- package/src/_esm/src/ts/utils/algorithms/PolygonInset.js +424 -0
- package/src/_esm/src/ts/utils/algorithms/PolygonInset.js.map +1 -0
- package/src/_esm/src/ts/utils/algorithms/PolygonTesselationOutlines.d.ts +145 -0
- package/src/_esm/src/ts/utils/algorithms/PolygonTesselationOutlines.js +262 -0
- package/src/_esm/src/ts/utils/algorithms/PolygonTesselationOutlines.js.map +1 -0
- package/src/_esm/src/ts/utils/algorithms/arrayFill.d.ts +8 -0
- package/src/_esm/src/ts/utils/algorithms/arrayFill.js +14 -0
- package/src/_esm/src/ts/utils/algorithms/arrayFill.js.map +1 -0
- package/src/_esm/src/ts/utils/algorithms/arrayResize.d.ts +8 -0
- package/src/_esm/src/ts/utils/algorithms/arrayResize.js +20 -0
- package/src/_esm/src/ts/utils/algorithms/arrayResize.js.map +1 -0
- package/src/_esm/src/ts/utils/algorithms/arrayShuffle.d.ts +8 -0
- package/src/_esm/src/ts/utils/algorithms/arrayShuffle.js +11 -0
- package/src/_esm/src/ts/utils/algorithms/arrayShuffle.js.map +1 -0
- package/src/_esm/src/ts/utils/algorithms/clearDuplicateVertices.d.ts +22 -0
- package/src/_esm/src/ts/utils/algorithms/clearDuplicateVertices.js +47 -0
- package/src/_esm/src/ts/utils/algorithms/clearDuplicateVertices.js.map +1 -0
- package/src/_esm/src/ts/utils/algorithms/clearPolygonDuplicateVertices.d.ts +24 -0
- package/src/_esm/src/ts/utils/algorithms/clearPolygonDuplicateVertices.js +57 -0
- package/src/_esm/src/ts/utils/algorithms/clearPolygonDuplicateVertices.js.map +1 -0
- package/src/_esm/src/ts/utils/algorithms/convexHull.d.ts +23 -0
- package/src/_esm/src/ts/utils/algorithms/convexHull.js +67 -0
- package/src/_esm/src/ts/utils/algorithms/convexHull.js.map +1 -0
- package/src/_esm/src/ts/utils/algorithms/convexPolygonIncircle.d.ts +41 -0
- package/src/_esm/src/ts/utils/algorithms/convexPolygonIncircle.js +141 -0
- package/src/_esm/src/ts/utils/algorithms/convexPolygonIncircle.js.map +1 -0
- package/src/_esm/src/ts/utils/algorithms/delaunay.d.ts +30 -0
- package/src/_esm/src/ts/utils/algorithms/delaunay.js +153 -0
- package/src/_esm/src/ts/utils/algorithms/delaunay.js.map +1 -0
- package/src/_esm/src/ts/utils/algorithms/delaunay2voronoi.d.ts +25 -0
- package/src/_esm/src/ts/utils/algorithms/delaunay2voronoi.js +99 -0
- package/src/_esm/src/ts/utils/algorithms/delaunay2voronoi.js.map +1 -0
- package/src/_esm/src/ts/utils/algorithms/detectPaths.d.ts +21 -0
- package/src/_esm/src/ts/utils/algorithms/detectPaths.js +165 -0
- package/src/_esm/src/ts/utils/algorithms/detectPaths.js.map +1 -0
- package/src/_esm/src/ts/utils/algorithms/findPolygonSelfIntersections.d.ts +21 -0
- package/src/_esm/src/ts/utils/algorithms/findPolygonSelfIntersections.js +47 -0
- package/src/_esm/src/ts/utils/algorithms/findPolygonSelfIntersections.js.map +1 -0
- package/src/_esm/src/ts/utils/algorithms/getContrastColor.d.ts +13 -0
- package/src/_esm/src/ts/utils/algorithms/getContrastColor.js +22 -0
- package/src/_esm/src/ts/utils/algorithms/getContrastColor.js.map +1 -0
- package/src/_esm/src/ts/utils/algorithms/matrixFill.d.ts +10 -0
- package/src/_esm/src/ts/utils/algorithms/matrixFill.js +17 -0
- package/src/_esm/src/ts/utils/algorithms/matrixFill.js.map +1 -0
- package/src/_esm/src/ts/utils/algorithms/pixelCornersToRoundPaths.d.ts +23 -0
- package/src/_esm/src/ts/utils/algorithms/pixelCornersToRoundPaths.js +266 -0
- package/src/_esm/src/ts/utils/algorithms/pixelCornersToRoundPaths.js.map +1 -0
- package/src/_esm/src/ts/utils/algorithms/splitPolygonToNonIntersecting.d.ts +28 -0
- package/src/_esm/src/ts/utils/algorithms/splitPolygonToNonIntersecting.js +99 -0
- package/src/_esm/src/ts/utils/algorithms/splitPolygonToNonIntersecting.js.map +1 -0
- package/src/_esm/src/ts/utils/algorithms/sutherlandHodgman.d.ts +16 -0
- package/src/_esm/src/ts/utils/algorithms/sutherlandHodgman.js +72 -0
- package/src/_esm/src/ts/utils/algorithms/sutherlandHodgman.js.map +1 -0
- package/src/_esm/src/ts/utils/cloneVertexArray.d.ts +13 -0
- package/src/_esm/src/ts/utils/cloneVertexArray.js +19 -0
- package/src/_esm/src/ts/utils/cloneVertexArray.js.map +1 -0
- package/src/_esm/src/ts/utils/createRandomizedPolygon.d.ts +14 -0
- package/src/_esm/src/ts/utils/createRandomizedPolygon.js +28 -0
- package/src/_esm/src/ts/utils/createRandomizedPolygon.js.map +1 -0
- package/src/_esm/src/ts/utils/datastructures/CircularIntervalSet.d.ts +83 -0
- package/src/_esm/src/ts/utils/datastructures/CircularIntervalSet.js +158 -0
- package/src/_esm/src/ts/utils/datastructures/CircularIntervalSet.js.map +1 -0
- package/src/_esm/src/ts/utils/datastructures/Color.d.ts +391 -0
- package/src/_esm/src/ts/utils/datastructures/Color.js +1063 -0
- package/src/_esm/src/ts/utils/datastructures/Color.js.map +1 -0
- package/src/_esm/src/ts/utils/datastructures/ColorGradient.d.ts +81 -0
- package/src/_esm/src/ts/utils/datastructures/ColorGradient.js +171 -0
- package/src/_esm/src/ts/utils/datastructures/ColorGradient.js.map +1 -0
- package/src/_esm/src/ts/utils/datastructures/DataGrid2d.d.ts +53 -0
- package/src/_esm/src/ts/utils/datastructures/DataGrid2d.js +19 -0
- package/src/_esm/src/ts/utils/datastructures/DataGrid2d.js.map +1 -0
- package/src/_esm/src/ts/utils/datastructures/DataGrid2dArrayMatrix.d.ts +88 -0
- package/src/_esm/src/ts/utils/datastructures/DataGrid2dArrayMatrix.js +150 -0
- package/src/_esm/src/ts/utils/datastructures/DataGrid2dArrayMatrix.js.map +1 -0
- package/src/_esm/src/ts/utils/datastructures/DataGrid2dListAdapter.d.ts +59 -0
- package/src/_esm/src/ts/utils/datastructures/DataGrid2dListAdapter.js +79 -0
- package/src/_esm/src/ts/utils/datastructures/DataGrid2dListAdapter.js.map +1 -0
- package/src/_esm/src/ts/utils/datastructures/GenericPath.d.ts +86 -0
- package/src/_esm/src/ts/utils/datastructures/GenericPath.js +117 -0
- package/src/_esm/src/ts/utils/datastructures/GenericPath.js.map +1 -0
- package/src/_esm/src/ts/utils/datastructures/GeometryMesh.d.ts +49 -0
- package/src/_esm/src/ts/utils/datastructures/GeometryMesh.js +53 -0
- package/src/_esm/src/ts/utils/datastructures/GeometryMesh.js.map +1 -0
- package/src/_esm/src/ts/utils/datastructures/Girih.d.ts +181 -0
- package/src/_esm/src/ts/utils/datastructures/Girih.js +261 -0
- package/src/_esm/src/ts/utils/datastructures/Girih.js.map +1 -0
- package/src/_esm/src/ts/utils/datastructures/GirihBowtie.d.ts +37 -0
- package/src/_esm/src/ts/utils/datastructures/GirihBowtie.js +130 -0
- package/src/_esm/src/ts/utils/datastructures/GirihBowtie.js.map +1 -0
- package/src/_esm/src/ts/utils/datastructures/GirihDecagon.d.ts +52 -0
- package/src/_esm/src/ts/utils/datastructures/GirihDecagon.js +110 -0
- package/src/_esm/src/ts/utils/datastructures/GirihDecagon.js.map +1 -0
- package/src/_esm/src/ts/utils/datastructures/GirihHexagon.d.ts +39 -0
- package/src/_esm/src/ts/utils/datastructures/GirihHexagon.js +178 -0
- package/src/_esm/src/ts/utils/datastructures/GirihHexagon.js.map +1 -0
- package/src/_esm/src/ts/utils/datastructures/GirihPenroseRhombus.d.ts +46 -0
- package/src/_esm/src/ts/utils/datastructures/GirihPenroseRhombus.js +167 -0
- package/src/_esm/src/ts/utils/datastructures/GirihPenroseRhombus.js.map +1 -0
- package/src/_esm/src/ts/utils/datastructures/GirihPentagon.d.ts +37 -0
- package/src/_esm/src/ts/utils/datastructures/GirihPentagon.js +87 -0
- package/src/_esm/src/ts/utils/datastructures/GirihPentagon.js.map +1 -0
- package/src/_esm/src/ts/utils/datastructures/GirihRhombus.d.ts +38 -0
- package/src/_esm/src/ts/utils/datastructures/GirihRhombus.js +133 -0
- package/src/_esm/src/ts/utils/datastructures/GirihRhombus.js.map +1 -0
- package/src/_esm/src/ts/utils/datastructures/GirihTile.d.ts +283 -0
- package/src/_esm/src/ts/utils/datastructures/GirihTile.js +286 -0
- package/src/_esm/src/ts/utils/datastructures/GirihTile.js.map +1 -0
- package/src/_esm/src/ts/utils/datastructures/Matrix4x4.d.ts +244 -0
- package/src/_esm/src/ts/utils/datastructures/Matrix4x4.js +246 -0
- package/src/_esm/src/ts/utils/datastructures/Matrix4x4.js.map +1 -0
- package/src/_esm/src/ts/utils/datastructures/VoronoiCell.d.ts +122 -0
- package/src/_esm/src/ts/utils/datastructures/VoronoiCell.js +178 -0
- package/src/_esm/src/ts/utils/datastructures/VoronoiCell.js.map +1 -0
- package/src/_esm/src/ts/utils/datastructures/interfaces.d.ts +13 -0
- package/src/_esm/src/ts/utils/datastructures/interfaces.js +9 -0
- package/src/_esm/src/ts/utils/datastructures/interfaces.js.map +1 -0
- package/src/_esm/src/ts/utils/detectDarkMode.d.ts +10 -0
- package/src/_esm/src/ts/utils/detectDarkMode.js +37 -0
- package/src/_esm/src/ts/utils/detectDarkMode.js.map +1 -0
- package/src/_esm/src/ts/utils/dom/components/ColorGradientPicker.d.ts +246 -0
- package/src/_esm/src/ts/utils/dom/components/ColorGradientPicker.js +743 -0
- package/src/_esm/src/ts/utils/dom/components/ColorGradientPicker.js.map +1 -0
- package/src/_esm/src/ts/utils/dom/components/ColorGradientSelector.d.ts +118 -0
- package/src/_esm/src/ts/utils/dom/components/ColorGradientSelector.js +339 -0
- package/src/_esm/src/ts/utils/dom/components/ColorGradientSelector.js.map +1 -0
- package/src/_esm/src/ts/utils/dom/components/Test.d.ts +7 -0
- package/src/_esm/src/ts/utils/dom/components/Test.js +26 -0
- package/src/_esm/src/ts/utils/dom/components/Test.js.map +1 -0
- package/src/_esm/src/ts/utils/dom/getAvailableContainerSpace.d.ts +2 -0
- package/src/_esm/src/ts/utils/dom/getAvailableContainerSpace.js +25 -0
- package/src/_esm/src/ts/utils/dom/getAvailableContainerSpace.js.map +1 -0
- package/src/_esm/src/ts/utils/dom/getFProp.d.ts +5 -0
- package/src/_esm/src/ts/utils/dom/getFProp.js +8 -0
- package/src/_esm/src/ts/utils/dom/getFProp.js.map +1 -0
- package/src/_esm/src/ts/utils/dom/guiSizeToggler.d.ts +18 -0
- package/src/_esm/src/ts/utils/dom/guiSizeToggler.js +40 -0
- package/src/_esm/src/ts/utils/dom/guiSizeToggler.js.map +1 -0
- package/src/_esm/src/ts/utils/findInVertexArray.d.ts +19 -0
- package/src/_esm/src/ts/utils/findInVertexArray.js +25 -0
- package/src/_esm/src/ts/utils/findInVertexArray.js.map +1 -0
- package/src/_esm/src/ts/utils/gup.d.ts +14 -0
- package/src/_esm/src/ts/utils/gup.js +27 -0
- package/src/_esm/src/ts/utils/gup.js.map +1 -0
- package/src/_esm/src/ts/utils/helpers/BezierPathInteractionHelper.d.ts +272 -0
- package/src/_esm/src/ts/utils/helpers/BezierPathInteractionHelper.js +648 -0
- package/src/_esm/src/ts/utils/helpers/BezierPathInteractionHelper.js.map +1 -0
- package/src/_esm/src/ts/utils/helpers/CircleHelper.d.ts +73 -0
- package/src/_esm/src/ts/utils/helpers/CircleHelper.js +88 -0
- package/src/_esm/src/ts/utils/helpers/CircleHelper.js.map +1 -0
- package/src/_esm/src/ts/utils/helpers/CircleSectorHelper.d.ts +90 -0
- package/src/_esm/src/ts/utils/helpers/CircleSectorHelper.js +109 -0
- package/src/_esm/src/ts/utils/helpers/CircleSectorHelper.js.map +1 -0
- package/src/_esm/src/ts/utils/helpers/TriangleHelper.d.ts +57 -0
- package/src/_esm/src/ts/utils/helpers/TriangleHelper.js +78 -0
- package/src/_esm/src/ts/utils/helpers/TriangleHelper.js.map +1 -0
- package/src/_esm/src/ts/utils/helpers/VEllipseHelper.d.ts +32 -0
- package/src/_esm/src/ts/utils/helpers/VEllipseHelper.js +83 -0
- package/src/_esm/src/ts/utils/helpers/VEllipseHelper.js.map +1 -0
- package/src/_esm/src/ts/utils/helpers/VEllipseSectorHelper.d.ts +52 -0
- package/src/_esm/src/ts/utils/helpers/VEllipseSectorHelper.js +130 -0
- package/src/_esm/src/ts/utils/helpers/VEllipseSectorHelper.js.map +1 -0
- package/src/_esm/src/ts/utils/io/FileDrop.d.ts +110 -0
- package/src/_esm/src/ts/utils/io/FileDrop.js +171 -0
- package/src/_esm/src/ts/utils/io/FileDrop.js.map +1 -0
- package/src/_esm/src/ts/utils/parsers/LinearColorGradientParser.d.ts +78 -0
- package/src/_esm/src/ts/utils/parsers/LinearColorGradientParser.js +217 -0
- package/src/_esm/src/ts/utils/parsers/LinearColorGradientParser.js.map +1 -0
- package/src/_esm/src/ts/utils/parsers/OBJParser.d.ts +24 -0
- package/src/_esm/src/ts/utils/parsers/OBJParser.js +72 -0
- package/src/_esm/src/ts/utils/parsers/OBJParser.js.map +1 -0
- package/src/_esm/src/ts/utils/parsers/STLParser.d.ts +61 -0
- package/src/_esm/src/ts/utils/parsers/STLParser.js +175 -0
- package/src/_esm/src/ts/utils/parsers/STLParser.js.map +1 -0
- package/src/_esm/src/ts/utils/parsers/svg/parseSVGPathData.d.ts +27 -0
- package/src/_esm/src/ts/utils/parsers/svg/parseSVGPathData.js +482 -0
- package/src/_esm/src/ts/utils/parsers/svg/parseSVGPathData.js.map +1 -0
- package/src/_esm/src/ts/utils/parsers/svg/splitSVGPathData.d.ts +20 -0
- package/src/_esm/src/ts/utils/parsers/svg/splitSVGPathData.js +49 -0
- package/src/_esm/src/ts/utils/parsers/svg/splitSVGPathData.js.map +1 -0
- package/src/_esm/src/ts/utils/parsers/svg/types.d.ts +63 -0
- package/src/_esm/src/ts/utils/parsers/svg/types.js +16 -0
- package/src/_esm/src/ts/utils/parsers/svg/types.js.map +1 -0
- package/src/_esm/utils/InitializationObserver.d.ts +18 -0
- package/src/_esm/utils/InitializationObserver.js +61 -0
- package/src/_esm/utils/InitializationObserver.js.map +1 -0
- package/src/_esm/utils/LissajousFigure.d.ts +34 -0
- package/src/_esm/utils/LissajousFigure.js +99 -0
- package/src/_esm/utils/LissajousFigure.js.map +1 -0
- package/src/_esm/utils/NGons.d.ts +13 -0
- package/src/_esm/utils/NGons.js +36 -0
- package/src/_esm/utils/NGons.js.map +1 -0
- package/src/_esm/utils/Params.d.ts +17 -0
- package/src/_esm/utils/Params.js +52 -0
- package/src/_esm/utils/Params.js.map +1 -0
- package/src/_esm/utils/PerlinNoise.d.ts +19 -0
- package/src/_esm/utils/PerlinNoise.js +350 -0
- package/src/_esm/utils/PerlinNoise.js.map +1 -0
- package/src/_esm/utils/SVGPathUtils.d.ts +22 -0
- package/src/_esm/utils/SVGPathUtils.js +45 -0
- package/src/_esm/utils/SVGPathUtils.js.map +1 -0
- package/src/_esm/utils/WebColors.d.ts +35 -0
- package/src/_esm/utils/WebColors.js +58 -0
- package/src/_esm/utils/WebColors.js.map +1 -0
- package/src/_esm/utils/WebColorsContrast.d.ts +6 -0
- package/src/_esm/utils/WebColorsContrast.js +12 -0
- package/src/_esm/utils/WebColorsContrast.js.map +1 -0
- package/src/_esm/utils/WebColorsMalachite.d.ts +12 -0
- package/src/_esm/utils/WebColorsMalachite.js +28 -0
- package/src/_esm/utils/WebColorsMalachite.js.map +1 -0
- package/src/_esm/utils/algorithms/CatmullRomPath.d.ts +60 -0
- package/src/_esm/utils/algorithms/CatmullRomPath.js +107 -0
- package/src/_esm/utils/algorithms/CatmullRomPath.js.map +1 -0
- package/src/_esm/utils/algorithms/CircleIntersections.d.ts +170 -0
- package/src/_esm/utils/algorithms/CircleIntersections.js +307 -0
- package/src/_esm/utils/algorithms/CircleIntersections.js.map +1 -0
- package/src/_esm/utils/algorithms/ContourLineDetection.d.ts +150 -0
- package/src/_esm/utils/algorithms/ContourLineDetection.js +366 -0
- package/src/_esm/utils/algorithms/ContourLineDetection.js.map +1 -0
- package/src/_esm/utils/algorithms/CubicSplinePath.d.ts +63 -0
- package/src/_esm/utils/algorithms/CubicSplinePath.js +174 -0
- package/src/_esm/utils/algorithms/CubicSplinePath.js.map +1 -0
- package/src/_esm/utils/algorithms/HobbyPath.d.ts +81 -0
- package/src/_esm/utils/algorithms/HobbyPath.js +277 -0
- package/src/_esm/utils/algorithms/HobbyPath.js.map +1 -0
- package/src/_esm/utils/algorithms/Metaballs.d.ts +30 -0
- package/src/_esm/utils/algorithms/Metaballs.js +113 -0
- package/src/_esm/utils/algorithms/Metaballs.js.map +1 -0
- package/src/_esm/utils/algorithms/PolygonInset.d.ts +184 -0
- package/src/_esm/utils/algorithms/PolygonInset.js +428 -0
- package/src/_esm/utils/algorithms/PolygonInset.js.map +1 -0
- package/src/_esm/utils/algorithms/PolygonTesselationOutlines.d.ts +145 -0
- package/src/_esm/utils/algorithms/PolygonTesselationOutlines.js +267 -0
- package/src/_esm/utils/algorithms/PolygonTesselationOutlines.js.map +1 -0
- package/src/_esm/utils/algorithms/arrayFill.d.ts +8 -0
- package/src/_esm/utils/algorithms/arrayFill.js +18 -0
- package/src/_esm/utils/algorithms/arrayFill.js.map +1 -0
- package/src/_esm/utils/algorithms/arrayResize.d.ts +8 -0
- package/src/_esm/utils/algorithms/arrayResize.js +24 -0
- package/src/_esm/utils/algorithms/arrayResize.js.map +1 -0
- package/src/_esm/utils/algorithms/arrayShuffle.d.ts +8 -0
- package/src/_esm/utils/algorithms/arrayShuffle.js +15 -0
- package/src/_esm/utils/algorithms/arrayShuffle.js.map +1 -0
- package/src/_esm/utils/algorithms/clearDuplicateVertices.d.ts +22 -0
- package/src/_esm/utils/algorithms/clearDuplicateVertices.js +51 -0
- package/src/_esm/utils/algorithms/clearDuplicateVertices.js.map +1 -0
- package/src/_esm/utils/algorithms/clearPolygonDuplicateVertices.d.ts +24 -0
- package/src/_esm/utils/algorithms/clearPolygonDuplicateVertices.js +61 -0
- package/src/_esm/utils/algorithms/clearPolygonDuplicateVertices.js.map +1 -0
- package/src/_esm/utils/algorithms/convexHull.d.ts +23 -0
- package/src/_esm/utils/algorithms/convexHull.js +71 -0
- package/src/_esm/utils/algorithms/convexHull.js.map +1 -0
- package/src/_esm/utils/algorithms/convexPolygonIncircle.d.ts +41 -0
- package/src/_esm/utils/algorithms/convexPolygonIncircle.js +145 -0
- package/src/_esm/utils/algorithms/convexPolygonIncircle.js.map +1 -0
- package/src/_esm/utils/algorithms/createRandomizedPolygon.d.ts +14 -0
- package/src/_esm/utils/algorithms/createRandomizedPolygon.js +28 -0
- package/src/_esm/utils/algorithms/createRandomizedPolygon.js.map +1 -0
- package/src/_esm/utils/algorithms/delaunay.d.ts +30 -0
- package/src/_esm/utils/algorithms/delaunay.js +157 -0
- package/src/_esm/utils/algorithms/delaunay.js.map +1 -0
- package/src/_esm/utils/algorithms/delaunay2voronoi.d.ts +25 -0
- package/src/_esm/utils/algorithms/delaunay2voronoi.js +103 -0
- package/src/_esm/utils/algorithms/delaunay2voronoi.js.map +1 -0
- package/src/_esm/utils/algorithms/detectPaths.d.ts +21 -0
- package/src/_esm/utils/algorithms/detectPaths.js +169 -0
- package/src/_esm/utils/algorithms/detectPaths.js.map +1 -0
- package/src/_esm/utils/algorithms/findPolygonSelfIntersections.d.ts +21 -0
- package/src/_esm/utils/algorithms/findPolygonSelfIntersections.js +51 -0
- package/src/_esm/utils/algorithms/findPolygonSelfIntersections.js.map +1 -0
- package/src/_esm/utils/algorithms/getContrastColor.d.ts +13 -0
- package/src/_esm/utils/algorithms/getContrastColor.js +26 -0
- package/src/_esm/utils/algorithms/getContrastColor.js.map +1 -0
- package/src/_esm/utils/algorithms/matrixFill.d.ts +10 -0
- package/src/_esm/utils/algorithms/matrixFill.js +21 -0
- package/src/_esm/utils/algorithms/matrixFill.js.map +1 -0
- package/src/_esm/utils/algorithms/pixelCornersToRoundPaths.d.ts +23 -0
- package/src/_esm/utils/algorithms/pixelCornersToRoundPaths.js +270 -0
- package/src/_esm/utils/algorithms/pixelCornersToRoundPaths.js.map +1 -0
- package/src/_esm/utils/algorithms/splitPolygonToNonIntersecting.d.ts +28 -0
- package/src/_esm/utils/algorithms/splitPolygonToNonIntersecting.js +102 -0
- package/src/_esm/utils/algorithms/splitPolygonToNonIntersecting.js.map +1 -0
- package/src/_esm/utils/algorithms/sutherlandHodgman.d.ts +16 -0
- package/src/_esm/utils/algorithms/sutherlandHodgman.js +76 -0
- package/src/_esm/utils/algorithms/sutherlandHodgman.js.map +1 -0
- package/src/_esm/utils/cloneVertexArray.d.ts +13 -0
- package/src/_esm/utils/cloneVertexArray.js +23 -0
- package/src/_esm/utils/cloneVertexArray.js.map +1 -0
- package/src/_esm/utils/createRandomizedPolygon.d.ts +14 -0
- package/src/_esm/utils/createRandomizedPolygon.js +32 -0
- package/src/_esm/utils/createRandomizedPolygon.js.map +1 -0
- package/src/_esm/utils/datastructures/CircularIntervalSet.d.ts +83 -0
- package/src/_esm/utils/datastructures/CircularIntervalSet.js +162 -0
- package/src/_esm/utils/datastructures/CircularIntervalSet.js.map +1 -0
- package/src/_esm/utils/datastructures/Color.d.ts +391 -0
- package/src/_esm/utils/datastructures/Color.js +1067 -0
- package/src/_esm/utils/datastructures/Color.js.map +1 -0
- package/src/_esm/utils/datastructures/ColorGradient.d.ts +81 -0
- package/src/_esm/utils/datastructures/ColorGradient.js +175 -0
- package/src/_esm/utils/datastructures/ColorGradient.js.map +1 -0
- package/src/_esm/utils/datastructures/DataGrid2d.d.ts +53 -0
- package/src/_esm/utils/datastructures/DataGrid2d.js +20 -0
- package/src/_esm/utils/datastructures/DataGrid2d.js.map +1 -0
- package/src/_esm/utils/datastructures/DataGrid2dArrayMatrix.d.ts +88 -0
- package/src/_esm/utils/datastructures/DataGrid2dArrayMatrix.js +154 -0
- package/src/_esm/utils/datastructures/DataGrid2dArrayMatrix.js.map +1 -0
- package/src/_esm/utils/datastructures/DataGrid2dListAdapter.d.ts +59 -0
- package/src/_esm/utils/datastructures/DataGrid2dListAdapter.js +83 -0
- package/src/_esm/utils/datastructures/DataGrid2dListAdapter.js.map +1 -0
- package/src/_esm/utils/datastructures/GenericPath.d.ts +86 -0
- package/src/_esm/utils/datastructures/GenericPath.js +121 -0
- package/src/_esm/utils/datastructures/GenericPath.js.map +1 -0
- package/src/_esm/utils/datastructures/GeometryMesh.d.ts +49 -0
- package/src/_esm/utils/datastructures/GeometryMesh.js +57 -0
- package/src/_esm/utils/datastructures/GeometryMesh.js.map +1 -0
- package/src/_esm/utils/datastructures/Girih.d.ts +181 -0
- package/src/_esm/utils/datastructures/Girih.js +265 -0
- package/src/_esm/utils/datastructures/Girih.js.map +1 -0
- package/src/_esm/utils/datastructures/GirihBowtie.d.ts +37 -0
- package/src/_esm/utils/datastructures/GirihBowtie.js +134 -0
- package/src/_esm/utils/datastructures/GirihBowtie.js.map +1 -0
- package/src/_esm/utils/datastructures/GirihDecagon.d.ts +52 -0
- package/src/_esm/utils/datastructures/GirihDecagon.js +114 -0
- package/src/_esm/utils/datastructures/GirihDecagon.js.map +1 -0
- package/src/_esm/utils/datastructures/GirihHexagon.d.ts +39 -0
- package/src/_esm/utils/datastructures/GirihHexagon.js +182 -0
- package/src/_esm/utils/datastructures/GirihHexagon.js.map +1 -0
- package/src/_esm/utils/datastructures/GirihPenroseRhombus.d.ts +46 -0
- package/src/_esm/utils/datastructures/GirihPenroseRhombus.js +171 -0
- package/src/_esm/utils/datastructures/GirihPenroseRhombus.js.map +1 -0
- package/src/_esm/utils/datastructures/GirihPentagon.d.ts +37 -0
- package/src/_esm/utils/datastructures/GirihPentagon.js +91 -0
- package/src/_esm/utils/datastructures/GirihPentagon.js.map +1 -0
- package/src/_esm/utils/datastructures/GirihRhombus.d.ts +38 -0
- package/src/_esm/utils/datastructures/GirihRhombus.js +137 -0
- package/src/_esm/utils/datastructures/GirihRhombus.js.map +1 -0
- package/src/_esm/utils/datastructures/GirihTile.d.ts +283 -0
- package/src/_esm/utils/datastructures/GirihTile.js +290 -0
- package/src/_esm/utils/datastructures/GirihTile.js.map +1 -0
- package/src/_esm/utils/datastructures/Matrix4x4.d.ts +244 -0
- package/src/_esm/utils/datastructures/Matrix4x4.js +250 -0
- package/src/_esm/utils/datastructures/Matrix4x4.js.map +1 -0
- package/src/_esm/utils/datastructures/VoronoiCell.d.ts +122 -0
- package/src/_esm/utils/datastructures/VoronoiCell.js +182 -0
- package/src/_esm/utils/datastructures/VoronoiCell.js.map +1 -0
- package/src/_esm/utils/datastructures/interfaces.d.ts +13 -0
- package/src/_esm/utils/datastructures/interfaces.js +10 -0
- package/src/_esm/utils/datastructures/interfaces.js.map +1 -0
- package/src/_esm/utils/detectDarkMode.d.ts +10 -0
- package/src/_esm/utils/detectDarkMode.js +41 -0
- package/src/_esm/utils/detectDarkMode.js.map +1 -0
- package/src/_esm/utils/dom/components/ColorGradientPicker.d.ts +246 -0
- package/src/_esm/utils/dom/components/ColorGradientPicker.js +780 -0
- package/src/_esm/utils/dom/components/ColorGradientPicker.js.map +1 -0
- package/src/_esm/utils/dom/components/ColorGradientPickerJSX.d.ts +129 -0
- package/src/_esm/utils/dom/components/ColorGradientPickerJSX.js +582 -0
- package/src/_esm/utils/dom/components/ColorGradientPickerJSX.js.map +1 -0
- package/src/_esm/utils/dom/components/ColorGradientSelector.d.ts +118 -0
- package/src/_esm/utils/dom/components/ColorGradientSelector.js +376 -0
- package/src/_esm/utils/dom/components/ColorGradientSelector.js.map +1 -0
- package/src/_esm/utils/dom/components/Test.d.ts +7 -0
- package/src/_esm/utils/dom/components/Test.js +63 -0
- package/src/_esm/utils/dom/components/Test.js.map +1 -0
- package/src/_esm/utils/dom/getAvailableContainerSpace.d.ts +2 -0
- package/src/_esm/utils/dom/getAvailableContainerSpace.js +29 -0
- package/src/_esm/utils/dom/getAvailableContainerSpace.js.map +1 -0
- package/src/_esm/utils/dom/getFProp.d.ts +5 -0
- package/src/_esm/utils/dom/getFProp.js +12 -0
- package/src/_esm/utils/dom/getFProp.js.map +1 -0
- package/src/_esm/utils/dom/guiSizeToggler.d.ts +18 -0
- package/src/_esm/utils/dom/guiSizeToggler.js +44 -0
- package/src/_esm/utils/dom/guiSizeToggler.js.map +1 -0
- package/src/_esm/utils/findInVertexArray.d.ts +19 -0
- package/src/_esm/utils/findInVertexArray.js +29 -0
- package/src/_esm/utils/findInVertexArray.js.map +1 -0
- package/src/_esm/utils/getFProp.d.ts +5 -0
- package/src/_esm/utils/getFProp.js +8 -0
- package/src/_esm/utils/getFProp.js.map +1 -0
- package/src/_esm/utils/gup.d.ts +14 -0
- package/src/_esm/utils/gup.js +31 -0
- package/src/_esm/utils/gup.js.map +1 -0
- package/src/_esm/utils/helpers/BezierPathInteractionHelper.d.ts +272 -0
- package/src/_esm/utils/helpers/BezierPathInteractionHelper.js +655 -0
- package/src/_esm/utils/helpers/BezierPathInteractionHelper.js.map +1 -0
- package/src/_esm/utils/helpers/CircleHelper.d.ts +73 -0
- package/src/_esm/utils/helpers/CircleHelper.js +92 -0
- package/src/_esm/utils/helpers/CircleHelper.js.map +1 -0
- package/src/_esm/utils/helpers/CircleSectorHelper.d.ts +90 -0
- package/src/_esm/utils/helpers/CircleSectorHelper.js +113 -0
- package/src/_esm/utils/helpers/CircleSectorHelper.js.map +1 -0
- package/src/_esm/utils/helpers/TriangleHelper.d.ts +57 -0
- package/src/_esm/utils/helpers/TriangleHelper.js +82 -0
- package/src/_esm/utils/helpers/TriangleHelper.js.map +1 -0
- package/src/_esm/utils/helpers/VEllipseHelper.d.ts +32 -0
- package/src/_esm/utils/helpers/VEllipseHelper.js +87 -0
- package/src/_esm/utils/helpers/VEllipseHelper.js.map +1 -0
- package/src/_esm/utils/helpers/VEllipseSectorHelper.d.ts +52 -0
- package/src/_esm/utils/helpers/VEllipseSectorHelper.js +134 -0
- package/src/_esm/utils/helpers/VEllipseSectorHelper.js.map +1 -0
- package/src/_esm/utils/io/DndFileHandler.d.ts +63 -0
- package/src/_esm/utils/io/DndFileHandler.js +106 -0
- package/src/_esm/utils/io/DndFileHandler.js.map +1 -0
- package/src/_esm/utils/io/FileDrop.d.ts +110 -0
- package/src/_esm/utils/io/FileDrop.js +175 -0
- package/src/_esm/utils/io/FileDrop.js.map +1 -0
- package/src/_esm/utils/parsers/LinearColorGradientParser.d.ts +78 -0
- package/src/_esm/utils/parsers/LinearColorGradientParser.js +223 -0
- package/src/_esm/utils/parsers/LinearColorGradientParser.js.map +1 -0
- package/src/_esm/utils/parsers/OBJParser.d.ts +25 -0
- package/src/_esm/utils/parsers/OBJParser.js +78 -0
- package/src/_esm/utils/parsers/OBJParser.js.map +1 -0
- package/src/_esm/utils/parsers/STLParser.d.ts +61 -0
- package/src/_esm/utils/parsers/STLParser.js +179 -0
- package/src/_esm/utils/parsers/STLParser.js.map +1 -0
- package/src/_esm/utils/parsers/svg/parseSVGPathData.d.ts +27 -0
- package/src/_esm/utils/parsers/svg/parseSVGPathData.js +486 -0
- package/src/_esm/utils/parsers/svg/parseSVGPathData.js.map +1 -0
- package/src/_esm/utils/parsers/svg/splitSVGPathData.d.ts +20 -0
- package/src/_esm/utils/parsers/svg/splitSVGPathData.js +53 -0
- package/src/_esm/utils/parsers/svg/splitSVGPathData.js.map +1 -0
- package/src/_esm/utils/parsers/svg/types.d.ts +63 -0
- package/src/_esm/utils/parsers/svg/types.js +17 -0
- package/src/_esm/utils/parsers/svg/types.js.map +1 -0
- package/src/cjs/PlotBoilerplate.d.ts +11 -1
- package/src/cjs/PlotBoilerplate.js +23 -7
- package/src/cjs/PlotBoilerplate.js.map +1 -1
- package/src/cjs/VertexListeners.d.ts +2 -1
- package/src/cjs/VertexListeners.js +5 -1
- package/src/cjs/VertexListeners.js.map +1 -1
- package/src/cjs/draw.d.ts +18 -2
- package/src/cjs/draw.js +21 -2
- package/src/cjs/draw.js.map +1 -1
- package/src/cjs/drawgl.d.ts +18 -3
- package/src/cjs/drawgl.js +19 -2
- package/src/cjs/drawgl.js.map +1 -1
- package/src/cjs/drawutilssvg.d.ts +19 -1
- package/src/cjs/drawutilssvg.js +28 -5
- package/src/cjs/drawutilssvg.js.map +1 -1
- package/src/cjs/index.d.ts +75 -0
- package/src/cjs/index.js +84 -0
- package/src/cjs/index.js.map +1 -1
- package/src/cjs/interfaces/DrawLib.d.ts +18 -1
- package/src/cjs/interfaces/DrawLib.js +2 -0
- package/src/cjs/interfaces/DrawLib.js.map +1 -1
- package/src/cjs/utils/Params.d.ts +3 -2
- package/src/cjs/utils/Params.js +11 -3
- package/src/cjs/utils/Params.js.map +1 -1
- package/src/cjs/utils/WebColors.d.ts +2 -1
- package/src/cjs/utils/WebColors.js +15 -2
- package/src/cjs/utils/WebColors.js.map +1 -1
- package/src/cjs/utils/WebColorsContrast.d.ts +1 -1
- package/src/cjs/utils/algorithms/HobbyPath.js +13 -16
- package/src/cjs/utils/algorithms/HobbyPath.js.map +1 -1
- package/src/cjs/utils/helpers/BezierResizeHelper.d.ts +144 -0
- package/src/cjs/utils/helpers/BezierResizeHelper.js +319 -0
- package/src/cjs/utils/helpers/BezierResizeHelper.js.map +1 -0
- package/src/esm/PlotBoilerplate.d.ts +11 -1
- package/src/esm/PlotBoilerplate.js +23 -7
- package/src/esm/PlotBoilerplate.js.map +1 -1
- package/src/esm/VertexListeners.d.ts +2 -1
- package/src/esm/VertexListeners.js +5 -1
- package/src/esm/VertexListeners.js.map +1 -1
- package/src/esm/draw.d.ts +18 -2
- package/src/esm/draw.js +21 -2
- package/src/esm/draw.js.map +1 -1
- package/src/esm/drawgl.d.ts +18 -3
- package/src/esm/drawgl.js +19 -2
- package/src/esm/drawgl.js.map +1 -1
- package/src/esm/drawutilssvg.d.ts +19 -1
- package/src/esm/drawutilssvg.js +28 -5
- package/src/esm/drawutilssvg.js.map +1 -1
- package/src/esm/index.d.ts +75 -0
- package/src/esm/index.js +84 -0
- package/src/esm/index.js.map +1 -1
- package/src/esm/interfaces/DrawLib.d.ts +18 -1
- package/src/esm/interfaces/DrawLib.js +2 -0
- package/src/esm/interfaces/DrawLib.js.map +1 -1
- package/src/esm/utils/Params.d.ts +3 -2
- package/src/esm/utils/Params.js +11 -3
- package/src/esm/utils/Params.js.map +1 -1
- package/src/esm/utils/WebColors.d.ts +2 -1
- package/src/esm/utils/WebColors.js +15 -2
- package/src/esm/utils/WebColors.js.map +1 -1
- package/src/esm/utils/WebColorsContrast.d.ts +1 -1
- package/src/esm/utils/algorithms/HobbyPath.js +13 -16
- package/src/esm/utils/algorithms/HobbyPath.js.map +1 -1
- package/src/esm/utils/helpers/BezierResizeHelper.d.ts +144 -0
- package/src/esm/utils/helpers/BezierResizeHelper.js +314 -0
- package/src/esm/utils/helpers/BezierResizeHelper.js.map +1 -0
- package/src/ts/PlotBoilerplate.ts +37 -11
- package/src/ts/VertexListeners.ts +5 -1
- package/src/ts/draw.ts +32 -2
- package/src/ts/drawgl.ts +38 -3
- package/src/ts/drawutilssvg.ts +33 -6
- package/src/ts/index.ts +94 -0
- package/src/ts/interfaces/DrawLib.ts +19 -1
- package/src/ts/utils/Params.ts +11 -3
- package/src/ts/utils/WebColors.ts +15 -2
- package/src/ts/utils/algorithms/HobbyPath.ts +248 -272
- package/src/ts/utils/helpers/BezierResizeHelper.ts +390 -0
- /package/src/{cjs → _cjs}/utils/_gup.js_ +0 -0
|
@@ -0,0 +1,181 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @author Ikaros Kappler
|
|
3
|
+
* @date 2020-11-24
|
|
4
|
+
* @modified 2020-11-25 Ported to TypeScript from vanilla JS.
|
|
5
|
+
* @modified 2024-03-10 Fixed some types for Typescript 5 compatibility.
|
|
6
|
+
* @modified 2026-01-06 Added method `Girih.locateContainingTileAndEdge` to locate tile/edge pairs.
|
|
7
|
+
* @modified 2026-01-12 Added method `Girih.getTileByCenter` to locate tiles by position.
|
|
8
|
+
* @modified 2026-01-18 Added method `Girih.removeAllTiles`.
|
|
9
|
+
* @version 1.1.0
|
|
10
|
+
* @file Girih
|
|
11
|
+
**/
|
|
12
|
+
import { Vertex } from "../../Vertex";
|
|
13
|
+
import { GirihTile } from "./GirihTile";
|
|
14
|
+
import { XYCoords } from "../../interfaces";
|
|
15
|
+
/**
|
|
16
|
+
* @classdesc The Girih datastructure for generating patterns.
|
|
17
|
+
*
|
|
18
|
+
* @requires Vertex
|
|
19
|
+
* @requires GirihTile
|
|
20
|
+
* @requires GirihBowtie
|
|
21
|
+
* @requires GirihDecagon
|
|
22
|
+
* @requires GirihHexagon
|
|
23
|
+
* @requires GirihPenroseRhombus
|
|
24
|
+
* @requires GirihPentagon
|
|
25
|
+
* @requires GirihRhombus
|
|
26
|
+
*/
|
|
27
|
+
export declare class Girih {
|
|
28
|
+
/**
|
|
29
|
+
* The edge length to use in this Girih pattern.
|
|
30
|
+
*
|
|
31
|
+
* @member {number}
|
|
32
|
+
* @memberof Girih
|
|
33
|
+
* @type {number}
|
|
34
|
+
* @instance
|
|
35
|
+
*/
|
|
36
|
+
readonly edgeLength: number;
|
|
37
|
+
/**
|
|
38
|
+
* An array of all available Girih tiles. Use them as templates for copy-and-paste.
|
|
39
|
+
*
|
|
40
|
+
* @member {Array<GirihTile>}
|
|
41
|
+
* @memberof Girih
|
|
42
|
+
* @type {Array<GirihTile>}
|
|
43
|
+
* @instance
|
|
44
|
+
*/
|
|
45
|
+
readonly TILE_TEMPLATES: Array<GirihTile>;
|
|
46
|
+
/**
|
|
47
|
+
* The actual set of Girih tiles used in this Girih pattern.
|
|
48
|
+
*
|
|
49
|
+
* @member {Array<GirihTile>}
|
|
50
|
+
* @memberof Girih
|
|
51
|
+
* @type {Array<GirihTile>}
|
|
52
|
+
* @instance
|
|
53
|
+
*/
|
|
54
|
+
readonly tiles: Array<GirihTile>;
|
|
55
|
+
/**
|
|
56
|
+
* Create a new empty Girih pattern.
|
|
57
|
+
*
|
|
58
|
+
* @constructor
|
|
59
|
+
* @memberof Girih
|
|
60
|
+
* @param {number} edgeLength
|
|
61
|
+
*/
|
|
62
|
+
constructor(edgeLength: number);
|
|
63
|
+
/**
|
|
64
|
+
* Initialize the TILE_TEMPLATES array.
|
|
65
|
+
*
|
|
66
|
+
* @name initTemplates
|
|
67
|
+
* @private
|
|
68
|
+
* @memberof Girih
|
|
69
|
+
* @instance
|
|
70
|
+
* @param {number} edgeLength - The edge length to use for the template tiles.
|
|
71
|
+
* @return {void}
|
|
72
|
+
*/
|
|
73
|
+
private initTemplates;
|
|
74
|
+
/**
|
|
75
|
+
* Add a new tile to this Girih pattern.
|
|
76
|
+
*
|
|
77
|
+
* @name addTile
|
|
78
|
+
* @memberof Girih
|
|
79
|
+
* @instance
|
|
80
|
+
* @param {GirihTile} tile - The tile to add (instance must not already be part of this pattern).
|
|
81
|
+
* @return {void}
|
|
82
|
+
*/
|
|
83
|
+
addTile(tile: GirihTile): void;
|
|
84
|
+
/**
|
|
85
|
+
* Remove the tile at given array position. The index must be inside valid bounds.
|
|
86
|
+
*
|
|
87
|
+
* @name removeTile
|
|
88
|
+
* @memberof Girih
|
|
89
|
+
* @instance
|
|
90
|
+
* @param {number} index - The index in the `tiles` Array.
|
|
91
|
+
* @return {void}
|
|
92
|
+
*/
|
|
93
|
+
removeTileAt(index: number): void;
|
|
94
|
+
/**
|
|
95
|
+
* Remove all tiles.
|
|
96
|
+
*
|
|
97
|
+
* @name removeAllTiles
|
|
98
|
+
* @memberof Girih
|
|
99
|
+
* @instance
|
|
100
|
+
* @return {void}
|
|
101
|
+
*/
|
|
102
|
+
removeAllTiles(): void;
|
|
103
|
+
/**
|
|
104
|
+
* Replace all current tiles with the given ones.
|
|
105
|
+
*
|
|
106
|
+
* @param tiles
|
|
107
|
+
*/
|
|
108
|
+
replaceTiles(tiles: GirihTile[]): void;
|
|
109
|
+
/**
|
|
110
|
+
* Find the tile with the given center.
|
|
111
|
+
*
|
|
112
|
+
* @name getTileByCenter
|
|
113
|
+
* @memberof Girih
|
|
114
|
+
* @instance
|
|
115
|
+
* @param {XYCoords} center - The center point to look for.
|
|
116
|
+
* @return {GirihTile} The tile or null if not found.
|
|
117
|
+
*/
|
|
118
|
+
getTileByCenter(center: XYCoords): GirihTile;
|
|
119
|
+
/**
|
|
120
|
+
* Find that tile (index) which contains the given position. First match will be returned.
|
|
121
|
+
*
|
|
122
|
+
* @name locateContainingTile
|
|
123
|
+
* @memberof Girih
|
|
124
|
+
* @instance
|
|
125
|
+
* @param {Vertex} position
|
|
126
|
+
* @return {number} The index of the containing tile or -1 if none was found.
|
|
127
|
+
**/
|
|
128
|
+
locateConatiningTile(position: Vertex): number;
|
|
129
|
+
/**
|
|
130
|
+
* Find find a tile-edge-pair (indices) that contain the given position. First match will be returned.
|
|
131
|
+
*
|
|
132
|
+
* @name locateContainingTileAndEdge
|
|
133
|
+
* @memberof Girih
|
|
134
|
+
* @instance
|
|
135
|
+
* @param {Vertex} position
|
|
136
|
+
* @return {{ tileIndex: number; edgeIndex: number }} The index of the containing tile and edge or null if none was found.
|
|
137
|
+
**/
|
|
138
|
+
locateContainingTileAndEdge(position: any): {
|
|
139
|
+
tileIndex: number;
|
|
140
|
+
edgeIndex: number;
|
|
141
|
+
};
|
|
142
|
+
/**
|
|
143
|
+
* Turn the tile the mouse is hovering over.
|
|
144
|
+
* The turnCount is ab abstract number: -1 for one turn left, +1 for one turn right.
|
|
145
|
+
* The turning angle is defined by the tile with the lowest turn symmetry: the Decagon,
|
|
146
|
+
* so angle is 36°.
|
|
147
|
+
*
|
|
148
|
+
* @name turnTile
|
|
149
|
+
* @memberof Girih
|
|
150
|
+
* @instance
|
|
151
|
+
* @param {number} tileIndex - The index of the tile to rotate.
|
|
152
|
+
* @param {number} turnCount - A discrete number indicating the number of turn steps.
|
|
153
|
+
* @return {void}
|
|
154
|
+
*/
|
|
155
|
+
turnTile(tileIndex: number, turnCount: number): void;
|
|
156
|
+
/**
|
|
157
|
+
* Move that tile the mouse is hovering over.
|
|
158
|
+
* The move amounts are abstract numbers, 1 indicating one unit along each axis.
|
|
159
|
+
*
|
|
160
|
+
* @name moveTile
|
|
161
|
+
* @memberof Girih
|
|
162
|
+
* @instance
|
|
163
|
+
* @param {number} tileIndex - The index of the tile to rotate.
|
|
164
|
+
* @param {number} moveXAmount - The amount to move along the x axis (in pixels).
|
|
165
|
+
* @param {number} moveYAmount - The amount to move along the y axis (in pixels).
|
|
166
|
+
* @return {void}
|
|
167
|
+
*/
|
|
168
|
+
moveTile(tileIndex: number, moveXAmount: number, moveYAmount: number): void;
|
|
169
|
+
/**
|
|
170
|
+
* Find all possible adjadent tiles and their locations (type, rotation and offset). The
|
|
171
|
+
* function will return an array of all possible tiles matching at the given tile and edge.
|
|
172
|
+
*
|
|
173
|
+
* @name findPossibleAdjacentTiles
|
|
174
|
+
* @memberof Girih
|
|
175
|
+
* @instance
|
|
176
|
+
* @param {number} tileIndex - The index of the tile to rotate.
|
|
177
|
+
* @param {number} edgeIndex - The index of the tile's edge.
|
|
178
|
+
* @return {Array<GirihTile>} - An array of possible adjecent tiles (already positioned and rotated).
|
|
179
|
+
*/
|
|
180
|
+
findPossibleAdjacentTiles(tileIndex: number, edgeIndex: number): Array<GirihTile>;
|
|
181
|
+
}
|
|
@@ -0,0 +1,265 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* @author Ikaros Kappler
|
|
4
|
+
* @date 2020-11-24
|
|
5
|
+
* @modified 2020-11-25 Ported to TypeScript from vanilla JS.
|
|
6
|
+
* @modified 2024-03-10 Fixed some types for Typescript 5 compatibility.
|
|
7
|
+
* @modified 2026-01-06 Added method `Girih.locateContainingTileAndEdge` to locate tile/edge pairs.
|
|
8
|
+
* @modified 2026-01-12 Added method `Girih.getTileByCenter` to locate tiles by position.
|
|
9
|
+
* @modified 2026-01-18 Added method `Girih.removeAllTiles`.
|
|
10
|
+
* @version 1.1.0
|
|
11
|
+
* @file Girih
|
|
12
|
+
**/
|
|
13
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
14
|
+
exports.Girih = void 0;
|
|
15
|
+
const Vertex_1 = require("../../Vertex");
|
|
16
|
+
const GirihBowtie_1 = require("./GirihBowtie");
|
|
17
|
+
const GirihDecagon_1 = require("./GirihDecagon");
|
|
18
|
+
const GirihHexagon_1 = require("./GirihHexagon");
|
|
19
|
+
const GirihPenroseRhombus_1 = require("./GirihPenroseRhombus");
|
|
20
|
+
const GirihPentagon_1 = require("./GirihPentagon");
|
|
21
|
+
const GirihRhombus_1 = require("./GirihRhombus");
|
|
22
|
+
/**
|
|
23
|
+
* @classdesc The Girih datastructure for generating patterns.
|
|
24
|
+
*
|
|
25
|
+
* @requires Vertex
|
|
26
|
+
* @requires GirihTile
|
|
27
|
+
* @requires GirihBowtie
|
|
28
|
+
* @requires GirihDecagon
|
|
29
|
+
* @requires GirihHexagon
|
|
30
|
+
* @requires GirihPenroseRhombus
|
|
31
|
+
* @requires GirihPentagon
|
|
32
|
+
* @requires GirihRhombus
|
|
33
|
+
*/
|
|
34
|
+
class Girih {
|
|
35
|
+
/**
|
|
36
|
+
* Create a new empty Girih pattern.
|
|
37
|
+
*
|
|
38
|
+
* @constructor
|
|
39
|
+
* @memberof Girih
|
|
40
|
+
* @param {number} edgeLength
|
|
41
|
+
*/
|
|
42
|
+
constructor(edgeLength) {
|
|
43
|
+
this.edgeLength = edgeLength;
|
|
44
|
+
// Initialize templates, one for each Girih tile type.
|
|
45
|
+
// The template array will be filled on initialization (see below).
|
|
46
|
+
this.TILE_TEMPLATES = [];
|
|
47
|
+
// The set of all Girih tiles in scene
|
|
48
|
+
this.tiles = [];
|
|
49
|
+
this.initTemplates(edgeLength);
|
|
50
|
+
}
|
|
51
|
+
/**
|
|
52
|
+
* Initialize the TILE_TEMPLATES array.
|
|
53
|
+
*
|
|
54
|
+
* @name initTemplates
|
|
55
|
+
* @private
|
|
56
|
+
* @memberof Girih
|
|
57
|
+
* @instance
|
|
58
|
+
* @param {number} edgeLength - The edge length to use for the template tiles.
|
|
59
|
+
* @return {void}
|
|
60
|
+
*/
|
|
61
|
+
initTemplates(edgeLength) {
|
|
62
|
+
// Positions actually don't matter here.
|
|
63
|
+
// Tiles will be moved to correct position conerning adjacency.
|
|
64
|
+
var decagon = new GirihDecagon_1.GirihDecagon(new Vertex_1.Vertex(0, 0), edgeLength);
|
|
65
|
+
var pentagon = new GirihPentagon_1.GirihPentagon(new Vertex_1.Vertex(0, 0), edgeLength);
|
|
66
|
+
var hexagon = new GirihHexagon_1.GirihHexagon(new Vertex_1.Vertex(0, 0), edgeLength);
|
|
67
|
+
var bowtie = new GirihBowtie_1.GirihBowtie(new Vertex_1.Vertex(0, 0), edgeLength);
|
|
68
|
+
var rhombus = new GirihRhombus_1.GirihRhombus(new Vertex_1.Vertex(0, 0), edgeLength);
|
|
69
|
+
var penrose = new GirihPenroseRhombus_1.GirihPenroseRhombus(new Vertex_1.Vertex(0, 0), edgeLength, true); // Add center polygon
|
|
70
|
+
// Add tiles to array and put them in the correct adjacency position.
|
|
71
|
+
this.TILE_TEMPLATES.push(decagon);
|
|
72
|
+
this.TILE_TEMPLATES.push(decagon.transformTilePositionToAdjacency(2, pentagon));
|
|
73
|
+
this.TILE_TEMPLATES.push(pentagon.transformTilePositionToAdjacency(1, penrose));
|
|
74
|
+
this.TILE_TEMPLATES.push(penrose.transformTilePositionToAdjacency(3, hexagon));
|
|
75
|
+
this.TILE_TEMPLATES.push(decagon.transformTilePositionToAdjacency(5, bowtie));
|
|
76
|
+
this.TILE_TEMPLATES.push(pentagon.transformTilePositionToAdjacency(4, rhombus));
|
|
77
|
+
}
|
|
78
|
+
/**
|
|
79
|
+
* Add a new tile to this Girih pattern.
|
|
80
|
+
*
|
|
81
|
+
* @name addTile
|
|
82
|
+
* @memberof Girih
|
|
83
|
+
* @instance
|
|
84
|
+
* @param {GirihTile} tile - The tile to add (instance must not already be part of this pattern).
|
|
85
|
+
* @return {void}
|
|
86
|
+
*/
|
|
87
|
+
addTile(tile) {
|
|
88
|
+
this.tiles.push(tile);
|
|
89
|
+
}
|
|
90
|
+
/**
|
|
91
|
+
* Remove the tile at given array position. The index must be inside valid bounds.
|
|
92
|
+
*
|
|
93
|
+
* @name removeTile
|
|
94
|
+
* @memberof Girih
|
|
95
|
+
* @instance
|
|
96
|
+
* @param {number} index - The index in the `tiles` Array.
|
|
97
|
+
* @return {void}
|
|
98
|
+
*/
|
|
99
|
+
removeTileAt(index) {
|
|
100
|
+
this.tiles.splice(index, 1);
|
|
101
|
+
}
|
|
102
|
+
/**
|
|
103
|
+
* Remove all tiles.
|
|
104
|
+
*
|
|
105
|
+
* @name removeAllTiles
|
|
106
|
+
* @memberof Girih
|
|
107
|
+
* @instance
|
|
108
|
+
* @return {void}
|
|
109
|
+
*/
|
|
110
|
+
removeAllTiles() {
|
|
111
|
+
this.tiles.splice(0, this.tiles.length);
|
|
112
|
+
}
|
|
113
|
+
/**
|
|
114
|
+
* Replace all current tiles with the given ones.
|
|
115
|
+
*
|
|
116
|
+
* @param tiles
|
|
117
|
+
*/
|
|
118
|
+
replaceTiles(tiles) {
|
|
119
|
+
this.tiles.splice(0, this.tiles.length);
|
|
120
|
+
for (var i in tiles) {
|
|
121
|
+
this.addTile(tiles[i]);
|
|
122
|
+
}
|
|
123
|
+
}
|
|
124
|
+
/**
|
|
125
|
+
* Find the tile with the given center.
|
|
126
|
+
*
|
|
127
|
+
* @name getTileByCenter
|
|
128
|
+
* @memberof Girih
|
|
129
|
+
* @instance
|
|
130
|
+
* @param {XYCoords} center - The center point to look for.
|
|
131
|
+
* @return {GirihTile} The tile or null if not found.
|
|
132
|
+
*/
|
|
133
|
+
getTileByCenter(center) {
|
|
134
|
+
for (var i = 0; i < this.tiles.length; i++) {
|
|
135
|
+
const pos = this.tiles[i].position;
|
|
136
|
+
if (pos === center || (pos.x == center.x && pos.y == center.y)) {
|
|
137
|
+
return this.tiles[i];
|
|
138
|
+
}
|
|
139
|
+
}
|
|
140
|
+
return null;
|
|
141
|
+
}
|
|
142
|
+
/**
|
|
143
|
+
* Find that tile (index) which contains the given position. First match will be returned.
|
|
144
|
+
*
|
|
145
|
+
* @name locateContainingTile
|
|
146
|
+
* @memberof Girih
|
|
147
|
+
* @instance
|
|
148
|
+
* @param {Vertex} position
|
|
149
|
+
* @return {number} The index of the containing tile or -1 if none was found.
|
|
150
|
+
**/
|
|
151
|
+
locateConatiningTile(position) {
|
|
152
|
+
for (var i = 0; i < this.tiles.length; i++) {
|
|
153
|
+
if (this.tiles[i].containsVert(position))
|
|
154
|
+
return i;
|
|
155
|
+
}
|
|
156
|
+
return -1;
|
|
157
|
+
}
|
|
158
|
+
/**
|
|
159
|
+
* Find find a tile-edge-pair (indices) that contain the given position. First match will be returned.
|
|
160
|
+
*
|
|
161
|
+
* @name locateContainingTileAndEdge
|
|
162
|
+
* @memberof Girih
|
|
163
|
+
* @instance
|
|
164
|
+
* @param {Vertex} position
|
|
165
|
+
* @return {{ tileIndex: number; edgeIndex: number }} The index of the containing tile and edge or null if none was found.
|
|
166
|
+
**/
|
|
167
|
+
locateContainingTileAndEdge(position) {
|
|
168
|
+
var containedTileIndex = this.locateConatiningTile(position);
|
|
169
|
+
// Reset currently highlighted tile/edge (if re-detected nothing changed in the end)
|
|
170
|
+
var hoverTileIndex = -1;
|
|
171
|
+
var hoverEdgeIndex = -1;
|
|
172
|
+
// Find Girih edge nearby ...
|
|
173
|
+
if (containedTileIndex == -1) {
|
|
174
|
+
return null;
|
|
175
|
+
}
|
|
176
|
+
var i = containedTileIndex;
|
|
177
|
+
do {
|
|
178
|
+
var tile = this.tiles[i];
|
|
179
|
+
// May be -1
|
|
180
|
+
hoverEdgeIndex = tile.locateEdgeAtPoint(position, this.edgeLength / 2);
|
|
181
|
+
if (hoverEdgeIndex != -1) {
|
|
182
|
+
hoverTileIndex = i;
|
|
183
|
+
}
|
|
184
|
+
i++;
|
|
185
|
+
} while (i < this.tiles.length && containedTileIndex == -1 && hoverEdgeIndex == -1);
|
|
186
|
+
if (hoverTileIndex == -1) {
|
|
187
|
+
hoverTileIndex = containedTileIndex;
|
|
188
|
+
}
|
|
189
|
+
// Find the next possible tile to place?
|
|
190
|
+
if (hoverTileIndex == -1 || hoverEdgeIndex == -1) {
|
|
191
|
+
return null;
|
|
192
|
+
}
|
|
193
|
+
return { tileIndex: hoverTileIndex, edgeIndex: hoverEdgeIndex };
|
|
194
|
+
}
|
|
195
|
+
/**
|
|
196
|
+
* Turn the tile the mouse is hovering over.
|
|
197
|
+
* The turnCount is ab abstract number: -1 for one turn left, +1 for one turn right.
|
|
198
|
+
* The turning angle is defined by the tile with the lowest turn symmetry: the Decagon,
|
|
199
|
+
* so angle is 36°.
|
|
200
|
+
*
|
|
201
|
+
* @name turnTile
|
|
202
|
+
* @memberof Girih
|
|
203
|
+
* @instance
|
|
204
|
+
* @param {number} tileIndex - The index of the tile to rotate.
|
|
205
|
+
* @param {number} turnCount - A discrete number indicating the number of turn steps.
|
|
206
|
+
* @return {void}
|
|
207
|
+
*/
|
|
208
|
+
turnTile(tileIndex, turnCount) {
|
|
209
|
+
if (tileIndex == -1)
|
|
210
|
+
// TODO: still required?
|
|
211
|
+
return;
|
|
212
|
+
const tile = this.tiles[tileIndex];
|
|
213
|
+
tile.rotate((turnCount * Math.PI * 2) / tile.symmetry);
|
|
214
|
+
}
|
|
215
|
+
/**
|
|
216
|
+
* Move that tile the mouse is hovering over.
|
|
217
|
+
* The move amounts are abstract numbers, 1 indicating one unit along each axis.
|
|
218
|
+
*
|
|
219
|
+
* @name moveTile
|
|
220
|
+
* @memberof Girih
|
|
221
|
+
* @instance
|
|
222
|
+
* @param {number} tileIndex - The index of the tile to rotate.
|
|
223
|
+
* @param {number} moveXAmount - The amount to move along the x axis (in pixels).
|
|
224
|
+
* @param {number} moveYAmount - The amount to move along the y axis (in pixels).
|
|
225
|
+
* @return {void}
|
|
226
|
+
*/
|
|
227
|
+
moveTile(tileIndex, moveXAmount, moveYAmount) {
|
|
228
|
+
if (tileIndex == -1)
|
|
229
|
+
// TODO: still required?
|
|
230
|
+
return;
|
|
231
|
+
const tile = this.tiles[tileIndex];
|
|
232
|
+
tile.move({ x: moveXAmount * 10, y: moveYAmount * 10 });
|
|
233
|
+
}
|
|
234
|
+
/**
|
|
235
|
+
* Find all possible adjadent tiles and their locations (type, rotation and offset). The
|
|
236
|
+
* function will return an array of all possible tiles matching at the given tile and edge.
|
|
237
|
+
*
|
|
238
|
+
* @name findPossibleAdjacentTiles
|
|
239
|
+
* @memberof Girih
|
|
240
|
+
* @instance
|
|
241
|
+
* @param {number} tileIndex - The index of the tile to rotate.
|
|
242
|
+
* @param {number} edgeIndex - The index of the tile's edge.
|
|
243
|
+
* @return {Array<GirihTile>} - An array of possible adjecent tiles (already positioned and rotated).
|
|
244
|
+
*/
|
|
245
|
+
findPossibleAdjacentTiles(tileIndex, edgeIndex) {
|
|
246
|
+
var adjTiles = [];
|
|
247
|
+
if (tileIndex == -1 || edgeIndex == -1)
|
|
248
|
+
// TODO: still required?
|
|
249
|
+
return [];
|
|
250
|
+
let template = null;
|
|
251
|
+
for (var i in this.TILE_TEMPLATES) {
|
|
252
|
+
template = this.TILE_TEMPLATES[i].clone();
|
|
253
|
+
// Find all rotations and positions for that tile to match
|
|
254
|
+
const foundTiles = this.tiles[tileIndex].transformTileToAdjacencies(edgeIndex, template);
|
|
255
|
+
if (foundTiles.length != 0) {
|
|
256
|
+
adjTiles = adjTiles.concat(foundTiles);
|
|
257
|
+
}
|
|
258
|
+
}
|
|
259
|
+
// Set pointer to save range.
|
|
260
|
+
// previewTilePointer = Math.min( adjTiles.length-1, previewTiilePointer );
|
|
261
|
+
return adjTiles;
|
|
262
|
+
}
|
|
263
|
+
} // END class Girih
|
|
264
|
+
exports.Girih = Girih;
|
|
265
|
+
//# sourceMappingURL=Girih.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Girih.js","sourceRoot":"","sources":["../../../ts/utils/datastructures/Girih.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @classdesc The bow tie tile from the Girih set.
|
|
3
|
+
*
|
|
4
|
+
* @requires Bounds
|
|
5
|
+
* @requires GirihTile
|
|
6
|
+
* @requires Polygon
|
|
7
|
+
* @requires TileType
|
|
8
|
+
* @requires Vertex
|
|
9
|
+
*
|
|
10
|
+
* @author Ikaros Kappler
|
|
11
|
+
* @modified 2013-11-28
|
|
12
|
+
* @modified 2014-04-05 Ikaros Kappler (member array outerTilePolygons added).
|
|
13
|
+
* @modified 2015-03-19 Ikaros Kappler (added toSVG()).
|
|
14
|
+
* @modified 2020-10-31 Refactored to work with PlotBoilerplate.
|
|
15
|
+
* @modified 2020-11-13 Ported from vanilla JS to TypeScript.
|
|
16
|
+
* @version 2.0.1-alpha
|
|
17
|
+
* @file GirihBowtie
|
|
18
|
+
* @public
|
|
19
|
+
**/
|
|
20
|
+
import { GirihTile } from "./GirihTile";
|
|
21
|
+
import { Vertex } from "../../Vertex";
|
|
22
|
+
export declare class GirihBowtie extends GirihTile {
|
|
23
|
+
/**
|
|
24
|
+
* @constructor
|
|
25
|
+
* @extends GirihTile
|
|
26
|
+
* @name GirihBowtie
|
|
27
|
+
* @param {Vertex} position
|
|
28
|
+
* @param {number} edgeLength
|
|
29
|
+
*/
|
|
30
|
+
constructor(position: Vertex, edgeLength?: number);
|
|
31
|
+
/**
|
|
32
|
+
* @override
|
|
33
|
+
*/
|
|
34
|
+
clone(): GirihTile;
|
|
35
|
+
private _buildInnerPolygons;
|
|
36
|
+
private _buildOuterPolygons;
|
|
37
|
+
}
|
|
@@ -0,0 +1,134 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* @classdesc The bow tie tile from the Girih set.
|
|
4
|
+
*
|
|
5
|
+
* @requires Bounds
|
|
6
|
+
* @requires GirihTile
|
|
7
|
+
* @requires Polygon
|
|
8
|
+
* @requires TileType
|
|
9
|
+
* @requires Vertex
|
|
10
|
+
*
|
|
11
|
+
* @author Ikaros Kappler
|
|
12
|
+
* @modified 2013-11-28
|
|
13
|
+
* @modified 2014-04-05 Ikaros Kappler (member array outerTilePolygons added).
|
|
14
|
+
* @modified 2015-03-19 Ikaros Kappler (added toSVG()).
|
|
15
|
+
* @modified 2020-10-31 Refactored to work with PlotBoilerplate.
|
|
16
|
+
* @modified 2020-11-13 Ported from vanilla JS to TypeScript.
|
|
17
|
+
* @version 2.0.1-alpha
|
|
18
|
+
* @file GirihBowtie
|
|
19
|
+
* @public
|
|
20
|
+
**/
|
|
21
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
22
|
+
exports.GirihBowtie = void 0;
|
|
23
|
+
const GirihTile_1 = require("./GirihTile");
|
|
24
|
+
const Polygon_1 = require("../../Polygon");
|
|
25
|
+
const Vertex_1 = require("../../Vertex");
|
|
26
|
+
class GirihBowtie extends GirihTile_1.GirihTile {
|
|
27
|
+
/**
|
|
28
|
+
* @constructor
|
|
29
|
+
* @extends GirihTile
|
|
30
|
+
* @name GirihBowtie
|
|
31
|
+
* @param {Vertex} position
|
|
32
|
+
* @param {number} edgeLength
|
|
33
|
+
*/
|
|
34
|
+
constructor(position, edgeLength) {
|
|
35
|
+
super(position, edgeLength, GirihTile_1.TileType.BOW_TIE);
|
|
36
|
+
// Overwrite the default symmetries:
|
|
37
|
+
// the bow-tie tile has a 180° symmetry (5/10 * 360°)
|
|
38
|
+
this.uniqueSymmetries = 5;
|
|
39
|
+
// Init the actual decahedron shape with the passed size
|
|
40
|
+
let pointA = new Vertex_1.Vertex(0, 0);
|
|
41
|
+
let pointB = pointA;
|
|
42
|
+
const startPoint = pointA;
|
|
43
|
+
let oppositePoint = null;
|
|
44
|
+
this.addVertex(pointB);
|
|
45
|
+
// TODO: notate in radians
|
|
46
|
+
var angles = [0.0,
|
|
47
|
+
72.0,
|
|
48
|
+
72.0,
|
|
49
|
+
216.0,
|
|
50
|
+
72.0
|
|
51
|
+
];
|
|
52
|
+
var theta = 0.0;
|
|
53
|
+
for (var i = 0; i < angles.length; i++) {
|
|
54
|
+
theta += (180.0 - angles[i]);
|
|
55
|
+
pointA = pointB; // center of rotation
|
|
56
|
+
pointB = pointB.clone();
|
|
57
|
+
pointB.x -= this.edgeLength;
|
|
58
|
+
pointB.rotate(theta * (Math.PI / 180.0), pointA);
|
|
59
|
+
this.addVertex(pointB);
|
|
60
|
+
if (i == 2)
|
|
61
|
+
oppositePoint = pointB;
|
|
62
|
+
} // END for
|
|
63
|
+
// Move to center and position
|
|
64
|
+
const move = new Vertex_1.Vertex((oppositePoint.x - startPoint.x) / 2.0, (oppositePoint.y - startPoint.y) / 2.0);
|
|
65
|
+
for (var i = 0; i < this.vertices.length; i++) {
|
|
66
|
+
this.vertices[i].add(position).sub(move);
|
|
67
|
+
}
|
|
68
|
+
this.textureSource.min.x = 288 / 500.0;
|
|
69
|
+
this.textureSource.min.y = 7 / 460.0;
|
|
70
|
+
this.textureSource.max.x = this.textureSource.min.x + 206 / 500.0;
|
|
71
|
+
this.textureSource.max.y = this.textureSource.min.y + 150 / 460.0;
|
|
72
|
+
this.baseBounds = this.getBounds();
|
|
73
|
+
this._buildInnerPolygons(this.edgeLength);
|
|
74
|
+
this._buildOuterPolygons(this.edgeLength); // Only call AFTER the inner polygons were created!
|
|
75
|
+
}
|
|
76
|
+
;
|
|
77
|
+
/**
|
|
78
|
+
* @override
|
|
79
|
+
*/
|
|
80
|
+
clone() {
|
|
81
|
+
return new GirihBowtie(this.position.clone(), this.edgeLength).rotate(this.rotation);
|
|
82
|
+
}
|
|
83
|
+
;
|
|
84
|
+
_buildInnerPolygons(edgeLength) {
|
|
85
|
+
const indices = [1, 4];
|
|
86
|
+
for (var i = 0; i < indices.length; i++) {
|
|
87
|
+
const index = indices[i];
|
|
88
|
+
const middlePoint = this.getVertexAt(index).clone().scale(0.5, this.getVertexAt(index + 1));
|
|
89
|
+
const leftPoint = this.getVertexAt(index - 1).clone().scale(0.5, this.getVertexAt(index));
|
|
90
|
+
const rightPoint = this.getVertexAt(index + 1).clone().scale(0.5, this.getVertexAt(index + 2));
|
|
91
|
+
const innerPoint = middlePoint.clone().scale(0.38, this.position); // multiplyScalar( 0.38 );
|
|
92
|
+
const innerTile = new Polygon_1.Polygon([]);
|
|
93
|
+
innerTile.addVertex(middlePoint);
|
|
94
|
+
innerTile.addVertex(rightPoint);
|
|
95
|
+
innerTile.addVertex(innerPoint);
|
|
96
|
+
innerTile.addVertex(leftPoint);
|
|
97
|
+
this.innerTilePolygons.push(innerTile);
|
|
98
|
+
}
|
|
99
|
+
}
|
|
100
|
+
;
|
|
101
|
+
_buildOuterPolygons(edgeLength) {
|
|
102
|
+
// Add the outer four 'edges'
|
|
103
|
+
const indices = [0, 3];
|
|
104
|
+
for (var i = 0; i < indices.length; i++) {
|
|
105
|
+
const index = indices[i];
|
|
106
|
+
// The first/third triangle
|
|
107
|
+
const outerTileA = new Polygon_1.Polygon();
|
|
108
|
+
outerTileA.addVertex(this.innerTilePolygons[i].getVertexAt(0).clone());
|
|
109
|
+
outerTileA.addVertex(this.getVertexAt(index + 2).clone());
|
|
110
|
+
outerTileA.addVertex(this.innerTilePolygons[i].getVertexAt(1).clone());
|
|
111
|
+
this.outerTilePolygons.push(outerTileA);
|
|
112
|
+
// The second/fourth triangle
|
|
113
|
+
const outerTileB = new Polygon_1.Polygon();
|
|
114
|
+
outerTileB.addVertex(this.innerTilePolygons[i].getVertexAt(0).clone());
|
|
115
|
+
outerTileB.addVertex(this.getVertexAt(index + 1).clone());
|
|
116
|
+
outerTileB.addVertex(this.innerTilePolygons[i].getVertexAt(3).clone());
|
|
117
|
+
this.outerTilePolygons.push(outerTileB);
|
|
118
|
+
}
|
|
119
|
+
// Add the center polygon
|
|
120
|
+
const centerTile = new Polygon_1.Polygon();
|
|
121
|
+
centerTile.addVertex(this.getVertexAt(0).clone());
|
|
122
|
+
centerTile.addVertex(this.innerTilePolygons[0].getVertexAt(3).clone());
|
|
123
|
+
centerTile.addVertex(this.innerTilePolygons[0].getVertexAt(2).clone());
|
|
124
|
+
centerTile.addVertex(this.innerTilePolygons[0].getVertexAt(1).clone());
|
|
125
|
+
centerTile.addVertex(this.getVertexAt(3).clone());
|
|
126
|
+
centerTile.addVertex(this.innerTilePolygons[1].getVertexAt(3).clone());
|
|
127
|
+
centerTile.addVertex(this.innerTilePolygons[1].getVertexAt(2).clone());
|
|
128
|
+
centerTile.addVertex(this.innerTilePolygons[1].getVertexAt(1).clone());
|
|
129
|
+
this.outerTilePolygons.push(centerTile);
|
|
130
|
+
}
|
|
131
|
+
;
|
|
132
|
+
}
|
|
133
|
+
exports.GirihBowtie = GirihBowtie;
|
|
134
|
+
//# sourceMappingURL=GirihBowtie.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"GirihBowtie.js","sourceRoot":"","sources":["../../../ts/utils/datastructures/GirihBowtie.ts"],"names":[],"mappings":"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"}
|