plotboilerplate 1.28.1 → 1.30.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 (80) hide show
  1. package/README.md +8 -0
  2. package/dist/index.esm.js +527 -53
  3. package/dist/index.esm.js.map +1 -1
  4. package/dist/index.esm.min.js +1 -1
  5. package/dist/index.esm.min.js.map +1 -1
  6. package/dist/plotboilerplate.browser.min.js +1 -1
  7. package/dist/plotboilerplate.browser.min.js.map +1 -1
  8. package/dist/plotboilerplate.js +528 -51
  9. package/dist/plotboilerplate.min.js +1 -1
  10. package/package.json +1 -1
  11. package/src/cjs/Circle.d.ts +86 -3
  12. package/src/cjs/Circle.js +179 -4
  13. package/src/cjs/Circle.js.map +1 -1
  14. package/src/cjs/CubicBezierCurve.d.ts +34 -3
  15. package/src/cjs/CubicBezierCurve.js +79 -12
  16. package/src/cjs/CubicBezierCurve.js.map +1 -1
  17. package/src/cjs/Line.d.ts +46 -1
  18. package/src/cjs/Line.js +80 -1
  19. package/src/cjs/Line.js.map +1 -1
  20. package/src/cjs/Triangle.d.ts +40 -4
  21. package/src/cjs/Triangle.js +127 -31
  22. package/src/cjs/Triangle.js.map +1 -1
  23. package/src/cjs/VertTuple.d.ts +16 -2
  24. package/src/cjs/VertTuple.js +20 -2
  25. package/src/cjs/VertTuple.js.map +1 -1
  26. package/src/cjs/Vertex.d.ts +25 -2
  27. package/src/cjs/Vertex.js +43 -1
  28. package/src/cjs/Vertex.js.map +1 -1
  29. package/src/cjs/utils/algorithms/minimalContainingCircleFromPoints.d.ts +21 -0
  30. package/src/cjs/utils/algorithms/minimalContainingCircleFromPoints.js +73 -0
  31. package/src/cjs/utils/algorithms/minimalContainingCircleFromPoints.js.map +1 -0
  32. package/src/cjs/utils/algorithms/minimalEnclosingCircleFromPoints.d.ts +21 -0
  33. package/src/cjs/utils/algorithms/minimalEnclosingCircleFromPoints.js +73 -0
  34. package/src/cjs/utils/algorithms/minimalEnclosingCircleFromPoints.js.map +1 -0
  35. package/src/cjs/utils/algorithms/pointsMinimalContainingCircle.d.ts +21 -0
  36. package/src/cjs/utils/algorithms/pointsMinimalContainingCircle.js +73 -0
  37. package/src/cjs/utils/algorithms/pointsMinimalContainingCircle.js.map +1 -0
  38. package/src/cjs/utils/algorithms/solveApollonius3.d.ts +69 -0
  39. package/src/cjs/utils/algorithms/solveApollonius3.js +118 -0
  40. package/src/cjs/utils/algorithms/solveApollonius3.js.map +1 -0
  41. package/src/esm/Circle.d.ts +86 -3
  42. package/src/esm/Circle.js +179 -4
  43. package/src/esm/Circle.js.map +1 -1
  44. package/src/esm/CubicBezierCurve.d.ts +34 -3
  45. package/src/esm/CubicBezierCurve.js +79 -12
  46. package/src/esm/CubicBezierCurve.js.map +1 -1
  47. package/src/esm/Line.d.ts +46 -1
  48. package/src/esm/Line.js +80 -1
  49. package/src/esm/Line.js.map +1 -1
  50. package/src/esm/Triangle.d.ts +40 -4
  51. package/src/esm/Triangle.js +128 -32
  52. package/src/esm/Triangle.js.map +1 -1
  53. package/src/esm/VertTuple.d.ts +16 -2
  54. package/src/esm/VertTuple.js +20 -2
  55. package/src/esm/VertTuple.js.map +1 -1
  56. package/src/esm/Vertex.d.ts +25 -2
  57. package/src/esm/Vertex.js +44 -2
  58. package/src/esm/Vertex.js.map +1 -1
  59. package/src/esm/utils/algorithms/minimalContainingCircleFromPoints.d.ts +21 -0
  60. package/src/esm/utils/algorithms/minimalContainingCircleFromPoints.js +69 -0
  61. package/src/esm/utils/algorithms/minimalContainingCircleFromPoints.js.map +1 -0
  62. package/src/esm/utils/algorithms/minimalEnclosingCircleFromPoints.d.ts +21 -0
  63. package/src/esm/utils/algorithms/minimalEnclosingCircleFromPoints.js +69 -0
  64. package/src/esm/utils/algorithms/minimalEnclosingCircleFromPoints.js.map +1 -0
  65. package/src/esm/utils/algorithms/pointsMinimalContainingCircle.d.ts +21 -0
  66. package/src/esm/utils/algorithms/pointsMinimalContainingCircle.js +69 -0
  67. package/src/esm/utils/algorithms/pointsMinimalContainingCircle.js.map +1 -0
  68. package/src/esm/utils/algorithms/solveApollonius3.d.ts +69 -0
  69. package/src/esm/utils/algorithms/solveApollonius3.js +114 -0
  70. package/src/esm/utils/algorithms/solveApollonius3.js.map +1 -0
  71. package/src/index-gl.js +6 -4
  72. package/src/index.js +25 -17
  73. package/src/ts/Circle.ts +200 -5
  74. package/src/ts/CubicBezierCurve.ts +133 -48
  75. package/src/ts/Line.ts +84 -1
  76. package/src/ts/Triangle.ts +148 -41
  77. package/src/ts/VertTuple.ts +29 -2
  78. package/src/ts/Vertex.ts +44 -2
  79. package/src/ts/utils/algorithms/minimalEnclosingCircleFromPoints.ts +69 -0
  80. package/src/ts/utils/algorithms/solveApollonius3.ts +132 -0
