bruce-cesium 5.7.7 → 5.7.9

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 (230) hide show
  1. package/package.json +2 -2
  2. package/dist/bruce-cesium.es5.js +0 -32263
  3. package/dist/bruce-cesium.es5.js.map +0 -1
  4. package/dist/bruce-cesium.umd.js +0 -32187
  5. package/dist/bruce-cesium.umd.js.map +0 -1
  6. package/dist/lib/bruce-cesium.js +0 -76
  7. package/dist/lib/bruce-cesium.js.map +0 -1
  8. package/dist/lib/internal/cesium-utils.js +0 -109
  9. package/dist/lib/internal/cesium-utils.js.map +0 -1
  10. package/dist/lib/internal/js-utils.js +0 -22
  11. package/dist/lib/internal/js-utils.js.map +0 -1
  12. package/dist/lib/internal/limited-log.js +0 -17
  13. package/dist/lib/internal/limited-log.js.map +0 -1
  14. package/dist/lib/rendering/cesium-animated-in-out.js +0 -166
  15. package/dist/lib/rendering/cesium-animated-in-out.js.map +0 -1
  16. package/dist/lib/rendering/cesium-animated-property.js +0 -1111
  17. package/dist/lib/rendering/cesium-animated-property.js.map +0 -1
  18. package/dist/lib/rendering/entity-gatherer.js +0 -327
  19. package/dist/lib/rendering/entity-gatherer.js.map +0 -1
  20. package/dist/lib/rendering/entity-render-engine-model3d.js +0 -689
  21. package/dist/lib/rendering/entity-render-engine-model3d.js.map +0 -1
  22. package/dist/lib/rendering/entity-render-engine-point.js +0 -984
  23. package/dist/lib/rendering/entity-render-engine-point.js.map +0 -1
  24. package/dist/lib/rendering/entity-render-engine-polygon.js +0 -669
  25. package/dist/lib/rendering/entity-render-engine-polygon.js.map +0 -1
  26. package/dist/lib/rendering/entity-render-engine-polyline.js +0 -415
  27. package/dist/lib/rendering/entity-render-engine-polyline.js.map +0 -1
  28. package/dist/lib/rendering/entity-render-engine.js +0 -442
  29. package/dist/lib/rendering/entity-render-engine.js.map +0 -1
  30. package/dist/lib/rendering/getters/batched-data-getter.js +0 -91
  31. package/dist/lib/rendering/getters/batched-data-getter.js.map +0 -1
  32. package/dist/lib/rendering/getters/entity-filter-getter.js +0 -634
  33. package/dist/lib/rendering/getters/entity-filter-getter.js.map +0 -1
  34. package/dist/lib/rendering/getters/entity-globe.js +0 -172
  35. package/dist/lib/rendering/getters/entity-globe.js.map +0 -1
  36. package/dist/lib/rendering/menu-item-creator.js +0 -354
  37. package/dist/lib/rendering/menu-item-creator.js.map +0 -1
  38. package/dist/lib/rendering/menu-item-manager.js +0 -464
  39. package/dist/lib/rendering/menu-item-manager.js.map +0 -1
  40. package/dist/lib/rendering/relation-render-engine.js +0 -235
  41. package/dist/lib/rendering/relation-render-engine.js.map +0 -1
  42. package/dist/lib/rendering/render-managers/common/cesium-parabola.js +0 -368
  43. package/dist/lib/rendering/render-managers/common/cesium-parabola.js.map +0 -1
  44. package/dist/lib/rendering/render-managers/common/entity-label.js +0 -703
  45. package/dist/lib/rendering/render-managers/common/entity-label.js.map +0 -1
  46. package/dist/lib/rendering/render-managers/common/point-clustering.js +0 -826
  47. package/dist/lib/rendering/render-managers/common/point-clustering.js.map +0 -1
  48. package/dist/lib/rendering/render-managers/common/shared-getters.js +0 -187
  49. package/dist/lib/rendering/render-managers/common/shared-getters.js.map +0 -1
  50. package/dist/lib/rendering/render-managers/data-source/data-source-static-csv-manager.js +0 -668
  51. package/dist/lib/rendering/render-managers/data-source/data-source-static-csv-manager.js.map +0 -1
  52. package/dist/lib/rendering/render-managers/data-source/data-source-static-kml-manager.js +0 -92
  53. package/dist/lib/rendering/render-managers/data-source/data-source-static-kml-manager.js.map +0 -1
  54. package/dist/lib/rendering/render-managers/entities/entities-datalab-render-manager.js +0 -143
  55. package/dist/lib/rendering/render-managers/entities/entities-datalab-render-manager.js.map +0 -1
  56. package/dist/lib/rendering/render-managers/entities/entities-ids-render-manager.js +0 -510
  57. package/dist/lib/rendering/render-managers/entities/entities-ids-render-manager.js.map +0 -1
  58. package/dist/lib/rendering/render-managers/entities/entities-loaded-render-manager.js +0 -717
  59. package/dist/lib/rendering/render-managers/entities/entities-loaded-render-manager.js.map +0 -1
  60. package/dist/lib/rendering/render-managers/entities/entities-render-manager.js +0 -999
  61. package/dist/lib/rendering/render-managers/entities/entities-render-manager.js.map +0 -1
  62. package/dist/lib/rendering/render-managers/entities/entity-render-manager.js +0 -186
  63. package/dist/lib/rendering/render-managers/entities/entity-render-manager.js.map +0 -1
  64. package/dist/lib/rendering/render-managers/other/assembly-render-manager.js +0 -226
  65. package/dist/lib/rendering/render-managers/other/assembly-render-manager.js.map +0 -1
  66. package/dist/lib/rendering/render-managers/other/google-search-render-manager.js +0 -430
  67. package/dist/lib/rendering/render-managers/other/google-search-render-manager.js.map +0 -1
  68. package/dist/lib/rendering/render-managers/other/legacy-relations-render-manager.js +0 -290
  69. package/dist/lib/rendering/render-managers/other/legacy-relations-render-manager.js.map +0 -1
  70. package/dist/lib/rendering/render-managers/other/relations-render-manager.js +0 -401
  71. package/dist/lib/rendering/render-managers/other/relations-render-manager.js.map +0 -1
  72. package/dist/lib/rendering/render-managers/render-manager.js +0 -276
  73. package/dist/lib/rendering/render-managers/render-manager.js.map +0 -1
  74. package/dist/lib/rendering/render-managers/tilesets/tileset-arb-render-manager.js +0 -356
  75. package/dist/lib/rendering/render-managers/tilesets/tileset-arb-render-manager.js.map +0 -1
  76. package/dist/lib/rendering/render-managers/tilesets/tileset-cad-render-manager.js +0 -861
  77. package/dist/lib/rendering/render-managers/tilesets/tileset-cad-render-manager.js.map +0 -1
  78. package/dist/lib/rendering/render-managers/tilesets/tileset-entities-render-manager.js +0 -279
  79. package/dist/lib/rendering/render-managers/tilesets/tileset-entities-render-manager.js.map +0 -1
  80. package/dist/lib/rendering/render-managers/tilesets/tileset-google-photos-render-manager.js +0 -104
  81. package/dist/lib/rendering/render-managers/tilesets/tileset-google-photos-render-manager.js.map +0 -1
  82. package/dist/lib/rendering/render-managers/tilesets/tileset-i3s-render-manager.js +0 -81
  83. package/dist/lib/rendering/render-managers/tilesets/tileset-i3s-render-manager.js.map +0 -1
  84. package/dist/lib/rendering/render-managers/tilesets/tileset-osm-render-manager.js +0 -378
  85. package/dist/lib/rendering/render-managers/tilesets/tileset-osm-render-manager.js.map +0 -1
  86. package/dist/lib/rendering/render-managers/tilesets/tileset-pointcloud-render-manager.js +0 -140
  87. package/dist/lib/rendering/render-managers/tilesets/tileset-pointcloud-render-manager.js.map +0 -1
  88. package/dist/lib/rendering/tile-render-engine.js +0 -1328
  89. package/dist/lib/rendering/tile-render-engine.js.map +0 -1
  90. package/dist/lib/rendering/tileset-render-engine.js +0 -588
  91. package/dist/lib/rendering/tileset-render-engine.js.map +0 -1
  92. package/dist/lib/rendering/tileset-styler.js +0 -590
  93. package/dist/lib/rendering/tileset-styler.js.map +0 -1
  94. package/dist/lib/rendering/view-render-engine.js +0 -1004
  95. package/dist/lib/rendering/view-render-engine.js.map +0 -1
  96. package/dist/lib/rendering/visual-register-culler.js +0 -676
  97. package/dist/lib/rendering/visual-register-culler.js.map +0 -1
  98. package/dist/lib/rendering/visuals-register.js +0 -1695
  99. package/dist/lib/rendering/visuals-register.js.map +0 -1
  100. package/dist/lib/utils/cesium-entity-styler.js +0 -915
  101. package/dist/lib/utils/cesium-entity-styler.js.map +0 -1
  102. package/dist/lib/utils/drawing-utils.js +0 -308
  103. package/dist/lib/utils/drawing-utils.js.map +0 -1
  104. package/dist/lib/utils/entity-utils.js +0 -1382
  105. package/dist/lib/utils/entity-utils.js.map +0 -1
  106. package/dist/lib/utils/measure-utils.js +0 -73
  107. package/dist/lib/utils/measure-utils.js.map +0 -1
  108. package/dist/lib/utils/simplify-geometry.js +0 -323
  109. package/dist/lib/utils/simplify-geometry.js.map +0 -1
  110. package/dist/lib/utils/view-utils.js +0 -392
  111. package/dist/lib/utils/view-utils.js.map +0 -1
  112. package/dist/lib/viewer/cesium-view-monitor.js +0 -393
  113. package/dist/lib/viewer/cesium-view-monitor.js.map +0 -1
  114. package/dist/lib/viewer/viewer-event-tracker.js +0 -70
  115. package/dist/lib/viewer/viewer-event-tracker.js.map +0 -1
  116. package/dist/lib/viewer/viewer-utils.js +0 -310
  117. package/dist/lib/viewer/viewer-utils.js.map +0 -1
  118. package/dist/lib/widgets/common/draw-3d-polygon.js +0 -458
  119. package/dist/lib/widgets/common/draw-3d-polygon.js.map +0 -1
  120. package/dist/lib/widgets/common/draw-3d-polyline.js +0 -415
  121. package/dist/lib/widgets/common/draw-3d-polyline.js.map +0 -1
  122. package/dist/lib/widgets/common/measure-creator.js +0 -468
  123. package/dist/lib/widgets/common/measure-creator.js.map +0 -1
  124. package/dist/lib/widgets/common/walkthrough.js +0 -336
  125. package/dist/lib/widgets/common/walkthrough.js.map +0 -1
  126. package/dist/lib/widgets/controls-view-bar/widget-control-view-bar-fullscreen.js +0 -36
  127. package/dist/lib/widgets/controls-view-bar/widget-control-view-bar-fullscreen.js.map +0 -1
  128. package/dist/lib/widgets/controls-view-bar/widget-control-view-bar-search.js +0 -437
  129. package/dist/lib/widgets/controls-view-bar/widget-control-view-bar-search.js.map +0 -1
  130. package/dist/lib/widgets/controls-view-bar/widget-control-view-bar.js +0 -38
  131. package/dist/lib/widgets/controls-view-bar/widget-control-view-bar.js.map +0 -1
  132. package/dist/lib/widgets/tabs-left-panel/widget-left-panel-tab-bookmarks.js +0 -219
  133. package/dist/lib/widgets/tabs-left-panel/widget-left-panel-tab-bookmarks.js.map +0 -1
  134. package/dist/lib/widgets/tabs-left-panel/widget-left-panel-tab-user.js +0 -304
  135. package/dist/lib/widgets/tabs-left-panel/widget-left-panel-tab-user.js.map +0 -1
  136. package/dist/lib/widgets/tabs-left-panel/widget-left-panel-tab.js +0 -29
  137. package/dist/lib/widgets/tabs-left-panel/widget-left-panel-tab.js.map +0 -1
  138. package/dist/lib/widgets/widget-bookmarks.js +0 -497
  139. package/dist/lib/widgets/widget-bookmarks.js.map +0 -1
  140. package/dist/lib/widgets/widget-branding.js +0 -165
  141. package/dist/lib/widgets/widget-branding.js.map +0 -1
  142. package/dist/lib/widgets/widget-cursorbar.js +0 -1179
  143. package/dist/lib/widgets/widget-cursorbar.js.map +0 -1
  144. package/dist/lib/widgets/widget-embedded-info-view.js +0 -201
  145. package/dist/lib/widgets/widget-embedded-info-view.js.map +0 -1
  146. package/dist/lib/widgets/widget-info-view.js +0 -681
  147. package/dist/lib/widgets/widget-info-view.js.map +0 -1
  148. package/dist/lib/widgets/widget-left-panel.js +0 -548
  149. package/dist/lib/widgets/widget-left-panel.js.map +0 -1
  150. package/dist/lib/widgets/widget-nav-compass.js +0 -469
  151. package/dist/lib/widgets/widget-nav-compass.js.map +0 -1
  152. package/dist/lib/widgets/widget-view-bar.js +0 -284
  153. package/dist/lib/widgets/widget-view-bar.js.map +0 -1
  154. package/dist/lib/widgets/widget.js +0 -66
  155. package/dist/lib/widgets/widget.js.map +0 -1
  156. package/dist/types/bruce-cesium.d.ts +0 -58
  157. package/dist/types/internal/cesium-utils.d.ts +0 -23
  158. package/dist/types/internal/js-utils.d.ts +0 -8
  159. package/dist/types/internal/limited-log.d.ts +0 -6
  160. package/dist/types/rendering/cesium-animated-in-out.d.ts +0 -12
  161. package/dist/types/rendering/cesium-animated-property.d.ts +0 -245
  162. package/dist/types/rendering/entity-gatherer.d.ts +0 -36
  163. package/dist/types/rendering/entity-render-engine-model3d.d.ts +0 -56
  164. package/dist/types/rendering/entity-render-engine-point.d.ts +0 -73
  165. package/dist/types/rendering/entity-render-engine-polygon.d.ts +0 -26
  166. package/dist/types/rendering/entity-render-engine-polyline.d.ts +0 -47
  167. package/dist/types/rendering/entity-render-engine.d.ts +0 -108
  168. package/dist/types/rendering/getters/batched-data-getter.d.ts +0 -28
  169. package/dist/types/rendering/getters/entity-filter-getter.d.ts +0 -104
  170. package/dist/types/rendering/getters/entity-globe.d.ts +0 -21
  171. package/dist/types/rendering/menu-item-creator.d.ts +0 -53
  172. package/dist/types/rendering/menu-item-manager.d.ts +0 -85
  173. package/dist/types/rendering/relation-render-engine.d.ts +0 -32
  174. package/dist/types/rendering/render-managers/common/cesium-parabola.d.ts +0 -39
  175. package/dist/types/rendering/render-managers/common/entity-label.d.ts +0 -82
  176. package/dist/types/rendering/render-managers/common/point-clustering.d.ts +0 -91
  177. package/dist/types/rendering/render-managers/common/shared-getters.d.ts +0 -41
  178. package/dist/types/rendering/render-managers/data-source/data-source-static-csv-manager.d.ts +0 -41
  179. package/dist/types/rendering/render-managers/data-source/data-source-static-kml-manager.d.ts +0 -25
  180. package/dist/types/rendering/render-managers/entities/entities-datalab-render-manager.d.ts +0 -31
  181. package/dist/types/rendering/render-managers/entities/entities-ids-render-manager.d.ts +0 -76
  182. package/dist/types/rendering/render-managers/entities/entities-loaded-render-manager.d.ts +0 -90
  183. package/dist/types/rendering/render-managers/entities/entities-render-manager.d.ts +0 -90
  184. package/dist/types/rendering/render-managers/entities/entity-render-manager.d.ts +0 -42
  185. package/dist/types/rendering/render-managers/other/assembly-render-manager.d.ts +0 -38
  186. package/dist/types/rendering/render-managers/other/google-search-render-manager.d.ts +0 -45
  187. package/dist/types/rendering/render-managers/other/legacy-relations-render-manager.d.ts +0 -60
  188. package/dist/types/rendering/render-managers/other/relations-render-manager.d.ts +0 -53
  189. package/dist/types/rendering/render-managers/render-manager.d.ts +0 -30
  190. package/dist/types/rendering/render-managers/tilesets/tileset-arb-render-manager.d.ts +0 -37
  191. package/dist/types/rendering/render-managers/tilesets/tileset-cad-render-manager.d.ts +0 -86
  192. package/dist/types/rendering/render-managers/tilesets/tileset-entities-render-manager.d.ts +0 -41
  193. package/dist/types/rendering/render-managers/tilesets/tileset-google-photos-render-manager.d.ts +0 -26
  194. package/dist/types/rendering/render-managers/tilesets/tileset-i3s-render-manager.d.ts +0 -25
  195. package/dist/types/rendering/render-managers/tilesets/tileset-osm-render-manager.d.ts +0 -48
  196. package/dist/types/rendering/render-managers/tilesets/tileset-pointcloud-render-manager.d.ts +0 -27
  197. package/dist/types/rendering/tile-render-engine.d.ts +0 -80
  198. package/dist/types/rendering/tileset-render-engine.d.ts +0 -99
  199. package/dist/types/rendering/tileset-styler.d.ts +0 -86
  200. package/dist/types/rendering/view-render-engine.d.ts +0 -32
  201. package/dist/types/rendering/visual-register-culler.d.ts +0 -18
  202. package/dist/types/rendering/visuals-register.d.ts +0 -351
  203. package/dist/types/utils/cesium-entity-styler.d.ts +0 -103
  204. package/dist/types/utils/drawing-utils.d.ts +0 -59
  205. package/dist/types/utils/entity-utils.d.ts +0 -133
  206. package/dist/types/utils/measure-utils.d.ts +0 -20
  207. package/dist/types/utils/simplify-geometry.d.ts +0 -19
  208. package/dist/types/utils/view-utils.d.ts +0 -101
  209. package/dist/types/viewer/cesium-view-monitor.d.ts +0 -35
  210. package/dist/types/viewer/viewer-event-tracker.d.ts +0 -47
  211. package/dist/types/viewer/viewer-utils.d.ts +0 -88
  212. package/dist/types/widgets/common/draw-3d-polygon.d.ts +0 -62
  213. package/dist/types/widgets/common/draw-3d-polyline.d.ts +0 -50
  214. package/dist/types/widgets/common/measure-creator.d.ts +0 -60
  215. package/dist/types/widgets/common/walkthrough.d.ts +0 -37
  216. package/dist/types/widgets/controls-view-bar/widget-control-view-bar-fullscreen.d.ts +0 -10
  217. package/dist/types/widgets/controls-view-bar/widget-control-view-bar-search.d.ts +0 -18
  218. package/dist/types/widgets/controls-view-bar/widget-control-view-bar.d.ts +0 -23
  219. package/dist/types/widgets/tabs-left-panel/widget-left-panel-tab-bookmarks.d.ts +0 -11
  220. package/dist/types/widgets/tabs-left-panel/widget-left-panel-tab-user.d.ts +0 -24
  221. package/dist/types/widgets/tabs-left-panel/widget-left-panel-tab.d.ts +0 -17
  222. package/dist/types/widgets/widget-bookmarks.d.ts +0 -40
  223. package/dist/types/widgets/widget-branding.d.ts +0 -15
  224. package/dist/types/widgets/widget-cursorbar.d.ts +0 -48
  225. package/dist/types/widgets/widget-embedded-info-view.d.ts +0 -13
  226. package/dist/types/widgets/widget-info-view.d.ts +0 -21
  227. package/dist/types/widgets/widget-left-panel.d.ts +0 -73
  228. package/dist/types/widgets/widget-nav-compass.d.ts +0 -27
  229. package/dist/types/widgets/widget-view-bar.d.ts +0 -37
  230. package/dist/types/widgets/widget.d.ts +0 -29
