@hatiolab/figure-model 0.1.35 → 0.1.37
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/dist/index.d.ts +4 -3
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +4 -3
- package/dist/index.js.map +1 -1
- package/dist/v3-asset-types.d.ts +89 -16
- package/dist/v3-asset-types.d.ts.map +1 -1
- package/dist/v3-asset.d.ts.map +1 -1
- package/dist/v3-asset.js +34 -25
- package/dist/v3-asset.js.map +1 -1
- package/dist/v3-authoring-actions.d.ts +97 -0
- package/dist/v3-authoring-actions.d.ts.map +1 -0
- package/dist/v3-authoring-actions.js +384 -0
- package/dist/v3-authoring-actions.js.map +1 -0
- package/dist/v3-capabilities.d.ts.map +1 -1
- package/dist/v3-capabilities.js +4 -77
- package/dist/v3-capabilities.js.map +1 -1
- package/dist/v3-driver.d.ts +24 -1
- package/dist/v3-driver.d.ts.map +1 -1
- package/dist/v3-driver.js +68 -2
- package/dist/v3-driver.js.map +1 -1
- package/dist/v3-from-v2.d.ts +34 -1
- package/dist/v3-from-v2.d.ts.map +1 -1
- package/dist/v3-from-v2.js +676 -19
- package/dist/v3-from-v2.js.map +1 -1
- package/dist/v3-gate.d.ts +59 -6
- package/dist/v3-gate.d.ts.map +1 -1
- package/dist/v3-gate.js +310 -45
- package/dist/v3-gate.js.map +1 -1
- package/dist/v3-graph-types.d.ts +9 -1
- package/dist/v3-graph-types.d.ts.map +1 -1
- package/dist/v3-graph.d.ts +5 -3
- package/dist/v3-graph.d.ts.map +1 -1
- package/dist/v3-graph.js +93 -4
- package/dist/v3-graph.js.map +1 -1
- package/dist/v3-kernel-version.d.ts +1 -1
- package/dist/v3-kernel-version.js +1 -1
- package/dist/v3-mesh-compare.d.ts +2 -5
- package/dist/v3-mesh-compare.d.ts.map +1 -1
- package/dist/v3-mesh-compare.js +2 -145
- package/dist/v3-mesh-compare.js.map +1 -1
- package/dist/v3-shape-sampling.d.ts +14 -0
- package/dist/v3-shape-sampling.d.ts.map +1 -0
- package/dist/v3-shape-sampling.js +120 -0
- package/dist/v3-shape-sampling.js.map +1 -0
- package/dist/v3-surface.d.ts +15 -0
- package/dist/v3-surface.d.ts.map +1 -0
- package/dist/v3-surface.js +104 -0
- package/dist/v3-surface.js.map +1 -0
- package/docs/prototypes/v3-asset.schema.json +0 -8
- package/docs/v3-asset-persistence.md +1 -1
- package/docs/v3-legacy-risk-audit-2026-09-23.md +39 -0
- package/docs/v3-operator-contracts.md +2 -0
- package/docs/v3-shape-dimension-contract.md +111 -0
- package/package.json +1 -1
package/dist/v3-graph.js
CHANGED
|
@@ -16,6 +16,7 @@ const units = {
|
|
|
16
16
|
};
|
|
17
17
|
const length = [1, 0, 0], ratio = [0, 0, 0], angle = [0, 1, 0];
|
|
18
18
|
const countType = { kind: 'count' };
|
|
19
|
+
const flagType = { kind: 'flag' };
|
|
19
20
|
units.count = [countType, 1];
|
|
20
21
|
const eq = (a, b) => Array.isArray(a) && Array.isArray(b)
|
|
21
22
|
? a.length === b.length && a.every((v, i) => v === b[i])
|
|
@@ -106,6 +107,87 @@ const ops = {
|
|
|
106
107
|
return [Math.pow(a.reduce((s, x) => s * x, 1), 1 / a.length)];
|
|
107
108
|
}
|
|
108
109
|
},
|
|
110
|
+
// A piecewise-linear curve through keys (V3 designer's approval, 2026-09-22): value(x) for x between two keys is the
|
|
111
|
+
// straight line between them; outside the keys the end value holds (as V2 `sampleChannel` and glTF do). Keys are
|
|
112
|
+
// constants or values: args are x, then at₀, v₀, at₁, v₁, … with the ats strictly increasing. Every `at` has x's
|
|
113
|
+
// dimension and every `v` one dimension, which is the output's. Linear only; a step curve is a different operator.
|
|
114
|
+
'curve@1': {
|
|
115
|
+
ports: ['value'],
|
|
116
|
+
types(t, p) {
|
|
117
|
+
if (t.length < 5 || t.length % 2 === 0 || !t.every(Array.isArray))
|
|
118
|
+
fail('TYPE', p, 'x and at least two (at, value) key pairs, all scalars');
|
|
119
|
+
for (let i = 1; i < t.length; i += 2) {
|
|
120
|
+
if (!eq(t[i], t[0]))
|
|
121
|
+
fail('TYPE', p, `key ${(i - 1) / 2}: at must have the dimension of x`);
|
|
122
|
+
if (!eq(t[i + 1], t[2]))
|
|
123
|
+
fail('TYPE', p, `key ${(i - 1) / 2}: every value must have one dimension`);
|
|
124
|
+
}
|
|
125
|
+
return [t[2]];
|
|
126
|
+
},
|
|
127
|
+
run: (a, p) => {
|
|
128
|
+
const x = a[0];
|
|
129
|
+
const n = (a.length - 1) / 2;
|
|
130
|
+
const at = (k) => a[1 + 2 * k], val = (k) => a[2 + 2 * k];
|
|
131
|
+
for (let k = 1; k < n; k++)
|
|
132
|
+
if (!(at(k) > at(k - 1)))
|
|
133
|
+
fail('DOMAIN', p, `keys out of order: at[${k}] = ${at(k)} is not after at[${k - 1}] = ${at(k - 1)}`);
|
|
134
|
+
if (x <= at(0))
|
|
135
|
+
return [val(0)];
|
|
136
|
+
if (x >= at(n - 1))
|
|
137
|
+
return [val(n - 1)];
|
|
138
|
+
let k = 0;
|
|
139
|
+
while (k < n - 2 && at(k + 1) <= x)
|
|
140
|
+
k++;
|
|
141
|
+
const r = (x - at(k)) / (at(k + 1) - at(k));
|
|
142
|
+
return [val(k) + (val(k + 1) - val(k)) * r];
|
|
143
|
+
}
|
|
144
|
+
},
|
|
145
|
+
/**
|
|
146
|
+
* Whether `a` has reached `b`, as a flag. The one way a graph produces visibility.
|
|
147
|
+
*
|
|
148
|
+
* Both arguments carry the same dimension. The result is not a number and cannot be added, multiplied or
|
|
149
|
+
* placed: the type system refuses it everywhere except `appearance.visibility`. That is what keeps the
|
|
150
|
+
* promise that a hidden part's dimensions are the same dimensions it has when shown
|
|
151
|
+
* (V3 designer's ruling 2026-09-22: not visible and small are different things).
|
|
152
|
+
*/
|
|
153
|
+
'at-least@1': {
|
|
154
|
+
ports: ['value'],
|
|
155
|
+
types(t, p) {
|
|
156
|
+
if (t.length !== 2 || !t.every(Array.isArray) || !eq(t[0], t[1]))
|
|
157
|
+
fail('TYPE', p, 'at-least compares two scalars of the same dimension');
|
|
158
|
+
return [flagType];
|
|
159
|
+
},
|
|
160
|
+
run: ([a, b]) => [a >= b]
|
|
161
|
+
},
|
|
162
|
+
/**
|
|
163
|
+
* The largest of its arguments, all of one dimension.
|
|
164
|
+
*
|
|
165
|
+
* Written for the declared occupancy: which part reaches furthest is not fixed, because a part that follows
|
|
166
|
+
* the instance overtakes a fixed one as the instance grows. Without this the volume would have to be a
|
|
167
|
+
* constant measured at one size, which is only right at that size.
|
|
168
|
+
*
|
|
169
|
+
* Not affine: the graph is a straight line in each input only until the winner changes. The occupancy is a
|
|
170
|
+
* design value and never depends on state, so this does not touch the state coverage basis.
|
|
171
|
+
*/
|
|
172
|
+
'max@1': {
|
|
173
|
+
ports: ['value'],
|
|
174
|
+
types(t, p) {
|
|
175
|
+
if (t.length < 2 || !t.every(Array.isArray) || !t.every(x => eq(x, t[0])))
|
|
176
|
+
fail('TYPE', p, 'two or more scalars of the same dimension');
|
|
177
|
+
return [t[0]];
|
|
178
|
+
},
|
|
179
|
+
run: a => [Math.max(...a)]
|
|
180
|
+
},
|
|
181
|
+
/** The smallest of its arguments. The pair of `max@1`; the low side of a declared volume needs it. */
|
|
182
|
+
'min@1': {
|
|
183
|
+
ports: ['value'],
|
|
184
|
+
types(t, p) {
|
|
185
|
+
if (t.length < 2 || !t.every(Array.isArray) || !t.every(x => eq(x, t[0])))
|
|
186
|
+
fail('TYPE', p, 'two or more scalars of the same dimension');
|
|
187
|
+
return [t[0]];
|
|
188
|
+
},
|
|
189
|
+
run: a => [Math.min(...a)]
|
|
190
|
+
},
|
|
109
191
|
'between@1': {
|
|
110
192
|
ports: ['length', 'center'],
|
|
111
193
|
types(t, p) {
|
|
@@ -688,11 +770,13 @@ export const V3_OPERATOR_STATE_POLICY = Object.freeze(Object.fromEntries(Object.
|
|
|
688
770
|
/** Every operator the kernel knows, by name. `v3-graph.test.ts` holds the list still. */
|
|
689
771
|
export const V3_OPERATORS = Object.freeze(Object.keys(ops));
|
|
690
772
|
/**
|
|
691
|
-
* The operators whose output is not affine in
|
|
692
|
-
* (
|
|
693
|
-
*
|
|
773
|
+
* The operators whose output is not affine in its scalar arguments. `geomean@1` (ADR-0087 decision 2 addendum) and
|
|
774
|
+
* `curve@1` (piecewise-linear, V3 designer's approval 2026-09-22). The converter feeds `curve@1` state inputs only, so
|
|
775
|
+
* every converted asset stays affine in the size; a curve of a design input is legal in the kernel but would take the
|
|
776
|
+
* 8-size regression check's ground away, and the gate's corner-extremal basis treats a non-monotone curve as unproven.
|
|
777
|
+
* Adding another means another ruling, and the test that pins this list goes red until it has happened.
|
|
694
778
|
*/
|
|
695
|
-
export const V3_NON_AFFINE_OPERATORS = Object.freeze(['geomean@1']);
|
|
779
|
+
export const V3_NON_AFFINE_OPERATORS = Object.freeze(['geomean@1', 'curve@1', 'max@1', 'min@1']);
|
|
696
780
|
/**
|
|
697
781
|
* The operators whose output is not affine in a **state** input: a rotation matrix is sin/cos in the joint
|
|
698
782
|
* angle (motion contract, "two corrections"). Rigid in space, so placement stays rigid; the 8-size check is a
|
|
@@ -702,6 +786,11 @@ export const V3_STATE_NON_AFFINE_OPERATORS = Object.freeze(['axis-turn@1']);
|
|
|
702
786
|
function checkedValue(value, type, path) {
|
|
703
787
|
if (Array.isArray(type))
|
|
704
788
|
return num(value, path);
|
|
789
|
+
if (type.kind === 'flag') {
|
|
790
|
+
if (typeof value !== 'boolean')
|
|
791
|
+
fail('FLAG', path, 'boolean required');
|
|
792
|
+
return value;
|
|
793
|
+
}
|
|
705
794
|
if (type.kind === 'count') {
|
|
706
795
|
if (!Number.isSafeInteger(value) || value < 0)
|
|
707
796
|
fail('COUNT', path, 'nonnegative safe integer required');
|
package/dist/v3-graph.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"v3-graph.js","sourceRoot":"","sources":["../src/v3-graph.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"v3-graph.js","sourceRoot":"","sources":["../src/v3-graph.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 `v3-kernel-version.test.ts`.
|
|
6
6
|
*/
|
|
7
|
-
export declare const V3_KERNEL_VERSION = "0.1.
|
|
7
|
+
export declare const V3_KERNEL_VERSION = "0.1.37";
|
|
8
8
|
//# sourceMappingURL=v3-kernel-version.d.ts.map
|
|
@@ -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 `v3-kernel-version.test.ts`.
|
|
9
9
|
*/
|
|
10
|
-
export const V3_KERNEL_VERSION = '0.1.
|
|
10
|
+
export const V3_KERNEL_VERSION = '0.1.37';
|
|
11
11
|
//# sourceMappingURL=v3-kernel-version.js.map
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import type { Vec3 } from './types.ts';
|
|
2
|
-
import type
|
|
3
|
-
export type Point
|
|
2
|
+
import { type Point } from './v3-shape-sampling.ts';
|
|
3
|
+
export { v3ShapePoints, transformPoints, type Point } from './v3-shape-sampling.ts';
|
|
4
4
|
/** The body a V2 part draws, in its own frame, before rotation and scaling. */
|
|
5
5
|
export interface V2Body {
|
|
6
6
|
primitive: 'cube' | 'wall' | 'cylinder' | 'sphere' | 'rect' | 'polygon';
|
|
@@ -18,9 +18,6 @@ export interface V2Body {
|
|
|
18
18
|
}
|
|
19
19
|
/** Surface points of a V2 part body in its own frame, as things-scene builds the geometry. */
|
|
20
20
|
export declare function v2BodyPoints(body: V2Body): Point[];
|
|
21
|
-
/** Surface points of a V3 shape in its own frame. */
|
|
22
|
-
export declare function v3ShapePoints(shape: V3Shape, segments?: number): Point[];
|
|
23
|
-
export declare function transformPoints(points: readonly Point[], r: number[][], t: readonly number[]): Point[];
|
|
24
21
|
export declare function scalePoints(points: readonly Point[], f: Vec3): Point[];
|
|
25
22
|
/** Symmetric Hausdorff distance between two point sets: the worst nearest-neighbour gap in either direction. */
|
|
26
23
|
export declare function hausdorff(a: readonly Point[], b: readonly Point[]): number;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"v3-mesh-compare.d.ts","sourceRoot":"","sources":["../src/v3-mesh-compare.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"v3-mesh-compare.d.ts","sourceRoot":"","sources":["../src/v3-mesh-compare.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,YAAY,CAAA;AACtC,OAAO,EAAiE,KAAK,KAAK,EAAE,MAAM,wBAAwB,CAAA;AAClH,OAAO,EAAE,aAAa,EAAE,eAAe,EAAE,KAAK,KAAK,EAAE,MAAM,wBAAwB,CAAA;AAEnF,+EAA+E;AAC/E,MAAM,WAAW,MAAM;IACrB,SAAS,EAAE,MAAM,GAAG,MAAM,GAAG,UAAU,GAAG,QAAQ,GAAG,MAAM,GAAG,SAAS,CAAA;IACvE,IAAI,EAAE,IAAI,CAAA;IACV,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,MAAM,CAAC,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAA;KAAE,CAAA;IACzC,IAAI,CAAC,EAAE,KAAK,CAAC;QAAE,CAAC,EAAE,MAAM,CAAC;QAAC,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC,CAAA;CACvC;AAED,8FAA8F;AAC9F,wBAAgB,YAAY,CAAC,IAAI,EAAE,MAAM,GAAG,KAAK,EAAE,CAyBlD;AAED,wBAAgB,WAAW,CAAC,MAAM,EAAE,SAAS,KAAK,EAAE,EAAE,CAAC,EAAE,IAAI,GAAG,KAAK,EAAE,CAEtE;AAED,gHAAgH;AAChH,wBAAgB,SAAS,CAAC,CAAC,EAAE,SAAS,KAAK,EAAE,EAAE,CAAC,EAAE,SAAS,KAAK,EAAE,GAAG,MAAM,CAkB1E"}
|
package/dist/v3-mesh-compare.js
CHANGED
|
@@ -1,84 +1,5 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
*/
|
|
4
|
-
/*
|
|
5
|
-
* Surface points for the mesh-level comparison (ADR-0087 stage review, designer's ruling 1).
|
|
6
|
-
*
|
|
7
|
-
* An oriented box cannot see a section, a hollow or a corner: a cylinder that is not round, a hollow box that is
|
|
8
|
-
* not hollow and a corner that stopped scaling all pass a box check. This module samples the surface of a body
|
|
9
|
-
* from its definition, so V2 and V3 can be compared as shapes. It needs no three.js: both sides are sampled from
|
|
10
|
-
* their parameters with the same sampler, so the comparison asks whether the two definitions describe the same
|
|
11
|
-
* body, at the same place, to within `SAME_TOLERANCE_MM`.
|
|
12
|
-
*
|
|
13
|
-
* What the sampler follows is what things-scene draws (2026-09-22, `threed/geometry-bank.ts`, `figure/figure-shape.ts`):
|
|
14
|
-
* cube · wall a box
|
|
15
|
-
* cylinder a unit cylinder with equal end radii, scaled by size: x ≠ z is an elliptic cylinder, not a frustum
|
|
16
|
-
* sphere a unit sphere scaled by size: an ellipsoid when the sizes differ
|
|
17
|
-
* rect a section outlined by `roundedRect`: straight edges and quadratic Bézier corners whose control
|
|
18
|
-
* point is the corner itself, sampled with SEGMENT_PRESETS[0] divisions; pushed along Y
|
|
19
|
-
* rect + hollow outer outline for the walls, inner outline inset by `wall` with round − wall, floor slab below
|
|
20
|
-
* polygon the path as written, pushed along Y
|
|
21
|
-
*
|
|
22
|
-
* The rounded corner is a Bézier, not a circular arc. A renderer that draws V3's `rounded-box` with a circular arc
|
|
23
|
-
* differs from V2 by up to 0.06 × round at the corner's middle; the shape contract names the Bézier as the curve.
|
|
24
|
-
*/
|
|
25
|
-
import { SEGMENT_PRESETS } from "./types.js";
|
|
26
|
-
/** Divisions per Bézier corner, the number things-scene's `roundedRect` asks `getPoints` for. */
|
|
27
|
-
const CORNER_DIVISIONS = SEGMENT_PRESETS[0];
|
|
28
|
-
/** Points on the outline of a rounded rectangle in the X–Z plane, centred, y = 0. */
|
|
29
|
-
function roundedOutline(width, depth, roundX, roundZ) {
|
|
30
|
-
// Each semi-axis is bounded by its own half-section (shape-dimension contract §1). V2's single-radius clamp
|
|
31
|
-
// min(r, w/2, d/2) happens before scaling and is applied by the converter, not here.
|
|
32
|
-
const rx = Math.min(roundX, width / 2);
|
|
33
|
-
const rz = Math.min(roundZ, depth / 2);
|
|
34
|
-
const hw = width / 2, hd = depth / 2;
|
|
35
|
-
if (rx <= 0 && rz <= 0)
|
|
36
|
-
return [[-hw, 0, -hd], [hw, 0, -hd], [hw, 0, hd], [-hw, 0, hd]];
|
|
37
|
-
const pts = [];
|
|
38
|
-
// Corner k: quadratic Bézier from the end of one straight edge to the start of the next, control at the corner.
|
|
39
|
-
const corners = [
|
|
40
|
-
[[hw - rx, 0, -hd], [hw, 0, -hd], [hw, 0, -hd + rz]],
|
|
41
|
-
[[hw, 0, hd - rz], [hw, 0, hd], [hw - rx, 0, hd]],
|
|
42
|
-
[[-hw + rx, 0, hd], [-hw, 0, hd], [-hw, 0, hd - rz]],
|
|
43
|
-
[[-hw, 0, -hd + rz], [-hw, 0, -hd], [-hw + rx, 0, -hd]]
|
|
44
|
-
];
|
|
45
|
-
for (const [p0, c, p2] of corners) {
|
|
46
|
-
pts.push(p0);
|
|
47
|
-
for (let i = 1; i < CORNER_DIVISIONS; i++) {
|
|
48
|
-
const t = i / CORNER_DIVISIONS, a = (1 - t) * (1 - t), b = 2 * (1 - t) * t, d = t * t;
|
|
49
|
-
pts.push([a * p0[0] + b * c[0] + d * p2[0], 0, a * p0[2] + b * c[2] + d * p2[2]]);
|
|
50
|
-
}
|
|
51
|
-
pts.push(p2);
|
|
52
|
-
}
|
|
53
|
-
return pts;
|
|
54
|
-
}
|
|
55
|
-
function lift(outline, y) {
|
|
56
|
-
return outline.map(([x, , z]) => [x, y, z]);
|
|
57
|
-
}
|
|
58
|
-
/** Points on an elliptic cylinder about local Y: both end rims. */
|
|
59
|
-
function cylinderPoints(rx, rz, length, segments) {
|
|
60
|
-
const pts = [];
|
|
61
|
-
for (const y of [-length / 2, length / 2])
|
|
62
|
-
for (let i = 0; i < segments; i++) {
|
|
63
|
-
const a = (i / segments) * Math.PI * 2;
|
|
64
|
-
pts.push([rx * Math.cos(a), y, rz * Math.sin(a)]);
|
|
65
|
-
}
|
|
66
|
-
return pts;
|
|
67
|
-
}
|
|
68
|
-
/** Points on an ellipsoid: a fixed latitude–longitude grid. */
|
|
69
|
-
function spherePoints(rx, ry, rz) {
|
|
70
|
-
const pts = [];
|
|
71
|
-
const rings = 6, around = 12;
|
|
72
|
-
for (let j = 1; j < rings; j++) {
|
|
73
|
-
const phi = (j / rings) * Math.PI;
|
|
74
|
-
for (let i = 0; i < around; i++) {
|
|
75
|
-
const th = (i / around) * Math.PI * 2;
|
|
76
|
-
pts.push([rx * Math.sin(phi) * Math.cos(th), ry * Math.cos(phi), rz * Math.sin(phi) * Math.sin(th)]);
|
|
77
|
-
}
|
|
78
|
-
}
|
|
79
|
-
pts.push([0, ry, 0], [0, -ry, 0]);
|
|
80
|
-
return pts;
|
|
81
|
-
}
|
|
1
|
+
import { boxPoints, cylinderPoints, spherePoints, roundedOutline, lift } from "./v3-shape-sampling.js";
|
|
2
|
+
export { v3ShapePoints, transformPoints } from "./v3-shape-sampling.js";
|
|
82
3
|
/** Surface points of a V2 part body in its own frame, as things-scene builds the geometry. */
|
|
83
4
|
export function v2BodyPoints(body) {
|
|
84
5
|
const { x: w, y: h, z: d } = body.size;
|
|
@@ -107,70 +28,6 @@ export function v2BodyPoints(body) {
|
|
|
107
28
|
}
|
|
108
29
|
}
|
|
109
30
|
}
|
|
110
|
-
function boxPoints(w, h, d) {
|
|
111
|
-
const pts = [];
|
|
112
|
-
for (const sx of [-1, 1])
|
|
113
|
-
for (const sy of [-1, 1])
|
|
114
|
-
for (const sz of [-1, 1])
|
|
115
|
-
pts.push([(sx * w) / 2, (sy * h) / 2, (sz * d) / 2]);
|
|
116
|
-
return pts;
|
|
117
|
-
}
|
|
118
|
-
/** Surface points of a V3 shape in its own frame. */
|
|
119
|
-
export function v3ShapePoints(shape, segments) {
|
|
120
|
-
const d = shape.dimensions;
|
|
121
|
-
switch (shape.provider) {
|
|
122
|
-
case 'box':
|
|
123
|
-
return boxPoints(d.width, d.height, d.depth);
|
|
124
|
-
case 'cylinder':
|
|
125
|
-
return cylinderPoints(d.radius, d.radius, d.length, segments ?? 12);
|
|
126
|
-
case 'ellipticCylinder':
|
|
127
|
-
return cylinderPoints(d.radiusX, d.radiusZ, d.length, segments ?? 12);
|
|
128
|
-
case 'roundedBoxXZ': {
|
|
129
|
-
const outer = roundedOutline(d.width, d.depth, d.roundX, d.roundZ);
|
|
130
|
-
return [...lift(outer, -d.height / 2), ...lift(outer, d.height / 2)];
|
|
131
|
-
}
|
|
132
|
-
case 'hollowBoxXZ': {
|
|
133
|
-
const outer = roundedOutline(d.width, d.depth, d.roundX, d.roundZ);
|
|
134
|
-
const inner = roundedOutline(d.width - 2 * d.wallX, d.depth - 2 * d.wallZ, Math.max(d.roundX - d.wallX, 0), Math.max(d.roundZ - d.wallZ, 0));
|
|
135
|
-
return [...lift(outer, -d.height / 2), ...lift(outer, d.height / 2), ...lift(inner, d.height / 2), ...lift(inner, -d.height / 2 + d.floor)];
|
|
136
|
-
}
|
|
137
|
-
case 'frustum': {
|
|
138
|
-
const pts = [];
|
|
139
|
-
const seg = segments ?? 12;
|
|
140
|
-
for (const [y, r] of [[-d.height / 2, d.radiusBottom], [d.height / 2, d.radiusTop]])
|
|
141
|
-
for (let i = 0; i < seg; i++) {
|
|
142
|
-
const a = (i / seg) * Math.PI * 2;
|
|
143
|
-
pts.push([r * Math.cos(a), y, r * Math.sin(a)]);
|
|
144
|
-
}
|
|
145
|
-
return pts;
|
|
146
|
-
}
|
|
147
|
-
case 'sphere':
|
|
148
|
-
return spherePoints(d.radiusX, d.radiusY, d.radiusZ);
|
|
149
|
-
case 'roundedBox': {
|
|
150
|
-
const outer = roundedOutline(d.width, d.depth, d.round, d.round);
|
|
151
|
-
return [...lift(outer, -d.height / 2), ...lift(outer, d.height / 2)];
|
|
152
|
-
}
|
|
153
|
-
case 'hollowBox': {
|
|
154
|
-
const outer = roundedOutline(d.width, d.depth, d.round, d.round);
|
|
155
|
-
// The inner outline: each wall inset by its own thickness, corner reduced by the thickness on each axis.
|
|
156
|
-
const inner = roundedOutline(d.width - 2 * d.wallX, d.depth - 2 * d.wallZ, Math.max(d.round - d.wallX, 0), Math.max(d.round - d.wallZ, 0));
|
|
157
|
-
return [...lift(outer, -d.height / 2), ...lift(outer, d.height / 2), ...lift(inner, d.height / 2), ...lift(inner, -d.height / 2 + d.floor)];
|
|
158
|
-
}
|
|
159
|
-
case 'polygon': {
|
|
160
|
-
const profile = shape.profile ?? [];
|
|
161
|
-
return [...profile.map(q => [q.x, -d.height / 2, q.y]), ...profile.map(q => [q.x, d.height / 2, q.y])];
|
|
162
|
-
}
|
|
163
|
-
case 'portal':
|
|
164
|
-
return (shape.profile ?? []).flatMap(q => [[q.x, q.y, -d.depth / 2], [q.x, q.y, d.depth / 2]]);
|
|
165
|
-
}
|
|
166
|
-
}
|
|
167
|
-
export function transformPoints(points, r, t) {
|
|
168
|
-
return points.map(([x, y, z]) => [
|
|
169
|
-
r[0][0] * x + r[0][1] * y + r[0][2] * z + t[0],
|
|
170
|
-
r[1][0] * x + r[1][1] * y + r[1][2] * z + t[1],
|
|
171
|
-
r[2][0] * x + r[2][1] * y + r[2][2] * z + t[2]
|
|
172
|
-
]);
|
|
173
|
-
}
|
|
174
31
|
export function scalePoints(points, f) {
|
|
175
32
|
return points.map(([x, y, z]) => [x * f.x, y * f.y, z * f.z]);
|
|
176
33
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"v3-mesh-compare.js","sourceRoot":"","sources":["../src/v3-mesh-compare.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH;;;;;;;;;;;;;;;;;;;;GAoBG;AAEH,OAAO,EAAE,eAAe,EAAE,MAAM,YAAY,CAAA;AAM5C,iGAAiG;AACjG,MAAM,gBAAgB,GAAG,eAAe,CAAC,CAAC,CAAE,CAAA;AAE5C,qFAAqF;AACrF,SAAS,cAAc,CAAC,KAAa,EAAE,KAAa,EAAE,MAAc,EAAE,MAAc;IAClF,4GAA4G;IAC5G,qFAAqF;IACrF,MAAM,EAAE,GAAG,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,KAAK,GAAG,CAAC,CAAC,CAAA;IACtC,MAAM,EAAE,GAAG,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,KAAK,GAAG,CAAC,CAAC,CAAA;IACtC,MAAM,EAAE,GAAG,KAAK,GAAG,CAAC,EAClB,EAAE,GAAG,KAAK,GAAG,CAAC,CAAA;IAChB,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC;QAAE,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAA;IACvF,MAAM,GAAG,GAAY,EAAE,CAAA;IACvB,gHAAgH;IAChH,MAAM,OAAO,GAAiC;QAC5C,CAAC,CAAC,EAAE,GAAG,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC;QACpD,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,EAAE,GAAG,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,GAAG,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC;QACjD,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,EAAE,GAAG,EAAE,CAAC,CAAC;QACpD,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,GAAG,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;KACxD,CAAA;IACD,KAAK,MAAM,CAAC,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC;QAClC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;QACZ,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,gBAAgB,EAAE,CAAC,EAAE,EAAE,CAAC;YAC1C,MAAM,CAAC,GAAG,CAAC,GAAG,gBAAgB,EAC5B,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,EACrB,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,EACnB,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;YACX,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;QACnF,CAAC;QACD,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;IACd,CAAC;IACD,OAAO,GAAG,CAAA;AACZ,CAAC;AAED,SAAS,IAAI,CAAC,OAAgB,EAAE,CAAS;IACvC,OAAO,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,AAAD,EAAG,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAA;AAC7C,CAAC;AAED,mEAAmE;AACnE,SAAS,cAAc,CAAC,EAAU,EAAE,EAAU,EAAE,MAAc,EAAE,QAAgB;IAC9E,MAAM,GAAG,GAAY,EAAE,CAAA;IACvB,KAAK,MAAM,CAAC,IAAI,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE,MAAM,GAAG,CAAC,CAAC;QACvC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,QAAQ,EAAE,CAAC,EAAE,EAAE,CAAC;YAClC,MAAM,CAAC,GAAG,CAAC,CAAC,GAAG,QAAQ,CAAC,GAAG,IAAI,CAAC,EAAE,GAAG,CAAC,CAAA;YACtC,GAAG,CAAC,IAAI,CAAC,CAAC,EAAE,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;QACnD,CAAC;IACH,OAAO,GAAG,CAAA;AACZ,CAAC;AAED,+DAA+D;AAC/D,SAAS,YAAY,CAAC,EAAU,EAAE,EAAU,EAAE,EAAU;IACtD,MAAM,GAAG,GAAY,EAAE,CAAA;IACvB,MAAM,KAAK,GAAG,CAAC,EACb,MAAM,GAAG,EAAE,CAAA;IACb,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,EAAE,CAAC,EAAE,EAAE,CAAC;QAC/B,MAAM,GAAG,GAAG,CAAC,CAAC,GAAG,KAAK,CAAC,GAAG,IAAI,CAAC,EAAE,CAAA;QACjC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YAChC,MAAM,EAAE,GAAG,CAAC,CAAC,GAAG,MAAM,CAAC,GAAG,IAAI,CAAC,EAAE,GAAG,CAAC,CAAA;YACrC,GAAG,CAAC,IAAI,CAAC,CAAC,EAAE,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,EAAE,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,EAAE,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,CAAA;QACtG,CAAC;IACH,CAAC;IACD,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAA;IACjC,OAAO,GAAG,CAAA;AACZ,CAAC;AAYD,8FAA8F;AAC9F,MAAM,UAAU,YAAY,CAAC,IAAY;IACvC,MAAM,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,GAAG,IAAI,CAAC,IAAI,CAAA;IACtC,QAAQ,IAAI,CAAC,SAAS,EAAE,CAAC;QACvB,KAAK,MAAM,CAAC;QACZ,KAAK,MAAM;YACT,OAAO,SAAS,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAA;QAC3B,KAAK,UAAU;YACb,OAAO,cAAc,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,IAAI,CAAC,QAAQ,IAAI,EAAE,CAAC,CAAA;QAC7D,KAAK,QAAQ;YACX,OAAO,YAAY,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,CAAA;QAC1C,KAAK,MAAM,CAAC,CAAC,CAAC;YACZ,gGAAgG;YAChG,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,IAAI,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,CAAA;YACrD,MAAM,KAAK,GAAG,cAAc,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,KAAK,CAAC,CAAA;YAChD,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,MAAM,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAA;YACvE,IAAI,CAAC,MAAM;gBAAE,OAAO,CAAC,GAAG,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,GAAG,IAAI,CAAC,KAAK,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAA;YACnE,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,KAAK,IAAI,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC,CAAA;YACtD,MAAM,KAAK,GAAG,cAAc,CAAC,CAAC,GAAG,CAAC,GAAG,MAAM,CAAC,IAAI,EAAE,CAAC,GAAG,CAAC,GAAG,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,GAAG,CAAC,KAAK,GAAG,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,KAAK,GAAG,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,CAAA;YAC1I,OAAO,CAAC,GAAG,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,GAAG,IAAI,CAAC,KAAK,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,GAAG,IAAI,CAAC,KAAK,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,GAAG,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC,CAAC,CAAA;QAC/G,CAAC;QACD,KAAK,SAAS,CAAC,CAAC,CAAC;YACf,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,IAAI,EAAE,CAAA;YAC5B,OAAO,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,CAAU,CAAC,EAAE,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,CAAU,CAAC,CAAC,CAAA;QACtG,CAAC;IACH,CAAC;AACH,CAAC;AAED,SAAS,SAAS,CAAC,CAAS,EAAE,CAAS,EAAE,CAAS;IAChD,MAAM,GAAG,GAAY,EAAE,CAAA;IACvB,KAAK,MAAM,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;QAAE,KAAK,MAAM,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;YAAE,KAAK,MAAM,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;gBAAE,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,GAAG,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAA;IAClI,OAAO,GAAG,CAAA;AACZ,CAAC;AAED,qDAAqD;AACrD,MAAM,UAAU,aAAa,CAAC,KAAc,EAAE,QAAiB;IAC7D,MAAM,CAAC,GAAG,KAAK,CAAC,UAAU,CAAA;IAC1B,QAAQ,KAAK,CAAC,QAAQ,EAAE,CAAC;QACvB,KAAK,KAAK;YACR,OAAO,SAAS,CAAC,CAAC,CAAC,KAAM,EAAE,CAAC,CAAC,MAAO,EAAE,CAAC,CAAC,KAAM,CAAC,CAAA;QACjD,KAAK,UAAU;YACb,OAAO,cAAc,CAAC,CAAC,CAAC,MAAO,EAAE,CAAC,CAAC,MAAO,EAAE,CAAC,CAAC,MAAO,EAAE,QAAQ,IAAI,EAAE,CAAC,CAAA;QACxE,KAAK,kBAAkB;YACrB,OAAO,cAAc,CAAC,CAAC,CAAC,OAAQ,EAAE,CAAC,CAAC,OAAQ,EAAE,CAAC,CAAC,MAAO,EAAE,QAAQ,IAAI,EAAE,CAAC,CAAA;QAC1E,KAAK,cAAc,CAAC,CAAC,CAAC;YACpB,MAAM,KAAK,GAAG,cAAc,CAAC,CAAC,CAAC,KAAM,EAAE,CAAC,CAAC,KAAM,EAAE,CAAC,CAAC,MAAO,EAAE,CAAC,CAAC,MAAO,CAAC,CAAA;YACtE,OAAO,CAAC,GAAG,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,MAAO,GAAG,CAAC,CAAC,EAAE,GAAG,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC,MAAO,GAAG,CAAC,CAAC,CAAC,CAAA;QACxE,CAAC;QACD,KAAK,aAAa,CAAC,CAAC,CAAC;YACnB,MAAM,KAAK,GAAG,cAAc,CAAC,CAAC,CAAC,KAAM,EAAE,CAAC,CAAC,KAAM,EAAE,CAAC,CAAC,MAAO,EAAE,CAAC,CAAC,MAAO,CAAC,CAAA;YACtE,MAAM,KAAK,GAAG,cAAc,CAAC,CAAC,CAAC,KAAM,GAAG,CAAC,GAAG,CAAC,CAAC,KAAM,EAAE,CAAC,CAAC,KAAM,GAAG,CAAC,GAAG,CAAC,CAAC,KAAM,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,MAAO,GAAG,CAAC,CAAC,KAAM,EAAE,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,MAAO,GAAG,CAAC,CAAC,KAAM,EAAE,CAAC,CAAC,CAAC,CAAA;YACpJ,OAAO,CAAC,GAAG,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,MAAO,GAAG,CAAC,CAAC,EAAE,GAAG,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC,MAAO,GAAG,CAAC,CAAC,EAAE,GAAG,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC,MAAO,GAAG,CAAC,CAAC,EAAE,GAAG,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,MAAO,GAAG,CAAC,GAAG,CAAC,CAAC,KAAM,CAAC,CAAC,CAAA;QAClJ,CAAC;QACD,KAAK,SAAS,CAAC,CAAC,CAAC;YACf,MAAM,GAAG,GAAY,EAAE,CAAA;YACvB,MAAM,GAAG,GAAG,QAAQ,IAAI,EAAE,CAAA;YAC1B,KAAK,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,MAAO,GAAG,CAAC,EAAE,CAAC,CAAC,YAAa,CAAC,EAAE,CAAC,CAAC,CAAC,MAAO,GAAG,CAAC,EAAE,CAAC,CAAC,SAAU,CAAC,CAAU;gBAC9F,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC;oBAC7B,MAAM,CAAC,GAAG,CAAC,CAAC,GAAG,GAAG,CAAC,GAAG,IAAI,CAAC,EAAE,GAAG,CAAC,CAAA;oBACjC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;gBACjD,CAAC;YACH,OAAO,GAAG,CAAA;QACZ,CAAC;QACD,KAAK,QAAQ;YACX,OAAO,YAAY,CAAC,CAAC,CAAC,OAAQ,EAAE,CAAC,CAAC,OAAQ,EAAE,CAAC,CAAC,OAAQ,CAAC,CAAA;QACzD,KAAK,YAAY,CAAC,CAAC,CAAC;YAClB,MAAM,KAAK,GAAG,cAAc,CAAC,CAAC,CAAC,KAAM,EAAE,CAAC,CAAC,KAAM,EAAE,CAAC,CAAC,KAAM,EAAE,CAAC,CAAC,KAAM,CAAC,CAAA;YACpE,OAAO,CAAC,GAAG,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,MAAO,GAAG,CAAC,CAAC,EAAE,GAAG,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC,MAAO,GAAG,CAAC,CAAC,CAAC,CAAA;QACxE,CAAC;QACD,KAAK,WAAW,CAAC,CAAC,CAAC;YACjB,MAAM,KAAK,GAAG,cAAc,CAAC,CAAC,CAAC,KAAM,EAAE,CAAC,CAAC,KAAM,EAAE,CAAC,CAAC,KAAM,EAAE,CAAC,CAAC,KAAM,CAAC,CAAA;YACpE,yGAAyG;YACzG,MAAM,KAAK,GAAG,cAAc,CAAC,CAAC,CAAC,KAAM,GAAG,CAAC,GAAG,CAAC,CAAC,KAAM,EAAE,CAAC,CAAC,KAAM,GAAG,CAAC,GAAG,CAAC,CAAC,KAAM,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,KAAM,GAAG,CAAC,CAAC,KAAM,EAAE,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,KAAM,GAAG,CAAC,CAAC,KAAM,EAAE,CAAC,CAAC,CAAC,CAAA;YAClJ,OAAO,CAAC,GAAG,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,MAAO,GAAG,CAAC,CAAC,EAAE,GAAG,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC,MAAO,GAAG,CAAC,CAAC,EAAE,GAAG,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC,MAAO,GAAG,CAAC,CAAC,EAAE,GAAG,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,MAAO,GAAG,CAAC,GAAG,CAAC,CAAC,KAAM,CAAC,CAAC,CAAA;QAClJ,CAAC;QACD,KAAK,SAAS,CAAC,CAAC,CAAC;YACf,MAAM,OAAO,GAAG,KAAK,CAAC,OAAO,IAAI,EAAE,CAAA;YACnC,OAAO,CAAC,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAO,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,CAAU,CAAC,EAAE,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,MAAO,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,CAAU,CAAC,CAAC,CAAA;QAC5H,CAAC;QACD,KAAK,QAAQ;YACX,OAAO,CAAC,KAAK,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,KAAM,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,KAAM,GAAG,CAAC,CAAC,CAAY,CAAC,CAAA;IAC/G,CAAC;AACH,CAAC;AAED,MAAM,UAAU,eAAe,CAAC,MAAwB,EAAE,CAAa,EAAE,CAAoB;IAC3F,OAAO,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC;QAC/B,CAAC,CAAC,CAAC,CAAE,CAAC,CAAC,CAAE,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAE,CAAC,CAAC,CAAE,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAE,CAAC,CAAC,CAAE,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAE;QACrD,CAAC,CAAC,CAAC,CAAE,CAAC,CAAC,CAAE,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAE,CAAC,CAAC,CAAE,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAE,CAAC,CAAC,CAAE,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAE;QACrD,CAAC,CAAC,CAAC,CAAE,CAAC,CAAC,CAAE,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAE,CAAC,CAAC,CAAE,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAE,CAAC,CAAC,CAAE,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAE;KACtD,CAAC,CAAA;AACJ,CAAC;AAED,MAAM,UAAU,WAAW,CAAC,MAAwB,EAAE,CAAO;IAC3D,OAAO,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;AAC/D,CAAC;AAED,gHAAgH;AAChH,MAAM,UAAU,SAAS,CAAC,CAAmB,EAAE,CAAmB;IAChE,MAAM,MAAM,GAAG,CAAC,IAAsB,EAAE,EAAoB,EAAE,EAAE;QAC9D,IAAI,KAAK,GAAG,CAAC,CAAA;QACb,KAAK,MAAM,CAAC,IAAI,IAAI,EAAE,CAAC;YACrB,IAAI,IAAI,GAAG,QAAQ,CAAA;YACnB,KAAK,MAAM,CAAC,IAAI,EAAE,EAAE,CAAC;gBACnB,MAAM,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EACpB,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAChB,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAA;gBAClB,MAAM,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,CAAA;gBACrC,IAAI,CAAC,GAAG,IAAI;oBAAE,IAAI,GAAG,CAAC,CAAA;YACxB,CAAC;YACD,IAAI,IAAI,GAAG,KAAK;gBAAE,KAAK,GAAG,IAAI,CAAA;QAChC,CAAC;QACD,OAAO,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;IACzB,CAAC,CAAA;IACD,IAAI,CAAC,CAAC,CAAC,MAAM,IAAI,CAAC,CAAC,CAAC,MAAM;QAAE,OAAO,CAAC,CAAC,MAAM,KAAK,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAA;IACvE,OAAO,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAA;AAC7C,CAAC"}
|
|
1
|
+
{"version":3,"file":"v3-mesh-compare.js","sourceRoot":"","sources":["../src/v3-mesh-compare.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import type { V3Shape } from './v3-graph-types.ts';
|
|
2
|
+
export type Point = [number, number, number];
|
|
3
|
+
/** Points on the outline of a rounded rectangle in the X–Z plane, centred, y = 0. */
|
|
4
|
+
export declare function roundedOutline(width: number, depth: number, roundX: number, roundZ: number): Point[];
|
|
5
|
+
export declare function lift(outline: Point[], y: number): Point[];
|
|
6
|
+
/** Points on an elliptic cylinder about local Y: both end rims. */
|
|
7
|
+
export declare function cylinderPoints(rx: number, rz: number, length: number, segments: number): Point[];
|
|
8
|
+
/** Points on an ellipsoid: a fixed latitude–longitude grid. */
|
|
9
|
+
export declare function spherePoints(rx: number, ry: number, rz: number): Point[];
|
|
10
|
+
export declare function boxPoints(w: number, h: number, d: number): Point[];
|
|
11
|
+
/** Surface points of a V3 shape in its own frame. */
|
|
12
|
+
export declare function v3ShapePoints(shape: V3Shape, segments?: number): Point[];
|
|
13
|
+
export declare function transformPoints(points: readonly Point[], r: number[][], t: readonly number[]): Point[];
|
|
14
|
+
//# sourceMappingURL=v3-shape-sampling.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"v3-shape-sampling.d.ts","sourceRoot":"","sources":["../src/v3-shape-sampling.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAA;AAElD,MAAM,MAAM,KAAK,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAA;AAK5C,qFAAqF;AACrF,wBAAgB,cAAc,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,KAAK,EAAE,CA2BpG;AAED,wBAAgB,IAAI,CAAC,OAAO,EAAE,KAAK,EAAE,EAAE,CAAC,EAAE,MAAM,GAAG,KAAK,EAAE,CAEzD;AAED,mEAAmE;AACnE,wBAAgB,cAAc,CAAC,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,KAAK,EAAE,CAQhG;AAED,+DAA+D;AAC/D,wBAAgB,YAAY,CAAC,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,GAAG,KAAK,EAAE,CAaxE;AAED,wBAAgB,SAAS,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,GAAG,KAAK,EAAE,CAIlE;AAED,qDAAqD;AACrD,wBAAgB,aAAa,CAAC,KAAK,EAAE,OAAO,EAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,KAAK,EAAE,CA+CxE;AAED,wBAAgB,eAAe,CAAC,MAAM,EAAE,SAAS,KAAK,EAAE,EAAE,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC,EAAE,SAAS,MAAM,EAAE,GAAG,KAAK,EAAE,CAMtG"}
|