bruce-cesium 3.5.8 → 3.6.0

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,6 +1,6 @@
1
1
  import { BruceEvent, Cartes, Carto, Entity as Entity$1, Geometry, Tileset, MathUtils, LRUCache, ProjectViewTile, DelayQueue, ZoomControl, Style, EntityTag, Calculator, EntityLod, EntityType, ClientFile, ObjectUtils, Bounds, Api, EntityRelationType, ENVIRONMENT, EntityCoords, EntitySource, MenuItem, EntityRelation, ProgramKey, AbstractApi, ProjectViewBookmark, EntityAttachment, EntityAttachmentType, EntityAttribute, ProjectView, ProjectViewLegacyTile, Camera } from 'bruce-models';
2
2
  import * as Cesium from 'cesium';
3
- import { Cartographic, Cartesian2, Math as Math$1, Cartesian3, CallbackProperty, Color, HeightReference, Rectangle, JulianDate, SceneMode, GeoJsonDataSource, ColorMaterialProperty, DistanceDisplayCondition, NearFarScalar, Model, Entity, HorizontalOrigin, VerticalOrigin, ClassificationType, ArcType, CornerType, ShadowMode, PolygonHierarchy, PolylineGraphics, HeadingPitchRoll, Transforms, ColorBlendMode, Cesium3DTileColorBlendMode, HeadingPitchRange, Primitive, Cesium3DTileFeature, Cesium3DTileStyle, Ion, KmlDataSource, SceneTransforms, EllipsoidTerrainProvider, BingMapsImageryProvider, BingMapsStyle, MapboxImageryProvider, MapboxStyleImageryProvider, ArcGisMapServerImageryProvider, OpenStreetMapImageryProvider, GridImageryProvider, GeographicTilingScheme, ImageryLayer, UrlTemplateImageryProvider, TileMapServiceImageryProvider, IonImageryProvider, CesiumTerrainProvider, EllipsoidGeodesic, sampleTerrainMostDetailed, defined, Cesium3DTileset, OrthographicFrustum, EasingFunction, Matrix4, Matrix3, IonResource, PolygonPipeline, BoundingSphere, GeometryInstance, ModelGraphics, PolygonGraphics, CorridorGraphics, PointGraphics, BillboardGraphics, EllipseGraphics, ScreenSpaceEventHandler, ScreenSpaceEventType, CesiumInspector, Intersect } from 'cesium';
3
+ import { Cartographic, Cartesian2, Math as Math$1, Cartesian3, CallbackProperty, Color, HeightReference, Rectangle, JulianDate, DistanceDisplayCondition, NearFarScalar, Model, Entity, HorizontalOrigin, VerticalOrigin, ClassificationType, ArcType, CornerType, ShadowMode, PolygonHierarchy, PolylineGraphics, HeadingPitchRoll, Transforms, ColorBlendMode, Primitive, Cesium3DTileFeature, SceneMode, GeoJsonDataSource, ColorMaterialProperty, Cesium3DTileColorBlendMode, HeadingPitchRange, Ion, Cesium3DTileStyle, KmlDataSource, SceneTransforms, OrthographicFrustum, EasingFunction, Cesium3DTileset, Matrix4, Matrix3, IonResource, EllipsoidTerrainProvider, CesiumInspector, defined, BingMapsImageryProvider, BingMapsStyle, MapboxImageryProvider, MapboxStyleImageryProvider, ArcGisMapServerImageryProvider, OpenStreetMapImageryProvider, GridImageryProvider, GeographicTilingScheme, ImageryLayer, UrlTemplateImageryProvider, TileMapServiceImageryProvider, IonImageryProvider, CesiumTerrainProvider, EllipsoidGeodesic, sampleTerrainMostDetailed, PolygonPipeline, BoundingSphere, GeometryInstance, ModelGraphics, PolygonGraphics, CorridorGraphics, PointGraphics, BillboardGraphics, EllipseGraphics, ScreenSpaceEventHandler, ScreenSpaceEventType, Intersect } from 'cesium';
4
4
 
