@inweb/viewer-visualize 25.3.13

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 (164) hide show
  1. package/LICENSE +20 -0
  2. package/README.md +63 -0
  3. package/dist/viewer-visualize.js +16982 -0
  4. package/dist/viewer-visualize.js.map +1 -0
  5. package/dist/viewer-visualize.min.js +1 -0
  6. package/dist/viewer-visualize.module.js +5267 -0
  7. package/dist/viewer-visualize.module.js.map +1 -0
  8. package/lib/Viewer/Commands/ApplyModelTransform.d.ts +1 -0
  9. package/lib/Viewer/Commands/ClearMarkup.d.ts +1 -0
  10. package/lib/Viewer/Commands/ClearSlices.d.ts +1 -0
  11. package/lib/Viewer/Commands/CreatePreview.d.ts +1 -0
  12. package/lib/Viewer/Commands/Explode.d.ts +1 -0
  13. package/lib/Viewer/Commands/GetDefaultViewPositions.d.ts +1 -0
  14. package/lib/Viewer/Commands/GetModels.d.ts +1 -0
  15. package/lib/Viewer/Commands/GetSelected.d.ts +1 -0
  16. package/lib/Viewer/Commands/HideSelected.d.ts +1 -0
  17. package/lib/Viewer/Commands/IsolateSelected.d.ts +1 -0
  18. package/lib/Viewer/Commands/RegenerateAll.d.ts +1 -0
  19. package/lib/Viewer/Commands/ResetView.d.ts +1 -0
  20. package/lib/Viewer/Commands/SelectModel.d.ts +1 -0
  21. package/lib/Viewer/Commands/SetActiveDragger.d.ts +1 -0
  22. package/lib/Viewer/Commands/SetDefaultViewPosition.d.ts +1 -0
  23. package/lib/Viewer/Commands/SetMarkupColor.d.ts +1 -0
  24. package/lib/Viewer/Commands/SetSelected.d.ts +1 -0
  25. package/lib/Viewer/Commands/ShowAll.d.ts +1 -0
  26. package/lib/Viewer/Commands/Unselect.d.ts +1 -0
  27. package/lib/Viewer/Commands/ZoomToExtents.d.ts +1 -0
  28. package/lib/Viewer/Commands/ZoomToObjects.d.ts +1 -0
  29. package/lib/Viewer/Commands/ZoomToSelected.d.ts +1 -0
  30. package/lib/Viewer/Commands/index.d.ts +22 -0
  31. package/lib/Viewer/Draggers/Actions/OrbitAction.d.ts +21 -0
  32. package/lib/Viewer/Draggers/Actions/PanAction.d.ts +17 -0
  33. package/lib/Viewer/Draggers/Actions/ZoomAction.d.ts +7 -0
  34. package/lib/Viewer/Draggers/Common/Geometry.d.ts +114 -0
  35. package/lib/Viewer/Draggers/Common/GestureManager.d.ts +40 -0
  36. package/lib/Viewer/Draggers/Common/OdBaseDragger.d.ts +53 -0
  37. package/lib/Viewer/Draggers/Common/OdaGeAction.d.ts +29 -0
  38. package/lib/Viewer/Draggers/MeasureLineDragger/MeasureLineItem.d.ts +30 -0
  39. package/lib/Viewer/Draggers/MeasureLineDragger/MeasureUtils.d.ts +19 -0
  40. package/lib/Viewer/Draggers/MeasureLineDragger/index.d.ts +23 -0
  41. package/lib/Viewer/Draggers/OdBaseCuttingPlaneDragger.d.ts +26 -0
  42. package/lib/Viewer/Draggers/OdCuttingPlaneXAxisDragger.d.ts +7 -0
  43. package/lib/Viewer/Draggers/OdCuttingPlaneYAxisDragger.d.ts +7 -0
  44. package/lib/Viewer/Draggers/OdCuttingPlaneZAxisDragger.d.ts +7 -0
  45. package/lib/Viewer/Draggers/OdOrbitDragger.d.ts +14 -0
  46. package/lib/Viewer/Draggers/OdPanDragger.d.ts +11 -0
  47. package/lib/Viewer/Draggers/OdZoomDragger.d.ts +11 -0
  48. package/lib/Viewer/Draggers/OdZoomWheelDragger.d.ts +10 -0
  49. package/lib/Viewer/Draggers/OdZoomWindowDragger/OdSelectionFrame.d.ts +18 -0
  50. package/lib/Viewer/Draggers/OdZoomWindowDragger/index.d.ts +13 -0
  51. package/lib/Viewer/Draggers/OdaLineDragger.d.ts +14 -0
  52. package/lib/Viewer/Draggers/OdaTextDragger.d.ts +15 -0
  53. package/lib/Viewer/Draggers/OdaWalkDragger.d.ts +29 -0
  54. package/lib/Viewer/Draggers/OrbitAroundBuildingDragger.d.ts +18 -0
  55. package/lib/Viewer/Loaders/BaseLoader.d.ts +10 -0
  56. package/lib/Viewer/Loaders/LoaderFactory.d.ts +10 -0
  57. package/lib/Viewer/Loaders/TCSLoader.d.ts +4 -0
  58. package/lib/Viewer/Loaders/UpdaterController.d.ts +14 -0
  59. package/lib/Viewer/Loaders/VsfXLoader.d.ts +4 -0
  60. package/lib/Viewer/Loaders/VsfXPartialLoader.d.ts +4 -0
  61. package/lib/Viewer/Loaders/VsfXStreamingLoader.d.ts +4 -0
  62. package/lib/Viewer/Markup/Api/IMarkupArrow.d.ts +21 -0
  63. package/lib/Viewer/Markup/Api/IMarkupCloud.d.ts +14 -0
  64. package/lib/Viewer/Markup/Api/IMarkupColorable.d.ts +4 -0
  65. package/lib/Viewer/Markup/Api/IMarkupEllipse.d.ts +14 -0
  66. package/lib/Viewer/Markup/Api/IMarkupImage.d.ts +14 -0
  67. package/lib/Viewer/Markup/Api/IMarkupLine.d.ts +12 -0
  68. package/lib/Viewer/Markup/Api/IMarkupObject.d.ts +11 -0
  69. package/lib/Viewer/Markup/Api/IMarkupRectangle.d.ts +14 -0
  70. package/lib/Viewer/Markup/Api/IMarkupText.d.ts +12 -0
  71. package/lib/Viewer/Markup/Api/Impl/Konva/KonvaArrow.d.ts +46 -0
  72. package/lib/Viewer/Markup/Api/Impl/Konva/KonvaCloud.d.ts +35 -0
  73. package/lib/Viewer/Markup/Api/Impl/Konva/KonvaEllipse.d.ts +40 -0
  74. package/lib/Viewer/Markup/Api/Impl/Konva/KonvaImage.d.ts +36 -0
  75. package/lib/Viewer/Markup/Api/Impl/Konva/KonvaLine.d.ts +36 -0
  76. package/lib/Viewer/Markup/Api/Impl/Konva/KonvaRectangle.d.ts +38 -0
  77. package/lib/Viewer/Markup/Api/Impl/Konva/KonvaText.d.ts +37 -0
  78. package/lib/Viewer/Markup/IMarkup.d.ts +39 -0
  79. package/lib/Viewer/Markup/Impl/Konva/KonvaMarkup.d.ts +70 -0
  80. package/lib/Viewer/Markup/Impl/Konva/MarkupColor.d.ts +18 -0
  81. package/lib/Viewer/Markup/Impl/Visualize/VisualizeMarkup.d.ts +33 -0
  82. package/lib/Viewer/Markup/MarkupFactory.d.ts +6 -0
  83. package/lib/Viewer/Viewer.d.ts +346 -0
  84. package/lib/Viewer/utils.d.ts +3 -0
  85. package/lib/index.d.ts +3 -0
  86. package/package.json +44 -0
  87. package/src/Viewer/Commands/ApplyModelTransform.ts +69 -0
  88. package/src/Viewer/Commands/ClearMarkup.ts +28 -0
  89. package/src/Viewer/Commands/ClearSlices.ts +27 -0
  90. package/src/Viewer/Commands/CreatePreview.ts +33 -0
  91. package/src/Viewer/Commands/Explode.ts +38 -0
  92. package/src/Viewer/Commands/GetDefaultViewPositions.ts +36 -0
  93. package/src/Viewer/Commands/GetModels.ts +43 -0
  94. package/src/Viewer/Commands/GetSelected.ts +58 -0
  95. package/src/Viewer/Commands/HideSelected.ts +37 -0
  96. package/src/Viewer/Commands/IsolateSelected.ts +37 -0
  97. package/src/Viewer/Commands/RegenerateAll.ts +37 -0
  98. package/src/Viewer/Commands/ResetView.ts +43 -0
  99. package/src/Viewer/Commands/SelectModel.ts +52 -0
  100. package/src/Viewer/Commands/SetActiveDragger.ts +29 -0
  101. package/src/Viewer/Commands/SetDefaultViewPosition.ts +50 -0
  102. package/src/Viewer/Commands/SetMarkupColor.ts +29 -0
  103. package/src/Viewer/Commands/SetSelected.ts +47 -0
  104. package/src/Viewer/Commands/ShowAll.ts +37 -0
  105. package/src/Viewer/Commands/Unselect.ts +37 -0
  106. package/src/Viewer/Commands/ZoomToExtents.ts +43 -0
  107. package/src/Viewer/Commands/ZoomToObjects.ts +47 -0
  108. package/src/Viewer/Commands/ZoomToSelected.ts +39 -0
  109. package/src/Viewer/Commands/index.ts +45 -0
  110. package/src/Viewer/Draggers/Actions/OrbitAction.ts +250 -0
  111. package/src/Viewer/Draggers/Actions/PanAction.ts +102 -0
  112. package/src/Viewer/Draggers/Actions/ZoomAction.ts +45 -0
  113. package/src/Viewer/Draggers/Common/Geometry.ts +152 -0
  114. package/src/Viewer/Draggers/Common/GestureManager.ts +263 -0
  115. package/src/Viewer/Draggers/Common/OdBaseDragger.ts +270 -0
  116. package/src/Viewer/Draggers/Common/OdaGeAction.ts +146 -0
  117. package/src/Viewer/Draggers/MeasureLineDragger/MeasureLineItem.ts +248 -0
  118. package/src/Viewer/Draggers/MeasureLineDragger/MeasureUtils.ts +182 -0
  119. package/src/Viewer/Draggers/MeasureLineDragger/index.ts +166 -0
  120. package/src/Viewer/Draggers/OdBaseCuttingPlaneDragger.ts +182 -0
  121. package/src/Viewer/Draggers/OdCuttingPlaneXAxisDragger.ts +53 -0
  122. package/src/Viewer/Draggers/OdCuttingPlaneYAxisDragger.ts +53 -0
  123. package/src/Viewer/Draggers/OdCuttingPlaneZAxisDragger.ts +53 -0
  124. package/src/Viewer/Draggers/OdOrbitDragger.ts +70 -0
  125. package/src/Viewer/Draggers/OdPanDragger.ts +62 -0
  126. package/src/Viewer/Draggers/OdZoomDragger.ts +59 -0
  127. package/src/Viewer/Draggers/OdZoomWheelDragger.ts +103 -0
  128. package/src/Viewer/Draggers/OdZoomWindowDragger/OdSelectionFrame.ts +123 -0
  129. package/src/Viewer/Draggers/OdZoomWindowDragger/index.ts +75 -0
  130. package/src/Viewer/Draggers/OdaLineDragger.ts +80 -0
  131. package/src/Viewer/Draggers/OdaTextDragger.ts +118 -0
  132. package/src/Viewer/Draggers/OdaWalkDragger.ts +278 -0
  133. package/src/Viewer/Draggers/OrbitAroundBuildingDragger.ts +184 -0
  134. package/src/Viewer/Loaders/BaseLoader.ts +40 -0
  135. package/src/Viewer/Loaders/LoaderFactory.ts +48 -0
  136. package/src/Viewer/Loaders/TCSLoader.ts +82 -0
  137. package/src/Viewer/Loaders/UpdaterController.ts +36 -0
  138. package/src/Viewer/Loaders/VsfXLoader.ts +65 -0
  139. package/src/Viewer/Loaders/VsfXPartialLoader.ts +208 -0
  140. package/src/Viewer/Loaders/VsfXStreamingLoader.ts +87 -0
  141. package/src/Viewer/Markup/Api/IMarkupArrow.ts +12 -0
  142. package/src/Viewer/Markup/Api/IMarkupCloud.ts +15 -0
  143. package/src/Viewer/Markup/Api/IMarkupColorable.ts +4 -0
  144. package/src/Viewer/Markup/Api/IMarkupEllipse.ts +15 -0
  145. package/src/Viewer/Markup/Api/IMarkupImage.ts +15 -0
  146. package/src/Viewer/Markup/Api/IMarkupLine.ts +13 -0
  147. package/src/Viewer/Markup/Api/IMarkupObject.ts +15 -0
  148. package/src/Viewer/Markup/Api/IMarkupRectangle.ts +15 -0
  149. package/src/Viewer/Markup/Api/IMarkupText.ts +12 -0
  150. package/src/Viewer/Markup/Api/Impl/Konva/KonvaArrow.ts +117 -0
  151. package/src/Viewer/Markup/Api/Impl/Konva/KonvaCloud.ts +208 -0
  152. package/src/Viewer/Markup/Api/Impl/Konva/KonvaEllipse.ts +118 -0
  153. package/src/Viewer/Markup/Api/Impl/Konva/KonvaImage.ts +123 -0
  154. package/src/Viewer/Markup/Api/Impl/Konva/KonvaLine.ts +131 -0
  155. package/src/Viewer/Markup/Api/Impl/Konva/KonvaRectangle.ts +119 -0
  156. package/src/Viewer/Markup/Api/Impl/Konva/KonvaText.ts +110 -0
  157. package/src/Viewer/Markup/IMarkup.ts +42 -0
  158. package/src/Viewer/Markup/Impl/Konva/KonvaMarkup.ts +1144 -0
  159. package/src/Viewer/Markup/Impl/Konva/MarkupColor.ts +39 -0
  160. package/src/Viewer/Markup/Impl/Visualize/VisualizeMarkup.ts +229 -0
  161. package/src/Viewer/Markup/MarkupFactory.ts +32 -0
  162. package/src/Viewer/Viewer.ts +1183 -0
  163. package/src/Viewer/utils.ts +74 -0
  164. package/src/index.ts +26 -0
