@mlightcad/geometry-engine 2.0.6 → 2.0.7

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,4 +1,4 @@
1
- import { AcGePoint3dLike } from '../math';
1
+ import { AcGePoint3d, AcGePoint3dLike } from '../math';
2
2
  /**
3
3
  * Type for NURBS knot parameterization
4
4
  */
@@ -61,6 +61,10 @@ export declare class AcGeNurbsCurve {
61
61
  * Check if the curve is closed by comparing start and end points
62
62
  */
63
63
  isClosed(tolerance?: number): boolean;
64
+ /**
65
+ * Create fit points for a closed NURBS curve using Catmull-Rom interpolation
66
+ */
67
+ static createFitPointsForClosedCurve(points: AcGePoint3dLike[]): AcGePoint3d[];
64
68
  /**
65
69
  * Create a closed NURBS curve using Catmull-Rom interpolation for smooth closure
66
70
  */
@@ -1 +1 @@
1
- {"version":3,"file":"AcGeNurbsCurve.d.ts","sourceRoot":"","sources":["../../src/geometry/AcGeNurbsCurve.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,SAAS,CAAA;AAUzC;;GAEG;AACH,MAAM,MAAM,4BAA4B,GAAG,SAAS,GAAG,OAAO,GAAG,WAAW,CAAA;AAE5E;;GAEG;AACH,qBAAa,cAAc;IACzB,OAAO,CAAC,OAAO,CAAQ;IACvB,OAAO,CAAC,MAAM,CAAU;IACxB,OAAO,CAAC,cAAc,CAAmB;IACzC,OAAO,CAAC,QAAQ,CAAU;gBAGxB,MAAM,EAAE,MAAM,EACd,KAAK,EAAE,MAAM,EAAE,EACf,aAAa,EAAE,eAAe,EAAE,EAChC,OAAO,CAAC,EAAE,MAAM,EAAE;IAUpB;;OAEG;IACH,MAAM,IAAI,MAAM;IAIhB;;OAEG;IACH,KAAK,IAAI,MAAM,EAAE;IAIjB;;OAEG;IACH,aAAa,IAAI,eAAe,EAAE;IAIlC;;OAEG;IACH,OAAO,IAAI,MAAM,EAAE;IAInB;;OAEG;IACH,KAAK,CAAC,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE;IAY1B;;OAEG;IACH,MAAM,IAAI,MAAM;IAWhB;;OAEG;IACH,MAAM,CAAC,2BAA2B,CAChC,MAAM,EAAE,MAAM,EACd,KAAK,EAAE,MAAM,EAAE,EACf,aAAa,EAAE,eAAe,EAAE,EAChC,OAAO,CAAC,EAAE,MAAM,EAAE,GACjB,cAAc;IAIjB;;OAEG;IACH,MAAM,CAAC,QAAQ,CACb,MAAM,EAAE,MAAM,EAAE,EAAE,EAClB,MAAM,EAAE,MAAM,EACd,gBAAgB,GAAE,4BAAwC,GACzD,cAAc;IAuBjB;;OAEG;IACH,iBAAiB,IAAI;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,GAAG,EAAE,MAAM,CAAA;KAAE;IAMnD;;;;OAIG;IACH,SAAS,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,EAAE,EAAE;IAYxC;;OAEG;IACH,QAAQ,CAAC,SAAS,GAAE,MAAa,GAAG,OAAO;IAY3C;;OAEG;IACH,MAAM,CAAC,iBAAiB,CACtB,MAAM,EAAE,eAAe,EAAE,EACzB,MAAM,EAAE,MAAM,EACd,gBAAgB,GAAE,4BAAsC,GACvD,cAAc;CAuBlB"}
1
+ {"version":3,"file":"AcGeNurbsCurve.d.ts","sourceRoot":"","sources":["../../src/geometry/AcGeNurbsCurve.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,eAAe,EAAE,MAAM,SAAS,CAAA;AAUtD;;GAEG;AACH,MAAM,MAAM,4BAA4B,GAAG,SAAS,GAAG,OAAO,GAAG,WAAW,CAAA;AAE5E;;GAEG;AACH,qBAAa,cAAc;IACzB,OAAO,CAAC,OAAO,CAAQ;IACvB,OAAO,CAAC,MAAM,CAAU;IACxB,OAAO,CAAC,cAAc,CAAmB;IACzC,OAAO,CAAC,QAAQ,CAAU;gBAGxB,MAAM,EAAE,MAAM,EACd,KAAK,EAAE,MAAM,EAAE,EACf,aAAa,EAAE,eAAe,EAAE,EAChC,OAAO,CAAC,EAAE,MAAM,EAAE;IAUpB;;OAEG;IACH,MAAM,IAAI,MAAM;IAIhB;;OAEG;IACH,KAAK,IAAI,MAAM,EAAE;IAIjB;;OAEG;IACH,aAAa,IAAI,eAAe,EAAE;IAIlC;;OAEG;IACH,OAAO,IAAI,MAAM,EAAE;IAInB;;OAEG;IACH,KAAK,CAAC,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE;IAY1B;;OAEG;IACH,MAAM,IAAI,MAAM;IAWhB;;OAEG;IACH,MAAM,CAAC,2BAA2B,CAChC,MAAM,EAAE,MAAM,EACd,KAAK,EAAE,MAAM,EAAE,EACf,aAAa,EAAE,eAAe,EAAE,EAChC,OAAO,CAAC,EAAE,MAAM,EAAE,GACjB,cAAc;IAIjB;;OAEG;IACH,MAAM,CAAC,QAAQ,CACb,MAAM,EAAE,MAAM,EAAE,EAAE,EAClB,MAAM,EAAE,MAAM,EACd,gBAAgB,GAAE,4BAAwC,GACzD,cAAc;IAuBjB;;OAEG;IACH,iBAAiB,IAAI;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,GAAG,EAAE,MAAM,CAAA;KAAE;IAMnD;;;;OAIG;IACH,SAAS,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,EAAE,EAAE;IAYxC;;OAEG;IACH,QAAQ,CAAC,SAAS,GAAE,MAAa,GAAG,OAAO;IAY3C;;OAEG;IACH,MAAM,CAAC,6BAA6B,CAClC,MAAM,EAAE,eAAe,EAAE,GACxB,WAAW,EAAE;IAkBhB;;OAEG;IACH,MAAM,CAAC,iBAAiB,CACtB,MAAM,EAAE,eAAe,EAAE,EACzB,MAAM,EAAE,MAAM,EACd,gBAAgB,GAAE,4BAAsC,GACvD,cAAc;CASlB"}
@@ -142,10 +142,9 @@ var AcGeNurbsCurve = /** @class */ (function () {
142
142
  return Math.sqrt(dx * dx + dy * dy + dz * dz) < tolerance;
143
143
  };
144
144
  /**
145
- * Create a closed NURBS curve using Catmull-Rom interpolation for smooth closure
145
+ * Create fit points for a closed NURBS curve using Catmull-Rom interpolation
146
146
  */
147
- AcGeNurbsCurve.createClosedCurve = function (points, degree, parameterization) {
148
- if (parameterization === void 0) { parameterization = 'Chord'; }
147
+ AcGeNurbsCurve.createFitPointsForClosedCurve = function (points) {
149
148
  if (points.length < 4) {
150
149
  throw new Error('At least 4 points are required for a closed NURBS curve');
151
150
  }
@@ -154,7 +153,14 @@ var AcGeNurbsCurve = /** @class */ (function () {
154
153
  // Get points along the curve for NURBS interpolation
155
154
  // Use more divisions for smoother curve
156
155
  var divisions = Math.max(50, points.length * 2);
157
- var curvePoints = catmullRomCurve.getPoints(divisions);
156
+ return catmullRomCurve.getPoints(divisions);
157
+ };
158
+ /**
159
+ * Create a closed NURBS curve using Catmull-Rom interpolation for smooth closure
160
+ */
161
+ AcGeNurbsCurve.createClosedCurve = function (points, degree, parameterization) {
162
+ if (parameterization === void 0) { parameterization = 'Chord'; }
163
+ var curvePoints = this.createFitPointsForClosedCurve(points);
158
164
  // Convert AcGePoint3d[] back to number[][]
159
165
  var nurbsPoints = curvePoints.map(function (point) { return [point.x, point.y, point.z]; });
160
166
  // Create NURBS curve from the interpolated points
@@ -1 +1 @@
1
- {"version":3,"file":"AcGeNurbsCurve.js","sourceRoot":"","sources":["../../src/geometry/AcGeNurbsCurve.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"AcGeNurbsCurve.js","sourceRoot":"","sources":["../../src/geometry/AcGeNurbsCurve.ts"],"names":[],"mappings":"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"}
@@ -75,6 +75,18 @@ export declare class AcGeSpline3d extends AcGeCurve3d {
75
75
  * @returns Return converted points
76
76
  */
77
77
  private toNurbsPoints;
78
+ /**
79
+ * Convert input points to points in verb-nurbs-web format
80
+ * @param points Input points to convert
81
+ * @returns Return converted points
82
+ */
83
+ private toVerbPoints;
84
+ /**
85
+ * Convert input points to points in geometry engine format
86
+ * @param points Input points to convert
87
+ * @returns Return converted points
88
+ */
89
+ private toGePoints;
78
90
  /**
79
91
  * Create a closed spline from fit points using AcGeNurbsCurve.createClosedCurve
80
92
  * @param fitPoints - Array of fit points defining the curve
@@ -1 +1 @@
1
- {"version":3,"file":"AcGeSpline3d.d.ts","sourceRoot":"","sources":["../../src/geometry/AcGeSpline3d.ts"],"names":[],"mappings":"AAEA,OAAO,EACL,SAAS,EACT,YAAY,EACZ,WAAW,EACX,eAAe,EACf,aAAa,EACd,MAAM,SAAS,CAAA;AAChB,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAA;AAC3C,OAAO,EAAE,4BAA4B,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAA;AAE/E,qBAAa,YAAa,SAAQ,WAAW;IAC3C,OAAO,CAAC,WAAW,CAAgB;IACnC,OAAO,CAAC,UAAU,CAAC,CAAmB;IACtC,OAAO,CAAC,qBAAqB,CAAC,CAA8B;IAC5D,OAAO,CAAC,cAAc,CAAmB;IACzC,OAAO,CAAC,OAAO,CAAS;IACxB,OAAO,CAAC,OAAO,CAAQ;gBAGrB,aAAa,EAAE,eAAe,EAAE,EAChC,KAAK,EAAE,MAAM,EAAE,EACf,OAAO,CAAC,EAAE,MAAM,EAAE,EAClB,MAAM,CAAC,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,OAAO;gBAGhB,SAAS,EAAE,aAAa,EAAE,EAC1B,SAAS,EAAE,4BAA4B,EACvC,MAAM,CAAC,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,OAAO;IAsGlB;;OAEG;IACH,OAAO,CAAC,UAAU;IA8ClB;;OAEG;IACH,OAAO,CAAC,SAAS;IAUjB;;OAEG;IACH,IAAI,MAAM,WAET;IAED,IAAI,oBAAoB,6CAEvB;IAED;;OAEG;IACH,IAAI,UAAU,IAAI,WAAW,CAM5B;IAED;;OAEG;IACH,IAAI,QAAQ,IAAI,WAAW,CAM1B;IAED;;OAEG;IACH,IAAI,MAAM,WAET;IAED;;;;;;OAMG;IACH,aAAa,CAAC,KAAK,EAAE,MAAM,GAAG,eAAe;IAU7C;;;;;;OAMG;IACH,iBAAiB,CAAC,KAAK,EAAE,MAAM;IAM/B;;;;;OAKG;IACH,SAAS,CAAC,SAAS,GAAE,MAAY,GAAG,WAAW,EAAE;IAsBjD,cAAc,CAAC,KAAK,EAAE,cAAc,EAAE,KAAK,EAAE,MAAM;IAkBnD;;OAEG;IACH,oBAAoB;IAKpB,IAAI,MAAM,IAGQ,OAAO,CADxB;IACD,IAAI,MAAM,CAAC,KAAK,EAAE,OAAO,EAExB;IAED;;OAEG;IACH,SAAS,CAAC,OAAO,EAAE,YAAY;IAM/B;;;;OAIG;IACH,OAAO,CAAC,aAAa;IAQrB;;;;;;OAMG;IACH,MAAM,CAAC,kBAAkB,CACvB,SAAS,EAAE,eAAe,EAAE,EAC5B,gBAAgB,GAAE,4BAAwC,EAC1D,MAAM,GAAE,MAAU,GACjB,YAAY;CAQhB"}
1
+ {"version":3,"file":"AcGeSpline3d.d.ts","sourceRoot":"","sources":["../../src/geometry/AcGeSpline3d.ts"],"names":[],"mappings":"AAGA,OAAO,EACL,SAAS,EACT,YAAY,EACZ,WAAW,EACX,eAAe,EACf,aAAa,EACd,MAAM,SAAS,CAAA;AAChB,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAA;AAC3C,OAAO,EAAE,4BAA4B,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAA;AAE/E,qBAAa,YAAa,SAAQ,WAAW;IAC3C,OAAO,CAAC,WAAW,CAAsB;IACzC,OAAO,CAAC,UAAU,CAAC,CAAmB;IACtC,OAAO,CAAC,qBAAqB,CAAC,CAA8B;IAC5D,OAAO,CAAC,cAAc,CAAmB;IACzC,OAAO,CAAC,OAAO,CAAS;IACxB,OAAO,CAAC,OAAO,CAAQ;gBAGrB,aAAa,EAAE,eAAe,EAAE,EAChC,KAAK,EAAE,MAAM,EAAE,EACf,OAAO,CAAC,EAAE,MAAM,EAAE,EAClB,MAAM,CAAC,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,OAAO;gBAGhB,SAAS,EAAE,aAAa,EAAE,EAC1B,SAAS,EAAE,4BAA4B,EACvC,MAAM,CAAC,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,OAAO;IA+FlB;;OAEG;IACH,OAAO,CAAC,UAAU;IAqClB;;OAEG;IACH,OAAO,CAAC,SAAS;IAUjB;;OAEG;IACH,IAAI,MAAM,WAET;IAED,IAAI,oBAAoB,6CAEvB;IAED;;OAEG;IACH,IAAI,UAAU,IAAI,WAAW,CAM5B;IAED;;OAEG;IACH,IAAI,QAAQ,IAAI,WAAW,CAM1B;IAED;;OAEG;IACH,IAAI,MAAM,WAET;IAED;;;;;;OAMG;IACH,aAAa,CAAC,KAAK,EAAE,MAAM,GAAG,eAAe;IAU7C;;;;;;OAMG;IACH,iBAAiB,CAAC,KAAK,EAAE,MAAM;IAM/B;;;;;OAKG;IACH,SAAS,CAAC,SAAS,GAAE,MAAY,GAAG,WAAW,EAAE;IAsBjD,cAAc,CAAC,KAAK,EAAE,cAAc,EAAE,KAAK,EAAE,MAAM;IAkBnD;;OAEG;IACH,oBAAoB;IAKpB,IAAI,MAAM,IAGQ,OAAO,CADxB;IACD,IAAI,MAAM,CAAC,KAAK,EAAE,OAAO,EAExB;IAED;;OAEG;IACH,SAAS,CAAC,OAAO,EAAE,YAAY;IAM/B;;;;OAIG;IACH,OAAO,CAAC,aAAa;IAQrB;;;;OAIG;IACH,OAAO,CAAC,YAAY;IAQpB;;;;OAIG;IACH,OAAO,CAAC,UAAU;IAQlB;;;;;;OAMG;IACH,MAAM,CAAC,kBAAkB,CACvB,SAAS,EAAE,eAAe,EAAE,EAC5B,gBAAgB,GAAE,4BAAwC,EAC1D,MAAM,GAAE,MAAU,GACjB,YAAY;CAQhB"}
@@ -14,6 +14,7 @@ var __extends = (this && this.__extends) || (function () {
14
14
  };
15
15
  })();
16
16
  import { AcCmErrors } from '@mlightcad/common';
17
+ import verb from 'verb-nurbs-web';
17
18
  import { AcGeBox3d, AcGePoint3d } from '../math';
18
19
  import { AcGeCurve3d } from './AcGeCurve3d';
19
20
  import { AcGeNurbsCurve } from './AcGeNurbsCurve';
@@ -45,8 +46,8 @@ var AcGeSpline3d = /** @class */ (function (_super) {
45
46
  throw AcCmErrors.ILLEGAL_PARAMETERS;
46
47
  }
47
48
  var points = _this.toNurbsPoints(_this._fitPoints);
48
- _this._nurbsCurve = AcGeNurbsCurve.byPoints(points, _this._degree, _this._knotParameterization);
49
- _this._controlPoints = _this._nurbsCurve.controlPoints();
49
+ _this._nurbsCurve = verb.geom.NurbsCurve.byPoints(points, _this._degree);
50
+ _this._controlPoints = _this.toGePoints(_this._nurbsCurve.controlPoints());
50
51
  }
51
52
  else {
52
53
  // Constructor with control points
@@ -87,13 +88,14 @@ var AcGeSpline3d = /** @class */ (function (_super) {
87
88
  if (_this._controlPoints.length < _this._degree + 1) {
88
89
  throw AcCmErrors.ILLEGAL_PARAMETERS;
89
90
  }
90
- _this._nurbsCurve = AcGeNurbsCurve.byKnotsControlPointsWeights(_this._degree, b, _this._controlPoints, weights);
91
- }
92
- // Apply closed state if specified
93
- if (_this._closed) {
94
- _this.buildCurve();
91
+ var points = _this.toVerbPoints(_this._controlPoints);
92
+ _this._nurbsCurve = verb.geom.NurbsCurve.byKnotsControlPointsWeights(_this._degree, b, points, weights);
95
93
  }
96
94
  return _this;
95
+ // Apply closed state if specified
96
+ // if (this._closed) {
97
+ // this.buildCurve()
98
+ // }
97
99
  }
98
100
  /**
99
101
  * Build the NURBS curve using stored data
@@ -102,30 +104,33 @@ var AcGeSpline3d = /** @class */ (function (_super) {
102
104
  if (this._fitPoints && this._knotParameterization) {
103
105
  // Build from fit points
104
106
  if (this._closed) {
105
- // Create closed curve from fit points
106
- this._nurbsCurve = AcGeNurbsCurve.createClosedCurve(this._fitPoints, this._degree, this._knotParameterization);
107
+ var newFitPoints = AcGeNurbsCurve.createFitPointsForClosedCurve(this._fitPoints);
108
+ var points = this.toNurbsPoints(newFitPoints);
109
+ this._nurbsCurve = verb.geom.NurbsCurve.byPoints(points, this._degree);
107
110
  }
108
111
  else {
109
112
  // Create open curve from fit points
110
113
  var points = this.toNurbsPoints(this._fitPoints);
111
- this._nurbsCurve = AcGeNurbsCurve.byPoints(points, this._degree, this._knotParameterization);
114
+ this._nurbsCurve = verb.geom.NurbsCurve.byPoints(points, this._degree);
112
115
  }
113
- this._controlPoints = this._nurbsCurve.controlPoints();
116
+ this._controlPoints = this.toGePoints(this._nurbsCurve.controlPoints());
114
117
  }
115
118
  else if (this._controlPoints) {
116
119
  // Build from control points
117
120
  if (this._closed) {
118
121
  // Create closed curve from control points
119
- var parameterization = this._knotParameterization || 'Chord';
120
- this._nurbsCurve = AcGeNurbsCurve.createClosedCurve(this._controlPoints, this._degree, parameterization);
121
- this._controlPoints = this._nurbsCurve.controlPoints();
122
+ var newFitPoints = AcGeNurbsCurve.createFitPointsForClosedCurve(this._controlPoints);
123
+ var points = this.toNurbsPoints(newFitPoints);
124
+ this._nurbsCurve = verb.geom.NurbsCurve.byPoints(points, this._degree);
125
+ this._controlPoints = this.toGePoints(this._nurbsCurve.controlPoints());
122
126
  }
123
127
  else {
124
128
  // Create open curve from control points
125
129
  // Get knots and weights from the current NURBS curve
126
130
  var knots = this._nurbsCurve.knots();
127
131
  var weights = this._nurbsCurve.weights();
128
- this._nurbsCurve = AcGeNurbsCurve.byKnotsControlPointsWeights(this._degree, knots, this._controlPoints, weights);
132
+ var points = this.toVerbPoints(this._controlPoints);
133
+ this._nurbsCurve = verb.geom.NurbsCurve.byKnotsControlPointsWeights(this._degree, knots, points, weights);
129
134
  }
130
135
  }
131
136
  };
@@ -299,6 +304,30 @@ var AcGeSpline3d = /** @class */ (function (_super) {
299
304
  });
300
305
  return nurbsPoints;
301
306
  };
307
+ /**
308
+ * Convert input points to points in verb-nurbs-web format
309
+ * @param points Input points to convert
310
+ * @returns Return converted points
311
+ */
312
+ AcGeSpline3d.prototype.toVerbPoints = function (points) {
313
+ var verbPoints = new Array(points.length);
314
+ points.forEach(function (point, index) {
315
+ verbPoints[index] = [point.x, point.y, point.z || 0];
316
+ });
317
+ return verbPoints;
318
+ };
319
+ /**
320
+ * Convert input points to points in geometry engine format
321
+ * @param points Input points to convert
322
+ * @returns Return converted points
323
+ */
324
+ AcGeSpline3d.prototype.toGePoints = function (points) {
325
+ var gePoints = new Array(points.length);
326
+ points.forEach(function (point, index) {
327
+ gePoints[index] = { x: point[0], y: point[1], z: point[2] };
328
+ });
329
+ return gePoints;
330
+ };
302
331
  /**
303
332
  * Create a closed spline from fit points using AcGeNurbsCurve.createClosedCurve
304
333
  * @param fitPoints - Array of fit points defining the curve
@@ -1 +1 @@
1
- {"version":3,"file":"AcGeSpline3d.js","sourceRoot":"","sources":["../../src/geometry/AcGeSpline3d.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"AcGeSpline3d.js","sourceRoot":"","sources":["../../src/geometry/AcGeSpline3d.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": "2.0.6",
3
+ "version": "2.0.7",
4
4
  "license": "MIT",
5
5
  "type": "module",
6
6
  "repository": {
@@ -31,6 +31,9 @@
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
+ },
34
37
  "peerDependencies": {
35
38
  "@mlightcad/common": "1.1.4"
36
39
  },