plotboilerplate 1.28.0 → 1.28.1
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/package.json +1 -1
- package/src/_cjs/BezierPath.d.ts +0 -610
- package/src/_cjs/BezierPath.js +0 -1127
- package/src/_cjs/BezierPath.js.map +0 -1
- package/src/_cjs/Bounds.d.ts +0 -252
- package/src/_cjs/Bounds.js +0 -320
- package/src/_cjs/Bounds.js.map +0 -1
- package/src/_cjs/Circle.d.ts +0 -214
- package/src/_cjs/Circle.js +0 -339
- package/src/_cjs/Circle.js.map +0 -1
- package/src/_cjs/CircleSector.d.ts +0 -211
- package/src/_cjs/CircleSector.js +0 -364
- package/src/_cjs/CircleSector.js.map +0 -1
- package/src/_cjs/CubicBezierCurve.d.ts +0 -656
- package/src/_cjs/CubicBezierCurve.js +0 -1062
- package/src/_cjs/CubicBezierCurve.js.map +0 -1
- package/src/_cjs/Grid.d.ts +0 -83
- package/src/_cjs/Grid.js +0 -90
- package/src/_cjs/Grid.js.map +0 -1
- package/src/_cjs/KeyHandler.d.ts +0 -177
- package/src/_cjs/KeyHandler.js +0 -435
- package/src/_cjs/KeyHandler.js.map +0 -1
- package/src/_cjs/Line.d.ts +0 -134
- package/src/_cjs/Line.js +0 -220
- package/src/_cjs/Line.js.map +0 -1
- package/src/_cjs/MouseHandler.d.ts +0 -283
- package/src/_cjs/MouseHandler.js +0 -423
- package/src/_cjs/MouseHandler.js.map +0 -1
- package/src/_cjs/PBImage.d.ts +0 -81
- package/src/_cjs/PBImage.js +0 -61
- package/src/_cjs/PBImage.js.map +0 -1
- package/src/_cjs/PBText.d.ts +0 -118
- package/src/_cjs/PBText.js +0 -63
- package/src/_cjs/PBText.js.map +0 -1
- package/src/_cjs/PlotBoilerplate.d.ts +0 -899
- package/src/_cjs/PlotBoilerplate.js +0 -2348
- package/src/_cjs/PlotBoilerplate.js.map +0 -1
- package/src/_cjs/Polygon.d.ts +0 -520
- package/src/_cjs/Polygon.js +0 -933
- package/src/_cjs/Polygon.js.map +0 -1
- package/src/_cjs/SVGBuilder.d.ts +0 -47
- package/src/_cjs/SVGBuilder.js +0 -100
- package/src/_cjs/SVGBuilder.js.map +0 -1
- package/src/_cjs/Triangle.d.ts +0 -392
- package/src/_cjs/Triangle.js +0 -497
- package/src/_cjs/Triangle.js.map +0 -1
- package/src/_cjs/UIDGenerator.d.ts +0 -12
- package/src/_cjs/UIDGenerator.js +0 -21
- package/src/_cjs/UIDGenerator.js.map +0 -1
- package/src/_cjs/VEllipse.d.ts +0 -319
- package/src/_cjs/VEllipse.js +0 -578
- package/src/_cjs/VEllipse.js.map +0 -1
- package/src/_cjs/VEllipseSector.d.ts +0 -230
- package/src/_cjs/VEllipseSector.js +0 -428
- package/src/_cjs/VEllipseSector.js.map +0 -1
- package/src/_cjs/Vector.d.ts +0 -126
- package/src/_cjs/Vector.js +0 -199
- package/src/_cjs/Vector.js.map +0 -1
- package/src/_cjs/VertTuple.d.ts +0 -284
- package/src/_cjs/VertTuple.js +0 -348
- package/src/_cjs/VertTuple.js.map +0 -1
- package/src/_cjs/Vertex.d.ts +0 -498
- package/src/_cjs/Vertex.js +0 -703
- package/src/_cjs/Vertex.js.map +0 -1
- package/src/_cjs/VertexAttr.d.ts +0 -72
- package/src/_cjs/VertexAttr.js +0 -59
- package/src/_cjs/VertexAttr.js.map +0 -1
- package/src/_cjs/VertexListeners.d.ts +0 -208
- package/src/_cjs/VertexListeners.js +0 -267
- package/src/_cjs/VertexListeners.js.map +0 -1
- package/src/_cjs/draw.d.ts +0 -657
- package/src/_cjs/draw.js +0 -1164
- package/src/_cjs/draw.js.map +0 -1
- package/src/_cjs/drawgl.d.ts +0 -544
- package/src/_cjs/drawgl.js +0 -794
- package/src/_cjs/drawgl.js.map +0 -1
- package/src/_cjs/drawutilssvg.d.ts +0 -954
- package/src/_cjs/drawutilssvg.js +0 -1713
- package/src/_cjs/drawutilssvg.js.map +0 -1
- package/src/_cjs/entry-glsupport.js +0 -28
- package/src/_cjs/entry.js +0 -29
- package/src/_cjs/geomutils.d.ts +0 -77
- package/src/_cjs/geomutils.js +0 -126
- package/src/_cjs/geomutils.js.map +0 -1
- package/src/_cjs/index.d.ts +0 -102
- package/src/_cjs/index.js +0 -128
- package/src/_cjs/index.js.map +0 -1
- package/src/_cjs/interfaces/DrawLib.d.ts +0 -582
- package/src/_cjs/interfaces/DrawLib.js +0 -32
- package/src/_cjs/interfaces/DrawLib.js.map +0 -1
- package/src/_cjs/interfaces/additionals.d.ts +0 -95
- package/src/_cjs/interfaces/additionals.js +0 -3
- package/src/_cjs/interfaces/additionals.js.map +0 -1
- package/src/_cjs/interfaces/core.d.ts +0 -286
- package/src/_cjs/interfaces/core.js +0 -30
- package/src/_cjs/interfaces/core.js.map +0 -1
- package/src/_cjs/interfaces/externals.d.ts +0 -56
- package/src/_cjs/interfaces/externals.js +0 -8
- package/src/_cjs/interfaces/externals.js.map +0 -1
- package/src/_cjs/interfaces/index.d.ts +0 -4
- package/src/_cjs/interfaces/index.js +0 -21
- package/src/_cjs/interfaces/index.js.map +0 -1
- package/src/_cjs/module.d.ts +0 -26
- package/src/_cjs/module.js +0 -60
- package/src/_cjs/module.js.map +0 -1
- package/src/_cjs/utils/InitializationObserver.d.ts +0 -18
- package/src/_cjs/utils/InitializationObserver.js +0 -63
- package/src/_cjs/utils/InitializationObserver.js.map +0 -1
- package/src/_cjs/utils/LissajousFigure.d.ts +0 -34
- package/src/_cjs/utils/LissajousFigure.js +0 -100
- package/src/_cjs/utils/LissajousFigure.js.map +0 -1
- package/src/_cjs/utils/NGons.d.ts +0 -13
- package/src/_cjs/utils/NGons.js +0 -36
- package/src/_cjs/utils/NGons.js.map +0 -1
- package/src/_cjs/utils/Params.d.ts +0 -17
- package/src/_cjs/utils/Params.js +0 -53
- package/src/_cjs/utils/Params.js.map +0 -1
- package/src/_cjs/utils/PerlinNoise.d.ts +0 -19
- package/src/_cjs/utils/PerlinNoise.js +0 -352
- package/src/_cjs/utils/PerlinNoise.js.map +0 -1
- package/src/_cjs/utils/SVGPathUtils.d.ts +0 -22
- package/src/_cjs/utils/SVGPathUtils.js +0 -45
- package/src/_cjs/utils/SVGPathUtils.js.map +0 -1
- package/src/_cjs/utils/WebColors.d.ts +0 -35
- package/src/_cjs/utils/WebColors.js +0 -58
- package/src/_cjs/utils/WebColors.js.map +0 -1
- package/src/_cjs/utils/WebColorsContrast.d.ts +0 -6
- package/src/_cjs/utils/WebColorsContrast.js +0 -12
- package/src/_cjs/utils/WebColorsContrast.js.map +0 -1
- package/src/_cjs/utils/WebColorsMalachite.d.ts +0 -12
- package/src/_cjs/utils/WebColorsMalachite.js +0 -28
- package/src/_cjs/utils/WebColorsMalachite.js.map +0 -1
- package/src/_cjs/utils/_gup.js_ +0 -13
- package/src/_cjs/utils/algorithms/CatmullRomPath.d.ts +0 -60
- package/src/_cjs/utils/algorithms/CatmullRomPath.js +0 -108
- package/src/_cjs/utils/algorithms/CatmullRomPath.js.map +0 -1
- package/src/_cjs/utils/algorithms/CircleIntersections.d.ts +0 -170
- package/src/_cjs/utils/algorithms/CircleIntersections.js +0 -310
- package/src/_cjs/utils/algorithms/CircleIntersections.js.map +0 -1
- package/src/_cjs/utils/algorithms/ContourLineDetection.d.ts +0 -150
- package/src/_cjs/utils/algorithms/ContourLineDetection.js +0 -367
- package/src/_cjs/utils/algorithms/ContourLineDetection.js.map +0 -1
- package/src/_cjs/utils/algorithms/CubicSplinePath.d.ts +0 -63
- package/src/_cjs/utils/algorithms/CubicSplinePath.js +0 -175
- package/src/_cjs/utils/algorithms/CubicSplinePath.js.map +0 -1
- package/src/_cjs/utils/algorithms/HobbyPath.d.ts +0 -81
- package/src/_cjs/utils/algorithms/HobbyPath.js +0 -278
- package/src/_cjs/utils/algorithms/HobbyPath.js.map +0 -1
- package/src/_cjs/utils/algorithms/Metaballs.d.ts +0 -30
- package/src/_cjs/utils/algorithms/Metaballs.js +0 -114
- package/src/_cjs/utils/algorithms/Metaballs.js.map +0 -1
- package/src/_cjs/utils/algorithms/PolygonInset.d.ts +0 -184
- package/src/_cjs/utils/algorithms/PolygonInset.js +0 -431
- package/src/_cjs/utils/algorithms/PolygonInset.js.map +0 -1
- package/src/_cjs/utils/algorithms/PolygonTesselationOutlines.d.ts +0 -145
- package/src/_cjs/utils/algorithms/PolygonTesselationOutlines.js +0 -269
- package/src/_cjs/utils/algorithms/PolygonTesselationOutlines.js.map +0 -1
- package/src/_cjs/utils/algorithms/arrayFill.d.ts +0 -8
- package/src/_cjs/utils/algorithms/arrayFill.js +0 -18
- package/src/_cjs/utils/algorithms/arrayFill.js.map +0 -1
- package/src/_cjs/utils/algorithms/arrayResize.d.ts +0 -8
- package/src/_cjs/utils/algorithms/arrayResize.js +0 -24
- package/src/_cjs/utils/algorithms/arrayResize.js.map +0 -1
- package/src/_cjs/utils/algorithms/arrayShuffle.d.ts +0 -8
- package/src/_cjs/utils/algorithms/arrayShuffle.js +0 -15
- package/src/_cjs/utils/algorithms/arrayShuffle.js.map +0 -1
- package/src/_cjs/utils/algorithms/clearDuplicateVertices.d.ts +0 -22
- package/src/_cjs/utils/algorithms/clearDuplicateVertices.js +0 -51
- package/src/_cjs/utils/algorithms/clearDuplicateVertices.js.map +0 -1
- package/src/_cjs/utils/algorithms/clearPolygonDuplicateVertices.d.ts +0 -24
- package/src/_cjs/utils/algorithms/clearPolygonDuplicateVertices.js +0 -61
- package/src/_cjs/utils/algorithms/clearPolygonDuplicateVertices.js.map +0 -1
- package/src/_cjs/utils/algorithms/convexHull.d.ts +0 -23
- package/src/_cjs/utils/algorithms/convexHull.js +0 -71
- package/src/_cjs/utils/algorithms/convexHull.js.map +0 -1
- package/src/_cjs/utils/algorithms/convexPolygonIncircle.d.ts +0 -41
- package/src/_cjs/utils/algorithms/convexPolygonIncircle.js +0 -145
- package/src/_cjs/utils/algorithms/convexPolygonIncircle.js.map +0 -1
- package/src/_cjs/utils/algorithms/delaunay.d.ts +0 -30
- package/src/_cjs/utils/algorithms/delaunay.js +0 -158
- package/src/_cjs/utils/algorithms/delaunay.js.map +0 -1
- package/src/_cjs/utils/algorithms/delaunay2voronoi.d.ts +0 -25
- package/src/_cjs/utils/algorithms/delaunay2voronoi.js +0 -104
- package/src/_cjs/utils/algorithms/delaunay2voronoi.js.map +0 -1
- package/src/_cjs/utils/algorithms/detectPaths.d.ts +0 -21
- package/src/_cjs/utils/algorithms/detectPaths.js +0 -169
- package/src/_cjs/utils/algorithms/detectPaths.js.map +0 -1
- package/src/_cjs/utils/algorithms/findPolygonSelfIntersections.d.ts +0 -21
- package/src/_cjs/utils/algorithms/findPolygonSelfIntersections.js +0 -51
- package/src/_cjs/utils/algorithms/findPolygonSelfIntersections.js.map +0 -1
- package/src/_cjs/utils/algorithms/getContrastColor.d.ts +0 -13
- package/src/_cjs/utils/algorithms/getContrastColor.js +0 -26
- package/src/_cjs/utils/algorithms/getContrastColor.js.map +0 -1
- package/src/_cjs/utils/algorithms/matrixFill.d.ts +0 -10
- package/src/_cjs/utils/algorithms/matrixFill.js +0 -21
- package/src/_cjs/utils/algorithms/matrixFill.js.map +0 -1
- package/src/_cjs/utils/algorithms/pixelCornersToRoundPaths.d.ts +0 -23
- package/src/_cjs/utils/algorithms/pixelCornersToRoundPaths.js +0 -270
- package/src/_cjs/utils/algorithms/pixelCornersToRoundPaths.js.map +0 -1
- package/src/_cjs/utils/algorithms/splitPolygonToNonIntersecting.d.ts +0 -28
- package/src/_cjs/utils/algorithms/splitPolygonToNonIntersecting.js +0 -102
- package/src/_cjs/utils/algorithms/splitPolygonToNonIntersecting.js.map +0 -1
- package/src/_cjs/utils/algorithms/sutherlandHodgman.d.ts +0 -16
- package/src/_cjs/utils/algorithms/sutherlandHodgman.js +0 -76
- package/src/_cjs/utils/algorithms/sutherlandHodgman.js.map +0 -1
- package/src/_cjs/utils/cloneVertexArray.d.ts +0 -13
- package/src/_cjs/utils/cloneVertexArray.js +0 -23
- package/src/_cjs/utils/cloneVertexArray.js.map +0 -1
- package/src/_cjs/utils/createRandomizedPolygon.d.ts +0 -14
- package/src/_cjs/utils/createRandomizedPolygon.js +0 -32
- package/src/_cjs/utils/createRandomizedPolygon.js.map +0 -1
- package/src/_cjs/utils/creategui.js +0 -434
- package/src/_cjs/utils/dat.gui.arrowbounce.polyfill.js +0 -128
- package/src/_cjs/utils/dat.gui.title.polyfill.js +0 -35
- package/src/_cjs/utils/datastructures/CircularIntervalSet.d.ts +0 -83
- package/src/_cjs/utils/datastructures/CircularIntervalSet.js +0 -163
- package/src/_cjs/utils/datastructures/CircularIntervalSet.js.map +0 -1
- package/src/_cjs/utils/datastructures/Color.d.ts +0 -391
- package/src/_cjs/utils/datastructures/Color.js +0 -1084
- package/src/_cjs/utils/datastructures/Color.js.map +0 -1
- package/src/_cjs/utils/datastructures/ColorGradient.d.ts +0 -81
- package/src/_cjs/utils/datastructures/ColorGradient.js +0 -176
- package/src/_cjs/utils/datastructures/ColorGradient.js.map +0 -1
- package/src/_cjs/utils/datastructures/DataGrid2d.d.ts +0 -53
- package/src/_cjs/utils/datastructures/DataGrid2d.js +0 -20
- package/src/_cjs/utils/datastructures/DataGrid2d.js.map +0 -1
- package/src/_cjs/utils/datastructures/DataGrid2dArrayMatrix.d.ts +0 -88
- package/src/_cjs/utils/datastructures/DataGrid2dArrayMatrix.js +0 -155
- package/src/_cjs/utils/datastructures/DataGrid2dArrayMatrix.js.map +0 -1
- package/src/_cjs/utils/datastructures/DataGrid2dListAdapter.d.ts +0 -59
- package/src/_cjs/utils/datastructures/DataGrid2dListAdapter.js +0 -84
- package/src/_cjs/utils/datastructures/DataGrid2dListAdapter.js.map +0 -1
- package/src/_cjs/utils/datastructures/GenericPath.d.ts +0 -86
- package/src/_cjs/utils/datastructures/GenericPath.js +0 -122
- package/src/_cjs/utils/datastructures/GenericPath.js.map +0 -1
- package/src/_cjs/utils/datastructures/GeometryMesh.d.ts +0 -49
- package/src/_cjs/utils/datastructures/GeometryMesh.js +0 -58
- package/src/_cjs/utils/datastructures/GeometryMesh.js.map +0 -1
- package/src/_cjs/utils/datastructures/Girih.d.ts +0 -181
- package/src/_cjs/utils/datastructures/Girih.js +0 -266
- package/src/_cjs/utils/datastructures/Girih.js.map +0 -1
- package/src/_cjs/utils/datastructures/GirihBowtie.d.ts +0 -37
- package/src/_cjs/utils/datastructures/GirihBowtie.js +0 -152
- package/src/_cjs/utils/datastructures/GirihBowtie.js.map +0 -1
- package/src/_cjs/utils/datastructures/GirihDecagon.d.ts +0 -52
- package/src/_cjs/utils/datastructures/GirihDecagon.js +0 -132
- package/src/_cjs/utils/datastructures/GirihDecagon.js.map +0 -1
- package/src/_cjs/utils/datastructures/GirihHexagon.d.ts +0 -39
- package/src/_cjs/utils/datastructures/GirihHexagon.js +0 -200
- package/src/_cjs/utils/datastructures/GirihHexagon.js.map +0 -1
- package/src/_cjs/utils/datastructures/GirihPenroseRhombus.d.ts +0 -46
- package/src/_cjs/utils/datastructures/GirihPenroseRhombus.js +0 -189
- package/src/_cjs/utils/datastructures/GirihPenroseRhombus.js.map +0 -1
- package/src/_cjs/utils/datastructures/GirihPentagon.d.ts +0 -37
- package/src/_cjs/utils/datastructures/GirihPentagon.js +0 -109
- package/src/_cjs/utils/datastructures/GirihPentagon.js.map +0 -1
- package/src/_cjs/utils/datastructures/GirihRhombus.d.ts +0 -38
- package/src/_cjs/utils/datastructures/GirihRhombus.js +0 -155
- package/src/_cjs/utils/datastructures/GirihRhombus.js.map +0 -1
- package/src/_cjs/utils/datastructures/GirihTile.d.ts +0 -283
- package/src/_cjs/utils/datastructures/GirihTile.js +0 -308
- package/src/_cjs/utils/datastructures/GirihTile.js.map +0 -1
- package/src/_cjs/utils/datastructures/Matrix4x4.d.ts +0 -244
- package/src/_cjs/utils/datastructures/Matrix4x4.js +0 -262
- package/src/_cjs/utils/datastructures/Matrix4x4.js.map +0 -1
- package/src/_cjs/utils/datastructures/VoronoiCell.d.ts +0 -122
- package/src/_cjs/utils/datastructures/VoronoiCell.js +0 -183
- package/src/_cjs/utils/datastructures/VoronoiCell.js.map +0 -1
- package/src/_cjs/utils/datastructures/interfaces.d.ts +0 -13
- package/src/_cjs/utils/datastructures/interfaces.js +0 -10
- package/src/_cjs/utils/datastructures/interfaces.js.map +0 -1
- package/src/_cjs/utils/detectDarkMode.d.ts +0 -10
- package/src/_cjs/utils/detectDarkMode.js +0 -41
- package/src/_cjs/utils/detectDarkMode.js.map +0 -1
- package/src/_cjs/utils/dom/components/ColorGradientPicker.d.ts +0 -246
- package/src/_cjs/utils/dom/components/ColorGradientPicker.js +0 -667
- package/src/_cjs/utils/dom/components/ColorGradientPicker.js.map +0 -1
- package/src/_cjs/utils/dom/components/ColorGradientPickerJSX.d.ts +0 -129
- package/src/_cjs/utils/dom/components/ColorGradientPickerJSX.js +0 -520
- package/src/_cjs/utils/dom/components/ColorGradientPickerJSX.js.map +0 -1
- package/src/_cjs/utils/dom/components/ColorGradientSelector.d.ts +0 -118
- package/src/_cjs/utils/dom/components/ColorGradientSelector.js +0 -327
- package/src/_cjs/utils/dom/components/ColorGradientSelector.js.map +0 -1
- package/src/_cjs/utils/dom/components/Test.d.ts +0 -7
- package/src/_cjs/utils/dom/components/Test.js +0 -30
- package/src/_cjs/utils/dom/components/Test.js.map +0 -1
- package/src/_cjs/utils/dom/getAvailableContainerSpace.d.ts +0 -2
- package/src/_cjs/utils/dom/getAvailableContainerSpace.js +0 -29
- package/src/_cjs/utils/dom/getAvailableContainerSpace.js.map +0 -1
- package/src/_cjs/utils/dom/getFProp.d.ts +0 -5
- package/src/_cjs/utils/dom/getFProp.js +0 -12
- package/src/_cjs/utils/dom/getFProp.js.map +0 -1
- package/src/_cjs/utils/dom/guiSizeToggler.d.ts +0 -18
- package/src/_cjs/utils/dom/guiSizeToggler.js +0 -44
- package/src/_cjs/utils/dom/guiSizeToggler.js.map +0 -1
- package/src/_cjs/utils/findInVertexArray.d.ts +0 -19
- package/src/_cjs/utils/findInVertexArray.js +0 -29
- package/src/_cjs/utils/findInVertexArray.js.map +0 -1
- package/src/_cjs/utils/getFProp.d.ts +0 -5
- package/src/_cjs/utils/getFProp.js +0 -12
- package/src/_cjs/utils/getFProp.js.map +0 -1
- package/src/_cjs/utils/gup.d.ts +0 -14
- package/src/_cjs/utils/gup.js +0 -31
- package/src/_cjs/utils/gup.js.map +0 -1
- package/src/_cjs/utils/helpers/BezierPathInteractionHelper.d.ts +0 -272
- package/src/_cjs/utils/helpers/BezierPathInteractionHelper.js +0 -655
- package/src/_cjs/utils/helpers/BezierPathInteractionHelper.js.map +0 -1
- package/src/_cjs/utils/helpers/CircleHelper.d.ts +0 -73
- package/src/_cjs/utils/helpers/CircleHelper.js +0 -93
- package/src/_cjs/utils/helpers/CircleHelper.js.map +0 -1
- package/src/_cjs/utils/helpers/CircleSectorHelper.d.ts +0 -90
- package/src/_cjs/utils/helpers/CircleSectorHelper.js +0 -114
- package/src/_cjs/utils/helpers/CircleSectorHelper.js.map +0 -1
- package/src/_cjs/utils/helpers/TriangleHelper.d.ts +0 -57
- package/src/_cjs/utils/helpers/TriangleHelper.js +0 -83
- package/src/_cjs/utils/helpers/TriangleHelper.js.map +0 -1
- package/src/_cjs/utils/helpers/VEllipseHelper.d.ts +0 -32
- package/src/_cjs/utils/helpers/VEllipseHelper.js +0 -88
- package/src/_cjs/utils/helpers/VEllipseHelper.js.map +0 -1
- package/src/_cjs/utils/helpers/VEllipseSectorHelper.d.ts +0 -52
- package/src/_cjs/utils/helpers/VEllipseSectorHelper.js +0 -135
- package/src/_cjs/utils/helpers/VEllipseSectorHelper.js.map +0 -1
- package/src/_cjs/utils/io/DndFileHandler.d.ts +0 -63
- package/src/_cjs/utils/io/DndFileHandler.js +0 -112
- package/src/_cjs/utils/io/DndFileHandler.js.map +0 -1
- package/src/_cjs/utils/io/FileDrop.d.ts +0 -110
- package/src/_cjs/utils/io/FileDrop.js +0 -177
- package/src/_cjs/utils/io/FileDrop.js.map +0 -1
- package/src/_cjs/utils/lil.gui.arrowbounce.polyfill.js +0 -133
- package/src/_cjs/utils/lil.gui.title.polyfill.js +0 -32
- package/src/_cjs/utils/module.js +0 -18
- package/src/_cjs/utils/parsers/LinearColorGradientParser.d.ts +0 -78
- package/src/_cjs/utils/parsers/LinearColorGradientParser.js +0 -224
- package/src/_cjs/utils/parsers/LinearColorGradientParser.js.map +0 -1
- package/src/_cjs/utils/parsers/OBJParser.d.ts +0 -24
- package/src/_cjs/utils/parsers/OBJParser.js +0 -77
- package/src/_cjs/utils/parsers/OBJParser.js.map +0 -1
- package/src/_cjs/utils/parsers/STLParser.d.ts +0 -61
- package/src/_cjs/utils/parsers/STLParser.js +0 -182
- package/src/_cjs/utils/parsers/STLParser.js.map +0 -1
- package/src/_cjs/utils/parsers/svg/parseSVGPathData.d.ts +0 -27
- package/src/_cjs/utils/parsers/svg/parseSVGPathData.js +0 -486
- package/src/_cjs/utils/parsers/svg/parseSVGPathData.js.map +0 -1
- package/src/_cjs/utils/parsers/svg/splitSVGPathData.d.ts +0 -20
- package/src/_cjs/utils/parsers/svg/splitSVGPathData.js +0 -53
- package/src/_cjs/utils/parsers/svg/splitSVGPathData.js.map +0 -1
- package/src/_cjs/utils/parsers/svg/types.d.ts +0 -63
- package/src/_cjs/utils/parsers/svg/types.js +0 -17
- package/src/_cjs/utils/parsers/svg/types.js.map +0 -1
- package/src/_cjs/utils/ts-runner.js +0 -146
- package/src/_cjs/utils/tsAsyncScriptLoader.js +0 -74
- package/src/_esm/BezierPath.d.ts +0 -610
- package/src/_esm/BezierPath.js +0 -1124
- package/src/_esm/BezierPath.js.map +0 -1
- package/src/_esm/Bounds.d.ts +0 -252
- package/src/_esm/Bounds.js +0 -317
- package/src/_esm/Bounds.js.map +0 -1
- package/src/_esm/Circle.d.ts +0 -214
- package/src/_esm/Circle.js +0 -335
- package/src/_esm/Circle.js.map +0 -1
- package/src/_esm/CircleSector.d.ts +0 -211
- package/src/_esm/CircleSector.js +0 -359
- package/src/_esm/CircleSector.js.map +0 -1
- package/src/_esm/CubicBezierCurve.d.ts +0 -656
- package/src/_esm/CubicBezierCurve.js +0 -1057
- package/src/_esm/CubicBezierCurve.js.map +0 -1
- package/src/_esm/Grid.d.ts +0 -83
- package/src/_esm/Grid.js +0 -89
- package/src/_esm/Grid.js.map +0 -1
- package/src/_esm/KeyHandler.d.ts +0 -177
- package/src/_esm/KeyHandler.js +0 -434
- package/src/_esm/KeyHandler.js.map +0 -1
- package/src/_esm/Line.d.ts +0 -134
- package/src/_esm/Line.js +0 -200
- package/src/_esm/Line.js.map +0 -1
- package/src/_esm/MouseHandler.d.ts +0 -283
- package/src/_esm/MouseHandler.js +0 -397
- package/src/_esm/MouseHandler.js.map +0 -1
- package/src/_esm/PBImage.d.ts +0 -81
- package/src/_esm/PBImage.js +0 -60
- package/src/_esm/PBImage.js.map +0 -1
- package/src/_esm/PBText.d.ts +0 -118
- package/src/_esm/PBText.js +0 -62
- package/src/_esm/PBText.js.map +0 -1
- package/src/_esm/PlotBoilerplate.d.ts +0 -899
- package/src/_esm/PlotBoilerplate.js +0 -2347
- package/src/_esm/PlotBoilerplate.js.map +0 -1
- package/src/_esm/Polygon.d.ts +0 -520
- package/src/_esm/Polygon.js +0 -924
- package/src/_esm/Polygon.js.map +0 -1
- package/src/_esm/SVGBuilder.d.ts +0 -47
- package/src/_esm/SVGBuilder.js +0 -95
- package/src/_esm/SVGBuilder.js.map +0 -1
- package/src/_esm/Triangle.d.ts +0 -392
- package/src/_esm/Triangle.js +0 -493
- package/src/_esm/Triangle.js.map +0 -1
- package/src/_esm/UIDGenerator.d.ts +0 -12
- package/src/_esm/UIDGenerator.js +0 -18
- package/src/_esm/UIDGenerator.js.map +0 -1
- package/src/_esm/VEllipse.d.ts +0 -319
- package/src/_esm/VEllipse.js +0 -574
- package/src/_esm/VEllipse.js.map +0 -1
- package/src/_esm/VEllipseSector.d.ts +0 -230
- package/src/_esm/VEllipseSector.js +0 -422
- package/src/_esm/VEllipseSector.js.map +0 -1
- package/src/_esm/Vector.d.ts +0 -126
- package/src/_esm/Vector.js +0 -181
- package/src/_esm/Vector.js.map +0 -1
- package/src/_esm/VertTuple.d.ts +0 -284
- package/src/_esm/VertTuple.js +0 -347
- package/src/_esm/VertTuple.js.map +0 -1
- package/src/_esm/Vertex.d.ts +0 -498
- package/src/_esm/Vertex.js +0 -702
- package/src/_esm/Vertex.js.map +0 -1
- package/src/_esm/VertexAttr.d.ts +0 -72
- package/src/_esm/VertexAttr.js +0 -58
- package/src/_esm/VertexAttr.js.map +0 -1
- package/src/_esm/VertexListeners.d.ts +0 -209
- package/src/_esm/VertexListeners.js +0 -270
- package/src/_esm/VertexListeners.js.map +0 -1
- package/src/_esm/draw.d.ts +0 -657
- package/src/_esm/draw.js +0 -1159
- package/src/_esm/draw.js.map +0 -1
- package/src/_esm/drawgl.d.ts +0 -544
- package/src/_esm/drawgl.js +0 -812
- package/src/_esm/drawgl.js.map +0 -1
- package/src/_esm/drawutilssvg.d.ts +0 -954
- package/src/_esm/drawutilssvg.js +0 -1705
- package/src/_esm/drawutilssvg.js.map +0 -1
- package/src/_esm/entry-glsupport.js +0 -28
- package/src/_esm/entry.js +0 -29
- package/src/_esm/geomutils.d.ts +0 -77
- package/src/_esm/geomutils.js +0 -126
- package/src/_esm/geomutils.js.map +0 -1
- package/src/_esm/index.d.ts +0 -102
- package/src/_esm/index.js +0 -128
- package/src/_esm/index.js.map +0 -1
- package/src/_esm/interfaces/DrawLib.d.ts +0 -582
- package/src/_esm/interfaces/DrawLib.js +0 -32
- package/src/_esm/interfaces/DrawLib.js.map +0 -1
- package/src/_esm/interfaces/additionals.d.ts +0 -95
- package/src/_esm/interfaces/additionals.js +0 -3
- package/src/_esm/interfaces/additionals.js.map +0 -1
- package/src/_esm/interfaces/core.d.ts +0 -286
- package/src/_esm/interfaces/core.js +0 -30
- package/src/_esm/interfaces/core.js.map +0 -1
- package/src/_esm/interfaces/externals.d.ts +0 -56
- package/src/_esm/interfaces/externals.js +0 -8
- package/src/_esm/interfaces/externals.js.map +0 -1
- package/src/_esm/interfaces/index.d.ts +0 -4
- package/src/_esm/interfaces/index.js +0 -21
- package/src/_esm/interfaces/index.js.map +0 -1
- package/src/_esm/module.d.ts +0 -26
- package/src/_esm/module.js +0 -60
- package/src/_esm/module.js.map +0 -1
- package/src/_esm/src/ts/BezierPath.d.ts +0 -610
- package/src/_esm/src/ts/BezierPath.js +0 -1120
- package/src/_esm/src/ts/BezierPath.js.map +0 -1
- package/src/_esm/src/ts/Bounds.d.ts +0 -252
- package/src/_esm/src/ts/Bounds.js +0 -313
- package/src/_esm/src/ts/Bounds.js.map +0 -1
- package/src/_esm/src/ts/Circle.d.ts +0 -214
- package/src/_esm/src/ts/Circle.js +0 -331
- package/src/_esm/src/ts/Circle.js.map +0 -1
- package/src/_esm/src/ts/CircleSector.d.ts +0 -211
- package/src/_esm/src/ts/CircleSector.js +0 -355
- package/src/_esm/src/ts/CircleSector.js.map +0 -1
- package/src/_esm/src/ts/CubicBezierCurve.d.ts +0 -656
- package/src/_esm/src/ts/CubicBezierCurve.js +0 -1053
- package/src/_esm/src/ts/CubicBezierCurve.js.map +0 -1
- package/src/_esm/src/ts/Grid.d.ts +0 -83
- package/src/_esm/src/ts/Grid.js +0 -85
- package/src/_esm/src/ts/Grid.js.map +0 -1
- package/src/_esm/src/ts/KeyHandler.d.ts +0 -177
- package/src/_esm/src/ts/KeyHandler.js +0 -430
- package/src/_esm/src/ts/KeyHandler.js.map +0 -1
- package/src/_esm/src/ts/Line.d.ts +0 -134
- package/src/_esm/src/ts/Line.js +0 -196
- package/src/_esm/src/ts/Line.js.map +0 -1
- package/src/_esm/src/ts/MouseHandler.d.ts +0 -283
- package/src/_esm/src/ts/MouseHandler.js +0 -391
- package/src/_esm/src/ts/MouseHandler.js.map +0 -1
- package/src/_esm/src/ts/PBImage.d.ts +0 -81
- package/src/_esm/src/ts/PBImage.js +0 -56
- package/src/_esm/src/ts/PBImage.js.map +0 -1
- package/src/_esm/src/ts/PBText.d.ts +0 -118
- package/src/_esm/src/ts/PBText.js +0 -58
- package/src/_esm/src/ts/PBText.js.map +0 -1
- package/src/_esm/src/ts/PlotBoilerplate.d.ts +0 -899
- package/src/_esm/src/ts/PlotBoilerplate.js +0 -2340
- package/src/_esm/src/ts/PlotBoilerplate.js.map +0 -1
- package/src/_esm/src/ts/Polygon.d.ts +0 -520
- package/src/_esm/src/ts/Polygon.js +0 -920
- package/src/_esm/src/ts/Polygon.js.map +0 -1
- package/src/_esm/src/ts/Triangle.d.ts +0 -392
- package/src/_esm/src/ts/Triangle.js +0 -489
- package/src/_esm/src/ts/Triangle.js.map +0 -1
- package/src/_esm/src/ts/UIDGenerator.d.ts +0 -12
- package/src/_esm/src/ts/UIDGenerator.js +0 -14
- package/src/_esm/src/ts/UIDGenerator.js.map +0 -1
- package/src/_esm/src/ts/VEllipse.d.ts +0 -319
- package/src/_esm/src/ts/VEllipse.js +0 -570
- package/src/_esm/src/ts/VEllipse.js.map +0 -1
- package/src/_esm/src/ts/VEllipseSector.d.ts +0 -230
- package/src/_esm/src/ts/VEllipseSector.js +0 -418
- package/src/_esm/src/ts/VEllipseSector.js.map +0 -1
- package/src/_esm/src/ts/Vector.d.ts +0 -126
- package/src/_esm/src/ts/Vector.js +0 -177
- package/src/_esm/src/ts/Vector.js.map +0 -1
- package/src/_esm/src/ts/VertTuple.d.ts +0 -284
- package/src/_esm/src/ts/VertTuple.js +0 -343
- package/src/_esm/src/ts/VertTuple.js.map +0 -1
- package/src/_esm/src/ts/Vertex.d.ts +0 -498
- package/src/_esm/src/ts/Vertex.js +0 -698
- package/src/_esm/src/ts/Vertex.js.map +0 -1
- package/src/_esm/src/ts/VertexAttr.d.ts +0 -72
- package/src/_esm/src/ts/VertexAttr.js +0 -54
- package/src/_esm/src/ts/VertexAttr.js.map +0 -1
- package/src/_esm/src/ts/VertexListeners.d.ts +0 -209
- package/src/_esm/src/ts/VertexListeners.js +0 -266
- package/src/_esm/src/ts/VertexListeners.js.map +0 -1
- package/src/_esm/src/ts/draw.d.ts +0 -657
- package/src/_esm/src/ts/draw.js +0 -1155
- package/src/_esm/src/ts/draw.js.map +0 -1
- package/src/_esm/src/ts/drawgl.d.ts +0 -544
- package/src/_esm/src/ts/drawgl.js +0 -808
- package/src/_esm/src/ts/drawgl.js.map +0 -1
- package/src/_esm/src/ts/drawutilssvg.d.ts +0 -954
- package/src/_esm/src/ts/drawutilssvg.js +0 -1701
- package/src/_esm/src/ts/drawutilssvg.js.map +0 -1
- package/src/_esm/src/ts/geomutils.d.ts +0 -77
- package/src/_esm/src/ts/geomutils.js +0 -123
- package/src/_esm/src/ts/geomutils.js.map +0 -1
- package/src/_esm/src/ts/index.d.ts +0 -102
- package/src/_esm/src/ts/index.js +0 -112
- package/src/_esm/src/ts/index.js.map +0 -1
- package/src/_esm/src/ts/interfaces/DrawLib.d.ts +0 -582
- package/src/_esm/src/ts/interfaces/DrawLib.js +0 -31
- package/src/_esm/src/ts/interfaces/DrawLib.js.map +0 -1
- package/src/_esm/src/ts/interfaces/additionals.d.ts +0 -95
- package/src/_esm/src/ts/interfaces/additionals.js +0 -2
- package/src/_esm/src/ts/interfaces/additionals.js.map +0 -1
- package/src/_esm/src/ts/interfaces/core.d.ts +0 -286
- package/src/_esm/src/ts/interfaces/core.js +0 -29
- package/src/_esm/src/ts/interfaces/core.js.map +0 -1
- package/src/_esm/src/ts/interfaces/externals.d.ts +0 -56
- package/src/_esm/src/ts/interfaces/externals.js +0 -7
- package/src/_esm/src/ts/interfaces/externals.js.map +0 -1
- package/src/_esm/src/ts/interfaces/index.d.ts +0 -4
- package/src/_esm/src/ts/interfaces/index.js +0 -5
- package/src/_esm/src/ts/interfaces/index.js.map +0 -1
- package/src/_esm/src/ts/module.d.ts +0 -26
- package/src/_esm/src/ts/module.js +0 -38
- package/src/_esm/src/ts/module.js.map +0 -1
- package/src/_esm/src/ts/utils/InitializationObserver.d.ts +0 -18
- package/src/_esm/src/ts/utils/InitializationObserver.js +0 -57
- package/src/_esm/src/ts/utils/InitializationObserver.js.map +0 -1
- package/src/_esm/src/ts/utils/LissajousFigure.d.ts +0 -34
- package/src/_esm/src/ts/utils/LissajousFigure.js +0 -95
- package/src/_esm/src/ts/utils/LissajousFigure.js.map +0 -1
- package/src/_esm/src/ts/utils/NGons.d.ts +0 -13
- package/src/_esm/src/ts/utils/NGons.js +0 -33
- package/src/_esm/src/ts/utils/NGons.js.map +0 -1
- package/src/_esm/src/ts/utils/Params.d.ts +0 -17
- package/src/_esm/src/ts/utils/Params.js +0 -48
- package/src/_esm/src/ts/utils/Params.js.map +0 -1
- package/src/_esm/src/ts/utils/PerlinNoise.d.ts +0 -19
- package/src/_esm/src/ts/utils/PerlinNoise.js +0 -346
- package/src/_esm/src/ts/utils/PerlinNoise.js.map +0 -1
- package/src/_esm/src/ts/utils/SVGPathUtils.d.ts +0 -22
- package/src/_esm/src/ts/utils/SVGPathUtils.js +0 -42
- package/src/_esm/src/ts/utils/SVGPathUtils.js.map +0 -1
- package/src/_esm/src/ts/utils/WebColors.d.ts +0 -35
- package/src/_esm/src/ts/utils/WebColors.js +0 -54
- package/src/_esm/src/ts/utils/WebColors.js.map +0 -1
- package/src/_esm/src/ts/utils/WebColorsContrast.d.ts +0 -6
- package/src/_esm/src/ts/utils/WebColorsContrast.js +0 -9
- package/src/_esm/src/ts/utils/WebColorsContrast.js.map +0 -1
- package/src/_esm/src/ts/utils/WebColorsMalachite.d.ts +0 -12
- package/src/_esm/src/ts/utils/WebColorsMalachite.js +0 -25
- package/src/_esm/src/ts/utils/WebColorsMalachite.js.map +0 -1
- package/src/_esm/src/ts/utils/algorithms/CatmullRomPath.d.ts +0 -60
- package/src/_esm/src/ts/utils/algorithms/CatmullRomPath.js +0 -103
- package/src/_esm/src/ts/utils/algorithms/CatmullRomPath.js.map +0 -1
- package/src/_esm/src/ts/utils/algorithms/CircleIntersections.d.ts +0 -170
- package/src/_esm/src/ts/utils/algorithms/CircleIntersections.js +0 -303
- package/src/_esm/src/ts/utils/algorithms/CircleIntersections.js.map +0 -1
- package/src/_esm/src/ts/utils/algorithms/ContourLineDetection.d.ts +0 -150
- package/src/_esm/src/ts/utils/algorithms/ContourLineDetection.js +0 -362
- package/src/_esm/src/ts/utils/algorithms/ContourLineDetection.js.map +0 -1
- package/src/_esm/src/ts/utils/algorithms/CubicSplinePath.d.ts +0 -63
- package/src/_esm/src/ts/utils/algorithms/CubicSplinePath.js +0 -170
- package/src/_esm/src/ts/utils/algorithms/CubicSplinePath.js.map +0 -1
- package/src/_esm/src/ts/utils/algorithms/HobbyPath.d.ts +0 -81
- package/src/_esm/src/ts/utils/algorithms/HobbyPath.js +0 -273
- package/src/_esm/src/ts/utils/algorithms/HobbyPath.js.map +0 -1
- package/src/_esm/src/ts/utils/algorithms/Metaballs.d.ts +0 -30
- package/src/_esm/src/ts/utils/algorithms/Metaballs.js +0 -109
- package/src/_esm/src/ts/utils/algorithms/Metaballs.js.map +0 -1
- package/src/_esm/src/ts/utils/algorithms/PolygonInset.d.ts +0 -184
- package/src/_esm/src/ts/utils/algorithms/PolygonInset.js +0 -424
- package/src/_esm/src/ts/utils/algorithms/PolygonInset.js.map +0 -1
- package/src/_esm/src/ts/utils/algorithms/PolygonTesselationOutlines.d.ts +0 -145
- package/src/_esm/src/ts/utils/algorithms/PolygonTesselationOutlines.js +0 -262
- package/src/_esm/src/ts/utils/algorithms/PolygonTesselationOutlines.js.map +0 -1
- package/src/_esm/src/ts/utils/algorithms/arrayFill.d.ts +0 -8
- package/src/_esm/src/ts/utils/algorithms/arrayFill.js +0 -14
- package/src/_esm/src/ts/utils/algorithms/arrayFill.js.map +0 -1
- package/src/_esm/src/ts/utils/algorithms/arrayResize.d.ts +0 -8
- package/src/_esm/src/ts/utils/algorithms/arrayResize.js +0 -20
- package/src/_esm/src/ts/utils/algorithms/arrayResize.js.map +0 -1
- package/src/_esm/src/ts/utils/algorithms/arrayShuffle.d.ts +0 -8
- package/src/_esm/src/ts/utils/algorithms/arrayShuffle.js +0 -11
- package/src/_esm/src/ts/utils/algorithms/arrayShuffle.js.map +0 -1
- package/src/_esm/src/ts/utils/algorithms/clearDuplicateVertices.d.ts +0 -22
- package/src/_esm/src/ts/utils/algorithms/clearDuplicateVertices.js +0 -47
- package/src/_esm/src/ts/utils/algorithms/clearDuplicateVertices.js.map +0 -1
- package/src/_esm/src/ts/utils/algorithms/clearPolygonDuplicateVertices.d.ts +0 -24
- package/src/_esm/src/ts/utils/algorithms/clearPolygonDuplicateVertices.js +0 -57
- package/src/_esm/src/ts/utils/algorithms/clearPolygonDuplicateVertices.js.map +0 -1
- package/src/_esm/src/ts/utils/algorithms/convexHull.d.ts +0 -23
- package/src/_esm/src/ts/utils/algorithms/convexHull.js +0 -67
- package/src/_esm/src/ts/utils/algorithms/convexHull.js.map +0 -1
- package/src/_esm/src/ts/utils/algorithms/convexPolygonIncircle.d.ts +0 -41
- package/src/_esm/src/ts/utils/algorithms/convexPolygonIncircle.js +0 -141
- package/src/_esm/src/ts/utils/algorithms/convexPolygonIncircle.js.map +0 -1
- package/src/_esm/src/ts/utils/algorithms/delaunay.d.ts +0 -30
- package/src/_esm/src/ts/utils/algorithms/delaunay.js +0 -153
- package/src/_esm/src/ts/utils/algorithms/delaunay.js.map +0 -1
- package/src/_esm/src/ts/utils/algorithms/delaunay2voronoi.d.ts +0 -25
- package/src/_esm/src/ts/utils/algorithms/delaunay2voronoi.js +0 -99
- package/src/_esm/src/ts/utils/algorithms/delaunay2voronoi.js.map +0 -1
- package/src/_esm/src/ts/utils/algorithms/detectPaths.d.ts +0 -21
- package/src/_esm/src/ts/utils/algorithms/detectPaths.js +0 -165
- package/src/_esm/src/ts/utils/algorithms/detectPaths.js.map +0 -1
- package/src/_esm/src/ts/utils/algorithms/findPolygonSelfIntersections.d.ts +0 -21
- package/src/_esm/src/ts/utils/algorithms/findPolygonSelfIntersections.js +0 -47
- package/src/_esm/src/ts/utils/algorithms/findPolygonSelfIntersections.js.map +0 -1
- package/src/_esm/src/ts/utils/algorithms/getContrastColor.d.ts +0 -13
- package/src/_esm/src/ts/utils/algorithms/getContrastColor.js +0 -22
- package/src/_esm/src/ts/utils/algorithms/getContrastColor.js.map +0 -1
- package/src/_esm/src/ts/utils/algorithms/matrixFill.d.ts +0 -10
- package/src/_esm/src/ts/utils/algorithms/matrixFill.js +0 -17
- package/src/_esm/src/ts/utils/algorithms/matrixFill.js.map +0 -1
- package/src/_esm/src/ts/utils/algorithms/pixelCornersToRoundPaths.d.ts +0 -23
- package/src/_esm/src/ts/utils/algorithms/pixelCornersToRoundPaths.js +0 -266
- package/src/_esm/src/ts/utils/algorithms/pixelCornersToRoundPaths.js.map +0 -1
- package/src/_esm/src/ts/utils/algorithms/splitPolygonToNonIntersecting.d.ts +0 -28
- package/src/_esm/src/ts/utils/algorithms/splitPolygonToNonIntersecting.js +0 -99
- package/src/_esm/src/ts/utils/algorithms/splitPolygonToNonIntersecting.js.map +0 -1
- package/src/_esm/src/ts/utils/algorithms/sutherlandHodgman.d.ts +0 -16
- package/src/_esm/src/ts/utils/algorithms/sutherlandHodgman.js +0 -72
- package/src/_esm/src/ts/utils/algorithms/sutherlandHodgman.js.map +0 -1
- package/src/_esm/src/ts/utils/cloneVertexArray.d.ts +0 -13
- package/src/_esm/src/ts/utils/cloneVertexArray.js +0 -19
- package/src/_esm/src/ts/utils/cloneVertexArray.js.map +0 -1
- package/src/_esm/src/ts/utils/createRandomizedPolygon.d.ts +0 -14
- package/src/_esm/src/ts/utils/createRandomizedPolygon.js +0 -28
- package/src/_esm/src/ts/utils/createRandomizedPolygon.js.map +0 -1
- package/src/_esm/src/ts/utils/datastructures/CircularIntervalSet.d.ts +0 -83
- package/src/_esm/src/ts/utils/datastructures/CircularIntervalSet.js +0 -158
- package/src/_esm/src/ts/utils/datastructures/CircularIntervalSet.js.map +0 -1
- package/src/_esm/src/ts/utils/datastructures/Color.d.ts +0 -391
- package/src/_esm/src/ts/utils/datastructures/Color.js +0 -1063
- package/src/_esm/src/ts/utils/datastructures/Color.js.map +0 -1
- package/src/_esm/src/ts/utils/datastructures/ColorGradient.d.ts +0 -81
- package/src/_esm/src/ts/utils/datastructures/ColorGradient.js +0 -171
- package/src/_esm/src/ts/utils/datastructures/ColorGradient.js.map +0 -1
- package/src/_esm/src/ts/utils/datastructures/DataGrid2d.d.ts +0 -53
- package/src/_esm/src/ts/utils/datastructures/DataGrid2d.js +0 -19
- package/src/_esm/src/ts/utils/datastructures/DataGrid2d.js.map +0 -1
- package/src/_esm/src/ts/utils/datastructures/DataGrid2dArrayMatrix.d.ts +0 -88
- package/src/_esm/src/ts/utils/datastructures/DataGrid2dArrayMatrix.js +0 -150
- package/src/_esm/src/ts/utils/datastructures/DataGrid2dArrayMatrix.js.map +0 -1
- package/src/_esm/src/ts/utils/datastructures/DataGrid2dListAdapter.d.ts +0 -59
- package/src/_esm/src/ts/utils/datastructures/DataGrid2dListAdapter.js +0 -79
- package/src/_esm/src/ts/utils/datastructures/DataGrid2dListAdapter.js.map +0 -1
- package/src/_esm/src/ts/utils/datastructures/GenericPath.d.ts +0 -86
- package/src/_esm/src/ts/utils/datastructures/GenericPath.js +0 -117
- package/src/_esm/src/ts/utils/datastructures/GenericPath.js.map +0 -1
- package/src/_esm/src/ts/utils/datastructures/GeometryMesh.d.ts +0 -49
- package/src/_esm/src/ts/utils/datastructures/GeometryMesh.js +0 -53
- package/src/_esm/src/ts/utils/datastructures/GeometryMesh.js.map +0 -1
- package/src/_esm/src/ts/utils/datastructures/Girih.d.ts +0 -181
- package/src/_esm/src/ts/utils/datastructures/Girih.js +0 -261
- package/src/_esm/src/ts/utils/datastructures/Girih.js.map +0 -1
- package/src/_esm/src/ts/utils/datastructures/GirihBowtie.d.ts +0 -37
- package/src/_esm/src/ts/utils/datastructures/GirihBowtie.js +0 -130
- package/src/_esm/src/ts/utils/datastructures/GirihBowtie.js.map +0 -1
- package/src/_esm/src/ts/utils/datastructures/GirihDecagon.d.ts +0 -52
- package/src/_esm/src/ts/utils/datastructures/GirihDecagon.js +0 -110
- package/src/_esm/src/ts/utils/datastructures/GirihDecagon.js.map +0 -1
- package/src/_esm/src/ts/utils/datastructures/GirihHexagon.d.ts +0 -39
- package/src/_esm/src/ts/utils/datastructures/GirihHexagon.js +0 -178
- package/src/_esm/src/ts/utils/datastructures/GirihHexagon.js.map +0 -1
- package/src/_esm/src/ts/utils/datastructures/GirihPenroseRhombus.d.ts +0 -46
- package/src/_esm/src/ts/utils/datastructures/GirihPenroseRhombus.js +0 -167
- package/src/_esm/src/ts/utils/datastructures/GirihPenroseRhombus.js.map +0 -1
- package/src/_esm/src/ts/utils/datastructures/GirihPentagon.d.ts +0 -37
- package/src/_esm/src/ts/utils/datastructures/GirihPentagon.js +0 -87
- package/src/_esm/src/ts/utils/datastructures/GirihPentagon.js.map +0 -1
- package/src/_esm/src/ts/utils/datastructures/GirihRhombus.d.ts +0 -38
- package/src/_esm/src/ts/utils/datastructures/GirihRhombus.js +0 -133
- package/src/_esm/src/ts/utils/datastructures/GirihRhombus.js.map +0 -1
- package/src/_esm/src/ts/utils/datastructures/GirihTile.d.ts +0 -283
- package/src/_esm/src/ts/utils/datastructures/GirihTile.js +0 -286
- package/src/_esm/src/ts/utils/datastructures/GirihTile.js.map +0 -1
- package/src/_esm/src/ts/utils/datastructures/Matrix4x4.d.ts +0 -244
- package/src/_esm/src/ts/utils/datastructures/Matrix4x4.js +0 -246
- package/src/_esm/src/ts/utils/datastructures/Matrix4x4.js.map +0 -1
- package/src/_esm/src/ts/utils/datastructures/VoronoiCell.d.ts +0 -122
- package/src/_esm/src/ts/utils/datastructures/VoronoiCell.js +0 -178
- package/src/_esm/src/ts/utils/datastructures/VoronoiCell.js.map +0 -1
- package/src/_esm/src/ts/utils/datastructures/interfaces.d.ts +0 -13
- package/src/_esm/src/ts/utils/datastructures/interfaces.js +0 -9
- package/src/_esm/src/ts/utils/datastructures/interfaces.js.map +0 -1
- package/src/_esm/src/ts/utils/detectDarkMode.d.ts +0 -10
- package/src/_esm/src/ts/utils/detectDarkMode.js +0 -37
- package/src/_esm/src/ts/utils/detectDarkMode.js.map +0 -1
- package/src/_esm/src/ts/utils/dom/components/ColorGradientPicker.d.ts +0 -246
- package/src/_esm/src/ts/utils/dom/components/ColorGradientPicker.js +0 -743
- package/src/_esm/src/ts/utils/dom/components/ColorGradientPicker.js.map +0 -1
- package/src/_esm/src/ts/utils/dom/components/ColorGradientSelector.d.ts +0 -118
- package/src/_esm/src/ts/utils/dom/components/ColorGradientSelector.js +0 -339
- package/src/_esm/src/ts/utils/dom/components/ColorGradientSelector.js.map +0 -1
- package/src/_esm/src/ts/utils/dom/components/Test.d.ts +0 -7
- package/src/_esm/src/ts/utils/dom/components/Test.js +0 -26
- package/src/_esm/src/ts/utils/dom/components/Test.js.map +0 -1
- package/src/_esm/src/ts/utils/dom/getAvailableContainerSpace.d.ts +0 -2
- package/src/_esm/src/ts/utils/dom/getAvailableContainerSpace.js +0 -25
- package/src/_esm/src/ts/utils/dom/getAvailableContainerSpace.js.map +0 -1
- package/src/_esm/src/ts/utils/dom/getFProp.d.ts +0 -5
- package/src/_esm/src/ts/utils/dom/getFProp.js +0 -8
- package/src/_esm/src/ts/utils/dom/getFProp.js.map +0 -1
- package/src/_esm/src/ts/utils/dom/guiSizeToggler.d.ts +0 -18
- package/src/_esm/src/ts/utils/dom/guiSizeToggler.js +0 -40
- package/src/_esm/src/ts/utils/dom/guiSizeToggler.js.map +0 -1
- package/src/_esm/src/ts/utils/findInVertexArray.d.ts +0 -19
- package/src/_esm/src/ts/utils/findInVertexArray.js +0 -25
- package/src/_esm/src/ts/utils/findInVertexArray.js.map +0 -1
- package/src/_esm/src/ts/utils/gup.d.ts +0 -14
- package/src/_esm/src/ts/utils/gup.js +0 -27
- package/src/_esm/src/ts/utils/gup.js.map +0 -1
- package/src/_esm/src/ts/utils/helpers/BezierPathInteractionHelper.d.ts +0 -272
- package/src/_esm/src/ts/utils/helpers/BezierPathInteractionHelper.js +0 -648
- package/src/_esm/src/ts/utils/helpers/BezierPathInteractionHelper.js.map +0 -1
- package/src/_esm/src/ts/utils/helpers/CircleHelper.d.ts +0 -73
- package/src/_esm/src/ts/utils/helpers/CircleHelper.js +0 -88
- package/src/_esm/src/ts/utils/helpers/CircleHelper.js.map +0 -1
- package/src/_esm/src/ts/utils/helpers/CircleSectorHelper.d.ts +0 -90
- package/src/_esm/src/ts/utils/helpers/CircleSectorHelper.js +0 -109
- package/src/_esm/src/ts/utils/helpers/CircleSectorHelper.js.map +0 -1
- package/src/_esm/src/ts/utils/helpers/TriangleHelper.d.ts +0 -57
- package/src/_esm/src/ts/utils/helpers/TriangleHelper.js +0 -78
- package/src/_esm/src/ts/utils/helpers/TriangleHelper.js.map +0 -1
- package/src/_esm/src/ts/utils/helpers/VEllipseHelper.d.ts +0 -32
- package/src/_esm/src/ts/utils/helpers/VEllipseHelper.js +0 -83
- package/src/_esm/src/ts/utils/helpers/VEllipseHelper.js.map +0 -1
- package/src/_esm/src/ts/utils/helpers/VEllipseSectorHelper.d.ts +0 -52
- package/src/_esm/src/ts/utils/helpers/VEllipseSectorHelper.js +0 -130
- package/src/_esm/src/ts/utils/helpers/VEllipseSectorHelper.js.map +0 -1
- package/src/_esm/src/ts/utils/io/FileDrop.d.ts +0 -110
- package/src/_esm/src/ts/utils/io/FileDrop.js +0 -171
- package/src/_esm/src/ts/utils/io/FileDrop.js.map +0 -1
- package/src/_esm/src/ts/utils/parsers/LinearColorGradientParser.d.ts +0 -78
- package/src/_esm/src/ts/utils/parsers/LinearColorGradientParser.js +0 -217
- package/src/_esm/src/ts/utils/parsers/LinearColorGradientParser.js.map +0 -1
- package/src/_esm/src/ts/utils/parsers/OBJParser.d.ts +0 -24
- package/src/_esm/src/ts/utils/parsers/OBJParser.js +0 -72
- package/src/_esm/src/ts/utils/parsers/OBJParser.js.map +0 -1
- package/src/_esm/src/ts/utils/parsers/STLParser.d.ts +0 -61
- package/src/_esm/src/ts/utils/parsers/STLParser.js +0 -175
- package/src/_esm/src/ts/utils/parsers/STLParser.js.map +0 -1
- package/src/_esm/src/ts/utils/parsers/svg/parseSVGPathData.d.ts +0 -27
- package/src/_esm/src/ts/utils/parsers/svg/parseSVGPathData.js +0 -482
- package/src/_esm/src/ts/utils/parsers/svg/parseSVGPathData.js.map +0 -1
- package/src/_esm/src/ts/utils/parsers/svg/splitSVGPathData.d.ts +0 -20
- package/src/_esm/src/ts/utils/parsers/svg/splitSVGPathData.js +0 -49
- package/src/_esm/src/ts/utils/parsers/svg/splitSVGPathData.js.map +0 -1
- package/src/_esm/src/ts/utils/parsers/svg/types.d.ts +0 -63
- package/src/_esm/src/ts/utils/parsers/svg/types.js +0 -16
- package/src/_esm/src/ts/utils/parsers/svg/types.js.map +0 -1
- package/src/_esm/utils/InitializationObserver.d.ts +0 -18
- package/src/_esm/utils/InitializationObserver.js +0 -61
- package/src/_esm/utils/InitializationObserver.js.map +0 -1
- package/src/_esm/utils/LissajousFigure.d.ts +0 -34
- package/src/_esm/utils/LissajousFigure.js +0 -99
- package/src/_esm/utils/LissajousFigure.js.map +0 -1
- package/src/_esm/utils/NGons.d.ts +0 -13
- package/src/_esm/utils/NGons.js +0 -36
- package/src/_esm/utils/NGons.js.map +0 -1
- package/src/_esm/utils/Params.d.ts +0 -17
- package/src/_esm/utils/Params.js +0 -52
- package/src/_esm/utils/Params.js.map +0 -1
- package/src/_esm/utils/PerlinNoise.d.ts +0 -19
- package/src/_esm/utils/PerlinNoise.js +0 -350
- package/src/_esm/utils/PerlinNoise.js.map +0 -1
- package/src/_esm/utils/SVGPathUtils.d.ts +0 -22
- package/src/_esm/utils/SVGPathUtils.js +0 -45
- package/src/_esm/utils/SVGPathUtils.js.map +0 -1
- package/src/_esm/utils/WebColors.d.ts +0 -35
- package/src/_esm/utils/WebColors.js +0 -58
- package/src/_esm/utils/WebColors.js.map +0 -1
- package/src/_esm/utils/WebColorsContrast.d.ts +0 -6
- package/src/_esm/utils/WebColorsContrast.js +0 -12
- package/src/_esm/utils/WebColorsContrast.js.map +0 -1
- package/src/_esm/utils/WebColorsMalachite.d.ts +0 -12
- package/src/_esm/utils/WebColorsMalachite.js +0 -28
- package/src/_esm/utils/WebColorsMalachite.js.map +0 -1
- package/src/_esm/utils/algorithms/CatmullRomPath.d.ts +0 -60
- package/src/_esm/utils/algorithms/CatmullRomPath.js +0 -107
- package/src/_esm/utils/algorithms/CatmullRomPath.js.map +0 -1
- package/src/_esm/utils/algorithms/CircleIntersections.d.ts +0 -170
- package/src/_esm/utils/algorithms/CircleIntersections.js +0 -307
- package/src/_esm/utils/algorithms/CircleIntersections.js.map +0 -1
- package/src/_esm/utils/algorithms/ContourLineDetection.d.ts +0 -150
- package/src/_esm/utils/algorithms/ContourLineDetection.js +0 -366
- package/src/_esm/utils/algorithms/ContourLineDetection.js.map +0 -1
- package/src/_esm/utils/algorithms/CubicSplinePath.d.ts +0 -63
- package/src/_esm/utils/algorithms/CubicSplinePath.js +0 -174
- package/src/_esm/utils/algorithms/CubicSplinePath.js.map +0 -1
- package/src/_esm/utils/algorithms/HobbyPath.d.ts +0 -81
- package/src/_esm/utils/algorithms/HobbyPath.js +0 -277
- package/src/_esm/utils/algorithms/HobbyPath.js.map +0 -1
- package/src/_esm/utils/algorithms/Metaballs.d.ts +0 -30
- package/src/_esm/utils/algorithms/Metaballs.js +0 -113
- package/src/_esm/utils/algorithms/Metaballs.js.map +0 -1
- package/src/_esm/utils/algorithms/PolygonInset.d.ts +0 -184
- package/src/_esm/utils/algorithms/PolygonInset.js +0 -428
- package/src/_esm/utils/algorithms/PolygonInset.js.map +0 -1
- package/src/_esm/utils/algorithms/PolygonTesselationOutlines.d.ts +0 -145
- package/src/_esm/utils/algorithms/PolygonTesselationOutlines.js +0 -267
- package/src/_esm/utils/algorithms/PolygonTesselationOutlines.js.map +0 -1
- package/src/_esm/utils/algorithms/arrayFill.d.ts +0 -8
- package/src/_esm/utils/algorithms/arrayFill.js +0 -18
- package/src/_esm/utils/algorithms/arrayFill.js.map +0 -1
- package/src/_esm/utils/algorithms/arrayResize.d.ts +0 -8
- package/src/_esm/utils/algorithms/arrayResize.js +0 -24
- package/src/_esm/utils/algorithms/arrayResize.js.map +0 -1
- package/src/_esm/utils/algorithms/arrayShuffle.d.ts +0 -8
- package/src/_esm/utils/algorithms/arrayShuffle.js +0 -15
- package/src/_esm/utils/algorithms/arrayShuffle.js.map +0 -1
- package/src/_esm/utils/algorithms/clearDuplicateVertices.d.ts +0 -22
- package/src/_esm/utils/algorithms/clearDuplicateVertices.js +0 -51
- package/src/_esm/utils/algorithms/clearDuplicateVertices.js.map +0 -1
- package/src/_esm/utils/algorithms/clearPolygonDuplicateVertices.d.ts +0 -24
- package/src/_esm/utils/algorithms/clearPolygonDuplicateVertices.js +0 -61
- package/src/_esm/utils/algorithms/clearPolygonDuplicateVertices.js.map +0 -1
- package/src/_esm/utils/algorithms/convexHull.d.ts +0 -23
- package/src/_esm/utils/algorithms/convexHull.js +0 -71
- package/src/_esm/utils/algorithms/convexHull.js.map +0 -1
- package/src/_esm/utils/algorithms/convexPolygonIncircle.d.ts +0 -41
- package/src/_esm/utils/algorithms/convexPolygonIncircle.js +0 -145
- package/src/_esm/utils/algorithms/convexPolygonIncircle.js.map +0 -1
- package/src/_esm/utils/algorithms/createRandomizedPolygon.d.ts +0 -14
- package/src/_esm/utils/algorithms/createRandomizedPolygon.js +0 -28
- package/src/_esm/utils/algorithms/createRandomizedPolygon.js.map +0 -1
- package/src/_esm/utils/algorithms/delaunay.d.ts +0 -30
- package/src/_esm/utils/algorithms/delaunay.js +0 -157
- package/src/_esm/utils/algorithms/delaunay.js.map +0 -1
- package/src/_esm/utils/algorithms/delaunay2voronoi.d.ts +0 -25
- package/src/_esm/utils/algorithms/delaunay2voronoi.js +0 -103
- package/src/_esm/utils/algorithms/delaunay2voronoi.js.map +0 -1
- package/src/_esm/utils/algorithms/detectPaths.d.ts +0 -21
- package/src/_esm/utils/algorithms/detectPaths.js +0 -169
- package/src/_esm/utils/algorithms/detectPaths.js.map +0 -1
- package/src/_esm/utils/algorithms/findPolygonSelfIntersections.d.ts +0 -21
- package/src/_esm/utils/algorithms/findPolygonSelfIntersections.js +0 -51
- package/src/_esm/utils/algorithms/findPolygonSelfIntersections.js.map +0 -1
- package/src/_esm/utils/algorithms/getContrastColor.d.ts +0 -13
- package/src/_esm/utils/algorithms/getContrastColor.js +0 -26
- package/src/_esm/utils/algorithms/getContrastColor.js.map +0 -1
- package/src/_esm/utils/algorithms/matrixFill.d.ts +0 -10
- package/src/_esm/utils/algorithms/matrixFill.js +0 -21
- package/src/_esm/utils/algorithms/matrixFill.js.map +0 -1
- package/src/_esm/utils/algorithms/pixelCornersToRoundPaths.d.ts +0 -23
- package/src/_esm/utils/algorithms/pixelCornersToRoundPaths.js +0 -270
- package/src/_esm/utils/algorithms/pixelCornersToRoundPaths.js.map +0 -1
- package/src/_esm/utils/algorithms/splitPolygonToNonIntersecting.d.ts +0 -28
- package/src/_esm/utils/algorithms/splitPolygonToNonIntersecting.js +0 -102
- package/src/_esm/utils/algorithms/splitPolygonToNonIntersecting.js.map +0 -1
- package/src/_esm/utils/algorithms/sutherlandHodgman.d.ts +0 -16
- package/src/_esm/utils/algorithms/sutherlandHodgman.js +0 -76
- package/src/_esm/utils/algorithms/sutherlandHodgman.js.map +0 -1
- package/src/_esm/utils/cloneVertexArray.d.ts +0 -13
- package/src/_esm/utils/cloneVertexArray.js +0 -23
- package/src/_esm/utils/cloneVertexArray.js.map +0 -1
- package/src/_esm/utils/createRandomizedPolygon.d.ts +0 -14
- package/src/_esm/utils/createRandomizedPolygon.js +0 -32
- package/src/_esm/utils/createRandomizedPolygon.js.map +0 -1
- package/src/_esm/utils/datastructures/CircularIntervalSet.d.ts +0 -83
- package/src/_esm/utils/datastructures/CircularIntervalSet.js +0 -162
- package/src/_esm/utils/datastructures/CircularIntervalSet.js.map +0 -1
- package/src/_esm/utils/datastructures/Color.d.ts +0 -391
- package/src/_esm/utils/datastructures/Color.js +0 -1067
- package/src/_esm/utils/datastructures/Color.js.map +0 -1
- package/src/_esm/utils/datastructures/ColorGradient.d.ts +0 -81
- package/src/_esm/utils/datastructures/ColorGradient.js +0 -175
- package/src/_esm/utils/datastructures/ColorGradient.js.map +0 -1
- package/src/_esm/utils/datastructures/DataGrid2d.d.ts +0 -53
- package/src/_esm/utils/datastructures/DataGrid2d.js +0 -20
- package/src/_esm/utils/datastructures/DataGrid2d.js.map +0 -1
- package/src/_esm/utils/datastructures/DataGrid2dArrayMatrix.d.ts +0 -88
- package/src/_esm/utils/datastructures/DataGrid2dArrayMatrix.js +0 -154
- package/src/_esm/utils/datastructures/DataGrid2dArrayMatrix.js.map +0 -1
- package/src/_esm/utils/datastructures/DataGrid2dListAdapter.d.ts +0 -59
- package/src/_esm/utils/datastructures/DataGrid2dListAdapter.js +0 -83
- package/src/_esm/utils/datastructures/DataGrid2dListAdapter.js.map +0 -1
- package/src/_esm/utils/datastructures/GenericPath.d.ts +0 -86
- package/src/_esm/utils/datastructures/GenericPath.js +0 -121
- package/src/_esm/utils/datastructures/GenericPath.js.map +0 -1
- package/src/_esm/utils/datastructures/GeometryMesh.d.ts +0 -49
- package/src/_esm/utils/datastructures/GeometryMesh.js +0 -57
- package/src/_esm/utils/datastructures/GeometryMesh.js.map +0 -1
- package/src/_esm/utils/datastructures/Girih.d.ts +0 -181
- package/src/_esm/utils/datastructures/Girih.js +0 -265
- package/src/_esm/utils/datastructures/Girih.js.map +0 -1
- package/src/_esm/utils/datastructures/GirihBowtie.d.ts +0 -37
- package/src/_esm/utils/datastructures/GirihBowtie.js +0 -134
- package/src/_esm/utils/datastructures/GirihBowtie.js.map +0 -1
- package/src/_esm/utils/datastructures/GirihDecagon.d.ts +0 -52
- package/src/_esm/utils/datastructures/GirihDecagon.js +0 -114
- package/src/_esm/utils/datastructures/GirihDecagon.js.map +0 -1
- package/src/_esm/utils/datastructures/GirihHexagon.d.ts +0 -39
- package/src/_esm/utils/datastructures/GirihHexagon.js +0 -182
- package/src/_esm/utils/datastructures/GirihHexagon.js.map +0 -1
- package/src/_esm/utils/datastructures/GirihPenroseRhombus.d.ts +0 -46
- package/src/_esm/utils/datastructures/GirihPenroseRhombus.js +0 -171
- package/src/_esm/utils/datastructures/GirihPenroseRhombus.js.map +0 -1
- package/src/_esm/utils/datastructures/GirihPentagon.d.ts +0 -37
- package/src/_esm/utils/datastructures/GirihPentagon.js +0 -91
- package/src/_esm/utils/datastructures/GirihPentagon.js.map +0 -1
- package/src/_esm/utils/datastructures/GirihRhombus.d.ts +0 -38
- package/src/_esm/utils/datastructures/GirihRhombus.js +0 -137
- package/src/_esm/utils/datastructures/GirihRhombus.js.map +0 -1
- package/src/_esm/utils/datastructures/GirihTile.d.ts +0 -283
- package/src/_esm/utils/datastructures/GirihTile.js +0 -290
- package/src/_esm/utils/datastructures/GirihTile.js.map +0 -1
- package/src/_esm/utils/datastructures/Matrix4x4.d.ts +0 -244
- package/src/_esm/utils/datastructures/Matrix4x4.js +0 -250
- package/src/_esm/utils/datastructures/Matrix4x4.js.map +0 -1
- package/src/_esm/utils/datastructures/VoronoiCell.d.ts +0 -122
- package/src/_esm/utils/datastructures/VoronoiCell.js +0 -182
- package/src/_esm/utils/datastructures/VoronoiCell.js.map +0 -1
- package/src/_esm/utils/datastructures/interfaces.d.ts +0 -13
- package/src/_esm/utils/datastructures/interfaces.js +0 -10
- package/src/_esm/utils/datastructures/interfaces.js.map +0 -1
- package/src/_esm/utils/detectDarkMode.d.ts +0 -10
- package/src/_esm/utils/detectDarkMode.js +0 -41
- package/src/_esm/utils/detectDarkMode.js.map +0 -1
- package/src/_esm/utils/dom/components/ColorGradientPicker.d.ts +0 -246
- package/src/_esm/utils/dom/components/ColorGradientPicker.js +0 -780
- package/src/_esm/utils/dom/components/ColorGradientPicker.js.map +0 -1
- package/src/_esm/utils/dom/components/ColorGradientPickerJSX.d.ts +0 -129
- package/src/_esm/utils/dom/components/ColorGradientPickerJSX.js +0 -582
- package/src/_esm/utils/dom/components/ColorGradientPickerJSX.js.map +0 -1
- package/src/_esm/utils/dom/components/ColorGradientSelector.d.ts +0 -118
- package/src/_esm/utils/dom/components/ColorGradientSelector.js +0 -376
- package/src/_esm/utils/dom/components/ColorGradientSelector.js.map +0 -1
- package/src/_esm/utils/dom/components/Test.d.ts +0 -7
- package/src/_esm/utils/dom/components/Test.js +0 -63
- package/src/_esm/utils/dom/components/Test.js.map +0 -1
- package/src/_esm/utils/dom/getAvailableContainerSpace.d.ts +0 -2
- package/src/_esm/utils/dom/getAvailableContainerSpace.js +0 -29
- package/src/_esm/utils/dom/getAvailableContainerSpace.js.map +0 -1
- package/src/_esm/utils/dom/getFProp.d.ts +0 -5
- package/src/_esm/utils/dom/getFProp.js +0 -12
- package/src/_esm/utils/dom/getFProp.js.map +0 -1
- package/src/_esm/utils/dom/guiSizeToggler.d.ts +0 -18
- package/src/_esm/utils/dom/guiSizeToggler.js +0 -44
- package/src/_esm/utils/dom/guiSizeToggler.js.map +0 -1
- package/src/_esm/utils/findInVertexArray.d.ts +0 -19
- package/src/_esm/utils/findInVertexArray.js +0 -29
- package/src/_esm/utils/findInVertexArray.js.map +0 -1
- package/src/_esm/utils/getFProp.d.ts +0 -5
- package/src/_esm/utils/getFProp.js +0 -8
- package/src/_esm/utils/getFProp.js.map +0 -1
- package/src/_esm/utils/gup.d.ts +0 -14
- package/src/_esm/utils/gup.js +0 -31
- package/src/_esm/utils/gup.js.map +0 -1
- package/src/_esm/utils/helpers/BezierPathInteractionHelper.d.ts +0 -272
- package/src/_esm/utils/helpers/BezierPathInteractionHelper.js +0 -655
- package/src/_esm/utils/helpers/BezierPathInteractionHelper.js.map +0 -1
- package/src/_esm/utils/helpers/CircleHelper.d.ts +0 -73
- package/src/_esm/utils/helpers/CircleHelper.js +0 -92
- package/src/_esm/utils/helpers/CircleHelper.js.map +0 -1
- package/src/_esm/utils/helpers/CircleSectorHelper.d.ts +0 -90
- package/src/_esm/utils/helpers/CircleSectorHelper.js +0 -113
- package/src/_esm/utils/helpers/CircleSectorHelper.js.map +0 -1
- package/src/_esm/utils/helpers/TriangleHelper.d.ts +0 -57
- package/src/_esm/utils/helpers/TriangleHelper.js +0 -82
- package/src/_esm/utils/helpers/TriangleHelper.js.map +0 -1
- package/src/_esm/utils/helpers/VEllipseHelper.d.ts +0 -32
- package/src/_esm/utils/helpers/VEllipseHelper.js +0 -87
- package/src/_esm/utils/helpers/VEllipseHelper.js.map +0 -1
- package/src/_esm/utils/helpers/VEllipseSectorHelper.d.ts +0 -52
- package/src/_esm/utils/helpers/VEllipseSectorHelper.js +0 -134
- package/src/_esm/utils/helpers/VEllipseSectorHelper.js.map +0 -1
- package/src/_esm/utils/io/DndFileHandler.d.ts +0 -63
- package/src/_esm/utils/io/DndFileHandler.js +0 -106
- package/src/_esm/utils/io/DndFileHandler.js.map +0 -1
- package/src/_esm/utils/io/FileDrop.d.ts +0 -110
- package/src/_esm/utils/io/FileDrop.js +0 -175
- package/src/_esm/utils/io/FileDrop.js.map +0 -1
- package/src/_esm/utils/parsers/LinearColorGradientParser.d.ts +0 -78
- package/src/_esm/utils/parsers/LinearColorGradientParser.js +0 -223
- package/src/_esm/utils/parsers/LinearColorGradientParser.js.map +0 -1
- package/src/_esm/utils/parsers/OBJParser.d.ts +0 -25
- package/src/_esm/utils/parsers/OBJParser.js +0 -78
- package/src/_esm/utils/parsers/OBJParser.js.map +0 -1
- package/src/_esm/utils/parsers/STLParser.d.ts +0 -61
- package/src/_esm/utils/parsers/STLParser.js +0 -179
- package/src/_esm/utils/parsers/STLParser.js.map +0 -1
- package/src/_esm/utils/parsers/svg/parseSVGPathData.d.ts +0 -27
- package/src/_esm/utils/parsers/svg/parseSVGPathData.js +0 -486
- package/src/_esm/utils/parsers/svg/parseSVGPathData.js.map +0 -1
- package/src/_esm/utils/parsers/svg/splitSVGPathData.d.ts +0 -20
- package/src/_esm/utils/parsers/svg/splitSVGPathData.js +0 -53
- package/src/_esm/utils/parsers/svg/splitSVGPathData.js.map +0 -1
- package/src/_esm/utils/parsers/svg/types.d.ts +0 -63
- package/src/_esm/utils/parsers/svg/types.js +0 -17
- package/src/_esm/utils/parsers/svg/types.js.map +0 -1
|
@@ -1,165 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* A function to detect connected paths on the plane given by a random set of segments.
|
|
3
|
-
*
|
|
4
|
-
* Note that is algorithm operates IN PLACE and will ALTER your INPUT array.
|
|
5
|
-
*
|
|
6
|
-
* @author Ikaros Kappler
|
|
7
|
-
* @version 1.0.0
|
|
8
|
-
* @date 2022-10-17
|
|
9
|
-
*/
|
|
10
|
-
import { GenericPath } from "../datastructures/GenericPath";
|
|
11
|
-
/**
|
|
12
|
-
* A private helper function that initializes the visitation tracking and reverses
|
|
13
|
-
* dangling path ends to connect them with preceding paths.
|
|
14
|
-
*
|
|
15
|
-
* Note that this function alters those dangling path segments IN PLACE!
|
|
16
|
-
*
|
|
17
|
-
* @param segments
|
|
18
|
-
* @param epsilon
|
|
19
|
-
* @returns
|
|
20
|
-
*/
|
|
21
|
-
const initVisitationArray = (segments, epsilon) => {
|
|
22
|
-
const result = []; // { visited: false, hasPredecessor: false }
|
|
23
|
-
for (var i = 0; i < segments.length; i++) {
|
|
24
|
-
result.push({ visited: false, hasPredecessor: false, hasSuccessor: false });
|
|
25
|
-
for (var j = 0; j < segments.length; j++) {
|
|
26
|
-
if (i === j) {
|
|
27
|
-
continue;
|
|
28
|
-
}
|
|
29
|
-
if (segments[i].getStartPoint().distance(segments[j].getEndPoint()) < epsilon ||
|
|
30
|
-
segments[i].getStartPoint().distance(segments[j].getStartPoint()) < epsilon) {
|
|
31
|
-
result[i].hasPredecessor = true;
|
|
32
|
-
}
|
|
33
|
-
if (segments[i].getEndPoint().distance(segments[j].getEndPoint()) < epsilon ||
|
|
34
|
-
segments[i].getEndPoint().distance(segments[j].getStartPoint()) < epsilon) {
|
|
35
|
-
result[i].hasSuccessor = true;
|
|
36
|
-
}
|
|
37
|
-
}
|
|
38
|
-
}
|
|
39
|
-
// After first initialization make sure that no loose path ends are dangling around
|
|
40
|
-
// if the affected path segment has a predecessor (but nu successor).
|
|
41
|
-
//
|
|
42
|
-
// Revert those segments. This makes the actual detection algorithm much easier.
|
|
43
|
-
for (var i = 0; i < segments.length; i++) {
|
|
44
|
-
if (!result[i].hasSuccessor && result[i].hasPredecessor) {
|
|
45
|
-
segments[i] = segments[i].reverse();
|
|
46
|
-
result[i].hasPredecessor = false;
|
|
47
|
-
result[i].hasSuccessor = true;
|
|
48
|
-
}
|
|
49
|
-
}
|
|
50
|
-
return result;
|
|
51
|
-
};
|
|
52
|
-
/**
|
|
53
|
-
* Find the next unvisited path segment (private helper function).
|
|
54
|
-
*
|
|
55
|
-
* There is a special order: starting path segments (those without any predecessor)
|
|
56
|
-
* will be preferred. If no more open paths are available (no starting path segments),
|
|
57
|
-
* then no more unvisited paths are available or all remaining paths are loops (without
|
|
58
|
-
* determined start/end).
|
|
59
|
-
*
|
|
60
|
-
* Doing this keeps us from the need to run a final loop to connect detected sub paths.
|
|
61
|
-
*
|
|
62
|
-
* @param {Array<PathSegment>} segments - The path segments to search in.
|
|
63
|
-
* @param { Array<Visitation>} isSegmentVisited
|
|
64
|
-
* @returns {number} The index of the next unvisited path segment or -1 if no more are available.
|
|
65
|
-
*/
|
|
66
|
-
const locateUnvisitedSegment = (segments, isSegmentVisited) => {
|
|
67
|
-
// First run: detect beginnings
|
|
68
|
-
for (var i = 0; i < segments.length; i++) {
|
|
69
|
-
if (!isSegmentVisited[i].hasPredecessor && !isSegmentVisited[i].visited) {
|
|
70
|
-
return i;
|
|
71
|
-
}
|
|
72
|
-
}
|
|
73
|
-
// Second run: if no beginnings exist -> use inner path segment
|
|
74
|
-
for (var i = 0; i < segments.length; i++) {
|
|
75
|
-
if (!isSegmentVisited[i].visited) {
|
|
76
|
-
return i;
|
|
77
|
-
}
|
|
78
|
-
}
|
|
79
|
-
return -1;
|
|
80
|
-
};
|
|
81
|
-
/**
|
|
82
|
-
* Get the next adjacent path segment to the given (current) segment. This is a private
|
|
83
|
-
* helper function.
|
|
84
|
-
*
|
|
85
|
-
* Note that the function will revert the adjacent path segment if required, so the next
|
|
86
|
-
* starting point 'equals' the current ending point.
|
|
87
|
-
*
|
|
88
|
-
* The visitation tracker will be updated if the adjacent segment was found.
|
|
89
|
-
*
|
|
90
|
-
* @param {Array<PathSegment>} segments - The total set of available path segments (visited and invisited).
|
|
91
|
-
* @param {Array<Visitation>} isSegmentVisited - A tracker of visited path segments so far.
|
|
92
|
-
* @param {PathSegment} currentSegment - The current path segment to find the adjacent segment for.
|
|
93
|
-
* @param {number} epsilon - The epsilon to use to detect 'equal' start/end points. Must be >= 0.
|
|
94
|
-
* @returns {PathSegment | null} The next adjacent path segment of null if no such exists.
|
|
95
|
-
*/
|
|
96
|
-
const getAdjacentSegment = (segments, isSegmentVisited, currentSegment, epsilon) => {
|
|
97
|
-
for (var j = 0; j < segments.length; j++) {
|
|
98
|
-
if (isSegmentVisited[j].visited) {
|
|
99
|
-
continue;
|
|
100
|
-
}
|
|
101
|
-
var nextSegment = segments[j];
|
|
102
|
-
// [start]---[end] [start]---[end]
|
|
103
|
-
if (currentSegment.getEndPoint().distance(nextSegment.getStartPoint()) < epsilon) {
|
|
104
|
-
isSegmentVisited[j].visited = true;
|
|
105
|
-
return nextSegment;
|
|
106
|
-
}
|
|
107
|
-
// [start]---[end] [end]---[start]
|
|
108
|
-
else if (currentSegment.getEndPoint().distance(nextSegment.getEndPoint()) < epsilon) {
|
|
109
|
-
isSegmentVisited[j].visited = true;
|
|
110
|
-
return nextSegment.reverse();
|
|
111
|
-
}
|
|
112
|
-
}
|
|
113
|
-
return null;
|
|
114
|
-
};
|
|
115
|
-
/**
|
|
116
|
-
* A private helper function to find the adjacent full path for the given path segment,
|
|
117
|
-
* considering the current path segment is a starting segment (or one inside a loop).
|
|
118
|
-
*
|
|
119
|
-
* @param {Array<PathSegment>} segments - The total set of available path segments.
|
|
120
|
-
* @param { Array<Visitation>} isSegmentVisited - A tracker to determine which segments have already been visited.
|
|
121
|
-
* @param {number} currentSegmentIndex - The index of the current segments to find the containing path for.
|
|
122
|
-
* @param {number} epsilon - The epsilon to use to determine 'equal' path points. Must be >= 0.
|
|
123
|
-
* @returns {GenericPath} The dected path which consists at least of the current path segment.
|
|
124
|
-
*/
|
|
125
|
-
const detectAdjacentPath = (segments, isSegmentVisited, currentSegmentIndex, epsilon) => {
|
|
126
|
-
var currentSegment = segments[currentSegmentIndex];
|
|
127
|
-
isSegmentVisited[currentSegmentIndex].visited = true;
|
|
128
|
-
const path = new GenericPath(currentSegment); // { segments: [currentSegment], reverse };
|
|
129
|
-
var i = 0;
|
|
130
|
-
// A safety break if something goes wrong
|
|
131
|
-
while (i < segments.length && currentSegment) {
|
|
132
|
-
currentSegment = getAdjacentSegment(segments, isSegmentVisited, currentSegment, epsilon);
|
|
133
|
-
if (currentSegment) {
|
|
134
|
-
path.segments.push(currentSegment);
|
|
135
|
-
}
|
|
136
|
-
i++;
|
|
137
|
-
}
|
|
138
|
-
return path;
|
|
139
|
-
};
|
|
140
|
-
/**
|
|
141
|
-
* Run a path detection on the given set of path segments.
|
|
142
|
-
*
|
|
143
|
-
* Note that the array and some path segments may be altered (like reversal) IN PLACE.
|
|
144
|
-
*
|
|
145
|
-
* @param {Array<PathSegment>} segments - The total set (array) of available path segments.
|
|
146
|
-
* @param {number=1.0} epsilon - (optional) An epsilon to use to tell if two plane points should be considered 'equal'.
|
|
147
|
-
* @returns {Array<GenericPath>} An array containing all detected path (consisting of adjacent path segments of the original set).
|
|
148
|
-
*/
|
|
149
|
-
export const detectPaths = (segments, epsilon) => {
|
|
150
|
-
const eps = typeof epsilon === "undefined" || epsilon < 0 ? 1.0 : epsilon;
|
|
151
|
-
const isSegmentVisited = initVisitationArray(segments, eps);
|
|
152
|
-
const resultPaths = [];
|
|
153
|
-
var nextSegmentIndex = -1;
|
|
154
|
-
var i = 0;
|
|
155
|
-
while ((nextSegmentIndex = locateUnvisitedSegment(segments, isSegmentVisited)) !== -1 && i < segments.length) {
|
|
156
|
-
isSegmentVisited[nextSegmentIndex].visited = true;
|
|
157
|
-
// A safety break (to avoid infinited loops during development).
|
|
158
|
-
i++;
|
|
159
|
-
const path = detectAdjacentPath(segments, isSegmentVisited, nextSegmentIndex, eps);
|
|
160
|
-
i += path.getSegmentCount() - 1;
|
|
161
|
-
resultPaths.push(path);
|
|
162
|
-
}
|
|
163
|
-
return resultPaths;
|
|
164
|
-
};
|
|
165
|
-
//# sourceMappingURL=detectPaths.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"detectPaths.js","sourceRoot":"","sources":["../../../../../ts/utils/algorithms/detectPaths.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,21 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* @requires Line
|
|
3
|
-
* @requires Vertex
|
|
4
|
-
*
|
|
5
|
-
* @author Ikaros Kappler
|
|
6
|
-
* @date 2020-12-04
|
|
7
|
-
* @modified 2020-12-09 Ported from vanilla JS to Typescript.
|
|
8
|
-
* @modified 2024-11-22 Fixed a type error in line 41.
|
|
9
|
-
*/
|
|
10
|
-
import { Vertex } from "../../Vertex";
|
|
11
|
-
import { XYCoords } from "../../interfaces";
|
|
12
|
-
/**
|
|
13
|
-
* Collect all self-intersection points of the given polygon.
|
|
14
|
-
*
|
|
15
|
-
* If the given polygon (vertices) is not self intersecting then the returned array is empty.
|
|
16
|
-
*
|
|
17
|
-
* @name findPolygonSelfIntersections
|
|
18
|
-
* @param {Array<Vertex>} vertices - The vertices that form the polygon.
|
|
19
|
-
* @return {Array<Vertex>}
|
|
20
|
-
*/
|
|
21
|
-
export declare const findPolygonSelfIntersections: (vertices: Array<XYCoords>) => Array<Vertex>;
|
|
@@ -1,47 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* @requires Line
|
|
3
|
-
* @requires Vertex
|
|
4
|
-
*
|
|
5
|
-
* @author Ikaros Kappler
|
|
6
|
-
* @date 2020-12-04
|
|
7
|
-
* @modified 2020-12-09 Ported from vanilla JS to Typescript.
|
|
8
|
-
* @modified 2024-11-22 Fixed a type error in line 41.
|
|
9
|
-
*/
|
|
10
|
-
import { Line } from "../../Line";
|
|
11
|
-
import { Vertex } from "../../Vertex";
|
|
12
|
-
/**
|
|
13
|
-
* Collect all self-intersection points of the given polygon.
|
|
14
|
-
*
|
|
15
|
-
* If the given polygon (vertices) is not self intersecting then the returned array is empty.
|
|
16
|
-
*
|
|
17
|
-
* @name findPolygonSelfIntersections
|
|
18
|
-
* @param {Array<Vertex>} vertices - The vertices that form the polygon.
|
|
19
|
-
* @return {Array<Vertex>}
|
|
20
|
-
*/
|
|
21
|
-
export const findPolygonSelfIntersections = (vertices) => {
|
|
22
|
-
const pointList = [];
|
|
23
|
-
const lineA = new Line(new Vertex(), new Vertex());
|
|
24
|
-
const lineB = new Line(new Vertex(), new Vertex());
|
|
25
|
-
const n = vertices.length;
|
|
26
|
-
for (var a = 0; a < n; a++) {
|
|
27
|
-
lineA.a.set(vertices[a]);
|
|
28
|
-
lineA.b.set(vertices[(a + 1) % n]);
|
|
29
|
-
for (var b = 0; b < n; b++) {
|
|
30
|
-
// Same edge or neighbour edges intersect by definition.
|
|
31
|
-
// Skip them.
|
|
32
|
-
if (a == b || a + 1 == b || a == b + 1 || (a == 0 && b + 1 == n) || (b == 0 && a + 1 == n))
|
|
33
|
-
continue;
|
|
34
|
-
lineB.a.set(vertices[b]);
|
|
35
|
-
lineB.b.set(vertices[(b + 1) % n]);
|
|
36
|
-
// Commpute the intersection point of the (infinite) lines.
|
|
37
|
-
// The point is undefined if and only if both line are parallel (co-linear).
|
|
38
|
-
const intersectionPoint = lineA.intersection(lineB);
|
|
39
|
-
// Check if the intersection point is on both (finite) edges of the polygon.
|
|
40
|
-
if (intersectionPoint && lineA.hasPoint(intersectionPoint) && lineB.hasPoint(intersectionPoint)) {
|
|
41
|
-
pointList.push(intersectionPoint);
|
|
42
|
-
}
|
|
43
|
-
}
|
|
44
|
-
}
|
|
45
|
-
return pointList;
|
|
46
|
-
};
|
|
47
|
-
//# sourceMappingURL=findPolygonSelfIntersections.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"findPolygonSelfIntersections.js","sourceRoot":"","sources":["../../../../../ts/utils/algorithms/findPolygonSelfIntersections.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,EAAE,IAAI,EAAE,MAAM,YAAY,CAAC;AAClC,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AAGtC;;;;;;;;GAQG;AACH,MAAM,CAAC,MAAM,4BAA4B,GAAG,CAAC,QAAyB,EAAiB,EAAE;IACvF,MAAM,SAAS,GAAkB,EAAE,CAAC;IACpC,MAAM,KAAK,GAAS,IAAI,IAAI,CAAC,IAAI,MAAM,EAAE,EAAE,IAAI,MAAM,EAAE,CAAC,CAAC;IACzD,MAAM,KAAK,GAAS,IAAI,IAAI,CAAC,IAAI,MAAM,EAAE,EAAE,IAAI,MAAM,EAAE,CAAC,CAAC;IACzD,MAAM,CAAC,GAAW,QAAQ,CAAC,MAAM,CAAC;IAClC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;QAC3B,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;QACzB,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;QACnC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;YAC3B,wDAAwD;YACxD,aAAa;YACb,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;gBAAE,SAAS;YACrG,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;YACzB,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;YAEnC,2DAA2D;YAC3D,4EAA4E;YAC5E,MAAM,iBAAiB,GAAkB,KAAK,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC;YAEnE,4EAA4E;YAC5E,IAAI,iBAAiB,IAAI,KAAK,CAAC,QAAQ,CAAC,iBAAiB,CAAC,IAAI,KAAK,CAAC,QAAQ,CAAC,iBAAiB,CAAC,EAAE,CAAC;gBAChG,SAAS,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;YACpC,CAAC;QACH,CAAC;IACH,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC,CAAC"}
|
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* @author Original from Martin Sojka. Ported to TypesScript by Ikaros Kappler
|
|
3
|
-
* @date 2020-11-10
|
|
4
|
-
*/
|
|
5
|
-
import { Color } from "../datastructures/Color";
|
|
6
|
-
/**
|
|
7
|
-
* Contrast color algorithm by Martin Sojka's.
|
|
8
|
-
* Found at
|
|
9
|
-
* https://gamedev.stackexchange.com/questions/38536/given-a-rgb-color-x-how-to-find-the-most-contrasting-color-y/38542#38542
|
|
10
|
-
*
|
|
11
|
-
* @requires Color
|
|
12
|
-
*/
|
|
13
|
-
export declare const getContrastColor: (color: Color) => Color;
|
|
@@ -1,22 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* @author Original from Martin Sojka. Ported to TypesScript by Ikaros Kappler
|
|
3
|
-
* @date 2020-11-10
|
|
4
|
-
*/
|
|
5
|
-
import { Color } from "../datastructures/Color";
|
|
6
|
-
const BLACK = Color.makeRGB(0, 0, 0);
|
|
7
|
-
const WHITE = Color.makeRGB(255, 255, 255);
|
|
8
|
-
/**
|
|
9
|
-
* Contrast color algorithm by Martin Sojka's.
|
|
10
|
-
* Found at
|
|
11
|
-
* https://gamedev.stackexchange.com/questions/38536/given-a-rgb-color-x-how-to-find-the-most-contrasting-color-y/38542#38542
|
|
12
|
-
*
|
|
13
|
-
* @requires Color
|
|
14
|
-
*/
|
|
15
|
-
export const getContrastColor = (color) => {
|
|
16
|
-
// r,g,b in [0..1]
|
|
17
|
-
const gamma = 2.2;
|
|
18
|
-
const L = 0.2126 * Math.pow(color.r, gamma) + 0.7152 * Math.pow(color.g, gamma) + 0.0722 * Math.pow(color.b, gamma);
|
|
19
|
-
const use_black = L > Math.pow(0.5, gamma);
|
|
20
|
-
return use_black ? BLACK : WHITE;
|
|
21
|
-
};
|
|
22
|
-
//# sourceMappingURL=getContrastColor.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"getContrastColor.js","sourceRoot":"","sources":["../../../../../ts/utils/algorithms/getContrastColor.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,KAAK,EAAE,MAAM,yBAAyB,CAAC;AAEhD,MAAM,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;AACrC,MAAM,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;AAE3C;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,KAAY,EAAS,EAAE;IACtD,kBAAkB;IAClB,MAAM,KAAK,GAAW,GAAG,CAAC;IAC1B,MAAM,CAAC,GAAW,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,GAAG,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,GAAG,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC;IAC5H,MAAM,SAAS,GAAY,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;IACpD,OAAO,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC;AACnC,CAAC,CAAC"}
|
|
@@ -1,10 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* @author Ikaros Kappler
|
|
3
|
-
* @date 2020-10-23
|
|
4
|
-
* @version 1.0.0
|
|
5
|
-
**/
|
|
6
|
-
import { Matrix } from "../datastructures/interfaces";
|
|
7
|
-
/**
|
|
8
|
-
* A matrix-fill helper function. Equivalent of lodash.array_fill(...).
|
|
9
|
-
*/
|
|
10
|
-
export declare const matrixFill: <T extends any>(countA: number, countB: number, initialValue: T) => Matrix<T>;
|
|
@@ -1,17 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* @author Ikaros Kappler
|
|
3
|
-
* @date 2020-10-23
|
|
4
|
-
* @version 1.0.0
|
|
5
|
-
**/
|
|
6
|
-
import { arrayFill } from "./arrayFill";
|
|
7
|
-
/**
|
|
8
|
-
* A matrix-fill helper function. Equivalent of lodash.array_fill(...).
|
|
9
|
-
*/
|
|
10
|
-
export const matrixFill = (countA, countB, initialValue) => {
|
|
11
|
-
const arr = Array(countA);
|
|
12
|
-
for (var i = 0; i < countA; i++) {
|
|
13
|
-
arr[i] = arrayFill(countB, initialValue);
|
|
14
|
-
}
|
|
15
|
-
return arr;
|
|
16
|
-
};
|
|
17
|
-
//# sourceMappingURL=matrixFill.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"matrixFill.js","sourceRoot":"","sources":["../../../../../ts/utils/algorithms/matrixFill.ts"],"names":[],"mappings":"AAAA;;;;IAII;AAEJ,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAIxC;;GAEG;AACH,MAAM,CAAC,MAAM,UAAU,GAAG,CAAiB,MAAa,EAAE,MAAa,EAAE,YAAc,EAAe,EAAE;IACpG,MAAM,GAAG,GAAe,KAAK,CAAY,MAAM,CAAE,CAAC;IAClD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,EAAE,CAAC,EAAE,EAAG,CAAC;QACtC,GAAG,CAAC,CAAC,CAAC,GAAG,SAAS,CAAK,MAAM,EAAE,YAAY,CAAE,CAAC;IAC3C,CAAC;IACD,OAAO,GAAG,CAAC;AACf,CAAC,CAAC"}
|
|
@@ -1,23 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* A script to convert any boolean matrix to rounded paths.
|
|
3
|
-
*
|
|
4
|
-
* @author Ikaros Kappler
|
|
5
|
-
* @date 2025-10-17 (ported to Typescript from a demo-script)
|
|
6
|
-
* @version 1.0.0
|
|
7
|
-
*/
|
|
8
|
-
import { SVGPathParams, XYCoords } from "../../interfaces";
|
|
9
|
-
import { DataGrid2dArrayMatrix } from "../datastructures/DataGrid2dArrayMatrix";
|
|
10
|
-
export type PixelCornerPathOptions = {
|
|
11
|
-
origin?: XYCoords;
|
|
12
|
-
squareSize?: number;
|
|
13
|
-
gapSize?: number;
|
|
14
|
-
curveFactor?: number;
|
|
15
|
-
};
|
|
16
|
-
/**
|
|
17
|
-
* Computes an array of paths from the given boolean matrix.
|
|
18
|
-
*
|
|
19
|
-
* @param {DataGrid2dArrayMatrix<boolean>} matrix
|
|
20
|
-
* @param {PixelCornerPathOptions} options
|
|
21
|
-
* @returns
|
|
22
|
-
*/
|
|
23
|
-
export declare const pixelCornersToRoundPaths: (matrix: DataGrid2dArrayMatrix<boolean>, options: PixelCornerPathOptions) => Array<SVGPathParams>;
|
|
@@ -1,266 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* A script to convert any boolean matrix to rounded paths.
|
|
3
|
-
*
|
|
4
|
-
* @author Ikaros Kappler
|
|
5
|
-
* @date 2025-10-17 (ported to Typescript from a demo-script)
|
|
6
|
-
* @version 1.0.0
|
|
7
|
-
*/
|
|
8
|
-
import { Bounds } from "../../Bounds";
|
|
9
|
-
import { DataGrid2dArrayMatrix } from "../datastructures/DataGrid2dArrayMatrix";
|
|
10
|
-
const LEFT_BORDER = 0;
|
|
11
|
-
const TOP_BORDER = 1;
|
|
12
|
-
const RIGHT_BORDER = 2;
|
|
13
|
-
const BOTTOM_BORDER = 3;
|
|
14
|
-
/**
|
|
15
|
-
* Computes an array of paths from the given boolean matrix.
|
|
16
|
-
*
|
|
17
|
-
* @param {DataGrid2dArrayMatrix<boolean>} matrix
|
|
18
|
-
* @param {PixelCornerPathOptions} options
|
|
19
|
-
* @returns
|
|
20
|
-
*/
|
|
21
|
-
export const pixelCornersToRoundPaths = (matrix, options) => {
|
|
22
|
-
const paths = [];
|
|
23
|
-
const visitedLeftBorderMatrix = new DataGrid2dArrayMatrix(matrix.xSegmentCount, matrix.ySegmentCount, false);
|
|
24
|
-
const origin = options && options.origin ? options.origin : { x: 0, y: 0 };
|
|
25
|
-
const squareSize = options && typeof options.squareSize === "number" ? options.squareSize : 10;
|
|
26
|
-
const gapSize = options && typeof options.gapSize === "number" ? options.gapSize : 2;
|
|
27
|
-
const curveFactor = options && typeof options.curveFactor === "number" ? options.curveFactor : 0.666;
|
|
28
|
-
// Find an unvisited pixel with a free left neighbour
|
|
29
|
-
const condition = (value, x, y, _matrix) => {
|
|
30
|
-
return (value === true &&
|
|
31
|
-
visitedLeftBorderMatrix.get(x, y) === false &&
|
|
32
|
-
// is left neighbour free?
|
|
33
|
-
(x - 1 < 0 || _matrix.get(x - 1, y) === false));
|
|
34
|
-
};
|
|
35
|
-
// Just to be sure the while loop terminates after a maximum number of iterations.
|
|
36
|
-
const safetyLimit = matrix.xSegmentCount * matrix.ySegmentCount + 1;
|
|
37
|
-
// The next unvisited pixel position.
|
|
38
|
-
var nonVisitedPosition;
|
|
39
|
-
var i = 0;
|
|
40
|
-
while ((nonVisitedPosition = matrix.find(condition)) && i++ < safetyLimit) {
|
|
41
|
-
// console.log("nonVisitedPosition", nonVisitedPosition);
|
|
42
|
-
// Condition: if a point was found then its left neighbour is empty.
|
|
43
|
-
// So by this the current pixel's left bound is definitely a path start.
|
|
44
|
-
const squareBox = getSquareBox(origin, squareSize, gapSize, nonVisitedPosition.xIndex, nonVisitedPosition.yIndex);
|
|
45
|
-
const west = squareBox.getWestPoint();
|
|
46
|
-
// A starting point was found: Initialize the next path.
|
|
47
|
-
var pathData = [
|
|
48
|
-
// Start point
|
|
49
|
-
"M",
|
|
50
|
-
west.x,
|
|
51
|
-
west.y
|
|
52
|
-
];
|
|
53
|
-
// Now from this point starting (left pixel corner) construct the next sequence of path commands.
|
|
54
|
-
__constructPath(pathData, matrix, visitedLeftBorderMatrix, nonVisitedPosition, LEFT_BORDER, origin, squareSize, gapSize, curveFactor);
|
|
55
|
-
paths.push(pathData);
|
|
56
|
-
// console.log("pathData", pathData);
|
|
57
|
-
}
|
|
58
|
-
return paths;
|
|
59
|
-
};
|
|
60
|
-
/**
|
|
61
|
-
* Construct a bounding box representing the visual square bounds for the given pixel.
|
|
62
|
-
*
|
|
63
|
-
* @param {XYCoords} origin - The origin to build the paths from (upper left corner of the graphics).
|
|
64
|
-
* @param {number} squareSize - The number of pixels to use to represent a pixel square.
|
|
65
|
-
* @param {number} gapSize - The number of pixels to use for gaps between squares.
|
|
66
|
-
* @param {number} x - The x position inside the data grid (matrix offset).
|
|
67
|
-
* @param {number} y - They position inside the data grid (matrix offset).
|
|
68
|
-
* @returns
|
|
69
|
-
*/
|
|
70
|
-
const getSquareBox = (origin, squareSize, gapSize, x, y) => {
|
|
71
|
-
return new Bounds({
|
|
72
|
-
x: origin.x + x * (squareSize + gapSize),
|
|
73
|
-
y: origin.y + y * (squareSize + gapSize)
|
|
74
|
-
}, {
|
|
75
|
-
x: origin.x + x * (squareSize + gapSize) + squareSize,
|
|
76
|
-
y: origin.y + y * (squareSize + gapSize) + squareSize
|
|
77
|
-
});
|
|
78
|
-
};
|
|
79
|
-
/**
|
|
80
|
-
* Lerp between these two numbers using the passed lerp amount (usually a value in 0.0-1.0).
|
|
81
|
-
*
|
|
82
|
-
* @param {number} a
|
|
83
|
-
* @param {number} b
|
|
84
|
-
* @param {number} lerpFactor
|
|
85
|
-
* @returns {number}
|
|
86
|
-
*/
|
|
87
|
-
const lerp = (a, b, lerpFactor) => {
|
|
88
|
-
return a + (b - a) * lerpFactor;
|
|
89
|
-
};
|
|
90
|
-
/**
|
|
91
|
-
* Construct a path command for a cubic Bézier curve.
|
|
92
|
-
*
|
|
93
|
-
* @param {SVGPathParams} pathData
|
|
94
|
-
* @param {XYCoords} start
|
|
95
|
-
* @param {XYCoords} controlA
|
|
96
|
-
* @param {XYCoords} controlB
|
|
97
|
-
* @param {XYCoords} end
|
|
98
|
-
* @param {number} curveFactor
|
|
99
|
-
*/
|
|
100
|
-
const addRoundCorner = (pathData, start, controlA, controlB, end, curveFactor) => {
|
|
101
|
-
pathData.push("C", lerp(start.x, controlA.x, curveFactor), lerp(start.y, controlA.y, curveFactor), lerp(end.x, controlB.x, curveFactor), lerp(end.y, controlB.y, curveFactor), end.x, end.y);
|
|
102
|
-
};
|
|
103
|
-
/**
|
|
104
|
-
* Construct a new path command for a straight line.
|
|
105
|
-
*
|
|
106
|
-
* @param {SVGPathParams} pathData
|
|
107
|
-
* @param {XYCoords} target
|
|
108
|
-
*/
|
|
109
|
-
const addStraightLine = (pathData, target) => {
|
|
110
|
-
pathData.push("L", target.x, target.y);
|
|
111
|
-
};
|
|
112
|
-
/**
|
|
113
|
-
* A helper function for constructing the next path, beginning at the passed matrix position.
|
|
114
|
-
*
|
|
115
|
-
* Note the path will be created at the left border of the given 'pixel', constructe
|
|
116
|
-
* in clockwise order.
|
|
117
|
-
*
|
|
118
|
-
* @param {SVGPathParams} pathData
|
|
119
|
-
* @param {DataGrid2dArrayMatrix<boolean>} matrix - The data matrix to use.
|
|
120
|
-
* @param {DataGrid2dArrayMatrix<boolean>} visitedLeftBordersMatrix - A helper matrix to keep track of visited pixels.
|
|
121
|
-
* @param {RasterPosition} startingPosition
|
|
122
|
-
* @param {number} startingBorderDirection
|
|
123
|
-
* @param {XYCoords} origin
|
|
124
|
-
* @param {number} squareSize
|
|
125
|
-
* @param {number} gapSize
|
|
126
|
-
* @param {number} curveFactor
|
|
127
|
-
*/
|
|
128
|
-
const __constructPath = (pathData, matrix, visitedLeftBordersMatrix, startingPosition, startingBorderDirection, origin, squareSize, gapSize, curveFactor) => {
|
|
129
|
-
// Pre: position's neighbour pixel at ehe given border direction is unset.
|
|
130
|
-
var isPathComplete = false;
|
|
131
|
-
const maxInterations = matrix.xSegmentCount * matrix.ySegmentCount * 4 + 1;
|
|
132
|
-
var i = 0;
|
|
133
|
-
var position = startingPosition;
|
|
134
|
-
var borderDirection = startingBorderDirection;
|
|
135
|
-
while (!isPathComplete && i++ < maxInterations) {
|
|
136
|
-
var x = position.xIndex;
|
|
137
|
-
var y = position.yIndex;
|
|
138
|
-
// console.log("x", x, "y", y, "borderDirection", borderDirection);
|
|
139
|
-
// Get the pixel's box bounds.
|
|
140
|
-
const squareBox = getSquareBox(origin, squareSize, gapSize, x, y);
|
|
141
|
-
// Find next step when walking 'clockwise'
|
|
142
|
-
if (borderDirection === LEFT_BORDER) {
|
|
143
|
-
// Only track visits on left borders. By this we can detect non-visited holes :)
|
|
144
|
-
visitedLeftBordersMatrix.set(x, y, true);
|
|
145
|
-
// We want to expand the left border
|
|
146
|
-
const west = squareBox.getWestPoint();
|
|
147
|
-
// Pixel in the north?
|
|
148
|
-
if (y - 1 < 0 || matrix.get(x, y - 1) === false) {
|
|
149
|
-
// Northwise pixel is empty
|
|
150
|
-
// -> construct round corner to right
|
|
151
|
-
addRoundCorner(pathData, west, squareBox.getNorthWestPoint(), squareBox.getNorthWestPoint(), squareBox.getNorthPoint(), curveFactor);
|
|
152
|
-
borderDirection = TOP_BORDER;
|
|
153
|
-
// Keep pixel position unchanged
|
|
154
|
-
}
|
|
155
|
-
else if (x - 1 >= 0 && matrix.get(x - 1, y - 1) === true) {
|
|
156
|
-
// Top neighbour pixel is set AND top-left pixel is set too.
|
|
157
|
-
// -> construct rounded edge to top-left.
|
|
158
|
-
const squareBoxNW = getSquareBox(origin, squareSize, gapSize, x - 1, y - 1);
|
|
159
|
-
addRoundCorner(pathData, west, squareBox.getNorthWestPoint(), squareBoxNW.getSouthEastPoint(), squareBoxNW.getSouthPoint(), curveFactor);
|
|
160
|
-
borderDirection = BOTTOM_BORDER;
|
|
161
|
-
position = { xIndex: x - 1, yIndex: y - 1 };
|
|
162
|
-
}
|
|
163
|
-
else {
|
|
164
|
-
// Straight to top
|
|
165
|
-
const squareBoxN = getSquareBox(origin, squareSize, gapSize, x, y - 1);
|
|
166
|
-
addStraightLine(pathData, squareBoxN.getWestPoint());
|
|
167
|
-
position = { xIndex: x, yIndex: y - 1 };
|
|
168
|
-
// Keep borderDirection: LEFT_BORDER
|
|
169
|
-
// isPathComplete = true; // TODO
|
|
170
|
-
}
|
|
171
|
-
}
|
|
172
|
-
else if (borderDirection === TOP_BORDER) {
|
|
173
|
-
// North pixel is definitely empty.
|
|
174
|
-
const north = squareBox.getNorthPoint();
|
|
175
|
-
if (x + 1 >= matrix.xSegmentCount || matrix.get(x + 1, y) === false) {
|
|
176
|
-
// Top border and right pixel is empty
|
|
177
|
-
// --> create rounded corner to right south
|
|
178
|
-
addRoundCorner(pathData, north, squareBox.getNorthEastPoint(), squareBox.getNorthEastPoint(), squareBox.getEastPoint(), curveFactor);
|
|
179
|
-
borderDirection = RIGHT_BORDER;
|
|
180
|
-
// Keep pixel position unchanged
|
|
181
|
-
}
|
|
182
|
-
else if (y - 1 < 0 || matrix.get(x + 1, y - 1) === false) {
|
|
183
|
-
// Top border and right pixel is set, and north-east pixel is clear.
|
|
184
|
-
// -> linear path to right
|
|
185
|
-
const squareBoxE = getSquareBox(origin, squareSize, gapSize, x + 1, y);
|
|
186
|
-
addStraightLine(pathData, squareBoxE.getNorthPoint());
|
|
187
|
-
position = { xIndex: x + 1, yIndex: y };
|
|
188
|
-
// Keep borderDirection TOP
|
|
189
|
-
}
|
|
190
|
-
else {
|
|
191
|
-
// Last case: right neighbour is set and north-east pixel is set
|
|
192
|
-
//-> construct a rounded corner to east-north.
|
|
193
|
-
const squareBoxNE = getSquareBox(origin, squareSize, gapSize, x + 1, y - 1);
|
|
194
|
-
addRoundCorner(pathData, north, squareBox.getNorthEastPoint(), squareBoxNE.getSouthWestPoint(), squareBoxNE.getWestPoint(), curveFactor);
|
|
195
|
-
borderDirection = LEFT_BORDER;
|
|
196
|
-
position = { xIndex: x + 1, yIndex: y - 1 };
|
|
197
|
-
// isPathComplete = true; // TODO!!!
|
|
198
|
-
}
|
|
199
|
-
}
|
|
200
|
-
else if (borderDirection === RIGHT_BORDER) {
|
|
201
|
-
// East pixel is definitely empty.
|
|
202
|
-
var east = squareBox.getEastPoint();
|
|
203
|
-
if (y + 1 >= matrix.ySegmentCount || matrix.get(x, y + 1) === false) {
|
|
204
|
-
// South pixel is empty.
|
|
205
|
-
// -> construct rounded corner to south-east
|
|
206
|
-
addRoundCorner(pathData, east, squareBox.getSouthEastPoint(), squareBox.getSouthEastPoint(), squareBox.getSouthPoint(), curveFactor);
|
|
207
|
-
borderDirection = BOTTOM_BORDER;
|
|
208
|
-
// Keep pixel position unchanged
|
|
209
|
-
}
|
|
210
|
-
else if (x + 1 < matrix.xSegmentCount && y + 1 < matrix.ySegmentCount && matrix.get(x + 1, y + 1) === true) {
|
|
211
|
-
// South pixel is set AND right lower pixel is set, too.
|
|
212
|
-
// -> construct round corner to south-east.
|
|
213
|
-
const squareBoxSE = getSquareBox(origin, squareSize, gapSize, x + 1, y + 1);
|
|
214
|
-
addRoundCorner(pathData, east, squareBox.getSouthEastPoint(), squareBoxSE.getNorthWestPoint(), squareBoxSE.getNorthPoint(), curveFactor);
|
|
215
|
-
borderDirection = TOP_BORDER;
|
|
216
|
-
position = { xIndex: x + 1, yIndex: y + 1 };
|
|
217
|
-
}
|
|
218
|
-
else {
|
|
219
|
-
// South pixel is set and south-east pixel is clear.
|
|
220
|
-
// -> construct linear connection to south
|
|
221
|
-
const squareBoxS = getSquareBox(origin, squareSize, gapSize, x, y + 1);
|
|
222
|
-
addStraightLine(pathData, squareBoxS.getEastPoint());
|
|
223
|
-
position = { xIndex: x, yIndex: y + 1 };
|
|
224
|
-
// Keep borderDirection RIGHT
|
|
225
|
-
}
|
|
226
|
-
}
|
|
227
|
-
else if (borderDirection === BOTTOM_BORDER) {
|
|
228
|
-
// Pre: south pixel is definitely empty
|
|
229
|
-
const south = squareBox.getSouthPoint();
|
|
230
|
-
if (x - 1 < 0 || matrix.get(x - 1, y) === false) {
|
|
231
|
-
// Left pixel is empty
|
|
232
|
-
// -> construct round corner to west-north
|
|
233
|
-
addRoundCorner(pathData, south, squareBox.getSouthWestPoint(), squareBox.getSouthWestPoint(), squareBox.getWestPoint(), curveFactor);
|
|
234
|
-
borderDirection = LEFT_BORDER;
|
|
235
|
-
}
|
|
236
|
-
else if (x - 1 >= 0 && y + 1 < matrix.ySegmentCount && matrix.get(x - 1, y + 1) === true) {
|
|
237
|
-
// Left pixel AND left lower pixel are set
|
|
238
|
-
// -> construct rounded edge to south-west
|
|
239
|
-
const squareBoxSW = getSquareBox(origin, squareSize, gapSize, x - 1, y + 1);
|
|
240
|
-
addRoundCorner(pathData, south, squareBox.getSouthWestPoint(), squareBoxSW.getNorthEastPoint(), squareBoxSW.getEastPoint(), curveFactor);
|
|
241
|
-
borderDirection = RIGHT_BORDER;
|
|
242
|
-
position = { xIndex: x - 1, yIndex: y + 1 };
|
|
243
|
-
}
|
|
244
|
-
else {
|
|
245
|
-
// Left pixel is set AND south pixel is empty
|
|
246
|
-
// -> construct linear edge to left neighbour.
|
|
247
|
-
const squareBoxW = getSquareBox(origin, squareSize, gapSize, x - 1, y);
|
|
248
|
-
addStraightLine(pathData, squareBoxW.getSouthPoint());
|
|
249
|
-
position = { xIndex: x - 1, yIndex: y };
|
|
250
|
-
// Keep borderDirection BOTTOM
|
|
251
|
-
}
|
|
252
|
-
}
|
|
253
|
-
else {
|
|
254
|
-
console.warn(`[Error] Cannot construct full rounded path; 'borderDirection' has wrong value (${borderDirection}).`);
|
|
255
|
-
isPathComplete = true;
|
|
256
|
-
}
|
|
257
|
-
// End condition reached?
|
|
258
|
-
if (startingPosition.xIndex === position.xIndex &&
|
|
259
|
-
startingPosition.yIndex === position.yIndex &&
|
|
260
|
-
startingBorderDirection === borderDirection) {
|
|
261
|
-
pathData.push("Z");
|
|
262
|
-
isPathComplete = true;
|
|
263
|
-
}
|
|
264
|
-
}
|
|
265
|
-
};
|
|
266
|
-
//# sourceMappingURL=pixelCornersToRoundPaths.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"pixelCornersToRoundPaths.js","sourceRoot":"","sources":["../../../../../ts/utils/algorithms/pixelCornersToRoundPaths.ts"],"names":[],"mappings":"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"}
|