@ifc-lite/create 3.1.0 → 4.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.
Files changed (208) hide show
  1. package/README.md +9 -0
  2. package/dist/ifc-creator-math.d.ts +5 -7
  3. package/dist/ifc-creator-math.d.ts.map +1 -1
  4. package/dist/ifc-creator-math.js +8 -15
  5. package/dist/ifc-creator-math.js.map +1 -1
  6. package/dist/in-store/anchor.d.ts +25 -0
  7. package/dist/in-store/anchor.d.ts.map +1 -1
  8. package/dist/in-store/auto-space-detect.d.ts +1 -1
  9. package/dist/in-store/auto-space-detect.js +1 -1
  10. package/dist/in-store/beam.d.ts +10 -1
  11. package/dist/in-store/beam.d.ts.map +1 -1
  12. package/dist/in-store/beam.js +14 -25
  13. package/dist/in-store/beam.js.map +1 -1
  14. package/dist/in-store/column.d.ts +18 -1
  15. package/dist/in-store/column.d.ts.map +1 -1
  16. package/dist/in-store/column.js +37 -29
  17. package/dist/in-store/column.js.map +1 -1
  18. package/dist/in-store/copy-frame.d.ts +52 -0
  19. package/dist/in-store/copy-frame.d.ts.map +1 -0
  20. package/dist/in-store/copy-frame.js +99 -0
  21. package/dist/in-store/copy-frame.js.map +1 -0
  22. package/dist/in-store/copy-product.d.ts +96 -0
  23. package/dist/in-store/copy-product.d.ts.map +1 -0
  24. package/dist/in-store/copy-product.js +318 -0
  25. package/dist/in-store/copy-product.js.map +1 -0
  26. package/dist/in-store/curtain-wall.d.ts +87 -0
  27. package/dist/in-store/curtain-wall.d.ts.map +1 -0
  28. package/dist/in-store/curtain-wall.js +237 -0
  29. package/dist/in-store/curtain-wall.js.map +1 -0
  30. package/dist/in-store/door.d.ts +10 -4
  31. package/dist/in-store/door.d.ts.map +1 -1
  32. package/dist/in-store/door.js +23 -17
  33. package/dist/in-store/door.js.map +1 -1
  34. package/dist/in-store/element-type.d.ts +40 -0
  35. package/dist/in-store/element-type.d.ts.map +1 -0
  36. package/dist/in-store/element-type.js +60 -0
  37. package/dist/in-store/element-type.js.map +1 -0
  38. package/dist/in-store/extract-grids.d.ts +46 -0
  39. package/dist/in-store/extract-grids.d.ts.map +1 -0
  40. package/dist/in-store/extract-grids.js +211 -0
  41. package/dist/in-store/extract-grids.js.map +1 -0
  42. package/dist/in-store/extract-walls.d.ts +12 -23
  43. package/dist/in-store/extract-walls.d.ts.map +1 -1
  44. package/dist/in-store/extract-walls.js +14 -83
  45. package/dist/in-store/extract-walls.js.map +1 -1
  46. package/dist/in-store/generate-spaces.d.ts +1 -1
  47. package/dist/in-store/grid.d.ts +118 -0
  48. package/dist/in-store/grid.d.ts.map +1 -0
  49. package/dist/in-store/grid.js +194 -0
  50. package/dist/in-store/grid.js.map +1 -0
  51. package/dist/in-store/host-geometry-frame.d.ts +44 -0
  52. package/dist/in-store/host-geometry-frame.d.ts.map +1 -0
  53. package/dist/in-store/host-geometry-frame.js +146 -0
  54. package/dist/in-store/host-geometry-frame.js.map +1 -0
  55. package/dist/in-store/hosted-element-edit.d.ts +29 -0
  56. package/dist/in-store/hosted-element-edit.d.ts.map +1 -0
  57. package/dist/in-store/hosted-element-edit.js +120 -0
  58. package/dist/in-store/hosted-element-edit.js.map +1 -0
  59. package/dist/in-store/hosted-element.d.ts +41 -0
  60. package/dist/in-store/hosted-element.d.ts.map +1 -0
  61. package/dist/in-store/hosted-element.js +124 -0
  62. package/dist/in-store/hosted-element.js.map +1 -0
  63. package/dist/in-store/hosted-fill-read.d.ts +56 -0
  64. package/dist/in-store/hosted-fill-read.d.ts.map +1 -0
  65. package/dist/in-store/hosted-fill-read.js +197 -0
  66. package/dist/in-store/hosted-fill-read.js.map +1 -0
  67. package/dist/in-store/hosted-fill.d.ts +48 -0
  68. package/dist/in-store/hosted-fill.d.ts.map +1 -0
  69. package/dist/in-store/hosted-fill.js +58 -0
  70. package/dist/in-store/hosted-fill.js.map +1 -0
  71. package/dist/in-store/hosted-global-id.d.ts +8 -0
  72. package/dist/in-store/hosted-global-id.d.ts.map +1 -0
  73. package/dist/in-store/hosted-global-id.js +53 -0
  74. package/dist/in-store/hosted-global-id.js.map +1 -0
  75. package/dist/in-store/hosted-placement-edit.d.ts +30 -0
  76. package/dist/in-store/hosted-placement-edit.d.ts.map +1 -0
  77. package/dist/in-store/hosted-placement-edit.js +123 -0
  78. package/dist/in-store/hosted-placement-edit.js.map +1 -0
  79. package/dist/in-store/hosted-scale-chain.d.ts +12 -0
  80. package/dist/in-store/hosted-scale-chain.d.ts.map +1 -0
  81. package/dist/in-store/hosted-scale-chain.js +74 -0
  82. package/dist/in-store/hosted-scale-chain.js.map +1 -0
  83. package/dist/in-store/hosted-shape-edit.d.ts +9 -0
  84. package/dist/in-store/hosted-shape-edit.d.ts.map +1 -0
  85. package/dist/in-store/hosted-shape-edit.js +79 -0
  86. package/dist/in-store/hosted-shape-edit.js.map +1 -0
  87. package/dist/in-store/index.d.ts +59 -0
  88. package/dist/in-store/index.d.ts.map +1 -0
  89. package/dist/in-store/index.js +64 -0
  90. package/dist/in-store/index.js.map +1 -0
  91. package/dist/in-store/material.d.ts +62 -0
  92. package/dist/in-store/material.d.ts.map +1 -0
  93. package/dist/in-store/material.js +107 -0
  94. package/dist/in-store/material.js.map +1 -0
  95. package/dist/in-store/member.d.ts +8 -2
  96. package/dist/in-store/member.d.ts.map +1 -1
  97. package/dist/in-store/member.js +12 -14
  98. package/dist/in-store/member.js.map +1 -1
  99. package/dist/in-store/opening.d.ts +45 -0
  100. package/dist/in-store/opening.d.ts.map +1 -0
  101. package/dist/in-store/opening.js +104 -0
  102. package/dist/in-store/opening.js.map +1 -0
  103. package/dist/in-store/placement-frame.d.ts +9 -4
  104. package/dist/in-store/placement-frame.d.ts.map +1 -1
  105. package/dist/in-store/placement-frame.js +39 -39
  106. package/dist/in-store/placement-frame.js.map +1 -1
  107. package/dist/in-store/profile.d.ts +141 -0
  108. package/dist/in-store/profile.d.ts.map +1 -0
  109. package/dist/in-store/profile.js +174 -0
  110. package/dist/in-store/profile.js.map +1 -0
  111. package/dist/in-store/railing.d.ts +65 -0
  112. package/dist/in-store/railing.d.ts.map +1 -0
  113. package/dist/in-store/railing.js +112 -0
  114. package/dist/in-store/railing.js.map +1 -0
  115. package/dist/in-store/rel-connects-path.d.ts +43 -0
  116. package/dist/in-store/rel-connects-path.d.ts.map +1 -0
  117. package/dist/in-store/rel-connects-path.js +65 -0
  118. package/dist/in-store/rel-connects-path.js.map +1 -0
  119. package/dist/in-store/relate.d.ts +32 -0
  120. package/dist/in-store/relate.d.ts.map +1 -0
  121. package/dist/in-store/relate.js +39 -0
  122. package/dist/in-store/relate.js.map +1 -0
  123. package/dist/in-store/resolve-anchor.d.ts +21 -1
  124. package/dist/in-store/resolve-anchor.d.ts.map +1 -1
  125. package/dist/in-store/resolve-anchor.js +6 -2
  126. package/dist/in-store/resolve-anchor.js.map +1 -1
  127. package/dist/in-store/resolve-host.d.ts +16 -0
  128. package/dist/in-store/resolve-host.d.ts.map +1 -0
  129. package/dist/in-store/resolve-host.js +333 -0
  130. package/dist/in-store/resolve-host.js.map +1 -0
  131. package/dist/in-store/resolve-relations.d.ts +23 -0
  132. package/dist/in-store/resolve-relations.d.ts.map +1 -0
  133. package/dist/in-store/resolve-relations.js +57 -0
  134. package/dist/in-store/resolve-relations.js.map +1 -0
  135. package/dist/in-store/resolve-source.d.ts.map +1 -1
  136. package/dist/in-store/resolve-source.js +59 -63
  137. package/dist/in-store/resolve-source.js.map +1 -1
  138. package/dist/in-store/schema-attributes.d.ts +33 -0
  139. package/dist/in-store/schema-attributes.d.ts.map +1 -0
  140. package/dist/in-store/schema-attributes.js +102 -0
  141. package/dist/in-store/schema-attributes.js.map +1 -0
  142. package/dist/in-store/space-footprints.d.ts +55 -0
  143. package/dist/in-store/space-footprints.d.ts.map +1 -0
  144. package/dist/in-store/space-footprints.js +260 -0
  145. package/dist/in-store/space-footprints.js.map +1 -0
  146. package/dist/in-store/space.d.ts.map +1 -1
  147. package/dist/in-store/space.js +15 -3
  148. package/dist/in-store/space.js.map +1 -1
  149. package/dist/in-store/spatial-children.d.ts +1 -1
  150. package/dist/in-store/spatial-children.js +1 -1
  151. package/dist/in-store/stair-edit.d.ts +24 -0
  152. package/dist/in-store/stair-edit.d.ts.map +1 -0
  153. package/dist/in-store/stair-edit.js +190 -0
  154. package/dist/in-store/stair-edit.js.map +1 -0
  155. package/dist/in-store/stair.d.ts +58 -0
  156. package/dist/in-store/stair.d.ts.map +1 -0
  157. package/dist/in-store/stair.js +156 -0
  158. package/dist/in-store/stair.js.map +1 -0
  159. package/dist/in-store/wall-join-apply.d.ts +74 -0
  160. package/dist/in-store/wall-join-apply.d.ts.map +1 -0
  161. package/dist/in-store/wall-join-apply.js +137 -0
  162. package/dist/in-store/wall-join-apply.js.map +1 -0
  163. package/dist/in-store/wall-join-edit.d.ts +70 -0
  164. package/dist/in-store/wall-join-edit.d.ts.map +1 -0
  165. package/dist/in-store/wall-join-edit.js +217 -0
  166. package/dist/in-store/wall-join-edit.js.map +1 -0
  167. package/dist/in-store/wall-join-read.d.ts +60 -0
  168. package/dist/in-store/wall-join-read.d.ts.map +1 -0
  169. package/dist/in-store/wall-join-read.js +230 -0
  170. package/dist/in-store/wall-join-read.js.map +1 -0
  171. package/dist/in-store/wall-join.d.ts +122 -0
  172. package/dist/in-store/wall-join.d.ts.map +1 -0
  173. package/dist/in-store/wall-join.js +231 -0
  174. package/dist/in-store/wall-join.js.map +1 -0
  175. package/dist/in-store/wall-opening-fit.d.ts +11 -0
  176. package/dist/in-store/wall-opening-fit.d.ts.map +1 -0
  177. package/dist/in-store/wall-opening-fit.js +27 -0
  178. package/dist/in-store/wall-opening-fit.js.map +1 -0
  179. package/dist/in-store/wall.d.ts +32 -0
  180. package/dist/in-store/wall.d.ts.map +1 -1
  181. package/dist/in-store/wall.js +77 -13
  182. package/dist/in-store/wall.js.map +1 -1
  183. package/dist/in-store/window.d.ts +7 -0
  184. package/dist/in-store/window.d.ts.map +1 -1
  185. package/dist/in-store/window.js +24 -17
  186. package/dist/in-store/window.js.map +1 -1
  187. package/dist/index.d.ts +1 -31
  188. package/dist/index.d.ts.map +1 -1
  189. package/dist/index.js +2 -34
  190. package/dist/index.js.map +1 -1
  191. package/dist/landxml/cant-superelevation.d.ts +28 -0
  192. package/dist/landxml/cant-superelevation.d.ts.map +1 -0
  193. package/dist/landxml/cant-superelevation.js +31 -0
  194. package/dist/landxml/cant-superelevation.js.map +1 -0
  195. package/dist/landxml/landxml-to-ifc.d.ts +8 -2
  196. package/dist/landxml/landxml-to-ifc.d.ts.map +1 -1
  197. package/dist/landxml/landxml-to-ifc.js +34 -2
  198. package/dist/landxml/landxml-to-ifc.js.map +1 -1
  199. package/dist/landxml/refusals.d.ts.map +1 -1
  200. package/dist/landxml/refusals.js +8 -3
  201. package/dist/landxml/refusals.js.map +1 -1
  202. package/dist/landxml/result-types.d.ts +44 -0
  203. package/dist/landxml/result-types.d.ts.map +1 -1
  204. package/dist/landxml/writers.d.ts +4 -0
  205. package/dist/landxml/writers.d.ts.map +1 -1
  206. package/dist/landxml/writers.js +4 -2
  207. package/dist/landxml/writers.js.map +1 -1
  208. package/package.json +8 -7
