bruce-models 0.0.3 → 0.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.
@@ -43,7 +43,7 @@ __exportStar(require("./entity/entity"), exports);
43
43
  __exportStar(require("./entity/getters/view-monitor"), exports);
44
44
  __exportStar(require("./entity/getters/entity-globe"), exports);
45
45
  __exportStar(require("./entity/getters/entity-filter-getter"), exports);
46
- __exportStar(require("./entity/getters/entity-loaded-getter"), exports);
46
+ __exportStar(require("./entity/getters/batched-data-getter"), exports);
47
47
  __exportStar(require("./file/client-file"), exports);
48
48
  __exportStar(require("./program-key/program-key"), exports);
49
49
  __exportStar(require("./project/menu-item-zoom-control"), exports);
@@ -1 +1 @@
1
- {"version":3,"file":"bruce-models.js","sourceRoot":"","sources":["../../src/bruce-models.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,8DAA4C;AAE5C,qDAAmC;AACnC,4CAA0B;AAC1B,kDAAgC;AAChC,gDAA8B;AAC9B,gDAA8B;AAE9B,0DAAwC;AAExC,kDAAgC;AAChC,uDAAqC;AACrC,iDAA+B;AAC/B,kDAAgC;AAChC,kDAAgC;AAChC,iDAA+B;AAC/B,iDAA+B;AAC/B,uDAAqC;AACrC,sDAAoC;AACpC,oDAAkC;AAClC,qDAAmC;AACnC,+CAA6B;AAE7B,kEAAgD;AAChD,6DAA2C;AAC3C,0DAAwC;AACxC,uDAAqC;AACrC,sDAAoC;AACpC,gEAA8C;AAC9C,2DAAyC;AACzC,yDAAuC;AACvC,sDAAoC;AACpC,uDAAqC;AACrC,kDAAgC;AAChC,gEAA8C;AAC9C,gEAA8C;AAC9C,wEAAsD;AACtD,wEAAsD;AAEtD,qDAAmC;AAEnC,4DAA0C;AAE1C,mEAAiD;AACjD,sDAAoC;AACpC,kEAAgD;AAChD,yDAAuC;AAEvC,0DAAwC;AAExC,gDAA8B;AAE9B,wDAAsC;AACtC,uEAAqD;AACrD,6DAA2C;AAC3C,kEAAgD;AAChD,sEAAoD;AACpD,8DAA4C;AAC5C,+DAA6C;AAC7C,kEAAgD;AAChD,oDAAkC;AAElC,4CAA0B;AAE1B,oDAAkC;AAClC,iDAA+B;AAC/B,oDAAkC;AAClC,8CAA4B;AAE5B,uDAAqC;AACrC,oDAAkC;AAClC,sDAAoC;AACpC,oDAAkC"}
1
+ {"version":3,"file":"bruce-models.js","sourceRoot":"","sources":["../../src/bruce-models.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,8DAA4C;AAE5C,qDAAmC;AACnC,4CAA0B;AAC1B,kDAAgC;AAChC,gDAA8B;AAC9B,gDAA8B;AAE9B,0DAAwC;AAExC,kDAAgC;AAChC,uDAAqC;AACrC,iDAA+B;AAC/B,kDAAgC;AAChC,kDAAgC;AAChC,iDAA+B;AAC/B,iDAA+B;AAC/B,uDAAqC;AACrC,sDAAoC;AACpC,oDAAkC;AAClC,qDAAmC;AACnC,+CAA6B;AAE7B,kEAAgD;AAChD,6DAA2C;AAC3C,0DAAwC;AACxC,uDAAqC;AACrC,sDAAoC;AACpC,gEAA8C;AAC9C,2DAAyC;AACzC,yDAAuC;AACvC,sDAAoC;AACpC,uDAAqC;AACrC,kDAAgC;AAChC,gEAA8C;AAC9C,gEAA8C;AAC9C,wEAAsD;AACtD,uEAAqD;AAErD,qDAAmC;AAEnC,4DAA0C;AAE1C,mEAAiD;AACjD,sDAAoC;AACpC,kEAAgD;AAChD,yDAAuC;AAEvC,0DAAwC;AAExC,gDAA8B;AAE9B,wDAAsC;AACtC,uEAAqD;AACrD,6DAA2C;AAC3C,kEAAgD;AAChD,sEAAoD;AACpD,8DAA4C;AAC5C,+DAA6C;AAC7C,kEAAgD;AAChD,oDAAkC;AAElC,4CAA0B;AAE1B,oDAAkC;AAClC,iDAA+B;AAC/B,oDAAkC;AAClC,8CAA4B;AAE5B,uDAAqC;AACrC,oDAAkC;AAClC,sDAAoC;AACpC,oDAAkC"}
@@ -0,0 +1,77 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.BatchedDataGetter = void 0;
4
+ var bruce_event_1 = require("../../common/bruce-event");
5
+ var MAX_AREA_IN_DEGREES = 90;
6
+ var GETTER_DELAY = 50;
7
+ var BatchedDataGetter;
8
+ (function (BatchedDataGetter) {
9
+ var Getter = /** @class */ (function () {
10
+ function Getter(data, viewPort, batchSize) {
11
+ var _this = this;
12
+ this.viewPortRemoval = null;
13
+ this.viewRect = null;
14
+ this.viewCenter = null;
15
+ this.onUpdate = null;
16
+ this.data = data;
17
+ this.viewPort = viewPort;
18
+ this.batchSize = batchSize;
19
+ this.viewPortRemoval = this.viewPort.Updated().Subscribe(function () {
20
+ _this.updateBounds();
21
+ _this.startGetterLoop();
22
+ });
23
+ }
24
+ Object.defineProperty(Getter.prototype, "OnUpdate", {
25
+ get: function () {
26
+ if (!this.onUpdate) {
27
+ this.onUpdate = new bruce_event_1.BruceEvent();
28
+ }
29
+ return this.onUpdate;
30
+ },
31
+ enumerable: false,
32
+ configurable: true
33
+ });
34
+ Getter.prototype.Dispose = function () {
35
+ var _a;
36
+ (_a = this.viewPortRemoval) === null || _a === void 0 ? void 0 : _a.call(this);
37
+ };
38
+ Getter.prototype.updateBounds = function () {
39
+ var viewRect = this.viewPort.GetBounds();
40
+ var poi = this.viewPort.GetTarget();
41
+ if (viewRect && poi) {
42
+ if (Math.abs(viewRect.west - viewRect.east) > MAX_AREA_IN_DEGREES) {
43
+ return;
44
+ }
45
+ if (Math.abs(viewRect.south - viewRect.north) > MAX_AREA_IN_DEGREES) {
46
+ return;
47
+ }
48
+ this.viewRect = viewRect;
49
+ this.viewCenter = poi;
50
+ }
51
+ };
52
+ Getter.prototype.startGetterLoop = function () {
53
+ var _this = this;
54
+ clearInterval(this.getterInterval);
55
+ if (!this.viewRect || !this.viewCenter) {
56
+ return;
57
+ }
58
+ var index = 0;
59
+ this.getterInterval = setInterval(function () {
60
+ _this.processBatch(_this.data.slice(index, index + _this.batchSize));
61
+ index += _this.batchSize;
62
+ if (index >= _this.data.length) {
63
+ clearInterval(_this.getterInterval);
64
+ }
65
+ }, GETTER_DELAY);
66
+ };
67
+ Getter.prototype.processBatch = function (batch) {
68
+ var _a;
69
+ if (batch.length > 0) {
70
+ (_a = this.onUpdate) === null || _a === void 0 ? void 0 : _a.Trigger(batch);
71
+ }
72
+ };
73
+ return Getter;
74
+ }());
75
+ BatchedDataGetter.Getter = Getter;
76
+ })(BatchedDataGetter = exports.BatchedDataGetter || (exports.BatchedDataGetter = {}));
77
+ //# sourceMappingURL=batched-data-getter.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"batched-data-getter.js","sourceRoot":"","sources":["../../../../src/entity/getters/batched-data-getter.ts"],"names":[],"mappings":"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"}
@@ -9,20 +9,20 @@ var MenuItem;
9
9
  var EType;
10
10
  (function (EType) {
11
11
  EType["None"] = "NONE";
12
- EType["BruceEntities"] = "BruceEntity";
13
- EType["BruceEntity"] = "SingleEntity";
12
+ EType["Entities"] = "BruceEntity";
13
+ EType["Entity"] = "SingleEntity";
14
14
  EType["Osm"] = "OSMBuildingsTileset";
15
15
  EType["CadTileset"] = "ModelTileset";
16
16
  EType["ArbTileset"] = "Cesium3DTileset";
17
17
  EType["Kml"] = "StaticKML";
18
- EType["EntitiesTileset"] = "EntitiesTileset";
19
- EType["EntitiesRaster"] = "RasterEntitiesTileset";
18
+ EType["EntityTileset"] = "EntitiesTileset";
19
+ EType["EntityRaster"] = "RasterEntitiesTileset";
20
20
  EType["PointCloud"] = "PointCloudTileset";
21
21
  })(EType = MenuItem.EType || (MenuItem.EType = {}));
22
22
  function CreateFromEntityId(entityId, typeId, styleId) {
23
23
  return {
24
24
  id: object_utils_1.ObjectUtils.UId(),
25
- Type: EType.BruceEntity,
25
+ Type: EType.Entity,
26
26
  Caption: "Generated Entity Menu Item",
27
27
  BruceEntity: {
28
28
  "EntityType.ID": typeId,
@@ -42,7 +42,7 @@ var MenuItem;
42
42
  function CreateFromTypeId(typeId, styleId) {
43
43
  return {
44
44
  id: object_utils_1.ObjectUtils.UId(),
45
- Type: EType.BruceEntities,
45
+ Type: EType.Entities,
46
46
  Caption: "Generated Entity Type Menu Item",
47
47
  BruceEntity: {
48
48
  "EntityType.ID": typeId
@@ -73,7 +73,7 @@ var MenuItem;
73
73
  else if (type == tileset_1.Tileset.EType.EntitiesSet) {
74
74
  return {
75
75
  id: object_utils_1.ObjectUtils.UId(),
76
- Type: EType.EntitiesTileset,
76
+ Type: EType.EntityTileset,
77
77
  Caption: "Generated Entities Menu Item",
78
78
  FlyTo: false,
79
79
  tileset: {
@@ -95,7 +95,7 @@ var MenuItem;
95
95
  else if (type == tileset_1.Tileset.EType.EntitiesMap) {
96
96
  return {
97
97
  id: object_utils_1.ObjectUtils.UId(),
98
- Type: EType.EntitiesRaster,
98
+ Type: EType.EntityRaster,
99
99
  Caption: "Generated Entities Menu Item",
100
100
  tileset: {
101
101
  TilesetID: tilesetId
@@ -1 +1 @@
1
- {"version":3,"file":"menu-item.js","sourceRoot":"","sources":["../../../src/project/menu-item.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"menu-item.js","sourceRoot":"","sources":["../../../src/project/menu-item.ts"],"names":[],"mappings":"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"}
@@ -31,7 +31,7 @@ export * from "./entity/entity";
31
31
  export * from "./entity/getters/view-monitor";
32
32
  export * from "./entity/getters/entity-globe";
33
33
  export * from "./entity/getters/entity-filter-getter";
34
- export * from "./entity/getters/entity-loaded-getter";
34
+ export * from "./entity/getters/batched-data-getter";
35
35
  export * from "./file/client-file";
36
36
  export * from "./program-key/program-key";
37
37
  export * from "./project/menu-item-zoom-control";
@@ -0,0 +1,20 @@
1
+ import { BruceEvent } from "../../common/bruce-event";
2
+ import { ViewMonitor } from "./view-monitor";
3
+ export declare namespace BatchedDataGetter {
4
+ class Getter<T> {
5
+ private viewPort;
6
+ private viewPortRemoval;
7
+ private batchSize;
8
+ private viewRect;
9
+ private viewCenter;
10
+ private getterInterval;
11
+ private data;
12
+ private onUpdate;
13
+ get OnUpdate(): BruceEvent<T[]>;
14
+ constructor(data: T[], viewPort: ViewMonitor.IMonitor, batchSize: number);
15
+ Dispose(): void;
16
+ private updateBounds;
17
+ private startGetterLoop;
18
+ private processBatch;
19
+ }
20
+ }
@@ -3,14 +3,14 @@ import { MenuItemZoomControl } from "./menu-item-zoom-control";
3
3
  export declare namespace MenuItem {
4
4
  enum EType {
5
5
  None = "NONE",
6
- BruceEntities = "BruceEntity",
7
- BruceEntity = "SingleEntity",
6
+ Entities = "BruceEntity",
7
+ Entity = "SingleEntity",
8
8
  Osm = "OSMBuildingsTileset",
9
9
  CadTileset = "ModelTileset",
10
10
  ArbTileset = "Cesium3DTileset",
11
11
  Kml = "StaticKML",
12
- EntitiesTileset = "EntitiesTileset",
13
- EntitiesRaster = "RasterEntitiesTileset",
12
+ EntityTileset = "EntitiesTileset",
13
+ EntityRaster = "RasterEntitiesTileset",
14
14
  PointCloud = "PointCloudTileset"
15
15
  }
16
16
  interface ILegend {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "bruce-models",
3
- "version": "0.0.3",
3
+ "version": "0.0.5",
4
4
  "description": "",
5
5
  "keywords": [],
6
6
  "main": "dist/bruce-models.umd.js",
@@ -1,74 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.EntityLoadedGetter = void 0;
4
- var bruce_event_1 = require("../../common/bruce-event");
5
- var MAX_AREA_IN_DEGREES = 90;
6
- var GETTER_DELAY = 50;
7
- var EntityLoadedGetter = /** @class */ (function () {
8
- function EntityLoadedGetter(entities, viewPort, batchSize) {
9
- var _this = this;
10
- this.viewPortRemoval = null;
11
- this.viewRect = null;
12
- this.viewCenter = null;
13
- this.onUpdate = null;
14
- this.entities = entities;
15
- this.viewPort = viewPort;
16
- this.batchSize = batchSize;
17
- this.viewPortRemoval = this.viewPort.Updated().Subscribe(function () {
18
- _this.updateBounds();
19
- _this.startGetterLoop();
20
- });
21
- }
22
- Object.defineProperty(EntityLoadedGetter.prototype, "OnUpdate", {
23
- get: function () {
24
- if (!this.onUpdate) {
25
- this.onUpdate = new bruce_event_1.BruceEvent();
26
- }
27
- return this.onUpdate;
28
- },
29
- enumerable: false,
30
- configurable: true
31
- });
32
- EntityLoadedGetter.prototype.Dispose = function () {
33
- var _a;
34
- (_a = this.viewPortRemoval) === null || _a === void 0 ? void 0 : _a.call(this);
35
- };
36
- EntityLoadedGetter.prototype.updateBounds = function () {
37
- var viewRect = this.viewPort.GetBounds();
38
- var poi = this.viewPort.GetTarget();
39
- if (viewRect && poi) {
40
- if (Math.abs(viewRect.west - viewRect.east) > MAX_AREA_IN_DEGREES) {
41
- return;
42
- }
43
- if (Math.abs(viewRect.south - viewRect.north) > MAX_AREA_IN_DEGREES) {
44
- return;
45
- }
46
- this.viewRect = viewRect;
47
- this.viewCenter = poi;
48
- }
49
- };
50
- EntityLoadedGetter.prototype.startGetterLoop = function () {
51
- var _this = this;
52
- clearInterval(this.getterInterval);
53
- if (!this.viewRect || !this.viewCenter) {
54
- return;
55
- }
56
- var index = 0;
57
- this.getterInterval = setInterval(function () {
58
- _this.processBatch(_this.entities.slice(index, index + _this.batchSize));
59
- index += _this.batchSize;
60
- if (index >= _this.entities.length) {
61
- clearInterval(_this.getterInterval);
62
- }
63
- }, GETTER_DELAY);
64
- };
65
- EntityLoadedGetter.prototype.processBatch = function (batch) {
66
- var _a;
67
- if (batch.length > 0) {
68
- (_a = this.onUpdate) === null || _a === void 0 ? void 0 : _a.Trigger(batch);
69
- }
70
- };
71
- return EntityLoadedGetter;
72
- }());
73
- exports.EntityLoadedGetter = EntityLoadedGetter;
74
- //# sourceMappingURL=entity-loaded-getter.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"entity-loaded-getter.js","sourceRoot":"","sources":["../../../../src/entity/getters/entity-loaded-getter.ts"],"names":[],"mappings":";;;AACA,wDAAsD;AAKtD,IAAM,mBAAmB,GAAG,EAAE,CAAC;AAC/B,IAAM,YAAY,GAAG,EAAE,CAAC;AAExB;IAmBI,4BAAmB,QAA0B,EAAE,QAA8B,EAAE,SAAiB;QAAhG,iBAQC;QAzBO,oBAAe,GAAoB,IAAI,CAAC;QAGxC,aAAQ,GAA2B,IAAI,CAAC;QACxC,eAAU,GAAsB,IAAI,CAAC;QAIrC,aAAQ,GAAsC,IAAI,CAAC;QAUvD,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QACzB,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QACzB,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;QAC3B,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC,SAAS,CAAC;YACrD,KAAI,CAAC,YAAY,EAAE,CAAC;YACpB,KAAI,CAAC,eAAe,EAAE,CAAC;QAC3B,CAAC,CAAC,CAAC;IACP,CAAC;IAhBD,sBAAW,wCAAQ;aAAnB;YACI,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE;gBAChB,IAAI,CAAC,QAAQ,GAAG,IAAI,wBAAU,EAAoB,CAAC;aACtD;YACD,OAAO,IAAI,CAAC,QAAQ,CAAC;QACzB,CAAC;;;OAAA;IAaM,oCAAO,GAAd;;QACI,MAAA,IAAI,CAAC,eAAe,+CAApB,IAAI,EAAqB;IAC7B,CAAC;IAEO,yCAAY,GAApB;QACI,IAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,SAAS,EAAE,CAAC;QAC3C,IAAM,GAAG,GAAG,IAAI,CAAC,QAAQ,CAAC,SAAS,EAAE,CAAC;QACtC,IAAI,QAAQ,IAAI,GAAG,EAAE;YACjB,IAAI,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,GAAG,QAAQ,CAAC,IAAI,CAAC,GAAG,mBAAmB,EAAE;gBAC/D,OAAO;aACV;YACD,IAAI,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,KAAK,GAAG,QAAQ,CAAC,KAAK,CAAC,GAAG,mBAAmB,EAAE;gBACjE,OAAO;aACV;YACD,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;YACzB,IAAI,CAAC,UAAU,GAAG,GAAG,CAAC;SACzB;IACL,CAAC;IAEO,4CAAe,GAAvB;QAAA,iBAaC;QAZG,aAAa,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;QACnC,IAAI,CAAC,IAAI,CAAC,QAAQ,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE;YACpC,OAAO;SACV;QACD,IAAI,KAAK,GAAG,CAAC,CAAC;QACd,IAAI,CAAC,cAAc,GAAG,WAAW,CAAC;YAC9B,KAAI,CAAC,YAAY,CAAC,KAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,KAAK,EAAE,KAAK,GAAG,KAAI,CAAC,SAAS,CAAC,CAAC,CAAC;YACtE,KAAK,IAAI,KAAI,CAAC,SAAS,CAAC;YACxB,IAAI,KAAK,IAAI,KAAI,CAAC,QAAQ,CAAC,MAAM,EAAE;gBAC/B,aAAa,CAAC,KAAI,CAAC,cAAc,CAAC,CAAC;aACtC;QACL,CAAC,EAAE,YAAY,CAAC,CAAC;IACrB,CAAC;IAEO,yCAAY,GAApB,UAAqB,KAAuB;;QACxC,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE;YAClB,MAAA,IAAI,CAAC,QAAQ,0CAAE,OAAO,CAAC,KAAK,EAAE;SACjC;IACL,CAAC;IACL,yBAAC;AAAD,CAAC,AApED,IAoEC;AApEY,gDAAkB"}
@@ -1,19 +0,0 @@
1
- import { BruceEvent } from "../../common/bruce-event";
2
- import { Entity } from "../entity";
3
- import { ViewMonitor } from "./view-monitor";
4
- export declare class EntityLoadedGetter {
5
- private viewPort;
6
- private viewPortRemoval;
7
- private batchSize;
8
- private viewRect;
9
- private viewCenter;
10
- private getterInterval;
11
- private entities;
12
- private onUpdate;
13
- get OnUpdate(): BruceEvent<Entity.IEntity[]>;
14
- constructor(entities: Entity.IEntity[], viewPort: ViewMonitor.IMonitor, batchSize: number);
15
- Dispose(): void;
16
- private updateBounds;
17
- private startGetterLoop;
18
- private processBatch;
19
- }