@inweb/viewer-visualize 25.4.3 → 25.4.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (36) hide show
  1. package/dist/viewer-visualize.js +83 -6
  2. package/dist/viewer-visualize.js.map +1 -1
  3. package/dist/viewer-visualize.min.js +1 -1
  4. package/dist/viewer-visualize.module.js +4 -6
  5. package/dist/viewer-visualize.module.js.map +1 -1
  6. package/lib/Viewer/Markup/Api/IMarkupArrow.d.ts +31 -0
  7. package/lib/Viewer/Markup/Api/IMarkupCloud.d.ts +36 -0
  8. package/lib/Viewer/Markup/Api/IMarkupColorable.d.ts +11 -0
  9. package/lib/Viewer/Markup/Api/IMarkupEllipse.d.ts +36 -0
  10. package/lib/Viewer/Markup/Api/IMarkupImage.d.ts +36 -0
  11. package/lib/Viewer/Markup/Api/IMarkupLine.d.ts +27 -0
  12. package/lib/Viewer/Markup/Api/IMarkupObject.d.ts +37 -1
  13. package/lib/Viewer/Markup/Api/IMarkupRectangle.d.ts +36 -0
  14. package/lib/Viewer/Markup/Api/IMarkupText.d.ts +28 -0
  15. package/lib/Viewer/Markup/IMarkup.d.ts +85 -0
  16. package/lib/Viewer/Markup/Impl/Konva/MarkupColor.d.ts +17 -0
  17. package/lib/Viewer/Markup/Impl/Visualize/VisualizeMarkup.d.ts +0 -1
  18. package/lib/Viewer/Markup/MarkupFactory.d.ts +6 -0
  19. package/lib/Viewer/Viewer.d.ts +2 -0
  20. package/package.json +4 -4
  21. package/src/Viewer/Markup/Api/IMarkupArrow.ts +57 -0
  22. package/src/Viewer/Markup/Api/IMarkupCloud.ts +63 -0
  23. package/src/Viewer/Markup/Api/IMarkupColorable.ts +35 -0
  24. package/src/Viewer/Markup/Api/IMarkupEllipse.ts +63 -0
  25. package/src/Viewer/Markup/Api/IMarkupImage.ts +63 -0
  26. package/src/Viewer/Markup/Api/IMarkupLine.ts +52 -0
  27. package/src/Viewer/Markup/Api/IMarkupObject.ts +65 -2
  28. package/src/Viewer/Markup/Api/IMarkupRectangle.ts +63 -0
  29. package/src/Viewer/Markup/Api/IMarkupText.ts +54 -0
  30. package/src/Viewer/Markup/Api/Impl/Konva/KonvaArrow.ts +23 -0
  31. package/src/Viewer/Markup/IMarkup.ts +120 -0
  32. package/src/Viewer/Markup/Impl/Konva/KonvaMarkup.ts +29 -4
  33. package/src/Viewer/Markup/Impl/Konva/MarkupColor.ts +40 -0
  34. package/src/Viewer/Markup/Impl/Visualize/VisualizeMarkup.ts +0 -4
  35. package/src/Viewer/Markup/MarkupFactory.ts +29 -0
  36. package/src/Viewer/Viewer.ts +4 -2
@@ -1,21 +1,52 @@
1
1
  import { IMarkupObject } from "./IMarkupObject";
2
+ /**
3
+ * Arrow Markup object
4
+ */
2
5
  export interface IMarkupArrow extends IMarkupObject {
6
+ /**
7
+ * Get points of current Arrow
8
+ *
9
+ * @returns {{ x: number; y: number }} array of points
10
+ */
3
11
  getPoints(): {
4
12
  x: number;
5
13
  y: number;
6
14
  }[];
15
+ /**
16
+ * Set points of the Arrow
17
+ *
18
+ * @param {{ x: number; y: number }} points - array of points
19
+ */
7
20
  setPoints(points: {
8
21
  x: number;
9
22
  y: number;
10
23
  }[]): any;
24
+ /**
25
+ * Get Start Point of the Arrow
26
+ */
11
27
  getStartPoint(): {
12
28
  x: number;
13
29
  y: number;
14
30
  };
31
+ /**
32
+ * Set Start point of the Arrow
33
+ *
34
+ * @param x - value of X coordinate
35
+ * @param y - value of Y coordinate
36
+ */
15
37
  setStartPoint(x: number, y: number): any;
38
+ /**
39
+ * Get End point of the Arrow
40
+ */
16
41
  getEndPoint(): {
17
42
  x: number;
18
43
  y: number;
19
44
  };
45
+ /**
46
+ * Set End point of the Arrow
47
+ *
48
+ * @param x - value of X coordinate
49
+ * @param y - value of Y coordinate
50
+ */
20
51
  setEndPoint(x: number, y: number): any;
21
52
  }
