@ifc-lite/sdk 8.0.0 → 9.0.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.
package/README.md CHANGED
@@ -33,6 +33,12 @@ bim.viewer.colorize(walls.map(w => w.ref), '#ff0000');
33
33
 
34
34
  - `bim.query()` - fluent entity queries by type, property, quantity
35
35
  - `bim.model` / `bim.mutate` / `bim.store` - model info, edits, raw store access
36
+ - `bim.store.joinWalls(modelId, aExpressId, bExpressId, options?)` - join straight
37
+ walls through the same atomic core as the Model workspace and MCP. Returns
38
+ `IfcRelConnectsPathElements`; `Name`, `priority`, `tolerance` and per-wall
39
+ `priorities` use the existing `WallJoinApplyOptions` contract. Readable hosted
40
+ cuts must fit both joined end faces. The viewer records one undo and remeshes
41
+ both walls; headless export writes the new IFC graph.
36
42
  - `bim.viewer` - selection, visibility, colorization, camera, sections
37
43
  - `bim.export` - `csv`, `json`, `ifc` (STEP), `hbjson`, `dfjson`, `download`
38
44
  - `bim.ids` / `bim.bcf` / `bim.clash` - validation, collaboration, interference checks
@@ -0,0 +1,29 @@
1
+ /** Loaded-model modelling methods of bim.store (#6232 D5). */
2
+ import type { HostedDoorInStoreParams, HostedWindowInStoreParams, OpeningInStoreParams, ElementTypeInStoreParams, MaterialInStoreParams, MaterialLayerSetInStoreParams, MaterialLayerSetUsageInStoreParams, WallJoinApplyOptions } from '@ifc-lite/create';
3
+ import type { BimBackend, EntityRef } from '../types.js';
4
+ export declare class StoreModellingNamespace {
5
+ protected backend: BimBackend;
6
+ constructor(backend: BimBackend);
7
+ /** Cut an IfcOpeningElement (IfcRelVoidsElement) into a wall (`Offset`, `Sill`, `Width`, `Height`) or
8
+ * slab (`Position` [x, y], `Width`, `Depth`); the cut spans the host body + 50 mm per face unless `CutDepth`. */
9
+ addOpening(modelId: string, hostExpressId: number, params: OpeningInStoreParams): EntityRef;
10
+ /** Add an IfcDoor filling a new opening in a wall (IfcRelFillsElement). `Sill` defaults to 0. */
11
+ addHostedDoor(modelId: string, hostExpressId: number, params: HostedDoorInStoreParams): EntityRef;
12
+ /** Add an IfcWindow filling a new opening in a wall (IfcRelFillsElement), bottom edge at `Sill`. */
13
+ addHostedWindow(modelId: string, hostExpressId: number, params: HostedWindowInStoreParams): EntityRef;
14
+ /** Join two walls in the same placement frame; returns IfcRelConnectsPathElements. */
15
+ joinWalls(modelId: string, aExpressId: number, bExpressId: number, options?: WallJoinApplyOptions): EntityRef;
16
+ /** Add an IfcElementType subtype (e.g. `{ Type: 'IfcWallType', Name, PredefinedType }`), laid out for the model's schema. */
17
+ addElementType(modelId: string, params: ElementTypeInStoreParams): EntityRef;
18
+ /** Type objects via IfcRelDefinesByType; an object already typed moves to this type. Returns the relationship. */
19
+ assignType(modelId: string, typeExpressId: number, objectExpressIds: number[]): EntityRef;
20
+ /** Add an IfcMaterial. */
21
+ addMaterial(modelId: string, params: MaterialInStoreParams): EntityRef;
22
+ /** Add an IfcMaterialLayerSet of IfcMaterialLayers (`MaterialLayers[i].LayerThickness` in metres). */
23
+ addMaterialLayerSet(modelId: string, params: MaterialLayerSetInStoreParams): EntityRef;
24
+ /** Add an IfcMaterialLayerSetUsage (default AXIS2/POSITIVE; `OffsetFromReferenceLine` in metres). */
25
+ addMaterialLayerSetUsage(modelId: string, params: MaterialLayerSetUsageInStoreParams): EntityRef;
26
+ /** Associate a material with objects via IfcRelAssociatesMaterial, replacing their previous one. Returns the relationship. */
27
+ assignMaterial(modelId: string, materialExpressId: number, objectExpressIds: number[]): EntityRef;
28
+ }
29
+ //# sourceMappingURL=store-modelling.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"store-modelling.d.ts","sourceRoot":"","sources":["../../src/namespaces/store-modelling.ts"],"names":[],"mappings":"AAIA,8DAA8D;AAC9D,OAAO,KAAK,EACV,uBAAuB,EAAE,yBAAyB,EAAE,oBAAoB,EAAE,wBAAwB,EAClG,qBAAqB,EAAE,6BAA6B,EAAE,kCAAkC,EAAE,oBAAoB,EAC/G,MAAM,kBAAkB,CAAC;AAC1B,OAAO,KAAK,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAEzD,qBAAa,uBAAuB;IACtB,SAAS,CAAC,OAAO,EAAE,UAAU;gBAAnB,OAAO,EAAE,UAAU;IAIzC;sHACkH;IAClH,UAAU,CAAC,OAAO,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,EAAE,MAAM,EAAE,oBAAoB,GAAG,SAAS;IAI3F,iGAAiG;IACjG,aAAa,CAAC,OAAO,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,EAAE,MAAM,EAAE,uBAAuB,GAAG,SAAS;IAIjG,oGAAoG;IACpG,eAAe,CAAC,OAAO,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,EAAE,MAAM,EAAE,yBAAyB,GAAG,SAAS;IAIrG,sFAAsF;IACtF,SAAS,CAAC,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,oBAAoB,GAAG,SAAS;IAK7G,6HAA6H;IAC7H,cAAc,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,wBAAwB,GAAG,SAAS;IAI5E,kHAAkH;IAClH,UAAU,CAAC,OAAO,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,EAAE,gBAAgB,EAAE,MAAM,EAAE,GAAG,SAAS;IAIzF,0BAA0B;IAC1B,WAAW,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,qBAAqB,GAAG,SAAS;IAItE,sGAAsG;IACtG,mBAAmB,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,6BAA6B,GAAG,SAAS;IAItF,qGAAqG;IACrG,wBAAwB,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,kCAAkC,GAAG,SAAS;IAIhG,8HAA8H;IAC9H,cAAc,CAAC,OAAO,EAAE,MAAM,EAAE,iBAAiB,EAAE,MAAM,EAAE,gBAAgB,EAAE,MAAM,EAAE,GAAG,SAAS;CAIlG"}
@@ -0,0 +1,54 @@
1
+ /* This Source Code Form is subject to the terms of the Mozilla Public
2
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
3
+ * file, You can obtain one at https://mozilla.org/MPL/2.0/. */
4
+ export class StoreModellingNamespace {
5
+ backend;
6
+ constructor(backend) {
7
+ this.backend = backend;
8
+ }
9
+ // -- Openings, hosted fillings, types and materials (#6232 M3) -------------
10
+ // Hosts are existing IfcWall/IfcSlab; params are metres in the host's frame.
11
+ /** Cut an IfcOpeningElement (IfcRelVoidsElement) into a wall (`Offset`, `Sill`, `Width`, `Height`) or
12
+ * slab (`Position` [x, y], `Width`, `Depth`); the cut spans the host body + 50 mm per face unless `CutDepth`. */
13
+ addOpening(modelId, hostExpressId, params) {
14
+ return this.backend.store.addOpening(modelId, hostExpressId, params);
15
+ }
16
+ /** Add an IfcDoor filling a new opening in a wall (IfcRelFillsElement). `Sill` defaults to 0. */
17
+ addHostedDoor(modelId, hostExpressId, params) {
18
+ return this.backend.store.addHostedDoor(modelId, hostExpressId, params);
19
+ }
20
+ /** Add an IfcWindow filling a new opening in a wall (IfcRelFillsElement), bottom edge at `Sill`. */
21
+ addHostedWindow(modelId, hostExpressId, params) {
22
+ return this.backend.store.addHostedWindow(modelId, hostExpressId, params);
23
+ }
24
+ /** Join two walls in the same placement frame; returns IfcRelConnectsPathElements. */
25
+ joinWalls(modelId, aExpressId, bExpressId, options) {
26
+ return this.backend.store.joinWalls(modelId, aExpressId, bExpressId, options);
27
+ }
28
+ // IFC4 practice: IfcMaterialLayerSet on the type, a usage of it on each occurrence.
29
+ /** Add an IfcElementType subtype (e.g. `{ Type: 'IfcWallType', Name, PredefinedType }`), laid out for the model's schema. */
30
+ addElementType(modelId, params) {
31
+ return this.backend.store.addElementType(modelId, params);
32
+ }
33
+ /** Type objects via IfcRelDefinesByType; an object already typed moves to this type. Returns the relationship. */
34
+ assignType(modelId, typeExpressId, objectExpressIds) {
35
+ return this.backend.store.assignType(modelId, typeExpressId, objectExpressIds);
36
+ }
37
+ /** Add an IfcMaterial. */
38
+ addMaterial(modelId, params) {
39
+ return this.backend.store.addMaterial(modelId, params);
40
+ }
41
+ /** Add an IfcMaterialLayerSet of IfcMaterialLayers (`MaterialLayers[i].LayerThickness` in metres). */
42
+ addMaterialLayerSet(modelId, params) {
43
+ return this.backend.store.addMaterialLayerSet(modelId, params);
44
+ }
45
+ /** Add an IfcMaterialLayerSetUsage (default AXIS2/POSITIVE; `OffsetFromReferenceLine` in metres). */
46
+ addMaterialLayerSetUsage(modelId, params) {
47
+ return this.backend.store.addMaterialLayerSetUsage(modelId, params);
48
+ }
49
+ /** Associate a material with objects via IfcRelAssociatesMaterial, replacing their previous one. Returns the relationship. */
50
+ assignMaterial(modelId, materialExpressId, objectExpressIds) {
51
+ return this.backend.store.assignMaterial(modelId, materialExpressId, objectExpressIds);
52
+ }
53
+ }
54
+ //# sourceMappingURL=store-modelling.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"store-modelling.js","sourceRoot":"","sources":["../../src/namespaces/store-modelling.ts"],"names":[],"mappings":"AAAA;;+DAE+D;AAS/D,MAAM,OAAO,uBAAuB;IACZ;IAAtB,YAAsB,OAAmB;QAAnB,YAAO,GAAP,OAAO,CAAY;IAAG,CAAC;IAE7C,6EAA6E;IAC7E,6EAA6E;IAC7E;sHACkH;IAClH,UAAU,CAAC,OAAe,EAAE,aAAqB,EAAE,MAA4B;QAC7E,OAAO,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,UAAU,CAAC,OAAO,EAAE,aAAa,EAAE,MAAM,CAAC,CAAC;IACvE,CAAC;IAED,iGAAiG;IACjG,aAAa,CAAC,OAAe,EAAE,aAAqB,EAAE,MAA+B;QACnF,OAAO,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,OAAO,EAAE,aAAa,EAAE,MAAM,CAAC,CAAC;IAC1E,CAAC;IAED,oGAAoG;IACpG,eAAe,CAAC,OAAe,EAAE,aAAqB,EAAE,MAAiC;QACvF,OAAO,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,eAAe,CAAC,OAAO,EAAE,aAAa,EAAE,MAAM,CAAC,CAAC;IAC5E,CAAC;IAED,sFAAsF;IACtF,SAAS,CAAC,OAAe,EAAE,UAAkB,EAAE,UAAkB,EAAE,OAA8B;QAC/F,OAAO,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,SAAS,CAAC,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,OAAO,CAAC,CAAC;IAChF,CAAC;IAED,oFAAoF;IACpF,6HAA6H;IAC7H,cAAc,CAAC,OAAe,EAAE,MAAgC;QAC9D,OAAO,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,cAAc,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;IAC5D,CAAC;IAED,kHAAkH;IAClH,UAAU,CAAC,OAAe,EAAE,aAAqB,EAAE,gBAA0B;QAC3E,OAAO,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,UAAU,CAAC,OAAO,EAAE,aAAa,EAAE,gBAAgB,CAAC,CAAC;IACjF,CAAC;IAED,0BAA0B;IAC1B,WAAW,CAAC,OAAe,EAAE,MAA6B;QACxD,OAAO,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,WAAW,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;IACzD,CAAC;IAED,sGAAsG;IACtG,mBAAmB,CAAC,OAAe,EAAE,MAAqC;QACxE,OAAO,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,mBAAmB,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;IACjE,CAAC;IAED,qGAAqG;IACrG,wBAAwB,CAAC,OAAe,EAAE,MAA0C;QAClF,OAAO,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,wBAAwB,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;IACtE,CAAC;IAED,8HAA8H;IAC9H,cAAc,CAAC,OAAe,EAAE,iBAAyB,EAAE,gBAA0B;QACnF,OAAO,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,cAAc,CAAC,OAAO,EAAE,iBAAiB,EAAE,gBAAgB,CAAC,CAAC;IACzF,CAAC;CAEF"}
@@ -1,5 +1,6 @@
1
- import type { CostItemParams, CostQuantityParams, CostScheduleParams, CostValueParams, HostedDoorInStoreParams, HostedWindowInStoreParams, OpeningInStoreParams, ElementTypeInStoreParams, MaterialInStoreParams, MaterialLayerSetInStoreParams, MaterialLayerSetUsageInStoreParams, StructuralAnalysisModelInStoreParams, StructuralCurveMemberInStoreParams, StructuralLinearActionInStoreParams, StructuralLoadGroupInStoreParams, StructuralPointActionInStoreParams, StructuralPointConnectionInStoreParams } from '@ifc-lite/create';
2
- import type { AddBeamInStoreParams, AddColumnInStoreParams, AddDoorInStoreParams, AddMemberInStoreParams, AddPlateInStoreParams, AddRoofInStoreParams, AddSlabInStoreParams, AddSpaceInStoreParams, AddWallInStoreParams, AddWindowInStoreParams, BimBackend, EntityRef } from '../types.js';
1
+ import type { CostItemParams, CostQuantityParams, CostScheduleParams, CostValueParams, StructuralAnalysisModelInStoreParams, StructuralCurveMemberInStoreParams, StructuralLinearActionInStoreParams, StructuralLoadGroupInStoreParams, StructuralPointActionInStoreParams, StructuralPointConnectionInStoreParams } from '@ifc-lite/create';
2
+ import type { AddBeamInStoreParams, AddColumnInStoreParams, AddDoorInStoreParams, AddMemberInStoreParams, AddPlateInStoreParams, AddRoofInStoreParams, AddSlabInStoreParams, AddSpaceInStoreParams, AddWallInStoreParams, AddWindowInStoreParams, EntityRef } from '../types.js';
3
+ import { StoreModellingNamespace } from './store-modelling.js';
3
4
  /**
4
5
  * `bim.store` — document-level edits on a parsed model.
5
6
  *
@@ -15,9 +16,7 @@ import type { AddBeamInStoreParams, AddColumnInStoreParams, AddDoorInStoreParams
15
16
  * Changes accumulate in a per-model overlay and are flushed to the IFC
16
17
  * file on the next `bim.export.ifc({ applyMutations: true })`.
17
18
  */
