brepjs-bim 0.16.0 → 0.17.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
@@ -23,7 +23,8 @@ curtain walls, a panel/mullion grid). Element geometry is **unplaced template ge
23
23
  coordinates — placement (`origin` / `axisX` / `axisZ`) is applied by the IFC layer via
24
24
  `IfcLocalPlacement`, not baked into the brepjs solid. Use `placedSolids(element)` to read an
25
25
  element's geometry already transformed to its world placement as fresh, caller-owned solids
26
- (stairs return one solid per flight) handy for display so the on-screen scene matches the IFC
26
+ (stairs and ramps return one solid per flight, curtain walls their panels and mullions) handy
27
+ for display so the on-screen scene matches the IFC
27
28
  export.
28
29
 
29
30
  - Units default to mm; IFC export emits SI metres.
@@ -35,18 +36,18 @@ export.
35
36
 
36
37
  ## Status
37
38
 
38
- | Area | State |
39
- | ----------------- | -------------------------------------------------------------------------------------------------------- |
40
- | Elements | wall, slab, beam, column, roof, curtain wall, space, footing/pile, stair, ramp, railing, covering, proxy |
41
- | Profiles | rectangular / circular / I-shape cores + extended L/T/U/Z/C, hollow, ellipse, arbitrary-with-voids |
42
- | Openings | door / window / slab openings cut as boolean voids; `FillsOpening` / `Voids*` relationships |
43
- | Spatial structure | project → site → building → storey aggregation; `placeIn` to assign elements to a storey |
44
- | Property sets | IFC pset templates + measure types; quantity sets for takeoff |
45
- | Data layers | materials (layer/profile/simple sets), classification refs, surface styles, zones/systems |
46
- | IFC export | `toIfc` → IFC-SPF (`Uint8Array`); IFC4 / IFC4X3 schema selection; owner history |
47
- | IFC import | `fromIfc` / `SpfReader` → `ImportedModel` (elements, geometry, psets, materials, spatial tree) |
48
- | Validation | referential integrity, schema check, geometry validity, IFC round-trip report |
49
- | Interop | COBie 2.4 export (CSV/JSON), IDS 1.0 checking, BCF 3.0 read/write |
39
+ | Area | State |
40
+ | ----------------- | ---------------------------------------------------------------------------------------------------------- |
41
+ | Elements | wall, slab, beam, column, roof, curtain wall, space, footing/pile, stair, ramp, railing, covering, proxy |
42
+ | Profiles | rectangular / circular / I-shape cores + extended L/T/U/Z/C, hollow, ellipse, arbitrary-with-voids |
43
+ | Openings | door / window / slab openings cut as boolean voids; `FillsOpening` / `Voids*` relationships |
44
+ | Spatial structure | project → site → building → storey aggregation; `placeIn` to assign elements to a storey |
45
+ | Property sets | IFC pset templates + measure types; quantity sets for takeoff |
46
+ | Data layers | materials (layer/profile/simple sets), classification refs, surface styles, zones/systems |
47
+ | IFC export | `toIfc` → IFC-SPF (`Uint8Array`); IFC4 / IFC4X3 schema selection; owner history |
48
+ | IFC import | `fromIfc` / `SpfReader` → `ImportedModel` (elements, geometry, psets, materials, spatial tree) |
49
+ | Validation | referential integrity, schema check, geometry validity, IFC round-trip report, buildingSMART gherkin rules |
50
+ | Interop | COBie 2.4 export (CSV/JSON), IDS 1.0 checking, BCF 3.0 read/write |
50
51
 
51
52
  ### Independent validation
52
53
 
@@ -56,9 +57,13 @@ web-ifc parser used internally), not just self-checked. The committed sample
56
57
  validator and generates geometry for every product. See [VALIDATION.md](./VALIDATION.md)
57
58
  to reproduce, and `examples/sampleBuilding.mjs` for the model it validates.
58
59
 
59
- > **Not yet:** the official buildingSMART Validation Service and desktop-tool
60
- > interop (Revit / Solibri) are unverified the fixtures and per-tool
61
- > checklists are ready in [VALIDATION.md](./VALIDATION.md). This is an
60
+ The buildingSMART Validation Service's complete normative rule catalog also runs
61
+ locally (`scripts/setupGherkinRunner.sh` builds the service's own engine; all three
62
+ committed fixtures pass 950 scenarios with zero failures), so service findings are
63
+ reproducible before upload.
64
+
65
+ > **Not yet:** desktop-tool interop (Revit / Solibri) is unverified. The fixtures
66
+ > and per-tool checklists are ready in [VALIDATION.md](./VALIDATION.md). This is an
62
67
  > experimental pre-1.0 package and the API may change.
63
68
 
64
69
  ## Usage
@@ -98,7 +103,7 @@ if (wall.ok) model.placeIn(wall.value, storeyId);
98
103
  const solid = model.getWalls()[0]?.geometry;
99
104
 
100
105
  // Serialize to an IFC-SPF byte buffer.
101
- const ifc = await toIfc(model, { name: 'Example', author: 'brepjs-bim' });
106
+ const ifc = await toIfc(model, { applicationName: 'brepjs-bim', applicationVersion: '1.0' });
102
107
  // ifc.ok && ifc.value instanceof Uint8Array
103
108
  ```
104
109