@@ -0,0 +1,39 @@
1
+ export class MarkupColor {
2
+ public R: number;
3
+ public G: number;
4
+ public B: number;
5
+
6
+ private _hex: string;
7
+
8
+ /**
9
+ * Color in #000000 format
10
+ */
11
+ get HexColor(): string {
12
+ return "#" + this._hex;
13
+ }
14
+
15
+ get RGB(): { r: number; g: number; b: number } {
16
+ return { r: this.R, g: this.G, b: this.B };
17
+ }
18
+
19
+ constructor(r: number, g: number, b: number) {
20
+ this.setColor(r, g, b);
21
+ }
22
+
23
+ public setColor(r: number, g: number, b: number): void {
24
+ this.R = r;
25
+ this.G = g;
26
+ this.B = b;
27
+
28
+ this._hex = this.rgbToHex(r, g, b);
29
+ }
30
+
31
+ private rgbToHex(r: number, g: number, b: number): string {
32
+ const valueToHex = (c) => {
33
+ const hex = c.toString(16);
34
+ return hex === "0" ? "00" : hex;
35
+ };
36
+
37
+ return valueToHex(r) + valueToHex(g) + valueToHex(b);
38
+ }
39
+ }
@@ -0,0 +1,229 @@
1
+ import { ILine, IText, IViewpoint } from "@inweb/viewer-core";
2
+
3
+ import { IMarkup, MarkupMode } from "../../IMarkup";
4
+ import { Viewer } from "../../../Viewer";
5
+ import { OdBaseDragger } from "../../../Draggers/Common/OdBaseDragger";
6
+ import { MARKUP_ENTITY_LINE, OdaLineDragger } from "../../../Draggers/OdaLineDragger";
7
+ import { MARKUP_ENTITY_TEXT, OdaTextDragger } from "../../../Draggers/OdaTextDragger";
8
+ import { IMarkupObject } from "../../Api/IMarkupObject";
9
+
10
+ export class VisualizeMarkup implements IMarkup {
11
+ private _viewer: Viewer;
12
+ protected _markupColor = { r: 255, g: 0, b: 0 };
13
+
14
+ public lineWidth = 0;
15
+
16
+ initialize(viewer: Viewer, canvas: HTMLCanvasElement, canvasEvents: string[]): void {
17
+ this._viewer = viewer;
18
+ }
19
+
20
+ dispose(): void {}
21
+
22
+ getDraggers(): Map<string, typeof OdBaseDragger> {
23
+ return new Map<string, typeof OdBaseDragger>([
24
+ [MarkupMode.Line, OdaLineDragger],
25
+ [MarkupMode.Text, OdaTextDragger],
26
+ ]);
27
+ }
28
+
29
+ clearOverlay(): void {
30
+ if (!this._viewer.visualizeJs) return;
31
+
32
+ const visViewer = this._viewer.visViewer();
33
+ const model = visViewer.getMarkupModel();
34
+ model.clearEntities();
35
+ model.delete();
36
+
37
+ this._viewer.update();
38
+ }
39
+
40
+ getMarkupColor(): { r: number; g: number; b: number } {
41
+ return this._markupColor;
42
+ }
43
+
44
+ setMarkupColor(r: number, g: number, b: number): void {
45
+ const color = { r, g, b };
46
+ this._markupColor = color;
47
+ }
48
+
49
+ colorizeAllMarkup(r = 255, g = 0, b = 0): void {
50
+ if (!this._viewer.visualizeJs) return;
51
+
52
+ const visViewer = this._viewer.visViewer();
53
+ const model = visViewer.getMarkupModel();
54
+ const itr = model.getEntitiesIterator();
55
+ for (; !itr.done(); itr.step()) {
56
+ const entityId = itr.getEntity();
57
+ const entityPtr = entityId.openObject();
58
+ const entityName = entityPtr.getName();
59
+
60
+ if (entityName === MARKUP_ENTITY_LINE || entityName === MARKUP_ENTITY_TEXT) {
61
+ entityPtr.setColor(r, g, b);
62
+ }
63
+
64
+ entityPtr.delete();
65
+ }
66
+ itr.delete();
67
+
68
+ this._viewer.update();
69
+ }
70
+
71
+ setViewpoint(viewpoint: IViewpoint): void {
72
+ function getLogicalPoint3dAsArray(point3d) {
73
+ return [point3d.x, point3d.y, point3d.z];
74
+ }
75
+
76
+ function getPoint3d(module, gePoint) {
77
+ return module.Point3d.createFromArray(gePoint);
78
+ }
79
+
80
+ if (!this._viewer.visualizeJs) return;
81
+
82
+ const visLib = this._viewer.visLib();
83
+ const visViewer = visLib.getViewer();
84
+ const activeView = visViewer.activeView;
85
+
86
+ this._viewer.syncOverlay();
87
+
88
+ const markupColor = viewpoint.custom_fields.markup_color || { r: 255, g: 0, b: 0 };
89
+ this.setMarkupColor(markupColor.r, markupColor.g, markupColor.b);
90
+
91
+ if (viewpoint.lines) {
92
+ for (const line of viewpoint.lines) {
93
+ const entityId = this._viewer.addMarkupEntity(MARKUP_ENTITY_LINE);
94
+ const entityPtr = entityId.openObject();
95
+
96
+ const entityData = [];
97
+ for (const point of line.points) {
98
+ entityData.push(point.x, point.y, point.z);
99
+ }
100
+ const geomData = entityPtr.appendPolyline(entityData);
101
+
102
+ geomData.delete();
103
+ entityPtr.delete();
104
+ }
105
+ }
106
+
107
+ if (viewpoint.texts) {
108
+ const pos = getPoint3d(visLib, activeView.viewPosition);
109
+ const target = getPoint3d(visLib, activeView.viewTarget);
110
+ const normal = pos.sub(target).asVector();
111
+
112
+ for (const text of viewpoint.texts) {
113
+ const entityId = this._viewer.addMarkupEntity(MARKUP_ENTITY_TEXT);
114
+ const entityPtr = entityId.openObject();
115
+
116
+ const geomData = entityPtr.appendText(getLogicalPoint3dAsArray(text.position), text.text);
117
+
118
+ const textPtr = geomData.openAsText();
119
+ textPtr.setNormal(getLogicalPoint3dAsArray(normal));
120
+ textPtr.setRotation(text.angle);
121
+ textPtr.setTextSize(text.text_size);
122
+
123
+ textPtr.delete();
124
+ geomData.delete();
125
+ entityPtr.delete();
126
+ }
127
+ }
128
+
129
+ this._viewer.update();
130
+ }
131
+
132
+ getViewpoint(): IViewpoint {
133
+ function getLogicalPoint3dFromArray(array) {
134
+ return { x: array[0], y: array[1], z: array[2] };
135
+ }
136
+
137
+ if (!this._viewer.visualizeJs) return {};
138
+
139
+ const visLib = this._viewer.visLib();
140
+ const visViewer = visLib.getViewer();
141
+
142
+ const viewpoint: IViewpoint = {
143
+ lines: [],
144
+ texts: [],
145
+ };
146
+
147
+ const model = visViewer.getMarkupModel();
148
+ const itr = model.getEntitiesIterator();
149
+ for (; !itr.done(); itr.step()) {
150
+ const entityId = itr.getEntity();
151
+ const entityPtr = entityId.openObject();
152
+ const entityName = entityPtr.getName();
153
+
154
+ const geomItr = entityPtr.getGeometryDataIterator();
155
+ if (geomItr.done()) {
156
+ entityPtr.delete();
157
+ continue;
158
+ }
159
+
160
+ const geometryId = geomItr.getGeometryData();
161
+
162
+ if (entityName === MARKUP_ENTITY_LINE) {
163
+ const polylinePtr = geometryId.openAsPolyline();
164
+ const points = polylinePtr.getPoints();
165
+
166
+ const line: ILine = {
167
+ points: [],
168
+ };
169
+ for (const point of points) {
170
+ line.points.push(getLogicalPoint3dFromArray(point));
171
+ }
172
+
173
+ viewpoint.lines.push(line);
174
+ polylinePtr.delete();
175
+ } else if (entityName === MARKUP_ENTITY_TEXT) {
176
+ const textPtr = geometryId.openAsText();
177
+ const position = textPtr.getPosition();
178
+
179
+ const text: IText = {
180
+ position: getLogicalPoint3dFromArray(position),
181
+ text: textPtr.getString(),
182
+ angle: textPtr.getRotation(),
183
+ text_size: textPtr.getTextSize(),
184
+ };
185
+
186
+ viewpoint.texts.push(text);
187
+ textPtr.delete();
188
+ }
189
+
190
+ entityPtr.delete();
191
+ }
192
+ itr.delete();
193
+
194
+ viewpoint.snapshot = {
195
+ data: visLib.canvas.toDataURL("image/jpeg", 0.25),
196
+ };
197
+
198
+ viewpoint.custom_fields = {
199
+ markup_color: this.getMarkupColor(),
200
+ };
201
+
202
+ viewpoint.description = new Date().toDateString();
203
+ return viewpoint;
204
+ }
205
+
206
+ getLayer(): any {
207
+ throw new Error("Not implemented yet");
208
+ }
209
+
210
+ createObject(type: string, params: any): IMarkupObject {
211
+ throw new Error("Not implemented yet");
212
+ }
213
+
214
+ getObjects(): IMarkupObject[] {
215
+ throw new Error("Not implemented yet");
216
+ }
217
+
218
+ getSelectedObjects(): IMarkupObject[] {
219
+ throw new Error("Not implemented yet");
220
+ }
221
+
222
+ selectObjects(objects: IMarkupObject[]): void {
223
+ throw new Error("Not implemented yet");
224
+ }
225
+
226
+ clearSelected(): void {
227
+ throw new Error("Not implemented yet");
228
+ }
229
+ }
@@ -0,0 +1,32 @@
1
+ import { IMarkup, MarkupType } from "./IMarkup";
2
+ import { KonvaMarkup } from "./Impl/Konva/KonvaMarkup";
3
+ import { VisualizeMarkup } from "./Impl/Visualize/VisualizeMarkup";
4
+
5
+ export class MarkupFactory {
6
+ public static createMarkup(markupType: MarkupType): IMarkup {
7
+ let markup;
8
+ switch (markupType) {
9
+ case MarkupType.Konva:
10
+ markup = this.createKonva();
11
+ break;
12
+
13
+ case MarkupType.Visualize:
14
+ markup = this.createVisualize();
15
+ break;
16
+
17
+ default:
18
+ throw new Error("Error during Markup Initialization. Markup Type is unknown.");
19
+ break;
20
+ }
21
+
22
+ return markup;
23
+ }
24
+
25
+ private static createKonva(): IMarkup {
26
+ return new KonvaMarkup();
27
+ }
28
+
29
+ private static createVisualize(): IMarkup {
30
+ return new VisualizeMarkup();
31
+ }
32
+ }