@mlightcad/geometry-engine 3.10.6 → 3.11.0

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.
Files changed (50) hide show
  1. package/dist/geometry-engine.umd.cjs +1 -1
  2. package/lib/geometry/AcGeArea2d.js +2 -2
  3. package/lib/geometry/AcGeNurbsCurve.js +5 -5
  4. package/lib/geometry/AcGeNurbsCurve.js.map +1 -1
  5. package/lib/geometry/AcGePolyline2d.js +4 -4
  6. package/lib/geometry/AcGePolyline2dOffset.d.ts +2 -2
  7. package/lib/geometry/AcGePolyline2dOffset.d.ts.map +1 -1
  8. package/lib/geometry/AcGePolyline2dOffset.js +2 -2
  9. package/lib/geometry/AcGePolyline2dOffset.js.map +1 -1
  10. package/lib/geometry/AcGeSpline3d.js +8 -8
  11. package/lib/geometry/AcGeSpline3d.js.map +1 -1
  12. package/lib/geometry/AcGeSplineUtil.d.ts +4 -4
  13. package/lib/geometry/AcGeSplineUtil.d.ts.map +1 -1
  14. package/lib/geometry/AcGeSplineUtil.js +4 -4
  15. package/lib/geometry/AcGeSplineUtil.js.map +1 -1
  16. package/lib/index.d.ts +1 -1
  17. package/lib/index.d.ts.map +1 -1
  18. package/lib/index.js +1 -1
  19. package/lib/index.js.map +1 -1
  20. package/lib/math/AcGeEuler.js +7 -7
  21. package/lib/math/AcGeEuler.js.map +1 -1
  22. package/lib/math/AcGeQuaternion.js +2 -2
  23. package/lib/math/AcGeQuaternion.js.map +1 -1
  24. package/lib/util/AcGeCurveOffsetUtil.d.ts +2 -2
  25. package/lib/util/AcGeCurveOffsetUtil.d.ts.map +1 -1
  26. package/lib/util/AcGeCurveOffsetUtil.js +5 -5
  27. package/lib/util/AcGeCurveOffsetUtil.js.map +1 -1
  28. package/lib/util/AcGeMathUtil.d.ts +49 -49
  29. package/lib/util/AcGeMathUtil.d.ts.map +1 -1
  30. package/lib/util/AcGeMathUtil.js +55 -55
  31. package/lib/util/AcGeMathUtil.js.map +1 -1
  32. package/lib/util/AcGeNurbsUtil.d.ts +12 -12
  33. package/lib/util/AcGeNurbsUtil.d.ts.map +1 -1
  34. package/lib/util/AcGeNurbsUtil.js +26 -26
  35. package/lib/util/AcGeNurbsUtil.js.map +1 -1
  36. package/lib/util/AcGeOcsUtil.d.ts +4 -4
  37. package/lib/util/AcGeOcsUtil.d.ts.map +1 -1
  38. package/lib/util/AcGeOcsUtil.js +6 -6
  39. package/lib/util/AcGeOcsUtil.js.map +1 -1
  40. package/lib/util/AcGePolygonAreaUtil.d.ts +5 -5
  41. package/lib/util/AcGePolygonAreaUtil.js +8 -8
  42. package/lib/util/AcGeSampledCurveOffsetUtil.d.ts +2 -2
  43. package/lib/util/AcGeSampledCurveOffsetUtil.d.ts.map +1 -1
  44. package/lib/util/AcGeSampledCurveOffsetUtil.js +2 -2
  45. package/lib/util/AcGeSampledCurveOffsetUtil.js.map +1 -1
  46. package/lib/util/index.d.ts +6 -6
  47. package/lib/util/index.d.ts.map +1 -1
  48. package/lib/util/index.js +6 -6
  49. package/lib/util/index.js.map +1 -1
  50. package/package.json +2 -2
@@ -264,7 +264,7 @@ var RAD2DEG = 180 / Math.PI;
264
264
  * http://stackoverflow.com/questions/105034/how-to-create-a-guid-uuid-in-javascript/21963136#21963136
265
265
  * @returns Return a UUID
266
266
  */
