bruce-cesium 1.2.6 → 1.2.8

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.
@@ -1,5 +1,5 @@
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, createOsmBuildings, Cesium3DTileStyle, Rectangle, KmlDataSource, CallbackProperty, createWorldTerrain, EllipsoidTerrainProvider, CesiumTerrainProvider, BingMapsImageryProvider, BingMapsStyle, MapboxImageryProvider, MapboxStyleImageryProvider, ArcGisMapServerImageryProvider, OpenStreetMapImageryProvider, GridImageryProvider, GeographicTilingScheme, ImageryLayer, UrlTemplateImageryProvider, TileMapServiceImageryProvider, IonImageryProvider, OrthographicFrustum, JulianDate, Matrix4, Cesium3DTileset, IonResource, EllipsoidGeodesic, sampleTerrainMostDetailed, PolygonPipeline, ColorMaterialProperty, Matrix3, EasingFunction, GeometryInstance } from 'cesium';
2
+ import { Cartesian2, Cartographic, Math as Math$1, Cartesian3, Entity, Primitive, Cesium3DTileFeature, Color, Cesium3DTileColorBlendMode, HeadingPitchRange, HeightReference, HorizontalOrigin, VerticalOrigin, ClassificationType, ArcType, PolygonHierarchy, ShadowMode, PolylineGraphics, HeadingPitchRoll, Transforms, ColorBlendMode, createOsmBuildings, Cesium3DTileStyle, Rectangle, KmlDataSource, OrthographicFrustum, JulianDate, createWorldTerrain, EllipsoidTerrainProvider, CesiumTerrainProvider, BingMapsImageryProvider, BingMapsStyle, MapboxImageryProvider, MapboxStyleImageryProvider, ArcGisMapServerImageryProvider, OpenStreetMapImageryProvider, GridImageryProvider, GeographicTilingScheme, ImageryLayer, UrlTemplateImageryProvider, TileMapServiceImageryProvider, IonImageryProvider, CallbackProperty, Matrix4, Cesium3DTileset, IonResource, EllipsoidGeodesic, sampleTerrainMostDetailed, PolygonPipeline, ColorMaterialProperty, Matrix3, EasingFunction, GeometryInstance } from 'cesium';
3
3
 
4
4
  var TIME_LAG = 300;
5
5
  var POSITION_CHECK_TIMER = 950;
