@hatiolab/figure-model 0.2.9 → 0.2.10

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/CHANGELOG.md CHANGED
@@ -6,6 +6,10 @@
6
6
 
7
7
  ## 아직 버전을 붙이지 않음
8
8
 
9
+ ### 원점이 차지 공간 가운데에 있는가 (2026-10-02, 0.2.10)
10
+
11
+ `figureOriginCentredOf(asset)`: 배치면을 가로지르는 축(바닥·천장 x·z, 벽 x·y, 공중 세 축)에서 원점이 선언한 공간의 가운데에 있는지, 아니면 몇 mm 비켰는지 말한다. `figureReleaseMetricsOf`가 `origin`으로 함께 싣는다. 크기가 고정된 도형도 공간을 선언했으면 싣는다. 막지 않는다. 원점은 붙이는 자리이고, 경첩에 원점을 둔 문은 맞는 모델이다(ADR-0104 결정 4). 도면을 공간 가운데로 놓는 받는 쪽이 이 값을 읽는다.
12
+
9
13
  ### 발행 때 재는 값과 윗모습 (2026-10-02, 0.2.9)
10
14
 
11
15
  ADR-0104 결정 5. 발행본이 스스로 한 번 재 두고, 받는 쪽은 다시 계산하지 않는다.
package/dist/index.d.ts CHANGED
@@ -38,7 +38,7 @@ export type { FigureUnit, FigureDimensions, FigureValueType, FigureGraphInput, F
38
38
  export { assertFigureJson, parseFigureJson, figureUtf8ByteLength, FIGURE_JSON_MAX_BYTES, FIGURE_JSON_MAX_DEPTH, type FigureJsonValue } from './json.ts';
39
39
  export { FIGURE_INSTANCE_SIZE_DEFAULT, FIGURE_INSTANCE_SIZE_INPUTS, FIGURE_SIZE_POSITIVE_STEP, defaultInstanceSizeRange, foldInstanceSizeRange, figureInstanceSizeLimitsOf, type FigureSizeLimit, type FigureSizeRange, type FigureSizeRangeMove } from './instance-size.ts';
40
40
  export { figureContractChanges, type FigureContractChange, type FigureContractChangeCode } from './release-contract.ts';
41
- export { figureReleaseMetricsOf, FIGURE_LINEAR_PROBE, type FigureReleaseMetrics } from './release-metrics.ts';
41
+ export { figureReleaseMetricsOf, figureOriginCentredOf, FIGURE_LINEAR_PROBE, type FigureReleaseMetrics } from './release-metrics.ts';
42
42
  export { figureTopViewOf, figureTopShapesOf, figureSectionOutline, figureConvexHull, figureClampedSizeOf, type FigureTopView, type FigureTopShape } from './top-view.ts';
43
43
  export { robotArmFigure, ROBOT_ARM_CHAIN } from './examples.ts';
44
44
  export { quadrupedRobotFigure, mobileManipulatorFigure, scaraRobotFigure, humanoidRobotFigure, QUADRUPED_LEGS, COBOT_CHAIN, type RobotJoint } from './robots.ts';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/dist/index.js CHANGED
@@ -45,7 +45,7 @@ export { applyFigureRecipe, checkFigureRecipe, describeFigureRecipe, holdsFigure
45
45
  export { assertFigureJson, parseFigureJson, figureUtf8ByteLength, FIGURE_JSON_MAX_BYTES, FIGURE_JSON_MAX_DEPTH } from "./json.js";
46
46
  export { FIGURE_INSTANCE_SIZE_DEFAULT, FIGURE_INSTANCE_SIZE_INPUTS, FIGURE_SIZE_POSITIVE_STEP, defaultInstanceSizeRange, foldInstanceSizeRange, figureInstanceSizeLimitsOf } from "./instance-size.js";
47
47
  export { figureContractChanges } from "./release-contract.js";
48
- export { figureReleaseMetricsOf, FIGURE_LINEAR_PROBE } from "./release-metrics.js";
48
+ export { figureReleaseMetricsOf, figureOriginCentredOf, FIGURE_LINEAR_PROBE } from "./release-metrics.js";
49
49
  export { figureTopViewOf, figureTopShapesOf, figureSectionOutline, figureConvexHull, figureClampedSizeOf } from "./top-view.js";
50
50
  export { robotArmFigure, ROBOT_ARM_CHAIN } from "./examples.js";
51
51
  export { quadrupedRobotFigure, mobileManipulatorFigure, scaraRobotFigure, humanoidRobotFigure, QUADRUPED_LEGS, COBOT_CHAIN } from "./robots.js";
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,cAAc,YAAY,CAAA;AAC1B,OAAO,EAAE,mBAAmB,EAAE,MAAM,eAAe,CAAA;AACnD,OAAO,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAA;AAC/C,OAAO,EAAE,cAAc,EAAE,UAAU,EAAuB,MAAM,gBAAgB,CAAA;AAChF,OAAO,EAAE,iBAAiB,EAAE,YAAY,EAAE,kBAAkB,EAAwD,MAAM,aAAa,CAAA;AACvI,OAAO,EAAE,4BAA4B,EAAuG,MAAM,wBAAwB,CAAA;AAC1K,OAAO,EAAE,2BAA2B,EAAqI,MAAM,uBAAuB,CAAA;AACtM,OAAO,EAAE,yBAAyB,EAAE,MAAM,mBAAmB,CAAA;AAC7D,OAAO,EAAE,qBAAqB,EAAE,mBAAmB,EAAE,uBAAuB,EAAE,MAAM,eAAe,CAAA;AACnG,OAAO,EAAE,kBAAkB,EAAE,gBAAgB,EAAE,oBAAoB,EAAE,2BAA2B,EAAE,sBAAsB,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAA;AAC/J,OAAO,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAA;AACvD,OAAO,EAAE,kBAAkB,EAAE,mBAAmB,EAAE,2BAA2B,EAAE,kBAAkB,EAAE,qBAAqB,EAAE,eAAe,EAAE,mBAAmB,EAAoH,MAAM,WAAW,CAAA;AACnS,OAAO,EAAE,WAAW,EAAE,YAAY,EAAE,cAAc,EAAE,qBAAqB,EAAE,yBAAyB,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAA;AAC9J,OAAO,EAAE,iBAAiB,EAAE,eAAe,EAAc,MAAM,qBAAqB,CAAA;AACpF,OAAO,EAAE,gBAAgB,EAAE,2BAA2B,EAAE,iCAAiC,EAAE,4BAA4B,EAAE,sBAAsB,EAA0B,gBAAgB,EAAwB,MAAM,YAAY,CAAA;AACnO,OAAO,EAAE,qBAAqB,EAAE,MAAM,qBAAqB,CAAA;AAC3D,OAAO,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAA;AAClD,OAAO,EAAE,YAAY,EAAE,iBAAiB,EAAmB,MAAM,WAAW,CAAA;AAC5E,OAAO,EAAE,qBAAqB,EAA6E,MAAM,qBAAqB,CAAA;AACtI,OAAO,EAAE,aAAa,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,aAAa,EAAE,mBAAmB,EAAE,yBAAyB,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,mBAAmB,EAAgE,MAAM,YAAY,CAAA;AAC3Q,OAAO,EAAE,oBAAoB,EAAE,sBAAsB,EAAE,uBAAuB,EAA6B,mBAAmB,EAAE,gBAAgB,EAAE,YAAY,EAA4R,kBAAkB,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAA;AAE/f,OAAO,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAA;AACpD,OAAO,EAAE,mBAAmB,EAAE,uBAAuB,EAAE,qBAAqB,EAAoD,MAAM,eAAe,CAAA;AACrJ,OAAO,EAAE,cAAc,EAAqB,MAAM,aAAa,CAAA;AAC/D,OAAO,EAAE,gBAAgB,EAAiF,MAAM,kBAAkB,CAAA;AAClI,OAAO,EAAE,qBAAqB,EAAE,mBAAmB,EAAE,uBAAuB,EAAyD,MAAM,gBAAgB,CAAA;AAC3J,OAAO,EAAE,sBAAsB,EAAE,iBAAiB,EAAwE,MAAM,WAAW,CAAA;AAC3I,OAAO,EAAE,qBAAqB,EAAE,oBAAoB,EAAE,sBAAsB,EAAqG,MAAM,qBAAqB,CAAA;AAC5M,kHAAkH;AAClH,OAAO,EACL,oBAAoB,EACpB,wBAAwB,EACxB,0BAA0B,EAC1B,kBAAkB,EAClB,sBAAsB,EACtB,oBAAoB,EACpB,mBAAmB,EACnB,2BAA2B,EAC3B,mBAAmB,EACnB,qBAAqB,EACrB,qBAAqB,EAMtB,MAAM,cAAc,CAAA;AACrB,OAAO,EAAE,yBAAyB,EAA4F,MAAM,qBAAqB,CAAA;AACzJ,OAAO,EACL,kBAAkB,EAClB,oBAAoB,EACpB,2BAA2B,EAC3B,wBAAwB,EACxB,qBAAqB,EACrB,kBAAkB,EAClB,mBAAmB,EACnB,oBAAoB,EACpB,yBAAyB,EAK1B,MAAM,gBAAgB,CAAA;AACvB,OAAO,EAAE,uBAAuB,EAAkF,MAAM,iBAAiB,CAAA;AACzI,OAAO,EAAE,qBAAqB,EAAE,MAAM,wBAAwB,CAAA;AAC9D,OAAO,EAAE,iBAAiB,EAA2E,MAAM,mBAAmB,CAAA;AAC9H,OAAO,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,oBAAoB,EAAE,eAAe,EAAgC,iBAAiB,EAAE,mBAAmB,EAAE,iBAAiB,EAAE,oBAAoB,EAAiG,MAAM,aAAa,CAAA;AAEvT,OAAO,EAAE,gBAAgB,EAAE,eAAe,EAAE,oBAAoB,EAAE,qBAAqB,EAAE,qBAAqB,EAAwB,MAAM,WAAW,CAAA;AACvJ,OAAO,EAAE,4BAA4B,EAAE,2BAA2B,EAAE,yBAAyB,EAAE,wBAAwB,EAAE,qBAAqB,EAAE,0BAA0B,EAAwE,MAAM,oBAAoB,CAAA;AAC5Q,OAAO,EAAE,qBAAqB,EAA4D,MAAM,uBAAuB,CAAA;AACvH,OAAO,EAAE,sBAAsB,EAAE,mBAAmB,EAA6B,MAAM,sBAAsB,CAAA;AAC7G,OAAO,EAAE,eAAe,EAAE,iBAAiB,EAAE,oBAAoB,EAAE,gBAAgB,EAAE,mBAAmB,EAA2C,MAAM,eAAe,CAAA;AACxK,OAAO,EAAE,cAAc,EAAE,eAAe,EAAE,MAAM,eAAe,CAAA;AAC/D,OAAO,EAAE,oBAAoB,EAAE,uBAAuB,EAAE,gBAAgB,EAAE,mBAAmB,EAAE,cAAc,EAAE,WAAW,EAAmB,MAAM,aAAa,CAAA;AAChK,OAAO,EAAE,iBAAiB,EAAE,uBAAuB,EAAuE,MAAM,mBAAmB,CAAA;AACnJ,OAAO,EAAE,oBAAoB,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,WAAW,EAAE,oBAAoB,EAAuH,MAAM,sBAAsB,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
@@ -4,5 +4,5 @@
4
4
  * different result. Kept equal to package.json's version by `npm version` (the `version` script rewrites this file)
5
5
  * and by `kernel-version.test.ts`.
6
6
  */
7
- export declare const FIGURE_KERNEL_VERSION = "0.2.9";
7
+ export declare const FIGURE_KERNEL_VERSION = "0.2.10";
8
8
  //# sourceMappingURL=kernel-version.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"kernel-version.d.ts","sourceRoot":"","sources":["../src/kernel-version.ts"],"names":[],"mappings":"AAIA;;;;;GAKG;AACH,eAAO,MAAM,qBAAqB,UAAU,CAAA"}
1
+ {"version":3,"file":"kernel-version.d.ts","sourceRoot":"","sources":["../src/kernel-version.ts"],"names":[],"mappings":"AAIA;;;;;GAKG;AACH,eAAO,MAAM,qBAAqB,WAAW,CAAA"}
@@ -7,5 +7,5 @@
7
7
  * different result. Kept equal to package.json's version by `npm version` (the `version` script rewrites this file)
8
8
  * and by `kernel-version.test.ts`.
9
9
  */
10
- export const FIGURE_KERNEL_VERSION = '0.2.9';
10
+ export const FIGURE_KERNEL_VERSION = '0.2.10';
11
11
  //# sourceMappingURL=kernel-version.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"kernel-version.js","sourceRoot":"","sources":["../src/kernel-version.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH;;;;;GAKG;AACH,MAAM,CAAC,MAAM,qBAAqB,GAAG,OAAO,CAAA"}
1
+ {"version":3,"file":"kernel-version.js","sourceRoot":"","sources":["../src/kernel-version.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH;;;;;GAKG;AACH,MAAM,CAAC,MAAM,qBAAqB,GAAG,QAAQ,CAAA"}
@@ -23,7 +23,20 @@ export interface FigureReleaseMetrics {
23
23
  parts: string[];
24
24
  probe: typeof FIGURE_LINEAR_PROBE;
25
25
  };
26
+ /** Off the middle of the room across the mounting plane, mm per axis; centred when there is none. */
27
+ origin?: {
28
+ centred: boolean;
29
+ off: Array<{
30
+ axis: Axis;
31
+ mm: number;
32
+ }>;
33
+ };
26
34
  }
35
+ /**
36
+ * Whether the origin is at the middle of the declared room across the mounting plane, within `SKIN`. Undefined when no
37
+ * room is declared, or when it cannot be read at the authored values.
38
+ */
39
+ export declare function figureOriginCentredOf(asset: FigureAsset): FigureReleaseMetrics['origin'];
27
40
  export declare function figureReleaseMetricsOf(asset: FigureAsset): FigureReleaseMetrics;
28
41
  export {};
29
42
  //# sourceMappingURL=release-metrics.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"release-metrics.d.ts","sourceRoot":"","sources":["../src/release-metrics.ts"],"names":[],"mappings":"AAWA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAA;AAMnD,KAAK,IAAI,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,CAAA;AAG3B;;;;GAIG;AACH,eAAO,MAAM,mBAAmB;;;;EAAwF,CAAA;AAExH,MAAM,WAAW,oBAAoB;IACnC,8CAA8C;IAC9C,SAAS,CAAC,EAAE;QAAE,IAAI,EAAE,OAAO,CAAC,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC;QAAC,SAAS,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,CAAA;IACtF,wEAAwE;IACxE,MAAM,CAAC,EAAE;QAAE,QAAQ,EAAE,OAAO,CAAC;QAAC,KAAK,EAAE,MAAM,EAAE,CAAC;QAAC,KAAK,EAAE,OAAO,mBAAmB,CAAA;KAAE,CAAA;CACnF;AAUD,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,WAAW,GAAG,oBAAoB,CA4C/E"}
1
+ {"version":3,"file":"release-metrics.d.ts","sourceRoot":"","sources":["../src/release-metrics.ts"],"names":[],"mappings":"AAgBA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAA;AAQnD,KAAK,IAAI,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,CAAA;AAG3B;;;;GAIG;AACH,eAAO,MAAM,mBAAmB;;;;EAAwF,CAAA;AAExH,MAAM,WAAW,oBAAoB;IACnC,8CAA8C;IAC9C,SAAS,CAAC,EAAE;QAAE,IAAI,EAAE,OAAO,CAAC,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC;QAAC,SAAS,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,CAAA;IACtF,wEAAwE;IACxE,MAAM,CAAC,EAAE;QAAE,QAAQ,EAAE,OAAO,CAAC;QAAC,KAAK,EAAE,MAAM,EAAE,CAAC;QAAC,KAAK,EAAE,OAAO,mBAAmB,CAAA;KAAE,CAAA;IAClF,qGAAqG;IACrG,MAAM,CAAC,EAAE;QAAE,OAAO,EAAE,OAAO,CAAC;QAAC,GAAG,EAAE,KAAK,CAAC;YAAE,IAAI,EAAE,IAAI,CAAC;YAAC,EAAE,EAAE,MAAM,CAAA;SAAE,CAAC,CAAA;KAAE,CAAA;CACtE;AAKD;;;GAGG;AACH,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,WAAW,GAAG,oBAAoB,CAAC,QAAQ,CAAC,CAiBxF;AAUD,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,WAAW,GAAG,oBAAoB,CA8C/E"}
@@ -2,6 +2,8 @@ import { compileFigureAsset } from "./asset.js";
2
2
  import { figureCostOf, figureTrianglesOf } from "./cost.js";
3
3
  import { RESIZE_FACTOR, RESIZE_WAYS, figureWorldBoxesOf, figureWritersOf } from "./gate.js";
4
4
  import { SKIN } from "./words.js";
5
+ import { figurePlacementOf } from "./asset.js";
6
+ import { compileFigureGraph } from "./graph.js";
5
7
  const AXES = ['x', 'y', 'z'];
6
8
  /**
7
9
  * How "stretching is the same" is measured, recorded with every answer so a reader knows what was asked: the gate's
@@ -9,15 +11,40 @@ const AXES = ['x', 'y', 'z'];
9
11
  * extent off by at most `toleranceMm` plus a millionth of its size, and the same number of triangles.
10
12
  */
11
13
  export const FIGURE_LINEAR_PROBE = Object.freeze({ factor: RESIZE_FACTOR, ways: RESIZE_WAYS.length, toleranceMm: SKIN });
14
+ /** The axes across the plane a placement mounts on: a floor or a ceiling X and Z, a wall X and Y, the centre all three. */
15
+ const ACROSS = { floor: ['x', 'z'], ceiling: ['x', 'z'], wall: ['x', 'y'], center: ['x', 'y', 'z'] };
16
+ /**
17
+ * Whether the origin is at the middle of the declared room across the mounting plane, within `SKIN`. Undefined when no
18
+ * room is declared, or when it cannot be read at the authored values.
19
+ */
20
+ export function figureOriginCentredOf(asset) {
21
+ const bounds = asset.occupancy?.bounds;
22
+ if (!bounds)
23
+ return undefined;
24
+ const given = { ...asset.designInputs, ...asset.stateDefaults };
25
+ const values = compileFigureGraph(asset.document.model).evaluate(Object.fromEntries(asset.document.model.inputs.flatMap(i => (typeof given[i.id] === 'number' ? [[i.id, given[i.id]]] : [])))).values;
26
+ const at = (id) => (values[id] ?? given[id]);
27
+ const off = [];
28
+ for (const axis of ACROSS[figurePlacementOf(asset)] ?? ACROSS.floor) {
29
+ const lo = at(bounds[axis].min), hi = at(bounds[axis].max);
30
+ if (!Number.isFinite(lo) || !Number.isFinite(hi))
31
+ return undefined;
32
+ const middle = (lo + hi) / 2;
33
+ if (Math.abs(middle) > SKIN)
34
+ off.push({ axis, mm: Math.round(middle * 1000) / 1000 });
35
+ }
36
+ return { centred: off.length === 0, off };
37
+ }
12
38
  const sizeInputsOf = (asset) => Object.fromEntries(AXES.flatMap(axis => {
13
39
  const input = asset.document.model.inputs.find(i => i.id === `size.${axis}` && i.role === 'design');
14
40
  return input ? [[axis, input]] : [];
15
41
  }));
16
42
  export function figureReleaseMetricsOf(asset) {
43
+ const origin = figureOriginCentredOf(asset);
17
44
  const sizing = sizeInputsOf(asset);
18
45
  const axes = AXES.filter(axis => sizing[axis]);
19
46
  if (!axes.length)
20
- return {};
47
+ return origin ? { origin } : {};
21
48
  const largest = { ...asset.designInputs };
22
49
  for (const axis of axes)
23
50
  largest[sizing[axis].id] = sizing[axis].max;
@@ -57,7 +84,8 @@ export function figureReleaseMetricsOf(asset) {
57
84
  }
58
85
  return {
59
86
  atLargest: { size: Object.fromEntries(axes.map(axis => [axis, sizing[axis].max])), triangles: cost.triangles, groups: cost.groups },
60
- linear: { scalable: off.size === 0, parts: [...off].sort(), probe: FIGURE_LINEAR_PROBE }
87
+ linear: { scalable: off.size === 0, parts: [...off].sort(), probe: FIGURE_LINEAR_PROBE },
88
+ ...(origin ? { origin } : {})
61
89
  };
62
90
  }
63
91
  //# sourceMappingURL=release-metrics.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"release-metrics.js","sourceRoot":"","sources":["../src/release-metrics.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"release-metrics.js","sourceRoot":"","sources":["../src/release-metrics.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@hatiolab/figure-model",
3
- "version": "0.2.9",
3
+ "version": "0.2.10",
4
4
  "description": "The figure format (figure-asset-1): a kernel that evaluates a figure from its declared relations, the authoring commands a modeller and an AI share, the release gate and the score.",
5
5
  "keywords": [
6
6
  "figure",