@@ -1 +1 @@
1
- {"version":3,"file":"Triangle.js","sourceRoot":"","sources":["../ts/Triangle.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Triangle.js","sourceRoot":"","sources":["../ts/Triangle.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAqCI;;;AAEJ,mCAAkC;AAClC,mCAA2C;AAC3C,+BAA8B;AAC9B,qCAAoC;AACpC,+CAA8C;AAC9C,mCAAkC;AAClC,yCAAwC;AACxC,mCAAkC;AAClC,yCAAwC;AAGxC;;;;;;;;;;;;;;;;GAgBG;AACH;IA6EE;;;;;;;;QAQI;IACJ,kBAAY,CAAS,EAAE,CAAS,EAAE,CAAS;QArF3C;;YAEI;QACK,cAAS,GAAW,UAAU,CAAC;QAmFtC,IAAI,CAAC,GAAG,GAAG,2BAAY,CAAC,IAAI,EAAE,CAAC;QAC/B,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC;QACX,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC;QACX,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC;QAEX,IAAI,CAAC,gBAAgB,EAAE,CAAC;IAC1B,CAAC;IAED;;;;;;;;;;;QAWI;IACG,kBAAS,GAAhB,UAAiB,GAAkB;QACjC,IAAI,GAAG,CAAC,MAAM,GAAG,CAAC;YAAE,MAAM,2EAAoE,GAAG,CAAC,MAAM,MAAG,CAAC;QAC5G,OAAO,IAAI,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;IAC9C,CAAC;IAED;;;;;;;;;;;OAWG;IACH,0BAAO,GAAP;QACE,OAAO,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IACzG,CAAC;IAED;;;;;;;;;QASI;IACJ,8BAAW,GAAX;QACE,OAAO,IAAI,eAAM,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;IAChG,CAAC;IAED;;;;;;;;OAQG;IACH,kCAAe,GAAf,UAAgB,MAAc;QAC5B,IAAI,QAAQ,GAAW,IAAI,CAAC,WAAW,EAAE,CAAC;QAC1C,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;QAC/B,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;QAC/B,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;QAC/B,OAAO,IAAI,CAAC;IACd,CAAC;IAED,8CAA8C;IAC9C;;;;;;;QAOI;IACJ,4BAAS,GAAT;QACE,+DAA+D;QAC/D,OAAO,IAAI,CAAC,MAAM,EAAE,CAAC;IACvB,CAAC;IACD,4CAA4C;IAE5C;;;;;;;;QAQI;IACJ,uBAAI,GAAJ,UAAK,MAAgB;QACnB,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QACnB,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QACnB,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QACnB,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;;;;;;;;;;;OAcG;IACH,kCAAe,GAAf;QACE,qCAAqC;QACrC,IAAI,CAAC,gBAAgB,EAAE,CAAC;QACxB,OAAO,IAAI,eAAM,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;IACtD,CAAC;IAED;;;;;;;;OAQG;IACH,4CAAyB,GAAzB;QACE,gFAAgF;QAChF,IAAI,QAAQ,GAAY,qBAAS,CAAC,OAAO,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC;QAC3E,IAAI,eAAM,CAAC,WAAW,CAAC,aAAa,CAAC,QAAQ,CAAC,MAAM,EAAE,QAAQ,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC;YAC/E,OAAO,eAAM,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;QACtC,CAAC;QACD,IAAI,QAAQ,GAAY,qBAAS,CAAC,OAAO,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC;QAC3E,IAAI,eAAM,CAAC,WAAW,CAAC,aAAa,CAAC,QAAQ,CAAC,MAAM,EAAE,QAAQ,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC;YAC/E,OAAO,eAAM,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;QACtC,CAAC;QACD,IAAI,QAAQ,GAAY,qBAAS,CAAC,OAAO,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC;QAC3E,IAAI,eAAM,CAAC,WAAW,CAAC,aAAa,CAAC,QAAQ,CAAC,MAAM,EAAE,QAAQ,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC;YAC/E,OAAO,eAAM,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;QACtC,CAAC;QAED,qEAAqE;QACrE,IAAI,YAAY,GAAG,QAAQ,CAAC,KAAK,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC;QAC3E,OAAO,eAAM,CAAC,WAAW,CAAC,YAAY,CAAC,CAAC;IAC1C,CAAC;IAED;;;;;;;;;;;;OAYG;IACH,6BAAU,GAAV,UAAW,GAAa;QACtB,IAAI,CAAC,GAAY,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;QACtF,IAAI,CAAC,GAAY,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;QACtF,IAAI,CAAC,GAAY,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;QACtF,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;IAC1C,CAAC;IAED;;;;;;;;;;OAUG;IACH,iCAAc,GAAd,UAAe,KAAa,EAAE,KAAa;QACzC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;YAAE,OAAO,IAAI,CAAC,CAAC,CAAC;QACpH,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;YAAE,OAAO,IAAI,CAAC,CAAC,CAAC;QACpH,oGAAoG;QACpG,OAAO,IAAI,CAAC,CAAC,CAAC;IAChB,CAAC;IAED;;;;;;;OAOG;IACH,8BAAW,GAAX;QACE,OAAO,CAAC,IAAI,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC;IAClC,CAAC;IAED;;;;;;;;;;;OAWG;IACH,mCAAgB,GAAhB;QACE,UAAU;QACV,qDAAqD;QAErD,yCAAyC;QACzC,yCAAyC;QACzC,yCAAyC;QACzC,yCAAyC;QAEzC,2EAA2E;QAC3E,2EAA2E;QAE3E,mFAAmF;QAEnF,8BAA8B;QAE9B,wCAAwC;QACxC,sDAAsD;QACtD,0CAA0C;QAC1C,oGAAoG;QACpG,uCAAuC;QACvC,uCAAuC;QACvC,WAAW;QACX,4CAA4C;QAC5C,4CAA4C;QAC5C,sCAAsC;QACtC,mCAAmC;QACnC,mCAAmC;QACnC,IAAI;QAEJ,2CAA2C;QAC3C,gDAAgD;QAChD,IAAM,SAAS,GAAG,QAAQ,CAAC,KAAK,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC;QAC1E,IAAI,CAAC,MAAM,GAAG,IAAI,eAAM,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,EAAE,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;QACjE,IAAI,CAAC,MAAM,GAAG,SAAS,CAAC,MAAM,CAAC;QAC/B,IAAI,CAAC,cAAc,GAAG,SAAS,CAAC,cAAc,CAAC;IACjD,CAAC,EAAC,uBAAuB;IAEzB;;;;;;;;;OASG;IACH,iCAAc,GAAd,UAAe,CAAS;QACtB,IAAM,EAAE,GAAW,IAAI,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;QACvC,IAAM,EAAE,GAAW,IAAI,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;QACvC,IAAM,YAAY,GAAW,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC;QAC/C,OAAO,YAAY,IAAI,IAAI,CAAC,cAAc,CAAC;IAC7C,CAAC;IAED;;;;;;;OAOG;IACH,yBAAM,GAAN;QACE,qBAAqB;QACrB,sHAAsH;QACtH,qHAAqH;QACrH,KAAK;QACL,OAAO,QAAQ,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC;IACvD,CAAC;IAED,mDAAmD;IACnD;;;;;;;;;;OAUG;IACH,oCAAiB,GAAjB,UAAkB,IAAoB,EAAE,kBAAmC;QAAnC,mCAAA,EAAA,0BAAmC;QACzE,6DAA6D;QAC7D,OAAO,iBAAO,CAAC,KAAK;aACjB,qBAAqB,CAAC,IAAI,EAAE,CAAC,IAAI,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,kBAAkB,CAAC;aAChF,GAAG,CAAC,UAAA,iBAAiB,IAAI,OAAA,iBAAiB,CAAC,YAAY,EAA9B,CAA8B,CAAC,CAAC;IAC9D,CAAC;IAED;;;;;;;;OAQG;IACH,2CAAwB,GAAxB,UAAyB,IAAoB,EAAE,kBAAmC;QAAlF,iBASC;QAT8C,mCAAA,EAAA,0BAAmC;QAChF,qEAAqE;QACrE,OAAO,iBAAO,CAAC,KAAK;aACjB,qBAAqB,CAAC,IAAI,EAAE,CAAC,IAAI,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,kBAAkB,CAAC;aAChF,GAAG,CAAC,UAAA,iBAAiB;YACpB,gEAAgE;YAChE,IAAM,QAAQ,GAAG,KAAI,CAAC,SAAS,CAAC,iBAAiB,CAAC,SAAS,CAAC,CAAC;YAC7D,OAAO,IAAI,eAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,KAAK,EAAE,EAAE,QAAQ,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,iBAAiB,CAAC,YAAY,CAAW,CAAC;QAC7G,CAAC,CAAC,CAAC;IACP,CAAC;IACD,iDAAiD;IAEjD,4BAAS,GAAT,UAAU,SAAiB;QACzB,IAAI,QAAQ,GAAG,SAAS,GAAG,CAAC,CAAC;QAC7B,OAAO,QAAQ,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,WAAI,CAAC,IAAI,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,WAAI,CAAC,IAAI,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,WAAI,CAAC,IAAI,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC;IAC1H,CAAC;IAED;;;;;;;;;QASI;IACJ,4BAAS,GAAT;QACE,OAAO,IAAI,iBAAO,CAAC,CAAC,IAAI,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;IAC/C,CAAC;IAED;;;;;;;OAOG;IACH,8BAAW,GAAX;QACE,qDAAqD;QACrD,wGAAwG;QACxG,OAAO,QAAQ,CAAC,KAAK,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC;IAC5D,CAAC;IAED;;;;;;;;;;OAUG;IACH,gCAAa,GAAb,UAAc,CAAS;QACrB,OAAO,QAAQ,CAAC,KAAK,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAChH,CAAC;IAED;;;;OAIG;IACH,wCAAqB,GAArB;QACE,IAAM,KAAK,GAAG,IAAI,WAAI,CAAC,IAAI,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC;QACvC,IAAM,KAAK,GAAG,IAAI,WAAI,CAAC,IAAI,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC;QACvC,IAAM,KAAK,GAAG,IAAI,WAAI,CAAC,IAAI,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC;QAEvC,IAAM,SAAS,GAAG,qBAAS,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,iCAAiC;QACvG,IAAM,SAAS,GAAG,qBAAS,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,kCAAkC;QACxG,mEAAmE;QACnE,IAAM,YAAY,GAAG,SAAS,CAAC,YAAY,CAAC,SAAS,CAAW,CAAC;QAEjE,+FAA+F;QAC/F,IAAM,aAAa,GAAG,KAAK,CAAC,eAAe,CAAC,YAAY,CAAC,CAAC;QAC1D,IAAM,aAAa,GAAG,KAAK,CAAC,eAAe,CAAC,YAAY,CAAC,CAAC;QAC1D,IAAM,aAAa,GAAG,KAAK,CAAC,eAAe,CAAC,YAAY,CAAC,CAAC;QAE1D,OAAO,IAAI,QAAQ,CAAC,aAAa,EAAE,aAAa,EAAE,aAAa,CAAC,CAAC;IACnE,CAAC;IAED;;;;;;;OAOG;IACH,8BAAW,GAAX;QACE,OAAO,IAAI,CAAC,qBAAqB,EAAE,CAAC,eAAe,EAAE,CAAC;IACxD,CAAC;IAED;;;;;;;QAOI;IACJ,8BAAW,GAAX;QACE,IAAI,CAAC,IAAI,CAAC,MAAM,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;YACjC,IAAI,CAAC,gBAAgB,EAAE,CAAC;QAC1B,CAAC;QACD,OAAO,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;IAC7B,CAAC;IAED;;;;;;;OAOG;IACH,2BAAQ,GAAR;QACE,OAAO,QAAQ,GAAG,IAAI,CAAC,CAAC,CAAC,QAAQ,EAAE,GAAG,QAAQ,GAAG,IAAI,CAAC,CAAC,CAAC,QAAQ,EAAE,GAAG,QAAQ,GAAG,IAAI,CAAC,CAAC,CAAC,QAAQ,EAAE,GAAG,GAAG,CAAC;IAC1G,CAAC;IAED;;;;OAIG;IACH,0BAAO,GAAP;QACE,IAAI,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC;QACjB,IAAI,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC;QACjB,IAAI,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC;QACjB,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC;IAC1B,CAAC;IArgBD;;;;;QAKI;IACY,gBAAO,GAAW,MAAM,AAAjB,CAAkB;IAigB3B,cAAK,GAAG;QACpB,iCAAiC;QACjC,IAAI,YAAC,CAAS,EAAE,CAAS,EAAE,CAAS;YAClC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACzD,CAAC;QACD,IAAI,YAAC,CAAS,EAAE,CAAS,EAAE,CAAS;YAClC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACzD,CAAC;QACD,UAAU,YAAC,GAAW,EAAE,GAAW,EAAE,GAAW,EAAE,GAAW,EAAE,GAAW,EAAE,GAAW;YACrF,OAAO,GAAG,GAAG,CAAC,CAAC,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,CAAC,CAAC,GAAG,GAAG,GAAG,CAAC,GAAG,GAAG,GAAG,CAAC,GAAG,GAAG,GAAG,CAAC,GAAG,GAAG,GAAG,GAAG,CAAC,CAAC;QACjF,CAAC;QACD;;;;YAII;QACJ,iBAAiB,YACf,EAAU,EACV,EAAU,EACV,GAAW,EACX,GAAW,EACX,GAAW,EACX,GAAW,EACX,GAAW,EACX,GAAW;YAEX,EAAE;YACF,kCAAkC;YAClC,yFAAyF;YACzF,qFAAqF;YACrF,IAAI,IAAI,GAAW,QAAQ,CAAC,KAAK,CAAC,UAAU,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;YAE3E,IAAI,CAAC,GAAW,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,GAAG,CAAC,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,CAAC,GAAG,GAAG,GAAG,CAAC,GAAG,EAAE,GAAG,CAAC,GAAG,GAAG,GAAG,CAAC,GAAG,EAAE,CAAC,CAAC;YACjG,IAAI,CAAC,GAAW,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,GAAG,CAAC,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,CAAC,GAAG,GAAG,GAAG,CAAC,GAAG,EAAE,GAAG,CAAC,GAAG,GAAG,GAAG,CAAC,GAAG,EAAE,CAAC,CAAC;YAEjG,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QACzC,CAAC;QAED;;;;;;WAMG;QACH,WAAW,EAAE,UAAC,CAAW,EAAE,CAAW,EAAE,CAAW;YACjD,OAAO,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;QAC/D,CAAC;QAED,MAAM,EAAE,UAAC,CAAW,EAAE,CAAW,EAAE,CAAW;YAC5C,OAAO,IAAI,eAAM,CACf,IAAI,eAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,EAClF,IAAI,eAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CACnF,CAAC;QACJ,CAAC;QAED;;;;;;;;;;;WAWG;QACH,gBAAgB,EAAE,UAAC,CAAW,EAAE,CAAW,EAAE,CAAW;YACtD,OAAO;YACP,kDAAkD;YAElD,IAAM,CAAC,GAAW,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;YAC5B,IAAM,CAAC,GAAW,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;YAC5B,IAAM,CAAC,GAAW,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;YAC5B,IAAM,CAAC,GAAW,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;YAE5B,IAAM,CAAC,GAAW,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;YACpD,IAAM,CAAC,GAAW,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;YAEpD,IAAM,CAAC,GAAW,GAAG,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YAE5D,IAAI,EAAU,EAAE,EAAU,CAAC;YAE3B,IAAI,MAAM,CAAC;YACX,IAAI,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,QAAQ,CAAC,OAAO,EAAE,CAAC;gBACnC,iDAAiD;gBACjD,wCAAwC;gBACxC,IAAM,MAAM,GAAW,QAAQ,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;gBACtD,MAAM,GAAG,IAAI,eAAM,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;gBAC1F,EAAE,GAAG,MAAM,CAAC,CAAC,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC;gBAC7B,EAAE,GAAG,MAAM,CAAC,CAAC,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC;YAC/B,CAAC;iBAAM,CAAC;gBACN,IAAM,EAAE,GAAW,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC;gBACvC,IAAM,EAAE,GAAW,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC;gBACvC,MAAM,GAAG,IAAI,eAAM,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;gBAC5B,EAAE,GAAG,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;gBACpB,EAAE,GAAG,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;YACtB,CAAC;YAED,IAAM,cAAc,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC;YACzC,IAAM,MAAM,GAAG,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;YACzC,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,cAAc,EAAE,cAAc,EAAE,CAAC;QAC5E,CAAC,CAAC,uBAAuB;KAC1B,AAxGkB,CAwGjB;IACJ,eAAC;CAAA,AAhoBD,IAgoBC;AAhoBY,4BAAQ"}
@@ -16,10 +16,14 @@
16
16
  * @modified 2025-03-31 Added the `VertTuple.revert` method.
17
17
  * @modified 2025-04-15 Changed param of `VertTuple.moveTo` method from `Vertex` to `XYCoords`.
18
18
  * @modified 2025-04-15 Added method `VertTuple.move` method.
19
- * @version 1.4.0
19
+ * @modified 2026-06-10 Adding helper function `VertTuple.utils.calcCircumcircle`.
20
+ * @modified 2026-06-17 Adding method `VertTuple.asLine` for converting Vector to Line instances.
21
+ * @version 1.6.0
20
22
  */
21
23
  import { Vertex } from "./Vertex";
22
24
  import { XYCoords, UID } from "./interfaces";
25
+ import { ICircle } from "./Circle";
26
+ import { Line } from "./Line";
23
27
  /**
24
28
  * @classdesc An abstract base classes for vertex tuple constructs, like Lines or Vectors.
25
29
  * @abstract
@@ -254,12 +258,21 @@ export declare class VertTuple<T extends VertTuple<T>> {
254
258
  /**
255
259
  * Create a deep clone of this instance.
256
260
  *
257
- * @method cloneLine
261
+ * @method clone
258
262
  * @return {T} A type safe clone if this instance.
259
263
  * @instance
260
264
  * @memberof VertTuple
261
265
  **/
262
266
  clone(): T;
267
+ /**
268
+ * Converts this `Vector` to a `Line` (segment).
269
+ *
270
+ * @method asLine
271
+ * @return {T} A type safe clone if this instance.
272
+ * @instance
273
+ * @memberof VertTuple
274
+ **/
275
+ asLine(): Line;
263
276
  /**
264
277
  * Create a string representation of this line.
265
278
  *
@@ -280,5 +293,6 @@ export declare class VertTuple<T extends VertTuple<T>> {
280
293
  **/
281
294
  static vtutils: {
282
295
  dist2: (v: XYCoords, w: XYCoords) => number;
296
+ calcCircumcircle: (p1: XYCoords, p2: XYCoords) => ICircle;
283
297
  };
284
298
  }
@@ -17,12 +17,15 @@
17
17
  * @modified 2025-03-31 Added the `VertTuple.revert` method.
18
18
  * @modified 2025-04-15 Changed param of `VertTuple.moveTo` method from `Vertex` to `XYCoords`.
19
19
  * @modified 2025-04-15 Added method `VertTuple.move` method.
20
- * @version 1.4.0
20
+ * @modified 2026-06-10 Adding helper function `VertTuple.utils.calcCircumcircle`.
21
+ * @modified 2026-06-17 Adding method `VertTuple.asLine` for converting Vector to Line instances.
22
+ * @version 1.6.0
21
23
  */
22
24
  Object.defineProperty(exports, "__esModule", { value: true });
23
25
  exports.VertTuple = void 0;
24
26
  var Vertex_1 = require("./Vertex");
25
27
  var UIDGenerator_1 = require("./UIDGenerator");
28
+ var Line_1 = require("./Line");
26
29
  /**
27
30
  * @classdesc An abstract base classes for vertex tuple constructs, like Lines or Vectors.
28
31
  * @abstract
@@ -305,7 +308,7 @@ var VertTuple = /** @class */ (function () {
305
308
  /**
306
309
  * Create a deep clone of this instance.
307
310
  *
308
- * @method cloneLine
311
+ * @method clone
309
312
  * @return {T} A type safe clone if this instance.
310
313
  * @instance
311
314
  * @memberof VertTuple
@@ -313,6 +316,17 @@ var VertTuple = /** @class */ (function () {
313
316
  VertTuple.prototype.clone = function () {
314
317
  return this.factory(this.a.clone(), this.b.clone());
315
318
  };
319
+ /**
320
+ * Converts this `Vector` to a `Line` (segment).
321
+ *
322
+ * @method asLine
323
+ * @return {T} A type safe clone if this instance.
324
+ * @instance
325
+ * @memberof VertTuple
326
+ **/
327
+ VertTuple.prototype.asLine = function () {
328
+ return new Line_1.Line(this.a, this.b);
329
+ };
316
330
  /**
317
331
  * Create a string representation of this line.
318
332
  *
@@ -340,6 +354,10 @@ var VertTuple = /** @class */ (function () {
340
354
  VertTuple.vtutils = {
341
355
  dist2: function (v, w) {
342
356
  return (v.x - w.x) * (v.x - w.x) + (v.y - w.y) * (v.y - w.y);
357
+ },
358
+ calcCircumcircle: function (p1, p2) {
359
+ var p1x = p1.x, p1y = p1.y, p2x = p2.x, p2y = p2.y, cx = 0.5 * (p1x + p2x), cy = 0.5 * (p1y + p2y);
360
+ return { center: { x: cx, y: cy }, radius: Math.sqrt((p1x - cx) * (p1x - cx) + (p1y - cy) * (p1y - cy)) };
343
361
  }
344
362
  };
345
363
  return VertTuple;
@@ -1 +1 @@
1
- {"version":3,"file":"VertTuple.js","sourceRoot":"","sources":["../ts/VertTuple.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"VertTuple.js","sourceRoot":"","sources":["../ts/VertTuple.ts"],"names":[],"mappings":"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"}
@@ -36,7 +36,8 @@
36
36
  * @modified 2025-03-24 Making the second parameter `center` of the `Vertex.rotate` method optional.
37
37
  * @modified 2025-04-13 Adding the `Vertex.move(amount: XYCoords)` method (does the same as `add`, added by naming convention).
38
38
  * @modified 2025-05-07 Class `Vertex` is now implementing interface `IBounded` (to meet convention).
39
- * @version 2.11.0
39
+ * @modified 2026-06-10 Adding methods `Vertex.findClosestPoint` and `Vertex.findFarestPoint`.
40
+ * @version 2.12.0
40
41
  *
41
42
  * @file Vertex
42
43
  * @public
@@ -435,6 +436,28 @@ export declare class Vertex implements IBounded, XYCoords, SVGSerializable {
435
436
  * @return {Bounds} The rectangular bounds of this Vertex (width and height are zero).
436
437
  **/
437
438
  getBounds(): Bounds;
439
+ /**
440
+ * Find the one of two given points that's closest to this point.
441
+ *
442
+ * @method findClosestPoint
443
+ * @instance
444
+ * @memberof Vertex
445
+ * @param {XYCoords | Vertex} pointA
446
+ * @param {XYCoords | Vertex} pointB
447
+ * @returns {XYCoords | Vertex}
448
+ */
449
+ findClosestPoint<T extends XYCoords | Vertex>(pointA: T, pointB: T): T;
450
+ /**
451
+ * Find the one of two given points that's farest from this point.
452
+ *
453
+ * @method findFarestPoint
454
+ * @instance
455
+ * @memberof Vertex
456
+ * @param {XYCoords | Vertex} pointA
457
+ * @param {XYCoords | Vertex} pointB
458
+ * @returns {XYCoords | Vertex}
459
+ */
460
+ findFarestPoint<T extends XYCoords | Vertex>(pointA: T, pointB: T): T;
438
461
  /**
439
462
  * Get a string representation of this vertex.
440
463
  *
@@ -493,6 +516,6 @@ export declare class Vertex implements IBounded, XYCoords, SVGSerializable {
493
516
  * @param {number?} precision - (optional) The numeric precision to be used (number of precision digits).
494
517
  * @returns {string}
495
518
  */
496
- arrayToJSON(vertices: Array<XYCoords>, precision?: number): string;
519
+ arrayToJSON: (vertices: Array<XYCoords>, precision?: number) => string;
497
520
  };
498
521
  }
package/src/cjs/Vertex.js CHANGED
@@ -37,7 +37,8 @@
37
37
  * @modified 2025-03-24 Making the second parameter `center` of the `Vertex.rotate` method optional.
38
38
  * @modified 2025-04-13 Adding the `Vertex.move(amount: XYCoords)` method (does the same as `add`, added by naming convention).
39
39
  * @modified 2025-05-07 Class `Vertex` is now implementing interface `IBounded` (to meet convention).
40
- * @version 2.11.0
40
+ * @modified 2026-06-10 Adding methods `Vertex.findClosestPoint` and `Vertex.findFarestPoint`.
41
+ * @version 2.12.0
41
42
  *
42
43
  * @file Vertex
43
44
  * @public
@@ -604,6 +605,47 @@ var Vertex = /** @class */ (function () {
604
605
  return Bounds_1.Bounds.computeFromVertices([this]);
605
606
  };
606
607
  //--- END --- Implement interface `IBounded`
608
+ /**
609
+ * Find the one of two given points that's closest to this point.
610
+ *
611
+ * @method findClosestPoint
612
+ * @instance
613
+ * @memberof Vertex
614
+ * @param {XYCoords | Vertex} pointA
615
+ * @param {XYCoords | Vertex} pointB
616
+ * @returns {XYCoords | Vertex}
617
+ */
618
+ Vertex.prototype.findClosestPoint = function (pointA, pointB) {
619
+ // TODO: put this implementation to geomutils?
620
+ var distA = this.distance(pointA);
621
+ var distB = this.distance(pointB);
622
+ if (distA < distB) {
623
+ return pointA;
624
+ }
625
+ else {
626
+ return pointB;
627
+ }
628
+ };
629
+ /**
630
+ * Find the one of two given points that's farest from this point.
631
+ *
632
+ * @method findFarestPoint
633
+ * @instance
634
+ * @memberof Vertex
635
+ * @param {XYCoords | Vertex} pointA
636
+ * @param {XYCoords | Vertex} pointB
637
+ * @returns {XYCoords | Vertex}
638
+ */
639
+ Vertex.prototype.findFarestPoint = function (pointA, pointB) {
640
+ var distA = this.distance(pointA);
641
+ var distB = this.distance(pointB);
642
+ if (distA > distB) {
643
+ return pointA;
644
+ }
645
+ else {
646
+ return pointB;
647
+ }
648
+ };
607
649
  /**
608
650
  * Get a string representation of this vertex.
609
651
  *
@@ -1 +1 @@
1
- {"version":3,"file":"Vertex.js","sourceRoot":"","sources":["../ts/Vertex.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Vertex.js","sourceRoot":"","sources":["../ts/Vertex.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IA2CI;;;AAEJ,2CAAuD;AACvD,+CAA8C;AAC9C,qDAAoD;AAEpD,yCAAwC;AACxC,mCAAkC;AAElC;;;;;;;;;;;;;GAaG;AACH;IA8DE;;;;;;;QAOI;IACJ,gBAAY,CAAiC,EAAE,CAAsB;QAnErE;;YAEI;QACK,cAAS,GAAW,QAAQ,CAAC;QAiEpC,IAAI,CAAC,GAAG,GAAG,2BAAY,CAAC,IAAI,EAAE,CAAC;QAC/B,IAAI,OAAO,CAAC,IAAI,WAAW,EAAE,CAAC;YAC5B,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC;YACX,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC;QACb,CAAC;aAAM,IAAI,OAAO,CAAC,IAAI,QAAQ,IAAI,OAAO,CAAC,IAAI,QAAQ,EAAE,CAAC;YACxD,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC;YACX,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC;QACb,CAAC;aAAM,CAAC;YACN,IAAM,KAAK,GAAG,CAAa,CAAC;YAC5B,IAAI,OAAO,KAAK,CAAC,CAAC,IAAI,QAAQ,IAAI,OAAO,KAAK,CAAC,CAAC,IAAI,QAAQ,EAAE,CAAC;gBAC7D,IAAI,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC;gBACjB,IAAI,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC;YACnB,CAAC;iBAAM,CAAC;gBACN,IAAI,OAAO,CAAC,IAAI,QAAQ;oBAAE,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC;qBAChC,IAAI,OAAO,CAAC,IAAI,WAAW;oBAAE,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC;;oBACxC,IAAI,CAAC,CAAC,GAAG,GAAG,CAAC;gBAClB,IAAI,OAAO,CAAC,IAAI,QAAQ;oBAAE,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC;qBAChC,IAAI,OAAO,CAAC,IAAI,WAAW;oBAAE,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC;;oBACxC,IAAI,CAAC,CAAC,GAAG,GAAG,CAAC;YACpB,CAAC;QACH,CAAC;QACD,IAAI,CAAC,IAAI,GAAG,IAAI,uBAAU,EAAE,CAAC;QAC7B,IAAI,CAAC,SAAS,GAAG,IAAI,iCAAe,CAAC,IAAI,CAAC,CAAC;IAC7C,CAAC;IAED;;;;;;;;;QASI;IACJ,oBAAG,GAAH,UAAI,CAAoB,EAAE,CAAsB;QAC9C,IAAI,OAAO,CAAC,IAAI,QAAQ,IAAI,OAAO,CAAC,IAAI,QAAQ,EAAE,CAAC;YACjD,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC;YACX,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC;QACb,CAAC;aAAM,CAAC;YACN,IAAM,KAAK,GAAG,CAAa,CAAC;YAC5B,IAAI,OAAO,KAAK,CAAC,CAAC,IAAI,QAAQ,IAAI,OAAO,KAAK,CAAC,CAAC,IAAI,QAAQ,EAAE,CAAC;gBAC7D,IAAI,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC;gBACjB,IAAI,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC;YACnB,CAAC;iBAAM,CAAC;gBACN,IAAI,OAAO,CAAC,IAAI,QAAQ;oBAAE,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC;qBAChC,IAAI,OAAO,CAAC,IAAI,WAAW;oBAAE,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC;;oBACxC,IAAI,CAAC,CAAC,GAAG,GAAG,CAAC;gBAClB,IAAI,OAAO,CAAC,IAAI,QAAQ;oBAAE,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC;qBAChC,IAAI,OAAO,CAAC,IAAI,WAAW;oBAAE,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC;;oBACxC,IAAI,CAAC,CAAC,GAAG,GAAG,CAAC;YACpB,CAAC;QACH,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;;;;;QAQI;IACJ,qBAAI,GAAJ,UAAK,CAAS;QACZ,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC;QACX,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;;;;;QAQI;IACJ,qBAAI,GAAJ,UAAK,CAAS;QACZ,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC;QACX,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;;;;QAOI;IACJ,qBAAI,GAAJ;QACE,IAAI,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC;QACjB,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;;;;QAOI;IACJ,qBAAI,GAAJ;QACE,IAAI,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC;QACjB,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;;;;;;;;;QAYI;IACJ,oBAAG,GAAH,UAAI,CAAoB,EAAE,CAAU;QAClC,IAAI,OAAO,CAAC,IAAI,QAAQ,IAAI,OAAO,CAAC,IAAI,QAAQ,EAAE,CAAC;YACjD,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC;YACZ,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC;QACd,CAAC;aAAM,CAAC;YACN,IAAM,KAAK,GAAG,CAAa,CAAC;YAC5B,IAAI,OAAO,KAAK,CAAC,CAAC,IAAI,QAAQ,IAAI,OAAO,KAAK,CAAC,CAAC,IAAI,QAAQ,EAAE,CAAC;gBAC7D,IAAI,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,CAAC;gBAClB,IAAI,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,CAAC;YACpB,CAAC;iBAAM,CAAC;gBACN,IAAI,OAAO,CAAC,IAAI,QAAQ;oBAAE,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC;;oBACjC,MAAM,qBAAc,OAAO,CAAC,6BAA0B,CAAC;gBAC5D,IAAI,OAAO,CAAC,IAAI,QAAQ;oBAAE,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC;;oBACjC,MAAM,qBAAc,OAAO,CAAC,6BAA0B,CAAC;YAC9D,CAAC;QACH,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;;;;;;;;OAWG;IACH,qBAAI,GAAJ,UAAK,MAAgB;QACnB,OAAO,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;IAC1B,CAAC;IAED;;;;;;;;;QASI;IACJ,sBAAK,GAAL,UAAM,OAAe,EAAE,OAAe;QACpC,IAAI,CAAC,CAAC,IAAI,OAAO,CAAC;QAClB,IAAI,CAAC,CAAC,IAAI,OAAO,CAAC;QAClB,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;;;;;QAQI;IACJ,qBAAI,GAAJ,UAAK,OAAe;QAClB,IAAI,CAAC,CAAC,IAAI,OAAO,CAAC;QAClB,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;;;;;QAQI;IACJ,qBAAI,GAAJ,UAAK,OAAe;QAClB,IAAI,CAAC,CAAC,IAAI,OAAO,CAAC;QAClB,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;;;;;;;;;QAYI;IACJ,oBAAG,GAAH,UAAI,CAAoB,EAAE,CAAU;QAClC,IAAI,OAAO,CAAC,IAAI,QAAQ,IAAI,OAAO,CAAC,IAAI,QAAQ,EAAE,CAAC;YACjD,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC;YACZ,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC;QACd,CAAC;aAAM,CAAC;YACN,IAAM,KAAK,GAAG,CAAa,CAAC;YAC5B,IAAI,OAAO,KAAK,CAAC,CAAC,IAAI,QAAQ,IAAI,OAAO,KAAK,CAAC,CAAC,IAAI,QAAQ,EAAE,CAAC;gBAC7D,IAAI,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,CAAC;gBAClB,IAAI,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,CAAC;YACpB,CAAC;iBAAM,CAAC;gBACN,IAAI,OAAO,CAAC,IAAI,QAAQ;oBAAE,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC;;oBACjC,MAAM,qBAAc,OAAO,CAAC,6BAA0B,CAAC;gBAC5D,IAAI,OAAO,CAAC,IAAI,QAAQ;oBAAE,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC;;oBACjC,MAAM,qBAAc,OAAO,CAAC,6BAA0B,CAAC;YAC9D,CAAC;QACH,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;;;;;;QASI;IACJ,sBAAK,GAAL,UAAM,OAAe,EAAE,OAAe;QACpC,IAAI,CAAC,CAAC,IAAI,OAAO,CAAC;QAClB,IAAI,CAAC,CAAC,IAAI,OAAO,CAAC;QAClB,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;;;;;QAQI;IACJ,qBAAI,GAAJ,UAAK,OAAe;QAClB,IAAI,CAAC,CAAC,IAAI,OAAO,CAAC;QAClB,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;;;;;QAQI;IACJ,qBAAI,GAAJ,UAAK,OAAe;QAClB,IAAI,CAAC,CAAC,IAAI,OAAO,CAAC;QAClB,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;;;;;;;QAUI;IACJ,uBAAM,GAAN,UAAO,MAAgB;QACrB,IAAI,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,OAAO,CAAC;QACvD,IAAI,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,OAAO,CAAC;QACvD,IAAI,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC;QACxB,OAAO,MAAM,CAAC;IAChB,CAAC;IAED;;;;;;;QAOI;IACJ,sBAAK,GAAL;QACE,OAAO,IAAI,MAAM,CAAC,IAAI,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC;IACpC,CAAC;IAED;;;;;;;;QAQI;IACJ,yBAAQ,GAAR,UAAS,IAAc;QACrB,iFAAiF;QACjF,OAAO,qBAAS,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC;IACzD,CAAC;IAED;;;;;;;;QAQI;IACJ,sBAAK,GAAL,UAAM,MAAiB;QACrB,IAAM,CAAC,GACL,OAAO,MAAM,KAAK,WAAW;YAC3B,CAAC,CAAC,IAAI,CAAC,EAAE,GAAG,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC;YAC1C,CAAC,CAAC,IAAI,CAAC,EAAE,GAAG,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;QACrE,wBAAwB;QACxB,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IACrC,CAAC;IAED;;;;;;;;;;QAUI;IACJ,2BAAU,GAAV,UAAW,IAAc;QACvB,OAAO,IAAI,MAAM,CAAC,IAAI,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;IACtD,CAAC;IAED;;;;;;;;;;QAUI;IACJ,sBAAK,GAAL,UAAM,MAAc,EAAE,MAAiB;QACrC,OAAO,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,EAAE,MAAM,CAAC,CAAC;IACxD,CAAC;IAED;;;;;;;;;;;OAWG;IACH,qBAAI,GAAJ,UAAK,MAAgB,EAAE,CAAS;QAC9B,IAAI,IAAI,GAAG,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;QACnC,+DAA+D;QAC/D,IAAI,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC;QACrB,IAAI,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC;QACrB,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;;;;;OAQG;IACH,wBAAO,GAAP,UAAQ,MAAgB,EAAE,CAAS;QACjC,IAAI,IAAI,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;QACjC,IAAI,IAAI,GAAG,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;QACnC,IAAI,IAAI,GAAG,EAAE,CAAC,EAAE,IAAI,CAAC,CAAC,GAAG,IAAI,EAAE,CAAC,EAAE,IAAI,CAAC,CAAC,GAAG,IAAI,EAAE,CAAC;QAClD,+DAA+D;QAC/D,IAAI,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC;QACrB,IAAI,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC;QACrB,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;;;;;;;QAUI;IACJ,wBAAO,GAAP,UAAQ,OAAiB,EAAE,MAAiB;QAC1C,IAAI,CAAC,MAAM,IAAI,OAAO,MAAM,KAAK,WAAW,EAAE,CAAC;YAC7C,MAAM,GAAG,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC;QAC1B,CAAC;QACD,IAAI,CAAC,CAAC,GAAG,MAAM,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC;QACpD,IAAI,CAAC,CAAC,GAAG,MAAM,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC;QACpD,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;;;;;;;QAUI;IACJ,uBAAM,GAAN,UAAO,KAAa,EAAE,MAA6B;QACjD,IAAI,CAAC,MAAM,IAAI,OAAO,MAAM,KAAK,WAAW,EAAE,CAAC;YAC7C,MAAM,GAAG,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC;QAC1B,CAAC;QACD,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QACjB,KAAK,IAAI,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC;QACpC,IAAI,GAAG,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,cAAc;QACpD,IAAI,CAAC,CAAC,GAAG,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QAC/B,IAAI,CAAC,CAAC,GAAG,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QAC/B,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QACjB,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;;;;;;;;QAWI;IACJ,+BAAc,GAAd,UAAe,MAAc;QAC3B,IAAI,CAAC,CAAC,IAAI,MAAM,CAAC;QACjB,IAAI,CAAC,CAAC,IAAI,MAAM,CAAC;QACjB,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;;;;QAOI;IACJ,sBAAK,GAAL;QACE,IAAI,CAAC,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAC5B,IAAI,CAAC,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAC5B,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;;;;QAOI;IACJ,oBAAG,GAAH;QACE,IAAI,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC;QACjB,IAAI,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC;QACjB,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;;;;OAOG;IACH,oBAAG,GAAH;QACE,IAAI,CAAC,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAC1B,IAAI,CAAC,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAC1B,OAAO,IAAI,CAAC;IACd,CAAC;IAED,8CAA8C;IAC9C;;;;;;;;QAQI;IACJ,0BAAS,GAAT;QACE,+DAA+D;QAC/D,OAAO,eAAM,CAAC,mBAAmB,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;IAC5C,CAAC;IACD,4CAA4C;IAE5C;;;;;;;;;OASG;IACH,iCAAgB,GAAhB,UAA8C,MAAS,EAAE,MAAS;QAChE,8CAA8C;QAC9C,IAAI,KAAK,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;QAClC,IAAI,KAAK,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;QAClC,IAAI,KAAK,GAAG,KAAK,EAAE,CAAC;YAClB,OAAO,MAAM,CAAC;QAChB,CAAC;aAAM,CAAC;YACN,OAAO,MAAM,CAAC;QAChB,CAAC;IACH,CAAC;IAED;;;;;;;;;OASG;IACH,gCAAe,GAAf,UAA6C,MAAS,EAAE,MAAS;QAC/D,IAAI,KAAK,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;QAClC,IAAI,KAAK,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;QAClC,IAAI,KAAK,GAAG,KAAK,EAAE,CAAC;YAClB,OAAO,MAAM,CAAC;QAChB,CAAC;aAAM,CAAC;YACN,OAAO,MAAM,CAAC;QAChB,CAAC;IACH,CAAC;IAED;;;;;;;QAOI;IACJ,yBAAQ,GAAR,UAAS,SAAkB;QACzB,IAAI,OAAO,SAAS,KAAK,WAAW,EAAE,CAAC;YACrC,OAAO,GAAG,GAAG,IAAI,CAAC,CAAC,GAAG,GAAG,GAAG,IAAI,CAAC,CAAC,GAAG,GAAG,CAAC;QAC3C,CAAC;aAAM,CAAC;YACN,OAAO,GAAG,GAAG,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,GAAG,GAAG,GAAG,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,GAAG,GAAG,CAAC;QACjF,CAAC;IACH,CAAC;IAED;;;;OAIG;IACH,wBAAO,GAAP;QACE,IAAI,CAAC,SAAS,CAAC,kBAAkB,EAAE,CAAC;QACpC,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC;IAC1B,CAAC;IAED;;;;;QAKI;IACG,mBAAY,GAAnB,UAAoB,QAA0C;QAC5D,OAAO,IAAI,MAAM,CACf,QAAQ,CAAC,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAClE,QAAQ,CAAC,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CACnE,CAAC;IACJ,CAAC;IArqBuB,WAAI,GAAG,IAAI,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,AAAnB,CAAoB;IAiBhD;;;;;QAKI;IACY,cAAO,GAAG,MAAM,AAAT,CAAU;IAgpB1B,YAAK,GAAG;QACb;;;;;;;;;;;;;;;;;;;;;;;;YAwBI;QACJ,0DAA0D;QAC1D,cAAc,EAAE,UAAC,EAAY,EAAE,EAAY,EAAE,OAAe,EAAE,MAAc,EAAE,MAAc;YAC1F,OAAO,CAAC,IAAI,CAAC,0GAA0G,CAAC,CAAC;YACzH,IAAI,KAAK,GAAW,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,GAAG,MAAM,EAAE,CAAC,EAAE,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,CAAC;YAE/E,IAAI,QAAQ,GAAkB,EAAE,CAAC;YACjC,QAAQ,CAAC,IAAI,CAAC,IAAI,MAAM,CAAC,EAAE,CAAC,CAAC,GAAG,MAAM,GAAG,OAAO,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,MAAM,GAAG,OAAO,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;YAChH,QAAQ,CAAC,IAAI,CACX,IAAI,MAAM,CACR,EAAE,CAAC,CAAC,GAAG,MAAM,GAAG,OAAO,GAAG,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,GAAG,IAAI,CAAC,EAAE,GAAG,CAAC,CAAC,EAC9D,EAAE,CAAC,CAAC,GAAG,MAAM,GAAG,OAAO,GAAG,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,GAAG,IAAI,CAAC,EAAE,GAAG,CAAC,CAAC,CAC/D,CACF,CAAC;YACF,QAAQ,CAAC,IAAI,CAAC,IAAI,MAAM,CAAC,EAAE,CAAC,CAAC,GAAG,MAAM,EAAE,EAAE,CAAC,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC;YACxD,QAAQ,CAAC,IAAI,CACX,IAAI,MAAM,CACR,EAAE,CAAC,CAAC,GAAG,MAAM,GAAG,OAAO,GAAG,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,GAAG,IAAI,CAAC,EAAE,GAAG,CAAC,CAAC,EAC9D,EAAE,CAAC,CAAC,GAAG,MAAM,GAAG,OAAO,GAAG,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,GAAG,IAAI,CAAC,EAAE,GAAG,CAAC,CAAC,CAC/D,CACF,CAAC;YAEF,OAAO,QAAQ,CAAC;QAClB,CAAC;QAED;;;;;WAKG;QACH,WAAW,EAAE,UAAC,QAAyB,EAAE,SAAkB;YACzD,OAAO,IAAI,CAAC,SAAS,CACnB,QAAQ,CAAC,GAAG,CAAC,UAAU,IAAI;gBACzB,OAAO,OAAO,SAAS,KAAK,SAAS;oBACnC,CAAC,CAAC,EAAE,CAAC,EAAE,IAAI,CAAC,CAAC,EAAE,CAAC,EAAE,IAAI,CAAC,CAAC,EAAE;oBAC1B,CAAC,CAAC,EAAE,CAAC,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC;YACrF,CAAC,CAAC,CACH,CAAC;QACJ,CAAC;KACF,AAjEW,CAiEV;IACJ,aAAC;CAAA,AA1uBD,IA0uBC;AA1uBY,wBAAM"}
@@ -0,0 +1,21 @@
1
+ /**
2
+ * Calculate the minimal containing circle from a set of points.
3
+ *
4
+ * The number of points must be at least 2. Otherwise the function returns null.
5
+ *
6
+ * Inspired by https://github.com/rowanwins/smallest-enclosing-circle.
7
+ *
8
+ * @param {XYCoords[]} points
9
+ * @returns
10
+ */
11
+ import { Circle } from "../../Circle";
12
+ import { XYCoords } from "../../interfaces";
13
+ /**
14
+ * Calculate the minimal containing circle from a set of points.
15
+ *
16
+ * The number of points must be at least 2. Otherwise the function returns null.
17
+ *
18
+ * @param {XYCoords[]} points
19
+ * @returns {Circle | null} The minimal containing circle or null if the point count is lower than 2.
20
+ */
21
+ export declare const minimalContainingCircleFromPoints: (points: XYCoords[]) => Circle | null;
@@ -0,0 +1,73 @@
1
+ "use strict";
2
+ /**
3
+ * Calculate the minimal containing circle from a set of points.
4
+ *
5
+ * The number of points must be at least 2. Otherwise the function returns null.
6
+ *
7
+ * Inspired by https://github.com/rowanwins/smallest-enclosing-circle.
8
+ *
9
+ * @param {XYCoords[]} points
10
+ * @returns
11
+ */
12
+ Object.defineProperty(exports, "__esModule", { value: true });
13
+ exports.minimalContainingCircleFromPoints = void 0;
14
+ var Circle_1 = require("../../Circle");
15
+ var Triangle_1 = require("../../Triangle");
16
+ var VertTuple_1 = require("../../VertTuple");
17
+ var Vertex_1 = require("../../Vertex");
18
+ /**
19
+ * Calculate the minimal containing circle from a set of points.
20
+ *
21
+ * The number of points must be at least 2. Otherwise the function returns null.
22
+ *
23
+ * @param {XYCoords[]} points
24
+ * @returns {Circle | null} The minimal containing circle or null if the point count is lower than 2.
25
+ */
26
+ var minimalContainingCircleFromPoints = function (points) {
27
+ if (points.length <= 1) {
28
+ return null;
29
+ }
30
+ var circleObject = wetzlsAlgorithm(points);
31
+ return new Circle_1.Circle(new Vertex_1.Vertex(circleObject.center.x, circleObject.center.y), circleObject.radius);
32
+ };
33
+ exports.minimalContainingCircleFromPoints = minimalContainingCircleFromPoints;
34
+ /**
35
+ * This initiates the actual algorithm but return a shallow circle representation.
36
+ *
37
+ * @param points
38
+ * @returns
39
+ */
40
+ var wetzlsAlgorithm = function (points) {
41
+ return minimumContainingCircle(points, points.length, [], 0);
42
+ };
43
+ /**
44
+ * Pre: points.length >= 2
45
+ * @param {Vertex[]} points
46
+ * @param n
47
+ * @param boundary
48
+ * @param boundaryLength
49
+ * @returns
50
+ */
51
+ var minimumContainingCircle = function (points, n, boundary, boundaryLength) {
52
+ if (boundaryLength === 3) {
53
+ return Triangle_1.Triangle.utils.calcCircumcircle(boundary[0], boundary[1], boundary[2]);
54
+ }
55
+ else if (n === 1 && boundaryLength === 0) {
56
+ return { center: { x: points[0].x, y: points[0].y }, radius: 0 };
57
+ }
58
+ else if (n === 0 && boundaryLength === 2) {
59
+ return VertTuple_1.VertTuple.vtutils.calcCircumcircle(boundary[0], boundary[1]);
60
+ }
61
+ else if (n === 1 && boundaryLength === 1) {
62
+ return VertTuple_1.VertTuple.vtutils.calcCircumcircle(boundary[0], points[0]);
63
+ }
64
+ else {
65
+ var localCircle = minimumContainingCircle(points, n - 1, boundary, boundaryLength);
66
+ if (!Circle_1.Circle.circleUtils.containsPoint(localCircle.center, localCircle.radius, points[n - 1])) {
67
+ boundary[boundaryLength++] = points[n - 1];
68
+ return minimumContainingCircle(points, n - 1, boundary, boundaryLength);
69
+ }
70
+ return localCircle;
71
+ }
72
+ };
73
+ //# sourceMappingURL=minimalContainingCircleFromPoints.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"minimalContainingCircleFromPoints.js","sourceRoot":"","sources":["../../../ts/utils/algorithms/minimalContainingCircleFromPoints.ts"],"names":[],"mappings":";AAAA;;;;;;;;;GASG;;;AAEH,uCAA+C;AAC/C,2CAA0C;AAC1C,6CAA4C;AAC5C,uCAAsC;AAGtC;;;;;;;GAOG;AACI,IAAM,iCAAiC,GAAG,UAAC,MAAkB;IAClE,IAAI,MAAM,CAAC,MAAM,IAAI,CAAC,EAAE,CAAC;QACvB,OAAO,IAAI,CAAC;IACd,CAAC;IACD,IAAM,YAAY,GAAG,eAAe,CAAC,MAAM,CAAC,CAAC;IAC7C,OAAO,IAAI,eAAM,CAAC,IAAI,eAAM,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC,EAAE,YAAY,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,YAAY,CAAC,MAAM,CAAC,CAAC;AACnG,CAAC,CAAC;AANW,QAAA,iCAAiC,qCAM5C;AAEF;;;;;GAKG;AACH,IAAM,eAAe,GAAG,UAAC,MAAkB;IACzC,OAAO,uBAAuB,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC;AAC/D,CAAC,CAAC;AAEF;;;;;;;GAOG;AACH,IAAM,uBAAuB,GAAG,UAAC,MAAkB,EAAE,CAAS,EAAE,QAAoB,EAAE,cAAsB;IAC1G,IAAI,cAAc,KAAK,CAAC,EAAE,CAAC;QACzB,OAAO,mBAAQ,CAAC,KAAK,CAAC,gBAAgB,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;IAChF,CAAC;SAAM,IAAI,CAAC,KAAK,CAAC,IAAI,cAAc,KAAK,CAAC,EAAE,CAAC;QAC3C,OAAO,EAAE,MAAM,EAAE,EAAE,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE,CAAC;IACnE,CAAC;SAAM,IAAI,CAAC,KAAK,CAAC,IAAI,cAAc,KAAK,CAAC,EAAE,CAAC;QAC3C,OAAO,qBAAS,CAAC,OAAO,CAAC,gBAAgB,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;IACtE,CAAC;SAAM,IAAI,CAAC,KAAK,CAAC,IAAI,cAAc,KAAK,CAAC,EAAE,CAAC;QAC3C,OAAO,qBAAS,CAAC,OAAO,CAAC,gBAAgB,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;IACpE,CAAC;SAAM,CAAC;QACN,IAAM,WAAW,GAAY,uBAAuB,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,EAAE,QAAQ,EAAE,cAAc,CAAC,CAAC;QAC9F,IAAI,CAAC,eAAM,CAAC,WAAW,CAAC,aAAa,CAAC,WAAW,CAAC,MAAM,EAAE,WAAW,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;YAC7F,QAAQ,CAAC,cAAc,EAAE,CAAC,GAAG,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;YAC3C,OAAO,uBAAuB,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,EAAE,QAAQ,EAAE,cAAc,CAAC,CAAC;QAC1E,CAAC;QACD,OAAO,WAAW,CAAC;IACrB,CAAC;AACH,CAAC,CAAC"}
@@ -0,0 +1,21 @@
1
+ /**
2
+ * Calculate the minimal containing circle from a set of points.
3
+ *
4
+ * The number of points must be at least 2. Otherwise the function returns null.
5
+ *
6
+ * Inspired by https://github.com/rowanwins/smallest-enclosing-circle.
7
+ *
8
+ * @param {XYCoords[]} points
9
+ * @returns
10
+ */
11
+ import { Circle } from "../../Circle";
12
+ import { XYCoords } from "../../interfaces";
13
+ /**
14
+ * Calculate the minimal containing circle from a set of points.
15
+ *
16
+ * The number of points must be at least 2. Otherwise the function returns null.
17
+ *
18
+ * @param {XYCoords[]} points
19
+ * @returns {Circle | null} The minimal containing circle or null if the point count is lower than 2.
20
+ */
21
+ export declare const minimalEnclosingCircleFromPoints: (points: XYCoords[]) => Circle | null;
@@ -0,0 +1,73 @@
1
+ "use strict";
2
+ /**
3
+ * Calculate the minimal containing circle from a set of points.
4
+ *
5
+ * The number of points must be at least 2. Otherwise the function returns null.
6
+ *
7
+ * Inspired by https://github.com/rowanwins/smallest-enclosing-circle.
8
+ *
9
+ * @param {XYCoords[]} points
10
+ * @returns
11
+ */
12
+ Object.defineProperty(exports, "__esModule", { value: true });
13
+ exports.minimalEnclosingCircleFromPoints = void 0;
14
+ var Circle_1 = require("../../Circle");
15
+ var Triangle_1 = require("../../Triangle");
16
+ var VertTuple_1 = require("../../VertTuple");
17
+ var Vertex_1 = require("../../Vertex");
18
+ /**
19
+ * Calculate the minimal containing circle from a set of points.
20
+ *
21
+ * The number of points must be at least 2. Otherwise the function returns null.
22
+ *
23
+ * @param {XYCoords[]} points
24
+ * @returns {Circle | null} The minimal containing circle or null if the point count is lower than 2.
25
+ */
26
+ var minimalEnclosingCircleFromPoints = function (points) {
27
+ if (points.length <= 1) {
28
+ return null;
29
+ }
30
+ var circleObject = wetzlsAlgorithm(points);
31
+ return new Circle_1.Circle(new Vertex_1.Vertex(circleObject.center.x, circleObject.center.y), circleObject.radius);
32
+ };
33
+ exports.minimalEnclosingCircleFromPoints = minimalEnclosingCircleFromPoints;
34
+ /**
35
+ * This initiates the actual algorithm but return a shallow circle representation.
36
+ *
37
+ * @param points
38
+ * @returns
39
+ */
40
+ var wetzlsAlgorithm = function (points) {
41
+ return minimumContainingCircle(points, points.length, [], 0);
42
+ };
43
+ /**
44
+ * Pre: points.length >= 2
45
+ * @param {Vertex[]} points
46
+ * @param n
47
+ * @param boundary
48
+ * @param boundaryLength
49
+ * @returns
50
+ */
51
+ var minimumContainingCircle = function (points, n, boundary, boundaryLength) {
52
+ if (boundaryLength === 3) {
53
+ return Triangle_1.Triangle.utils.calcCircumcircle(boundary[0], boundary[1], boundary[2]);
54
+ }
55
+ else if (n === 1 && boundaryLength === 0) {
56
+ return { center: { x: points[0].x, y: points[0].y }, radius: 0 };
57
+ }
58
+ else if (n === 0 && boundaryLength === 2) {
59
+ return VertTuple_1.VertTuple.vtutils.calcCircumcircle(boundary[0], boundary[1]);
60
+ }
61
+ else if (n === 1 && boundaryLength === 1) {
62
+ return VertTuple_1.VertTuple.vtutils.calcCircumcircle(boundary[0], points[0]);
63
+ }
64
+ else {
65
+ var localCircle = minimumContainingCircle(points, n - 1, boundary, boundaryLength);
66
+ if (!Circle_1.Circle.circleUtils.containsPoint(localCircle.center, localCircle.radius, points[n - 1])) {
67
+ boundary[boundaryLength++] = points[n - 1];
68
+ return minimumContainingCircle(points, n - 1, boundary, boundaryLength);
69
+ }
70
+ return localCircle;
71
+ }
72
+ };
73
+ //# sourceMappingURL=minimalEnclosingCircleFromPoints.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"minimalEnclosingCircleFromPoints.js","sourceRoot":"","sources":["../../../ts/utils/algorithms/minimalEnclosingCircleFromPoints.ts"],"names":[],"mappings":";AAAA;;;;;;;;;GASG;;;AAEH,uCAA+C;AAC/C,2CAA0C;AAC1C,6CAA4C;AAC5C,uCAAsC;AAGtC;;;;;;;GAOG;AACI,IAAM,gCAAgC,GAAG,UAAC,MAAkB;IACjE,IAAI,MAAM,CAAC,MAAM,IAAI,CAAC,EAAE,CAAC;QACvB,OAAO,IAAI,CAAC;IACd,CAAC;IACD,IAAM,YAAY,GAAG,eAAe,CAAC,MAAM,CAAC,CAAC;IAC7C,OAAO,IAAI,eAAM,CAAC,IAAI,eAAM,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC,EAAE,YAAY,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,YAAY,CAAC,MAAM,CAAC,CAAC;AACnG,CAAC,CAAC;AANW,QAAA,gCAAgC,oCAM3C;AAEF;;;;;GAKG;AACH,IAAM,eAAe,GAAG,UAAC,MAAkB;IACzC,OAAO,uBAAuB,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC;AAC/D,CAAC,CAAC;AAEF;;;;;;;GAOG;AACH,IAAM,uBAAuB,GAAG,UAAC,MAAkB,EAAE,CAAS,EAAE,QAAoB,EAAE,cAAsB;IAC1G,IAAI,cAAc,KAAK,CAAC,EAAE,CAAC;QACzB,OAAO,mBAAQ,CAAC,KAAK,CAAC,gBAAgB,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;IAChF,CAAC;SAAM,IAAI,CAAC,KAAK,CAAC,IAAI,cAAc,KAAK,CAAC,EAAE,CAAC;QAC3C,OAAO,EAAE,MAAM,EAAE,EAAE,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE,CAAC;IACnE,CAAC;SAAM,IAAI,CAAC,KAAK,CAAC,IAAI,cAAc,KAAK,CAAC,EAAE,CAAC;QAC3C,OAAO,qBAAS,CAAC,OAAO,CAAC,gBAAgB,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;IACtE,CAAC;SAAM,IAAI,CAAC,KAAK,CAAC,IAAI,cAAc,KAAK,CAAC,EAAE,CAAC;QAC3C,OAAO,qBAAS,CAAC,OAAO,CAAC,gBAAgB,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;IACpE,CAAC;SAAM,CAAC;QACN,IAAM,WAAW,GAAY,uBAAuB,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,EAAE,QAAQ,EAAE,cAAc,CAAC,CAAC;QAC9F,IAAI,CAAC,eAAM,CAAC,WAAW,CAAC,aAAa,CAAC,WAAW,CAAC,MAAM,EAAE,WAAW,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;YAC7F,QAAQ,CAAC,cAAc,EAAE,CAAC,GAAG,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;YAC3C,OAAO,uBAAuB,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,EAAE,QAAQ,EAAE,cAAc,CAAC,CAAC;QAC1E,CAAC;QACD,OAAO,WAAW,CAAC;IACrB,CAAC;AACH,CAAC,CAAC"}
@@ -0,0 +1,21 @@
1
+ /**
2
+ * Calculate the minimal containing circle from a set of points.
3
+ *
4
+ * The number of points must be at least 2. Otherwise the function returns null.
5
+ *
6
+ * Inspired by https://github.com/rowanwins/smallest-enclosing-circle.
7
+ *
8
+ * @param {XYCoords[]} points
9
+ * @returns
10
+ */
11
+ import { Circle } from "../../Circle";
12
+ import { XYCoords } from "../../interfaces";
13
+ /**
14
+ * Calculate the minimal containing circle from a set of points.
15
+ *
16
+ * The number of points must be at least 2. Otherwise the function returns null.
17
+ *
18
+ * @param {XYCoords[]} points
19
+ * @returns {Circle | null} The minimal containing circle or null if the point count is lower than 2.
20
+ */
21
+ export declare const pointsMinimalContainingCircle: (points: XYCoords[]) => Circle | null;