@@ -1,14 +1,50 @@
1
1
  import { IMarkupObject } from "./IMarkupObject";
2
+ /**
3
+ * Cloud Markup object
4
+ */
2
5
  export interface IMarkupCloud extends IMarkupObject {
6
+ /**
7
+ * Get position of the Cloud
8
+ */
3
9
  getPosition(): {
4
10
  x: number;
5
11
  y: number;
6
12
  };
13
+ /**
14
+ * Set position of the Cloud
15
+ *
16
+ * @param x - value of X coordinate
17
+ * @param y - value of Y coordinate
18
+ */
7
19
  setPosition(x: number, y: number): any;
20
+ /**
21
+ * Get width of the Cloud. Default value is 200
22
+ */
8
23
  getWidth(): number;
24
+ /**
25
+ * Set width of the Cloud
26
+ *
27
+ * @param w - value of width. Default value is 200
28
+ */
9
29
  setWidth(w: number): any;
30
+ /**
31
+ * Get height of the Cloud. Default value is 200
32
+ */
10
33
  getHeigth(): number;
34
+ /**
35
+ * Set height of the Cloud
36
+ *
37
+ * @param h - value of height. Default value is 200
38
+ */
11
39
  setHeight(h: number): any;
40
+ /**
41
+ * Get line width of the Cloud. Defailt value is 4
42
+ */
12
43
  getLineWidth(): number;
44
+ /**
45
+ * Set line width of the Cloud
46
+ *
47
+ * @param size - value of width. Defailt value is 4
48
+ */
13
49
  setLineWidth(size: number): any;
14
50
  }
@@ -1,4 +1,15 @@
1
+ /**
2
+ * Markup Colorable
3
+ */
1
4
  export interface IMarkupColorable {
5
+ /**
6
+ * Get color of the Markup instance
7
+ */
2
8
  getColor(): string;
9
+ /**
10
+ * Set color of the Markup instance
11
+ *
12
+ * @param hex - color in #hex format. Default: `#ff0000`
13
+ */
3
14
  setColor(hex: string): void;
4
15
  }
@@ -1,14 +1,50 @@
1
1
  import { IMarkupObject } from "./IMarkupObject";
2
+ /**
3
+ * Ellipse Markup object
4
+ */
2
5
  export interface IMarkupEllipse extends IMarkupObject {
6
+ /**
7
+ * Get position of the Ellipse
8
+ */
3
9
  getPosition(): {
4
10
  x: number;
5
11
  y: number;
6
12
  };
13
+ /**
14
+ * Set position of the Ellipse
15
+ *
16
+ * @param x - value of X coordinate
17
+ * @param y - value of Y coordinate
18
+ */
7
19
  setPosition(x: number, y: number): any;
20
+ /**
21
+ * Get X radius of the Ellipse
22
+ */
8
23
  getRadiusX(): number;
24
+ /**
25
+ * Set X radius of the Ellipse
26
+ *
27
+ * @param r - value of X radius of the Ellipse
28
+ */
9
29
  setRadiusX(r: number): any;
30
+ /**
31
+ * Get Y radius of the Ellipse
32
+ */
10
33
  getRadiusY(): number;
34
+ /**
35
+ * Set Y radius of the Ellipse
36
+ *
37
+ * @param r - value of Y radius of the Ellipse
38
+ */
11
39
  setRadiusY(r: number): any;
40
+ /**
41
+ * Get line width of the Ellipse. Defailt is 4
42
+ */
12
43
  getLineWidth(): number;
44
+ /**
45
+ * Set line width of the Ellipse. Default is 4
46
+ *
47
+ * @param size - value of width
48
+ */
13
49
  setLineWidth(size: number): any;
14
50
  }
@@ -1,14 +1,50 @@
1
1
  import { IMarkupObject } from "./IMarkupObject";