@@ -4,7 +4,7 @@
4
4
  /**
5
5
  * LandXML → IFC4X3, v1.
6
6
  *
7
- * Implements `docs/architecture/landxml-to-ifc-mapping.md` v1.0. That document
7
+ * Implements `docs/architecture/landxml-to-ifc-mapping.md` (v1.4). That document
8
8
  * is the contract; anything not written there is not in v1, and a change to the
9
9
  * mapping is a change to that document first.
10
10
  *
@@ -31,7 +31,7 @@ import { mapProfiles } from './profile-mapping.js';
31
31
  import { stationEquationsOf } from './station-equations.js';
32
32
  import { writeAlignments, writeSurfaces, writeSurveyPoints } from './writers.js';
33
33
  /** The mapping-document version this converter implements. */
34
- export const LANDXML_IFC_MAPPING_VERSION = '1.3';
34
+ export const LANDXML_IFC_MAPPING_VERSION = '1.4';
35
35
  /** Deterministic GlobalId from a LandXML source id (§4.3, §10). */
36
36
  export function landXmlGlobalId(sourceId) {
37
37
  return uuidToIfcGuid(uuidFromSeed(sourceId));
@@ -146,12 +146,14 @@ export function landXmlToIfc(source, options = {}) {
146
146
  assumedLinearUnit: units.assumed ? units.linearUnit : null,
147
147
  coordinateOrderSwapped: swap,
148
148
  refusedFamilies: refusals.map((refusal) => refusal.family),
149
+ ...(options.imagery ? { imagery: options.imagery } : {}),
149
150
  };
150
151
  writeProvenance(terrain, provenance, coverage);
151
152
  return {
152
153
  status: 'exported',
153
154
  content: creator.toIfc().content,
154
155
  coverage,
156
+ surfaceElements: surfaceResult.elements,
155
157
  provenance,
156
158
  refusals,
157
159
  warnings,
@@ -194,10 +196,40 @@ function writeProvenance(terrain, provenance, coverage) {
194
196
  { Name: 'ExportedSurveyPoints', Value: String(coverage.surveyPoints) },
195
197
  { Name: 'ExportedAlignments', Value: String(coverage.alignments ?? 0) },
196
198
  { Name: 'ExportedProfiles', Value: String(coverage.profiles ?? 0) },
199
+ ...imageryProperties(provenance.imagery),
197
200
  ];
198
201
  terrain.addPropertySet(terrain.siteId, {
199
202
  Name: 'LandXML_Conversion',
200
203
  Properties: properties,
201
204
  });
202
205
  }
206
+ /** A number as provenance text: full precision, never an exponent. */
207
+ function plain(value) {
208
+ return Number.isInteger(value) ? String(value) : String(Number(value.toPrecision(15)));
209
+ }
210
+ /**
211
+ * §15.5 — the imagery rows of `LandXML_Conversion`, written only when imagery
212
+ * is exported. The projection is spelled out so a reader can recompute every
213
+ * UV from the file alone: `u = (P − O)·U / W`, `v = (P − O)·V / H`.
214
+ */
215
+ function imageryProperties(imagery) {
216
+ if (!imagery)
217
+ return [];
218
+ const { projection: p } = imagery;
219
+ const pair = (value) => `(${plain(value[0])}, ${plain(value[1])})`;
220
+ return [
221
+ { Name: 'ImagerySourceFileName', Value: imagery.sourceFileName },
222
+ { Name: 'ImagerySourceHash', Value: imagery.sourceHash },
223
+ { Name: 'ImageryPlacement', Value: imagery.placement },
224
+ { Name: 'ImageryCrs', Value: imagery.crs },
225
+ {
226
+ Name: 'ImageryProjection',
227
+ Value: `planar in ${p.crs}: O ${pair(p.origin)}, U ${pair(p.axisU)}, V ${pair(p.axisV)}, `
228
+ + `W ${plain(p.extent[0])}, H ${plain(p.extent[1])}`,
229
+ },
230
+ { Name: 'ImageryCoveredFraction', Value: plain(imagery.coveredFraction) },
231
+ ...(imagery.shippedFileName ? [{ Name: 'ImageryShippedFileName', Value: imagery.shippedFileName }] : []),
232
+ ...(imagery.shippedHash ? [{ Name: 'ImageryShippedHash', Value: imagery.shippedHash }] : []),
233
+ ];
234
+ }
203
235
  //# sourceMappingURL=landxml-to-ifc.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"landxml-to-ifc.js","sourceRoot":"","sources":["../../src/landxml/landxml-to-ifc.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"landxml-to-ifc.js","sourceRoot":"","sources":["../../src/landxml/landxml-to-ifc.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"refusals.d.ts","sourceRoot":"","sources":["../../src/landxml/refusals.ts"],"names":[],"mappings":"AAIA;;;;;;GAMG;AAEH,OAAO,KAAK,EAAuB,gBAAgB,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AAClG,OAAO,KAAK,EAAE,cAAc,EAAwB,MAAM,mBAAmB,CAAC;AAC9E,OAAO,EACgD,KAAK,gBAAgB,EAAE,KAAK,gBAAgB,EAClG,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAe,KAAK,cAAc,EAAE,KAAK,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAC7F,OAAO,EAAsB,KAAK,sBAAsB,EAAE,MAAM,wBAAwB,CAAC;AAmCzF;;;;;GAKG;AACH,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,iBAAiB,GAAG,OAAO,CAIrE;AAED;;;;;;GAMG;AACH,iGAAiG;AACjG,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,gBAAgB,GAAG,gBAAgB,CAE7E;AAED,wBAAgB,eAAe,CAC7B,MAAM,EAAE,gBAAgB,EAAE,gBAAgB,GAAE,gBAA6C,EACzF,cAAc,GAAE,cAEf,EACD,UAAU,GAAE,WAAW,CAAC,MAAM,EAAE,sBAAsB,CAAgD,GACrG,cAAc,EAAE,CA2ClB;AAED;;;GAGG;AACH,wBAAgB,uBAAuB,CAAC,OAAO,EAAE,SAAS,gBAAgB,EAAE,GAAG,MAAM,CAOpF;AAED,oEAAoE;AACpE,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,SAAS,cAAc,EAAE,GAAG,MAAM,CAKhF;AAcD;;;;;;GAMG;AACH,wBAAgB,aAAa,CAAC,QAAQ,EAAE,SAAS,cAAc,EAAE,GAAG,MAAM,CAOzE"}
1
+ {"version":3,"file":"refusals.d.ts","sourceRoot":"","sources":["../../src/landxml/refusals.ts"],"names":[],"mappings":"AAIA;;;;;;GAMG;AAEH,OAAO,KAAK,EAAuB,gBAAgB,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AAClG,OAAO,KAAK,EAAE,cAAc,EAAwB,MAAM,mBAAmB,CAAC;AAC9E,OAAO,EACgD,KAAK,gBAAgB,EAAE,KAAK,gBAAgB,EAClG,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAe,KAAK,cAAc,EAAE,KAAK,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAC7F,OAAO,EAAsB,KAAK,sBAAsB,EAAE,MAAM,wBAAwB,CAAC;AAsCzF;;;;;GAKG;AACH,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,iBAAiB,GAAG,OAAO,CAIrE;AAED;;;;;;GAMG;AACH,iGAAiG;AACjG,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,gBAAgB,GAAG,gBAAgB,CAE7E;AAED,wBAAgB,eAAe,CAC7B,MAAM,EAAE,gBAAgB,EAAE,gBAAgB,GAAE,gBAA6C,EACzF,cAAc,GAAE,cAEf,EACD,UAAU,GAAE,WAAW,CAAC,MAAM,EAAE,sBAAsB,CAAgD,GACrG,cAAc,EAAE,CA+ClB;AAED;;;GAGG;AACH,wBAAgB,uBAAuB,CAAC,OAAO,EAAE,SAAS,gBAAgB,EAAE,GAAG,MAAM,CAOpF;AAED,oEAAoE;AACpE,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,SAAS,cAAc,EAAE,GAAG,MAAM,CAKhF;AAcD;;;;;;GAMG;AACH,wBAAgB,aAAa,CAAC,QAAQ,EAAE,SAAS,cAAc,EAAE,GAAG,MAAM,CAOzE"}
@@ -4,6 +4,7 @@
4
4
  import { cogoPointResolver, isAlignmentRecord, mapAlignments, } from './alignment-mapping.js';
5
5
  import { mapProfiles } from './profile-mapping.js';
6
6
  import { stationEquationsOf } from './station-equations.js';
7
+ import { CANT_REFUSAL_REASON, SUPERELEVATION_REFUSAL_REASON, cantRefusalMessage, superelevationRefusalMessage, } from './cant-superelevation.js';
7
8
  /**
8
9
  * Why each family is out of scope, in the operator's terms.
9
10
  *
@@ -26,8 +27,8 @@ const FAMILY_REASONS = {
26
27
  'non-rendered-surfaces': 'surfaces that carry no numeric, renderable triangulation (or whose every face is hidden) cannot become an IfcTriangulatedIrregularNetwork',
27
28
  'unlocated-cgpoints': 'CgPoints that carry only a point reference and no coordinates of their own have nothing to place',
28
29
  'station-equations': "an alignment's station equations are written all or none, because a dropped one would make every later station wrong; the alignment is still written, with its start station only",
29
- cant: 'cant (rail superelevation) has no mapping; the alignment is written with its horizontal layout only',
30
- superelevation: 'road superelevation has no mapping; the alignment is written with its horizontal layout only',
30
+ cant: CANT_REFUSAL_REASON,
31
+ superelevation: SUPERELEVATION_REFUSAL_REASON,
31
32
  };
32
33
  function countAcrossSurfaces(surfaces, pick) {
33
34
  return surfaces.reduce((total, surface) => total + (pick(surface)?.length ?? 0), 0);
@@ -92,7 +93,11 @@ export function collectRefusals(source, alignmentMapping = alignmentMappingOf(so
92
93
  ? profileRefusalMessage(profileMapping.refused)
93
94
  : family === 'station-equations'
94
95
  ? stationEquationRefusalMessage(count, writtenAlignments, stationing)
95
- : `${count} ${family.replace(/-/g, ' ')} record${count === 1 ? '' : 's'} will not be included: ${FAMILY_REASONS[family]}.`,
96
+ : family === 'cant'
97
+ ? cantRefusalMessage(writtenAlignments)
98
+ : family === 'superelevation'
99
+ ? superelevationRefusalMessage(writtenAlignments)
100
+ : `${count} ${family.replace(/-/g, ' ')} record${count === 1 ? '' : 's'} will not be included: ${FAMILY_REASONS[family]}.`,
96
101
  }));
97
102
  }
98
103
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"refusals.js","sourceRoot":"","sources":["../../src/landxml/refusals.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"refusals.js","sourceRoot":"","sources":["../../src/landxml/refusals.ts"],"names":[],"mappings":"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"}
@@ -50,6 +50,42 @@ export interface LandXmlIfcCoverage {
50
50
  */
51
51
  profiles?: number;
52
52
  }
