@mlightcad/geometry-engine 3.2.9 → 3.2.11

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.
@@ -1,6 +1,7 @@
1
1
  /**
2
2
  * NURBS utility functions for spline calculations
3
3
  */
4
+ type KnotParameterizationType = 'Uniform' | 'Chord' | 'SqrtChord';
4
5
  /**
5
6
  * Generate uniform knot vector
6
7
  */
@@ -9,10 +10,26 @@ export declare function generateUniformKnots(degree: number, numControlPoints: n
9
10
  * Generate chord-length parameterized knots
10
11
  */
11
12
  export declare function generateChordKnots(degree: number, points: number[][]): number[];
13
+ /**
14
+ * Compute parameter values for fit points
15
+ */
16
+ export declare function computeParameterValues(points: number[][], parameterization?: KnotParameterizationType): number[];
17
+ /**
18
+ * Generate a clamped knot vector using averaging method
19
+ */
20
+ export declare function generateAveragedKnots(degree: number, parameters: number[]): number[];
12
21
  /**
13
22
  * Generate sqrt-chord parameterized knots
14
23
  */
15
24
  export declare function generateSqrtChordKnots(degree: number, points: number[][]): number[];
25
+ /**
26
+ * Interpolate a NURBS curve from fit points with optional end tangents
27
+ */
28
+ export declare function interpolateNurbsCurve(fitPoints: number[][], degree: number, parameterization?: KnotParameterizationType, startTangent?: number[], endTangent?: number[]): {
29
+ controlPoints: number[][];
30
+ knots: number[];
31
+ weights: number[];
32
+ };
16
33
  /**
17
34
  * Calculate basis function value for NURBS
18
35
  */
@@ -27,8 +44,7 @@ export declare function evaluateNurbsPoint(u: number, degree: number, knots: num
27
44
  export declare function calculateCurveLength(degree: number, knots: number[], controlPoints: number[][], weights: number[]): number;
28
45
  /**
29
46
  * Generate control points from fit points using interpolation
30
- * This is a simplified implementation - for production use, you might want
31
- * to implement a more sophisticated interpolation algorithm
32
47
  */
33
- export declare function interpolateControlPoints(fitPoints: number[][]): number[][];
48
+ export declare function interpolateControlPoints(fitPoints: number[][], degree?: number, parameterization?: KnotParameterizationType, startTangent?: number[], endTangent?: number[]): number[][];
49
+ export {};
34
50
  //# sourceMappingURL=AcGeNurbsUtil.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"AcGeNurbsUtil.d.ts","sourceRoot":"","sources":["../../src/util/AcGeNurbsUtil.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH;;GAEG;AACH,wBAAgB,oBAAoB,CAClC,MAAM,EAAE,MAAM,EACd,gBAAgB,EAAE,MAAM,GACvB,MAAM,EAAE,CAqBV;AAED;;GAEG;AACH,wBAAgB,kBAAkB,CAChC,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,MAAM,EAAE,EAAE,GACjB,MAAM,EAAE,CAqCV;AAED;;GAEG;AACH,wBAAgB,sBAAsB,CACpC,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,MAAM,EAAE,EAAE,GACjB,MAAM,EAAE,CAsCV;AAED;;GAEG;AACH,wBAAgB,aAAa,CAC3B,CAAC,EAAE,MAAM,EACT,CAAC,EAAE,MAAM,EACT,CAAC,EAAE,MAAM,EACT,KAAK,EAAE,MAAM,EAAE,GACd,MAAM,CAeR;AAED;;GAEG;AACH,wBAAgB,kBAAkB,CAChC,CAAC,EAAE,MAAM,EACT,MAAM,EAAE,MAAM,EACd,KAAK,EAAE,MAAM,EAAE,EACf,aAAa,EAAE,MAAM,EAAE,EAAE,EACzB,OAAO,EAAE,MAAM,EAAE,GAChB,MAAM,EAAE,CAmDV;AAED;;GAEG;AACH,wBAAgB,oBAAoB,CAClC,MAAM,EAAE,MAAM,EACd,KAAK,EAAE,MAAM,EAAE,EACf,aAAa,EAAE,MAAM,EAAE,EAAE,EACzB,OAAO,EAAE,MAAM,EAAE,GAChB,MAAM,CA2CR;AAED;;;;GAIG;AACH,wBAAgB,wBAAwB,CAAC,SAAS,EAAE,MAAM,EAAE,EAAE,GAAG,MAAM,EAAE,EAAE,CAK1E"}
1
+ {"version":3,"file":"AcGeNurbsUtil.d.ts","sourceRoot":"","sources":["../../src/util/AcGeNurbsUtil.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,KAAK,wBAAwB,GAAG,SAAS,GAAG,OAAO,GAAG,WAAW,CAAA;AAEjE;;GAEG;AACH,wBAAgB,oBAAoB,CAClC,MAAM,EAAE,MAAM,EACd,gBAAgB,EAAE,MAAM,GACvB,MAAM,EAAE,CAqBV;AAED;;GAEG;AACH,wBAAgB,kBAAkB,CAChC,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,MAAM,EAAE,EAAE,GACjB,MAAM,EAAE,CAqCV;AAED;;GAEG;AACH,wBAAgB,sBAAsB,CACpC,MAAM,EAAE,MAAM,EAAE,EAAE,EAClB,gBAAgB,GAAE,wBAAoC,GACrD,MAAM,EAAE,CAgCV;AAED;;GAEG;AACH,wBAAgB,qBAAqB,CACnC,MAAM,EAAE,MAAM,EACd,UAAU,EAAE,MAAM,EAAE,GACnB,MAAM,EAAE,CAqBV;AAED;;GAEG;AACH,wBAAgB,sBAAsB,CACpC,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,MAAM,EAAE,EAAE,GACjB,MAAM,EAAE,CAsCV;AAwDD;;GAEG;AACH,wBAAgB,qBAAqB,CACnC,SAAS,EAAE,MAAM,EAAE,EAAE,EACrB,MAAM,EAAE,MAAM,EACd,gBAAgB,GAAE,wBAAoC,EACtD,YAAY,CAAC,EAAE,MAAM,EAAE,EACvB,UAAU,CAAC,EAAE,MAAM,EAAE,GACpB;IAAE,aAAa,EAAE,MAAM,EAAE,EAAE,CAAC;IAAC,KAAK,EAAE,MAAM,EAAE,CAAC;IAAC,OAAO,EAAE,MAAM,EAAE,CAAA;CAAE,CAmGnE;AAED;;GAEG;AACH,wBAAgB,aAAa,CAC3B,CAAC,EAAE,MAAM,EACT,CAAC,EAAE,MAAM,EACT,CAAC,EAAE,MAAM,EACT,KAAK,EAAE,MAAM,EAAE,GACd,MAAM,CAeR;AAED;;GAEG;AACH,wBAAgB,kBAAkB,CAChC,CAAC,EAAE,MAAM,EACT,MAAM,EAAE,MAAM,EACd,KAAK,EAAE,MAAM,EAAE,EACf,aAAa,EAAE,MAAM,EAAE,EAAE,EACzB,OAAO,EAAE,MAAM,EAAE,GAChB,MAAM,EAAE,CAmDV;AAED;;GAEG;AACH,wBAAgB,oBAAoB,CAClC,MAAM,EAAE,MAAM,EACd,KAAK,EAAE,MAAM,EAAE,EACf,aAAa,EAAE,MAAM,EAAE,EAAE,EACzB,OAAO,EAAE,MAAM,EAAE,GAChB,MAAM,CA2CR;AAED;;GAEG;AACH,wBAAgB,wBAAwB,CACtC,SAAS,EAAE,MAAM,EAAE,EAAE,EACrB,MAAM,GAAE,MAAU,EAClB,gBAAgB,GAAE,wBAAoC,EACtD,YAAY,CAAC,EAAE,MAAM,EAAE,EACvB,UAAU,CAAC,EAAE,MAAM,EAAE,GACpB,MAAM,EAAE,EAAE,CAYZ"}
@@ -81,6 +81,59 @@ export function generateChordKnots(degree, points) {
81
81
  }
82
82
  return knots;
83
83
  }
84
+ /**
85
+ * Compute parameter values for fit points
86
+ */
87
+ export function computeParameterValues(points, parameterization) {
88
+ if (parameterization === void 0) { parameterization = 'Uniform'; }
89
+ var count = points.length;
90
+ if (count === 0) {
91
+ return [];
92
+ }
93
+ if (count === 1) {
94
+ return [0];
95
+ }
96
+ var m = count - 1;
97
+ if (parameterization === 'Uniform') {
98
+ return new Array(count).fill(0).map(function (_, i) { return i / m; });
99
+ }
100
+ var params = [0];
101
+ var total = 0;
102
+ for (var i = 1; i <= m; i++) {
103
+ var dx = points[i][0] - points[i - 1][0];
104
+ var dy = points[i][1] - points[i - 1][1];
105
+ var dz = points[i][2] - points[i - 1][2];
106
+ var length_2 = Math.sqrt(dx * dx + dy * dy + dz * dz);
107
+ var segment = parameterization === 'SqrtChord' ? Math.sqrt(length_2) : length_2;
108
+ total += segment;
109
+ params.push(total);
110
+ }
111
+ if (total < 1e-12) {
112
+ return new Array(count).fill(0).map(function (_, i) { return i / m; });
113
+ }
114
+ return params.map(function (value) { return value / total; });
115
+ }
116
+ /**
117
+ * Generate a clamped knot vector using averaging method
118
+ */
119
+ export function generateAveragedKnots(degree, parameters) {
120
+ var n = parameters.length - 1;
121
+ var p = degree;
122
+ var m = n + p + 1;
123
+ var knots = new Array(m + 1).fill(0);
124
+ var endValue = parameters[parameters.length - 1];
125
+ for (var i = m - p; i <= m; i++) {
126
+ knots[i] = endValue;
127
+ }
128
+ for (var j = 1; j <= n - p; j++) {
129
+ var sum = 0;
130
+ for (var i = j; i < j + p; i++) {
131
+ sum += parameters[i];
132
+ }
133
+ knots[j + p] = sum / p;
134
+ }
135
+ return knots;
136
+ }
84
137
  /**
85
138
  * Generate sqrt-chord parameterized knots
86
139
  */
@@ -94,8 +147,8 @@ export function generateSqrtChordKnots(degree, points) {
94
147
  var dx = points[i][0] - points[i - 1][0];
95
148
  var dy = points[i][1] - points[i - 1][1];
96
149
  var dz = points[i][2] - points[i - 1][2];
97
- var length_2 = Math.sqrt(dx * dx + dy * dy + dz * dz);
98
- var sqrtLength = Math.sqrt(length_2);
150
+ var length_3 = Math.sqrt(dx * dx + dy * dy + dz * dz);
151
+ var sqrtLength = Math.sqrt(length_3);
99
152
  totalSqrtLength += sqrtLength;
100
153
  sqrtChordLengths.push(totalSqrtLength);
101
154
  }
@@ -116,6 +169,141 @@ export function generateSqrtChordKnots(degree, points) {
116
169
  }
117
170
  return knots;
118
171
  }
172
+ function solveLinearSystem(matrix, rhs) {
173
+ var n = matrix.length;
174
+ var a = matrix.map(function (row) { return row.slice(); });
175
+ var b = rhs.slice();
176
+ for (var k = 0; k < n; k++) {
177
+ var pivotRow = k;
178
+ var pivotValue = Math.abs(a[k][k]);
179
+ for (var i = k + 1; i < n; i++) {
180
+ var value = Math.abs(a[i][k]);
181
+ if (value > pivotValue) {
182
+ pivotValue = value;
183
+ pivotRow = i;
184
+ }
185
+ }
186
+ if (pivotValue < 1e-12) {
187
+ throw new Error('Interpolation matrix is singular.');
188
+ }
189
+ if (pivotRow !== k) {
190
+ var tmpRow = a[k];
191
+ a[k] = a[pivotRow];
192
+ a[pivotRow] = tmpRow;
193
+ var tmpValue = b[k];
194
+ b[k] = b[pivotRow];
195
+ b[pivotRow] = tmpValue;
196
+ }
197
+ for (var i = k + 1; i < n; i++) {
198
+ var factor = a[i][k] / a[k][k];
199
+ if (Math.abs(factor) < 1e-14) {
200
+ continue;
201
+ }
202
+ for (var j = k; j < n; j++) {
203
+ a[i][j] -= factor * a[k][j];
204
+ }
205
+ b[i] -= factor * b[k];
206
+ }
207
+ }
208
+ var x = new Array(n).fill(0);
209
+ for (var i = n - 1; i >= 0; i--) {
210
+ var sum = b[i];
211
+ for (var j = i + 1; j < n; j++) {
212
+ sum -= a[i][j] * x[j];
213
+ }
214
+ x[i] = sum / a[i][i];
215
+ }
216
+ return x;
217
+ }
218
+ /**
219
+ * Interpolate a NURBS curve from fit points with optional end tangents
220
+ */
221
+ export function interpolateNurbsCurve(fitPoints, degree, parameterization, startTangent, endTangent) {
222
+ var _a, _b, _c, _d, _e, _f;
223
+ if (parameterization === void 0) { parameterization = 'Uniform'; }
224
+ if (fitPoints.length === 0) {
225
+ return { controlPoints: [], knots: [], weights: [] };
226
+ }
227
+ var safePoints = fitPoints.map(function (point) { var _a; return [point[0], point[1], (_a = point[2]) !== null && _a !== void 0 ? _a : 0]; });
228
+ // Tangents are interpreted as first derivatives in the parameter domain.
229
+ var hasStartTangent = !!startTangent;
230
+ var hasEndTangent = !!endTangent;
231
+ var tangentCount = (hasStartTangent ? 1 : 0) + (hasEndTangent ? 1 : 0);
232
+ var m = safePoints.length - 1;
233
+ var n = m + tangentCount;
234
+ if (n < degree) {
235
+ throw new Error('Not enough points to interpolate a curve of this degree.');
236
+ }
237
+ var params = computeParameterValues(safePoints, parameterization);
238
+ var extendedParams = params.slice();
239
+ if (hasStartTangent) {
240
+ extendedParams.unshift(params[0]);
241
+ }
242
+ if (hasEndTangent) {
243
+ extendedParams.push(params[params.length - 1]);
244
+ }
245
+ var knots = generateAveragedKnots(degree, extendedParams);
246
+ var size = n + 1;
247
+ var matrix = new Array(size);
248
+ var rhsX = new Array(size);
249
+ var rhsY = new Array(size);
250
+ var rhsZ = new Array(size);
251
+ var row = 0;
252
+ matrix[row] = new Array(size).fill(0);
253
+ matrix[row][0] = 1;
254
+ rhsX[row] = safePoints[0][0];
255
+ rhsY[row] = safePoints[0][1];
256
+ rhsZ[row] = safePoints[0][2];
257
+ row++;
258
+ for (var i = 1; i <= m - 1; i++) {
259
+ var u = params[i];
260
+ matrix[row] = new Array(size).fill(0);
261
+ for (var j = 0; j <= n; j++) {
262
+ matrix[row][j] = basisFunction(j, degree, u, knots);
263
+ }
264
+ rhsX[row] = safePoints[i][0];
265
+ rhsY[row] = safePoints[i][1];
266
+ rhsZ[row] = safePoints[i][2];
267
+ row++;
268
+ }
269
+ matrix[row] = new Array(size).fill(0);
270
+ matrix[row][n] = 1;
271
+ rhsX[row] = safePoints[m][0];
272
+ rhsY[row] = safePoints[m][1];
273
+ rhsZ[row] = safePoints[m][2];
274
+ row++;
275
+ if (hasStartTangent) {
276
+ var denom = knots[degree + 1] - knots[0];
277
+ var coeff = denom !== 0 ? degree / denom : 0;
278
+ matrix[row] = new Array(size).fill(0);
279
+ matrix[row][0] = -coeff;
280
+ matrix[row][1] = coeff;
281
+ rhsX[row] = (_a = startTangent === null || startTangent === void 0 ? void 0 : startTangent[0]) !== null && _a !== void 0 ? _a : 0;
282
+ rhsY[row] = (_b = startTangent === null || startTangent === void 0 ? void 0 : startTangent[1]) !== null && _b !== void 0 ? _b : 0;
283
+ rhsZ[row] = (_c = startTangent === null || startTangent === void 0 ? void 0 : startTangent[2]) !== null && _c !== void 0 ? _c : 0;
284
+ row++;
285
+ }
286
+ if (hasEndTangent) {
287
+ var denom = knots[n + degree + 1] - knots[n];
288
+ var coeff = denom !== 0 ? degree / denom : 0;
289
+ matrix[row] = new Array(size).fill(0);
290
+ matrix[row][n - 1] = -coeff;
291
+ matrix[row][n] = coeff;
292
+ rhsX[row] = (_d = endTangent === null || endTangent === void 0 ? void 0 : endTangent[0]) !== null && _d !== void 0 ? _d : 0;
293
+ rhsY[row] = (_e = endTangent === null || endTangent === void 0 ? void 0 : endTangent[1]) !== null && _e !== void 0 ? _e : 0;
294
+ rhsZ[row] = (_f = endTangent === null || endTangent === void 0 ? void 0 : endTangent[2]) !== null && _f !== void 0 ? _f : 0;
295
+ row++;
296
+ }
297
+ var solutionX = solveLinearSystem(matrix, rhsX);
298
+ var solutionY = solveLinearSystem(matrix, rhsY);
299
+ var solutionZ = solveLinearSystem(matrix, rhsZ);
300
+ var controlPoints = new Array(size);
301
+ for (var i = 0; i < size; i++) {
302
+ controlPoints[i] = [solutionX[i], solutionY[i], solutionZ[i]];
303
+ }
304
+ var weights = new Array(size).fill(1.0);
305
+ return { controlPoints: controlPoints, knots: knots, weights: weights };
306
+ }
119
307
  /**
120
308
  * Calculate basis function value for NURBS
121
309
  */
@@ -206,13 +394,13 @@ export function calculateCurveLength(degree, knots, controlPoints, weights) {
206
394
  }
207
395
  /**
208
396
  * Generate control points from fit points using interpolation
209
- * This is a simplified implementation - for production use, you might want
210
- * to implement a more sophisticated interpolation algorithm
211
397
  */
212
- export function interpolateControlPoints(fitPoints) {
213
- // For now, use fit points as control points
214
- // In a full implementation, you would solve the interpolation system
215
- // by setting up and solving a linear system of equations
216
- return fitPoints.map(function (p) { return __spreadArray([], __read(p), false); });
398
+ export function interpolateControlPoints(fitPoints, degree, parameterization, startTangent, endTangent) {
399
+ if (degree === void 0) { degree = 3; }
400
+ if (parameterization === void 0) { parameterization = 'Uniform'; }
401
+ if (fitPoints.length === 0) {
402
+ return [];
403
+ }
404
+ return interpolateNurbsCurve(fitPoints, degree, parameterization, startTangent, endTangent).controlPoints;
217
405
  }
218
406
  //# sourceMappingURL=AcGeNurbsUtil.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"AcGeNurbsUtil.js","sourceRoot":"","sources":["../../src/util/AcGeNurbsUtil.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"AcGeNurbsUtil.js","sourceRoot":"","sources":["../../src/util/AcGeNurbsUtil.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@mlightcad/geometry-engine",
3
- "version": "3.2.9",
3
+ "version": "3.2.11",
4
4
  "license": "MIT",
5
5
  "type": "module",
6
6
  "repository": {
@@ -31,11 +31,8 @@
31
31
  "import": "./dist/geometry-engine.js",
32
32
  "require": "./dist/geometry-engine.umd.cjs"
33
33
  },
34
- "dependencies": {
35
- "verb-nurbs-web": "^2.1.3"
36
- },
37
34
  "peerDependencies": {
38
- "@mlightcad/common": "1.4.9"
35
+ "@mlightcad/common": "1.4.11"
39
36
  },
40
37
  "scripts": {
41
38
  "clean": "rimraf dist lib tsconfig.tsbuildinfo",