@itwin/core-frontend 5.7.0-dev.12 → 5.7.0-dev.14

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.
@@ -38,6 +38,14 @@ export declare class CategorySelectorState extends ElementState {
38
38
  addCategories(arg: Id64Arg): void;
39
39
  /** Remove one or more categories from this CategorySelector */
40
40
  dropCategories(arg: Id64Arg): void;
41
+ /** Add one or more categories to this CategorySelector, raising a single batch event instead of one event per category.
42
+ * This is more efficient than [[addCategories]] when adding many categories at once.
43
+ */
44
+ addCategoriesBatched(arg: Id64Arg): void;
45
+ /** Remove one or more categories from this CategorySelector, raising a single batch event instead of one event per category.
46
+ * This is more efficient than [[dropCategories]] when dropping many categories at once.
47
+ */
48
+ dropCategoriesBatched(arg: Id64Arg): void;
41
49
  /** Add or remove categories from this CategorySelector.
42
50
  * @param arg The categories to add or remove
43
51
  * @param add If true, categories will be added; otherwise they will be removed.
@@ -1 +1 @@
1
- {"version":3,"file":"CategorySelectorState.d.ts","sourceRoot":"","sources":["../../src/CategorySelectorState.ts"],"names":[],"mappings":"AAIA;;GAEG;AACH,OAAO,EAAQ,OAAO,EAAE,UAAU,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAC/E,OAAO,EAAE,qBAAqB,EAAE,MAAM,oBAAoB,CAAC;AAC3D,OAAO,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAC7C,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAEtD;;;;;;;;;GASG;AACH,qBAAa,qBAAsB,SAAQ,YAAY;IACrD,WAA2B,SAAS,WAAiC;IAErE,OAAO,CAAC,QAAQ,CAAC,WAAW,CAA+B;gBAE/C,KAAK,EAAE,qBAAqB,EAAE,MAAM,EAAE,gBAAgB;IAMlE,IAAW,UAAU,IAAI,GAAG,CAAC,MAAM,CAAC,CAEnC;IAED,IAAW,UAAU,CAAC,UAAU,EAAE,GAAG,CAAC,MAAM,CAAC,EAI5C;IAED,gBAAgB;IAChB,IAAW,oBAAoB,IAAI,aAAa,CAAC,MAAM,CAAC,CAEvD;IAEe,MAAM,IAAI,qBAAqB;IAO/C;;OAEG;IACI,UAAU,CAAC,KAAK,EAAE,qBAAqB,GAAG,OAAO;IAWxD,wCAAwC;IACxC,IAAW,IAAI,IAAI,MAAM,CAA4B;IAErD,uFAAuF;IAChF,GAAG,CAAC,EAAE,EAAE,UAAU,GAAG,OAAO;IAEnC,8EAA8E;IACvE,gBAAgB,CAAC,UAAU,EAAE,UAAU,GAAG,OAAO;IAExD,0DAA0D;IACnD,aAAa,CAAC,GAAG,EAAE,OAAO,GAAG,IAAI;IAKxC,+DAA+D;IACxD,cAAc,CAAC,GAAG,EAAE,OAAO;IAKlC;;;OAGG;IACI,qBAAqB,CAAC,GAAG,EAAE,OAAO,EAAE,GAAG,EAAE,OAAO,GAAG,IAAI;CAM/D"}
1
+ {"version":3,"file":"CategorySelectorState.d.ts","sourceRoot":"","sources":["../../src/CategorySelectorState.ts"],"names":[],"mappings":"AAIA;;GAEG;AACH,OAAO,EAAQ,OAAO,EAAE,UAAU,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAC/E,OAAO,EAAE,qBAAqB,EAAE,MAAM,oBAAoB,CAAC;AAC3D,OAAO,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAC7C,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAEtD;;;;;;;;;GASG;AACH,qBAAa,qBAAsB,SAAQ,YAAY;IACrD,WAA2B,SAAS,WAAiC;IAErE,OAAO,CAAC,QAAQ,CAAC,WAAW,CAA+B;gBAE/C,KAAK,EAAE,qBAAqB,EAAE,MAAM,EAAE,gBAAgB;IAMlE,IAAW,UAAU,IAAI,GAAG,CAAC,MAAM,CAAC,CAEnC;IAED,IAAW,UAAU,CAAC,UAAU,EAAE,GAAG,CAAC,MAAM,CAAC,EAI5C;IAED,gBAAgB;IAChB,IAAW,oBAAoB,IAAI,aAAa,CAAC,MAAM,CAAC,CAEvD;IAEe,MAAM,IAAI,qBAAqB;IAO/C;;OAEG;IACI,UAAU,CAAC,KAAK,EAAE,qBAAqB,GAAG,OAAO;IAWxD,wCAAwC;IACxC,IAAW,IAAI,IAAI,MAAM,CAA4B;IAErD,uFAAuF;IAChF,GAAG,CAAC,EAAE,EAAE,UAAU,GAAG,OAAO;IAEnC,8EAA8E;IACvE,gBAAgB,CAAC,UAAU,EAAE,UAAU,GAAG,OAAO;IAExD,0DAA0D;IACnD,aAAa,CAAC,GAAG,EAAE,OAAO,GAAG,IAAI;IAKxC,+DAA+D;IACxD,cAAc,CAAC,GAAG,EAAE,OAAO;IAKlC;;OAEG;IACI,oBAAoB,CAAC,GAAG,EAAE,OAAO,GAAG,IAAI;IAI/C;;OAEG;IACI,qBAAqB,CAAC,GAAG,EAAE,OAAO,GAAG,IAAI;IAIhD;;;OAGG;IACI,qBAAqB,CAAC,GAAG,EAAE,OAAO,EAAE,GAAG,EAAE,OAAO,GAAG,IAAI;CAM/D"}
@@ -73,6 +73,18 @@ class CategorySelectorState extends EntityState_1.ElementState {
73
73
  for (const id of core_bentley_1.Id64.iterable(arg))
74
74
  this.categories.delete(id);
75
75
  }
76
+ /** Add one or more categories to this CategorySelector, raising a single batch event instead of one event per category.
77
+ * This is more efficient than [[addCategories]] when adding many categories at once.
78
+ */
79
+ addCategoriesBatched(arg) {
80
+ this._categories.addAll(core_bentley_1.Id64.iterable(arg));
81
+ }
82
+ /** Remove one or more categories from this CategorySelector, raising a single batch event instead of one event per category.
83
+ * This is more efficient than [[dropCategories]] when dropping many categories at once.
84
+ */
85
+ dropCategoriesBatched(arg) {
86
+ this._categories.deleteAll(core_bentley_1.Id64.iterable(arg));
87
+ }
76
88
  /** Add or remove categories from this CategorySelector.
77
89
  * @param arg The categories to add or remove
78
90
  * @param add If true, categories will be added; otherwise they will be removed.
@@ -1 +1 @@
1
- {"version":3,"file":"CategorySelectorState.js","sourceRoot":"","sources":["../../src/CategorySelectorState.ts"],"names":[],"mappings":"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","sourcesContent":["/*---------------------------------------------------------------------------------------------\r\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\r\n* See LICENSE.md in the project root for license terms and full copyright notice.\r\n*--------------------------------------------------------------------------------------------*/\r\n/** @packageDocumentation\r\n * @module Views\r\n */\r\nimport { Id64, Id64Arg, Id64String, ObservableSet } from \"@itwin/core-bentley\";\r\nimport { CategorySelectorProps } from \"@itwin/core-common\";\r\nimport { ElementState } from \"./EntityState\";\r\nimport { IModelConnection } from \"./IModelConnection\";\r\n\r\n/** A set of Categories to be displayed in a [[ViewState]].\r\n * Elements belonging to categories not specified in the category selector will not be drawn in the view.\r\n * By default, geometry belonging to any [[SubCategory]] of a visible Category is also visible in the view,\r\n * unless the [[SubCategoryAppearance]] or [[SubCategoryOverride]] specifies that it should be invisible.\r\n * @note To change the set of categories visible in a [[ViewState]] currently associated with a [[Viewport]],\r\n * use [[ViewState.changeCategoryDisplay]] to ensure the view updates appropriately on screen.\r\n * @see [[Category]]\r\n * @public\r\n * @extensions\r\n */\r\nexport class CategorySelectorState extends ElementState {\r\n public static override get className() { return \"CategorySelector\"; }\r\n\r\n private readonly _categories = new ObservableSet<string>();\r\n\r\n constructor(props: CategorySelectorProps, iModel: IModelConnection) {\r\n super(props, iModel);\r\n if (props.categories)\r\n props.categories.forEach((cat) => this.categories.add(cat));\r\n }\r\n\r\n public get categories(): Set<string> {\r\n return this._categories;\r\n }\r\n\r\n public set categories(categories: Set<string>) {\r\n this._categories.clear();\r\n for (const category of categories)\r\n this._categories.add(category);\r\n }\r\n\r\n /** @internal */\r\n public get observableCategories(): ObservableSet<string> {\r\n return this._categories;\r\n }\r\n\r\n public override toJSON(): CategorySelectorProps {\r\n const val = super.toJSON() as CategorySelectorProps;\r\n val.categories = [];\r\n this.categories.forEach((cat) => val.categories.push(cat));\r\n return val;\r\n }\r\n\r\n /** Returns true if this category selector is logically equivalent to the specified category selector.\r\n * Two category selectors are logically equivalent if they have the same name and Id and contain the same set of category Ids.\r\n */\r\n public equalState(other: CategorySelectorState): boolean {\r\n if (this.categories.size !== other.categories.size || this.name !== other.name || this.id !== other.id)\r\n return false;\r\n\r\n for (const cat of this.categories)\r\n if (!other.categories.has(cat))\r\n return false;\r\n\r\n return true;\r\n }\r\n\r\n /** The name of this CategorySelector */\r\n public get name(): string { return this.code.value; }\r\n\r\n /** Determine whether this CategorySelector includes the specified categoryId string */\r\n public has(id: Id64String): boolean { return this.categories.has(id); }\r\n\r\n /** Determine whether this CategorySelector includes the specified category */\r\n public isCategoryViewed(categoryId: Id64String): boolean { return this.has(categoryId); }\r\n\r\n /** Add one or more categories to this CategorySelector */\r\n public addCategories(arg: Id64Arg): void {\r\n for (const id of Id64.iterable(arg))\r\n this.categories.add(id);\r\n }\r\n\r\n /** Remove one or more categories from this CategorySelector */\r\n public dropCategories(arg: Id64Arg) {\r\n for (const id of Id64.iterable(arg))\r\n this.categories.delete(id);\r\n }\r\n\r\n /** Add or remove categories from this CategorySelector.\r\n * @param arg The categories to add or remove\r\n * @param add If true, categories will be added; otherwise they will be removed.\r\n */\r\n public changeCategoryDisplay(arg: Id64Arg, add: boolean): void {\r\n if (add)\r\n this.addCategories(arg);\r\n else\r\n this.dropCategories(arg);\r\n }\r\n}\r\n"]}
1
+ {"version":3,"file":"CategorySelectorState.js","sourceRoot":"","sources":["../../src/CategorySelectorState.ts"],"names":[],"mappings":";;;AAAA;;;+FAG+F;AAC/F;;GAEG;AACH,sDAA+E;AAE/E,+CAA6C;AAG7C;;;;;;;;;GASG;AACH,MAAa,qBAAsB,SAAQ,0BAAY;IAC9C,MAAM,KAAc,SAAS,KAAK,OAAO,kBAAkB,CAAC,CAAC,CAAC;IAEpD,WAAW,GAAG,IAAI,4BAAa,EAAU,CAAC;IAE3D,YAAY,KAA4B,EAAE,MAAwB;QAChE,KAAK,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;QACrB,IAAI,KAAK,CAAC,UAAU;YAClB,KAAK,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC;IAChE,CAAC;IAED,IAAW,UAAU;QACnB,OAAO,IAAI,CAAC,WAAW,CAAC;IAC1B,CAAC;IAED,IAAW,UAAU,CAAC,UAAuB;QAC3C,IAAI,CAAC,WAAW,CAAC,KAAK,EAAE,CAAC;QACzB,KAAK,MAAM,QAAQ,IAAI,UAAU;YAC/B,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;IACnC,CAAC;IAED,gBAAgB;IAChB,IAAW,oBAAoB;QAC7B,OAAO,IAAI,CAAC,WAAW,CAAC;IAC1B,CAAC;IAEe,MAAM;QACpB,MAAM,GAAG,GAAG,KAAK,CAAC,MAAM,EAA2B,CAAC;QACpD,GAAG,CAAC,UAAU,GAAG,EAAE,CAAC;QACpB,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;QAC3D,OAAO,GAAG,CAAC;IACb,CAAC;IAED;;OAEG;IACI,UAAU,CAAC,KAA4B;QAC5C,IAAI,IAAI,CAAC,UAAU,CAAC,IAAI,KAAK,KAAK,CAAC,UAAU,CAAC,IAAI,IAAI,IAAI,CAAC,IAAI,KAAK,KAAK,CAAC,IAAI,IAAI,IAAI,CAAC,EAAE,KAAK,KAAK,CAAC,EAAE;YACpG,OAAO,KAAK,CAAC;QAEf,KAAK,MAAM,GAAG,IAAI,IAAI,CAAC,UAAU;YAC/B,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,GAAG,CAAC,GAAG,CAAC;gBAC5B,OAAO,KAAK,CAAC;QAEjB,OAAO,IAAI,CAAC;IACd,CAAC;IAED,wCAAwC;IACxC,IAAW,IAAI,KAAa,OAAO,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;IAErD,uFAAuF;IAChF,GAAG,CAAC,EAAc,IAAa,OAAO,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;IAEvE,8EAA8E;IACvE,gBAAgB,CAAC,UAAsB,IAAa,OAAO,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;IAEzF,0DAA0D;IACnD,aAAa,CAAC,GAAY;QAC/B,KAAK,MAAM,EAAE,IAAI,mBAAI,CAAC,QAAQ,CAAC,GAAG,CAAC;YACjC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAC5B,CAAC;IAED,+DAA+D;IACxD,cAAc,CAAC,GAAY;QAChC,KAAK,MAAM,EAAE,IAAI,mBAAI,CAAC,QAAQ,CAAC,GAAG,CAAC;YACjC,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;IAC/B,CAAC;IAED;;OAEG;IACI,oBAAoB,CAAC,GAAY;QACtC,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,mBAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC;IAC9C,CAAC;IAED;;OAEG;IACI,qBAAqB,CAAC,GAAY;QACvC,IAAI,CAAC,WAAW,CAAC,SAAS,CAAC,mBAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC;IACjD,CAAC;IAED;;;OAGG;IACI,qBAAqB,CAAC,GAAY,EAAE,GAAY;QACrD,IAAI,GAAG;YACL,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC;;YAExB,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC;IAC7B,CAAC;CACF;AA5FD,sDA4FC","sourcesContent":["/*---------------------------------------------------------------------------------------------\r\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\r\n* See LICENSE.md in the project root for license terms and full copyright notice.\r\n*--------------------------------------------------------------------------------------------*/\r\n/** @packageDocumentation\r\n * @module Views\r\n */\r\nimport { Id64, Id64Arg, Id64String, ObservableSet } from \"@itwin/core-bentley\";\r\nimport { CategorySelectorProps } from \"@itwin/core-common\";\r\nimport { ElementState } from \"./EntityState\";\r\nimport { IModelConnection } from \"./IModelConnection\";\r\n\r\n/** A set of Categories to be displayed in a [[ViewState]].\r\n * Elements belonging to categories not specified in the category selector will not be drawn in the view.\r\n * By default, geometry belonging to any [[SubCategory]] of a visible Category is also visible in the view,\r\n * unless the [[SubCategoryAppearance]] or [[SubCategoryOverride]] specifies that it should be invisible.\r\n * @note To change the set of categories visible in a [[ViewState]] currently associated with a [[Viewport]],\r\n * use [[ViewState.changeCategoryDisplay]] to ensure the view updates appropriately on screen.\r\n * @see [[Category]]\r\n * @public\r\n * @extensions\r\n */\r\nexport class CategorySelectorState extends ElementState {\r\n public static override get className() { return \"CategorySelector\"; }\r\n\r\n private readonly _categories = new ObservableSet<string>();\r\n\r\n constructor(props: CategorySelectorProps, iModel: IModelConnection) {\r\n super(props, iModel);\r\n if (props.categories)\r\n props.categories.forEach((cat) => this.categories.add(cat));\r\n }\r\n\r\n public get categories(): Set<string> {\r\n return this._categories;\r\n }\r\n\r\n public set categories(categories: Set<string>) {\r\n this._categories.clear();\r\n for (const category of categories)\r\n this._categories.add(category);\r\n }\r\n\r\n /** @internal */\r\n public get observableCategories(): ObservableSet<string> {\r\n return this._categories;\r\n }\r\n\r\n public override toJSON(): CategorySelectorProps {\r\n const val = super.toJSON() as CategorySelectorProps;\r\n val.categories = [];\r\n this.categories.forEach((cat) => val.categories.push(cat));\r\n return val;\r\n }\r\n\r\n /** Returns true if this category selector is logically equivalent to the specified category selector.\r\n * Two category selectors are logically equivalent if they have the same name and Id and contain the same set of category Ids.\r\n */\r\n public equalState(other: CategorySelectorState): boolean {\r\n if (this.categories.size !== other.categories.size || this.name !== other.name || this.id !== other.id)\r\n return false;\r\n\r\n for (const cat of this.categories)\r\n if (!other.categories.has(cat))\r\n return false;\r\n\r\n return true;\r\n }\r\n\r\n /** The name of this CategorySelector */\r\n public get name(): string { return this.code.value; }\r\n\r\n /** Determine whether this CategorySelector includes the specified categoryId string */\r\n public has(id: Id64String): boolean { return this.categories.has(id); }\r\n\r\n /** Determine whether this CategorySelector includes the specified category */\r\n public isCategoryViewed(categoryId: Id64String): boolean { return this.has(categoryId); }\r\n\r\n /** Add one or more categories to this CategorySelector */\r\n public addCategories(arg: Id64Arg): void {\r\n for (const id of Id64.iterable(arg))\r\n this.categories.add(id);\r\n }\r\n\r\n /** Remove one or more categories from this CategorySelector */\r\n public dropCategories(arg: Id64Arg) {\r\n for (const id of Id64.iterable(arg))\r\n this.categories.delete(id);\r\n }\r\n\r\n /** Add one or more categories to this CategorySelector, raising a single batch event instead of one event per category.\r\n * This is more efficient than [[addCategories]] when adding many categories at once.\r\n */\r\n public addCategoriesBatched(arg: Id64Arg): void {\r\n this._categories.addAll(Id64.iterable(arg));\r\n }\r\n\r\n /** Remove one or more categories from this CategorySelector, raising a single batch event instead of one event per category.\r\n * This is more efficient than [[dropCategories]] when dropping many categories at once.\r\n */\r\n public dropCategoriesBatched(arg: Id64Arg): void {\r\n this._categories.deleteAll(Id64.iterable(arg));\r\n }\r\n\r\n /** Add or remove categories from this CategorySelector.\r\n * @param arg The categories to add or remove\r\n * @param add If true, categories will be added; otherwise they will be removed.\r\n */\r\n public changeCategoryDisplay(arg: Id64Arg, add: boolean): void {\r\n if (add)\r\n this.addCategories(arg);\r\n else\r\n this.dropCategories(arg);\r\n }\r\n}\r\n"]}
@@ -390,8 +390,6 @@ export declare namespace IModelConnection {
390
390
  /** The collection of loaded ModelState objects for an [[IModelConnection]]. */
391
391
  class Models implements Iterable<ModelState> {
392
392
  private _iModel;
393
- private readonly _modelExtentsQuery;
394
- private readonly _modelExistenceQuery;
395
393
  private _loadedExtents;
396
394
  private _geometryChangedListener?;
397
395
  private _loaded;
@@ -1 +1 @@
1
- {"version":3,"file":"IModelConnection.d.ts","sourceRoot":"","sources":["../../src/IModelConnection.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"IModelConnection.d.ts","sourceRoot":"","sources":["../../src/IModelConnection.ts"],"names":[],"mappings":"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"}
@@ -634,72 +634,7 @@ exports.SnapshotConnection = SnapshotConnection;
634
634
  /** The collection of loaded ModelState objects for an [[IModelConnection]]. */
635
635
  class Models {
636
636
  _iModel;
637
- _modelExtentsQuery = `
638
- SELECT
639
- Model.Id AS ECInstanceId,
640
- iModel_bbox_union(
641
- iModel_placement_aabb(
642
- iModel_placement(
643
- iModel_point(Origin.X, Origin.Y, 0),
644
- iModel_angles(Rotation, 0, 0),
645
- iModel_bbox(
646
- BBoxLow.X, BBoxLow.Y, -1,
647
- BBoxHigh.X, BBoxHigh.Y, 1
648
- )
649
- )
650
- )
651
- ) AS bbox
652
- FROM bis.GeometricElement2d
653
- WHERE InVirtualSet(:ids64, Model.Id) AND Origin.X IS NOT NULL
654
- GROUP BY Model.Id
655
- UNION
656
- SELECT
657
- ge.Model.Id AS ECInstanceId,
658
- iModel_bbox(
659
- min(i.MinX), min(i.MinY), min(i.MinZ),
660
- max(i.MaxX), max(i.MaxY), max(i.MaxZ)
661
- ) AS bbox
662
- FROM bis.SpatialIndex AS i, bis.GeometricElement3d AS ge, bis.GeometricModel3d AS gm
663
- WHERE InVirtualSet(:ids64, ge.Model.Id) AND ge.ECInstanceId=i.ECInstanceId AND InVirtualSet(:ids64, gm.ECInstanceId) AND (gm.$->isNotSpatiallyLocated?=false OR gm.$->isNotSpatiallyLocated? IS NULL)
664
- GROUP BY ge.Model.Id
665
- UNION
666
- SELECT
667
- ge.Model.Id AS ECInstanceId,
668
- iModel_bbox_union(
669
- iModel_placement_aabb(
670
- iModel_placement(
671
- iModel_point(ge.Origin.X, ge.Origin.Y, ge.Origin.Z),
672
- iModel_angles(ge.Yaw, ge.Pitch, ge.Roll),
673
- iModel_bbox(
674
- ge.BBoxLow.X, ge.BBoxLow.Y, ge.BBoxLow.Z,
675
- ge.BBoxHigh.X, ge.BBoxHigh.Y, ge.BBoxHigh.Z
676
- )
677
- )
678
- )
679
- ) AS bbox
680
- FROM bis.GeometricElement3d AS ge, bis.GeometricModel3d as gm
681
- WHERE InVirtualSet(:ids64, ge.Model.Id) AND ge.Origin.X IS NOT NULL AND InVirtualSet(:ids64, gm.ECInstanceId) AND gm.$->isNotSpatiallyLocated?=true
682
- GROUP BY ge.Model.Id`;
683
- _modelExistenceQuery = `
684
- WITH
685
- GeometricModels AS(
686
- SELECT
687
- ECInstanceId
688
- FROM bis.GeometricModel
689
- WHERE InVirtualSet(: ids64, ECInstanceId)
690
- )
691
- SELECT
692
- ECInstanceId,
693
- true AS isGeometricModel
694
- FROM GeometricModels
695
- UNION ALL
696
- SELECT
697
- ECInstanceId,
698
- false AS isGeometricModel
699
- FROM bis.Model
700
- WHERE InVirtualSet(: ids64, ECInstanceId)
701
- AND ECInstanceId NOT IN(SELECT ECInstanceId FROM GeometricModels)`;
702
- _loadedExtents = [];
637
+ _loadedExtents = new Map();
703
638
  _geometryChangedListener;
704
639
  _loaded = new Map();
705
640
  /** @internal */
@@ -714,7 +649,9 @@ exports.SnapshotConnection = SnapshotConnection;
714
649
  IModelConnection.onOpen.addListener(() => {
715
650
  if (this._iModel.isBriefcaseConnection()) {
716
651
  this._geometryChangedListener = (changes) => {
717
- this._loadedExtents = this._loadedExtents.filter((extent) => !changes.some((change) => change.id === extent.id));
652
+ changes.forEach((change) => {
653
+ this._loadedExtents.delete(change.id);
654
+ });
718
655
  };
719
656
  this._iModel.txns.onModelGeometryChanged.addListener(this._geometryChangedListener);
720
657
  }
@@ -818,64 +755,132 @@ exports.SnapshotConnection = SnapshotConnection;
818
755
  return [];
819
756
  if (typeof modelIds === "string")
820
757
  modelIds = [modelIds];
821
- const modelExtents = [];
758
+ const resolvedExtents = new Map();
759
+ const uncachedModelIds = [];
760
+ // Add the cached model ids and the invalid ids
822
761
  for (const modelId of modelIds) {
823
- if (!core_bentley_1.Id64.isValidId64(modelId)) {
824
- modelExtents.push({ id: modelId, extents: core_geometry_1.Range3d.createNull(), status: core_bentley_1.IModelStatus.InvalidId });
762
+ if (this._loadedExtents.has(modelId)) {
763
+ resolvedExtents.set(modelId, this._loadedExtents.get(modelId));
825
764
  }
826
- }
827
- const getUnloadedModelIds = () => modelIds.filter((modelId) => !modelExtents.some((loadedExtent) => loadedExtent.id === modelId));
828
- let remainingModelIds = getUnloadedModelIds();
829
- for (const modelId of remainingModelIds) {
830
- const modelExtent = this._loadedExtents.find((extent) => modelId === extent.id);
831
- if (modelExtent) {
832
- modelExtents.push(modelExtent);
765
+ else if (!core_bentley_1.Id64.isValidId64(modelId)) {
766
+ resolvedExtents.set(modelId, { id: modelId, extents: core_geometry_1.Range3d.createNull(), status: core_bentley_1.IModelStatus.InvalidId });
767
+ }
768
+ else {
769
+ uncachedModelIds.push(modelId);
833
770
  }
834
771
  }
835
- remainingModelIds = getUnloadedModelIds();
836
- if (remainingModelIds.length > 0) {
837
- const params = new core_common_1.QueryBinder();
838
- params.bindIdSet("ids64", remainingModelIds);
839
- const extentsQueryReader = this._iModel.createQueryReader(this._modelExtentsQuery, params, {
772
+ // Run the ECSql to get uncached model extents
773
+ if (uncachedModelIds.length > 0) {
774
+ const modelList = uncachedModelIds.join(",");
775
+ const useSingleModelQuery = uncachedModelIds.length === 1;
776
+ const modelExtentsQuery = `
777
+ SELECT
778
+ Model.Id AS ECInstanceId,
779
+ iModel_bbox_union(
780
+ iModel_placement_aabb(
781
+ iModel_placement(
782
+ iModel_point(Origin.X, Origin.Y, 0),
783
+ iModel_angles(Rotation, 0, 0),
784
+ iModel_bbox(
785
+ BBoxLow.X, BBoxLow.Y, -1,
786
+ BBoxHigh.X, BBoxHigh.Y, 1
787
+ )
788
+ )
789
+ )
790
+ ) AS bbox
791
+ FROM bis.GeometricElement2d
792
+ WHERE Model.Id ${useSingleModelQuery ? `= ${uncachedModelIds[0]}` : `IN (${modelList})`}
793
+ AND Origin.X IS NOT NULL
794
+ GROUP BY Model.Id
795
+
796
+ UNION
797
+
798
+ SELECT
799
+ ge.Model.Id AS ECInstanceId,
800
+ iModel_bbox(
801
+ min(i.MinX), min(i.MinY), min(i.MinZ),
802
+ max(i.MaxX), max(i.MaxY), max(i.MaxZ)
803
+ ) AS bbox
804
+ FROM bis.SpatialIndex AS i
805
+ INNER JOIN bis.GeometricElement3d AS ge
806
+ ON ge.ECInstanceId = i.ECInstanceId
807
+ INNER JOIN bis.GeometricModel3d AS gm
808
+ ON ge.Model.Id = gm.ECInstanceId
809
+ WHERE ge.Model.Id ${useSingleModelQuery ? `= ${uncachedModelIds[0]}` : `IN (${modelList})`}
810
+ AND (gm.$->IsNotSpatiallyLocated? IS NULL OR gm.$->IsNotSpatiallyLocated? IS FALSE)
811
+ GROUP BY ge.Model.Id
812
+
813
+ UNION
814
+
815
+ SELECT
816
+ ge.Model.Id AS ECInstanceId,
817
+ iModel_bbox_union(
818
+ iModel_placement_aabb(
819
+ iModel_placement(
820
+ iModel_point(ge.Origin.X, ge.Origin.Y, ge.Origin.Z),
821
+ iModel_angles(ge.Yaw, ge.Pitch, ge.Roll),
822
+ iModel_bbox(
823
+ ge.BBoxLow.X, ge.BBoxLow.Y, ge.BBoxLow.Z,
824
+ ge.BBoxHigh.X, ge.BBoxHigh.Y, ge.BBoxHigh.Z
825
+ )
826
+ )
827
+ )
828
+ ) AS bbox
829
+ FROM bis.GeometricElement3d ge
830
+ INNER JOIN bis.GeometricModel3d gm
831
+ ON ge.Model.Id = gm.ECInstanceId
832
+ WHERE ge.Model.Id ${useSingleModelQuery ? `= ${uncachedModelIds[0]}` : `IN (${modelList})`}
833
+ AND gm.$->IsNotSpatiallyLocated? IS TRUE
834
+ AND ge.Origin.X IS NOT NULL
835
+ GROUP BY ge.Model.Id
836
+ `;
837
+ const extentsQueryReader = this._iModel.createQueryReader(modelExtentsQuery, undefined, {
840
838
  rowFormat: core_common_1.QueryRowFormat.UseECSqlPropertyNames,
841
839
  });
842
840
  for await (const row of extentsQueryReader) {
843
841
  const byteArray = new Uint8Array(Object.values(row.bbox));
844
842
  const extents = core_geometry_1.Range3d.fromArrayBuffer(byteArray.buffer);
845
843
  const extent = { id: row.ECInstanceId, extents, status: core_bentley_1.IModelStatus.Success };
846
- modelExtents.push(extent);
847
- this._loadedExtents.push(extent);
844
+ resolvedExtents.set(extent.id, extent);
845
+ this._loadedExtents.set(extent.id, extent);
848
846
  }
849
847
  }
850
- remainingModelIds = getUnloadedModelIds();
851
- if (remainingModelIds.length > 0) {
852
- const params = new core_common_1.QueryBinder();
853
- params.bindIdSet("ids64", remainingModelIds);
854
- const modelExistenceQueryReader = this._iModel.createQueryReader(this._modelExistenceQuery, params, {
848
+ // Check if there still are any unresolved model IDs
849
+ const unresolvedModelIds = uncachedModelIds.filter((id) => !resolvedExtents.has(id));
850
+ if (unresolvedModelIds.length > 0) {
851
+ const modelList = unresolvedModelIds.join(",");
852
+ const modelExistenceQuery = `
853
+ SELECT
854
+ m.ECInstanceId,
855
+ CASE WHEN g.ECInstanceId IS NOT NULL THEN 1 ELSE 0 END AS isGeometricModel
856
+ FROM bis.Model m
857
+ LEFT JOIN bis.GeometricModel g
858
+ ON m.ECInstanceId = g.ECInstanceId
859
+ WHERE m.ECInstanceId ${unresolvedModelIds.length === 1 ? `= ${unresolvedModelIds[0]}` : `IN (${modelList})`}
860
+ `;
861
+ const modelExistenceQueryReader = this._iModel.createQueryReader(modelExistenceQuery, undefined, {
855
862
  rowFormat: core_common_1.QueryRowFormat.UseECSqlPropertyNames,
856
863
  });
857
864
  for await (const row of modelExistenceQueryReader) {
858
- let extent;
859
- if (row.isGeometricModel) {
860
- extent = { id: row.ECInstanceId, extents: core_geometry_1.Range3d.createNull(), status: core_bentley_1.IModelStatus.Success };
861
- }
862
- else {
863
- extent = { id: row.ECInstanceId, extents: core_geometry_1.Range3d.createNull(), status: core_bentley_1.IModelStatus.WrongModel };
864
- }
865
- modelExtents.push(extent);
866
- this._loadedExtents.push(extent);
865
+ const extent = {
866
+ id: row.ECInstanceId,
867
+ extents: core_geometry_1.Range3d.createNull(),
868
+ status: row.isGeometricModel ? core_bentley_1.IModelStatus.Success : core_bentley_1.IModelStatus.WrongModel,
869
+ };
870
+ resolvedExtents.set(extent.id, extent);
871
+ this._loadedExtents.set(extent.id, extent);
867
872
  }
868
873
  }
874
+ // Return the results while maintaining the same order
869
875
  return modelIds.map((modelId) => {
870
- let extent = modelExtents.find((loadedExtent) => loadedExtent.id === modelId);
876
+ const extent = resolvedExtents.get(modelId);
871
877
  if (extent === undefined) {
872
- extent = { id: modelId, extents: core_geometry_1.Range3d.createNull(), status: core_bentley_1.IModelStatus.NotFound };
873
- this._loadedExtents.push(extent);
874
- return extent;
878
+ const notFound = { id: modelId, extents: core_geometry_1.Range3d.createNull(), status: core_bentley_1.IModelStatus.NotFound };
879
+ this._loadedExtents.set(notFound.id, notFound);
880
+ return notFound;
875
881
  }
876
- else if (extent.status === core_bentley_1.IModelStatus.InvalidId) {
877
- extent.id = "0";
878
- return extent;
882
+ if (extent.status === core_bentley_1.IModelStatus.InvalidId) {
883
+ return { ...extent, id: "0" };
879
884
  }
880
885
  return extent;
881
886
  });