53
+ /**
54
+ * Georeferenced imagery draped on the terrain, recorded as provenance (§15.5).
55
+ * An imagery overlay is never a claim the LandXML contained it: LandXML has no
56
+ * raster element. The texture itself is written afterwards, by the appearance
57
+ * workspace's planner, on the TIN elements named in `surfaceElements`.
58
+ */
59
+ export interface LandXmlIfcImagery {
60
+ /** The image file as the operator supplied it. */
61
+ sourceFileName: string;
62
+ /** SHA-256 (hex) of the supplied image bytes. */
63
+ sourceHash: string;
64
+ /** How the image was placed: its world file, or its GeoTIFF tags. */
65
+ placement: 'world file' | 'GeoTIFF';
66
+ /** The image's CRS as declared, e.g. `EPSG:2056`. */
67
+ crs: string;
68
+ /** The planar projection (§15.3), in the terrain CRS's native plan units. */
69
+ projection: {
70
+ crs: string;
71
+ origin: readonly [number, number];
72
+ axisU: readonly [number, number];
73
+ axisV: readonly [number, number];
74
+ extent: readonly [number, number];
75
+ };
76
+ /** Fraction of written TIN vertices on the image, 0–1. */
77
+ coveredFraction: number;
78
+ /** Set when the shipped image is not the supplied one (a GeoTIFF transcoded to PNG). */
79
+ shippedFileName?: string;
80
+ shippedHash?: string;
81
+ }
82
+ /** A written terrain surface and the `IfcGeographicElement` carrying it. */
83
+ export interface LandXmlIfcSurfaceElement {
84
+ /** The LandXML surface's source id, e.g. `landxml:surface:1`. */
85
+ sourceId: string;
86
+ /** Express id of its `IfcGeographicElement` in `content`. */
87
+ expressId: number;
88
+ }
53
89
  /** What the produced file records about where it came from (§7). */