2
+ /**
3
+ * Image Markup object
4
+ */
2
5
  export interface IMarkupImage extends IMarkupObject {
6
+ /**
7
+ * Get position of the Image
8
+ */
3
9
  getPosition(): {
4
10
  x: number;
5
11
  y: number;
6
12
  };
13
+ /**
14
+ * Set position of the Image
15
+ *
16
+ * @param x - value of X coordinate
17
+ * @param y - value of Y coordinate
18
+ */
7
19
  setPosition(x: number, y: number): any;
20
+ /**
21
+ * Get source of the Image. Provides base64 string
22
+ */
8
23
  getSrc(): string;
24
+ /**
25
+ * Set source of the Image
26
+ *
27
+ * @param src - string in base64 format
28
+ */
9
29
  setSrc(src: string): any;
30
+ /**
31
+ * Get width of the Image
32
+ */
10
33
  getWidth(): number;
34
+ /**
35
+ * Set width of the Image
36
+ *
37
+ * @param w - value of width. Height will be automatically updated according to ratio of the Image
38
+ */
11
39
  setWidth(w: number): any;
40
+ /**
41
+ * Get height of the Image
42
+ */
12
43
  getHeight(): number;
44
+ /**
45
+ * Set height of the Image
46
+ *
47
+ * @param h - value of height. Width will be automatically updated according to ratio of the Image
48
+ */
13
49
  setHeight(h: number): any;
14
50
  }
@@ -1,10 +1,37 @@
1
1
  import { IMarkupObject } from "./IMarkupObject";