@@ -1165,11 +1165,11 @@ function getRenderGroupId(zoomItem) {
1165
1165
  var EntityRenderEngine;
1166
1166
  (function (EntityRenderEngine) {
1167
1167
  function Render(params) {
1168
- var _a;
1168
+ var _a, _b;
1169
1169
  return __awaiter(this, void 0, void 0, function () {
1170
- var groupRenderParams, cEntities, models, polygons, polylines, points, i, entity, id, zoomItem, displayType, newRenderId, existingRego, oldRenderId, mParams, mEntities, i, entity, id, cEntity, pParams, pEntities, i, entity, cEntity, pParams, pEntities, i, entity, cEntity, pParams, pEntities, i, entity, cEntity;
1171
- return __generator(this, function (_b) {
1172
- switch (_b.label) {
1170
+ var groupRenderParams, i, entity, geometry, cEntities, models, polygons, polylines, points, i, entity, id, zoomItem, displayType, newRenderId, existingRego, oldRenderId, mParams, mEntities, i, entity, id, cEntity, pParams, pEntities, i, entity, cEntity, pParams, pEntities, i, entity, cEntity, pParams, pEntities, i, entity, cEntity;
1171
+ return __generator(this, function (_c) {
1172
+ switch (_c.label) {
1173
1173
  case 0:
1174
1174
  groupRenderParams = {
1175
1175
  apiGetter: params.apiGetter,
@@ -1179,6 +1179,14 @@ var EntityRenderEngine;
1179
1179
  menuItemId: params.menuItemId,
1180
1180
  visualRegister: params.visualRegister
1181
1181
  };
1182
+ // Flatten multi-geometry if it's only got 1 piece.
1183
+ for (i = 0; i < params.entities.length; i++) {
1184
+ entity = params.entities[i];
1185
+ geometry = entity.geometry;
1186
+ if (((_a = geometry === null || geometry === void 0 ? void 0 : geometry.MultiGeometry) === null || _a === void 0 ? void 0 : _a.length) == 1) {
1187
+ entity.geometry = __assign(__assign({}, entity.geometry), geometry.MultiGeometry[0]);
1188
+ }
1189
+ }
1182
1190
  cEntities = {};
1183
1191
  models = [];
1184
1192
  polygons = [];
@@ -1207,7 +1215,7 @@ var EntityRenderEngine;
1207
1215
  entityId: id,
1208
1216
  menuItemId: params.menuItemId
1209
1217
  });
1210
- oldRenderId = (_a = existingRego === null || existingRego === void 0 ? void 0 : existingRego.visual) === null || _a === void 0 ? void 0 : _a._renderGroup;
1218
+ oldRenderId = (_b = existingRego === null || existingRego === void 0 ? void 0 : existingRego.visual) === null || _b === void 0 ? void 0 : _b._renderGroup;
1211
1219
  if (newRenderId == oldRenderId && !(existingRego === null || existingRego === void 0 ? void 0 : existingRego.stale)) {
1212
1220
  cEntities[id] = existingRego.visual;
1213
1221
  }
@@ -1229,7 +1237,7 @@ var EntityRenderEngine;
1229
1237
  mParams = __assign(__assign({}, groupRenderParams), { entities: models });
1230
1238
  return [4 /*yield*/, Model3d.RenderGroup(mParams)];
1231
1239
  case 1:
1232
- mEntities = _b.sent();
1240
+ mEntities = _c.sent();
1233
1241
  for (i = 0; i < mParams.entities.length; i++) {
1234
1242
  entity = mParams.entities[i];
1235
1243
  id = entity.Bruce.ID;
@@ -1241,13 +1249,13 @@ var EntityRenderEngine;
1241
1249
  polygons.push(entity);
1242
1250
  }
1243
1251
  }
1244
- _b.label = 2;
1252
+ _c.label = 2;
1245
1253
  case 2:
1246
1254
  if (!(polygons.length > 0)) return [3 /*break*/, 4];
1247
1255
  pParams = __assign(__assign({}, groupRenderParams), { entities: polygons });
1248
1256
  return [4 /*yield*/, Polygon.RenderGroup(pParams)];
1249
1257
  case 3:
1250
- pEntities = _b.sent();
1258
+ pEntities = _c.sent();
1251
1259
  for (i = 0; i < pParams.entities.length; i++) {
1252
1260
  entity = pParams.entities[i];
1253
1261
  cEntity = pEntities[entity.Bruce.ID];
@@ -1258,13 +1266,13 @@ var EntityRenderEngine;
1258
1266
  polylines.push(entity);
1259
1267
  }
1260
1268
  }
1261
- _b.label = 4;
1269
+ _c.label = 4;
1262
1270
  case 4:
1263
1271
  if (!(polylines.length > 0)) return [3 /*break*/, 6];
1264
1272
  pParams = __assign(__assign({}, groupRenderParams), { entities: polylines });
1265
1273
  return [4 /*yield*/, Polyline.RenderGroup(pParams)];
1266
1274
  case 5:
1267
- pEntities = _b.sent();
1275
+ pEntities = _c.sent();
1268
1276
  for (i = 0; i < pParams.entities.length; i++) {
1269
1277
  entity = pParams.entities[i];
1270
1278
  cEntity = pEntities[entity.Bruce.ID];
@@ -1275,13 +1283,13 @@ var EntityRenderEngine;
1275
1283
  points.push(entity);
1276
1284
  }
1277
1285
  }
1278
- _b.label = 6;
1286
+ _c.label = 6;
1279
1287
  case 6:
1280
1288
  if (!(points.length > 0)) return [3 /*break*/, 8];
1281
1289
  pParams = __assign(__assign({}, groupRenderParams), { entities: points });
1282
1290
  return [4 /*yield*/, Point.RenderGroup(pParams)];
1283
1291
  case 7:
1284
- pEntities = _b.sent();
1292
+ pEntities = _c.sent();
1285
1293
  for (i = 0; i < pParams.entities.length; i++) {
1286
1294
  entity = pParams.entities[i];
1287
1295
  cEntity = pEntities[entity.Bruce.ID];
@@ -1289,7 +1297,7 @@ var EntityRenderEngine;
1289
1297
  cEntities[entity.Bruce.ID] = cEntity;
1290
1298
  }
1291
1299
  }
1292
- _b.label = 8;
1300
+ _c.label = 8;
1293
1301
  case 8: return [2 /*return*/, cEntities];
1294
1302
  }
1295
1303
  });
@@ -6881,11 +6889,12 @@ function renderDefaultMapTile(apiGetter, id) {
6881
6889
  case ProjectViewTile.EDefaultImagery.EsriWorldStreetMap: return [3 /*break*/, 14];
6882
6890
  case ProjectViewTile.EDefaultImagery.EsriNationalGeographic: return [3 /*break*/, 15];
6883
6891
  case ProjectViewTile.EDefaultImagery.OpenStreetMap: return [3 /*break*/, 16];
6884
- case ProjectViewTile.EDefaultImagery.StamenWaterColor: return [3 /*break*/, 17];
6885
- case ProjectViewTile.EDefaultImagery.StamenToner: return [3 /*break*/, 18];
6886
- case ProjectViewTile.EDefaultImagery.Grid: return [3 /*break*/, 19];
6892
+ case ProjectViewTile.EDefaultImagery.LINZ: return [3 /*break*/, 17];
6893
+ case ProjectViewTile.EDefaultImagery.StamenWaterColor: return [3 /*break*/, 18];
6894
+ case ProjectViewTile.EDefaultImagery.StamenToner: return [3 /*break*/, 19];
6895
+ case ProjectViewTile.EDefaultImagery.Grid: return [3 /*break*/, 20];
6887
6896
  }
6888
- return [3 /*break*/, 20];
6897
+ return [3 /*break*/, 21];
6889
6898
  case 1:
6890
6899
  _c = (_b = BingMapsImageryProvider).bind;
6891
6900
  _d = {
@@ -6896,7 +6905,7 @@ function renderDefaultMapTile(apiGetter, id) {
6896
6905
  case 2:
6897
6906
  provider = new (_c.apply(_b, [void 0, (_d.key = _v.sent(),
6898
6907
  _d)]))();
6899
- return [3 /*break*/, 20];
6908
+ return [3 /*break*/, 21];
6900
6909
  case 3:
6901
6910
  _f = (_e = BingMapsImageryProvider).bind;
6902
6911
  _g = {
@@ -6907,7 +6916,7 @@ function renderDefaultMapTile(apiGetter, id) {
6907
6916
  case 4:
6908
6917
  provider = new (_f.apply(_e, [void 0, (_g.key = _v.sent(),
6909
6918
  _g)]))();
6910
- return [3 /*break*/, 20];
6919
+ return [3 /*break*/, 21];
6911
6920
  case 5:
6912
6921
  _j = (_h = BingMapsImageryProvider).bind;
6913
6922
  _k = {
@@ -6918,7 +6927,7 @@ function renderDefaultMapTile(apiGetter, id) {
6918
6927
  case 6:
6919
6928
  provider = new (_j.apply(_h, [void 0, (_k.key = _v.sent(),
6920
6929
  _k)]))();
6921
- return [3 /*break*/, 20];
6930
+ return [3 /*break*/, 21];
6922
6931
  case 7:
6923
6932
  _m = (_l = MapboxImageryProvider).bind;
6924
6933
  _o = {
@@ -6928,7 +6937,7 @@ function renderDefaultMapTile(apiGetter, id) {
6928
6937
  case 8:
6929
6938
  provider = new (_m.apply(_l, [void 0, (_o.accessToken = _v.sent(),
6930
6939
  _o)]))();
6931
- return [3 /*break*/, 20];
6940
+ return [3 /*break*/, 21];
6932
6941
  case 9:
6933
6942
  _q = (_p = MapboxStyleImageryProvider).bind;
6934
6943
  _r = {
@@ -6938,7 +6947,7 @@ function renderDefaultMapTile(apiGetter, id) {
6938
6947
  case 10:
6939
6948
  provider = new (_q.apply(_p, [void 0, (_r.accessToken = _v.sent(),
6940
6949
  _r)]))();
6941
- return [3 /*break*/, 20];
6950
+ return [3 /*break*/, 21];
6942
6951
  case 11:
6943
6952
  _t = (_s = MapboxStyleImageryProvider).bind;
6944
6953
  _u = {
@@ -6948,41 +6957,47 @@ function renderDefaultMapTile(apiGetter, id) {
6948
6957
  case 12:
6949
6958
  provider = new (_t.apply(_s, [void 0, (_u.accessToken = _v.sent(),
6950
6959
  _u)]))();
6951
- return [3 /*break*/, 20];
6960
+ return [3 /*break*/, 21];
6952
6961
  case 13:
6953
6962
  provider = new ArcGisMapServerImageryProvider({
6954
6963
  url: "https://services.arcgisonline.com/ArcGIS/rest/services/World_Imagery/MapServer",
6955
6964
  enablePickFeatures: false
6956
6965
  });
6957
- return [3 /*break*/, 20];
6966
+ return [3 /*break*/, 21];
6958
6967
  case 14:
6959
6968
  provider = new ArcGisMapServerImageryProvider({
6960
6969
  url: "https://services.arcgisonline.com/ArcGIS/rest/services/World_Street_Map/MapServer",
6961
6970
  enablePickFeatures: false
6962
6971
  });
6963
- return [3 /*break*/, 20];
6972
+ return [3 /*break*/, 21];
6964
6973
  case 15:
6965
6974
  provider = new ArcGisMapServerImageryProvider({
6966
6975
  url: "https://services.arcgisonline.com/ArcGIS/rest/services/NatGeo_World_Map/MapServer/",
6967
6976
  enablePickFeatures: false
6968
6977
  });
6969
- return [3 /*break*/, 20];
6978
+ return [3 /*break*/, 21];
6970
6979
  case 16:
6971
6980
  provider = new OpenStreetMapImageryProvider({
6972
6981
  url: "https://a.tile.openstreetmap.org/"
6973
6982
  });
6974
- return [3 /*break*/, 20];
6983
+ return [3 /*break*/, 21];
6975
6984
  case 17:
6976
6985
  provider = new OpenStreetMapImageryProvider({
6977
- url: "https://stamen-tiles.a.ssl.fastly.net/watercolor/"
6986
+ url: "https://s3-ap-southeast-2.amazonaws.com/digitalnewzealand/PROD/Tilesets/nz-img",
6987
+ fileExtension: "jpg"
6978
6988
  });
6979
- return [3 /*break*/, 20];
6989
+ return [3 /*break*/, 21];
6980
6990
  case 18:
6981
6991
  provider = new OpenStreetMapImageryProvider({
6982
- url: "https://stamen-tiles.a.ssl.fastly.net/toner/"
6992
+ url: "https://stamen-tiles.a.ssl.fastly.net/watercolor/"
6983
6993
  });
6984
- return [3 /*break*/, 20];
6994
+ return [3 /*break*/, 21];
6985
6995
  case 19:
6996
+ provider = new OpenStreetMapImageryProvider({
6997
+ url: "https://stamen-tiles.a.ssl.fastly.net/toner/"
6998
+ });
6999
+ return [3 /*break*/, 21];
7000
+ case 20:
6986
7001
  provider = new GridImageryProvider({
6987
7002
  tilingScheme: new GeographicTilingScheme(),
6988
7003
  cells: 0,
@@ -6994,8 +7009,8 @@ function renderDefaultMapTile(apiGetter, id) {
6994
7009
  tileHeight: 256,
6995
7010
  canvasSize: 256
6996
7011
  });
6997
- return [3 /*break*/, 20];
6998
- case 20: return [2 /*return*/, provider];
7012
+ return [3 /*break*/, 21];
7013
+ case 21: return [2 /*return*/, provider];
6999
7014
  }
7000
7015
  });
7001
7016
  });
@@ -7032,6 +7047,8 @@ function legacyMapIdToDefaultId(name) {
7032
7047
  return ProjectViewTile.EDefaultImagery.StamenWaterColor;
7033
7048
  case "stamentoner":
7034
7049
  return ProjectViewTile.EDefaultImagery.StamenToner;
7050
+ case "linz":
7051
+ return ProjectViewTile.EDefaultImagery.LINZ;
7035
7052
  case "grid":
7036
7053
  return ProjectViewTile.EDefaultImagery.Grid;
7037
7054
  }