18
- export declare class StoreNamespace {
19
- private backend;
20
- constructor(backend: BimBackend);
19
+ export declare class StoreNamespace extends StoreModellingNamespace {
21
20
  /**
22
21
  * Inject a new entity into the active model. Returns an `EntityRef`
23
22
  * pointing at the freshly-allocated expressId.
@@ -138,25 +137,6 @@ export declare class StoreNamespace {
138
137
  * choose the PredefinedType to disambiguate the role.
139
138
  */
140
139
  addMember(modelId: string, storeyExpressId: number, params: AddMemberInStoreParams): EntityRef;
141
- /** Cut an IfcOpeningElement (IfcRelVoidsElement) into a wall (`Offset`, `Sill`, `Width`, `Height`) or
142
- * slab (`Position` [x, y], `Width`, `Depth`); the cut spans the host body + 50 mm per face unless `CutDepth`. */
143
- addOpening(modelId: string, hostExpressId: number, params: OpeningInStoreParams): EntityRef;
144
- /** Add an IfcDoor filling a new opening in a wall (IfcRelFillsElement). `Sill` defaults to 0. */
145
- addHostedDoor(modelId: string, hostExpressId: number, params: HostedDoorInStoreParams): EntityRef;
146
- /** Add an IfcWindow filling a new opening in a wall (IfcRelFillsElement), bottom edge at `Sill`. */
147
- addHostedWindow(modelId: string, hostExpressId: number, params: HostedWindowInStoreParams): EntityRef;
148
- /** Add an IfcElementType subtype (e.g. `{ Type: 'IfcWallType', Name, PredefinedType }`), laid out for the model's schema. */
149
- addElementType(modelId: string, params: ElementTypeInStoreParams): EntityRef;
150
- /** Type objects via IfcRelDefinesByType; an object already typed moves to this type. Returns the relationship. */
151
- assignType(modelId: string, typeExpressId: number, objectExpressIds: number[]): EntityRef;
152
- /** Add an IfcMaterial. */
153
- addMaterial(modelId: string, params: MaterialInStoreParams): EntityRef;
154
- /** Add an IfcMaterialLayerSet of IfcMaterialLayers (`MaterialLayers[i].LayerThickness` in metres). */
155
- addMaterialLayerSet(modelId: string, params: MaterialLayerSetInStoreParams): EntityRef;
156
- /** Add an IfcMaterialLayerSetUsage (default AXIS2/POSITIVE; `OffsetFromReferenceLine` in metres). */
157
- addMaterialLayerSetUsage(modelId: string, params: MaterialLayerSetUsageInStoreParams): EntityRef;
158
- /** Associate a material with objects via IfcRelAssociatesMaterial, replacing their previous one. Returns the relationship. */
159
- assignMaterial(modelId: string, materialExpressId: number, objectExpressIds: number[]): EntityRef;
160
140
  /** Add an IfcCostSchedule. Refused for IFC2X3 (different attribute layout). */
161
141
  addCostSchedule(modelId: string, params: CostScheduleParams): EntityRef;
162
142
  /** Add an IfcCostItem. `CostValues`/`CostQuantities` are optional; an empty array is refused. */
@@ -1 +1 @@
1
- {"version":3,"file":"store.d.ts","sourceRoot":"","sources":["../../src/namespaces/store.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"store.d.ts","sourceRoot":"","sources":["../../src/namespaces/store.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EACV,cAAc,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,eAAe,EACvE,oCAAoC,EACpC,kCAAkC,EAClC,mCAAmC,EACnC,gCAAgC,EAChC,kCAAkC,EAClC,sCAAsC,EACvC,MAAM,kBAAkB,CAAC;AAC1B,OAAO,KAAK,EACV,oBAAoB,EACpB,sBAAsB,EACtB,oBAAoB,EACpB,sBAAsB,EACtB,qBAAqB,EACrB,oBAAoB,EACpB,oBAAoB,EACpB,qBAAqB,EACrB,oBAAoB,EACpB,sBAAsB,EACtB,SAAS,EACV,MAAM,aAAa,CAAC;AAErB,OAAO,EAAE,uBAAuB,EAAE,MAAM,sBAAsB,CAAC;AAE/D;;;;;;;;;;;;;;GAcG;AACH,qBAAa,cAAe,SAAQ,uBAAuB;IACzD;;;;;;;;;;;;;;;;;;;;;;;;;;;OA2BG;IACH,SAAS,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,UAAU,EAAE,OAAO,EAAE,CAAA;KAAE,GAAG,SAAS;IA+BnF;;;;OAIG;IACH,YAAY,CAAC,GAAG,EAAE,SAAS,GAAG,OAAO;IAIrC;;;;;;;;OAQG;IACH,sBAAsB,CAAC,GAAG,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,GAAG,IAAI;IAI3E;;;;;;;;;;;;;;;;;OAiBG;IACH,SAAS,CAAC,OAAO,EAAE,MAAM,EAAE,eAAe,EAAE,MAAM,EAAE,MAAM,EAAE,sBAAsB,GAAG,SAAS;IAI9F;;;;;;;;;;OAUG;IACH,OAAO,CAAC,OAAO,EAAE,MAAM,EAAE,eAAe,EAAE,MAAM,EAAE,MAAM,EAAE,oBAAoB,GAAG,SAAS;IAI1F;;;;OAIG;IACH,OAAO,CAAC,OAAO,EAAE,MAAM,EAAE,eAAe,EAAE,MAAM,EAAE,MAAM,EAAE,oBAAoB,GAAG,SAAS;IAI1F;;;;OAIG;IACH,OAAO,CAAC,OAAO,EAAE,MAAM,EAAE,eAAe,EAAE,MAAM,EAAE,MAAM,EAAE,oBAAoB,GAAG,SAAS;IAI1F,uEAAuE;IACvE,OAAO,CAAC,OAAO,EAAE,MAAM,EAAE,eAAe,EAAE,MAAM,EAAE,MAAM,EAAE,oBAAoB,GAAG,SAAS;IAI1F,yEAAyE;IACzE,SAAS,CAAC,OAAO,EAAE,MAAM,EAAE,eAAe,EAAE,MAAM,EAAE,MAAM,EAAE,sBAAsB,GAAG,SAAS;IAI9F;;;;;OAKG;IACH,QAAQ,CAAC,OAAO,EAAE,MAAM,EAAE,eAAe,EAAE,MAAM,EAAE,MAAM,EAAE,qBAAqB,GAAG,SAAS;IAI5F;;;;OAIG;IACH,OAAO,CAAC,OAAO,EAAE,MAAM,EAAE,eAAe,EAAE,MAAM,EAAE,MAAM,EAAE,oBAAoB,GAAG,SAAS;IAI1F;;;;OAIG;IACH,QAAQ,CAAC,OAAO,EAAE,MAAM,EAAE,eAAe,EAAE,MAAM,EAAE,MAAM,EAAE,qBAAqB,GAAG,SAAS;IAI5F;;;;OAIG;IACH,SAAS,CAAC,OAAO,EAAE,MAAM,EAAE,eAAe,EAAE,MAAM,EAAE,MAAM,EAAE,sBAAsB,GAAG,SAAS;IAQ9F,+EAA+E;IAC/E,eAAe,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,kBAAkB,GAAG,SAAS;IAIvE,iGAAiG;IACjG,WAAW,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,cAAc,GAAG,SAAS;IAI/D,wFAAwF;IACxF,YAAY,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,eAAe,GAAG,SAAS;IAIjE,yEAAyE;IACzE,eAAe,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,kBAAkB,GAAG,SAAS;IAIvE;;;;OAIG;IACH,aAAa,CAAC,OAAO,EAAE,MAAM,EAAE,eAAe,EAAE,MAAM,EAAE,eAAe,EAAE,MAAM,EAAE,GAAG,SAAS;IAI7F,2FAA2F;IAC3F,yBAAyB,CAAC,OAAO,EAAE,MAAM,EAAE,iBAAiB,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM,EAAE,GAAG,SAAS;IAI1G,0FAA0F;IAC1F,gBAAgB,CAAC,OAAO,EAAE,MAAM,EAAE,iBAAiB,EAAE,MAAM,EAAE,gBAAgB,EAAE,MAAM,EAAE,GAAG,SAAS;IAInG,iGAAiG;IACjG,iBAAiB,CAAC,OAAO,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,EAAE,eAAe,EAAE,MAAM,EAAE,GAAG,IAAI;IAI1F;;;;;;OAMG;IACH,gBAAgB,CAAC,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE;QAAE,MAAM,CAAC,EAAE,OAAO,CAAA;KAAE,GAAG,IAAI;IAQ1F,sFAAsF;IACtF,0BAA0B,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,oCAAoC,GAAG,SAAS;IAIpG;;;;;OAKG;IACH,wBAAwB,CAAC,OAAO,EAAE,MAAM,EAAE,eAAe,EAAE,MAAM,EAAE,MAAM,EAAE,kCAAkC,GAAG,SAAS;IAIzH,6GAA6G;IAC7G,4BAA4B,CAAC,OAAO,EAAE,MAAM,EAAE,eAAe,EAAE,MAAM,EAAE,MAAM,EAAE,sCAAsC,GAAG,SAAS;IAIjI,gHAAgH;IAChH,sBAAsB,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,gCAAgC,GAAG,SAAS;IAI5F,gFAAgF;IAChF,wBAAwB,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,kCAAkC,GAAG,SAAS;IAIhG,iFAAiF;IACjF,yBAAyB,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,mCAAmC,GAAG,SAAS;IAIlG,8FAA8F;IAC9F,mCAAmC,CAAC,OAAO,EAAE,MAAM,EAAE,eAAe,EAAE,MAAM,EAAE,mBAAmB,EAAE,MAAM,GAAG,SAAS;IAIrH,sHAAsH;IACtH,+BAA+B,CAAC,OAAO,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,EAAE,iBAAiB,EAAE,MAAM,GAAG,SAAS;IAI7G;;;;;OAKG;IACH,uBAAuB,CAAC,OAAO,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM,EAAE,gBAAgB,EAAE,MAAM,EAAE,GAAG,SAAS;CAGxG"}
@@ -2,6 +2,7 @@
2
2
  * License, v. 2.0. If a copy of the MPL was not distributed with this
3
3
  * file, You can obtain one at https://mozilla.org/MPL/2.0/. */
4
4
  import { isInstantiable, isKnownType, normalizeIfcTypeName } from '@ifc-lite/parser';
5
+ import { StoreModellingNamespace } from './store-modelling.js';
5
6
  /**
6
7
  * `bim.store` — document-level edits on a parsed model.
7
8
  *
@@ -17,11 +18,7 @@ import { isInstantiable, isKnownType, normalizeIfcTypeName } from '@ifc-lite/par
17
18
  * Changes accumulate in a per-model overlay and are flushed to the IFC
18
19
  * file on the next `bim.export.ifc({ applyMutations: true })`.
19
20
  */
20
- export class StoreNamespace {
21
- backend;
22
- constructor(backend) {
23
- this.backend = backend;
24
- }
21
+ export class StoreNamespace extends StoreModellingNamespace {
25
22
  /**
26
23
  * Inject a new entity into the active model. Returns an `EntityRef`
27
24
  * pointing at the freshly-allocated expressId.
@@ -188,46 +185,6 @@ export class StoreNamespace {
188
185
  addMember(modelId, storeyExpressId, params) {
189
186
  return this.backend.store.addMember(modelId, storeyExpressId, params);
190
187
  }
191
- // -- Openings, hosted fillings, types and materials (#6232 M3) -------------
192
- // Hosts are existing IfcWall/IfcSlab; params are metres in the host's frame.
193
- /** Cut an IfcOpeningElement (IfcRelVoidsElement) into a wall (`Offset`, `Sill`, `Width`, `Height`) or
194
- * slab (`Position` [x, y], `Width`, `Depth`); the cut spans the host body + 50 mm per face unless `CutDepth`. */
195
- addOpening(modelId, hostExpressId, params) {
196
- return this.backend.store.addOpening(modelId, hostExpressId, params);
197
- }
198
- /** Add an IfcDoor filling a new opening in a wall (IfcRelFillsElement). `Sill` defaults to 0. */
199
- addHostedDoor(modelId, hostExpressId, params) {
200
- return this.backend.store.addHostedDoor(modelId, hostExpressId, params);
201
- }
202
- /** Add an IfcWindow filling a new opening in a wall (IfcRelFillsElement), bottom edge at `Sill`. */
203
- addHostedWindow(modelId, hostExpressId, params) {
204
- return this.backend.store.addHostedWindow(modelId, hostExpressId, params);
205
- }
206
- // IFC4 practice: IfcMaterialLayerSet on the type, a usage of it on each occurrence.
207
- /** Add an IfcElementType subtype (e.g. `{ Type: 'IfcWallType', Name, PredefinedType }`), laid out for the model's schema. */
208
- addElementType(modelId, params) {
209
- return this.backend.store.addElementType(modelId, params);
210
- }
211
- /** Type objects via IfcRelDefinesByType; an object already typed moves to this type. Returns the relationship. */
212
- assignType(modelId, typeExpressId, objectExpressIds) {
213
- return this.backend.store.assignType(modelId, typeExpressId, objectExpressIds);
214
- }
215
- /** Add an IfcMaterial. */
216
- addMaterial(modelId, params) {
217
- return this.backend.store.addMaterial(modelId, params);
218
- }
219
- /** Add an IfcMaterialLayerSet of IfcMaterialLayers (`MaterialLayers[i].LayerThickness` in metres). */
220
- addMaterialLayerSet(modelId, params) {
221
- return this.backend.store.addMaterialLayerSet(modelId, params);
222
- }
223
- /** Add an IfcMaterialLayerSetUsage (default AXIS2/POSITIVE; `OffsetFromReferenceLine` in metres). */
224
- addMaterialLayerSetUsage(modelId, params) {
225
- return this.backend.store.addMaterialLayerSetUsage(modelId, params);
226
- }
227
- /** Associate a material with objects via IfcRelAssociatesMaterial, replacing their previous one. Returns the relationship. */
228
- assignMaterial(modelId, materialExpressId, objectExpressIds) {
229
- return this.backend.store.assignMaterial(modelId, materialExpressId, objectExpressIds);
230
- }
231
188
  // -- Cost / 5D authoring on a loaded model (#4857 PR A) --------------------
232
189
  // Panel is read-only by design; these methods are for scripts (SDK / CLI /
233
190
  // MCP / sandbox). See docs/guide/cost-panel.md "Authoring from scripts".
@@ -1 +1 @@
1
- {"version":3,"file":"store.js","sourceRoot":"","sources":["../../src/namespaces/store.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"store.js","sourceRoot":"","sources":["../../src/namespaces/store.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"store-modelling-backend.d.ts","sourceRoot":"","sources":["../src/store-modelling-backend.ts"],"names":[],"mappings":"AAuCA,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,yBAAyB,CAAC;AACxE,OAAO,KAAK,EAAE,4BAA4B,EAAE,MAAM,4BAA4B,CAAC;AAG/E,uEAAuE;AACvE,MAAM,MAAM,2BAA2B,GAAG,CAAC,OAAO,CAAC,EAAE,MAAM,KAAK,wBAAwB,CAAC;AAEzF,wBAAgB,2BAA2B,CAAC,OAAO,EAAE,2BAA2B,GAAG,4BAA4B,CAoE9G"}
1
+ {"version":3,"file":"store-modelling-backend.d.ts","sourceRoot":"","sources":["../src/store-modelling-backend.ts"],"names":[],"mappings":"AAuCA,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,yBAAyB,CAAC;AACxE,OAAO,KAAK,EAAE,4BAA4B,EAAE,MAAM,4BAA4B,CAAC;AAG/E,uEAAuE;AACvE,MAAM,MAAM,2BAA2B,GAAG,CAAC,OAAO,CAAC,EAAE,MAAM,KAAK,wBAAwB,CAAC;AAEzF,wBAAgB,2BAA2B,CAAC,OAAO,EAAE,2BAA2B,GAAG,4BAA4B,CAuE9G"}
@@ -2,7 +2,7 @@
2
2
  * License, v. 2.0. If a copy of the MPL was not distributed with this
3
3
  * file, You can obtain one at https://mozilla.org/MPL/2.0/. */
4
4
  /**
5
- * Builds `bim.store`'s opening, hosted door/window, type and material methods
5
+ * Builds `bim.store`'s wall-join, hosted element, type and material methods
6
6
  * (#6232), for the
7
7
  * same reason `createStructuralStoreBackend` exists: every host implementing
8
8
  * `StoreBackendMethods` (CLI headless backend, viewer store adapter) spreads
@@ -12,12 +12,8 @@
12
12
  * live mutation view, so a wall authored earlier in the same session can take
13
13
  * an opening exactly like one read from the file.
14
14
  */
15
- import { addElementTypeToStore, addMaterialLayerSetToStore, addMaterialLayerSetUsageToStore, addMaterialToStore, assignMaterialInStore, assignTypeInStore, liveEntityConforms, liveEntityType, readRelatedLists, resolveAuthoringAnchor, addHostedDoorToStore, addHostedWindowToStore, addOpeningToStore, resolveHostAnchor, } from '@ifc-lite/create';
15
+ import { addElementTypeToStore, addMaterialLayerSetToStore, addMaterialLayerSetUsageToStore, addMaterialToStore, assignMaterialInStore, assignTypeInStore, joinWallsInStore, resolveWallJoinAnchor, liveEntityConforms, liveEntityType, readRelatedLists, resolveAuthoringAnchor, addHostedElementInStore, } from '@ifc-lite/create';
16
16
  export function createModellingStoreBackend(resolve) {
17
- const host = (modelId, hostExpressId) => {
18
- const model = resolve(modelId);
19
- return { model, anchor: resolveHostAnchor(model.store, hostExpressId, model.mutationView) };
20
- };
21
17
  const ref = (modelId, expressId) => ({ modelId, expressId });
22
18
  const authoring = (modelId) => {
23
19
  const model = resolve(modelId);
@@ -39,17 +35,22 @@ export function createModellingStoreBackend(resolve) {
39
35
  }
40
36
  };
41
37
  return {
38
+ joinWalls(modelId, aExpressId, bExpressId, options = {}) {
39
+ const model = resolve(modelId);
40
+ const joined = model.editor.runAtomic(draft => joinWallsInStore(draft, model.store, resolveWallJoinAnchor(model.store, draft.getMutationView()), aExpressId, bExpressId, options));
41
+ return ref(model.modelId, joined.relId);
42
+ },
42
43
  addOpening(modelId, hostExpressId, params) {
43
- const { model, anchor } = host(modelId, hostExpressId);
44
- return ref(model.modelId, addOpeningToStore(model.editor, anchor, params).openingId);
44
+ const model = resolve(modelId);
45
+ return ref(model.modelId, addHostedElementInStore(model.store, model.editor, hostExpressId, { kind: 'opening', params }).expressId);
45
46
  },
46
47
  addHostedDoor(modelId, hostExpressId, params) {
47
- const { model, anchor } = host(modelId, hostExpressId);
48
- return ref(model.modelId, addHostedDoorToStore(model.editor, anchor, params).fillingId);
48
+ const model = resolve(modelId);
49
+ return ref(model.modelId, addHostedElementInStore(model.store, model.editor, hostExpressId, { kind: 'door', params }).expressId);
49
50
  },
50
51
  addHostedWindow(modelId, hostExpressId, params) {
51
- const { model, anchor } = host(modelId, hostExpressId);
52
- return ref(model.modelId, addHostedWindowToStore(model.editor, anchor, params).fillingId);
52
+ const model = resolve(modelId);
53
+ return ref(model.modelId, addHostedElementInStore(model.store, model.editor, hostExpressId, { kind: 'window', params }).expressId);
53
54
  },
54
55
  addElementType(modelId, params) {
55
56
  const { model, anchor } = authoring(modelId);
@@ -1 +1 @@
1
- {"version":3,"file":"store-modelling-backend.js","sourceRoot":"","sources":["../src/store-modelling-backend.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"store-modelling-backend.js","sourceRoot":"","sources":["../src/store-modelling-backend.ts"],"names":[],"mappings":"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"}
@@ -4,9 +4,11 @@
4
4
  * of `types.ts` (allowlisted, at budget) like `store-structural-types.ts`, and
5
5
  * like it the param shapes come straight from `@ifc-lite/create`.
6
6
  */
7
- import type { ElementTypeInStoreParams, MaterialInStoreParams, MaterialLayerSetInStoreParams, MaterialLayerSetUsageInStoreParams, HostedDoorInStoreParams, HostedWindowInStoreParams, OpeningInStoreParams } from '@ifc-lite/create';
7
+ import type { ElementTypeInStoreParams, MaterialInStoreParams, MaterialLayerSetInStoreParams, MaterialLayerSetUsageInStoreParams, HostedDoorInStoreParams, HostedWindowInStoreParams, OpeningInStoreParams, WallJoinApplyOptions } from '@ifc-lite/create';
8
8
  import type { EntityRef } from './types.js';
9
9
  export interface ModellingStoreBackendMethods {
10
+ /** Join two straight walls through IfcRelConnectsPathElements, rewriting their bodies/axes atomically. Returns the relationship. */
11
+ joinWalls(modelId: string, aExpressId: number, bExpressId: number, options?: WallJoinApplyOptions): EntityRef;
10
12
  /** `IfcOpeningElement` + `IfcRelVoidsElement` cut into an existing IfcWall or IfcSlab. Returns the opening. */
11
13
  addOpening(modelId: string, hostExpressId: number, params: OpeningInStoreParams): EntityRef;
12
14
  /** `IfcDoor` in a new opening of an IfcWall, linked by `IfcRelFillsElement`. Returns the door. */
@@ -1 +1 @@
1
- {"version":3,"file":"store-modelling-types.d.ts","sourceRoot":"","sources":["../src/store-modelling-types.ts"],"names":[],"mappings":"AAIA;;;;;GAKG;AAEH,OAAO,KAAK,EACV,wBAAwB,EACxB,qBAAqB,EACrB,6BAA6B,EAC7B,kCAAkC,EAClC,uBAAuB,EACvB,yBAAyB,EACzB,oBAAoB,EACrB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAE5C,MAAM,WAAW,4BAA4B;IAC3C,+GAA+G;IAC/G,UAAU,CAAC,OAAO,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,EAAE,MAAM,EAAE,oBAAoB,GAAG,SAAS,CAAC;IAC5F,kGAAkG;IAClG,aAAa,CAAC,OAAO,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,EAAE,MAAM,EAAE,uBAAuB,GAAG,SAAS,CAAC;IAClG,sGAAsG;IACtG,eAAe,CAAC,OAAO,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,EAAE,MAAM,EAAE,yBAAyB,GAAG,SAAS,CAAC;IACtG,0HAA0H;IAC1H,cAAc,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,wBAAwB,GAAG,SAAS,CAAC;IAC7E,mJAAmJ;IACnJ,UAAU,CAAC,OAAO,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,EAAE,gBAAgB,EAAE,MAAM,EAAE,GAAG,SAAS,CAAC;IAC1F,wBAAwB;IACxB,WAAW,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,qBAAqB,GAAG,SAAS,CAAC;IACvE,+GAA+G;IAC/G,mBAAmB,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,6BAA6B,GAAG,SAAS,CAAC;IACvF,mFAAmF;IACnF,wBAAwB,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,kCAAkC,GAAG,SAAS,CAAC;IACjG,gKAAgK;IAChK,cAAc,CAAC,OAAO,EAAE,MAAM,EAAE,iBAAiB,EAAE,MAAM,EAAE,gBAAgB,EAAE,MAAM,EAAE,GAAG,SAAS,CAAC;CACnG"}
1
+ {"version":3,"file":"store-modelling-types.d.ts","sourceRoot":"","sources":["../src/store-modelling-types.ts"],"names":[],"mappings":"AAIA;;;;;GAKG;AAEH,OAAO,KAAK,EACV,wBAAwB,EACxB,qBAAqB,EACrB,6BAA6B,EAC7B,kCAAkC,EAClC,uBAAuB,EACvB,yBAAyB,EACzB,oBAAoB,EACpB,oBAAoB,EACrB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAE5C,MAAM,WAAW,4BAA4B;IAC3C,oIAAoI;IACpI,SAAS,CAAC,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,oBAAoB,GAAG,SAAS,CAAC;IAC9G,+GAA+G;IAC/G,UAAU,CAAC,OAAO,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,EAAE,MAAM,EAAE,oBAAoB,GAAG,SAAS,CAAC;IAC5F,kGAAkG;IAClG,aAAa,CAAC,OAAO,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,EAAE,MAAM,EAAE,uBAAuB,GAAG,SAAS,CAAC;IAClG,sGAAsG;IACtG,eAAe,CAAC,OAAO,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,EAAE,MAAM,EAAE,yBAAyB,GAAG,SAAS,CAAC;IACtG,0HAA0H;IAC1H,cAAc,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,wBAAwB,GAAG,SAAS,CAAC;IAC7E,mJAAmJ;IACnJ,UAAU,CAAC,OAAO,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,EAAE,gBAAgB,EAAE,MAAM,EAAE,GAAG,SAAS,CAAC;IAC1F,wBAAwB;IACxB,WAAW,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,qBAAqB,GAAG,SAAS,CAAC;IACvE,+GAA+G;IAC/G,mBAAmB,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,6BAA6B,GAAG,SAAS,CAAC;IACvF,mFAAmF;IACnF,wBAAwB,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,kCAAkC,GAAG,SAAS,CAAC;IACjG,gKAAgK;IAChK,cAAc,CAAC,OAAO,EAAE,MAAM,EAAE,iBAAiB,EAAE,MAAM,EAAE,gBAAgB,EAAE,MAAM,EAAE,GAAG,SAAS,CAAC;CACnG"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ifc-lite/sdk",
3
- "version": "8.0.0",
3
+ "version": "9.0.0",
4
4
  "description": "Scripting SDK for ifc-lite — the bim.* API for BIM automation",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",
@@ -13,25 +13,25 @@
13
13
  }
14
14
  },
15
15
  "dependencies": {
16
- "@ifc-lite/create": "^3.2.0",
17
16
  "@ifc-lite/bcf": "^5.0.0",
17
+ "@ifc-lite/create": "^4.0.0",
18
+ "@ifc-lite/clash": "^2.4.4",
18
19
  "@ifc-lite/data": "^6.1.0",
19
- "@ifc-lite/drawing-2d": "^4.0.4",
20
- "@ifc-lite/clash": "^2.4.3",
21
- "@ifc-lite/export": "^4.8.0",
20
+ "@ifc-lite/drawing-2d": "^4.1.0",
22
21
  "@ifc-lite/encoding": "^2.3.0",
23
- "@ifc-lite/ids": "^3.1.0",
24
- "@ifc-lite/lens": "^2.0.0",
25
- "@ifc-lite/lists": "^3.0.0",
26
- "@ifc-lite/mutations": "^3.0.0",
27
- "@ifc-lite/query": "^2.5.2",
22
+ "@ifc-lite/lens": "^2.1.0",
23
+ "@ifc-lite/export": "^4.9.0",
24
+ "@ifc-lite/ids": "^3.2.0",
25
+ "@ifc-lite/lists": "^3.0.1",
28
26
  "@ifc-lite/spatial": "^1.15.0",
29
- "@ifc-lite/parser": "^9.1.0"
27
+ "@ifc-lite/parser": "^9.2.0",
28
+ "@ifc-lite/query": "^2.5.2",
29
+ "@ifc-lite/mutations": "^3.1.0"
30
30
  },
31
31
  "devDependencies": {
32
32
  "typescript": "^6.0.3",
33
33
  "vitest": "^5.0.2",
34
- "@ifc-lite/export": "^4.8.0"
34
+ "@ifc-lite/export": "^4.9.0"
35
35
  },
36
36
  "license": "MPL-2.0",
37
37
  "author": "Louis True",