bruce-cesium 3.6.9 → 3.7.1

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, DistanceDisplayCondition, NearFarScalar, Model, Entity, HorizontalOrigin, VerticalOrigin, ClassificationType, ArcType, CornerType, ShadowMode, PolygonHierarchy, PolylineGraphics, HeadingPitchRoll, Transforms, ColorBlendMode, Primitive, Cesium3DTileFeature, SceneMode, GeoJsonDataSource, ColorMaterialProperty, Cesium3DTileColorBlendMode, HeadingPitchRange, Cesium3DTileStyle, Ion, KmlDataSource, OrthographicFrustum, EasingFunction, SceneTransforms, EllipsoidTerrainProvider, BingMapsImageryProvider, BingMapsStyle, MapboxImageryProvider, MapboxStyleImageryProvider, ArcGisMapServerImageryProvider, OpenStreetMapImageryProvider, GridImageryProvider, GeographicTilingScheme, ImageryLayer, UrlTemplateImageryProvider, TileMapServiceImageryProvider, IonImageryProvider, CesiumTerrainProvider, Cesium3DTileset, Matrix4, Matrix3, IonResource, CesiumInspector, defined, ClockRange, EllipsoidGeodesic, sampleTerrainMostDetailed, PolygonPipeline, BoundingSphere, GeometryInstance, ModelGraphics, PolygonGraphics, CorridorGraphics, PointGraphics, BillboardGraphics, EllipseGraphics, ScreenSpaceEventHandler, ScreenSpaceEventType, Intersect, CzmlDataSource, Quaternion } from 'cesium';
3
+ import { Cartographic, Cartesian2, Math as Math$1, Cartesian3, CallbackProperty, Color, HeightReference, Rectangle, JulianDate, SceneMode, DistanceDisplayCondition, NearFarScalar, Model, Entity, HorizontalOrigin, VerticalOrigin, ClassificationType, ArcType, CornerType, ShadowMode, PolygonHierarchy, PolylineGraphics, HeadingPitchRoll, Transforms, ColorBlendMode, GeoJsonDataSource, ColorMaterialProperty, Primitive, Cesium3DTileFeature, Cesium3DTileColorBlendMode, HeadingPitchRange, Ion, Cesium3DTileStyle, KmlDataSource, SceneTransforms, OrthographicFrustum, EasingFunction, EllipsoidTerrainProvider, BingMapsImageryProvider, BingMapsStyle, MapboxImageryProvider, MapboxStyleImageryProvider, ArcGisMapServerImageryProvider, OpenStreetMapImageryProvider, GridImageryProvider, GeographicTilingScheme, ImageryLayer, UrlTemplateImageryProvider, TileMapServiceImageryProvider, IonImageryProvider, CesiumTerrainProvider, Cesium3DTileset, Matrix4, Matrix3, IonResource, CesiumInspector, defined, ClockRange, EllipsoidGeodesic, sampleTerrainMostDetailed, BoundingSphere, GeometryInstance, PolygonPipeline, ScreenSpaceEventHandler, ScreenSpaceEventType, ModelGraphics, PolygonGraphics, CorridorGraphics, PointGraphics, BillboardGraphics, EllipseGraphics, Intersect, CzmlDataSource, Quaternion } from 'cesium';
4
4
 