5
5
  /*! *****************************************************************************
6
6
  Copyright (c) Microsoft Corporation. All rights reserved.
@@ -11605,6 +11605,9 @@ var TilesetRenderEngine;
11605
11605
  this.styleMappingsLoaded = {};
11606
11606
  this.fallbackStyle = null;
11607
11607
  this.loadingCounter = 0;
11608
+ // Dictionary of Entity ID -> boolean to indicate which Entities have been styled.
11609
+ // This is used to determine if the Style colour needs to be overriden or not.
11610
+ this.styledEntityIds = {};
11608
11611
  this.runningQueues = 0;
11609
11612
  this.recordLoadQueue = [];
11610
11613
  this.recordCheckQueue = [];
@@ -11746,7 +11749,8 @@ var TilesetRenderEngine;
11746
11749
  var record = entities.find(function (e) { var _a; return ((_a = e.Bruce) === null || _a === void 0 ? void 0 : _a.ID) == entityId; });
11747
11750
  var feature = this_1.getEntityRego(entityId);
11748
11751
  if (feature) {
11749
- this_1.styleTilesetFeatureFullData(feature, record, tags);
11752
+ var eTags = tags.filter(function (t) { var _a, _b, _c, _d; return ((_b = (_a = record === null || record === void 0 ? void 0 : record.Bruce) === null || _a === void 0 ? void 0 : _a["Layer.ID"]) === null || _b === void 0 ? void 0 : _b.length) && ((_d = (_c = record === null || record === void 0 ? void 0 : record.Bruce) === null || _c === void 0 ? void 0 : _c["Layer.ID"]) === null || _d === void 0 ? void 0 : _d.includes(t.ID)); });
11753
+ this_1.styleTilesetFeatureFullData(feature, record, eTags);
11750
11754
  }
11751
11755
  };
11752
11756
  this_1 = this;
@@ -12057,8 +12061,9 @@ var TilesetRenderEngine;
12057
12061
  color: cColor,
12058
12062
  entity: visual,
12059
12063
  viewer: this.viewer,
12060
- override: false
12064
+ override: this.styledEntityIds[entity.entityId] == true
12061
12065
  });
12066
+ this.styledEntityIds[entity.entityId] = true;
12062
12067
  };
12063
12068
  Styler.prototype.getTilesetFeatureStyle = function (entityId, entityTypeId) {
12064
12069
  var _a, _b, _c, _d;
@@ -16168,9 +16173,11 @@ var Draw3dPolyline = /** @class */ (function () {
16168
16173
  this.hideLine = false;
16169
16174
  this.perPositionHeight = false;
16170
16175
  this.smoothing = false;
16176
+ this.maxPoints = -1;
16171
16177
  this.viewer = params.viewer;
16172
16178
  this.onFinish = params.onFinish;
16173
16179
  this.onChange = params.onChange;
16180
+ this.maxPoints = isNaN(+params.maxPoints) ? -1 : +params.maxPoints;
16174
16181
  if (params.perPositionHeight) {
16175
16182
  this.perPositionHeight = params.perPositionHeight;
16176
16183
  }
@@ -16187,6 +16194,13 @@ var Draw3dPolyline = /** @class */ (function () {
16187
16194
  this.smoothing = params.smoothing;
16188
16195
  }
16189
16196
  }
16197
+ Object.defineProperty(Draw3dPolyline.prototype, "hasReachedMax", {
16198
+ get: function () {
16199
+ return this.maxPoints > 0 && this.points.length >= this.maxPoints;
16200
+ },
16201
+ enumerable: false,
16202
+ configurable: true
16203
+ });
16190
16204
  Draw3dPolyline.prototype.Start = function () {
16191
16205
  this.createEntity();
16192
16206
  this.points.forEach(function (x) {
@@ -16272,7 +16286,7 @@ var Draw3dPolyline = /** @class */ (function () {
16272
16286
  };
16273
16287
  Draw3dPolyline.prototype.onMouseClick = function (pos2d) {
16274
16288
  var _a;
16275
- if (!this.draggingPoint) {
16289
+ if (!this.draggingPoint && !this.hasReachedMax) {
16276
16290
  var pos3d = DrawingUtils.GetAccuratePosition(this.viewer, pos2d);
16277
16291
  if (Cartes.ValidateCartes3(pos3d)) {
16278
16292
  var positions = this.GetPositions();
@@ -21676,7 +21690,7 @@ var ViewRenderEngine;
21676
21690
  ViewRenderEngine.Render = Render;
21677
21691
  })(ViewRenderEngine || (ViewRenderEngine = {}));
21678
21692
 
21679
- var VERSION = "3.5.8";
21693
+ var VERSION = "3.6.0";
21680
21694
 
21681
21695
  export { VERSION, CesiumViewMonitor, ViewerUtils, MenuItemManager, EntityRenderEngine, MenuItemCreator, VisualsRegister, RenderManager, EntitiesIdsRenderManager, EntitiesLoadedRenderManager, EntitiesRenderManager, EntityRenderManager, TilesetCadRenderManager, TilesetArbRenderManager, TilesetEntitiesRenderManager, TilesetOsmRenderManager, TilesetPointcloudRenderManager, TilesetGooglePhotosRenderManager, DataSourceStaticKmlManager, RelationsRenderManager, SharedGetters, CesiumParabola, EntityLabel, ViewRenderEngine, TileRenderEngine, TilesetRenderEngine, CESIUM_INSPECTOR_KEY, ViewUtils, DrawingUtils, MeasureUtils, EntityUtils, CesiumEntityStyler, Draw3dPolygon, Draw3dPolyline };
21682
21696
  //# sourceMappingURL=bruce-cesium.es5.js.map