@@ -1,378 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.TilesetOsmRenderManager = void 0;
4
- const bruce_models_1 = require("bruce-models");
5
- const Cesium = require("cesium");
6
- const viewer_utils_1 = require("../../../viewer/viewer-utils");
7
- const js_utils_1 = require("../../../internal/js-utils");
8
- const MAX_BATCHES = 2;
9
- const BATCH_SIZE_OLD_API = 30;
10
- const BATCH_SIZE_NEW_API = 1000;
11
- const BATCH_DELAY = 200;
12
- const MAX_RANGE = 3000;
13
- var TilesetOsmRenderManager;
14
- (function (TilesetOsmRenderManager) {
15
- class Manager {
16
- get Disposed() {
17
- return this.disposed;
18
- }
19
- get Tileset() {
20
- return this.cTileset;
21
- }
22
- get count() {
23
- return ++this.counter;
24
- }
25
- constructor(params) {
26
- this.disposed = false;
27
- this.cTileset = null;
28
- this.counter = 0;
29
- this._loadedCesiumEntities = {};
30
- this.totalLoaded = 0;
31
- this.featureQueue = [];
32
- this.sourceId = null;
33
- this.entityTypeId = null;
34
- this.queueCheckInterval = null;
35
- this.processingQueue = 0;
36
- this._osmIdToBruceId = {};
37
- this.batchSize = BATCH_SIZE_OLD_API;
38
- const { viewer, register: visualsManager, getters: apiGetter, monitor, item } = params;
39
- this.viewer = viewer;
40
- this.getters = apiGetter;
41
- this.item = item;
42
- this.visualsManager = visualsManager;
43
- this.monitor = monitor;
44
- }
45
- Dispose() {
46
- if (this.disposed) {
47
- return;
48
- }
49
- this.disposed = true;
50
- clearInterval(this.queueCheckInterval);
51
- if (this.cTileset) {
52
- const viewer = this.viewer;
53
- if (!(viewer === null || viewer === void 0 ? void 0 : viewer.isDestroyed()) && this.viewer.scene.primitives.contains(this.cTileset)) {
54
- this.cTileset.show = false;
55
- this.viewer.scene.primitives.remove(this.cTileset);
56
- this.viewer.scene.requestRender();
57
- }
58
- else if (this.cTileset && !this.cTileset.isDestroyed()) {
59
- this.cTileset.destroy();
60
- }
61
- this.cTileset = null;
62
- }
63
- this.visualsManager.RemoveRegos({
64
- menuItemId: this.item.id
65
- });
66
- this.featureQueue = [];
67
- }
68
- Init() {
69
- var _a, _b;
70
- const menuItem = this.item;
71
- this.sourceId = (0, js_utils_1.EnsureNumber)((_a = menuItem.BruceEntity) === null || _a === void 0 ? void 0 : _a.SourceId, 0);
72
- this.entityTypeId = (_b = menuItem.BruceEntity) === null || _b === void 0 ? void 0 : _b["EntityType.ID"];
73
- (async () => {
74
- const validToken = await viewer_utils_1.ViewerUtils.AssertIonToken(Cesium.Ion.defaultAccessToken);
75
- if (!validToken) {
76
- console.warn("'tileset-osm-render-manager.ts' could not locate a valid Cesium Ion token.");
77
- return;
78
- }
79
- const CESIUM = Cesium;
80
- let cTileset;
81
- // Newer versions of Cesium have this function be async.
82
- if (CESIUM["createOsmBuildingsAsync"]) {
83
- cTileset = await CESIUM.createOsmBuildingsAsync({});
84
- }
85
- // Older versions of Cesium have this function be sync.
86
- else if (CESIUM["createOsmBuildings"]) {
87
- cTileset = CESIUM.createOsmBuildings();
88
- }
89
- else {
90
- console.warn("'tileset-osm-render-manager.ts' could not locate a create function for OSM buildings.");
91
- return;
92
- }
93
- // New API versions are way better at processing this request.
94
- const api = this.getters.GetBruceApi();
95
- await api.Loading;
96
- if (api.IsVersionAtLeast("1.0.5244")) {
97
- this.batchSize = BATCH_SIZE_NEW_API;
98
- }
99
- if (this.disposed) {
100
- if (this.cTileset && !this.cTileset.isDestroyed()) {
101
- this.cTileset.destroy();
102
- this.cTileset = null;
103
- }
104
- return;
105
- }
106
- this.cTileset = cTileset;
107
- if (this.sourceId) {
108
- if (menuItem.ghostLoading == true) {
109
- this.cTileset.style = new Cesium.Cesium3DTileStyle({
110
- color: "rgba(255, 255, 250, 0.98)"
111
- });
112
- }
113
- this.viewer.scene.primitives.add(this.cTileset);
114
- this.cTileset.tileLoad.addEventListener((tile) => {
115
- if (this.disposed) {
116
- return;
117
- }
118
- try {
119
- this.mapCTile(tile);
120
- }
121
- catch (e) {
122
- console.error(e);
123
- }
124
- });
125
- this.queueCheckInterval = setInterval(() => {
126
- if (this.featureQueue.length > 0) {
127
- this.processQueue();
128
- }
129
- }, 5000);
130
- }
131
- else {
132
- this.viewer.scene.primitives.add(this.cTileset);
133
- }
134
- this.cTileset.show = true;
135
- this.viewer.scene.requestRender();
136
- })();
137
- }
138
- async mapCTile(tile) {
139
- if (this.sourceId) {
140
- let content = tile === null || tile === void 0 ? void 0 : tile.content;
141
- if (!content) {
142
- return;
143
- }
144
- for (let i = 0; i < content.featuresLength; i++) {
145
- let feature = content.getFeature(i);
146
- if (feature._counter == null) {
147
- feature._counter = this.count;
148
- }
149
- if (feature._orgColor == null) {
150
- feature._orgColor = feature.color;
151
- }
152
- this.featureQueue.push(feature);
153
- }
154
- this.processQueue();
155
- }
156
- }
157
- async processQueue() {
158
- if (this.processingQueue >= MAX_BATCHES) {
159
- return;
160
- }
161
- else if (this.Disposed) {
162
- return;
163
- }
164
- this.processingQueue += 1;
165
- let batch = [];
166
- let rerun = false;
167
- try {
168
- batch = this.getVisualsForBatch();
169
- if (batch.length > 0) {
170
- await this.mapTileBatch(batch);
171
- this.viewer.scene.requestRender();
172
- }
173
- if (this.totalLoaded > 8000) {
174
- rerun = this.removeFarAwayBatch();
175
- }
176
- else {
177
- rerun = this.featureQueue.length > 0 && batch.length > 0;
178
- }
179
- }
180
- catch (e) {
181
- console.error(e);
182
- }
183
- finally {
184
- setTimeout(() => {
185
- this.processingQueue -= 1;
186
- if (rerun) {
187
- this.processQueue();
188
- }
189
- }, BATCH_DELAY);
190
- }
191
- }
192
- getVisualsForBatch() {
193
- const batch = [];
194
- const features = this.featureQueue;
195
- const bounds = this.monitor.GetBounds();
196
- const rect = (bounds === null || bounds === void 0 ? void 0 : bounds.east) ? new Cesium.Rectangle(Cesium.Math.toRadians(bounds.west), Cesium.Math.toRadians(bounds.south), Cesium.Math.toRadians(bounds.east), Cesium.Math.toRadians(bounds.north)) : null;
197
- if (rect) {
198
- for (let i = 0; i < features.length; i++) {
199
- const feature = features[i];
200
- if (feature) {
201
- const featureLon = feature.getProperty("cesium#longitude");
202
- const featureLat = feature.getProperty("cesium#latitude");
203
- if (featureLon && featureLat) {
204
- const carto = Cesium.Cartographic.fromDegrees(featureLon, featureLat, 0);
205
- const isIn = Cesium.Rectangle.contains(rect, carto);
206
- if (isIn) {
207
- const isClose = this.getIsVisualWithinRange(feature, MAX_RANGE);
208
- if (isClose) {
209
- batch.push(feature);
210
- if (batch.length >= this.batchSize) {
211
- return batch;
212
- }
213
- }
214
- }
215
- }
216
- }
217
- }
218
- }
219
- return batch;
220
- }
221
- getIsVisualWithinRange(visual, range) {
222
- const featureLon = visual.getProperty("cesium#longitude");
223
- const featureLat = visual.getProperty("cesium#latitude");
224
- if (featureLon && featureLat) {
225
- const pos = Cesium.Cartesian3.fromDegrees(featureLon, featureLat, 0);
226
- const camPoint = this.monitor.GetTarget();
227
- const camPos = (camPoint === null || camPoint === void 0 ? void 0 : camPoint.latitude) ? Cesium.Cartesian3.fromDegrees(camPoint.longitude, camPoint.latitude, camPoint.altitude) : null;
228
- if (camPos && bruce_models_1.Cartes.ValidateCartes3(camPos) && bruce_models_1.Cartes.ValidateCartes3(pos)) {
229
- let distance = Cesium.Cartesian3.distance(pos, camPos);
230
- if (distance != null && distance <= range) {
231
- return true;
232
- }
233
- }
234
- }
235
- return false;
236
- }
237
- async mapTileBatch(features) {
238
- const featureIds = [];
239
- const featureMap = [];
240
- for (let i = 0; i < features.length; i++) {
241
- const feature = features[i];
242
- const featureId = feature.getProperty("elementId");
243
- if (featureId) {
244
- featureMap.push(feature);
245
- featureIds.push(featureId + "");
246
- }
247
- const index = this.featureQueue.findIndex(x => x._counter == feature._counter);
248
- if (index > -1) {
249
- this.featureQueue.splice(index, 1);
250
- }
251
- }
252
- // Gather any OSM IDs we haven't checked for yet.
253
- const toSearchFeatureIds = [];
254
- for (let i = 0; i < featureIds.length; i++) {
255
- if (!this._osmIdToBruceId[featureIds[i]]) {
256
- toSearchFeatureIds.push(featureIds[i]);
257
- }
258
- }
259
- // Search for Nextspace IDs that correlate with the OSM IDs.
260
- if (toSearchFeatureIds.length) {
261
- const api = this.getters.GetBruceApi();
262
- const { idMapping: bIds } = await bruce_models_1.EntitySource.GetEntityIdsBySourceKeys({
263
- api,
264
- sourceId: this.sourceId,
265
- sourceKeys: featureIds
266
- });
267
- for (let i = 0; i < featureIds.length; i++) {
268
- const osmId = featureIds[i];
269
- // No Nextspace ID found, we'll generate a placeholder so we can identify it in the scene.
270
- let bId = bIds[osmId];
271
- if (!bId) {
272
- bId = bruce_models_1.ObjectUtils.UId();
273
- }
274
- // Record so the same OSM ID will correlate to the same Nextspace ID.
275
- // This is important because we can have multiple pieces of the same building with the same OSM ID.
276
- // We need to ensure we don't generate a placeholder that is difference for each piece.
277
- this._osmIdToBruceId[osmId] = bId;
278
- }
279
- }
280
- for (let i = 0; i < featureIds.length; i++) {
281
- const osmId = featureIds[i];
282
- let bruceId = this._osmIdToBruceId[osmId];
283
- // Should not happen.
284
- // We cover unknowns earlier, this is just in case.
285
- if (!bruceId) {
286
- bruceId = bruce_models_1.ObjectUtils.UId();
287
- }
288
- const feature = featureMap[i];
289
- if (this.item.ghostLoading == true) {
290
- feature.color = feature._orgColor;
291
- }
292
- let rego = this._loadedCesiumEntities[bruceId];
293
- // Rego already exists, we'll add this graphic as a sibling.
294
- if (rego) {
295
- if (!rego.visual) {
296
- // No parent graphic.
297
- rego.visual = feature;
298
- }
299
- else if (rego.visual == feature) {
300
- // Same graphic.
301
- continue;
302
- }
303
- else {
304
- const visual = rego.visual;
305
- // Sibling graphic.
306
- if (!visual._siblingGraphics) {
307
- visual._siblingGraphics = [];
308
- }
309
- if (visual._siblingGraphics.indexOf(feature) < 0) {
310
- visual._siblingGraphics.push(feature);
311
- }
312
- // Already exists.
313
- else {
314
- continue;
315
- }
316
- }
317
- }
318
- // Doesn't exist. Create a rego.
319
- else {
320
- rego = {
321
- canEdit: false,
322
- entityId: bruceId,
323
- menuItemId: this.item.id,
324
- menuItemType: this.item.Type,
325
- priority: 0,
326
- visual: feature,
327
- entityTypeId: this.entityTypeId,
328
- sourceEntityId: osmId,
329
- accountId: this.getters.GetAccountId()
330
- };
331
- if (this.sourceId) {
332
- rego.sourceId = this.sourceId;
333
- }
334
- }
335
- this.visualsManager.AddRego({
336
- rego,
337
- requestRender: false,
338
- removePrior: false
339
- });
340
- this._loadedCesiumEntities[bruceId] = rego;
341
- }
342
- this.viewer.scene.requestRender();
343
- }
344
- removeFarAwayBatch() {
345
- let removed = 0;
346
- let keys = Object.keys(this._loadedCesiumEntities);
347
- for (let i = 0; i < keys.length; i++) {
348
- let key = keys[i];
349
- let rego = this._loadedCesiumEntities[key];
350
- if (rego) {
351
- if (!this.getIsVisualWithinRange(rego.visual, MAX_RANGE)) {
352
- this.visualsManager.RemoveRegos({
353
- entityId: rego.entityId,
354
- menuItemId: this.item.id
355
- });
356
- this._loadedCesiumEntities[key] = null;
357
- delete this._loadedCesiumEntities[key];
358
- this.totalLoaded -= 1;
359
- removed += 1;
360
- if (removed >= this.batchSize) {
361
- return true;
362
- }
363
- }
364
- }
365
- }
366
- return removed > 0;
367
- }
368
- async ReRender(params) {
369
- const { entityIds, force } = params;
370
- if (entityIds == null) {
371
- }
372
- else {
373
- }
374
- }
375
- }
376
- TilesetOsmRenderManager.Manager = Manager;
377
- })(TilesetOsmRenderManager = exports.TilesetOsmRenderManager || (exports.TilesetOsmRenderManager = {}));
378
- //# sourceMappingURL=tileset-osm-render-manager.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"tileset-osm-render-manager.js","sourceRoot":"","sources":["../../../../../src/rendering/render-managers/tilesets/tileset-osm-render-manager.ts"],"names":[],"mappings":"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"}
@@ -1,140 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.TilesetPointcloudRenderManager = void 0;
4
- const bruce_models_1 = require("bruce-models");
5
- const Cesium = require("cesium");
6
- const tileset_render_engine_1 = require("../../tileset-render-engine");
7
- const shared_getters_1 = require("../../render-managers/common/shared-getters");
8
- var TilesetPointcloudRenderManager;
9
- (function (TilesetPointcloudRenderManager) {
10
- class Manager {
11
- get Disposed() {
12
- return this.disposed;
13
- }
14
- get Tileset() {
15
- return this.cTileset;
16
- }
17
- constructor(params) {
18
- this.disposed = false;
19
- this.cTileset = null;
20
- const { viewer, getters: apiGetter, item } = params;
21
- this.viewer = viewer;
22
- this.getters = apiGetter;
23
- this.item = item;
24
- }
25
- Init() {
26
- var _a;
27
- const tilesetId = (_a = this.item.tileset) === null || _a === void 0 ? void 0 : _a.TilesetID;
28
- if (!tilesetId) {
29
- return;
30
- }
31
- (async () => {
32
- var _a, _b, _c;
33
- if (tilesetId) {
34
- let canAccess = false;
35
- try {
36
- await shared_getters_1.SharedGetters.Queue.Run("Loading Tileset access.", async () => {
37
- var _a;
38
- if (this.disposed) {
39
- return;
40
- }
41
- canAccess = await bruce_models_1.Tileset.Publish.IsAccessAllowed({
42
- sourceAccountId: (_a = this.item.tileset) === null || _a === void 0 ? void 0 : _a.ClientAccountID,
43
- tilesetId: tilesetId,
44
- forAccountId: this.getters.GetAccountId(),
45
- getters: this.getters
46
- });
47
- });
48
- }
49
- catch (e) {
50
- console.error(e);
51
- }
52
- if (!canAccess) {
53
- console.warn(`Cannot access tileset: ${tilesetId}, from account: ${(_a = this.item.tileset) === null || _a === void 0 ? void 0 : _a.ClientAccountID}.`);
54
- return;
55
- }
56
- }
57
- else {
58
- console.warn("No tileset id found. Skipping access check.");
59
- }
60
- const accountId = (_c = (_b = this.item.tileset) === null || _b === void 0 ? void 0 : _b.ClientAccountID) !== null && _c !== void 0 ? _c : this.getters.GetAccountId();
61
- const api = this.getters.GetBruceApi({
62
- accountId: accountId
63
- });
64
- let tileset = null;
65
- await shared_getters_1.SharedGetters.Queue.Run("Loading Tileset record.", async () => {
66
- if (this.disposed) {
67
- return;
68
- }
69
- tileset = (await bruce_models_1.Tileset.Get({
70
- api,
71
- tilesetId
72
- })).tileset;
73
- });
74
- if (!tileset || this.disposed) {
75
- return;
76
- }
77
- this.cTileset = await tileset_render_engine_1.TilesetRenderEngine.Render({
78
- apiGetter: this.getters.GetBruceGetter(),
79
- tileset: tileset,
80
- viewer: this.viewer,
81
- coords: null,
82
- accountId: accountId,
83
- viaCdn: Boolean(this.item.cdnEnabled == null ? true : this.item.cdnEnabled),
84
- noMemoryLimit: this.item["noMaximumMemory"]
85
- });
86
- if (this.disposed) {
87
- this.doDispose();
88
- return;
89
- }
90
- this.viewer.scene.requestRender();
91
- tileset_render_engine_1.TilesetRenderEngine.OnTilesetReady(this.cTileset).then(() => {
92
- try {
93
- if (this.disposed || this.viewer.isDestroyed()) {
94
- return;
95
- }
96
- this.onCTilesetLoad();
97
- this.viewer.scene.requestRender();
98
- }
99
- catch (e) {
100
- console.error(e);
101
- }
102
- });
103
- })();
104
- }
105
- onCTilesetLoad() {
106
- if (this.item.FlyTo) {
107
- this.viewer.zoomTo(this.cTileset, new Cesium.HeadingPitchRange(0.0, -0.5, this.cTileset.boundingSphere.radius / 4.0));
108
- }
109
- }
110
- Dispose() {
111
- if (this.disposed) {
112
- return;
113
- }
114
- this.disposed = true;
115
- this.doDispose();
116
- }
117
- doDispose() {
118
- var _a;
119
- if (this.cTileset) {
120
- const viewer = this.viewer;
121
- if (!(viewer === null || viewer === void 0 ? void 0 : viewer.isDestroyed()) && this.viewer.scene.primitives.contains(this.cTileset)) {
122
- this.cTileset.show = false;
123
- this.viewer.scene.primitives.remove(this.cTileset);
124
- (_a = tileset_render_engine_1.TilesetRenderEngine.GetMemoryWatcher(viewer)) === null || _a === void 0 ? void 0 : _a.Unwatch(this.cTileset);
125
- this.viewer.scene.requestRender();
126
- }
127
- this.cTileset = null;
128
- }
129
- }
130
- async ReRender(params) {
131
- const { entityIds, force } = params;
132
- if (entityIds == null) {
133
- }
134
- else {
135
- }
136
- }
137
- }
138
- TilesetPointcloudRenderManager.Manager = Manager;
139
- })(TilesetPointcloudRenderManager = exports.TilesetPointcloudRenderManager || (exports.TilesetPointcloudRenderManager = {}));
140
- //# sourceMappingURL=tileset-pointcloud-render-manager.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"tileset-pointcloud-render-manager.js","sourceRoot":"","sources":["../../../../../src/rendering/render-managers/tilesets/tileset-pointcloud-render-manager.ts"],"names":[],"mappings":"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"}