plotboilerplate 1.12.10 → 1.16.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +5 -1
- package/changelog.md +50 -0
- package/dist/index.esm.js +999 -510
- package/dist/index.esm.js.map +1 -1
- package/dist/index.esm.min.js +1 -1
- package/dist/index.esm.min.js.map +1 -1
- package/dist/plotboilerplate.browser.min.js +1 -1
- package/dist/plotboilerplate.browser.min.js.map +1 -1
- package/dist/plotboilerplate.js +1013 -509
- package/dist/plotboilerplate.min.js +1 -1
- package/package.json +1 -1
- package/src/cjs/BezierPath.d.ts +45 -2
- package/src/cjs/BezierPath.js +114 -18
- package/src/cjs/BezierPath.js.map +1 -1
- package/src/cjs/Circle.d.ts +25 -10
- package/src/cjs/Circle.js +38 -33
- package/src/cjs/Circle.js.map +1 -1
- package/src/cjs/CircleSector.d.ts +27 -13
- package/src/cjs/CircleSector.js +38 -23
- package/src/cjs/CircleSector.js.map +1 -1
- package/src/cjs/CubicBezierCurve.d.ts +17 -1
- package/src/cjs/CubicBezierCurve.js +78 -79
- package/src/cjs/CubicBezierCurve.js.map +1 -1
- package/src/cjs/KeyHandler.d.ts +10 -3
- package/src/cjs/KeyHandler.js +28 -23
- package/src/cjs/KeyHandler.js.map +1 -1
- package/src/cjs/Line.d.ts +2 -1
- package/src/cjs/Line.js +19 -18
- package/src/cjs/Line.js.map +1 -1
- package/src/cjs/MouseHandler.js +43 -53
- package/src/cjs/MouseHandler.js.map +1 -1
- package/src/cjs/PBImage.d.ts +16 -1
- package/src/cjs/PBImage.js +13 -3
- package/src/cjs/PBImage.js.map +1 -1
- package/src/cjs/PBText.d.ts +130 -0
- package/src/cjs/PBText.js +76 -0
- package/src/cjs/PBText.js.map +1 -0
- package/src/cjs/PlotBoilerplate.d.ts +2 -1
- package/src/cjs/PlotBoilerplate.js +44 -16
- package/src/cjs/PlotBoilerplate.js.map +1 -1
- package/src/cjs/Polygon.d.ts +37 -1
- package/src/cjs/Polygon.js +131 -54
- package/src/cjs/Polygon.js.map +1 -1
- package/src/cjs/Triangle.d.ts +16 -1
- package/src/cjs/Triangle.js +50 -54
- package/src/cjs/Triangle.js.map +1 -1
- package/src/cjs/VEllipse.d.ts +16 -1
- package/src/cjs/VEllipse.js +25 -12
- package/src/cjs/VEllipse.js.map +1 -1
- package/src/cjs/VEllipseSector.d.ts +15 -1
- package/src/cjs/VEllipseSector.js +11 -1
- package/src/cjs/VEllipseSector.js.map +1 -1
- package/src/cjs/Vector.d.ts +3 -1
- package/src/cjs/Vector.js +32 -36
- package/src/cjs/Vector.js.map +1 -1
- package/src/cjs/VertTuple.d.ts +15 -1
- package/src/cjs/VertTuple.js +14 -19
- package/src/cjs/VertTuple.js.map +1 -1
- package/src/cjs/Vertex.d.ts +66 -4
- package/src/cjs/Vertex.js +99 -17
- package/src/cjs/Vertex.js.map +1 -1
- package/src/cjs/VertexListeners.d.ts +12 -8
- package/src/cjs/VertexListeners.js +18 -25
- package/src/cjs/VertexListeners.js.map +1 -1
- package/src/cjs/draw.d.ts +30 -2
- package/src/cjs/draw.js +51 -6
- package/src/cjs/draw.js.map +1 -1
- package/src/cjs/drawgl.d.ts +29 -2
- package/src/cjs/drawgl.js +21 -4
- package/src/cjs/drawgl.js.map +1 -1
- package/src/cjs/drawutilssvg.d.ts +25 -7
- package/src/cjs/drawutilssvg.js +62 -14
- package/src/cjs/drawutilssvg.js.map +1 -1
- package/src/cjs/entry.js +1 -0
- package/src/cjs/index.d.ts +1 -0
- package/src/cjs/index.js +1 -0
- package/src/cjs/index.js.map +1 -1
- package/src/cjs/interfaces/DrawLib.d.ts +27 -6
- package/src/cjs/interfaces/DrawLib.js +3 -0
- package/src/cjs/interfaces/DrawLib.js.map +1 -1
- package/src/cjs/interfaces/core.d.ts +9 -1
- package/src/cjs/interfaces/core.js +1 -0
- package/src/cjs/interfaces/core.js.map +1 -1
- package/src/cjs/utils/creategui.js +1 -1
- package/src/cjs/utils/findInVertexArray.d.ts +19 -0
- package/src/cjs/utils/findInVertexArray.js +29 -0
- package/src/cjs/utils/findInVertexArray.js.map +1 -0
- package/src/cjs/utils/helpers/BezierPathInteractionHelper.d.ts +15 -0
- package/src/cjs/utils/helpers/BezierPathInteractionHelper.js +55 -28
- package/src/cjs/utils/helpers/BezierPathInteractionHelper.js.map +1 -1
- package/src/cjs/utils/io/DndFileHandler.d.ts +63 -0
- package/src/cjs/utils/io/DndFileHandler.js +112 -0
- package/src/cjs/utils/io/DndFileHandler.js.map +1 -0
- package/src/cjs/utils/io/FileDrop.d.ts +98 -0
- package/src/cjs/utils/io/FileDrop.js +142 -0
- package/src/cjs/utils/io/FileDrop.js.map +1 -0
- package/src/esm/BezierPath.d.ts +45 -2
- package/src/esm/BezierPath.js +114 -18
- package/src/esm/BezierPath.js.map +1 -1
- package/src/esm/Circle.d.ts +25 -10
- package/src/esm/Circle.js +38 -33
- package/src/esm/Circle.js.map +1 -1
- package/src/esm/CircleSector.d.ts +27 -13
- package/src/esm/CircleSector.js +38 -23
- package/src/esm/CircleSector.js.map +1 -1
- package/src/esm/CubicBezierCurve.d.ts +17 -1
- package/src/esm/CubicBezierCurve.js +78 -79
- package/src/esm/CubicBezierCurve.js.map +1 -1
- package/src/esm/KeyHandler.d.ts +10 -3
- package/src/esm/KeyHandler.js +28 -23
- package/src/esm/KeyHandler.js.map +1 -1
- package/src/esm/Line.d.ts +2 -1
- package/src/esm/Line.js +19 -18
- package/src/esm/Line.js.map +1 -1
- package/src/esm/MouseHandler.js +43 -53
- package/src/esm/MouseHandler.js.map +1 -1
- package/src/esm/PBImage.d.ts +16 -1
- package/src/esm/PBImage.js +13 -3
- package/src/esm/PBImage.js.map +1 -1
- package/src/esm/PBText.d.ts +130 -0
- package/src/esm/PBText.js +71 -0
- package/src/esm/PBText.js.map +1 -0
- package/src/esm/PlotBoilerplate.d.ts +2 -1
- package/src/esm/PlotBoilerplate.js +44 -16
- package/src/esm/PlotBoilerplate.js.map +1 -1
- package/src/esm/Polygon.d.ts +37 -1
- package/src/esm/Polygon.js +131 -54
- package/src/esm/Polygon.js.map +1 -1
- package/src/esm/Triangle.d.ts +16 -1
- package/src/esm/Triangle.js +50 -54
- package/src/esm/Triangle.js.map +1 -1
- package/src/esm/VEllipse.d.ts +16 -1
- package/src/esm/VEllipse.js +25 -12
- package/src/esm/VEllipse.js.map +1 -1
- package/src/esm/VEllipseSector.d.ts +15 -1
- package/src/esm/VEllipseSector.js +11 -1
- package/src/esm/VEllipseSector.js.map +1 -1
- package/src/esm/Vector.d.ts +3 -1
- package/src/esm/Vector.js +32 -36
- package/src/esm/Vector.js.map +1 -1
- package/src/esm/VertTuple.d.ts +15 -1
- package/src/esm/VertTuple.js +14 -19
- package/src/esm/VertTuple.js.map +1 -1
- package/src/esm/Vertex.d.ts +66 -4
- package/src/esm/Vertex.js +99 -17
- package/src/esm/Vertex.js.map +1 -1
- package/src/esm/VertexListeners.d.ts +12 -8
- package/src/esm/VertexListeners.js +18 -25
- package/src/esm/VertexListeners.js.map +1 -1
- package/src/esm/draw.d.ts +30 -2
- package/src/esm/draw.js +51 -6
- package/src/esm/draw.js.map +1 -1
- package/src/esm/drawgl.d.ts +29 -2
- package/src/esm/drawgl.js +21 -4
- package/src/esm/drawgl.js.map +1 -1
- package/src/esm/drawutilssvg.d.ts +25 -7
- package/src/esm/drawutilssvg.js +62 -14
- package/src/esm/drawutilssvg.js.map +1 -1
- package/src/esm/entry.js +1 -0
- package/src/esm/index.d.ts +1 -0
- package/src/esm/index.js +1 -0
- package/src/esm/index.js.map +1 -1
- package/src/esm/interfaces/DrawLib.d.ts +27 -6
- package/src/esm/interfaces/DrawLib.js +3 -0
- package/src/esm/interfaces/DrawLib.js.map +1 -1
- package/src/esm/interfaces/core.d.ts +9 -1
- package/src/esm/interfaces/core.js +1 -0
- package/src/esm/interfaces/core.js.map +1 -1
- package/src/esm/utils/findInVertexArray.d.ts +19 -0
- package/src/esm/utils/findInVertexArray.js +25 -0
- package/src/esm/utils/findInVertexArray.js.map +1 -0
- package/src/esm/utils/helpers/BezierPathInteractionHelper.d.ts +15 -0
- package/src/esm/utils/helpers/BezierPathInteractionHelper.js +54 -28
- package/src/esm/utils/helpers/BezierPathInteractionHelper.js.map +1 -1
- package/src/esm/utils/io/DndFileHandler.d.ts +63 -0
- package/src/esm/utils/io/DndFileHandler.js +106 -0
- package/src/esm/utils/io/DndFileHandler.js.map +1 -0
- package/src/esm/utils/io/FileDrop.d.ts +98 -0
- package/src/esm/utils/io/FileDrop.js +136 -0
- package/src/esm/utils/io/FileDrop.js.map +1 -0
- package/src/ts/BezierPath.ts +133 -16
- package/src/ts/Circle.ts +213 -200
- package/src/ts/CircleSector.ts +171 -141
- package/src/ts/CubicBezierCurve.ts +777 -810
- package/src/ts/KeyHandler.ts +221 -212
- package/src/ts/Line.ts +77 -80
- package/src/ts/MouseHandler.ts +356 -368
- package/src/ts/PBImage.ts +81 -68
- package/src/ts/PBText.ts +166 -0
- package/src/ts/PlotBoilerplate.ts +48 -20
- package/src/ts/Polygon.ts +519 -451
- package/src/ts/Triangle.ts +484 -489
- package/src/ts/VEllipse.ts +36 -11
- package/src/ts/VEllipseSector.ts +20 -1
- package/src/ts/Vector.ts +164 -160
- package/src/ts/VertTuple.ts +333 -338
- package/src/ts/Vertex.ts +117 -16
- package/src/ts/VertexListeners.ts +248 -266
- package/src/ts/draw.ts +71 -8
- package/src/ts/drawgl.ts +48 -8
- package/src/ts/drawutilssvg.ts +94 -17
- package/src/ts/index.ts +1 -0
- package/src/ts/interfaces/DrawLib.ts +30 -4
- package/src/ts/interfaces/core.ts +9 -0
- package/src/ts/utils/findInVertexArray.ts +28 -0
- package/src/ts/utils/helpers/BezierPathInteractionHelper.ts +61 -30
- package/src/ts/utils/io/FileDrop.ts +178 -0
- package/dist/plotboilerplate.browser.min.js.LICENSE.txt +0 -8
- package/src/ts/utils/algorithms/clearPolygonDuplicateVertices.ts~ +0 -5
- package/src/ts/utils/algorithms/findPolygonSelfIntersections.ts~ +0 -45
- package/src/ts/utils/algorithms/sh-tmp.ts~ +0 -59
- package/src/ts/utils/algorithms/splitPolygonToNonIntersecting.ts~ +0 -113
- package/src/ts/utils/algorithms/sutherlandHodgman.ts~ +0 -88
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MouseHandler.js","sourceRoot":"","sources":["../ts/MouseHandler.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;;;;;;;;IAuBI;;;;;;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"MouseHandler.js","sourceRoot":"","sources":["../ts/MouseHandler.ts"],"names":[],"mappings":"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"}
|
package/src/cjs/PBImage.d.ts
CHANGED
|
@@ -4,7 +4,9 @@
|
|
|
4
4
|
* @modified 2019-03-23 Added JSDoc tags.
|
|
5
5
|
* @modified 2020-03-25 Ported this class from vanilla-JS to Typescript.
|
|
6
6
|
* @modified 2021-01-20 Added UID.
|
|
7
|
-
* @
|
|
7
|
+
* @modified 2022-02-02 Added the `destroy` method.
|
|
8
|
+
* @modified 2022-02-02 Cleared the `PBImage.toSVGString` function (deprecated). Use `drawutilssvg` instead.
|
|
9
|
+
* @version 1.2.0
|
|
8
10
|
*
|
|
9
11
|
* @file PBImage
|
|
10
12
|
* @fileoverview As native Image objects have only a position and with
|
|
@@ -53,6 +55,13 @@ export declare class PBImage implements SVGSerializable {
|
|
|
53
55
|
* @instance
|
|
54
56
|
*/
|
|
55
57
|
lowerRight: Vertex;
|
|
58
|
+
/**
|
|
59
|
+
* @member isDestroyed
|
|
60
|
+
* @memberof PBImage
|
|
61
|
+
* @type {boolean}
|
|
62
|
+
* @instance
|
|
63
|
+
*/
|
|
64
|
+
isDestroyed: boolean;
|
|
56
65
|
/**
|
|
57
66
|
* The constructor.
|
|
58
67
|
*
|
|
@@ -76,4 +85,10 @@ export declare class PBImage implements SVGSerializable {
|
|
|
76
85
|
toSVGString(options: {
|
|
77
86
|
className?: string;
|
|
78
87
|
}): string;
|
|
88
|
+
/**
|
|
89
|
+
* This function should invalidate any installed listeners and invalidate this object.
|
|
90
|
+
* After calling this function the object might not hold valid data any more and
|
|
91
|
+
* should not be used.
|
|
92
|
+
*/
|
|
93
|
+
destroy(): void;
|
|
79
94
|
}
|
package/src/cjs/PBImage.js
CHANGED
|
@@ -5,7 +5,9 @@
|
|
|
5
5
|
* @modified 2019-03-23 Added JSDoc tags.
|
|
6
6
|
* @modified 2020-03-25 Ported this class from vanilla-JS to Typescript.
|
|
7
7
|
* @modified 2021-01-20 Added UID.
|
|
8
|
-
* @
|
|
8
|
+
* @modified 2022-02-02 Added the `destroy` method.
|
|
9
|
+
* @modified 2022-02-02 Cleared the `PBImage.toSVGString` function (deprecated). Use `drawutilssvg` instead.
|
|
10
|
+
* @version 1.2.0
|
|
9
11
|
*
|
|
10
12
|
* @file PBImage
|
|
11
13
|
* @fileoverview As native Image objects have only a position and with
|
|
@@ -43,7 +45,6 @@ var PBImage = /** @class */ (function () {
|
|
|
43
45
|
this.upperLeft = upperLeft;
|
|
44
46
|
this.lowerRight = lowerRight;
|
|
45
47
|
}
|
|
46
|
-
;
|
|
47
48
|
/**
|
|
48
49
|
* Convert this vertex to SVG code.
|
|
49
50
|
*
|
|
@@ -58,7 +59,16 @@ var PBImage = /** @class */ (function () {
|
|
|
58
59
|
console.warn("PBImage is not yet SVG serializable. Returning empty SVG string.");
|
|
59
60
|
return "";
|
|
60
61
|
};
|
|
61
|
-
|
|
62
|
+
/**
|
|
63
|
+
* This function should invalidate any installed listeners and invalidate this object.
|
|
64
|
+
* After calling this function the object might not hold valid data any more and
|
|
65
|
+
* should not be used.
|
|
66
|
+
*/
|
|
67
|
+
PBImage.prototype.destroy = function () {
|
|
68
|
+
this.upperLeft.destroy();
|
|
69
|
+
this.lowerRight.destroy();
|
|
70
|
+
this.isDestroyed = true;
|
|
71
|
+
};
|
|
62
72
|
return PBImage;
|
|
63
73
|
}());
|
|
64
74
|
exports.PBImage = PBImage;
|
package/src/cjs/PBImage.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PBImage.js","sourceRoot":"","sources":["../ts/PBImage.ts"],"names":[],"mappings":";AAAA
|
|
1
|
+
{"version":3,"file":"PBImage.js","sourceRoot":"","sources":["../ts/PBImage.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;IAcI;;;AAGJ,+CAA8C;AAG9C;;;;;;;GAOG;AACH;IA6CE;;;;;;;;QAQI;IACJ,iBAAY,KAAuB,EAAE,SAAiB,EAAE,UAAkB;QArD1E;;YAEI;QACK,cAAS,GAAW,SAAS,CAAC;QAmDrC,IAAI,CAAC,GAAG,GAAG,2BAAY,CAAC,IAAI,EAAE,CAAC;QAC/B,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QACnB,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;QAC3B,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;IAC/B,CAAC;IAED;;;;;;;;;QASI;IACJ,6BAAW,GAAX,UAAY,OAA+B;QACzC,OAAO,CAAC,IAAI,CAAC,kEAAkE,CAAC,CAAC;QACjF,OAAO,EAAE,CAAC;IACZ,CAAC;IAED;;;;OAIG;IACH,yBAAO,GAAP;QACE,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,CAAC;QACzB,IAAI,CAAC,UAAU,CAAC,OAAO,EAAE,CAAC;QAC1B,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC;IAC1B,CAAC;IACH,cAAC;AAAD,CAAC,AAtFD,IAsFC;AAtFY,0BAAO"}
|
|
@@ -0,0 +1,130 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @author Ikaros Kappler
|
|
3
|
+
* @date 2021-11-16
|
|
4
|
+
* @modified 2022-02-02 Added the `destroy` method.
|
|
5
|
+
* @version 1.1.0
|
|
6
|
+
**/
|
|
7
|
+
import { Vertex } from "./Vertex";
|
|
8
|
+
import { FontOptions, FontStyle, FontWeight, SVGSerializable, UID } from "./interfaces";
|
|
9
|
+
/**
|
|
10
|
+
* @classdesc A simple text element: position, fontSize, fontFamily, color, textAlign, lineHeight and rotation.
|
|
11
|
+
*
|
|
12
|
+
* @requires FontOptions
|
|
13
|
+
* @requires FontSize
|
|
14
|
+
* @requires FontStyle
|
|
15
|
+
* @requires FontWeight
|
|
16
|
+
* @requires Vertex
|
|
17
|
+
* @requires SVGSerializale
|
|
18
|
+
* @requires UID
|
|
19
|
+
* @requires UIDGenerator
|
|
20
|
+
**/
|
|
21
|
+
export declare class PBText implements SVGSerializable, FontOptions {
|
|
22
|
+
/**
|
|
23
|
+
* Required to generate proper CSS classes and other class related IDs.
|
|
24
|
+
**/
|
|
25
|
+
readonly className: string;
|
|
26
|
+
/**
|
|
27
|
+
* The UID of this drawable object.
|
|
28
|
+
*
|
|
29
|
+
* @member {UID}
|
|
30
|
+
* @memberof PBText
|
|
31
|
+
* @instance
|
|
32
|
+
* @readonly
|
|
33
|
+
*/
|
|
34
|
+
readonly uid: UID;
|
|
35
|
+
/**
|
|
36
|
+
* @member {string}
|
|
37
|
+
* @memberof PBText
|
|
38
|
+
* @instance
|
|
39
|
+
*/
|
|
40
|
+
text: string;
|
|
41
|
+
/**
|
|
42
|
+
* @member {Vertex}
|
|
43
|
+
* @memberof PBText
|
|
44
|
+
* @instance
|
|
45
|
+
*/
|
|
46
|
+
anchor: Vertex;
|
|
47
|
+
/**
|
|
48
|
+
* @member {number}
|
|
49
|
+
* @memberof PBText
|
|
50
|
+
* @instance
|
|
51
|
+
*/
|
|
52
|
+
fontSize: number | undefined;
|
|
53
|
+
/**
|
|
54
|
+
* @member {number}
|
|
55
|
+
* @memberof PBText
|
|
56
|
+
* @instance
|
|
57
|
+
*/
|
|
58
|
+
lineHeight: number | undefined;
|
|
59
|
+
/**
|
|
60
|
+
* @member {FontWeight}
|
|
61
|
+
* @memberof PBText
|
|
62
|
+
* @instance
|
|
63
|
+
*/
|
|
64
|
+
fontWeight: FontWeight | undefined;
|
|
65
|
+
/**
|
|
66
|
+
* @member {FontStyle}
|
|
67
|
+
* @memberof PBText
|
|
68
|
+
* @instance
|
|
69
|
+
*/
|
|
70
|
+
fontStyle: FontStyle | undefined;
|
|
71
|
+
/**
|
|
72
|
+
* @member {CanvasRenderingContext2D["textAlign"]}
|
|
73
|
+
* @memberof PBText
|
|
74
|
+
* @instance
|
|
75
|
+
*/
|
|
76
|
+
textAlign: CanvasRenderingContext2D["textAlign"] | undefined;
|
|
77
|
+
/**
|
|
78
|
+
* @member {number}
|
|
79
|
+
* @memberof PBText
|
|
80
|
+
* @instance
|
|
81
|
+
*/
|
|
82
|
+
rotation: number | undefined;
|
|
83
|
+
/**
|
|
84
|
+
* @member {number}
|
|
85
|
+
* @memberof PBText
|
|
86
|
+
* @instance
|
|
87
|
+
*/
|
|
88
|
+
fontFamily: string | undefined;
|
|
89
|
+
/**
|
|
90
|
+
* @member {number}
|
|
91
|
+
* @memberof PBText
|
|
92
|
+
* @instance
|
|
93
|
+
*/
|
|
94
|
+
color: string | undefined;
|
|
95
|
+
/**
|
|
96
|
+
* @member isDestroyed
|
|
97
|
+
* @memberof PBText
|
|
98
|
+
* @type {boolean}
|
|
99
|
+
* @instance
|
|
100
|
+
*/
|
|
101
|
+
isDestroyed: boolean;
|
|
102
|
+
/**
|
|
103
|
+
* Create a new circle with given center point and radius.
|
|
104
|
+
*
|
|
105
|
+
* @constructor
|
|
106
|
+
* @name Circle
|
|
107
|
+
* @param {Vertex} center - The center point of the circle.
|
|
108
|
+
* @param {number} radius - The radius of the circle.
|
|
109
|
+
*/
|
|
110
|
+
constructor(text: string, anchor?: Vertex, options?: FontOptions);
|
|
111
|
+
/**
|
|
112
|
+
* Create an SVG representation of this circle.
|
|
113
|
+
*
|
|
114
|
+
* @deprecated DEPRECATION Please use the drawutilssvg library and an XMLSerializer instead.
|
|
115
|
+
* @method toSVGString
|
|
116
|
+
* @param {object=} options - An optional set of options, like 'className'.
|
|
117
|
+
* @return {string} A string representing the SVG code for this vertex.
|
|
118
|
+
* @instance
|
|
119
|
+
* @memberof Circle
|
|
120
|
+
*/
|
|
121
|
+
toSVGString(options: {
|
|
122
|
+
className?: string;
|
|
123
|
+
}): string;
|
|
124
|
+
/**
|
|
125
|
+
* This function should invalidate any installed listeners and invalidate this object.
|
|
126
|
+
* After calling this function the object might not hold valid data any more and
|
|
127
|
+
* should not be used.
|
|
128
|
+
*/
|
|
129
|
+
destroy(): void;
|
|
130
|
+
}
|
|
@@ -0,0 +1,76 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* @author Ikaros Kappler
|
|
4
|
+
* @date 2021-11-16
|
|
5
|
+
* @modified 2022-02-02 Added the `destroy` method.
|
|
6
|
+
* @version 1.1.0
|
|
7
|
+
**/
|
|
8
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
9
|
+
exports.PBText = void 0;
|
|
10
|
+
var UIDGenerator_1 = require("./UIDGenerator");
|
|
11
|
+
var Vertex_1 = require("./Vertex");
|
|
12
|
+
/**
|
|
13
|
+
* @classdesc A simple text element: position, fontSize, fontFamily, color, textAlign, lineHeight and rotation.
|
|
14
|
+
*
|
|
15
|
+
* @requires FontOptions
|
|
16
|
+
* @requires FontSize
|
|
17
|
+
* @requires FontStyle
|
|
18
|
+
* @requires FontWeight
|
|
19
|
+
* @requires Vertex
|
|
20
|
+
* @requires SVGSerializale
|
|
21
|
+
* @requires UID
|
|
22
|
+
* @requires UIDGenerator
|
|
23
|
+
**/
|
|
24
|
+
var PBText = /** @class */ (function () {
|
|
25
|
+
/**
|
|
26
|
+
* Create a new circle with given center point and radius.
|
|
27
|
+
*
|
|
28
|
+
* @constructor
|
|
29
|
+
* @name Circle
|
|
30
|
+
* @param {Vertex} center - The center point of the circle.
|
|
31
|
+
* @param {number} radius - The radius of the circle.
|
|
32
|
+
*/
|
|
33
|
+
function PBText(text, anchor, options) {
|
|
34
|
+
/**
|
|
35
|
+
* Required to generate proper CSS classes and other class related IDs.
|
|
36
|
+
**/
|
|
37
|
+
this.className = "PBText";
|
|
38
|
+
this.uid = UIDGenerator_1.UIDGenerator.next();
|
|
39
|
+
this.text = text;
|
|
40
|
+
this.anchor = anchor !== null && anchor !== void 0 ? anchor : new Vertex_1.Vertex();
|
|
41
|
+
this.color = options.color;
|
|
42
|
+
this.fontFamily = options.fontFamily;
|
|
43
|
+
this.fontSize = options.fontSize;
|
|
44
|
+
this.fontStyle = options.fontStyle;
|
|
45
|
+
this.fontWeight = options.fontWeight;
|
|
46
|
+
this.lineHeight = options.lineHeight;
|
|
47
|
+
this.textAlign = options.textAlign;
|
|
48
|
+
this.rotation = options.rotation;
|
|
49
|
+
}
|
|
50
|
+
/**
|
|
51
|
+
* Create an SVG representation of this circle.
|
|
52
|
+
*
|
|
53
|
+
* @deprecated DEPRECATION Please use the drawutilssvg library and an XMLSerializer instead.
|
|
54
|
+
* @method toSVGString
|
|
55
|
+
* @param {object=} options - An optional set of options, like 'className'.
|
|
56
|
+
* @return {string} A string representing the SVG code for this vertex.
|
|
57
|
+
* @instance
|
|
58
|
+
* @memberof Circle
|
|
59
|
+
*/
|
|
60
|
+
PBText.prototype.toSVGString = function (options) {
|
|
61
|
+
console.warn("[PBText.toSVGString()] This function is not implemented as it defines a deprecated method. Use the 'drawutilssvg.text()' method instead.");
|
|
62
|
+
return "";
|
|
63
|
+
};
|
|
64
|
+
/**
|
|
65
|
+
* This function should invalidate any installed listeners and invalidate this object.
|
|
66
|
+
* After calling this function the object might not hold valid data any more and
|
|
67
|
+
* should not be used.
|
|
68
|
+
*/
|
|
69
|
+
PBText.prototype.destroy = function () {
|
|
70
|
+
this.anchor.destroy();
|
|
71
|
+
this.isDestroyed = true;
|
|
72
|
+
};
|
|
73
|
+
return PBText;
|
|
74
|
+
}()); // END class
|
|
75
|
+
exports.PBText = PBText;
|
|
76
|
+
//# sourceMappingURL=PBText.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"PBText.js","sourceRoot":"","sources":["../ts/PBText.ts"],"names":[],"mappings":";AAAA;;;;;IAKI;;;AAEJ,+CAA8C;AAC9C,mCAAkC;AAGlC;;;;;;;;;;;IAWI;AACJ;IA8FE;;;;;;;OAOG;IACH,gBAAY,IAAY,EAAE,MAAe,EAAE,OAAqB;QArGhE;;YAEI;QACK,cAAS,GAAW,QAAQ,CAAC;QAmGpC,IAAI,CAAC,GAAG,GAAG,2BAAY,CAAC,IAAI,EAAE,CAAC;QAC/B,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,MAAM,GAAG,MAAM,aAAN,MAAM,cAAN,MAAM,GAAI,IAAI,eAAM,EAAE,CAAC;QACrC,IAAI,CAAC,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC;QAC3B,IAAI,CAAC,UAAU,GAAG,OAAO,CAAC,UAAU,CAAC;QACrC,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC;QACjC,IAAI,CAAC,SAAS,GAAG,OAAO,CAAC,SAAS,CAAC;QACnC,IAAI,CAAC,UAAU,GAAG,OAAO,CAAC,UAAU,CAAC;QACrC,IAAI,CAAC,UAAU,GAAG,OAAO,CAAC,UAAU,CAAC;QACrC,IAAI,CAAC,SAAS,GAAG,OAAO,CAAC,SAAS,CAAC;QACnC,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC;IACnC,CAAC;IAED;;;;;;;;;OASG;IACH,4BAAW,GAAX,UAAY,OAA+B;QACzC,OAAO,CAAC,IAAI,CACV,0IAA0I,CAC3I,CAAC;QACF,OAAO,EAAE,CAAC;IACZ,CAAC;IAED;;;;OAIG;IACH,wBAAO,GAAP;QACE,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;QACtB,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC;IAC1B,CAAC;IACH,aAAC;AAAD,CAAC,AA9ID,IA8IC,CAAC,YAAY;AA9ID,wBAAM"}
|
|
@@ -73,7 +73,8 @@
|
|
|
73
73
|
* @modified 2021-03-03 Added the `VEllipseSector` drawable.
|
|
74
74
|
* @modified 2021-03-29 Clearing `currentClassName` and `currentId` after drawing each drawable.
|
|
75
75
|
* @modified 2021-04-25 Extending `remove` to accept arrays of drawables.
|
|
76
|
-
* @
|
|
76
|
+
* @modified 2021-11-16 Adding the `PBText` drawable.
|
|
77
|
+
* @version 1.15.0
|
|
77
78
|
*
|
|
78
79
|
* @file PlotBoilerplate
|
|
79
80
|
* @fileoverview The main class.
|
|
@@ -74,7 +74,8 @@
|
|
|
74
74
|
* @modified 2021-03-03 Added the `VEllipseSector` drawable.
|
|
75
75
|
* @modified 2021-03-29 Clearing `currentClassName` and `currentId` after drawing each drawable.
|
|
76
76
|
* @modified 2021-04-25 Extending `remove` to accept arrays of drawables.
|
|
77
|
-
* @
|
|
77
|
+
* @modified 2021-11-16 Adding the `PBText` drawable.
|
|
78
|
+
* @version 1.15.0
|
|
78
79
|
*
|
|
79
80
|
* @file PlotBoilerplate
|
|
80
81
|
* @fileoverview The main class.
|
|
@@ -102,6 +103,7 @@ var VEllipseSector_1 = require("./VEllipseSector");
|
|
|
102
103
|
var Vector_1 = require("./Vector");
|
|
103
104
|
var Vertex_1 = require("./Vertex");
|
|
104
105
|
var VertexAttr_1 = require("./VertexAttr");
|
|
106
|
+
var PBText_1 = require("./PBText");
|
|
105
107
|
/**
|
|
106
108
|
* @classdesc The main class of the PlotBoilerplate.
|
|
107
109
|
*
|
|
@@ -340,6 +342,12 @@ var PlotBoilerplate = /** @class */ (function () {
|
|
|
340
342
|
image: {
|
|
341
343
|
color: "#a8a8a8",
|
|
342
344
|
lineWidth: 1
|
|
345
|
+
},
|
|
346
|
+
text: {
|
|
347
|
+
color: "rgba(192,0,128,0.5)",
|
|
348
|
+
lineWidth: 1,
|
|
349
|
+
fill: true,
|
|
350
|
+
anchor: true
|
|
343
351
|
}
|
|
344
352
|
}; // END drawConfig
|
|
345
353
|
// +---------------------------------------------------------------------------------
|
|
@@ -461,7 +469,7 @@ var PlotBoilerplate = /** @class */ (function () {
|
|
|
461
469
|
var blob = new Blob([svgCode], { type: "image/svg;charset=utf-8" });
|
|
462
470
|
// See documentation for FileSaver.js for usage.
|
|
463
471
|
// https://github.com/eligrey/FileSaver.js
|
|
464
|
-
if (typeof globalThis["saveAs"]
|
|
472
|
+
if (typeof globalThis["saveAs"] !== "function")
|
|
465
473
|
throw "Cannot save file; did you load the ./utils/savefile helper function and the eligrey/SaveFile library?";
|
|
466
474
|
var _saveAs = globalThis["saveAs"];
|
|
467
475
|
_saveAs(blob, "plotboilerplate.svg");
|
|
@@ -567,7 +575,6 @@ var PlotBoilerplate = /** @class */ (function () {
|
|
|
567
575
|
PlotBoilerplate.prototype.add = function (drawable, redraw) {
|
|
568
576
|
if (Array.isArray(drawable)) {
|
|
569
577
|
var arr = drawable;
|
|
570
|
-
// for( var i in arr )
|
|
571
578
|
for (var i = 0; i < arr.length; i++) {
|
|
572
579
|
this.add(arr[i], false);
|
|
573
580
|
}
|
|
@@ -613,9 +620,9 @@ var PlotBoilerplate = /** @class */ (function () {
|
|
|
613
620
|
}
|
|
614
621
|
else if (drawable instanceof Polygon_1.Polygon) {
|
|
615
622
|
this.drawables.push(drawable);
|
|
616
|
-
|
|
617
|
-
for (var i = 0; i < drawable.vertices.length; i++)
|
|
623
|
+
for (var i = 0; i < drawable.vertices.length; i++) {
|
|
618
624
|
this.vertices.push(drawable.vertices[i]);
|
|
625
|
+
}
|
|
619
626
|
}
|
|
620
627
|
else if (drawable instanceof Triangle_1.Triangle) {
|
|
621
628
|
this.drawables.push(drawable);
|
|
@@ -627,8 +634,9 @@ var PlotBoilerplate = /** @class */ (function () {
|
|
|
627
634
|
this.drawables.push(drawable);
|
|
628
635
|
var bezierPath = drawable;
|
|
629
636
|
for (var i = 0; i < bezierPath.bezierCurves.length; i++) {
|
|
630
|
-
if (!drawable.adjustCircular && i == 0)
|
|
637
|
+
if (!drawable.adjustCircular && i == 0) {
|
|
631
638
|
this.vertices.push(bezierPath.bezierCurves[i].startPoint);
|
|
639
|
+
}
|
|
632
640
|
this.vertices.push(bezierPath.bezierCurves[i].endPoint);
|
|
633
641
|
this.vertices.push(bezierPath.bezierCurves[i].startControlPoint);
|
|
634
642
|
this.vertices.push(bezierPath.bezierCurves[i].endControlPoint);
|
|
@@ -647,6 +655,11 @@ var PlotBoilerplate = /** @class */ (function () {
|
|
|
647
655
|
});
|
|
648
656
|
drawable.lowerRight.attr.selectable = false;
|
|
649
657
|
}
|
|
658
|
+
else if (drawable instanceof PBText_1.PBText) {
|
|
659
|
+
this.vertices.push(drawable.anchor);
|
|
660
|
+
this.drawables.push(drawable);
|
|
661
|
+
drawable.anchor.attr.selectable = false;
|
|
662
|
+
}
|
|
650
663
|
else {
|
|
651
664
|
throw "Cannot add drawable of unrecognized type: " + typeof drawable + ".";
|
|
652
665
|
}
|
|
@@ -694,7 +707,7 @@ var PlotBoilerplate = /** @class */ (function () {
|
|
|
694
707
|
}
|
|
695
708
|
}
|
|
696
709
|
for (var i = 0; i < this.drawables.length; i++) {
|
|
697
|
-
if (this.drawables[i] === drawable) {
|
|
710
|
+
if (this.drawables[i] === drawable || this.drawables[i].uid === drawable.uid) {
|
|
698
711
|
this.drawables.splice(i, 1);
|
|
699
712
|
if (removeWithVertices) {
|
|
700
713
|
// Check if some listeners need to be removed
|
|
@@ -745,6 +758,9 @@ var PlotBoilerplate = /** @class */ (function () {
|
|
|
745
758
|
this.removeVertex(drawable.upperLeft, false);
|
|
746
759
|
this.removeVertex(drawable.lowerRight, false);
|
|
747
760
|
}
|
|
761
|
+
else if (drawable instanceof PBText_1.PBText) {
|
|
762
|
+
this.removeVertex(drawable.anchor, false);
|
|
763
|
+
}
|
|
748
764
|
} // END removeWithVertices
|
|
749
765
|
if (redraw) {
|
|
750
766
|
this.redraw();
|
|
@@ -766,8 +782,9 @@ var PlotBoilerplate = /** @class */ (function () {
|
|
|
766
782
|
for (var i = 0; i < this.vertices.length; i++) {
|
|
767
783
|
if (this.vertices[i] === vert) {
|
|
768
784
|
this.vertices.splice(i, 1);
|
|
769
|
-
if (redraw)
|
|
785
|
+
if (redraw) {
|
|
770
786
|
this.redraw();
|
|
787
|
+
}
|
|
771
788
|
return;
|
|
772
789
|
}
|
|
773
790
|
}
|
|
@@ -802,8 +819,9 @@ var PlotBoilerplate = /** @class */ (function () {
|
|
|
802
819
|
**/
|
|
803
820
|
PlotBoilerplate.prototype.getVertexNear = function (pixelPosition, pixelTolerance) {
|
|
804
821
|
var p = this.locatePointNear(this.transformMousePosition(pixelPosition.x, pixelPosition.y), pixelTolerance / Math.min(this.config.cssScaleX, this.config.cssScaleY));
|
|
805
|
-
if (p && p.typeName == "vertex")
|
|
822
|
+
if (p && p.typeName == "vertex") {
|
|
806
823
|
return this.vertices[p.vindex];
|
|
824
|
+
}
|
|
807
825
|
return undefined;
|
|
808
826
|
};
|
|
809
827
|
/**
|
|
@@ -1070,6 +1088,16 @@ var PlotBoilerplate = /** @class */ (function () {
|
|
|
1070
1088
|
d.lowerRight.attr.renderTime = renderTime;
|
|
1071
1089
|
}
|
|
1072
1090
|
}
|
|
1091
|
+
else if (d instanceof PBText_1.PBText) {
|
|
1092
|
+
fill.setCurrentId(d.uid);
|
|
1093
|
+
fill.text(d.text, d.anchor.x, d.anchor.y, d);
|
|
1094
|
+
if (this.drawConfig.text.anchor) {
|
|
1095
|
+
draw.setCurrentId(d.uid + "_a0");
|
|
1096
|
+
draw.setCurrentClassName(d.className + "-anchor");
|
|
1097
|
+
(this.drawConfig.text.fill ? fill : draw).point(d.anchor, this.drawConfig.text.color);
|
|
1098
|
+
}
|
|
1099
|
+
d.anchor.attr.renderTime = renderTime;
|
|
1100
|
+
}
|
|
1073
1101
|
else {
|
|
1074
1102
|
console.error("Cannot draw object. Unknown class.");
|
|
1075
1103
|
}
|
|
@@ -1349,7 +1377,6 @@ var PlotBoilerplate = /** @class */ (function () {
|
|
|
1349
1377
|
// Apply the zoom (the tolerant area should not shrink or grow when zooming)
|
|
1350
1378
|
tolerance /= _self.draw.scale.x;
|
|
1351
1379
|
// Search in vertices
|
|
1352
|
-
// for( var vindex in _self.vertices ) {
|
|
1353
1380
|
for (var vindex = 0; vindex < _self.vertices.length; vindex++) {
|
|
1354
1381
|
var vert = _self.vertices[vindex];
|
|
1355
1382
|
if ((vert.attr.draggable || vert.attr.selectable) && vert.distance(point) < tolerance) {
|
|
@@ -1369,10 +1396,7 @@ var PlotBoilerplate = /** @class */ (function () {
|
|
|
1369
1396
|
* @return {void}
|
|
1370
1397
|
**/
|
|
1371
1398
|
PlotBoilerplate.prototype.handleClick = function (e) {
|
|
1372
|
-
// x:number,y:number) {
|
|
1373
1399
|
var _self = this;
|
|
1374
|
-
// const x:number = e.params.pos.x;
|
|
1375
|
-
//const y:number = e.params.pos.y;
|
|
1376
1400
|
var p = this.locatePointNear(_self.transformMousePosition(e.params.pos.x, e.params.pos.y), PlotBoilerplate.DEFAULT_CLICK_TOLERANCE / Math.min(_self.config.cssScaleX, _self.config.cssScaleY));
|
|
1377
1401
|
if (p) {
|
|
1378
1402
|
_self.vertices[p.vindex].listeners.fireClickEvent(e);
|
|
@@ -1389,7 +1413,7 @@ var PlotBoilerplate = /** @class */ (function () {
|
|
|
1389
1413
|
}
|
|
1390
1414
|
_self.redraw();
|
|
1391
1415
|
}
|
|
1392
|
-
else if (this.keyHandler.isDown("y")
|
|
1416
|
+
else if (this.keyHandler.isDown("y")) {
|
|
1393
1417
|
_self.vertices[p.vindex].attr.bezierAutoAdjust = !_self.vertices[p.vindex].attr.bezierAutoAdjust;
|
|
1394
1418
|
_self.redraw();
|
|
1395
1419
|
}
|
|
@@ -1687,6 +1711,7 @@ var PlotBoilerplate = /** @class */ (function () {
|
|
|
1687
1711
|
_self.draggedElements = [];
|
|
1688
1712
|
};
|
|
1689
1713
|
var afProps = {
|
|
1714
|
+
// touchStart: (evt: TouchEvent) => {
|
|
1690
1715
|
touchStart: function (evt) {
|
|
1691
1716
|
if (evt.touches.length == 1) {
|
|
1692
1717
|
touchMovePos = new Vertex_1.Vertex(relPos_1({ x: evt.touches[0].clientX, y: evt.touches[0].clientY }));
|
|
@@ -1789,10 +1814,13 @@ var PlotBoilerplate = /** @class */ (function () {
|
|
|
1789
1814
|
_self.redraw();
|
|
1790
1815
|
}
|
|
1791
1816
|
}; // END afProps
|
|
1792
|
-
if (window["createAlloyFinger"])
|
|
1817
|
+
if (window["createAlloyFinger"]) {
|
|
1793
1818
|
window["createAlloyFinger"](this.eventCatcher ? this.eventCatcher : this.canvas, afProps);
|
|
1794
|
-
|
|
1819
|
+
}
|
|
1820
|
+
else {
|
|
1821
|
+
/* tslint:disable-next-line */
|
|
1795
1822
|
new alloyfinger_typescript_1.default(this.eventCatcher ? this.eventCatcher : this.canvas, afProps);
|
|
1823
|
+
}
|
|
1796
1824
|
}
|
|
1797
1825
|
catch (e) {
|
|
1798
1826
|
console.error("Failed to initialize AlloyFinger!");
|