5
5
  /*! *****************************************************************************
6
6
  Copyright (c) Microsoft Corporation. All rights reserved.
@@ -4669,7 +4669,7 @@ var EntityRenderEngine;
4669
4669
  function Render(params) {
4670
4670
  var _a, _b;
4671
4671
  return __awaiter(this, void 0, void 0, function () {
4672
- var entity, style, type, cEntity, siblings, iconUrlRows, icon, iconUrl, metadata, api, image, e_5, iconScale, disableDepthTest, bColor, cColor, heightRef, radius, bFill, cFill, outline, cOutline, outlineWidth, bOutline, heightRef, pos3d, extrusion, outlineExtrusion, bColor, cColor, size, heightRef, circleBillboard;
4672
+ var entity, style, type, cEntity, siblings, iconUrlRows, icon, iconUrl, metadata, api, image, e_5, iconScale, disableDepthTest, bColor, cColor, heightRef, radius, bFill, cFill, outline, cOutline, outlineWidth, bOutline, heightRef, pos3d, extrusion, outlineExtrusion, bColor, cColor, size, heightRef, circleBillboard, disableDepthTest;
4673
4673
  return __generator(this, function (_c) {
4674
4674
  switch (_c.label) {
4675
4675
  case 0:
@@ -4855,6 +4855,7 @@ var EntityRenderEngine;
4855
4855
  }
4856
4856
  heightRef = getHeightRef(style);
4857
4857
  circleBillboard = createCircleBillboard(size, cColor.toCssColorString());
4858
+ disableDepthTest = Boolean(style.renderOnTop);
4858
4859
  cEntity = new Entity({
4859
4860
  id: ObjectUtils.UId(10),
4860
4861
  // point: {
@@ -4871,7 +4872,8 @@ var EntityRenderEngine;
4871
4872
  width: circleBillboard.width,
4872
4873
  image: circleBillboard.canvas,
4873
4874
  heightReference: heightRef,
4874
- distanceDisplayCondition: getDisplayCondition(params.minDistance, params.maxDistance)
4875
+ distanceDisplayCondition: getDisplayCondition(params.minDistance, params.maxDistance),
4876
+ disableDepthTestDistance: disableDepthTest ? Number.POSITIVE_INFINITY : undefined
4875
4877
  },
4876
4878
  position: EntityUtils.GetPos({
4877
4879
  viewer: params.viewer,
@@ -15634,8 +15636,6 @@ var DataSourceStaticCsvManager;
15634
15636
  });
15635
15637
  }
15636
15638
  }
15637
- // Register alarms (and any other Entities that were created).
15638
- console.log("entityMapping", entityMapping);
15639
15639
  cesiumEntityIds = Object.keys(entityMapping);
15640
15640
  for (i = 0; i < cesiumEntityIds.length; i++) {
15641
15641
  cesiumEntityId = cesiumEntityIds[i];
@@ -15770,6 +15770,7 @@ function createJourneyCzml(vehicleId, vehicleFileUrl, alarmFileUrl, lineColor, d
15770
15770
  "name": "Path Segment",
15771
15771
  "availability": startTime + "/" + endTime,
15772
15772
  "polyline": {
15773
+ "clampToGround": true,
15773
15774
  "positions": {
15774
15775
  "cartographicDegrees": position.concat(nextPosition)
15775
15776
  },
@@ -15806,14 +15807,16 @@ function createJourneyCzml(vehicleId, vehicleFileUrl, alarmFileUrl, lineColor, d
15806
15807
  "pixelSize": 10,
15807
15808
  "color": {
15808
15809
  "rgba": [255, 0, 0, 255]
15809
- }
15810
+ },
15811
+ "heightReference": "CLAMP_TO_GROUND"
15810
15812
  } : undefined,
15811
15813
  "billboard": alarmFileUrl ? {
15812
15814
  "image": alarmFileUrl,
15813
15815
  "scale": 1,
15814
15816
  "pixelOffset": {
15815
15817
  "cartesian2": [0, 0]
15816
- }
15818
+ },
15819
+ "heightReference": "CLAMP_TO_GROUND"
15817
15820
  } : undefined
15818
15821
  });
15819
15822
  var entityId = entityIdIndex > -1 ? row[entityIdIndex] : null;
@@ -15823,21 +15826,26 @@ function createJourneyCzml(vehicleId, vehicleFileUrl, alarmFileUrl, lineColor, d
15823
15826
  });
15824
15827
  }
15825
15828
  // Add animated point for the moving item.
15826
- var vehiclePositions = rows.map(function (row) { return [
15827
- (new Date(row[dateTimeIndex]).getTime() - new Date(rows[0][dateTimeIndex]).getTime()) / 1000,
15828
- Number(row[lonIndex]),
15829
- Number(row[latIndex]),
15830
- 0
15831
- ]; }).flat();
15829
+ var vehiclePositions = rows.map(function (row) {
15830
+ var position = [
15831
+ (new Date(row[dateTimeIndex]).getTime() - new Date(rows[0][dateTimeIndex]).getTime()) / 1000,
15832
+ Number(row[lonIndex]),
15833
+ Number(row[latIndex]),
15834
+ 0
15835
+ ];
15836
+ return position;
15837
+ }).flat();
15832
15838
  czml.push({
15833
15839
  "id": vehicleId,
15834
15840
  "name": "Vehicle",
15835
15841
  "availability": rows[0][dateTimeIndex] + "/" + rows[rows.length - 1][dateTimeIndex],
15836
15842
  "model": vehicleFileUrl ? {
15843
+ "heightReference": "CLAMP_TO_GROUND",
15837
15844
  "gltf": vehicleFileUrl,
15838
15845
  "scale": 1
15839
15846
  } : undefined,
15840
15847
  "point": !vehicleFileUrl ? {
15848
+ "heightReference": "CLAMP_TO_GROUND",
15841
15849
  "pixelSize": 20,
15842
15850
  "color": {
15843
15851
  "rgba": [0, 0, 255, 255]
@@ -15924,8 +15932,18 @@ function interpolateHeading(dateTimeIndex, rows, currentTime, headingIndex) {
15924
15932
  }
15925
15933
  }
15926
15934
  if (nearestBefore && nearestAfter) {
15935
+ // Normalize headings to handle wraparound from 359 to 0.
15936
+ var deltaHeading = nearestAfter.heading - nearestBefore.heading;
15937
+ if (deltaHeading > 180) {
15938
+ deltaHeading -= 360;
15939
+ }
15940
+ else if (deltaHeading < -180) {
15941
+ deltaHeading += 360;
15942
+ }
15927
15943
  var factor = (currentTimeMs - nearestBefore.time) / (nearestAfter.time - nearestBefore.time);
15928
- return nearestBefore.heading + factor * (nearestAfter.heading - nearestBefore.heading);
15944
+ var interpolatedHeading = nearestBefore.heading + factor * deltaHeading;
15945
+ interpolatedHeading = (interpolatedHeading + 360) % 360;
15946
+ return interpolatedHeading;
15929
15947
  }
15930
15948
  else if (nearestBefore) {
15931
15949
  return nearestBefore.heading;
@@ -22508,7 +22526,7 @@ var ViewRenderEngine;
22508
22526
  ViewRenderEngine.Render = Render;
22509
22527
  })(ViewRenderEngine || (ViewRenderEngine = {}));
22510
22528
 
22511
- var VERSION = "3.6.9";
22529
+ var VERSION = "3.7.1";
22512
22530
 
22513
22531
  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, CESIUM_TIMELINE_KEY, ViewUtils, DrawingUtils, MeasureUtils, EntityUtils, CesiumEntityStyler, Draw3dPolygon, Draw3dPolyline };
22514
22532
  //# sourceMappingURL=bruce-cesium.es5.js.map