267
- function generateUUID() {
267
+ function acgeGenerateUUID() {
268
268
  var d0 = (Math.random() * 0xffffffff) | 0;
269
269
  var d1 = (Math.random() * 0xffffffff) | 0;
270
270
  var d2 = (Math.random() * 0xffffffff) | 0;
@@ -299,7 +299,7 @@ function generateUUID() {
299
299
  * @param max Input maximum value
300
300
  * @returns Return clamped value between min and max
301
301
  */
302
- function clamp(value, min, max) {
302
+ function acgeClamp(value, min, max) {
303
303
  return Math.max(min, Math.min(max, value));
304
304
  }
305
305
  /**
@@ -309,7 +309,7 @@ function clamp(value, min, max) {
309
309
  * @param m Input one integer
310
310
  * @returns Return the Euclidean modulo of m % n
311
311
  */
312
- function euclideanModulo(n, m) {
312
+ function acgeEuclideanModulo(n, m) {
313
313
  return ((n % m) + m) % m;
314
314
  }
315
315
  /**
@@ -321,7 +321,7 @@ function euclideanModulo(n, m) {
321
321
  * @param b2 Input maximum value for range B.
322
322
  * @returns Return linear mapping of x from range [a1, a2] to range [b1, b2]
323
323
  */
324
- function mapLinear(x, a1, a2, b1, b2) {
324
+ function acgeMapLinear(x, a1, a2, b1, b2) {
325
325
  return b1 + ((x - a1) * (b2 - b1)) / (a2 - a1);
326
326
  }
327
327
  /**
@@ -332,7 +332,7 @@ function mapLinear(x, a1, a2, b1, b2) {
332
332
  * @param value Input a value between start and end
333
333
  * @returns Return the percentage in the closed interval [0, 1] of the given value between the start and end point.
334
334
  */
335
- function inverseLerp(x, y, value) {
335
+ function acgeInverseLerp(x, y, value) {
336
336
  if (x !== y) {
337
337
  return (value - x) / (y - x);
338
338
  }
@@ -349,7 +349,7 @@ function inverseLerp(x, y, value) {
349
349
  * @param t Input interpolation factor in the closed interval [0, 1]
350
350
  * @returns Return a value linearly interpolated from two known points
351
351
  */
352
- function lerp(x, y, t) {
352
+ function acgeLerp(x, y, t) {
353
353
  return (1 - t) * x + t * y;
354
354
  }
355
355
  /**
@@ -363,8 +363,8 @@ function lerp(x, y, t) {
363
363
  * @param dt Input delta time in seconds.
364
364
  * @returns Return a number from x toward y
365
365
  */
366
- function damp(x, y, lambda, dt) {
367
- return lerp(x, y, 1 - Math.exp(-lambda * dt));
366
+ function acgeDamp(x, y, lambda, dt) {
367
+ return acgeLerp(x, y, 1 - Math.exp(-lambda * dt));
368
368
  }
369
369
  /**
370
370
  * Return a value that alternates between 0 and length.
@@ -373,9 +373,9 @@ function damp(x, y, lambda, dt) {
373
373
  * @param length The positive value the function will pingpong to. Default is 1.
374
374
  * @returns Return a value that alternates between 0 and length : Float.
375
375
  */
376
- function pingpong(x, length) {
376
+ function acgePingpong(x, length) {
377
377
  if (length === void 0) { length = 1; }
378
- return length - Math.abs(euclideanModulo(x, length * 2) - length);
378
+ return length - Math.abs(acgeEuclideanModulo(x, length * 2) - length);
379
379
  }
380
380
  /**
381
381
  * Return a value between 0-1. A variation on smoothstep that has zero 1st and 2nd order derivatives
@@ -386,7 +386,7 @@ function pingpong(x, length) {
386
386
  * @param max Any x value above max will be 1.
387
387
  * @returns Return a value between 0-1
388
388
  */
389
- function smoothstep(x, min, max) {
389
+ function acgeSmoothstep(x, min, max) {
390
390
  if (x <= min)
391
391
  return 0;
392
392
  if (x >= max)
@@ -402,7 +402,7 @@ function smoothstep(x, min, max) {
402
402
  * @param max Any x value above max will be 1.
403
403
  * @returns Return a value between 0-1
404
404
  */
405
- function smootherstep(x, min, max) {
405
+ function acgeSmootherstep(x, min, max) {
406
406
  if (x <= min)
407
407
  return 0;
408
408
  if (x >= max)
@@ -416,7 +416,7 @@ function smootherstep(x, min, max) {
416
416
  * @param high Input interval upper boundary value
417
417
  * @returns Return random integer in the interval [low, high].
418
418
  */
419
- function randInt(low, high) {
419
+ function acgeRandInt(low, high) {
420
420
  return low + Math.floor(Math.random() * (high - low + 1));
421
421
  }
422
422
  /**
@@ -426,7 +426,7 @@ function randInt(low, high) {
426
426
  * @returns Return random float in the interval [low, high]
427
427
  */
428
428
  // Random float from <low, high> interval
429
- function randFloat(low, high) {
429
+ function acgeRandFloat(low, high) {
430
430
  return low + Math.random() * (high - low);
431
431
  }
432
432
  /**
@@ -434,7 +434,7 @@ function randFloat(low, high) {
434
434
  * @param range Input interval range value
435
435
  * @returns Return random float in the interval [- range / 2, range / 2].
436
436
  */
437
- function randFloatSpread(range) {
437
+ function acgeRandFloatSpread(range) {
438
438
  return range * (0.5 - Math.random());
439
439
  }
440
440
  /**
@@ -442,7 +442,7 @@ function randFloatSpread(range) {
442
442
  * @param s Input one integer seed number
443
443
  * @returns Return pseudo-random float in the interval [0, 1]
444
444
  */
445
- function seededRandom(s) {
445
+ function acgeSeededRandom(s) {
446
446
  if (s !== undefined)
447
447
  _seed = s;
448
448
  // Mulberry32 generator
@@ -456,7 +456,7 @@ function seededRandom(s) {
456
456
  * @param degrees Input degrees value to be converted
457
457
  * @returns Return converted angle value in radians
458
458
  */
459
- function degToRad(degrees) {
459
+ function acgeDegToRad(degrees) {
460
460
  return degrees * DEG2RAD;
461
461
  }
462
462
  /**
@@ -464,7 +464,7 @@ function degToRad(degrees) {
464
464
  * @param radians Input radians value to be converted
465
465
  * @returns Return converted angle value in degrees
466
466
  */
467
- function radToDeg(radians) {
467
+ function acgeRadToDeg(radians) {
468
468
  return radians * RAD2DEG;
469
469
  }
470
470
  /**
@@ -472,7 +472,7 @@ function radToDeg(radians) {
472
472
  * @param value Input the number to check
473
473
  * @returns Return true if n is a power of 2.
474
474
  */
475
- function isPowerOfTwo(value) {
475
+ function acgeIsPowerOfTwo(value) {
476
476
  return (value & (value - 1)) === 0 && value !== 0;
477
477
  }
478
478
  /**
@@ -480,7 +480,7 @@ function isPowerOfTwo(value) {
480
480
  * @param value Input one number
481
481
  * @returns Return the smallest power of 2 that is greater than or equal to n.
482
482
  */
483
- function ceilPowerOfTwo(value) {
483
+ function acgeCeilPowerOfTwo(value) {
484
484
  return Math.pow(2, Math.ceil(Math.log(value) / Math.LN2));
485
485
  }
486
486
  /**
@@ -488,7 +488,7 @@ function ceilPowerOfTwo(value) {
488
488
  * @param value Input one number
489
489
  * @returns Return the largest power of 2 that is less than or equal to n.
490
490
  */
491
- function floorPowerOfTwo(value) {
491
+ function acgeFloorPowerOfTwo(value) {
492
492
  return Math.pow(2, Math.floor(Math.log(value) / Math.LN2));
493
493
  }
494
494
  /**
@@ -496,7 +496,7 @@ function floorPowerOfTwo(value) {
496
496
  * @param angle Input one angle value in radians
497
497
  * @returns Return normalized angle value in radians
498
498
  */
499
- function normalizeAngle(angle) {
499
+ function acgeNormalizeAngle(angle) {
500
500
  var TAU = Math.PI * 2;
501
501
  return ((angle % TAU) + TAU) % TAU;
502
502
  }
@@ -507,7 +507,7 @@ function normalizeAngle(angle) {
507
507
  * @param value2 Input the second value
508
508
  * @returns Return true if if the valueToTest is between (value1, value2) or (value2, value1).
509
509
  */
510
- function isBetween(valueToTest, value1, value2) {
510
+ function acgeIsBetween(valueToTest, value1, value2) {
511
511
  return ((valueToTest > value1 && valueToTest < value2) ||
512
512
  (valueToTest > value2 && valueToTest < value1));
513
513
  }
@@ -519,11 +519,11 @@ function isBetween(valueToTest, value1, value2) {
519
519
  * @param clockwise Input rotation direction from start angle to end angle
520
520
  * @returns Return true if the algleToTest is between startAngle and endAngle
521
521
  */
522
- function isBetweenAngle(angleToTest, startAngle, endAngle, clockwise) {
522
+ function acgeIsBetweenAngle(angleToTest, startAngle, endAngle, clockwise) {
523
523
  if (clockwise === void 0) { clockwise = false; }
524
- angleToTest = normalizeAngle(angleToTest);
525
- startAngle = normalizeAngle(startAngle);
526
- endAngle = normalizeAngle(endAngle);
524
+ angleToTest = acgeNormalizeAngle(angleToTest);
525
+ startAngle = acgeNormalizeAngle(startAngle);
526
+ endAngle = acgeNormalizeAngle(endAngle);
527
527
  if (clockwise) {
528
528
  if (startAngle > endAngle) {
529
529
  return angleToTest <= startAngle && angleToTest >= endAngle;
@@ -541,45 +541,45 @@ function isBetweenAngle(angleToTest, startAngle, endAngle, clockwise) {
541
541
  }
542
542
  }
543
543
  }
544
- function intPartLength(num) {
544
+ function acgeIntPartLength(num) {
545
545
  num = Math.abs(num);
546
546
  if (num < 1.0) {
547
547
  return 0;
548
548
  }
549
549
  return Math.ceil(Math.log10(Math.abs(num) + 1));
550
550
  }
551
- function relativeEps(num, epsilon) {
551
+ function acgeRelativeEps(num, epsilon) {
552
552
  if (epsilon === void 0) { epsilon = 1.0e-7; }
553
- var count = intPartLength(num);
553
+ var count = acgeIntPartLength(num);
554
554
  return Math.max(Math.pow(10, count) * epsilon, epsilon);
555
555
  }
556
556
  var AcGeMathUtil = {
557
557
  DEG2RAD: DEG2RAD,
558
558
  RAD2DEG: RAD2DEG,
559
- generateUUID: generateUUID,
560
- clamp: clamp,
561
- euclideanModulo: euclideanModulo,
562
- mapLinear: mapLinear,
563
- inverseLerp: inverseLerp,
564
- lerp: lerp,
565
- damp: damp,
566
- pingpong: pingpong,
567
- smoothstep: smoothstep,
568
- smootherstep: smootherstep,
569
- randInt: randInt,
570
- randFloat: randFloat,
571
- randFloatSpread: randFloatSpread,
572
- seededRandom: seededRandom,
573
- degToRad: degToRad,
574
- radToDeg: radToDeg,
575
- isPowerOfTwo: isPowerOfTwo,
576
- ceilPowerOfTwo: ceilPowerOfTwo,
577
- floorPowerOfTwo: floorPowerOfTwo,
578
- normalizeAngle: normalizeAngle,
579
- isBetween: isBetween,
580
- isBetweenAngle: isBetweenAngle,
581
- intPartLength: intPartLength,
582
- relativeEps: relativeEps
559
+ generateUUID: acgeGenerateUUID,
560
+ clamp: acgeClamp,
561
+ euclideanModulo: acgeEuclideanModulo,
562
+ mapLinear: acgeMapLinear,
563
+ inverseLerp: acgeInverseLerp,
564
+ lerp: acgeLerp,
565
+ damp: acgeDamp,
566
+ pingpong: acgePingpong,
567
+ smoothstep: acgeSmoothstep,
568
+ smootherstep: acgeSmootherstep,
569
+ randInt: acgeRandInt,
570
+ randFloat: acgeRandFloat,
571
+ randFloatSpread: acgeRandFloatSpread,
572
+ seededRandom: acgeSeededRandom,
573
+ degToRad: acgeDegToRad,
574
+ radToDeg: acgeRadToDeg,
575
+ isPowerOfTwo: acgeIsPowerOfTwo,
576
+ ceilPowerOfTwo: acgeCeilPowerOfTwo,
577
+ floorPowerOfTwo: acgeFloorPowerOfTwo,
578
+ normalizeAngle: acgeNormalizeAngle,
579
+ isBetween: acgeIsBetween,
580
+ isBetweenAngle: acgeIsBetweenAngle,
581
+ intPartLength: acgeIntPartLength,
582
+ relativeEps: acgeRelativeEps
583
583
  };
584
- export { DEG2RAD, RAD2DEG, generateUUID, clamp, euclideanModulo, mapLinear, inverseLerp, lerp, damp, pingpong, smoothstep, smootherstep, randInt, randFloat, randFloatSpread, seededRandom, degToRad, radToDeg, isPowerOfTwo, ceilPowerOfTwo, floorPowerOfTwo, normalizeAngle, isBetween, isBetweenAngle, intPartLength, relativeEps, AcGeMathUtil };
584
+ export { DEG2RAD, RAD2DEG, acgeGenerateUUID, acgeClamp, acgeEuclideanModulo, acgeMapLinear, acgeInverseLerp, acgeLerp, acgeDamp, acgePingpong, acgeSmoothstep, acgeSmootherstep, acgeRandInt, acgeRandFloat, acgeRandFloatSpread, acgeSeededRandom, acgeDegToRad, acgeRadToDeg, acgeIsPowerOfTwo, acgeCeilPowerOfTwo, acgeFloorPowerOfTwo, acgeNormalizeAngle, acgeIsBetween, acgeIsBetweenAngle, acgeIntPartLength, acgeRelativeEps, AcGeMathUtil };
585
585
  //# sourceMappingURL=AcGeMathUtil.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"AcGeMathUtil.js","sourceRoot":"","sources":["../../src/util/AcGeMathUtil.ts"],"names":[],"mappings":"AAAA,IAAM,IAAI,GAAa;IACrB,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;CACL,CAAA;AAED,IAAI,KAAK,GAAG,OAAO,CAAA;AAEnB,IAAM,OAAO,GAAG,IAAI,CAAC,EAAE,GAAG,GAAG,CAAA;AAC7B,IAAM,OAAO,GAAG,GAAG,GAAG,IAAI,CAAC,EAAE,CAAA;AAE7B;;;;GAIG;AACH,SAAS,YAAY;IACnB,IAAM,EAAE,GAAG,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,UAAU,CAAC,GAAG,CAAC,CAAA;IAC3C,IAAM,EAAE,GAAG,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,UAAU,CAAC,GAAG,CAAC,CAAA;IAC3C,IAAM,EAAE,GAAG,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,UAAU,CAAC,GAAG,CAAC,CAAA;IAC3C,IAAM,EAAE,GAAG,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,UAAU,CAAC,GAAG,CAAC,CAAA;IAC3C,IAAM,IAAI,GACR,IAAI,CAAC,EAAE,GAAG,IAAI,CAAC;QACf,IAAI,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,GAAG,IAAI,CAAC;QACtB,IAAI,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,GAAG,IAAI,CAAC;QACvB,IAAI,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,GAAG,IAAI,CAAC;QACvB,GAAG;QACH,IAAI,CAAC,EAAE,GAAG,IAAI,CAAC;QACf,IAAI,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,GAAG,IAAI,CAAC;QACtB,GAAG;QACH,IAAI,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,GAAG,IAAI,CAAC,GAAG,IAAI,CAAC;QAChC,IAAI,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,GAAG,IAAI,CAAC;QACvB,GAAG;QACH,IAAI,CAAC,CAAC,EAAE,GAAG,IAAI,CAAC,GAAG,IAAI,CAAC;QACxB,IAAI,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,GAAG,IAAI,CAAC;QACtB,GAAG;QACH,IAAI,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,GAAG,IAAI,CAAC;QACvB,IAAI,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,GAAG,IAAI,CAAC;QACvB,IAAI,CAAC,EAAE,GAAG,IAAI,CAAC;QACf,IAAI,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,GAAG,IAAI,CAAC;QACtB,IAAI,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,GAAG,IAAI,CAAC;QACvB,IAAI,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,GAAG,IAAI,CAAC,CAAA;IAEzB,+EAA+E;IAC/E,OAAO,IAAI,CAAC,WAAW,EAAE,CAAA;AAC3B,CAAC;AAED;;;;;;GAMG;AACH,SAAS,KAAK,CAAC,KAAa,EAAE,GAAW,EAAE,GAAW;IACpD,OAAO,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC,CAAA;AAC5C,CAAC;AAED;;;;;;GAMG;AACH,SAAS,eAAe,CAAC,CAAS,EAAE,CAAS;IAC3C,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAA;AAC1B,CAAC;AAED;;;;;;;;GAQG;AACH,SAAS,SAAS,CAAC,CAAS,EAAE,EAAU,EAAE,EAAU,EAAE,EAAU,EAAE,EAAU;IAC1E,OAAO,EAAE,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,GAAG,CAAC,EAAE,GAAG,EAAE,CAAC,CAAA;AAChD,CAAC;AAED;;;;;;;GAOG;AACH,SAAS,WAAW,CAAC,CAAS,EAAE,CAAS,EAAE,KAAa;IACtD,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;QACZ,OAAO,CAAC,KAAK,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAA;IAC9B,CAAC;SAAM,CAAC;QACN,OAAO,CAAC,CAAA;IACV,CAAC;AACH,CAAC;AACD;;;;;;;;GAQG;AACH,SAAS,IAAI,CAAC,CAAS,EAAE,CAAS,EAAE,CAAS;IAC3C,OAAO,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;AAC5B,CAAC;AAED;;;;;;;;;;GAUG;AACH,SAAS,IAAI,CAAC,CAAS,EAAE,CAAS,EAAE,MAAc,EAAE,EAAU;IAC5D,OAAO,IAAI,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,MAAM,GAAG,EAAE,CAAC,CAAC,CAAA;AAC/C,CAAC;AAED;;;;;;GAMG;AACH,SAAS,QAAQ,CAAC,CAAS,EAAE,MAAkB;IAAlB,uBAAA,EAAA,UAAkB;IAC7C,OAAO,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC,EAAE,MAAM,GAAG,CAAC,CAAC,GAAG,MAAM,CAAC,CAAA;AACnE,CAAC;AAED;;;;;;;;GAQG;AACH,SAAS,UAAU,CAAC,CAAS,EAAE,GAAW,EAAE,GAAW;IACrD,IAAI,CAAC,IAAI,GAAG;QAAE,OAAO,CAAC,CAAA;IACtB,IAAI,CAAC,IAAI,GAAG;QAAE,OAAO,CAAC,CAAA;IAEtB,CAAC,GAAG,CAAC,CAAC,GAAG,GAAG,CAAC,GAAG,CAAC,GAAG,GAAG,GAAG,CAAC,CAAA;IAE3B,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAA;AAC5B,CAAC;AAED;;;;;;;GAOG;AACH,SAAS,YAAY,CAAC,CAAS,EAAE,GAAW,EAAE,GAAW;IACvD,IAAI,CAAC,IAAI,GAAG;QAAE,OAAO,CAAC,CAAA;IACtB,IAAI,CAAC,IAAI,GAAG;QAAE,OAAO,CAAC,CAAA;IAEtB,CAAC,GAAG,CAAC,CAAC,GAAG,GAAG,CAAC,GAAG,CAAC,GAAG,GAAG,GAAG,CAAC,CAAA;IAE3B,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,GAAG,EAAE,CAAC,CAAA;AAC5C,CAAC;AAED;;;;;GAKG;AACH,SAAS,OAAO,CAAC,GAAW,EAAE,IAAY;IACxC,OAAO,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,CAAC,IAAI,GAAG,GAAG,GAAG,CAAC,CAAC,CAAC,CAAA;AAC3D,CAAC;AAED;;;;;GAKG;AACH,yCAAyC;AACzC,SAAS,SAAS,CAAC,GAAW,EAAE,IAAY;IAC1C,OAAO,GAAG,GAAG,IAAI,CAAC,MAAM,EAAE,GAAG,CAAC,IAAI,GAAG,GAAG,CAAC,CAAA;AAC3C,CAAC;AAED;;;;GAIG;AACH,SAAS,eAAe,CAAC,KAAa;IACpC,OAAO,KAAK,GAAG,CAAC,GAAG,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,CAAA;AACtC,CAAC;AAED;;;;GAIG;AACH,SAAS,YAAY,CAAC,CAAS;IAC7B,IAAI,CAAC,KAAK,SAAS;QAAE,KAAK,GAAG,CAAC,CAAA;IAE9B,uBAAuB;IAEvB,IAAI,CAAC,GAAG,CAAC,KAAK,IAAI,UAAU,CAAC,CAAA;IAE7B,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,CAAA;IAEpC,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,GAAG,EAAE,CAAC,CAAA;IAEzC,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,GAAG,UAAU,CAAA;AAC9C,CAAC;AAED;;;;GAIG;AACH,SAAS,QAAQ,CAAC,OAAe;IAC/B,OAAO,OAAO,GAAG,OAAO,CAAA;AAC1B,CAAC;AAED;;;;GAIG;AACH,SAAS,QAAQ,CAAC,OAAe;IAC/B,OAAO,OAAO,GAAG,OAAO,CAAA;AAC1B,CAAC;AAED;;;;GAIG;AACH,SAAS,YAAY,CAAC,KAAa;IACjC,OAAO,CAAC,KAAK,GAAG,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,KAAK,KAAK,CAAC,CAAA;AACnD,CAAC;AAED;;;;GAIG;AACH,SAAS,cAAc,CAAC,KAAa;IACnC,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAA;AAC3D,CAAC;AAED;;;;GAIG;AACH,SAAS,eAAe,CAAC,KAAa;IACpC,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAA;AAC5D,CAAC;AAED;;;;GAIG;AACH,SAAS,cAAc,CAAC,KAAa;IACnC,IAAM,GAAG,GAAG,IAAI,CAAC,EAAE,GAAG,CAAC,CAAA;IACvB,OAAO,CAAC,CAAC,KAAK,GAAG,GAAG,CAAC,GAAG,GAAG,CAAC,GAAG,GAAG,CAAA;AACpC,CAAC;AAED;;;;;;GAMG;AACH,SAAS,SAAS,CAAC,WAAmB,EAAE,MAAc,EAAE,MAAc;IACpE,OAAO,CACL,CAAC,WAAW,GAAG,MAAM,IAAI,WAAW,GAAG,MAAM,CAAC;QAC9C,CAAC,WAAW,GAAG,MAAM,IAAI,WAAW,GAAG,MAAM,CAAC,CAC/C,CAAA;AACH,CAAC;AAED;;;;;;;GAOG;AACH,SAAS,cAAc,CACrB,WAAmB,EACnB,UAAkB,EAClB,QAAgB,EAChB,SAA0B;IAA1B,0BAAA,EAAA,iBAA0B;IAE1B,WAAW,GAAG,cAAc,CAAC,WAAW,CAAC,CAAA;IACzC,UAAU,GAAG,cAAc,CAAC,UAAU,CAAC,CAAA;IACvC,QAAQ,GAAG,cAAc,CAAC,QAAQ,CAAC,CAAA;IACnC,IAAI,SAAS,EAAE,CAAC;QACd,IAAI,UAAU,GAAG,QAAQ,EAAE,CAAC;YAC1B,OAAO,WAAW,IAAI,UAAU,IAAI,WAAW,IAAI,QAAQ,CAAA;QAC7D,CAAC;aAAM,CAAC;YACN,OAAO,WAAW,IAAI,UAAU,IAAI,WAAW,IAAI,QAAQ,CAAA;QAC7D,CAAC;IACH,CAAC;SAAM,CAAC;QACN,IAAI,UAAU,GAAG,QAAQ,EAAE,CAAC;YAC1B,OAAO,WAAW,IAAI,UAAU,IAAI,WAAW,IAAI,QAAQ,CAAA;QAC7D,CAAC;aAAM,CAAC;YACN,OAAO,WAAW,IAAI,UAAU,IAAI,WAAW,IAAI,QAAQ,CAAA;QAC7D,CAAC;IACH,CAAC;AACH,CAAC;AAED,SAAS,aAAa,CAAC,GAAW;IAChC,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;IACnB,IAAI,GAAG,GAAG,GAAG,EAAE,CAAC;QACd,OAAO,CAAC,CAAA;IACV,CAAC;IACD,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAA;AACjD,CAAC;AAED,SAAS,WAAW,CAAC,GAAW,EAAE,OAAgB;IAAhB,wBAAA,EAAA,gBAAgB;IAChD,IAAM,KAAK,GAAG,aAAa,CAAC,GAAG,CAAC,CAAA;IAChC,OAAO,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,KAAK,CAAC,GAAG,OAAO,EAAE,OAAO,CAAC,CAAA;AACzD,CAAC;AAED,IAAM,YAAY,GAAG;IACnB,OAAO,EAAE,OAAO;IAChB,OAAO,EAAE,OAAO;IAChB,YAAY,EAAE,YAAY;IAC1B,KAAK,EAAE,KAAK;IACZ,eAAe,EAAE,eAAe;IAChC,SAAS,EAAE,SAAS;IACpB,WAAW,EAAE,WAAW;IACxB,IAAI,EAAE,IAAI;IACV,IAAI,EAAE,IAAI;IACV,QAAQ,EAAE,QAAQ;IAClB,UAAU,EAAE,UAAU;IACtB,YAAY,EAAE,YAAY;IAC1B,OAAO,EAAE,OAAO;IAChB,SAAS,EAAE,SAAS;IACpB,eAAe,EAAE,eAAe;IAChC,YAAY,EAAE,YAAY;IAC1B,QAAQ,EAAE,QAAQ;IAClB,QAAQ,EAAE,QAAQ;IAClB,YAAY,EAAE,YAAY;IAC1B,cAAc,EAAE,cAAc;IAC9B,eAAe,EAAE,eAAe;IAChC,cAAc,EAAE,cAAc;IAC9B,SAAS,EAAE,SAAS;IACpB,cAAc,EAAE,cAAc;IAC9B,aAAa,EAAE,aAAa;IAC5B,WAAW,EAAE,WAAW;CACzB,CAAA;AAED,OAAO,EACL,OAAO,EACP,OAAO,EACP,YAAY,EACZ,KAAK,EACL,eAAe,EACf,SAAS,EACT,WAAW,EACX,IAAI,EACJ,IAAI,EACJ,QAAQ,EACR,UAAU,EACV,YAAY,EACZ,OAAO,EACP,SAAS,EACT,eAAe,EACf,YAAY,EACZ,QAAQ,EACR,QAAQ,EACR,YAAY,EACZ,cAAc,EACd,eAAe,EACf,cAAc,EACd,SAAS,EACT,cAAc,EACd,aAAa,EACb,WAAW,EACX,YAAY,EACb,CAAA"}
1
+ {"version":3,"file":"AcGeMathUtil.js","sourceRoot":"","sources":["../../src/util/AcGeMathUtil.ts"],"names":[],"mappings":"AAAA,IAAM,IAAI,GAAa;IACrB,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI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"}
@@ -5,27 +5,27 @@ type KnotParameterizationType = 'Uniform' | 'Chord' | 'SqrtChord';
5
5
  /**
6
6
  * Generate uniform knot vector
7
7
  */
8
- export declare function generateUniformKnots(degree: number, numControlPoints: number): number[];
8
+ export declare function acgeGenerateUniformKnots(degree: number, numControlPoints: number): number[];
9
9
  /**
10
10
  * Generate chord-length parameterized knots
11
11
  */
12
- export declare function generateChordKnots(degree: number, points: number[][]): number[];
12
+ export declare function acgeGenerateChordKnots(degree: number, points: number[][]): number[];
13
13
  /**
14
14
  * Compute parameter values for fit points
15
15
  */
16
- export declare function computeParameterValues(points: number[][], parameterization?: KnotParameterizationType): number[];
16
+ export declare function acgeComputeParameterValues(points: number[][], parameterization?: KnotParameterizationType): number[];
17
17
  /**
18
18
  * Generate a clamped knot vector using averaging method
19
19
  */
20
- export declare function generateAveragedKnots(degree: number, parameters: number[]): number[];
20
+ export declare function acgeGenerateAveragedKnots(degree: number, parameters: number[]): number[];
21
21
  /**
22
22
  * Generate sqrt-chord parameterized knots
23
23
  */
24
- export declare function generateSqrtChordKnots(degree: number, points: number[][]): number[];
24
+ export declare function acgeGenerateSqrtChordKnots(degree: number, points: number[][]): number[];
25
25
  /**
26
26
  * Interpolate a NURBS curve from fit points with optional end tangents
27
27
  */
28
- export declare function interpolateNurbsCurve(fitPoints: number[][], degree: number, parameterization?: KnotParameterizationType, startTangent?: number[], endTangent?: number[]): {
28
+ export declare function acgeInterpolateNurbsCurve(fitPoints: number[][], degree: number, parameterization?: KnotParameterizationType, startTangent?: number[], endTangent?: number[]): {
29
29
  controlPoints: number[][];
30
30
  knots: number[];
31
31
  weights: number[];
@@ -33,11 +33,11 @@ export declare function interpolateNurbsCurve(fitPoints: number[][], degree: num
33
33
  /**
34
34
  * Calculate basis function value for NURBS
35
35
  */
36
- export declare function basisFunction(i: number, k: number, u: number, knots: number[]): number;
36
+ export declare function acgeBasisFunction(i: number, k: number, u: number, knots: number[]): number;
37
37
  /**
38
38
  * Calculate point on NURBS curve
39
39
  */
40
- export declare function evaluateNurbsPoint(u: number, degree: number, knots: number[], controlPoints: number[][], weights: number[]): number[];
40
+ export declare function acgeEvaluateNurbsPoint(u: number, degree: number, knots: number[], controlPoints: number[][], weights: number[]): number[];
41
41
  export type AcGeNurbsEvaluation = {
42
42
  point: number[];
43
43
  deriv1: number[];
@@ -46,18 +46,18 @@ export type AcGeNurbsEvaluation = {
46
46
  /**
47
47
  * Evaluates a rational NURBS curve and its first two parametric derivatives.
48
48
  */
49
- export declare function evaluateNurbsDerivatives(u: number, degree: number, knots: number[], controlPoints: number[][], weights: number[]): AcGeNurbsEvaluation;
49
+ export declare function acgeEvaluateNurbsDerivatives(u: number, degree: number, knots: number[], controlPoints: number[][], weights: number[]): AcGeNurbsEvaluation;
50
50
  /**
51
51
  * Signed planar curvature from parametric derivatives in XY.
52
52
  */
53
- export declare function signedPlanarCurvature(deriv1: number[], deriv2: number[]): number;
53
+ export declare function acgeSignedPlanarCurvature(deriv1: number[], deriv2: number[]): number;
54
54
  /**
55
55
  * Calculate curve length using numerical integration
56
56
  */
57
- export declare function calculateCurveLength(degree: number, knots: number[], controlPoints: number[][], weights: number[]): number;
57
+ export declare function acgeCalculateCurveLength(degree: number, knots: number[], controlPoints: number[][], weights: number[]): number;
58
58
  /**
59
59
  * Generate control points from fit points using interpolation
60
60
  */
61
- export declare function interpolateControlPoints(fitPoints: number[][], degree?: number, parameterization?: KnotParameterizationType, startTangent?: number[], endTangent?: number[]): number[][];
61
+ export declare function acgeInterpolateControlPoints(fitPoints: number[][], degree?: number, parameterization?: KnotParameterizationType, startTangent?: number[], endTangent?: number[]): number[][];
62
62
  export {};
63
63
  //# 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,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,MAAM,MAAM,mBAAmB,GAAG;IAChC,KAAK,EAAE,MAAM,EAAE,CAAA;IACf,MAAM,EAAE,MAAM,EAAE,CAAA;IAChB,MAAM,EAAE,MAAM,EAAE,CAAA;CACjB,CAAA;AAoDD;;GAEG;AACH,wBAAgB,wBAAwB,CACtC,CAAC,EAAE,MAAM,EACT,MAAM,EAAE,MAAM,EACd,KAAK,EAAE,MAAM,EAAE,EACf,aAAa,EAAE,MAAM,EAAE,EAAE,EACzB,OAAO,EAAE,MAAM,EAAE,GAChB,mBAAmB,CA4DrB;AAED;;GAEG;AACH,wBAAgB,qBAAqB,CACnC,MAAM,EAAE,MAAM,EAAE,EAChB,MAAM,EAAE,MAAM,EAAE,GACf,MAAM,CAQR;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"}
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,wBAAwB,CACtC,MAAM,EAAE,MAAM,EACd,gBAAgB,EAAE,MAAM,GACvB,MAAM,EAAE,CAqBV;AAED;;GAEG;AACH,wBAAgB,sBAAsB,CACpC,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,MAAM,EAAE,EAAE,GACjB,MAAM,EAAE,CAqCV;AAED;;GAEG;AACH,wBAAgB,0BAA0B,CACxC,MAAM,EAAE,MAAM,EAAE,EAAE,EAClB,gBAAgB,GAAE,wBAAoC,GACrD,MAAM,EAAE,CAgCV;AAED;;GAEG;AACH,wBAAgB,yBAAyB,CACvC,MAAM,EAAE,MAAM,EACd,UAAU,EAAE,MAAM,EAAE,GACnB,MAAM,EAAE,CAqBV;AAED;;GAEG;AACH,wBAAgB,0BAA0B,CACxC,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,MAAM,EAAE,EAAE,GACjB,MAAM,EAAE,CAsCV;AAwDD;;GAEG;AACH,wBAAgB,yBAAyB,CACvC,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,iBAAiB,CAC/B,CAAC,EAAE,MAAM,EACT,CAAC,EAAE,MAAM,EACT,CAAC,EAAE,MAAM,EACT,KAAK,EAAE,MAAM,EAAE,GACd,MAAM,CAeR;AAED;;GAEG;AACH,wBAAgB,sBAAsB,CACpC,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,MAAM,MAAM,mBAAmB,GAAG;IAChC,KAAK,EAAE,MAAM,EAAE,CAAA;IACf,MAAM,EAAE,MAAM,EAAE,CAAA;IAChB,MAAM,EAAE,MAAM,EAAE,CAAA;CACjB,CAAA;AAoDD;;GAEG;AACH,wBAAgB,4BAA4B,CAC1C,CAAC,EAAE,MAAM,EACT,MAAM,EAAE,MAAM,EACd,KAAK,EAAE,MAAM,EAAE,EACf,aAAa,EAAE,MAAM,EAAE,EAAE,EACzB,OAAO,EAAE,MAAM,EAAE,GAChB,mBAAmB,CA4DrB;AAED;;GAEG;AACH,wBAAgB,yBAAyB,CACvC,MAAM,EAAE,MAAM,EAAE,EAChB,MAAM,EAAE,MAAM,EAAE,GACf,MAAM,CAQR;AAED;;GAEG;AACH,wBAAgB,wBAAwB,CACtC,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,4BAA4B,CAC1C,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"}
@@ -29,7 +29,7 @@ var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
29
29
  /**
30
30
  * Generate uniform knot vector
31
31
  */
32
- export function generateUniformKnots(degree, numControlPoints) {
32
+ export function acgeGenerateUniformKnots(degree, numControlPoints) {
33
33
  var knots = [];
34
34
  var n = numControlPoints - 1;
35
35
  var p = degree;
@@ -50,7 +50,7 @@ export function generateUniformKnots(degree, numControlPoints) {
50
50
  /**
51
51
  * Generate chord-length parameterized knots
52
52
  */
53
- export function generateChordKnots(degree, points) {
53
+ export function acgeGenerateChordKnots(degree, points) {
54
54
  var n = points.length - 1;
55
55
  var p = degree;
56
56
  // Calculate chord lengths
@@ -84,7 +84,7 @@ export function generateChordKnots(degree, points) {
84
84
  /**
85
85
  * Compute parameter values for fit points
86
86
  */
87
- export function computeParameterValues(points, parameterization) {
87
+ export function acgeComputeParameterValues(points, parameterization) {
88
88
  if (parameterization === void 0) { parameterization = 'Uniform'; }
89
89
  var count = points.length;
90
90
  if (count === 0) {
@@ -116,7 +116,7 @@ export function computeParameterValues(points, parameterization) {
116
116
  /**
117
117
  * Generate a clamped knot vector using averaging method
118
118
  */
119
- export function generateAveragedKnots(degree, parameters) {
119
+ export function acgeGenerateAveragedKnots(degree, parameters) {
120
120
  var n = parameters.length - 1;
121
121
  var p = degree;
122
122
  var m = n + p + 1;
@@ -137,7 +137,7 @@ export function generateAveragedKnots(degree, parameters) {
137
137
  /**
138
138
  * Generate sqrt-chord parameterized knots
139
139
  */
140
- export function generateSqrtChordKnots(degree, points) {
140
+ export function acgeGenerateSqrtChordKnots(degree, points) {
141
141
  var n = points.length - 1;
142
142
  var p = degree;
143
143
  // Calculate sqrt chord lengths
@@ -218,7 +218,7 @@ function solveLinearSystem(matrix, rhs) {
218
218
  /**
219
219
  * Interpolate a NURBS curve from fit points with optional end tangents
220
220
  */
221
- export function interpolateNurbsCurve(fitPoints, degree, parameterization, startTangent, endTangent) {
221
+ export function acgeInterpolateNurbsCurve(fitPoints, degree, parameterization, startTangent, endTangent) {
222
222
  var _a, _b, _c, _d, _e, _f;
223
223
  if (parameterization === void 0) { parameterization = 'Uniform'; }
224
224
  if (fitPoints.length === 0) {
@@ -234,7 +234,7 @@ export function interpolateNurbsCurve(fitPoints, degree, parameterization, start
234
234
  if (n < degree) {
235
235
  throw new Error('Not enough points to interpolate a curve of this degree.');
236
236
  }
237
- var params = computeParameterValues(safePoints, parameterization);
237
+ var params = acgeComputeParameterValues(safePoints, parameterization);
238
238
  var extendedParams = params.slice();
239
239
  if (hasStartTangent) {
240
240
  extendedParams.unshift(params[0]);
@@ -242,7 +242,7 @@ export function interpolateNurbsCurve(fitPoints, degree, parameterization, start
242
242
  if (hasEndTangent) {
243
243
  extendedParams.push(params[params.length - 1]);
244
244
  }
245
- var knots = generateAveragedKnots(degree, extendedParams);
245
+ var knots = acgeGenerateAveragedKnots(degree, extendedParams);
246
246
  var size = n + 1;
247
247
  var matrix = new Array(size);
248
248
  var rhsX = new Array(size);
@@ -259,7 +259,7 @@ export function interpolateNurbsCurve(fitPoints, degree, parameterization, start
259
259
  var u = params[i];
260
260
  matrix[row] = new Array(size).fill(0);
261
261
  for (var j = 0; j <= n; j++) {
262
- matrix[row][j] = basisFunction(j, degree, u, knots);
262
+ matrix[row][j] = acgeBasisFunction(j, degree, u, knots);
263
263
  }
264
264
  rhsX[row] = safePoints[i][0];
265
265
  rhsY[row] = safePoints[i][1];
@@ -307,7 +307,7 @@ export function interpolateNurbsCurve(fitPoints, degree, parameterization, start
307
307
  /**
308
308
  * Calculate basis function value for NURBS
309
309
  */
310
- export function basisFunction(i, k, u, knots) {
310
+ export function acgeBasisFunction(i, k, u, knots) {
311
311
  if (k === 0) {
312
312
  return u >= knots[i] && u < knots[i + 1] ? 1.0 : 0.0;
313
313
  }
@@ -315,13 +315,13 @@ export function basisFunction(i, k, u, knots) {
315
315
  var d2 = knots[i + k + 1] - knots[i + 1];
316
316
  var c1 = d1 > 1e-10 ? (u - knots[i]) / d1 : 0.0;
317
317
  var c2 = d2 > 1e-10 ? (knots[i + k + 1] - u) / d2 : 0.0;
318
- return (c1 * basisFunction(i, k - 1, u, knots) +
319
- c2 * basisFunction(i + 1, k - 1, u, knots));
318
+ return (c1 * acgeBasisFunction(i, k - 1, u, knots) +
319
+ c2 * acgeBasisFunction(i + 1, k - 1, u, knots));
320
320
  }
321
321
  /**
322
322
  * Calculate point on NURBS curve
323
323
  */
324
- export function evaluateNurbsPoint(u, degree, knots, controlPoints, weights) {
324
+ export function acgeEvaluateNurbsPoint(u, degree, knots, controlPoints, weights) {
325
325
  var n = controlPoints.length - 1;
326
326
  var p = degree;
327
327
  // Clamp parameter to valid range
@@ -337,7 +337,7 @@ export function evaluateNurbsPoint(u, degree, knots, controlPoints, weights) {
337
337
  var point = [0, 0, 0];
338
338
  var weight = 0;
339
339
  for (var i = 0; i <= n; i++) {
340
- var basis = basisFunction(i, p, u, knots);
340
+ var basis = acgeBasisFunction(i, p, u, knots);
341
341
  var w = weights[i] * basis;
342
342
  point[0] += controlPoints[i][0] * w;
343
343
  point[1] += controlPoints[i][1] * w;
@@ -374,10 +374,10 @@ function basisFunctionDeriv1(i, k, u, knots) {
374
374
  var denomB = knots[i + k + 1] - knots[i + 1];
375
375
  var value = 0;
376
376
  if (denomA > 1e-10) {
377
- value += (k / denomA) * basisFunction(i, k - 1, u, knots);
377
+ value += (k / denomA) * acgeBasisFunction(i, k - 1, u, knots);
378
378
  }
379
379
  if (denomB > 1e-10) {
380
- value -= (k / denomB) * basisFunction(i + 1, k - 1, u, knots);
380
+ value -= (k / denomB) * acgeBasisFunction(i + 1, k - 1, u, knots);
381
381
  }
382
382
  return value;
383
383
  }
@@ -401,7 +401,7 @@ function basisFunctionDeriv2(i, k, u, knots) {
401
401
  /**
402
402
  * Evaluates a rational NURBS curve and its first two parametric derivatives.
403
403
  */
404
- export function evaluateNurbsDerivatives(u, degree, knots, controlPoints, weights) {
404
+ export function acgeEvaluateNurbsDerivatives(u, degree, knots, controlPoints, weights) {
405
405
  var n = controlPoints.length - 1;
406
406
  var p = degree;
407
407
  var startParam = knots[p];
@@ -414,7 +414,7 @@ export function evaluateNurbsDerivatives(u, degree, knots, controlPoints, weight
414
414
  var dw = 0;
415
415
  var d2w = 0;
416
416
  for (var i = 0; i <= n; i++) {
417
- var basis = basisFunction(i, p, u, knots);
417
+ var basis = acgeBasisFunction(i, p, u, knots);
418
418
  var dbasis = basisFunctionDeriv1(i, p, u, knots);
419
419
  var d2basis = basisFunctionDeriv2(i, p, u, knots);
420
420
  var weight = weights[i];
@@ -436,7 +436,7 @@ export function evaluateNurbsDerivatives(u, degree, knots, controlPoints, weight
436
436
  d2w += wD2Basis;
437
437
  }
438
438
  if (Math.abs(w) < 1e-10) {
439
- var point_1 = evaluateNurbsPoint(u, degree, knots, controlPoints, weights);
439
+ var point_1 = acgeEvaluateNurbsPoint(u, degree, knots, controlPoints, weights);
440
440
  return { point: point_1, deriv1: [0, 0, 0], deriv2: [0, 0, 0] };
441
441
  }
442
442
  var w2 = w * w;
@@ -459,7 +459,7 @@ export function evaluateNurbsDerivatives(u, degree, knots, controlPoints, weight
459
459
  /**
460
460
  * Signed planar curvature from parametric derivatives in XY.
461
461
  */
462
- export function signedPlanarCurvature(deriv1, deriv2) {
462
+ export function acgeSignedPlanarCurvature(deriv1, deriv2) {
463
463
  var dx = deriv1[0];
464
464
  var dy = deriv1[1];
465
465
  var ddx = deriv2[0];
@@ -472,17 +472,17 @@ export function signedPlanarCurvature(deriv1, deriv2) {
472
472
  /**
473
473
  * Calculate curve length using numerical integration
474
474
  */
475
- export function calculateCurveLength(degree, knots, controlPoints, weights) {
475
+ export function acgeCalculateCurveLength(degree, knots, controlPoints, weights) {
476
476
  var p = degree;
477
477
  var startParam = knots[p];
478
478
  var endParam = knots[knots.length - p - 1];
479
479
  var length = 0;
480
480
  var steps = 1000;
481
481
  var step = (endParam - startParam) / steps;
482
- var prevPoint = evaluateNurbsPoint(startParam, degree, knots, controlPoints, weights);
482
+ var prevPoint = acgeEvaluateNurbsPoint(startParam, degree, knots, controlPoints, weights);
483
483
  for (var i = 1; i <= steps; i++) {
484
484
  var u = startParam + i * step;
485
- var point = evaluateNurbsPoint(u, degree, knots, controlPoints, weights);
485
+ var point = acgeEvaluateNurbsPoint(u, degree, knots, controlPoints, weights);
486
486
  var dx_1 = point[0] - prevPoint[0];
487
487
  var dy_1 = point[1] - prevPoint[1];
488
488
  var dz_1 = point[2] - prevPoint[2];
@@ -490,7 +490,7 @@ export function calculateCurveLength(degree, knots, controlPoints, weights) {
490
490
  prevPoint = point;
491
491
  }
492
492
  // Add the final segment to the end point
493
- var finalPoint = evaluateNurbsPoint(endParam, degree, knots, controlPoints, weights);
493
+ var finalPoint = acgeEvaluateNurbsPoint(endParam, degree, knots, controlPoints, weights);
494
494
  var dx = finalPoint[0] - prevPoint[0];
495
495
  var dy = finalPoint[1] - prevPoint[1];
496
496
  var dz = finalPoint[2] - prevPoint[2];
@@ -500,12 +500,12 @@ export function calculateCurveLength(degree, knots, controlPoints, weights) {
500
500
  /**
501
501
  * Generate control points from fit points using interpolation
502
502
  */
503
- export function interpolateControlPoints(fitPoints, degree, parameterization, startTangent, endTangent) {
503
+ export function acgeInterpolateControlPoints(fitPoints, degree, parameterization, startTangent, endTangent) {
504
504
  if (degree === void 0) { degree = 3; }
505
505
  if (parameterization === void 0) { parameterization = 'Uniform'; }
506
506
  if (fitPoints.length === 0) {
507
507
  return [];
508
508
  }
509
- return interpolateNurbsCurve(fitPoints, degree, parameterization, startTangent, endTangent).controlPoints;
509
+ return acgeInterpolateNurbsCurve(fitPoints, degree, parameterization, startTangent, endTangent).controlPoints;
510
510
  }
511
511
  //# sourceMappingURL=AcGeNurbsUtil.js.map