2
+ /**
3
+ * Line Markup object
4
+ */
2
5
  export interface IMarkupLine extends IMarkupObject {
6
+ /**
7
+ * Get points of the Line
8
+ */
3
9
  getPoints(): number[];
10
+ /**
11
+ * Get Line width. Default value is 4
12
+ */
4
13
  getLineWidth(): number;
14
+ /**
15
+ * Set Line width. Default value is 4
16
+ *
17
+ * @param size - value of width
18
+ */
5
19
  setLineWidth(size: number): any;
20
+ /**
21
+ * Get Type of the Line. Available values: `solid`, `dot`, `dash`. Default is `solid`
22
+ */
6
23
  getLineType(): string;
24
+ /**
25
+ * Set Type of the Line. Available values: `solid`, `dot`, `dash`. Default is `solid`
26
+ *
27
+ * @param type
28
+ */
7
29
  setLineType(type: string): any;
30
+ /**
31
+ * Add points to the Line
32
+ *
33
+ * @param {{ x: number; y: number }} points array of points
34
+ */
8
35
  addPoints(points: [{
9
36
  x: number;
10
37
  y: number;
@@ -1,11 +1,47 @@
1
+ /**
2
+ * Markup object
3
+ */
1
4
  export interface IMarkupObject {
5
+ /**
6
+ * Link to Library object (Konva, VisualizeJS)
7
+ */
2
8
  ref(): any;
9
+ /**
10
+ * Get an internal identificator of the object. Not unique
11
+ */
3
12
  id(): string;
13
+ /**
14
+ * Set Mouse editing feature
15
+ *
16
+ * @param value true / false
17
+ */
4
18
  enableMouseEditing(value: boolean): any;
19
+ /**
20
+ * Get type of the Markup object
21
+ */
5
22
  type(): string;
23
+ /**
24
+ * Get rotation of the Markup object
25
+ */
6
26
  getRotation(): number;
27
+ /**
28
+ * Set rotation of the Markup object
29
+ *
30
+ * @param degrees number of degress to rotate
31
+ */
7
32
  setRotation(degrees: number): void;
33
+ /**
34
+ * Get Z-Index of the Markup object
35
+ */
8
36
  getZIndex(): number;
37
+ /**
38
+ * Set Z-Index of the Markup object
39
+ *
40
+ * @param zIndex integer value of Z-Index
41
+ */
9
42
  setZIndex(zIndex: number): void;
10
- delete(): any;
43
+ /**
44
+ * Delete current Markup object
45
+ */
46
+ delete(): void;
11
47
  }
@@ -1,14 +1,50 @@
1
1
  import { IMarkupObject } from "./IMarkupObject";
2
+ /**
3
+ * Rectangle Markup object
4
+ */
2
5
  export interface IMarkupRectangle extends IMarkupObject {
6
+ /**
7
+ * Get position of the Rectangle
8
+ */
3
9
  getPosition(): {
4
10
  x: number;
5
11
  y: number;
6
12
  };
13
+ /**
14
+ * Set position of the Rectangle
15
+ *
16
+ * @param x - value of X coordinate
17
+ * @param y - value of Y coordinate
18
+ */
7
19
  setPosition(x: number, y: number): any;
20
+ /**
21
+ * Get width of the Rectangle. Default value is 200
22
+ */
8
23
  getWidth(): number;
24
+ /**
25
+ * Set width of the Rectangle
26
+ *
27
+ * @param w - value of width. Default value is 200
28
+ */
9
29
  setWidth(w: number): any;
30
+ /**
31
+ * Get height of the Rectangle. Default value is 200
32
+ */
10
33
  getHeigth(): number;
34
+ /**
35
+ * Set height of the Rectangle
36
+ *
37
+ * @param h - value of height. Default value is 200
38
+ */
11
39
  setHeight(h: number): any;
40
+ /**
41
+ * Get line width of the Rectangle. Defailt value is 4
42
+ */
12
43
  getLineWidth(): number;
44
+ /**
45
+ * Set line width of the Rectangle
46
+ *
47
+ * @param size - value of width. Defailt value is 4
48
+ */
13
49
  setLineWidth(size: number): any;
14
50
  }
@@ -1,12 +1,40 @@
1
1
  import { IMarkupObject } from "./IMarkupObject";
2
+ /**
3
+ * Text Markup object
4
+ */
2
5
  export interface IMarkupText extends IMarkupObject {
6
+ /**
7
+ * Get Text value
8
+ */
3
9
  getText(): string;
10
+ /**
11
+ * Set Text value
12
+ *
13
+ * @param text - string value
14
+ */
4
15
  setText(text: string): void;
16
+ /**
17
+ * Get position of the Text
18
+ */
5
19
  getPosition(): {
6
20
  x: number;
7
21
  y: number;
8
22
  };
23
+ /**
24
+ * Set position of the Text
25
+ *
26
+ * @param x - value of X coordinate
27
+ * @param y - value of Y coordinate
28
+ */
9
29
  setPosition(x: number, y: number): any;
30
+ /**
31
+ * Get font size. Default value is 34
32
+ */
10
33
  getFontSize(): any;
34
+ /**
35
+ * Set font size. Default value is 34
36
+ *
37
+ * @param size
38
+ */
11
39
  setFontSize(size: number): any;
12
40
  }
@@ -2,11 +2,18 @@ import { IViewpoint } from "@inweb/viewer-core";
2
2
  import { OdBaseDragger } from "../Draggers/Common/OdBaseDragger";
3
3
  import { Viewer } from "../Viewer";
4
4
  import { IMarkupObject } from "./Api/IMarkupObject";
5
+ /**
6
+ * Version of the markup support. Old = "Visualize", New = "Konva"
7
+ */
5
8
  export declare enum MarkupType {
6
9
  Unknown = 0,
7
10
  Konva = "Konva",
8
11
  Visualize = "Visualize"
9
12
  }
13
+ /**
14
+ * Defines type of markup object. For old Visualize markup ({@link MarkupType}) only "Line" and
15
+ * "Text" markup objects are supported.
16
+ */
10
17
  export declare enum MarkupMode {
11
18
  Line = "Line",
12
19
  Text = "Text",
@@ -16,25 +23,103 @@ export declare enum MarkupMode {
16
23
  Image = "Image",
17
24
  Cloud = "Cloud"
18
25
  }
26
+ /**
27
+ * Specifies parameters and methods of the Markup object
28
+ */
19
29
  export interface IMarkup {
30
+ /**
31
+ * Width of the markup object line
32
+ */
20
33
  lineWidth: number;
34
+ /**
35
+ * Start method to init Markup support for the Viewer instance.
36
+ *
37
+ * @param {Viewer} viewer - current {@link Viewer} object
38
+ * @param canvas - {@link HTMLCanvasElement} of the Viewer
39
+ * @param canvasEvents - list of used events of the Viewer
40
+ */
21
41
  initialize(viewer: Viewer, canvas: HTMLCanvasElement, canvasEvents: string[]): void;
42
+ /**
43
+ * Releases all resources allocated by this `Markup` instance. Call this method before
44
+ * release the `Markup` instance.
45
+ */
22
46
  dispose(): void;
47
+ /**
48
+ * Provide Javascript Map with all {@link OdBaseDragger} draggers used by Markup. We need this
49
+ * map to register in {@link Viewer.registerDragger}
50
+ */
23
51
  getDraggers(): Map<string, typeof OdBaseDragger>;
52
+ /**
53
+ * Remove markup overlay.
54
+ */
24
55
  clearOverlay(): void;
56
+ /**
57
+ * Set markup color.
58
+ *
59
+ * @param r - `Red` part of color.
60
+ * @param g - `Green` part of color.
61
+ * @param b - `Blue` part of color.
62
+ */
25
63
  setMarkupColor(r: number, g: number, b: number): void;
64
+ /**
65
+ * Get markup color.
66
+ *
67
+ * @returns Color with `RGB` values.
68
+ */
26
69
  getMarkupColor(): {
27
70
  r: number;
28
71
  g: number;
29
72
  b: number;
30
73
  };
74
+ /**
75
+ * Colorize all markup entities with the specified color.
76
+ *
77
+ * @param r - `Red` part of color.
78
+ * @param g - `Green` part of color.
79
+ * @param b - `Blue` part of color.
80
+ */
31
81
  colorizeAllMarkup(r: number, g: number, b: number): void;
82
+ /**
83
+ * Colorize all selected markup entities with the specified color.
84
+ *
85
+ * @param r - `Red` part of color.
86
+ * @param g - `Green` part of color.
87
+ * @param b - `Blue` part of color.
88
+ */
32
89
  colorizeSelectedMarkups(r: number, g: number, b: number): void;
90
+ /**
91
+ * Draw a viewpoint. To get a list of available model viewpoints, use the
92
+ *
93
+ * @param viewpoint - Viewpoint data.
94
+ */
33
95
  setViewpoint(viewpoint: IViewpoint): void;
96
+ /**
97
+ * Create a {@link IViewpoint} viewpoint
98
+ */
34
99
  getViewpoint(): IViewpoint;
100
+ /**
101
+ * Create a Markup object
102
+ *
103
+ * @param type - string identificator of Markup type
104
+ * @param params - object with parameters of Markup
105
+ */
35
106
  createObject(type: string, params: any): IMarkupObject;
107
+ /**
108
+ * Get array of all existed Markup objects
109
+ */
36
110
  getObjects(): IMarkupObject[];
111
+ /**
112
+ * Get array of currently selected Markup objects
113
+ */
37
114
  getSelectedObjects(): IMarkupObject[];
115
+ /**
116
+ * Select list of Markup objects
117
+ *
118
+ * @param objects
119
+ */
38
120
  selectObjects(objects: IMarkupObject[]): void;
121
+ /**
122
+ * Clear list of currently selected Markup objects
123
+ */
39
124
  clearSelected(): void;
40
125
  }
@@ -7,12 +7,29 @@ export declare class MarkupColor {
7
7
  * Color in #000000 format
8
8
  */
9
9
  get HexColor(): string;
10
+ /**
11
+ * Color as object with r,g,b properties
12
+ */
10
13
  get RGB(): {
11
14
  r: number;
12
15
  g: number;
13
16
  b: number;
14
17
  };
18
+ /**
19
+ * Create an instance of Color
20
+ *
21
+ * @param r - Red color in [0,255] range
22
+ * @param g - Green color in [0,255] range
23
+ * @param b - Blue color in [0,255] range
24
+ */
15
25
  constructor(r: number, g: number, b: number);
26
+ /**
27
+ * Set Color for current instance
28
+ *
29
+ * @param r - Red color in [0,255] range
30
+ * @param g - Green color in [0,255] range
31
+ * @param b - Blue color in [0,255] range
32
+ */
16
33
  setColor(r: number, g: number, b: number): void;
17
34
  private rgbToHex;
18
35
  }
@@ -25,7 +25,6 @@ export declare class VisualizeMarkup implements IMarkup {
25
25
  colorizeSelectedMarkups(r?: number, g?: number, b?: number): void;
26
26
  setViewpoint(viewpoint: IViewpoint): void;
27
27
  getViewpoint(): IViewpoint;
28
- getLayer(): any;
29
28
  createObject(type: string, params: any): IMarkupObject;
30
29
  getObjects(): IMarkupObject[];
31
30
  getSelectedObjects(): IMarkupObject[];
@@ -1,5 +1,11 @@
1
1
  import { IMarkup, MarkupType } from "./IMarkup";
2
2
  export declare class MarkupFactory {
3
+ /**
4
+ * Initialize {@link IMarkup} instance
5
+ *
6
+ * @param markupType - Specifies version of the markup support. Two variants of markup
7
+ * support are implemented: old "Visualize" and new "Konva". Default is "Konva". {@link MarkupType}
8
+ */
3
9
  static createMarkup(markupType: MarkupType): IMarkup;
4
10
  private static createKonva;
5
11
  private static createVisualize;
@@ -42,6 +42,8 @@ export declare class Viewer extends EventEmitter2<ViewerEventMap & OptionsEventM
42
42
  * @param params.enableAutoUpdate - Enable auto-update of the viewer after any changes. If
43
43
  * the auto-update is disabled, you need to update the `VisualizeJS` viewer and the active
44
44
  * dragger manually using the `update` event. Default is `true`.
45
+ * @param params.markupType - Specifies version of the markup support. Two variants of markup
46
+ * support are implemented: old "Visualize" and new "Konva". Default is "Konva". {@link MarkupType}
45
47
  */
46
48
  constructor(client?: Client, params?: {
47
49
  visualizeJsUrl?: string;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@inweb/viewer-visualize",
3
- "version": "25.4.3",
3
+ "version": "25.4.6",
4
4
  "description": "3D CAD and BIM data Viewer powered by Visualize",
5
5
  "homepage": "https://cloud.opendesign.com/docs/index.html",
6
6
  "license": "SEE LICENSE IN LICENSE",
@@ -29,9 +29,9 @@
29
29
  "ts-docs": "typedoc"
30
30
  },
31
31
  "dependencies": {
32
- "@inweb/client": "~25.4.3",
33
- "@inweb/eventemitter2": "~25.4.3",
34
- "@inweb/viewer-core": "~25.4.3"
32
+ "@inweb/client": "~25.4.6",
33
+ "@inweb/eventemitter2": "~25.4.6",
34
+ "@inweb/viewer-core": "~25.4.6"
35
35
  },
36
36
  "devDependencies": {
37
37
  "canvas": "^2.11.2",
@@ -1,12 +1,69 @@
1
+ ///////////////////////////////////////////////////////////////////////////////
2
+ // Copyright (C) 2002-2024, Open Design Alliance (the "Alliance").
3
+ // All rights reserved.
4
+ //
5
+ // This software and its documentation and related materials are owned by
6
+ // the Alliance. The software may only be incorporated into application
7
+ // programs owned by members of the Alliance, subject to a signed
8
+ // Membership Agreement and Supplemental Software License Agreement with the
9
+ // Alliance. The structure and organization of this software are the valuable
10
+ // trade secrets of the Alliance and its suppliers. The software is also
11
+ // protected by copyright law and international treaty provisions. Application
12
+ // programs incorporating this software must include the following statement
13
+ // with their copyright notices:
14
+ //
15
+ // This application incorporates Open Design Alliance software pursuant to a
16
+ // license agreement with Open Design Alliance.
17
+ // Open Design Alliance Copyright (C) 2002-2024 by Open Design Alliance.
18
+ // All rights reserved.
19
+ //
20
+ // By use of this software, its documentation or related materials, you
21
+ // acknowledge and accept the above terms.
22
+ ///////////////////////////////////////////////////////////////////////////////
23
+
1
24
  import { IMarkupObject } from "./IMarkupObject";
2
25
 
26
+ /**
27
+ * Arrow Markup object
28
+ */
3
29
  export interface IMarkupArrow extends IMarkupObject {
30
+ /**
31
+ * Get points of current Arrow
32
+ *
33
+ * @returns {{ x: number; y: number }} array of points
34
+ */
4
35
  getPoints(): { x: number; y: number }[];
36
+
37
+ /**
38
+ * Set points of the Arrow
39
+ *
40
+ * @param {{ x: number; y: number }} points - array of points
41
+ */
5
42
  setPoints(points: { x: number; y: number }[]);
6
43
 
44
+ /**
45
+ * Get Start Point of the Arrow
46
+ */
7
47
  getStartPoint(): { x: number; y: number };
48
+
49
+ /**
50
+ * Set Start point of the Arrow
51
+ *
52
+ * @param x - value of X coordinate
53
+ * @param y - value of Y coordinate
54
+ */
8
55
  setStartPoint(x: number, y: number);
9
56
 
57
+ /**
58
+ * Get End point of the Arrow
59
+ */
10
60
  getEndPoint(): { x: number; y: number };
61
+
62
+ /**
63
+ * Set End point of the Arrow
64
+ *
65
+ * @param x - value of X coordinate
66
+ * @param y - value of Y coordinate
67
+ */
11
68
  setEndPoint(x: number, y: number);
12
69
  }