bruce-cesium 1.0.3 → 1.0.5
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/dist/bruce-cesium.es5.js +705 -12
- package/dist/bruce-cesium.es5.js.map +1 -1
- package/dist/bruce-cesium.umd.js +703 -9
- package/dist/bruce-cesium.umd.js.map +1 -1
- package/dist/lib/bruce-cesium.js +1 -0
- package/dist/lib/bruce-cesium.js.map +1 -1
- package/dist/lib/rendering/menu-item-manager.js +9 -0
- package/dist/lib/rendering/menu-item-manager.js.map +1 -1
- package/dist/lib/rendering/relation-render-engine.js +199 -0
- package/dist/lib/rendering/relation-render-engine.js.map +1 -0
- package/dist/lib/rendering/render-managers/common/cesium-parabola.js +292 -0
- package/dist/lib/rendering/render-managers/common/cesium-parabola.js.map +1 -0
- package/dist/lib/rendering/render-managers/other/relations-render-manager.js +203 -0
- package/dist/lib/rendering/render-managers/other/relations-render-manager.js.map +1 -0
- package/dist/lib/rendering/visuals-register.js +25 -2
- package/dist/lib/rendering/visuals-register.js.map +1 -1
- package/dist/lib/utils/drawing-utils.js +84 -0
- package/dist/lib/utils/drawing-utils.js.map +1 -1
- package/dist/lib/utils/entity-utils.js +23 -5
- package/dist/lib/utils/entity-utils.js.map +1 -1
- package/dist/types/bruce-cesium.d.ts +1 -0
- package/dist/types/rendering/relation-render-engine.d.ts +30 -0
- package/dist/types/rendering/render-managers/common/cesium-parabola.d.ts +30 -0
- package/dist/types/rendering/render-managers/other/relations-render-manager.d.ts +24 -0
- package/dist/types/rendering/visuals-register.d.ts +4 -2
- package/dist/types/utils/drawing-utils.d.ts +15 -0
- package/dist/types/utils/entity-utils.d.ts +2 -2
- package/package.json +2 -2
package/dist/bruce-cesium.es5.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { BruceEvent, Cartes, Carto, Geometry, ZoomControl, Style, EntityTag, Calculator, EntityLod, EntityType, ClientFile, DelayQueue, Entity as Entity$1, BatchedDataGetter, ObjectUtils, Tileset, EntityCoords, EntityFilterGetter, EntitySource, MenuItem, ProjectView, ProjectViewBookmark, ProjectViewTile, ProjectViewLegacyTile, ProgramKey, Camera } from 'bruce-models';
|
|
2
|
-
import { Cartesian2, Cartographic, Math as Math$1,
|
|
1
|
+
import { BruceEvent, Cartes, Carto, Geometry, ZoomControl, Style, EntityTag, Calculator, EntityLod, EntityType, ClientFile, DelayQueue, Entity as Entity$1, BatchedDataGetter, EntityRelationType, ObjectUtils, Tileset, EntityCoords, EntityFilterGetter, EntitySource, EntityRelation, MenuItem, ProjectView, ProjectViewBookmark, ProjectViewTile, ProjectViewLegacyTile, ProgramKey, Camera } from 'bruce-models';
|
|
2
|
+
import { Cartesian2, Cartographic, Math as Math$1, Color, HeightReference, Cartesian3, Entity, HorizontalOrigin, VerticalOrigin, ClassificationType, ArcType, PolygonHierarchy, ShadowMode, PolylineGraphics, HeadingPitchRoll, Transforms, ColorBlendMode, Primitive, Cesium3DTileFeature, Cesium3DTileColorBlendMode, HeadingPitchRange, OrthographicFrustum, JulianDate, createWorldTerrain, EllipsoidTerrainProvider, CesiumTerrainProvider, BingMapsImageryProvider, BingMapsStyle, MapboxImageryProvider, MapboxStyleImageryProvider, ArcGisMapServerImageryProvider, OpenStreetMapImageryProvider, GridImageryProvider, GeographicTilingScheme, ImageryLayer, UrlTemplateImageryProvider, TileMapServiceImageryProvider, IonImageryProvider, Matrix4, Cesium3DTileStyle, Cesium3DTileset, IonResource, PolygonPipeline, EllipsoidGeodesic, sampleTerrainMostDetailed, ColorMaterialProperty, Rectangle, Matrix3, EasingFunction, GeometryInstance, CallbackProperty, createOsmBuildings, KmlDataSource } from 'cesium';
|
|
3
3
|
|
|
4
4
|
var TIME_LAG = 300;
|
|
5
5
|
var POSITION_CHECK_TIMER = 950;
|
|
@@ -401,6 +401,54 @@ var DrawingUtils;
|
|
|
401
401
|
};
|
|
402
402
|
}
|
|
403
403
|
DrawingUtils.PointAcrossPolyline = PointAcrossPolyline;
|
|
404
|
+
/**
|
|
405
|
+
* Returns terrain height from current viewer's provider.
|
|
406
|
+
* On error or flat terrain, it will return 0.
|
|
407
|
+
* If an error occurred it will be attached to the result.
|
|
408
|
+
* @param pos3d
|
|
409
|
+
* @param viewer
|
|
410
|
+
* @returns
|
|
411
|
+
*/
|
|
412
|
+
function GetTerrainHeight(params) {
|
|
413
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
414
|
+
var pos3d, viewer, sample, height, e_1;
|
|
415
|
+
return __generator(this, function (_a) {
|
|
416
|
+
switch (_a.label) {
|
|
417
|
+
case 0:
|
|
418
|
+
pos3d = params.pos3d, viewer = params.viewer;
|
|
419
|
+
_a.label = 1;
|
|
420
|
+
case 1:
|
|
421
|
+
_a.trys.push([1, 3, , 4]);
|
|
422
|
+
if (viewer.scene.terrainProvider instanceof EllipsoidTerrainProvider) {
|
|
423
|
+
return [2 /*return*/, {
|
|
424
|
+
height: 0
|
|
425
|
+
}];
|
|
426
|
+
}
|
|
427
|
+
return [4 /*yield*/, sampleTerrainMostDetailed(viewer.scene.terrainProvider, [Cartographic.fromCartesian(pos3d)])];
|
|
428
|
+
case 2:
|
|
429
|
+
sample = _a.sent();
|
|
430
|
+
height = (sample === null || sample === void 0 ? void 0 : sample.length) ? sample[0].height : null;
|
|
431
|
+
if (isNaN(height)) {
|
|
432
|
+
return [2 /*return*/, {
|
|
433
|
+
height: 0,
|
|
434
|
+
error: "NaN"
|
|
435
|
+
}];
|
|
436
|
+
}
|
|
437
|
+
return [2 /*return*/, {
|
|
438
|
+
height: height
|
|
439
|
+
}];
|
|
440
|
+
case 3:
|
|
441
|
+
e_1 = _a.sent();
|
|
442
|
+
return [2 /*return*/, {
|
|
443
|
+
height: 0,
|
|
444
|
+
error: e_1
|
|
445
|
+
}];
|
|
446
|
+
case 4: return [2 /*return*/];
|
|
447
|
+
}
|
|
448
|
+
});
|
|
449
|
+
});
|
|
450
|
+
}
|
|
451
|
+
DrawingUtils.GetTerrainHeight = GetTerrainHeight;
|
|
404
452
|
})(DrawingUtils || (DrawingUtils = {}));
|
|
405
453
|
|
|
406
454
|
var MeasureUtils;
|
|
@@ -613,13 +661,27 @@ var EntityUtils;
|
|
|
613
661
|
/**
|
|
614
662
|
* Returns an entity's position.
|
|
615
663
|
* This will attempt to calculate it from multiple sources of data.
|
|
616
|
-
* @param
|
|
617
|
-
* @param entity
|
|
664
|
+
* @param params
|
|
618
665
|
* @returns
|
|
619
666
|
*/
|
|
620
667
|
function GetPos(params) {
|
|
621
|
-
var viewer = params.viewer, entity = params.entity;
|
|
622
|
-
function
|
|
668
|
+
var viewer = params.viewer, entity = params.entity, visualRegister = params.visualRegister;
|
|
669
|
+
function evaluateRendered() {
|
|
670
|
+
var rego = visualRegister ? visualRegister.GetRego({
|
|
671
|
+
entityId: entity.Bruce.ID,
|
|
672
|
+
}) : null;
|
|
673
|
+
if ((rego === null || rego === void 0 ? void 0 : rego.visual) instanceof Entity) {
|
|
674
|
+
var visual = rego.visual;
|
|
675
|
+
if (visual.position) {
|
|
676
|
+
if (visual.position.getValue) {
|
|
677
|
+
return visual.position.getValue(viewer.scene.lastRenderTime);
|
|
678
|
+
}
|
|
679
|
+
return visual.position;
|
|
680
|
+
}
|
|
681
|
+
}
|
|
682
|
+
return null;
|
|
683
|
+
}
|
|
684
|
+
function evaluateRecord() {
|
|
623
685
|
if (entity.location && Carto.ValidateCarto(entity.location)) {
|
|
624
686
|
var location_1 = entity.location;
|
|
625
687
|
return Cartesian3.fromDegrees(EnsureNumber(location_1.longitude), EnsureNumber(location_1.latitude), EnsureNumber(location_1.altitude));
|
|
@@ -679,7 +741,11 @@ var EntityUtils;
|
|
|
679
741
|
}
|
|
680
742
|
}
|
|
681
743
|
}
|
|
682
|
-
var pos3d =
|
|
744
|
+
var pos3d = evaluateRendered();
|
|
745
|
+
if (Cartes.ValidateCartes3(pos3d)) {
|
|
746
|
+
return pos3d;
|
|
747
|
+
}
|
|
748
|
+
pos3d = evaluateRecord();
|
|
683
749
|
return Cartes.ValidateCartes3(pos3d) ? pos3d : null;
|
|
684
750
|
}
|
|
685
751
|
EntityUtils.GetPos = GetPos;
|
|
@@ -2203,6 +2269,446 @@ var EntitiesLoadedRenderManager;
|
|
|
2203
2269
|
EntitiesLoadedRenderManager.Manager = Manager;
|
|
2204
2270
|
})(EntitiesLoadedRenderManager || (EntitiesLoadedRenderManager = {}));
|
|
2205
2271
|
|
|
2272
|
+
/**
|
|
2273
|
+
* Utility for rendering parabolas between two points on the map.
|
|
2274
|
+
*/
|
|
2275
|
+
var CesiumParabola = /** @class */ (function () {
|
|
2276
|
+
function CesiumParabola(params) {
|
|
2277
|
+
this.color = "white";
|
|
2278
|
+
this.width = 2;
|
|
2279
|
+
this.duration = 10;
|
|
2280
|
+
this.heightDistanceRatio = 0.25;
|
|
2281
|
+
this.viewer = params.viewer;
|
|
2282
|
+
this.pos1 = params.pos1;
|
|
2283
|
+
this.pos2 = params.pos2;
|
|
2284
|
+
if (params.color) {
|
|
2285
|
+
this.color = params.color;
|
|
2286
|
+
}
|
|
2287
|
+
if (!isNaN(params.width)) {
|
|
2288
|
+
this.width = params.width;
|
|
2289
|
+
}
|
|
2290
|
+
if (!isNaN(params.duration)) {
|
|
2291
|
+
this.duration = params.duration;
|
|
2292
|
+
}
|
|
2293
|
+
if (!isNaN(params.heightDistanceRatio)) {
|
|
2294
|
+
this.heightDistanceRatio = params.heightDistanceRatio;
|
|
2295
|
+
}
|
|
2296
|
+
}
|
|
2297
|
+
Object.defineProperty(CesiumParabola.prototype, "curPos1", {
|
|
2298
|
+
get: function () {
|
|
2299
|
+
return this.pos1 instanceof Function ? this.pos1() : this.pos1;
|
|
2300
|
+
},
|
|
2301
|
+
enumerable: false,
|
|
2302
|
+
configurable: true
|
|
2303
|
+
});
|
|
2304
|
+
Object.defineProperty(CesiumParabola.prototype, "curPos2", {
|
|
2305
|
+
get: function () {
|
|
2306
|
+
return this.pos2 instanceof Function ? this.pos2() : this.pos2;
|
|
2307
|
+
},
|
|
2308
|
+
enumerable: false,
|
|
2309
|
+
configurable: true
|
|
2310
|
+
});
|
|
2311
|
+
CesiumParabola.prototype.Animate = function () {
|
|
2312
|
+
var _this = this;
|
|
2313
|
+
this.Dispose();
|
|
2314
|
+
var p1 = this.curPos1;
|
|
2315
|
+
var p2 = this.curPos2;
|
|
2316
|
+
var retry = false;
|
|
2317
|
+
if (!p1 || !p2 || !Cartes.ValidateCartes3(p1) || !Cartes.ValidateCartes3(p2)) {
|
|
2318
|
+
retry = true;
|
|
2319
|
+
}
|
|
2320
|
+
var TOTAL_LENGTH = retry ? 0 : Cartesian3.distance(p1, p2);
|
|
2321
|
+
if (TOTAL_LENGTH <= 0) {
|
|
2322
|
+
retry = true;
|
|
2323
|
+
}
|
|
2324
|
+
if (retry) {
|
|
2325
|
+
var retryTimeout_1 = setTimeout(function () {
|
|
2326
|
+
_this.Animate();
|
|
2327
|
+
}, 2000);
|
|
2328
|
+
this.dispose = function () {
|
|
2329
|
+
clearTimeout(retryTimeout_1);
|
|
2330
|
+
};
|
|
2331
|
+
return;
|
|
2332
|
+
}
|
|
2333
|
+
var TOTAL_POINTS = Math.max(50, Math.min(1000, TOTAL_LENGTH * 0.1));
|
|
2334
|
+
var POINT_LENGTH = TOTAL_LENGTH / TOTAL_POINTS;
|
|
2335
|
+
var RATE_PER_SECOND = 1000 / 40;
|
|
2336
|
+
var SEC_DURATION = this.duration;
|
|
2337
|
+
var HEIGHT_DISTANCE_RATIO = this.heightDistanceRatio;
|
|
2338
|
+
var TICK_LENGTH_INC = SEC_DURATION == 0 ? TOTAL_LENGTH : TOTAL_POINTS / (RATE_PER_SECOND * SEC_DURATION);
|
|
2339
|
+
var curPoints = [];
|
|
2340
|
+
var curPoint = 0;
|
|
2341
|
+
var parabola = new Entity({
|
|
2342
|
+
polyline: {
|
|
2343
|
+
positions: new CallbackProperty(function () {
|
|
2344
|
+
return curPoints;
|
|
2345
|
+
}, false),
|
|
2346
|
+
width: this.width,
|
|
2347
|
+
material: Color.fromCssColorString(this.color)
|
|
2348
|
+
}
|
|
2349
|
+
});
|
|
2350
|
+
this.viewer.entities.add(parabola);
|
|
2351
|
+
var p1Entity = new Entity({
|
|
2352
|
+
position: new CallbackProperty(function () {
|
|
2353
|
+
return curPoints.length ? curPoints[0] : new Cartesian3();
|
|
2354
|
+
}, false),
|
|
2355
|
+
point: {
|
|
2356
|
+
heightReference: HeightReference.NONE,
|
|
2357
|
+
pixelSize: this.width * 1.3,
|
|
2358
|
+
color: Color.fromCssColorString(this.color),
|
|
2359
|
+
outlineColor: Color.WHITE,
|
|
2360
|
+
outlineWidth: 2
|
|
2361
|
+
}
|
|
2362
|
+
});
|
|
2363
|
+
var p2Entity = new Entity({
|
|
2364
|
+
position: new CallbackProperty(function () {
|
|
2365
|
+
return curPoints.length ? curPoints[curPoints.length - 1] : new Cartesian3();
|
|
2366
|
+
}, false),
|
|
2367
|
+
point: {
|
|
2368
|
+
heightReference: HeightReference.NONE,
|
|
2369
|
+
pixelSize: this.width * 1.3,
|
|
2370
|
+
color: Color.fromCssColorString(this.color),
|
|
2371
|
+
outlineColor: Color.WHITE,
|
|
2372
|
+
outlineWidth: 2
|
|
2373
|
+
}
|
|
2374
|
+
});
|
|
2375
|
+
this.viewer.entities.add(p1Entity);
|
|
2376
|
+
this.viewer.entities.add(p2Entity);
|
|
2377
|
+
p1Entity.parent = parabola;
|
|
2378
|
+
p2Entity.parent = parabola;
|
|
2379
|
+
var quadraticKey = null;
|
|
2380
|
+
var quadratic = null;
|
|
2381
|
+
var prepareQuadratic = function () {
|
|
2382
|
+
var p1 = _this.curPos1;
|
|
2383
|
+
var p2 = _this.curPos2;
|
|
2384
|
+
if (!p1 || !p2 || !Cartes.ValidateCartes3(p1) || !Cartes.ValidateCartes3(p2)) {
|
|
2385
|
+
return;
|
|
2386
|
+
}
|
|
2387
|
+
var height1 = Cartographic.fromCartesian(p1).height;
|
|
2388
|
+
var height2 = Cartographic.fromCartesian(p2).height;
|
|
2389
|
+
if (isNaN(height1) || isNaN(height2)) {
|
|
2390
|
+
return;
|
|
2391
|
+
}
|
|
2392
|
+
var totalHeight = height2 + height1;
|
|
2393
|
+
var curQuadraticKey = height1 + "-" + height2;
|
|
2394
|
+
if (quadraticKey == curQuadraticKey) {
|
|
2395
|
+
return;
|
|
2396
|
+
}
|
|
2397
|
+
var points2d = [
|
|
2398
|
+
new Cartesian2(0, height1),
|
|
2399
|
+
new Cartesian2(TOTAL_LENGTH, height2)
|
|
2400
|
+
];
|
|
2401
|
+
var vertexHeight = 0;
|
|
2402
|
+
// Flat line.
|
|
2403
|
+
if (HEIGHT_DISTANCE_RATIO == 0) {
|
|
2404
|
+
vertexHeight = totalHeight * 0.5;
|
|
2405
|
+
}
|
|
2406
|
+
else {
|
|
2407
|
+
var largestHeight = Math.max(height1, height2);
|
|
2408
|
+
vertexHeight = largestHeight + (TOTAL_LENGTH * HEIGHT_DISTANCE_RATIO);
|
|
2409
|
+
}
|
|
2410
|
+
points2d.push(new Cartesian2(TOTAL_LENGTH * 0.5, vertexHeight));
|
|
2411
|
+
var calcQuadratic = function (points) {
|
|
2412
|
+
// Swaps position of two rows in matrix.
|
|
2413
|
+
function swapRows(matrix, rowAIndex, rowBIndex) {
|
|
2414
|
+
var rowAVal = matrix[rowAIndex];
|
|
2415
|
+
matrix[rowAIndex] = matrix[rowBIndex];
|
|
2416
|
+
matrix[rowBIndex] = rowAVal;
|
|
2417
|
+
return matrix;
|
|
2418
|
+
}
|
|
2419
|
+
// Zeros rowA at colIndex by subtracting a multiplied rowB from it.
|
|
2420
|
+
function reduceMatrixRowByRow(matrix, zeroingIndex, parentIndex, colIndex) {
|
|
2421
|
+
var zeroRow = matrix[zeroingIndex];
|
|
2422
|
+
var parentRow = matrix[parentIndex];
|
|
2423
|
+
if (zeroRow[colIndex] == 0) {
|
|
2424
|
+
return matrix;
|
|
2425
|
+
}
|
|
2426
|
+
else if (parentRow[colIndex] == 0) {
|
|
2427
|
+
matrix = swapRows(matrix, parentIndex, zeroingIndex);
|
|
2428
|
+
return divideMatrixRow(matrix, parentIndex, colIndex);
|
|
2429
|
+
}
|
|
2430
|
+
// rowAIndex colIndex / rowBIndex colIndex = factor;
|
|
2431
|
+
var factor = zeroRow[colIndex] / parentRow[colIndex];
|
|
2432
|
+
for (var i = 0; i < zeroRow.length; i++) {
|
|
2433
|
+
if (i >= colIndex) {
|
|
2434
|
+
zeroRow[i] -= parentRow[i] * factor;
|
|
2435
|
+
}
|
|
2436
|
+
}
|
|
2437
|
+
return matrix;
|
|
2438
|
+
}
|
|
2439
|
+
// Makes a given row column equal 1 by diving while row by that column.
|
|
2440
|
+
function divideMatrixRow(matrix, rowIndex, colIndex) {
|
|
2441
|
+
var row = matrix[rowIndex];
|
|
2442
|
+
var colValue = row[colIndex];
|
|
2443
|
+
for (var i = 0; i < row.length; i++) {
|
|
2444
|
+
if (i >= colIndex) {
|
|
2445
|
+
row[i] /= colValue;
|
|
2446
|
+
}
|
|
2447
|
+
}
|
|
2448
|
+
return matrix;
|
|
2449
|
+
}
|
|
2450
|
+
// Returns initial matrix for calculating a, b and c for quadratic formula from given points.
|
|
2451
|
+
function matrixFromPoints(points) {
|
|
2452
|
+
var rows = [];
|
|
2453
|
+
var constructRow = function (point) {
|
|
2454
|
+
rows.push([
|
|
2455
|
+
-Math.pow(point.x, 2),
|
|
2456
|
+
point.x,
|
|
2457
|
+
1,
|
|
2458
|
+
point.y
|
|
2459
|
+
]);
|
|
2460
|
+
};
|
|
2461
|
+
for (var i = 0; i < points.length; i++) {
|
|
2462
|
+
constructRow(points[i]);
|
|
2463
|
+
}
|
|
2464
|
+
return rows;
|
|
2465
|
+
}
|
|
2466
|
+
var initialMatrix = matrixFromPoints(points);
|
|
2467
|
+
var step1Matrix = reduceMatrixRowByRow(initialMatrix, 1, 0, 0);
|
|
2468
|
+
var step2Matrix = reduceMatrixRowByRow(step1Matrix, 2, 0, 0);
|
|
2469
|
+
var step3Matrix = reduceMatrixRowByRow(step2Matrix, 2, 1, 1);
|
|
2470
|
+
var step4Matrix = reduceMatrixRowByRow(step3Matrix, 0, 1, 1);
|
|
2471
|
+
var step5Matrix = reduceMatrixRowByRow(step4Matrix, 0, 2, 2);
|
|
2472
|
+
var step6Matrix = reduceMatrixRowByRow(step5Matrix, 1, 2, 2);
|
|
2473
|
+
var a = step6Matrix[0][3];
|
|
2474
|
+
var b = step6Matrix[1][3];
|
|
2475
|
+
var c = step6Matrix[2][3];
|
|
2476
|
+
return { a: a, b: b, c: c };
|
|
2477
|
+
};
|
|
2478
|
+
quadratic = calcQuadratic(points2d);
|
|
2479
|
+
};
|
|
2480
|
+
var getPosition = function (increment) {
|
|
2481
|
+
if (!quadratic) {
|
|
2482
|
+
return null;
|
|
2483
|
+
}
|
|
2484
|
+
var lengthAcross = POINT_LENGTH * increment;
|
|
2485
|
+
if (lengthAcross > TOTAL_LENGTH) {
|
|
2486
|
+
lengthAcross = TOTAL_LENGTH;
|
|
2487
|
+
}
|
|
2488
|
+
var getParabolaYFromX = function (x, quadLetters) {
|
|
2489
|
+
var a = quadLetters.a;
|
|
2490
|
+
var b = quadLetters.b;
|
|
2491
|
+
var c = quadLetters.c;
|
|
2492
|
+
return (-a * Math.pow(x, 2)) + (b * x) + c;
|
|
2493
|
+
};
|
|
2494
|
+
var pos3d = DrawingUtils.PointAcrossPolyline({
|
|
2495
|
+
viewer: _this.viewer,
|
|
2496
|
+
distance: lengthAcross,
|
|
2497
|
+
posses: [p1, p2]
|
|
2498
|
+
}).point;
|
|
2499
|
+
var point = Cartographic.fromCartesian(pos3d);
|
|
2500
|
+
var posHeight = getParabolaYFromX(lengthAcross, quadratic);
|
|
2501
|
+
return Cartesian3.fromRadians(point.longitude, point.latitude, posHeight);
|
|
2502
|
+
};
|
|
2503
|
+
var updatePoints = function () {
|
|
2504
|
+
var increment = Math.floor(curPoint);
|
|
2505
|
+
var chips = curPoint - Math.floor(curPoint);
|
|
2506
|
+
var posses = [];
|
|
2507
|
+
posses.push(getPosition(0));
|
|
2508
|
+
var addLast = increment >= TOTAL_POINTS;
|
|
2509
|
+
var totalCycles = addLast ? increment + 1 : increment;
|
|
2510
|
+
for (var i = 0; i < totalCycles; i++) {
|
|
2511
|
+
posses.push(getPosition(i));
|
|
2512
|
+
}
|
|
2513
|
+
posses.push(getPosition(increment + chips));
|
|
2514
|
+
if (posses.find(function (x) { return !x || !Cartes.ValidateCartes3(x); })) {
|
|
2515
|
+
return;
|
|
2516
|
+
}
|
|
2517
|
+
curPoints = posses;
|
|
2518
|
+
};
|
|
2519
|
+
var doTick = function () {
|
|
2520
|
+
if (curPoint >= TOTAL_POINTS) {
|
|
2521
|
+
clearInterval(animateInterval);
|
|
2522
|
+
return;
|
|
2523
|
+
}
|
|
2524
|
+
curPoint += TICK_LENGTH_INC;
|
|
2525
|
+
prepareQuadratic();
|
|
2526
|
+
updatePoints();
|
|
2527
|
+
};
|
|
2528
|
+
var animateInterval = setInterval(doTick, RATE_PER_SECOND);
|
|
2529
|
+
this.dispose = function () {
|
|
2530
|
+
clearInterval(animateInterval);
|
|
2531
|
+
if (parabola && _this.viewer.entities.contains(parabola)) {
|
|
2532
|
+
_this.viewer.entities.remove(parabola);
|
|
2533
|
+
}
|
|
2534
|
+
if (p1Entity && _this.viewer.entities.contains(p1Entity)) {
|
|
2535
|
+
_this.viewer.entities.remove(p1Entity);
|
|
2536
|
+
}
|
|
2537
|
+
if (p2Entity && _this.viewer.entities.contains(p2Entity)) {
|
|
2538
|
+
_this.viewer.entities.remove(p2Entity);
|
|
2539
|
+
}
|
|
2540
|
+
};
|
|
2541
|
+
return {
|
|
2542
|
+
parabola: parabola,
|
|
2543
|
+
siblings: [
|
|
2544
|
+
p1Entity,
|
|
2545
|
+
p2Entity
|
|
2546
|
+
]
|
|
2547
|
+
};
|
|
2548
|
+
};
|
|
2549
|
+
CesiumParabola.prototype.Dispose = function () {
|
|
2550
|
+
var _a;
|
|
2551
|
+
(_a = this.dispose) === null || _a === void 0 ? void 0 : _a.call(this);
|
|
2552
|
+
this.dispose = null;
|
|
2553
|
+
};
|
|
2554
|
+
return CesiumParabola;
|
|
2555
|
+
}());
|
|
2556
|
+
|
|
2557
|
+
function colorToCColor$1(color) {
|
|
2558
|
+
return new Color(color.red ? color.red / 255 : 0, color.green ? color.green / 255 : 0, color.blue ? color.blue / 255 : 0, color.alpha);
|
|
2559
|
+
}
|
|
2560
|
+
var RelationRenderEngine;
|
|
2561
|
+
(function (RelationRenderEngine) {
|
|
2562
|
+
function GetRenderGroupId(relation) {
|
|
2563
|
+
return relation["Related.Entity.ID"] + "-" + relation["Principal.Entity.ID"] + "-" + relation["Relation.Type.ID"];
|
|
2564
|
+
}
|
|
2565
|
+
RelationRenderEngine.GetRenderGroupId = GetRenderGroupId;
|
|
2566
|
+
function Render(params) {
|
|
2567
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
2568
|
+
var apiGetter, viewer, visualRegister, menuItemId, relations, api, rendered, i, relation, fromEntity, toEntity, dataEntity, _a, relationType, style, _b, cEntity;
|
|
2569
|
+
return __generator(this, function (_c) {
|
|
2570
|
+
switch (_c.label) {
|
|
2571
|
+
case 0:
|
|
2572
|
+
apiGetter = params.apiGetter, viewer = params.viewer, visualRegister = params.visualRegister, menuItemId = params.menuItemId, relations = params.relations;
|
|
2573
|
+
api = apiGetter.getApi(apiGetter.accountId);
|
|
2574
|
+
rendered = {};
|
|
2575
|
+
i = 0;
|
|
2576
|
+
_c.label = 1;
|
|
2577
|
+
case 1:
|
|
2578
|
+
if (!(i < relations.length)) return [3 /*break*/, 12];
|
|
2579
|
+
relation = relations[i];
|
|
2580
|
+
return [4 /*yield*/, Entity$1.Get({
|
|
2581
|
+
api: api,
|
|
2582
|
+
entityId: relation["Principal.Entity.ID"],
|
|
2583
|
+
})];
|
|
2584
|
+
case 2:
|
|
2585
|
+
fromEntity = (_c.sent()).entity;
|
|
2586
|
+
return [4 /*yield*/, Entity$1.Get({
|
|
2587
|
+
api: api,
|
|
2588
|
+
entityId: relation["Related.Entity.ID"],
|
|
2589
|
+
})];
|
|
2590
|
+
case 3:
|
|
2591
|
+
toEntity = (_c.sent()).entity;
|
|
2592
|
+
if (!relation["Data.Entity.ID"]) return [3 /*break*/, 5];
|
|
2593
|
+
return [4 /*yield*/, Entity$1.Get({
|
|
2594
|
+
api: api,
|
|
2595
|
+
entityId: relation["Data.Entity.ID"]
|
|
2596
|
+
})];
|
|
2597
|
+
case 4:
|
|
2598
|
+
_a = (_c.sent()).entity;
|
|
2599
|
+
return [3 /*break*/, 6];
|
|
2600
|
+
case 5:
|
|
2601
|
+
_a = null;
|
|
2602
|
+
_c.label = 6;
|
|
2603
|
+
case 6:
|
|
2604
|
+
dataEntity = _a;
|
|
2605
|
+
return [4 /*yield*/, EntityRelationType.Get({
|
|
2606
|
+
api: api,
|
|
2607
|
+
relationTypeId: relation["Relation.Type.ID"]
|
|
2608
|
+
})];
|
|
2609
|
+
case 7:
|
|
2610
|
+
relationType = (_c.sent()).relationType;
|
|
2611
|
+
if (!relationType.EntityDisplaySettingID) return [3 /*break*/, 9];
|
|
2612
|
+
return [4 /*yield*/, Style.Get({
|
|
2613
|
+
api: api,
|
|
2614
|
+
styleId: Number(relationType.EntityDisplaySettingID)
|
|
2615
|
+
})];
|
|
2616
|
+
case 8:
|
|
2617
|
+
_b = (_c.sent()).style;
|
|
2618
|
+
return [3 /*break*/, 10];
|
|
2619
|
+
case 9:
|
|
2620
|
+
_b = null;
|
|
2621
|
+
_c.label = 10;
|
|
2622
|
+
case 10:
|
|
2623
|
+
style = _b;
|
|
2624
|
+
cEntity = Parabola.Render({
|
|
2625
|
+
dataEntity: dataEntity,
|
|
2626
|
+
fromEntity: fromEntity,
|
|
2627
|
+
relation: relation,
|
|
2628
|
+
style: style,
|
|
2629
|
+
toEntity: toEntity,
|
|
2630
|
+
viewer: viewer,
|
|
2631
|
+
visualRegister: visualRegister
|
|
2632
|
+
});
|
|
2633
|
+
cEntity._renderGroup = GetRenderGroupId(relation);
|
|
2634
|
+
rendered[GetRenderGroupId(relation)] = cEntity;
|
|
2635
|
+
_c.label = 11;
|
|
2636
|
+
case 11:
|
|
2637
|
+
i++;
|
|
2638
|
+
return [3 /*break*/, 1];
|
|
2639
|
+
case 12: return [2 /*return*/, rendered];
|
|
2640
|
+
}
|
|
2641
|
+
});
|
|
2642
|
+
});
|
|
2643
|
+
}
|
|
2644
|
+
RelationRenderEngine.Render = Render;
|
|
2645
|
+
var Parabola;
|
|
2646
|
+
(function (Parabola) {
|
|
2647
|
+
function Render(params) {
|
|
2648
|
+
var _a;
|
|
2649
|
+
var style = (_a = params.style) === null || _a === void 0 ? void 0 : _a.Settings;
|
|
2650
|
+
var entity = params.dataEntity;
|
|
2651
|
+
var bColor = (style === null || style === void 0 ? void 0 : style.lineColor) ? Calculator.GetColor(style === null || style === void 0 ? void 0 : style.lineColor, entity, []) : null;
|
|
2652
|
+
var cColor = bColor ? colorToCColor$1(bColor) : Color.WHITE;
|
|
2653
|
+
var width = EnsureNumber((style === null || style === void 0 ? void 0 : style.lineWidth) ? Calculator.GetValue(style === null || style === void 0 ? void 0 : style.lineWidth, entity, []) : 4, 4);
|
|
2654
|
+
if (width < 1) {
|
|
2655
|
+
width = 1;
|
|
2656
|
+
}
|
|
2657
|
+
var duration = EnsureNumber((style === null || style === void 0 ? void 0 : style.duration) ? Calculator.GetValue(style === null || style === void 0 ? void 0 : style.duration, entity, []) : 2, 2);
|
|
2658
|
+
var hDistanceRatio = EnsureNumber((style === null || style === void 0 ? void 0 : style.heightDistanceRatio) ? Calculator.GetValue(style === null || style === void 0 ? void 0 : style.heightDistanceRatio, entity, []) : 0.25, 0.25);
|
|
2659
|
+
var fromPos = null;
|
|
2660
|
+
var toPos = null;
|
|
2661
|
+
var updatePosses = function () {
|
|
2662
|
+
try {
|
|
2663
|
+
fromPos = EntityUtils.GetPos({
|
|
2664
|
+
entity: params.fromEntity,
|
|
2665
|
+
viewer: params.viewer,
|
|
2666
|
+
visualRegister: params.visualRegister
|
|
2667
|
+
});
|
|
2668
|
+
toPos = EntityUtils.GetPos({
|
|
2669
|
+
entity: params.toEntity,
|
|
2670
|
+
viewer: params.viewer,
|
|
2671
|
+
visualRegister: params.visualRegister
|
|
2672
|
+
});
|
|
2673
|
+
}
|
|
2674
|
+
catch (e) {
|
|
2675
|
+
console.error(e);
|
|
2676
|
+
}
|
|
2677
|
+
};
|
|
2678
|
+
updatePosses();
|
|
2679
|
+
var parabola = new CesiumParabola({
|
|
2680
|
+
viewer: params.viewer,
|
|
2681
|
+
pos1: function () { return fromPos; },
|
|
2682
|
+
pos2: function () { return toPos; },
|
|
2683
|
+
color: cColor.toString(),
|
|
2684
|
+
width: width,
|
|
2685
|
+
duration: duration,
|
|
2686
|
+
heightDistanceRatio: hDistanceRatio
|
|
2687
|
+
});
|
|
2688
|
+
var cEntities = parabola.Animate();
|
|
2689
|
+
var cEntity = cEntities.parabola;
|
|
2690
|
+
cEntity._siblingGraphics = [];
|
|
2691
|
+
for (var i = 0; i < cEntities.siblings.length; i++) {
|
|
2692
|
+
var sibling = cEntities.siblings[i];
|
|
2693
|
+
cEntity._siblingGraphics.push(sibling);
|
|
2694
|
+
}
|
|
2695
|
+
var updateInterval = setInterval(function () {
|
|
2696
|
+
var _a;
|
|
2697
|
+
if (!((_a = params.viewer) === null || _a === void 0 ? void 0 : _a.scene) ||
|
|
2698
|
+
params.viewer.isDestroyed() ||
|
|
2699
|
+
!params.viewer.entities.contains(cEntity)) {
|
|
2700
|
+
clearInterval(updateInterval);
|
|
2701
|
+
parabola.Dispose();
|
|
2702
|
+
return;
|
|
2703
|
+
}
|
|
2704
|
+
updatePosses();
|
|
2705
|
+
}, 1000);
|
|
2706
|
+
return cEntity;
|
|
2707
|
+
}
|
|
2708
|
+
Parabola.Render = Render;
|
|
2709
|
+
})(Parabola = RelationRenderEngine.Parabola || (RelationRenderEngine.Parabola = {}));
|
|
2710
|
+
})(RelationRenderEngine || (RelationRenderEngine = {}));
|
|
2711
|
+
|
|
2206
2712
|
function removeEntity(viewer, visual) {
|
|
2207
2713
|
unmarkEntity(visual);
|
|
2208
2714
|
if (visual instanceof Entity) {
|
|
@@ -2708,8 +3214,8 @@ var VisualsRegister;
|
|
|
2708
3214
|
* @returns
|
|
2709
3215
|
*/
|
|
2710
3216
|
Register.prototype.RemoveRegos = function (params) {
|
|
2711
|
-
var _a, _b;
|
|
2712
|
-
var entityId = params.entityId, menuItemId = params.menuItemId, doUpdate = params.doUpdate;
|
|
3217
|
+
var _a, _b, _c;
|
|
3218
|
+
var entityId = params.entityId, menuItemId = params.menuItemId, doUpdate = params.doUpdate, relation = params.relation;
|
|
2713
3219
|
if (doUpdate == null) {
|
|
2714
3220
|
doUpdate = true;
|
|
2715
3221
|
}
|
|
@@ -2767,6 +3273,28 @@ var VisualsRegister;
|
|
|
2767
3273
|
return state_1.value;
|
|
2768
3274
|
}
|
|
2769
3275
|
}
|
|
3276
|
+
else if (relation) {
|
|
3277
|
+
var relationKey_1 = RelationRenderEngine.GetRenderGroupId(relation);
|
|
3278
|
+
for (var entityId_4 in this.rego) {
|
|
3279
|
+
var entityRegos = this.rego[entityId_4];
|
|
3280
|
+
if (entityRegos) {
|
|
3281
|
+
var rego = entityRegos.find(function (r) { return r.relation && RelationRenderEngine.GetRenderGroupId(r.relation) == relationKey_1; });
|
|
3282
|
+
if (!rego) {
|
|
3283
|
+
continue;
|
|
3284
|
+
}
|
|
3285
|
+
removeEntity(this.viewer, rego.visual);
|
|
3286
|
+
(_c = this.onUpdate) === null || _c === void 0 ? void 0 : _c.Trigger({
|
|
3287
|
+
type: EVisualUpdateType.Remove,
|
|
3288
|
+
entityId: rego.entityId,
|
|
3289
|
+
rego: rego
|
|
3290
|
+
});
|
|
3291
|
+
this.rego[entityId_4] = entityRegos.filter(function (r) { return r.menuItemId !== menuItemId; });
|
|
3292
|
+
if (doUpdate && menuItemId) {
|
|
3293
|
+
updateEntity(this.viewer, entityId_4, this);
|
|
3294
|
+
}
|
|
3295
|
+
}
|
|
3296
|
+
}
|
|
3297
|
+
}
|
|
2770
3298
|
};
|
|
2771
3299
|
/**
|
|
2772
3300
|
* Returns an array of drilled visuals associated with this register.
|
|
@@ -3205,7 +3733,7 @@ var EntityRenderManager;
|
|
|
3205
3733
|
EntityRenderManager.Manager = Manager;
|
|
3206
3734
|
})(EntityRenderManager || (EntityRenderManager = {}));
|
|
3207
3735
|
|
|
3208
|
-
function colorToCColor$
|
|
3736
|
+
function colorToCColor$2(color) {
|
|
3209
3737
|
return new Color(color.red ? color.red / 255 : 0, color.green ? color.green / 255 : 0, color.blue ? color.blue / 255 : 0, color.alpha);
|
|
3210
3738
|
}
|
|
3211
3739
|
/**
|
|
@@ -3834,7 +4362,7 @@ var TilesetRenderEngine;
|
|
|
3834
4362
|
}
|
|
3835
4363
|
var bColor = ((_a = style.modelStyle) === null || _a === void 0 ? void 0 : _a.fillColor) ? Calculator.GetColor(style.modelStyle.fillColor, data, []) : null;
|
|
3836
4364
|
if (bColor != null) {
|
|
3837
|
-
var cColor = colorToCColor$
|
|
4365
|
+
var cColor = colorToCColor$2(bColor);
|
|
3838
4366
|
var visual = entity.visual;
|
|
3839
4367
|
if (visual && visual instanceof Cesium3DTileFeature) {
|
|
3840
4368
|
visual.color = cColor;
|
|
@@ -5038,6 +5566,163 @@ var TilesetArbRenderManager;
|
|
|
5038
5566
|
TilesetArbRenderManager.Manager = Manager;
|
|
5039
5567
|
})(TilesetArbRenderManager || (TilesetArbRenderManager = {}));
|
|
5040
5568
|
|
|
5569
|
+
var RelationsRenderManager;
|
|
5570
|
+
(function (RelationsRenderManager) {
|
|
5571
|
+
var Manager = /** @class */ (function () {
|
|
5572
|
+
function Manager(params) {
|
|
5573
|
+
this.disposed = false;
|
|
5574
|
+
var apiGetter = params.apiGetter, item = params.item, register = params.register, viewer = params.viewer;
|
|
5575
|
+
this.apiGetter = apiGetter;
|
|
5576
|
+
this.item = item;
|
|
5577
|
+
this.register = register;
|
|
5578
|
+
this.viewer = viewer;
|
|
5579
|
+
}
|
|
5580
|
+
Object.defineProperty(Manager.prototype, "Disposed", {
|
|
5581
|
+
get: function () {
|
|
5582
|
+
return this.disposed;
|
|
5583
|
+
},
|
|
5584
|
+
enumerable: false,
|
|
5585
|
+
configurable: true
|
|
5586
|
+
});
|
|
5587
|
+
Manager.prototype.Init = function () {
|
|
5588
|
+
var _a;
|
|
5589
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
5590
|
+
var drawn, api, BATCH_SIZE, drawBatch, i, entityId, relations, _loop_1, this_1, j;
|
|
5591
|
+
return __generator(this, function (_b) {
|
|
5592
|
+
switch (_b.label) {
|
|
5593
|
+
case 0:
|
|
5594
|
+
drawn = [];
|
|
5595
|
+
api = this.apiGetter.getApi(this.apiGetter.accountId);
|
|
5596
|
+
BATCH_SIZE = 5;
|
|
5597
|
+
drawBatch = [];
|
|
5598
|
+
i = 0;
|
|
5599
|
+
_b.label = 1;
|
|
5600
|
+
case 1:
|
|
5601
|
+
if (!(i < this.item.BruceEntity.EntityIds.length)) return [3 /*break*/, 4];
|
|
5602
|
+
entityId = this.item.BruceEntity.EntityIds[i];
|
|
5603
|
+
return [4 /*yield*/, EntityRelation.GetList({
|
|
5604
|
+
api: api,
|
|
5605
|
+
entityId: entityId,
|
|
5606
|
+
filter: {
|
|
5607
|
+
oneWayOnly: false,
|
|
5608
|
+
loadEntityData: false
|
|
5609
|
+
}
|
|
5610
|
+
})];
|
|
5611
|
+
case 2:
|
|
5612
|
+
relations = (_b.sent()).relations;
|
|
5613
|
+
_loop_1 = function (j) {
|
|
5614
|
+
var relation = relations[j];
|
|
5615
|
+
if (((_a = this_1.item.relationTypeIds) === null || _a === void 0 ? void 0 : _a.length) && !this_1.item.relationTypeIds.includes(relation["Relation.Type.ID"])) {
|
|
5616
|
+
return "continue";
|
|
5617
|
+
}
|
|
5618
|
+
var key = RelationRenderEngine.GetRenderGroupId(relation);
|
|
5619
|
+
if (!drawn.find(function (x) { return x == key; })) {
|
|
5620
|
+
drawn.push(key);
|
|
5621
|
+
drawBatch.push(relation);
|
|
5622
|
+
if (drawBatch.length >= BATCH_SIZE) {
|
|
5623
|
+
this_1.onGetterUpdate(drawBatch);
|
|
5624
|
+
drawBatch = [];
|
|
5625
|
+
}
|
|
5626
|
+
}
|
|
5627
|
+
};
|
|
5628
|
+
this_1 = this;
|
|
5629
|
+
for (j = 0; j < relations.length; j++) {
|
|
5630
|
+
_loop_1(j);
|
|
5631
|
+
}
|
|
5632
|
+
_b.label = 3;
|
|
5633
|
+
case 3:
|
|
5634
|
+
i++;
|
|
5635
|
+
return [3 /*break*/, 1];
|
|
5636
|
+
case 4:
|
|
5637
|
+
if (drawBatch === null || drawBatch === void 0 ? void 0 : drawBatch.length) {
|
|
5638
|
+
this.onGetterUpdate(drawBatch);
|
|
5639
|
+
}
|
|
5640
|
+
return [2 /*return*/];
|
|
5641
|
+
}
|
|
5642
|
+
});
|
|
5643
|
+
});
|
|
5644
|
+
};
|
|
5645
|
+
Manager.prototype.Dispose = function () {
|
|
5646
|
+
if (this.disposed) {
|
|
5647
|
+
return;
|
|
5648
|
+
}
|
|
5649
|
+
this.disposed = true;
|
|
5650
|
+
this.register.RemoveRegos({
|
|
5651
|
+
menuItemId: this.item.id
|
|
5652
|
+
});
|
|
5653
|
+
};
|
|
5654
|
+
Manager.prototype.ReRender = function (entityIds) {
|
|
5655
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
5656
|
+
return __generator(this, function (_a) {
|
|
5657
|
+
return [2 /*return*/];
|
|
5658
|
+
});
|
|
5659
|
+
});
|
|
5660
|
+
};
|
|
5661
|
+
Manager.prototype.onGetterUpdate = function (relations) {
|
|
5662
|
+
var _a, _b;
|
|
5663
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
5664
|
+
var cEntities, i, relation, key, cEntity, visual, e_1;
|
|
5665
|
+
return __generator(this, function (_c) {
|
|
5666
|
+
switch (_c.label) {
|
|
5667
|
+
case 0:
|
|
5668
|
+
_c.trys.push([0, 2, , 3]);
|
|
5669
|
+
if (this.disposed || this.viewer.isDestroyed()) {
|
|
5670
|
+
return [2 /*return*/];
|
|
5671
|
+
}
|
|
5672
|
+
return [4 /*yield*/, RelationRenderEngine.Render({
|
|
5673
|
+
apiGetter: this.apiGetter,
|
|
5674
|
+
menuItemId: this.item.id,
|
|
5675
|
+
relations: relations,
|
|
5676
|
+
viewer: this.viewer,
|
|
5677
|
+
visualRegister: this.register
|
|
5678
|
+
})];
|
|
5679
|
+
case 1:
|
|
5680
|
+
cEntities = _c.sent();
|
|
5681
|
+
for (i = 0; i < relations.length; i++) {
|
|
5682
|
+
relation = relations[i];
|
|
5683
|
+
key = RelationRenderEngine.GetRenderGroupId(relation);
|
|
5684
|
+
cEntity = cEntities[key];
|
|
5685
|
+
if (cEntity) {
|
|
5686
|
+
visual = (_a = this.register.GetRego({
|
|
5687
|
+
entityId: key,
|
|
5688
|
+
menuItemId: this.item.id
|
|
5689
|
+
})) === null || _a === void 0 ? void 0 : _a.visual;
|
|
5690
|
+
if (!visual || visual != cEntity) {
|
|
5691
|
+
this.register.AddRego({
|
|
5692
|
+
rego: {
|
|
5693
|
+
entityId: (_b = relation["Data.Entity.ID"]) !== null && _b !== void 0 ? _b : ObjectUtils.UId(),
|
|
5694
|
+
menuItemId: this.item.id,
|
|
5695
|
+
relation: relation,
|
|
5696
|
+
visual: cEntity,
|
|
5697
|
+
priority: 0,
|
|
5698
|
+
accountId: this.apiGetter.accountId
|
|
5699
|
+
}
|
|
5700
|
+
});
|
|
5701
|
+
}
|
|
5702
|
+
}
|
|
5703
|
+
else {
|
|
5704
|
+
this.register.RemoveRegos({
|
|
5705
|
+
entityId: relation["Data.Entity.ID"],
|
|
5706
|
+
relation: relation,
|
|
5707
|
+
menuItemId: this.item.id
|
|
5708
|
+
});
|
|
5709
|
+
}
|
|
5710
|
+
}
|
|
5711
|
+
return [3 /*break*/, 3];
|
|
5712
|
+
case 2:
|
|
5713
|
+
e_1 = _c.sent();
|
|
5714
|
+
console.error(e_1);
|
|
5715
|
+
return [3 /*break*/, 3];
|
|
5716
|
+
case 3: return [2 /*return*/];
|
|
5717
|
+
}
|
|
5718
|
+
});
|
|
5719
|
+
});
|
|
5720
|
+
};
|
|
5721
|
+
return Manager;
|
|
5722
|
+
}());
|
|
5723
|
+
RelationsRenderManager.Manager = Manager;
|
|
5724
|
+
})(RelationsRenderManager || (RelationsRenderManager = {}));
|
|
5725
|
+
|
|
5041
5726
|
/**
|
|
5042
5727
|
* Utility to keep track of enabled menu items within a Cesium viewer.
|
|
5043
5728
|
*/
|
|
@@ -5195,6 +5880,14 @@ var MenuItemManager;
|
|
|
5195
5880
|
register: this.visualsRegister
|
|
5196
5881
|
});
|
|
5197
5882
|
break;
|
|
5883
|
+
case MenuItem.EType.Relations:
|
|
5884
|
+
rItem.renderManager = new RelationsRenderManager.Manager({
|
|
5885
|
+
apiGetter: params.apiGetter,
|
|
5886
|
+
item: params.item,
|
|
5887
|
+
register: this.visualsRegister,
|
|
5888
|
+
viewer: this.viewer
|
|
5889
|
+
});
|
|
5890
|
+
break;
|
|
5198
5891
|
// Any "none" type can be ignored. These are just containers for other items.
|
|
5199
5892
|
case MenuItem.EType.None:
|
|
5200
5893
|
break;
|
|
@@ -7094,5 +7787,5 @@ var ViewUtils;
|
|
|
7094
7787
|
ViewUtils.GatherTerrainTile = GatherTerrainTile;
|
|
7095
7788
|
})(ViewUtils || (ViewUtils = {}));
|
|
7096
7789
|
|
|
7097
|
-
export { CesiumViewMonitor, ViewerUtils, MenuItemManager, EntityRenderEngine, MenuItemCreator, VisualsRegister, RenderManager, EntitiesIdsRenderManager, EntitiesLoadedRenderManager, EntitiesRenderManager, EntityRenderManager, TilesetCadRenderManager, ViewRenderEngine, TileRenderEngine, TilesetRenderEngine, SharedGetters, ViewUtils, DrawingUtils, MeasureUtils, EntityUtils };
|
|
7790
|
+
export { CesiumViewMonitor, ViewerUtils, MenuItemManager, EntityRenderEngine, MenuItemCreator, VisualsRegister, RenderManager, EntitiesIdsRenderManager, EntitiesLoadedRenderManager, EntitiesRenderManager, EntityRenderManager, TilesetCadRenderManager, ViewRenderEngine, TileRenderEngine, TilesetRenderEngine, SharedGetters, ViewUtils, DrawingUtils, MeasureUtils, EntityUtils, CesiumParabola };
|
|
7098
7791
|
//# sourceMappingURL=bruce-cesium.es5.js.map
|