okgeometry-api 0.2.15 → 0.2.17

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/Mesh.d.ts CHANGED
@@ -51,9 +51,10 @@ export declare class Mesh {
51
51
  */
52
52
  static fromBuffer(buffer: Float64Array): Mesh;
53
53
  /**
54
- * Create a planar patch mesh from boundary points using fan triangulation.
55
- * @param pts - Boundary points defining the patch
56
- * @returns New Mesh with n-2 triangles
54
+ * Create a planar patch mesh from boundary points using CDT (Constrained Delaunay Triangulation).
55
+ * Correctly handles both convex and concave polygons.
56
+ * @param pts - Ordered boundary points defining a closed polygon (minimum 3)
57
+ * @returns New Mesh triangulating the polygon interior
57
58
  */
58
59
  static patchFromPoints(pts: Point[]): Mesh;
59
60
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"Mesh.d.ts","sourceRoot":"","sources":["../src/Mesh.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AACnC,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AACnC,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAOzC,OAAO,KAAK,EAAE,cAAc,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAK/D;;;;;GAKG;AACH,qBAAa,IAAI;IACf,OAAO,CAAC,OAAO,CAAe;IAC9B,OAAO,CAAC,YAAY,CAAS;IAG7B,OAAO,CAAC,eAAe,CAA6B;IACpD,OAAO,CAAC,YAAY,CAA4B;IAChD,OAAO,CAAC,SAAS,CAAwB;IACzC,OAAO,CAAC,MAAM,CAA2B;IAEzC,OAAO;IAOP;;;OAGG;IACH,IAAI,cAAc,IAAI,YAAY,CASjC;IAED;;;OAGG;IACH,IAAI,WAAW,IAAI,WAAW,CAU7B;IAED,sCAAsC;IACtC,IAAI,WAAW,IAAI,MAAM,CAExB;IAED,8CAA8C;IAC9C,IAAI,SAAS,IAAI,MAAM,CAEtB;IAID;;;OAGG;IACH,IAAI,QAAQ,IAAI,KAAK,EAAE,CAUtB;IAED;;;;OAIG;IACH,IAAI,KAAK,IAAI,MAAM,EAAE,EAAE,CAUtB;IAED,8DAA8D;IAC9D,IAAI,SAAS,IAAI,YAAY,CAE5B;IAID;;;;OAIG;IACH,MAAM,CAAC,UAAU,CAAC,MAAM,EAAE,YAAY,GAAG,IAAI;IAI7C;;;;OAIG;IACH,MAAM,CAAC,eAAe,CAAC,GAAG,EAAE,KAAK,EAAE,GAAG,IAAI;IAgB1C;;;;;;OAMG;IACH,MAAM,CAAC,SAAS,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI;IAKpE;;;;;;OAMG;IACH,MAAM,CAAC,YAAY,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI;IAK1E;;;;;;OAMG;IACH,MAAM,CAAC,cAAc,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,IAAI;IAK7E;;;;;;OAMG;IACH,MAAM,CAAC,WAAW,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI;IAKvE;;;;;;OAMG;IACH,MAAM,CAAC,UAAU,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,IAAI;IAKzE;;;;OAIG;IACH,MAAM,CAAC,OAAO,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI;IAKvC;;;;;;OAMG;IACH,MAAM,CAAC,WAAW,CAChB,OAAO,EAAE,KAAK,CAAC;QAAE,MAAM,EAAE,KAAK,CAAC;QAAC,MAAM,CAAC,EAAE;YAAE,CAAC,EAAE,MAAM,CAAC;YAAC,CAAC,EAAE,MAAM,CAAC;YAAC,CAAC,EAAE,MAAM,CAAA;SAAE,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC,EAC/F,QAAQ,EAAE,MAAM,EAChB,IAAI,UAAQ,GACX,IAAI;IAiBP;;;;;;OAMG;IACH,MAAM,CAAC,aAAa,CAAC,SAAS,EAAE,KAAK,EAAE,EAAE,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,UAAQ,GAAG,IAAI;IAahF;;;;;;OAMG;IACH,MAAM,CAAC,KAAK,CAAC,aAAa,EAAE,KAAK,EAAE,EAAE,UAAU,EAAE,KAAK,EAAE,EAAE,IAAI,UAAQ,GAAG,IAAI;IAK7E;;;;;;;;OAQG;IACH,MAAM,CAAC,WAAW,CAAC,OAAO,EAAE,cAAc,EAAE,IAAI,EAAE,cAAc,EAAE,QAAQ,SAAK,EAAE,IAAI,UAAQ,GAAG,IAAI;IAOpG,4DAA4D;IAC5D,OAAO,CAAC,MAAM,CAAC,WAAW;IA0E1B;;;;OAIG;IACH,SAAS,CAAC,MAAM,EAAE,IAAI,GAAG,IAAI;IAK7B;;;;;OAKG;IACH,MAAM,CAAC,IAAI,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,GAAG,IAAI;IAYtD;;;;OAIG;IACH,KAAK,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI;IAK3B;;;;;;OAMG;IACH,QAAQ,CAAC,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,GAAG,IAAI;IAOlD;;;;OAIG;IACH,KAAK,CAAC,KAAK,EAAE,IAAI,GAAG,IAAI;IAOxB;;;;OAIG;IACH,QAAQ,CAAC,KAAK,EAAE,IAAI,GAAG,IAAI;IAO3B;;;;OAIG;IACH,SAAS,CAAC,KAAK,EAAE,IAAI,GAAG,IAAI;IAS5B;;;;OAIG;IACH,cAAc,CAAC,KAAK,EAAE,KAAK,GAAG,QAAQ,EAAE;IAaxC;;;;OAIG;IACH,aAAa,CAAC,KAAK,EAAE,IAAI,GAAG,QAAQ,EAAE;IAWtC;;;;OAIG;IACH,WAAW,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,IAAI;IAKnC;;;;;;;;OAQG;IACH,QAAQ,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,GAAG,KAAK;IAMrC;;;;OAIG;IACH,iBAAiB,IAAI,QAAQ,EAAE;IAQ/B;;;OAGG;IACH,KAAK,IAAI,MAAM;CAIhB"}
1
+ {"version":3,"file":"Mesh.d.ts","sourceRoot":"","sources":["../src/Mesh.ts"],"names":[],"mappings":"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"}
package/dist/Mesh.js CHANGED
@@ -110,27 +110,15 @@ export class Mesh {
110
110
  return new Mesh(buffer);
111
111
  }
112
112
  /**
113
- * Create a planar patch mesh from boundary points using fan triangulation.
114
- * @param pts - Boundary points defining the patch
115
- * @returns New Mesh with n-2 triangles
113
+ * Create a planar patch mesh from boundary points using CDT (Constrained Delaunay Triangulation).
114
+ * Correctly handles both convex and concave polygons.
115
+ * @param pts - Ordered boundary points defining a closed polygon (minimum 3)
116
+ * @returns New Mesh triangulating the polygon interior
116
117
  */
117
118
  static patchFromPoints(pts) {
118
- const n = pts.length;
119
- // Buffer format: [vertexCount, x1,y1,z1, ..., i1,i2,i3, ...]
120
- const buf = new Float64Array(1 + n * 3 + (n - 2) * 3);
121
- buf[0] = n;
122
- let idx = 1;
123
- for (const p of pts) {
124
- buf[idx++] = p.x;
125
- buf[idx++] = p.y;
126
- buf[idx++] = p.z;
127
- }
128
- // Fan triangulation from vertex 0
129
- for (let i = 1; i < n - 1; i++) {
130
- buf[idx++] = 0;
131
- buf[idx++] = i;
132
- buf[idx++] = i + 1;
133
- }
119
+ ensureInit();
120
+ const coords = pointsToCoords(pts);
121
+ const buf = wasm.mesh_patch_from_points(coords);
134
122
  return new Mesh(buf);
135
123
  }
136
124
  /**
package/dist/Mesh.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"Mesh.js","sourceRoot":"","sources":["../src/Mesh.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AACnC,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAEjC,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AACrC,OAAO,EAAE,GAAG,EAAE,MAAM,UAAU,CAAC;AAC/B,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AACvC,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC7C,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAG3C,OAAO,EAAE,cAAc,EAAE,mBAAmB,IAAI,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AAC3F,OAAO,KAAK,IAAI,MAAM,8BAA8B,CAAC;AAErD;;;;;GAKG;AACH,MAAM,OAAO,IAAI;IAUf,YAAoB,MAAoB;QANxC,cAAc;QACN,oBAAe,GAAwB,IAAI,CAAC;QAC5C,iBAAY,GAAuB,IAAI,CAAC;QACxC,cAAS,GAAmB,IAAI,CAAC;QACjC,WAAM,GAAsB,IAAI,CAAC;QAGvC,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC;QACtB,IAAI,CAAC,YAAY,GAAG,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IACxD,CAAC;IAED,kEAAkE;IAElE;;;OAGG;IACH,IAAI,cAAc;QAChB,IAAI,CAAC,IAAI,CAAC,eAAe,EAAE,CAAC;YAC1B,MAAM,CAAC,GAAG,IAAI,CAAC,YAAY,GAAG,CAAC,CAAC;YAChC,IAAI,CAAC,eAAe,GAAG,IAAI,YAAY,CAAC,CAAC,CAAC,CAAC;YAC3C,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;gBAC3B,IAAI,CAAC,eAAe,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;YAChD,CAAC;QACH,CAAC;QACD,OAAO,IAAI,CAAC,eAAe,CAAC;IAC9B,CAAC;IAED;;;OAGG;IACH,IAAI,WAAW;QACb,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,CAAC;YACvB,MAAM,KAAK,GAAG,CAAC,GAAG,IAAI,CAAC,YAAY,GAAG,CAAC,CAAC;YACxC,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,OAAO,CAAC,MAAM,GAAG,KAAK,CAAC,CAAC;YACrD,IAAI,CAAC,YAAY,GAAG,IAAI,WAAW,CAAC,GAAG,CAAC,CAAC;YACzC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC;gBAC7B,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC;YACjD,CAAC;QACH,CAAC;QACD,OAAO,IAAI,CAAC,YAAY,CAAC;IAC3B,CAAC;IAED,sCAAsC;IACtC,IAAI,WAAW;QACb,OAAO,IAAI,CAAC,YAAY,CAAC;IAC3B,CAAC;IAED,8CAA8C;IAC9C,IAAI,SAAS;QACX,OAAO,IAAI,CAAC,WAAW,CAAC,MAAM,GAAG,CAAC,CAAC;IACrC,CAAC;IAED,kEAAkE;IAElE;;;OAGG;IACH,IAAI,QAAQ;QACV,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC;YACpB,MAAM,GAAG,GAAY,EAAE,CAAC;YACxB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,YAAY,EAAE,CAAC,EAAE,EAAE,CAAC;gBAC3C,MAAM,GAAG,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;gBACtB,GAAG,CAAC,IAAI,CAAC,IAAI,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,IAAI,CAAC,OAAO,CAAC,GAAG,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,OAAO,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;YACvF,CAAC;YACD,IAAI,CAAC,SAAS,GAAG,GAAG,CAAC;QACvB,CAAC;QACD,OAAO,IAAI,CAAC,SAAS,CAAC;IACxB,CAAC;IAED;;;;OAIG;IACH,IAAI,KAAK;QACP,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;YACjB,MAAM,GAAG,GAAG,IAAI,CAAC,WAAW,CAAC;YAC7B,MAAM,CAAC,GAAe,EAAE,CAAC;YACzB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,GAAG,CAAC,MAAM,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC;gBACvC,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;YAC3C,CAAC;YACD,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC;QAClB,CAAC;QACD,OAAO,IAAI,CAAC,MAAM,CAAC;IACrB,CAAC;IAED,8DAA8D;IAC9D,IAAI,SAAS;QACX,OAAO,IAAI,CAAC,OAAO,CAAC;IACtB,CAAC;IAED,kEAAkE;IAElE;;;;OAIG;IACH,MAAM,CAAC,UAAU,CAAC,MAAoB;QACpC,OAAO,IAAI,IAAI,CAAC,MAAM,CAAC,CAAC;IAC1B,CAAC;IAED;;;;OAIG;IACH,MAAM,CAAC,eAAe,CAAC,GAAY;QACjC,MAAM,CAAC,GAAG,GAAG,CAAC,MAAM,CAAC;QACrB,6DAA6D;QAC7D,MAAM,GAAG,GAAG,IAAI,YAAY,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;QACtD,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;QACX,IAAI,GAAG,GAAG,CAAC,CAAC;QACZ,KAAK,MAAM,CAAC,IAAI,GAAG,EAAE,CAAC;YAAC,GAAG,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;YAAC,GAAG,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;YAAC,GAAG,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;QAAC,CAAC;QAC9E,kCAAkC;QAClC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;YAC/B,GAAG,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC;YACf,GAAG,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC;YACf,GAAG,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QACrB,CAAC;QACD,OAAO,IAAI,IAAI,CAAC,GAAG,CAAC,CAAC;IACvB,CAAC;IAED;;;;;;OAMG;IACH,MAAM,CAAC,SAAS,CAAC,KAAa,EAAE,MAAc,EAAE,KAAa;QAC3D,UAAU,EAAE,CAAC;QACb,OAAO,IAAI,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,CAAC,CAAC,CAAC;IAC9D,CAAC;IAED;;;;;;OAMG;IACH,MAAM,CAAC,YAAY,CAAC,MAAc,EAAE,QAAgB,EAAE,KAAa;QACjE,UAAU,EAAE,CAAC;QACb,OAAO,IAAI,IAAI,CAAC,IAAI,CAAC,kBAAkB,CAAC,MAAM,EAAE,QAAQ,EAAE,KAAK,CAAC,CAAC,CAAC;IACpE,CAAC;IAED;;;;;;OAMG;IACH,MAAM,CAAC,cAAc,CAAC,MAAc,EAAE,MAAc,EAAE,QAAgB;QACpE,UAAU,EAAE,CAAC;QACb,OAAO,IAAI,IAAI,CAAC,IAAI,CAAC,oBAAoB,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,CAAC,CAAC,CAAC;IACvE,CAAC;IAED;;;;;;OAMG;IACH,MAAM,CAAC,WAAW,CAAC,MAAc,EAAE,MAAc,EAAE,KAAa;QAC9D,UAAU,EAAE,CAAC;QACb,OAAO,IAAI,IAAI,CAAC,IAAI,CAAC,iBAAiB,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,CAAC,CAAC,CAAC;IACjE,CAAC;IAED;;;;;;OAMG;IACH,MAAM,CAAC,UAAU,CAAC,MAAc,EAAE,MAAc,EAAE,QAAgB;QAChE,UAAU,EAAE,CAAC;QACb,OAAO,IAAI,IAAI,CAAC,IAAI,CAAC,gBAAgB,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,CAAC,CAAC,CAAC;IACnE,CAAC;IAED;;;;OAIG;IACH,MAAM,CAAC,OAAO,CAAC,SAAiB;QAC9B,UAAU,EAAE,CAAC;QACb,OAAO,IAAI,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,SAAS,CAAC,CAAC,CAAC;IACnD,CAAC;IAED;;;;;;OAMG;IACH,MAAM,CAAC,WAAW,CAChB,OAA+F,EAC/F,QAAgB,EAChB,IAAI,GAAG,KAAK;QAEZ,UAAU,EAAE,CAAC;QACb,MAAM,IAAI,GAAG,IAAI,YAAY,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;QAClD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YACxC,MAAM,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;YACrB,MAAM,GAAG,GAAG,CAAC,GAAG,CAAC,CAAC;YAClB,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC;YACvB,IAAI,CAAC,GAAG,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC;YAC3B,IAAI,CAAC,GAAG,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC;YAC3B,IAAI,CAAC,GAAG,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,CAAC,CAAC;YACjC,IAAI,CAAC,GAAG,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,CAAC,CAAC;YACjC,IAAI,CAAC,GAAG,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,CAAC,CAAC;YACjC,IAAI,CAAC,GAAG,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC;QAC3B,CAAC;QACD,OAAO,IAAI,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,IAAI,EAAE,QAAQ,EAAE,IAAI,CAAC,CAAC,CAAC;IAC3D,CAAC;IAED;;;;;;OAMG;IACH,MAAM,CAAC,aAAa,CAAC,SAAoB,EAAE,QAAgB,EAAE,IAAI,GAAG,KAAK;QACvE,UAAU,EAAE,CAAC;QACb,iDAAiD;QACjD,MAAM,KAAK,GAAa,EAAE,CAAC;QAC3B,KAAK,MAAM,EAAE,IAAI,SAAS,EAAE,CAAC;YAC3B,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC;YACtB,KAAK,MAAM,CAAC,IAAI,EAAE,EAAE,CAAC;gBACnB,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;YAC5B,CAAC;QACH,CAAC;QACD,OAAO,IAAI,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,IAAI,YAAY,CAAC,KAAK,CAAC,EAAE,QAAQ,EAAE,IAAI,CAAC,CAAC,CAAC;IAChF,CAAC;IAED;;;;;;OAMG;IACH,MAAM,CAAC,KAAK,CAAC,aAAsB,EAAE,UAAmB,EAAE,IAAI,GAAG,KAAK;QACpE,UAAU,EAAE,CAAC;QACb,OAAO,IAAI,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,cAAc,CAAC,aAAa,CAAC,EAAE,cAAc,CAAC,UAAU,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC;IACzG,CAAC;IAED;;;;;;;;OAQG;IACH,MAAM,CAAC,WAAW,CAAC,OAAuB,EAAE,IAAoB,EAAE,QAAQ,GAAG,EAAE,EAAE,IAAI,GAAG,KAAK;QAC3F,UAAU,EAAE,CAAC;QACb,MAAM,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;QAC9C,MAAM,QAAQ,GAAG,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;QACxC,OAAO,IAAI,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,WAAW,EAAE,QAAQ,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,CAAC,CAAC,CAAC;IACtF,CAAC;IAED,4DAA4D;IACpD,MAAM,CAAC,WAAW,CAAC,KAAqB;QAC9C,IAAI,KAAK,YAAY,IAAI,EAAE,CAAC;YAC1B,OAAO,IAAI,YAAY,CAAC;gBACtB,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC;gBAC3C,KAAK,CAAC,GAAG,CAAC,CAAC,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;QAC5C,CAAC;QACD,IAAI,KAAK,YAAY,MAAM,EAAE,CAAC;YAC5B,yDAAyD;YACzD,IAAI,KAAK,CAAC,KAAK,EAAE,CAAC;gBAChB,OAAO,IAAI,YAAY,CAAC;oBACtB,KAAK,CAAC,MAAM,CAAC,CAAC,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;oBAC9C,KAAK,CAAC,MAAM,CAAC,CAAC,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;oBAC9C,KAAK,CAAC,MAAM;oBACZ,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;YAClD,CAAC;iBAAM,CAAC;gBACN,OAAO,IAAI,YAAY,CAAC;oBACtB,KAAK,CAAC,MAAM,CAAC,CAAC,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;oBAC9C,KAAK,CAAC,MAAM,CAAC,CAAC,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;oBAC9C,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC;YACnB,CAAC;QACH,CAAC;QACD,IAAI,KAAK,YAAY,GAAG,EAAE,CAAC;YACzB,OAAO,IAAI,YAAY,CAAC;gBACtB,KAAK,CAAC,MAAM,CAAC,CAAC,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;gBAC9C,KAAK,CAAC,MAAM,CAAC,CAAC,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;gBAC9C,KAAK,CAAC,MAAM,EAAE,KAAK,CAAC,UAAU,EAAE,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC;QACrD,CAAC;QACD,IAAI,KAAK,YAAY,OAAO,IAAI,KAAK,YAAY,QAAQ,EAAE,CAAC;YAC1D,MAAM,GAAG,GAAG,KAAK,CAAC,MAAM,CAAC;YACzB,MAAM,MAAM,GAAG,cAAc,CAAC,GAAG,CAAC,CAAC;YACnC,MAAM,IAAI,GAAG,IAAI,YAAY,CAAC,CAAC,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC;YACjD,IAAI,CAAC,CAAC,CAAC,iCAAyB,CAAC;YACjC,IAAI,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC,MAAM,CAAC;YACrB,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;YACpB,OAAO,IAAI,CAAC;QACd,CAAC;QACD,IAAI,KAAK,YAAY,UAAU,EAAE,CAAC;YAChC,MAAM,CAAC,GAAG,KAAK,CAAC,aAAa,CAAC,MAAM,CAAC;YACrC,MAAM,IAAI,GAAG,IAAI,YAAY,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC,OAAO,CAAC,MAAM,GAAG,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;YACrF,IAAI,CAAC,CAAC,CAAC,mCAA2B,CAAC;YACnC,IAAI,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,MAAM,CAAC;YACvB,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;YACZ,IAAI,GAAG,GAAG,CAAC,CAAC;YACZ,KAAK,MAAM,CAAC,IAAI,KAAK,CAAC,aAAa,EAAE,CAAC;gBAAC,IAAI,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;gBAAC,IAAI,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;gBAAC,IAAI,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;YAAC,CAAC;YACjG,KAAK,MAAM,CAAC,IAAI,KAAK,CAAC,OAAO;gBAAE,IAAI,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC;YAC/C,KAAK,MAAM,CAAC,IAAI,KAAK,CAAC,KAAK;gBAAE,IAAI,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC;YAC7C,OAAO,IAAI,CAAC;QACd,CAAC;QACD,IAAI,KAAK,YAAY,SAAS,EAAE,CAAC;YAC/B,MAAM,KAAK,GAAa,kCAA0B,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;YACzE,KAAK,MAAM,GAAG,IAAI,KAAK,CAAC,QAAQ,EAAE,CAAC;gBACjC,IAAI,GAAG,YAAY,IAAI,EAAE,CAAC;oBACxB,KAAK,CAAC,IAAI,+BAAuB,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,GAAG,CAAC,CAAC,EAAE,GAAG,CAAC,GAAG,CAAC,CAAC,EAAE,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;gBAC3G,CAAC;qBAAM,CAAC;oBACN,KAAK,CAAC,IAAI,4BAAoB,GAAG,CAAC,MAAM,CAAC,CAAC,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC,EACpE,GAAG,CAAC,MAAM,CAAC,CAAC,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC,EACxC,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,UAAU,EAAE,GAAG,CAAC,QAAQ,CAAC,CAAC;gBAC9C,CAAC;YACH,CAAC;YACD,OAAO,IAAI,YAAY,CAAC,KAAK,CAAC,CAAC;QACjC,CAAC;QACD,+BAA+B;QAC/B,MAAM,GAAG,GAAY,EAAE,CAAC;QACxB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,EAAE;YAAE,GAAG,CAAC,IAAI,CAAE,KAAa,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC;QACvE,MAAM,MAAM,GAAG,cAAc,CAAC,GAAG,CAAC,CAAC;QACnC,MAAM,IAAI,GAAG,IAAI,YAAY,CAAC,CAAC,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC;QACjD,IAAI,CAAC,CAAC,CAAC,iCAAyB,CAAC;QACjC,IAAI,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC,MAAM,CAAC;QACrB,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;QACpB,OAAO,IAAI,CAAC;IACd,CAAC;IAED,iEAAiE;IAEjE;;;;OAIG;IACH,SAAS,CAAC,MAAY;QACpB,UAAU,EAAE,CAAC;QACb,OAAO,IAAI,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,YAAY,EAAE,IAAI,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;IACtG,CAAC;IAED;;;;;OAKG;IACH,MAAM,CAAC,IAAkB,EAAE,YAAoB;QAC7C,UAAU,EAAE,CAAC;QACb,IAAI,OAAO,IAAI,IAAI,IAAI,KAAK,IAAI,IAAI,EAAE,CAAC;YACrC,MAAM,GAAG,GAAG,IAAI,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS,EAAE,CAAC;YAClH,MAAM,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC;YACrB,OAAO,IAAI,CAAC,SAAS,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;iBAC9C,MAAM,CAAC,GAAG,EAAE,YAAY,CAAC;iBACzB,SAAS,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACxC,CAAC;QACD,OAAO,IAAI,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,YAAY,EAAE,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,EAAE,YAAY,CAAC,CAAC,CAAC;IAC3G,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,MAAc;QAClB,UAAU,EAAE,CAAC;QACb,OAAO,IAAI,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,YAAY,EAAE,IAAI,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;IAC5F,CAAC;IAED;;;;;;OAMG;IACH,QAAQ,CAAC,EAAU,EAAE,EAAU,EAAE,EAAU;QACzC,UAAU,EAAE,CAAC;QACb,OAAO,IAAI,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,YAAY,EAAE,IAAI,CAAC,OAAO,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC;IAChF,CAAC;IAED,kEAAkE;IAElE;;;;OAIG;IACH,KAAK,CAAC,KAAW;QACf,UAAU,EAAE,CAAC;QACb,OAAO,IAAI,IAAI,CACb,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,YAAY,EAAE,IAAI,CAAC,OAAO,EAAE,KAAK,CAAC,YAAY,EAAE,KAAK,CAAC,OAAO,CAAC,CAC5F,CAAC;IACJ,CAAC;IAED;;;;OAIG;IACH,QAAQ,CAAC,KAAW;QAClB,UAAU,EAAE,CAAC;QACb,OAAO,IAAI,IAAI,CACb,IAAI,CAAC,wBAAwB,CAAC,IAAI,CAAC,YAAY,EAAE,IAAI,CAAC,OAAO,EAAE,KAAK,CAAC,YAAY,EAAE,KAAK,CAAC,OAAO,CAAC,CAClG,CAAC;IACJ,CAAC;IAED;;;;OAIG;IACH,SAAS,CAAC,KAAW;QACnB,UAAU,EAAE,CAAC;QACb,OAAO,IAAI,IAAI,CACb,IAAI,CAAC,yBAAyB,CAAC,IAAI,CAAC,YAAY,EAAE,IAAI,CAAC,OAAO,EAAE,KAAK,CAAC,YAAY,EAAE,KAAK,CAAC,OAAO,CAAC,CACnG,CAAC;IACJ,CAAC;IAED,kEAAkE;IAElE;;;;OAIG;IACH,cAAc,CAAC,KAAY;QACzB,UAAU,EAAE,CAAC;QACb,MAAM,MAAM,GAAG,IAAI,CAAC,oBAAoB,CACtC,IAAI,CAAC,YAAY,EACjB,IAAI,CAAC,OAAO,EACZ,KAAK,CAAC,MAAM,CAAC,CAAC,EACd,KAAK,CAAC,MAAM,CAAC,CAAC,EACd,KAAK,CAAC,MAAM,CAAC,CAAC,EACd,KAAK,CAAC,CAAC,CACR,CAAC;QACF,OAAO,gBAAgB,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC;IAChE,CAAC;IAED;;;;OAIG;IACH,aAAa,CAAC,KAAW;QACvB,UAAU,EAAE,CAAC;QACb,MAAM,MAAM,GAAG,IAAI,CAAC,mBAAmB,CACrC,IAAI,CAAC,YAAY,EACjB,IAAI,CAAC,OAAO,EACZ,KAAK,CAAC,YAAY,EAClB,KAAK,CAAC,OAAO,CACd,CAAC;QACF,OAAO,gBAAgB,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC;IAChE,CAAC;IAED;;;;OAIG;IACH,WAAW,CAAC,MAAgB;QAC1B,UAAU,EAAE,CAAC;QACb,OAAO,IAAI,IAAI,CAAC,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,YAAY,EAAE,IAAI,CAAC,OAAO,EAAE,IAAI,YAAY,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;IACrG,CAAC;IAED;;;;;;;;OAQG;IACH,QAAQ,CAAC,CAAS,EAAE,CAAS;QAC3B,UAAU,EAAE,CAAC;QACb,MAAM,CAAC,GAAG,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,YAAY,EAAE,IAAI,CAAC,OAAO,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;QACpE,OAAO,IAAI,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IACrC,CAAC;IAED;;;;OAIG;IACH,iBAAiB;QACf,UAAU,EAAE,CAAC;QACb,MAAM,GAAG,GAAG,IAAI,CAAC,uBAAuB,CAAC,IAAI,CAAC,YAAY,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;QAC1E,OAAO,gBAAgB,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC;IAC7D,CAAC;IAED,mEAAmE;IAEnE;;;OAGG;IACH,KAAK;QACH,UAAU,EAAE,CAAC;QACb,OAAO,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,YAAY,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;IAC/D,CAAC;CACF"}
1
+ {"version":3,"file":"Mesh.js","sourceRoot":"","sources":["../src/Mesh.ts"],"names":[],"mappings":"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"}
package/dist/Plane.d.ts CHANGED
@@ -21,6 +21,14 @@ export declare class Plane {
21
21
  /** Bisector plane of two planes. Normal bisects the dihedral angle.
22
22
  * Origin is taken from planeA. */
23
23
  static bisector(a: Plane, b: Plane): Plane;
24
+ /**
25
+ * Compute the intersection point of three planes.
26
+ * Returns null if the system is degenerate (planes parallel or co-planar).
27
+ *
28
+ * Each plane is n·x = d. The solution uses Cramer's rule:
29
+ * x = (d1(n2×n3) + d2(n3×n1) + d3(n1×n2)) / (n1·(n2×n3))
30
+ */
31
+ static intersect3(p1: Plane, p2: Plane, p3: Plane): Point | null;
24
32
  static readonly XY: Plane;
25
33
  static readonly XZ: Plane;
26
34
  static readonly YZ: Plane;
@@ -1 +1 @@
1
- {"version":3,"file":"Plane.d.ts","sourceRoot":"","sources":["../src/Plane.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AACnC,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAEjC,qBAAa,KAAK;IAChB,SAAgB,MAAM,EAAE,KAAK,CAAC;IAC9B,SAAgB,MAAM,EAAE,IAAI,CAAC;IAC7B,0EAA0E;IAC1E,SAAgB,KAAK,CAAC,EAAE,IAAI,CAAC;gBAEjB,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,CAAC,EAAE,IAAI;IAmBrD;iEAC6D;IAC7D,QAAQ,IAAI,IAAI;IAmBhB,2EAA2E;IAC3E,UAAU,CAAC,KAAK,EAAE,KAAK,GAAG,MAAM;IAQhC,mEAAmE;IACnE,YAAY,CAAC,KAAK,EAAE,KAAK,GAAG,KAAK;IASjC;qFACiF;IACjF,0BAA0B,CAAC,KAAK,EAAE,KAAK,EAAE,SAAS,EAAE,IAAI,GAAG,KAAK;IAkBhE,8CAA8C;IAC9C,IAAI,CAAC,IAAI,MAAM,CAEd;IAED;uCACmC;IACnC,MAAM,CAAC,QAAQ,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,KAAK,GAAG,KAAK;IAO1C,MAAM,CAAC,QAAQ,CAAC,EAAE,QAAmC;IACrD,MAAM,CAAC,QAAQ,CAAC,EAAE,QAAmC;IACrD,MAAM,CAAC,QAAQ,CAAC,EAAE,QAAmC;CACtD"}
1
+ {"version":3,"file":"Plane.d.ts","sourceRoot":"","sources":["../src/Plane.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AACnC,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAEjC,qBAAa,KAAK;IAChB,SAAgB,MAAM,EAAE,KAAK,CAAC;IAC9B,SAAgB,MAAM,EAAE,IAAI,CAAC;IAC7B,0EAA0E;IAC1E,SAAgB,KAAK,CAAC,EAAE,IAAI,CAAC;gBAEjB,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,CAAC,EAAE,IAAI;IAmBrD;iEAC6D;IAC7D,QAAQ,IAAI,IAAI;IAmBhB,2EAA2E;IAC3E,UAAU,CAAC,KAAK,EAAE,KAAK,GAAG,MAAM;IAQhC,mEAAmE;IACnE,YAAY,CAAC,KAAK,EAAE,KAAK,GAAG,KAAK;IASjC;qFACiF;IACjF,0BAA0B,CAAC,KAAK,EAAE,KAAK,EAAE,SAAS,EAAE,IAAI,GAAG,KAAK;IAkBhE,8CAA8C;IAC9C,IAAI,CAAC,IAAI,MAAM,CAEd;IAED;uCACmC;IACnC,MAAM,CAAC,QAAQ,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,KAAK,GAAG,KAAK;IAO1C;;;;;;OAMG;IACH,MAAM,CAAC,UAAU,CAAC,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,KAAK,GAAG,KAAK,GAAG,IAAI;IAmBhE,MAAM,CAAC,QAAQ,CAAC,EAAE,QAAmC;IACrD,MAAM,CAAC,QAAQ,CAAC,EAAE,QAAmC;IACrD,MAAM,CAAC,QAAQ,CAAC,EAAE,QAAmC;CACtD"}
package/dist/Plane.js CHANGED
@@ -69,6 +69,24 @@ export class Plane {
69
69
  const bisectNormal = a.normal.add(nb).normalize();
70
70
  return new Plane(a.origin, bisectNormal);
71
71
  }
72
+ /**
73
+ * Compute the intersection point of three planes.
74
+ * Returns null if the system is degenerate (planes parallel or co-planar).
75
+ *
76
+ * Each plane is n·x = d. The solution uses Cramer's rule:
77
+ * x = (d1(n2×n3) + d2(n3×n1) + d3(n1×n2)) / (n1·(n2×n3))
78
+ */
79
+ static intersect3(p1, p2, p3) {
80
+ const n2xn3 = p2.normal.cross(p3.normal);
81
+ const denom = p1.normal.dot(n2xn3);
82
+ if (Math.abs(denom) < 1e-10)
83
+ return null;
84
+ const n3xn1 = p3.normal.cross(p1.normal);
85
+ const n1xn2 = p1.normal.cross(p2.normal);
86
+ const d1 = p1.d, d2 = p2.d, d3 = p3.d;
87
+ const inv = 1.0 / denom;
88
+ return new Point((d1 * n2xn3.x + d2 * n3xn1.x + d3 * n1xn2.x) * inv, (d1 * n2xn3.y + d2 * n3xn1.y + d3 * n1xn2.y) * inv, (d1 * n2xn3.z + d2 * n3xn1.z + d3 * n1xn2.z) * inv);
89
+ }
72
90
  }
73
91
  Plane.XY = new Plane(Point.ORIGIN, Vec3.Z);
74
92
  Plane.XZ = new Plane(Point.ORIGIN, Vec3.Y);
package/dist/Plane.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"Plane.js","sourceRoot":"","sources":["../src/Plane.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Plane.js","sourceRoot":"","sources":["../src/Plane.ts"],"names":[],"mappings":"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"}