54
90
  export interface LandXmlIfcProvenance {
55
91
  sourceFileName: string | null;
@@ -60,11 +96,19 @@ export interface LandXmlIfcProvenance {
60
96
  assumedLinearUnit: string | null;
61
97
  coordinateOrderSwapped: boolean;
62
98
  refusedFamilies: readonly LandXmlRefusedFamily[];
99
+ /** Imagery provenance (§15.5); absent when none was exported. */
100
+ imagery?: LandXmlIfcImagery;
63
101
  }
64
102
  export type LandXmlIfcResult = {
65
103
  status: 'exported';
66
104
  content: string;
67
105
  coverage: LandXmlIfcCoverage;
106
+ /**
107
+ * Each written surface's element, so a caller can address it in
108
+ * `content` — the imagery export textures these (§15.5). Optional only so
109
+ * adding it is not a breaking change to a published result type.
110
+ */
111
+ surfaceElements?: readonly LandXmlIfcSurfaceElement[];
68
112
  provenance: LandXmlIfcProvenance;
69
113
  refusals: readonly LandXmlRefusal[];
70
114
  warnings: readonly LandXmlIfcWarning[];
@@ -1 +1 @@
1
- {"version":3,"file":"result-types.d.ts","sourceRoot":"","sources":["../../src/landxml/result-types.ts"],"names":[],"mappings":"AAIA;;;;;;;;GAQG;AAEH,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAEzD;;;;;GAKG;AACH,MAAM,MAAM,oBAAoB,GAC5B,YAAY,GACZ,UAAU,GACV,gBAAgB,GAChB,UAAU,GACV,SAAS,GACT,WAAW,GACX,eAAe,GACf,eAAe,GACf,oBAAoB,GACpB,oBAAoB,GACpB,kBAAkB,GAClB,uBAAuB,GACvB,oBAAoB,GACpB,mBAAmB,GACnB,MAAM,GACN,gBAAgB,CAAC;AAErB,MAAM,WAAW,cAAc;IAC7B,MAAM,EAAE,oBAAoB,CAAC;IAC7B,oEAAoE;IACpE,KAAK,EAAE,MAAM,CAAC;IACd,gFAAgF;IAChF,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,wEAAwE;AACxE,MAAM,WAAW,iBAAiB;IAChC,0EAA0E;IAC1E,IAAI,EAAE,mBAAmB,GAAG,oBAAoB,GAAG,cAAc,GAAG,qBAAqB,CAAC;IAC1F,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,kBAAkB;IACjC,kEAAkE;IAClE,QAAQ,EAAE,MAAM,CAAC;IACjB,iEAAiE;IACjE,YAAY,EAAE,MAAM,CAAC;IACrB,4CAA4C;IAC5C,QAAQ,EAAE,MAAM,CAAC;IACjB,6CAA6C;IAC7C,SAAS,EAAE,MAAM,CAAC;IAClB;;;;;OAKG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB;;;OAGG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,oEAAoE;AACpE,MAAM,WAAW,oBAAoB;IACnC,cAAc,EAAE,MAAM,GAAG,IAAI,CAAC;IAC9B,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,cAAc,EAAE,MAAM,CAAC;IACvB,aAAa,EAAE,MAAM,CAAC;IACtB,KAAK,EAAE,eAAe,GAAG,IAAI,CAAC;IAC9B,iBAAiB,EAAE,MAAM,GAAG,IAAI,CAAC;IACjC,sBAAsB,EAAE,OAAO,CAAC;IAChC,eAAe,EAAE,SAAS,oBAAoB,EAAE,CAAC;CAClD;AAED,MAAM,MAAM,gBAAgB,GACxB;IACA,MAAM,EAAE,UAAU,CAAC;IACnB,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,kBAAkB,CAAC;IAC7B,UAAU,EAAE,oBAAoB,CAAC;IACjC,QAAQ,EAAE,SAAS,cAAc,EAAE,CAAC;IACpC,QAAQ,EAAE,SAAS,iBAAiB,EAAE,CAAC;CACxC,GACC;IACA,MAAM,EAAE,SAAS,CAAC;IAClB,yEAAyE;IACzE,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,SAAS,cAAc,EAAE,CAAC;IACpC,QAAQ,EAAE,SAAS,iBAAiB,EAAE,CAAC;CACxC,CAAC"}
1
+ {"version":3,"file":"result-types.d.ts","sourceRoot":"","sources":["../../src/landxml/result-types.ts"],"names":[],"mappings":"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"}
@@ -19,6 +19,10 @@ export declare function writeSurfaces(terrain: TerrainWriter, surfaces: readonly
19
19
  vertices: number;
20
20
  triangles: number;
21
21
  samples: Array<[number, number]>;
22
+ elements: Array<{
23
+ sourceId: string;
24
+ expressId: number;
25
+ }>;
22
26
  };
23
27
  export declare function writeSurveyPoints(terrain: TerrainWriter, points: readonly LandXmlIfcCgPoint[], units: LandXmlIfcUnits, swap: boolean, landXmlGlobalId: GlobalIdOf): {
24
28
  count: number;
@@ -1 +1 @@
1
- {"version":3,"file":"writers.d.ts","sourceRoot":"","sources":["../../src/landxml/writers.ts"],"names":[],"mappings":"AAIA;;;;;;;;GAQG;AAEH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAE/D,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAC9D,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,wBAAwB,CAAC;AACrE,OAAO,KAAK,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAE/F,2FAA2F;AAC3F,MAAM,MAAM,UAAU,GAAG,CAAC,QAAQ,EAAE,MAAM,KAAK,MAAM,CAAC;AA6EtD,wBAAgB,aAAa,CAC3B,OAAO,EAAE,aAAa,EAAE,QAAQ,EAAE,SAAS,iBAAiB,EAAE,EAAE,KAAK,EAAE,eAAe,EAAE,IAAI,EAAE,OAAO,EACrG,eAAe,EAAE,UAAU,GAC1B;IAAE,QAAQ,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,KAAK,CAAC,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAA;CAAE,CAwB7F;AAED,wBAAgB,iBAAiB,CAC/B,OAAO,EAAE,aAAa,EAAE,MAAM,EAAE,SAAS,iBAAiB,EAAE,EAAE,KAAK,EAAE,eAAe,EAAE,IAAI,EAAE,OAAO,EACnG,eAAe,EAAE,UAAU,GAC1B;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,KAAK,CAAC,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAA;CAAE,CAyBrD;AAED;;;;GAIG;AACH,wBAAgB,eAAe,CAC7B,OAAO,EAAE,aAAa,EAAE,UAAU,EAAE,SAAS,eAAe,EAAE,EAAE,eAAe,EAAE,UAAU,EAC3F,QAAQ,GAAE,SAAS,aAAa,EAAO,EACvC,UAAU,GAAE,WAAW,CAAC,MAAM,EAAE,sBAAsB,CAAa,GAClE,KAAK,CAAC,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CA8BzB"}
1
+ {"version":3,"file":"writers.d.ts","sourceRoot":"","sources":["../../src/landxml/writers.ts"],"names":[],"mappings":"AAIA;;;;;;;;GAQG;AAEH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAE/D,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAC9D,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,wBAAwB,CAAC;AACrE,OAAO,KAAK,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAE/F,2FAA2F;AAC3F,MAAM,MAAM,UAAU,GAAG,CAAC,QAAQ,EAAE,MAAM,KAAK,MAAM,CAAC;AA6EtD,wBAAgB,aAAa,CAC3B,OAAO,EAAE,aAAa,EAAE,QAAQ,EAAE,SAAS,iBAAiB,EAAE,EAAE,KAAK,EAAE,eAAe,EAAE,IAAI,EAAE,OAAO,EACrG,eAAe,EAAE,UAAU,GAC1B;IACD,QAAQ,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,KAAK,CAAC,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;IACxF,QAAQ,EAAE,KAAK,CAAC;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;CAC1D,CA0BA;AAED,wBAAgB,iBAAiB,CAC/B,OAAO,EAAE,aAAa,EAAE,MAAM,EAAE,SAAS,iBAAiB,EAAE,EAAE,KAAK,EAAE,eAAe,EAAE,IAAI,EAAE,OAAO,EACnG,eAAe,EAAE,UAAU,GAC1B;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,KAAK,CAAC,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAA;CAAE,CAyBrD;AAED;;;;GAIG;AACH,wBAAgB,eAAe,CAC7B,OAAO,EAAE,aAAa,EAAE,UAAU,EAAE,SAAS,eAAe,EAAE,EAAE,eAAe,EAAE,UAAU,EAC3F,QAAQ,GAAE,SAAS,aAAa,EAAO,EACvC,UAAU,GAAE,WAAW,CAAC,MAAM,EAAE,sBAAsB,CAAa,GAClE,KAAK,CAAC,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CA8BzB"}
@@ -68,6 +68,7 @@ function surveyProperties(point, location) {
68
68
  return entries;
69
69
  }
70
70
  export function writeSurfaces(terrain, surfaces, units, swap, landXmlGlobalId) {
71
+ const elements = [];
71
72
  let written = 0;
72
73
  let vertices = 0;
73
74
  let triangles = 0;
@@ -81,19 +82,20 @@ export function writeSurfaces(terrain, surfaces, units, swap, landXmlGlobalId) {
81
82
  // name first. Kept as a guard because CoordIndex is LIST [1:?].
82
83
  if (faces.length === 0)
83
84
  continue;
84
- terrain.addSurface({
85
+ const { elementId } = terrain.addSurface({
85
86
  Name: surface.name,
86
87
  GlobalId: landXmlGlobalId(surface.sourceId),
87
88
  Coordinates: coordinates,
88
89
  Triangles: faces,
89
90
  });
91
+ elements.push({ sourceId: surface.sourceId, expressId: elementId });
90
92
  written += 1;
91
93
  vertices += coordinates.length;
92
94
  triangles += faces.length;
93
95
  for (const [x, y] of coordinates)
94
96
  samples.push([x, y]);
95
97
  }
96
- return { surfaces: written, vertices, triangles, samples };
98
+ return { surfaces: written, vertices, triangles, samples, elements };
97
99
  }
98
100
  export function writeSurveyPoints(terrain, points, units, swap, landXmlGlobalId) {
99
101
  let count = 0;
@@ -1 +1 @@
1
- {"version":3,"file":"writers.js","sourceRoot":"","sources":["../../src/landxml/writers.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"writers.js","sourceRoot":"","sources":["../../src/landxml/writers.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ifc-lite/create",
3
- "version": "3.1.0",
3
+ "version": "4.0.0",
4
4
  "description": "IFC creation from scratch — walls, slabs, beams, columns, stairs, roofs with geometry, properties and quantities",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",
@@ -13,15 +13,16 @@
13
13
  }
14
14
  },
15
15
  "dependencies": {
16
- "@ifc-lite/data": "^6.0.0",
17
- "@ifc-lite/encoding": "^2.2.0",
18
- "@ifc-lite/mutations": "^2.8.0",
19
- "@ifc-lite/parser": "^9.0.0"
16
+ "@ifc-lite/data": "^6.1.0",
17
+ "@ifc-lite/encoding": "^2.3.0",
18
+ "@ifc-lite/mutations": "^3.1.0",
19
+ "@ifc-lite/parser": "^9.2.0"
20
20
  },
21
21
  "devDependencies": {
22
22
  "typescript": "^6.0.3",
23
- "vitest": "^5.0.1",
24
- "@ifc-lite/export": "^4.7.4"
23
+ "vitest": "^5.0.2",
24
+ "@ifc-lite/export": "^4.9.0",
25
+ "@ifc-lite/wasm": "^10.3.0"
25
26
  },
26
27
  "license": "MPL-2.0",
27
28
  "author": "Louis True",