copper3d 3.6.2 → 3.6.4

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 (54) hide show
  1. package/dist/Loader/copperNrrdLoader.js +1 -1
  2. package/dist/Loader/copperNrrdLoader.js.map +1 -1
  3. package/dist/Scene/copperScene.d.ts +4 -4
  4. package/dist/Scene/copperScene.js +4 -4
  5. package/dist/Scene/copperScene.js.map +1 -1
  6. package/dist/Utils/surfaceAnnotation/MeshGraph.d.ts +12 -10
  7. package/dist/Utils/surfaceAnnotation/MeshGraph.js +14 -12
  8. package/dist/Utils/surfaceAnnotation/MeshGraph.js.map +1 -1
  9. package/dist/Utils/surfaceAnnotation/SurfaceAnnotator.d.ts +48 -28
  10. package/dist/Utils/surfaceAnnotation/SurfaceAnnotator.js +76 -50
  11. package/dist/Utils/surfaceAnnotation/SurfaceAnnotator.js.map +1 -1
  12. package/dist/Utils/surfaceAnnotation/annotationStore.d.ts +4 -4
  13. package/dist/Utils/surfaceAnnotation/annotationStore.js +4 -4
  14. package/dist/Utils/surfaceAnnotation/annotationStore.js.map +1 -1
  15. package/dist/Utils/surfaceAnnotation/contourRender.d.ts +1 -1
  16. package/dist/Utils/surfaceAnnotation/contourRender.js +16 -11
  17. package/dist/Utils/surfaceAnnotation/contourRender.js.map +1 -1
  18. package/dist/Utils/surfaceAnnotation/geodesicContour.d.ts +11 -10
  19. package/dist/Utils/surfaceAnnotation/geodesicContour.js +16 -15
  20. package/dist/Utils/surfaceAnnotation/geodesicContour.js.map +1 -1
  21. package/dist/Utils/surfaceAnnotation/pointMarkers.d.ts +3 -2
  22. package/dist/Utils/surfaceAnnotation/pointMarkers.js +6 -2
  23. package/dist/Utils/surfaceAnnotation/pointMarkers.js.map +1 -1
  24. package/dist/Utils/surfaceAnnotation/raycastSurface.d.ts +3 -2
  25. package/dist/Utils/surfaceAnnotation/raycastSurface.js +71 -5
  26. package/dist/Utils/surfaceAnnotation/raycastSurface.js.map +1 -1
  27. package/dist/Utils/surfaceAnnotation/strokeContour.d.ts +9 -6
  28. package/dist/Utils/surfaceAnnotation/strokeContour.js +15 -10
  29. package/dist/Utils/surfaceAnnotation/strokeContour.js.map +1 -1
  30. package/dist/Utils/surfaceAnnotation/types.d.ts +5 -5
  31. package/dist/Utils/surfaceAnnotation/types.js +2 -2
  32. package/dist/Utils/surfaceAnnotation/types.js.map +1 -1
  33. package/dist/Utils/texture2d.js +4 -2
  34. package/dist/Utils/texture2d.js.map +1 -1
  35. package/dist/Utils/workers/reformatSaveDataWorker.js +2 -2
  36. package/dist/Utils/workers/reformatSaveDataWorker.js.map +1 -1
  37. package/dist/bundle.esm.js +238 -129
  38. package/dist/bundle.umd.js +238 -129
  39. package/dist/index.d.ts +1 -1
  40. package/dist/index.js +1 -1
  41. package/dist/lib/three-vignette.js +8 -2
  42. package/dist/lib/three-vignette.js.map +1 -1
  43. package/dist/types/Scene/copperScene.d.ts +4 -4
  44. package/dist/types/Utils/surfaceAnnotation/MeshGraph.d.ts +12 -10
  45. package/dist/types/Utils/surfaceAnnotation/SurfaceAnnotator.d.ts +48 -28
  46. package/dist/types/Utils/surfaceAnnotation/annotationStore.d.ts +4 -4
  47. package/dist/types/Utils/surfaceAnnotation/contourRender.d.ts +1 -1
  48. package/dist/types/Utils/surfaceAnnotation/geodesicContour.d.ts +11 -10
  49. package/dist/types/Utils/surfaceAnnotation/pointMarkers.d.ts +3 -2
  50. package/dist/types/Utils/surfaceAnnotation/raycastSurface.d.ts +3 -2
  51. package/dist/types/Utils/surfaceAnnotation/strokeContour.d.ts +9 -6
  52. package/dist/types/Utils/surfaceAnnotation/types.d.ts +5 -5
  53. package/dist/types/index.d.ts +1 -1
  54. package/package.json +1 -1
@@ -205,7 +205,7 @@ export function copperNrrdTexture3dLoader(url, scene, container, callback) {
205
205
  mesh.position.y += mesh.position.y - center.y;
206
206
  mesh.position.z += mesh.position.z - center.z;
207
207
  const boundingBox = new THREE.Box3().setFromObject(mesh);
208
- // 获取边界框的尺寸
208
+ // Get the size of the bounding box
209
209
  const size_ = new THREE.Vector3();
210
210
  boundingBox.getSize(size_);
211
211
  scene.add(mesh);
@@ -1 +1 @@
1
- {"version":3,"file":"copperNrrdLoader.js","sourceRoot":"","sources":["../../src/Loader/copperNrrdLoader.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"copperNrrdLoader.js","sourceRoot":"","sources":["../../src/Loader/copperNrrdLoader.ts"],"names":[],"mappings":"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"}
@@ -24,13 +24,13 @@ export declare class copperScene extends baseScene {
24
24
  }): void;
25
25
  loadVtk(url: string): void;
26
26
  /**
27
- * 在给定模型表面创建标注器( contour / 放点 / 导出坐标)
28
- * target 可为单个 Mesh,或 Group/Object3D(自动选顶点数最多的 mesh)
29
- * 复用本 scene camera / container / controls;几何非索引时内部自动焊接索引化。
27
+ * Create an annotator on the surface of a given model (draw contours / place points / export coordinates).
28
+ * target can be a single Mesh, or a Group/Object3D (the mesh with the most vertices is chosen automatically).
29
+ * Reuses this scene's camera / container / controls; non-indexed geometry is welded and indexed automatically.
30
30
  */
31
31
  createSurfaceAnnotator(target: THREE.Mesh | THREE.Object3D, opts?: Omit<SurfaceAnnotatorOptions, "scene" | "camera" | "container" | "controls" | "mesh">): SurfaceAnnotator;
32
32
  private pickAnnotatableMesh;
33
- /** 释放本 scene 创建的所有标注器(移除事件监听与标注对象) */
33
+ /** Dispose all annotators created on this scene (removes event listeners and annotation objects). */
34
34
  disposeSurfaceAnnotators(): void;
35
35
  loadVtks(models: Array<vtkModels>): void;
36
36
  /**
@@ -98,9 +98,9 @@ export class copperScene extends baseScene {
98
98
  copperVtkLoader(url, this.scene, this.content);
99
99
  }
100
100
  /**
101
- * 在给定模型表面创建标注器( contour / 放点 / 导出坐标)
102
- * target 可为单个 Mesh,或 Group/Object3D(自动选顶点数最多的 mesh)
103
- * 复用本 scene camera / container / controls;几何非索引时内部自动焊接索引化。
101
+ * Create an annotator on the surface of a given model (draw contours / place points / export coordinates).
102
+ * target can be a single Mesh, or a Group/Object3D (the mesh with the most vertices is chosen automatically).
103
+ * Reuses this scene's camera / container / controls; non-indexed geometry is welded and indexed automatically.
104
104
  */
105
105
  createSurfaceAnnotator(target, opts) {
106
106
  const mesh = this.pickAnnotatableMesh(target);
@@ -128,7 +128,7 @@ export class copperScene extends baseScene {
128
128
  });
129
129
  return best;
130
130
  }
131
- /** 释放本 scene 创建的所有标注器(移除事件监听与标注对象) */
131
+ /** Dispose all annotators created on this scene (removes event listeners and annotation objects). */
132
132
  disposeSurfaceAnnotators() {
133
133
  this.surfaceAnnotators.forEach((a) => a.dispose());
134
134
  this.surfaceAnnotators = [];
@@ -1 +1 @@
1
- {"version":3,"file":"copperScene.js","sourceRoot":"","sources":["../../src/Scene/copperScene.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"copperScene.js","sourceRoot":"","sources":["../../src/Scene/copperScene.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAE,yBAAyB,EAAE,MAAM,uCAAuC,CAAC;AAIlF,OAAO,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAC;AAC9D,OAAO,EAAE,aAAa,EAAE,MAAM,2CAA2C,CAAC;AAE1E,OAAO,EAAE,eAAe,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAC;AAC/E,OAAO,EAAE,qBAAqB,EAAE,MAAM,oBAAoB,CAAC;AAC3D,OAAO,EAAE,iBAAiB,EAAE,MAAM,6BAA6B,CAAC;AAChE,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AACpE,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAExC,OAAO,EAAE,iBAAiB,EAAE,MAAM,+CAA+C,CAAC;AAOlF,OAAO,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAC;AAG9D,MAAM,OAAO,WAAY,SAAQ,SAAS;IAUxC,eAAe;IAEf,YACE,SAAyB,EACzB,QAA6B,EAC7B,GAAsB;QAEtB,KAAK,CAAC,SAAS,EAAE,QAAQ,EAAE,GAAG,CAAC,CAAC;QAhBlC,UAAK,GAAgB,IAAI,KAAK,CAAC,KAAK,EAAE,CAAC;QAEvC,6BAA6B;QAErB,UAAK,GAAgC,IAAI,CAAC;QAC1C,aAAQ,GAAW,GAAG,CAAC;QACvB,eAAU,GAAY,KAAK,CAAC;QAE5B,sBAAiB,GAAuB,EAAE,CAAC;QAUjD,IAAI,CAAA,GAAG,aAAH,GAAG,uBAAH,GAAG,CAAE,QAAQ,MAAK,WAAW,EAAE;YACjC,IAAI,CAAC,QAAQ,GAAG,IAAI,iBAAiB,CACnC,IAAI,CAAC,MAAM,EACX,IAAI,CAAC,QAAQ,CAAC,UAAU,CACzB,CAAC;SACH;aAAM,IAAI,CAAA,GAAG,aAAH,GAAG,uBAAH,GAAG,CAAE,QAAQ,MAAK,OAAO,EAAE;YACpC,IAAI,CAAC,QAAQ,GAAG,IAAI,aAAa,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;SAC1E;aAAM;YACL,IAAI,CAAC,QAAQ,GAAG,IAAI,yBAAyB,CAC3C,IAAI,CAAC,MAAM,EACX,IAAI,CAAC,QAAQ,CAAC,UAAU,CACzB,CAAC;SACH;QAED,IAAI,CAAC,QAAQ,CAAC,QAAQ,GAAG,CAAC,CAAC;QAC3B,IAAI,CAAC,QAAQ,CAAC,WAAW,GAAG,CAAC,CAAC;QAC9B,MAAM,CAAC,gBAAgB,CAAC,QAAQ,EAAE,IAAI,CAAC,cAAc,EAAE,KAAK,CAAC,CAAC;IAChE,CAAC;IAED,QAAQ,CAAC,GAAW,EAAE,QAAyC;QAC7D,MAAM,MAAM,GAAG,gBAAgB,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QAE/C,MAAM,CAAC,IAAI,CACT,GAAG,EACH,CAAC,IAAU,EAAE,EAAE;YACb,MAAM,GAAG,GAAG,IAAI,KAAK,CAAC,IAAI,EAAE,CAAC,aAAa,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YACvD,MAAM,IAAI,GAAG,GAAG,CAAC,OAAO,CAAC,IAAI,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC;YACvD,MAAM,MAAM,GAAG,GAAG,CAAC,SAAS,CAAC,IAAI,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;YAElD,IAAI,CAAC,QAAQ,CAAC,WAAW,GAAG,IAAI,GAAG,EAAE,CAAC;YACtC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,IAAI,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC;YAC1D,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,IAAI,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC;YAC1D,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,IAAI,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC;YAE1D,IAAI,CAAC,IAAI,CAAC,kBAAkB,EAAE;gBAC5B,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;gBAClC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,IAAI,IAAI,GAAG,GAAG,CAAC;gBACrC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,IAAI,IAAI,GAAG,GAAG,CAAC;gBACrC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,IAAI,IAAI,GAAG,GAAG,CAAC;gBACrC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;gBAC3B,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,YAAY,CAChC,IAAI,CAAC,MAAiC,EACtC,CAAC,MAAM,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC,CAC/B,CAAC;aACH;YACD,IAAI,CAAC,KAAK,GAAG,IAAI,KAAK,CAAC,cAAc,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YAClD,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,CAAsB,EAAE,KAAa,EAAE,EAAE;;gBAChE,IAAI,KAAK,KAAK,CAAC;oBAAE,IAAI,CAAC,UAAU,GAAG,MAAA,IAAI,CAAC,KAAK,0CAAE,UAAU,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC;;oBAC/D,MAAA,IAAI,CAAC,KAAK,0CAAE,UAAU,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC;YACxC,CAAC,CAAC,CAAC;YACH,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC;YAC1B,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YACpC,IAAI,CAAC,aAAa,CAAC,UAAU,GAAG,IAAI,CAAC,UAAU,CAAC;YAChD,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YAC3B,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC;YACvB,QAAQ,IAAI,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACnC,CAAC,EACD,CAAC,KAAK,EAAE,EAAE;YACR,sBAAsB;QACxB,CAAC,CACF,CAAC;IACJ,CAAC;IACD,WAAW,CACT,GAAW,EACX,QAAsC,EACtC,IAAmD;QAEnD,MAAM,MAAM,GAAG,gBAAgB,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QAC/C,MAAM,CAAC,IAAI,CACT,GAAG,EACH,CAAC,GAAS,EAAE,EAAE;YACZ,MAAM,OAAO,GAAG,GAAG,CAAC,KAAK,CAAC;YAE1B,kDAAkD;YAClD,IAAI,CAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,eAAe,MAAK,KAAK,EAAE;gBACnC,OAAO,CAAC,QAAQ,CAAC,CAAC,KAAK,EAAE,EAAE;oBACzB,IAAK,KAAoB,CAAC,MAAM,EAAE;wBAChC,MAAM,IAAI,GAAG,KAAmB,CAAC;wBACjC,MAAM,GAAG,GAAG,IAAI,CAAC,QAAsC,CAAC;wBACxD,IAAI,GAAG,CAAC,sBAAsB,EAAE;4BAC9B,GAAG,CAAC,SAAS,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;4BAC9C,GAAG,CAAC,SAAS,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;4BAC9C,GAAG,CAAC,eAAe,GAAG,GAAG,CAAC;4BAC1B,GAAG,CAAC,IAAI,GAAG,KAAK,CAAC,UAAU,CAAC;4BAC5B,GAAG,CAAC,WAAW,GAAG,IAAI,CAAC;yBACxB;qBACF;gBACH,CAAC,CAAC,CAAC;aACJ;YAED,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;YACxB,CAAC,CAAC,QAAQ,IAAI,QAAQ,CAAC,OAAO,CAAC,CAAC;QAClC,CAAC,EACD,CAAC,GAAQ,EAAE,EAAE,GAAE,CAAC,EAChB,CAAC,KAAU,EAAE,EAAE;YACb,OAAO,CAAC,GAAG,CAAC,qBAAqB,EAAE,KAAK,CAAC,CAAC;QAC5C,CAAC,CACF,CAAC;IACJ,CAAC;IACD,OAAO,CAAC,GAAW;QACjB,eAAe,CAAC,GAAG,EAAE,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;IACjD,CAAC;IAED;;;;OAIG;IACH,sBAAsB,CACpB,MAAmC,EACnC,IAGC;QAED,MAAM,IAAI,GAAG,IAAI,CAAC,mBAAmB,CAAC,MAAM,CAAC,CAAC;QAC9C,IAAI,CAAC,IAAI;YACP,MAAM,IAAI,KAAK,CAAC,iDAAiD,CAAC,CAAC;QACrE,MAAM,SAAS,GAAG,IAAI,gBAAgB,iBACpC,KAAK,EAAE,IAAI,CAAC,KAAK,EACjB,MAAM,EAAE,IAAI,CAAC,MAAiC,EAC9C,SAAS,EAAE,IAAI,CAAC,SAAS,EACzB,QAAQ,EAAE,IAAI,CAAC,QAA2C,EAC1D,IAAI,IACD,CAAC,IAAI,aAAJ,IAAI,cAAJ,IAAI,GAAI,EAAE,CAAC,EACf,CAAC;QACH,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QACvC,OAAO,SAAS,CAAC;IACnB,CAAC;IAEO,mBAAmB,CAAC,MAAsB;QAChD,IAAK,MAAqB,CAAC,MAAM;YAAE,OAAO,MAAoB,CAAC;QAC/D,IAAI,IAAI,GAAsB,IAAI,CAAC;QACnC,IAAI,SAAS,GAAG,CAAC,CAAC,CAAC;QACnB,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,EAAE;;YACpB,MAAM,CAAC,GAAG,CAAe,CAAC;YAC1B,IAAI,CAAC,CAAC,MAAM,EAAE;gBACZ,MAAM,CAAC,GACL,MAAA,MAAC,CAAC,CAAC,QAAiC,CAAC,YAAY,CAAC,UAAU,CAAC,0CACzD,KAAK,mCAAI,CAAC,CAAC;gBACjB,IAAI,CAAC,GAAG,SAAS,EAAE;oBACjB,SAAS,GAAG,CAAC,CAAC;oBACd,IAAI,GAAG,CAAC,CAAC;iBACV;aACF;QACH,CAAC,CAAC,CAAC;QACH,OAAO,IAAI,CAAC;IACd,CAAC;IAED,qGAAqG;IACrG,wBAAwB;QACtB,IAAI,CAAC,iBAAiB,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC;QACnD,IAAI,CAAC,iBAAiB,GAAG,EAAE,CAAC;IAC9B,CAAC;IAED,QAAQ,CAAC,MAAwB;QAC/B,IAAI,KAAK,GAAG,CAAC,CAAC;QACd,IAAI,EAAE,SAAS,EAAE,GAAG,iBAAiB,EAAE,CAAC;QAExC,MAAM,KAAK,GAAG,IAAI,KAAK,CAAC,KAAK,EAAE,CAAC;QAEhC,MAAM,cAAc,GAAG,WAAW,CAAC,GAAG,EAAE;YACtC,IAAI,KAAK,KAAK,MAAM,CAAC,MAAM,EAAE;gBAC3B,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;gBAEnC,IAAI,CAAC,KAAK,GAAG,IAAI,KAAK,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC;gBAC7C,IAAI,CAAC,aAAa,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE;;oBAC7C,MAAM,MAAM,GAAG,MAAA,IAAI,CAAC,KAAK,0CAAE,UAAU,CAAC,IAAI,CAAC,CAAC;oBAC3C,MAAgC,CAAC,SAAS,GAAG,CAAC,CAAC;oBAC/C,MAAgC,CAAC,IAAI,EAAE,CAAC;gBAC3C,CAAC,CAAC,CAAC;gBAEH,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC;gBACvB,aAAa,CAAC,cAAc,CAAC,CAAC;aAC/B;QACH,CAAC,EAAE,GAAG,CAAC,CAAC;QAER,MAAM,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE;YACvB,MAAM,UAAU,GAAgC,EAAE,CAAC;YAEnD,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,KAAK,EAAE,EAAE;gBAChC,SAAS,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE,EAAE;oBAC/B,QAAQ,CAAC,MAAM,EAAE,CAAC;oBAClB,QAAQ,CAAC,oBAAoB,EAAE,CAAC;oBAChC,QAAQ,CAAC,IAAI,GAAG,KAAK,CAAC,QAAQ,EAAE,CAAC;oBACjC,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;oBAC1B,IAAI,UAAU,CAAC,MAAM,KAAK,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE;wBAC3C,+BAA+B;wBAC/B,UAAU,CAAC,IAAI,CACb,CAAC,CAAuB,EAAE,CAAuB,EAAE,EAAE;4BACnD,IAAI,IAAI,CAAC,IAAI,EAAE;gCACb,OAAO,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;6BAC5C;iCAAM;gCACL,OAAO,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;6BAC5C;wBACH,CAAC,CACF,CAAC;wBACF,UAAU,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC;wBAC9B,KAAK,IAAI,CAAC,CAAC;qBACZ;gBACH,CAAC,CAAC,CAAC;YACL,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;QAEH,MAAM,UAAU,GAAG,CACjB,UAAuC,EACvC,KAAgB,EAChB,EAAE;YACF,IAAI,EAAE,WAAW,EAAE,GAAG,iBAAiB,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;YACpD,IAAI,QAAQ,GAAG,UAAU,CAAC,CAAC,CAAC,CAAC;YAC7B,MAAM,QAAQ,GAAG,QAAQ,CAAC,UAAU,CAAC,QAAQ,CAAC;YAC9C,UAAU,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE;gBAClC,IAAI,KAAK,KAAK,CAAC,EAAE;oBACf,QAAQ,GAAG,KAAK,CAAC;oBACjB,QAAQ,CAAC,eAAe,CAAC,QAAQ,GAAG,EAAE,CAAC;iBACxC;qBAAM;oBACL,oBAAoB;oBACpB,sDAAsD;oBACtD,IAAI;oBACJ,oBAAoB;oBACpB,uEAAuE;oBACvE,IAAI;oBACJ,oBAAoB;oBACpB,sDAAsD;oBACtD,IAAI;oBACJ,QAAQ,CAAC,eAAe,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC;iBACnE;YACH,CAAC,CAAC,CAAC;YACH,MAAM,IAAI,GAAG,IAAI,KAAK,CAAC,IAAI,CAAC,QAAQ,EAAE,WAAW,CAAC,CAAC;YACnD,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC;YAE/B,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;YAChB,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;YAE9B,IAAI,CAAC,qBAAqB,GAAG,EAAE,CAAC;YAChC,IAAI,CAAC,IAAI,GAAG,KAAK,CAAC,IAAI,CAAC;YAEvB,IAAI,CAAC,GAAG,CAAC,CAAC;YACV,IAAI,MAAM,GAAG,EAAE,CAAC;YAChB,IAAI,QAAQ,GAAG,UAAU,CAAC,MAAM,GAAG,CAAC,CAAC;YACrC,oBAAoB;YACpB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,QAAQ,EAAE,CAAC,EAAE,EAAE;gBACjC,MAAM,KAAK,GAAG,IAAI,KAAK,CAAC,aAAa,CACnC,GAAG,IAAI,CAAC,IAAI,0BAA0B,CAAC,GAAG,EAC1C,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,EACjB,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CACV,CAAC;gBACF,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;gBACnB,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;aACX;YACD,MAAM,IAAI,GAAG,IAAI,KAAK,CAAC,aAAa,CAClC,wBAAwB,IAAI,CAAC,IAAI,EAAE,EACnC,QAAQ,EACR,MAAM,CACP,CAAC;YACF,IAAI,CAAC,aAAa,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC3C,CAAC,CAAC;IACJ,CAAC;IAED;;;;;OAKG;IACH,aAAa,CACX,IAAuB,EACvB,QAA8C;;QAE9C,MAAM,UAAU,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC;QAEzC,MAAM,cAAc,GAAG,GAA8B,EAAE,CACrD,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;YACtB,MAAM,OAAO,GAA4B,EAAE,CAAC;YAC5C,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,EAAE;gBAC7B,iBAAiB,CAAC,GAAG,EAAE,CAAC,MAAM,EAAE,EAAE;oBAChC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;oBACrB,IAAI,OAAO,CAAC,MAAM,KAAK,UAAU;wBAAE,OAAO;oBAC1C,8DAA8D;oBAC9D,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC;oBAC1C,MAAM,SAAS,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC,KAAK,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;oBACvD,MAAM,KAAK,GAAG,IAAI,iBAAiB,CAAC,SAAS,GAAG,UAAU,CAAC,CAAC;oBAC5D,MAAM,MAAM,GAAG,IAAI,WAAW,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;oBAC7C,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE;wBAC3B,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,EAAE,KAAK,GAAG,SAAS,CAAC,CAAC;wBACtC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,EAAE,KAAK,GAAG,SAAS,CAAC,CAAC;oBAC1C,CAAC,CAAC,CAAC;oBACH,MAAM,OAAO,mCACR,OAAO,CAAC,CAAC,CAAC,KACb,KAAK;wBACL,MAAM,GACP,CAAC;oBACF,OAAO,CAAC,OAAO,CAAC,CAAC;gBACnB,CAAC,CAAC,CAAC;YACL,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;QAEL,MAAM,mBAAmB,GAAG,CAC1B,IAAmB,EACmB,EAAE,CACxC,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;YACtB,MAAM,MAAM,GAAG,IAAI,SAAS,EAAE,CAAC;YAC/B,MAAM,UAAU,GAAgC,IAAI,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YACvE,IAAI,IAAI,GAAG,CAAC,CAAC;YACb,IAAI,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,KAAK,EAAE,EAAE;gBAC1B,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE,EAAE;oBAC5B,+CAA+C;oBAC/C,QAAQ,CAAC,oBAAoB,EAAE,CAAC;oBAChC,UAAU,CAAC,KAAK,CAAC,GAAG,QAAQ,CAAC;oBAC7B,IAAI,EAAE,IAAI,KAAK,IAAI,CAAC,MAAM;wBAAE,OAAO,CAAC,UAAU,CAAC,CAAC;gBAClD,CAAC,CAAC,CAAC;YACL,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;QAEL,MAAM,WAAW,GAAG,MAAA,IAAI,CAAC,QAAQ,mCAAI,EAAE,CAAC;QAExC,OAAO,CAAC,GAAG,CAAC;YACV,cAAc,EAAE;YAChB,GAAG,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,mBAAmB,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;SACvD,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,EAAE,GAAG,YAAY,CAAC,EAAE,EAAE;;YACrC,IAAI,IAAI,CAAC,MAAM,EAAE;gBACf,OAAO,CAAC,YAAY,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC;gBAC1C,OAAO,CAAC,WAAW,GAAG,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC;aACzC;YACD,MAAM,GAAG,GAAG,qBAAqB,CAC/B,OAA2B,EAC3B,UAAU,EACV,IAAI,CAAC,KAAoB,EACzB,SAAS,EACT,IAAI,CACL,CAAC;YACF,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;YAChB,IAAI,IAAI,CAAC,MAAM;gBAAE,GAAG,CAAC,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;YAEtE,MAAM,aAAa,GAA+B,EAAE,CAAC;YACrD,MAAM,IAAI,GAIL,EAAE,CAAC;YACR,WAAW,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,CAAC,EAAE,EAAE;;gBAC7B,MAAM,UAAU,GAAG,YAAY,CAAC,CAAC,CAAgC,CAAC;gBAClE,MAAM,EAAE,WAAW,EAAE,GAAG,iBAAiB,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;gBACpD,MAAM,IAAI,GAAG,IAAI,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,WAAW,CAAC,CAAC;gBACxD,IAAI,CAAC,IAAI,GAAG,GAAG,CAAC,IAAI,CAAC;gBACrB,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;gBACrB,aAAa,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC;gBAC/B,IAAI,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,MAAM,EAAE,MAAA,GAAG,CAAC,MAAM,mCAAI,CAAC,EAAE,CAAC,CAAC;YAC3D,CAAC,CAAC,CAAC;YAEH,MAAM,UAAU,GAAG,UAAU,CAAC;YAC9B,8EAA8E;YAC9E,MAAM,OAAO,GAAG,MAAA,IAAI,CAAC,OAAO,mCAAI,IAAI,CAAC;YAErC,IAAI,UAAU,GAAG,CAAC,CAAC;YACnB,IAAI,KAAK,GAAG,CAAC,CAAC;YACd,IAAI,OAAO,GAAG,IAAI,CAAC;YACnB,IAAI,QAAQ,GAAG,KAAK,CAAC;YACrB,IAAI,QAAQ,GAAG,WAAW,CAAC,GAAG,EAAE,CAAC;YACjC,MAAM,MAAM,GAAG,OAAO,GAAG,UAAU,CAAC;YAEpC,MAAM,UAAU,GAAG,GAAG,EAAE;gBACtB,GAAG,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;gBACzB,KAAK,MAAM,CAAC,IAAI,IAAI,EAAE;oBACpB,MAAM,CAAC,GACL,CAAC,UAAU,GAAG,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,UAAU,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,UAAU,CAAC,MAAM,CAAC;oBACtE,CAAC,CAAC,IAAI,CAAC,QAAQ,GAAG,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;iBACnC;YACH,CAAC,CAAC;YAEF,MAAM,IAAI,GAAG,GAAG,EAAE;gBAChB,IAAI,QAAQ,IAAI,CAAC,OAAO;oBAAE,OAAO;gBACjC,MAAM,GAAG,GAAG,WAAW,CAAC,GAAG,EAAE,CAAC;gBAC9B,IAAI,GAAG,GAAG,QAAQ,IAAI,MAAM,GAAG,KAAK,EAAE;oBACpC,QAAQ,GAAG,GAAG,CAAC;oBACf,UAAU,GAAG,CAAC,UAAU,GAAG,CAAC,CAAC,GAAG,UAAU,CAAC;oBAC3C,UAAU,EAAE,CAAC;iBACd;YACH,CAAC,CAAC;YACF,IAAI,CAAC,4BAA4B,CAAC,IAAI,CAAC,CAAC;YACxC,MAAM,OAAO,GAAI,IAAY,CAAC,EAAY,CAAC;YAE3C,MAAM,IAAI,GAAwB;gBAChC,KAAK,EAAE,GAAG,CAAC,IAAI;gBACf,aAAa;gBACb,UAAU;gBACV,IAAI,EAAE,GAAG,EAAE;oBACT,OAAO,GAAG,IAAI,CAAC;oBACf,QAAQ,GAAG,WAAW,CAAC,GAAG,EAAE,CAAC;gBAC/B,CAAC;gBACD,KAAK,EAAE,GAAG,EAAE;oBACV,OAAO,GAAG,KAAK,CAAC;gBAClB,CAAC;gBACD,MAAM,EAAE,GAAG,EAAE;oBACX,OAAO,GAAG,CAAC,OAAO,CAAC;oBACnB,QAAQ,GAAG,WAAW,CAAC,GAAG,EAAE,CAAC;gBAC/B,CAAC;gBACD,QAAQ,EAAE,CAAC,CAAS,EAAE,EAAE;oBACtB,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;gBAC5B,CAAC;gBACD,QAAQ,EAAE,CAAC,CAAS,EAAE,EAAE;oBACtB,UAAU,GAAG,CAAC,CAAC,CAAC,GAAG,UAAU,CAAC,GAAG,UAAU,CAAC,GAAG,UAAU,CAAC;oBAC1D,UAAU,EAAE,CAAC;gBACf,CAAC;gBACD,cAAc,EAAE,CAAC,IAAY,EAAE,CAAS,EAAE,EAAE;oBAC1C,MAAM,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,KAAK,IAAI,CAAC,CAAC;oBACjD,IAAI,CAAC,EAAE;wBACL,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC;wBACb,UAAU,EAAE,CAAC;qBACd;gBACH,CAAC;gBACD,SAAS,EAAE,CAAC,MAAc,EAAE,KAAa,EAAE,EAAE;oBAC3C,GAAG,CAAC,SAAS,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;gBAC/B,CAAC;gBACD,eAAe,EAAE,CAAC,CAAS,EAAE,EAAE;oBAC7B,MAAM,CAAC,GAAG,GAAG,CAAC,IAAI,CAAC,QAAgC,CAAC;oBACpD,CAAC,CAAC,WAAW,GAAG,CAAC,GAAG,CAAC,CAAC;oBACtB,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,KAAK,GAAG,CAAC,CAAC;oBAC9B,CAAC,CAAC,WAAW,GAAG,IAAI,CAAC;gBACvB,CAAC;gBACD,iBAAiB,EAAE,CAAC,IAAY,EAAE,CAAS,EAAE,EAAE;oBAC7C,MAAM,IAAI,GAAG,aAAa,CAAC,IAAI,CAAC,CAAC;oBACjC,IAAI,CAAC,IAAI;wBAAE,OAAO;oBAClB,MAAM,CAAC,GAAG,IAAI,CAAC,QAA0B,CAAC;oBAC1C,CAAC,CAAC,WAAW,GAAG,CAAC,GAAG,CAAC,CAAC;oBACtB,CAAC,CAAC,OAAO,GAAG,CAAC,CAAC;oBACd,CAAC,CAAC,WAAW,GAAG,IAAI,CAAC;gBACvB,CAAC;gBACD,iBAAiB,EAAE,CAAC,IAAY,EAAE,OAAgB,EAAE,EAAE;oBACpD,MAAM,IAAI,GAAG,aAAa,CAAC,IAAI,CAAC,CAAC;oBACjC,IAAI,IAAI;wBAAE,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;gBACnC,CAAC;gBACD,OAAO,EAAE,GAAG,EAAE;;oBACZ,QAAQ,GAAG,IAAI,CAAC;oBAChB,IAAI,CAAC,+BAA+B,CAAC,OAAO,CAAC,CAAC;oBAC9C,QAAQ;oBACR,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;oBAC5B,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC;oBAC5B,MAAM,EAAE,GAAG,GAAG,CAAC,IAAI,CAAC,QAAgC,CAAC;oBACrD,MAAA,MAAC,EAAE,CAAC,QAAQ,CAAC,OAAO,CAAC,KAAuB,0CAAE,OAAO,kDAAI,CAAC;oBAC1D,EAAE,CAAC,OAAO,EAAE,CAAC;oBACb,WAAW;oBACX,KAAK,MAAM,CAAC,IAAI,IAAI,EAAE;wBACpB,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;wBAC1B,CAAC,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC;wBACxC,CAAC,CAAC,IAAI,CAAC,QAA2B,CAAC,OAAO,EAAE,CAAC;qBAC/C;gBACH,CAAC;aACF,CAAC;YAEF,QAAQ,IAAI,QAAQ,CAAC,IAAI,CAAC,CAAC;QAC7B,CAAC,CAAC,CAAC;IACL,CAAC;IAED,WAAW;QACT,OAAO,IAAI,CAAC,QAAQ,CAAC;IACvB,CAAC;IAED,WAAW,CAAC,QAAgB;QAC1B,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;IAC3B,CAAC;IAED,gBAAgB,CACd,KAA+B,EAC/B,QAAgD;QAEhD,IAAI,QAAQ,CAAC,CAAC;YAAE,KAAK,CAAC,QAAQ,CAAC,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC;QAC9C,IAAI,QAAQ,CAAC,CAAC;YAAE,KAAK,CAAC,QAAQ,CAAC,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC;QAC9C,IAAI,QAAQ,CAAC,CAAC;YAAE,KAAK,CAAC,QAAQ,CAAC,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC;IAChD,CAAC;IAED,QAAQ,CAAC,aAA8B;QACrC,KAAK,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC;QAC9B,gDAAgD;QAChD,IAAI,IAAI,CAAC,QAAQ,EAAE;YACjB,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAqC,CAAC;YAC5D,IAAI,aAAa,CAAC,cAAc,EAAE;gBAChC,QAAQ,CAAC,MAAM,CAAC,GAAG,CACjB,aAAa,CAAC,cAAc,CAAC,CAAC,CAAC,EAC/B,aAAa,CAAC,cAAc,CAAC,CAAC,CAAC,EAC/B,aAAa,CAAC,cAAc,CAAC,CAAC,CAAC,CAChC,CAAC;gBACF,0DAA0D;gBAC1D,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;aACxC;YACD,8DAA8D;YAC9D,QAAQ,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;YAC9C,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;YAClC,QAAQ,CAAC,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC;SACnC;IACH,CAAC;IAED,SAAS;QACN,IAAI,CAAC,QAAsC,CAAC,KAAK,EAAE,CAAC;QACrD,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IACpC,CAAC;IAED,YAAY,CAAC,SAA0B;QACrC,IAAI,CAAC,kBAAkB,GAAG,IAAI,CAAC;QAC/B,IAAI,CAAC,aAAa,CAAC,qBAAqB,CAAC,SAAS,CAAC,CAAC;IACtD,CAAC;IAED,cAAc;QACZ,IAAI,WAAW,GAAG,CAAC,CAAC;QACpB,IAAI,IAAI,CAAC,UAAU,EAAE;YACnB,WAAW,GAAG,IAAI,CAAC,UAAU,CAAC,IAAI,GAAG,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,QAAQ,CAAC;SACrE;QACD,OAAO,WAAW,CAAC;IACrB,CAAC;IAED,eAAe;QACb,OAAO,IAAI,CAAC,KAAK,CAAC;IACpB,CAAC;IAED,cAAc,CAAC,MAA0D;QACvE,IAAI,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC;QACxB,IAAI,CAAC,QAAQ,GAAG,IAAI,yBAAyB,CAC3C,MAAM,EACN,IAAI,CAAC,QAAQ,CAAC,UAAU,CACzB,CAAC;QACF,yCAAyC;QACzC,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;QAClC,IAAI,CAAC,QAAQ,CAAC,OAAO,GAAG,GAAG,CAAC;QAC5B,IAAI,CAAC,QAAQ,CAAC,OAAO,GAAG,CAAC,CAAC;QAC1B,mCAAmC;IACrC,CAAC;IAED,oBAAoB;QAClB,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC,SAAS,CAAC,qBAAqB,EAAE,CAAC;QACjE,MAAM,MAAM,GAAG,KAAK,GAAG,MAAM,CAAC;QAC9B,IAAI,IAAI,CAAC,gBAAgB,EAAE;YACzB,MAAM,YAAY,GAAG,IAAI,CAAC,MAAkC,CAAC;YAC7D,MAAM,aAAa,GAAG,YAAY,CAAC,GAAG,GAAG,YAAY,CAAC,MAAM,CAAC;YAE7D,YAAY,CAAC,IAAI,GAAG,CAAC,CAAC,aAAa,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC;YAClD,YAAY,CAAC,KAAK,GAAG,CAAC,aAAa,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC;SACnD;aAAM;YACJ,IAAI,CAAC,MAAkC,CAAC,MAAM,GAAG,MAAM,CAAC;SAC1D;QACD,IAAI,CAAC,MAAM,CAAC,sBAAsB,EAAE,CAAC;IACvC,CAAC;IAED,MAAM,CAAC,IAAa;QAClB,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC;QAEvB,IAAI,IAAI,CAAC,UAAU,EAAE;YACnB,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAC;YACvE,qEAAqE;SACtE;QAED,IAAI,IAAI,CAAC,0BAA0B,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE;YACpD,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,0BAA0B,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE;gBACpE,IAAI,IAAI,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAC1B,CAAC,CAAC,CAAC;SACJ;QAED,IAAI,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,SAAS,EAAE;YACnD,IAAI,CAAC,SAAS,CAAC,MAAM;gBACnB,IAAI,CAAC,MAAM,CAAC,WAAW,GAAG,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC;YACrD,IAAI,CAAC,SAAS,CAAC,sBAAsB,EAAE,CAAC;YACxC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,WAAW,EAAE,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;YAC1E,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;YACnD,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;YAC9C,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC;SACtD;QAED,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;IAChD,CAAC;CACF"}
@@ -1,13 +1,15 @@
1
1
  import * as THREE from "three";
2
2
  /**
3
- * BufferGeometry 的索引构建顶点邻接图,用于模式 B(测地线)的最短路径。
4
- * 顶点坐标按 local 存;传入的查询点需先转为 local(mesh.worldToLocal)。
3
+ * Build a vertex adjacency graph from a BufferGeometry's index, used for the shortest path in
4
+ * mode B (geodesic). Vertex coordinates are stored in local space; query points must be converted
5
+ * to local first (mesh.worldToLocal).
5
6
  *
6
- * 说明:几何须为已索引(indexed)。modelLoader mergeVertices 焊接重复顶点,
7
- * 保证同一表面位置共享顶点,邻接图才连通。
7
+ * Note: the geometry must be indexed. modelLoader welds duplicate vertices with mergeVertices so
8
+ * that vertices at the same surface position are shared, otherwise the adjacency graph won't be connected.
8
9
  *
9
- * 性能:O(V²) Dijkstra + O(V) 最近顶点查找。对几万顶点单次点击可接受;
10
- * 若过大可后续换二叉堆 + 空间网格加速(留作升级)。
10
+ * Performance: O(V²) Dijkstra + O(V) nearest-vertex lookup. Acceptable for a single click on tens
11
+ * of thousands of vertices; if too large it can later be sped up with a binary heap + spatial grid
12
+ * (left as a future upgrade).
11
13
  */
12
14
  export declare class MeshGraph {
13
15
  private positions;
@@ -18,16 +20,16 @@ export declare class MeshGraph {
18
20
  private px;
19
21
  private py;
20
22
  private pz;
21
- /** 最近顶点(传入 local 坐标) */
23
+ /** Nearest vertex (pass in local coordinates). */
22
24
  nearestVertex(localPoint: THREE.Vector3): number;
23
25
  /**
24
- * 两顶点间最短路径(含端点的顶点索引序列)。二叉堆 Dijkstra,O(E log V)
25
- * 不连通时返回 [start,end] 兜底。
26
+ * Shortest path between two vertices (sequence of vertex indices including endpoints).
27
+ * Binary-heap Dijkstra, O(E log V). Falls back to [start,end] when disconnected.
26
28
  */
27
29
  shortestPath(startV: number, endV: number): number[];
28
30
  vertexWorld(i: number, matrixWorld: THREE.Matrix4): THREE.Vector3;
29
31
  vertexNormalWorld(i: number, mesh: THREE.Mesh): THREE.Vector3;
30
- /** 顶点的 local 坐标 + local 法线(图几何即 local 空间) */
32
+ /** Vertex local coordinates + local normal (the graph geometry is already local space). */
31
33
  vertexLocal(i: number): {
32
34
  x: number;
33
35
  y: number;
@@ -1,13 +1,15 @@
1
1
  import * as THREE from "three";
2
2
  /**
3
- * BufferGeometry 的索引构建顶点邻接图,用于模式 B(测地线)的最短路径。
4
- * 顶点坐标按 local 存;传入的查询点需先转为 local(mesh.worldToLocal)。
3
+ * Build a vertex adjacency graph from a BufferGeometry's index, used for the shortest path in
4
+ * mode B (geodesic). Vertex coordinates are stored in local space; query points must be converted
5
+ * to local first (mesh.worldToLocal).
5
6
  *
6
- * 说明:几何须为已索引(indexed)。modelLoader mergeVertices 焊接重复顶点,
7
- * 保证同一表面位置共享顶点,邻接图才连通。
7
+ * Note: the geometry must be indexed. modelLoader welds duplicate vertices with mergeVertices so
8
+ * that vertices at the same surface position are shared, otherwise the adjacency graph won't be connected.
8
9
  *
9
- * 性能:O(V²) Dijkstra + O(V) 最近顶点查找。对几万顶点单次点击可接受;
10
- * 若过大可后续换二叉堆 + 空间网格加速(留作升级)。
10
+ * Performance: O(V²) Dijkstra + O(V) nearest-vertex lookup. Acceptable for a single click on tens
11
+ * of thousands of vertices; if too large it can later be sped up with a binary heap + spatial grid
12
+ * (left as a future upgrade).
11
13
  */
12
14
  export class MeshGraph {
13
15
  constructor(geometry) {
@@ -35,7 +37,7 @@ export class MeshGraph {
35
37
  }
36
38
  }
37
39
  else {
38
- // 非索引兜底(连通性差,仅避免崩溃)
40
+ // Non-indexed fallback (poor connectivity, only to avoid crashing).
39
41
  for (let i = 0; i + 2 < this.vertexCount; i += 3) {
40
42
  addEdge(i, i + 1);
41
43
  addEdge(i + 1, i + 2);
@@ -52,7 +54,7 @@ export class MeshGraph {
52
54
  pz(i) {
53
55
  return this.positions[i * 3 + 2];
54
56
  }
55
- /** 最近顶点(传入 local 坐标) */
57
+ /** Nearest vertex (pass in local coordinates). */
56
58
  nearestVertex(localPoint) {
57
59
  let best = -1;
58
60
  let bestD = Infinity;
@@ -69,8 +71,8 @@ export class MeshGraph {
69
71
  return best;
70
72
  }
71
73
  /**
72
- * 两顶点间最短路径(含端点的顶点索引序列)。二叉堆 Dijkstra,O(E log V)
73
- * 不连通时返回 [start,end] 兜底。
74
+ * Shortest path between two vertices (sequence of vertex indices including endpoints).
75
+ * Binary-heap Dijkstra, O(E log V). Falls back to [start,end] when disconnected.
74
76
  */
75
77
  shortestPath(startV, endV) {
76
78
  if (startV === endV)
@@ -127,7 +129,7 @@ export class MeshGraph {
127
129
  const nm = new THREE.Matrix3().getNormalMatrix(mesh.matrixWorld);
128
130
  return n.applyMatrix3(nm).normalize();
129
131
  }
130
- /** 顶点的 local 坐标 + local 法线(图几何即 local 空间) */
132
+ /** Vertex local coordinates + local normal (the graph geometry is already local space). */
131
133
  vertexLocal(i) {
132
134
  return {
133
135
  x: this.px(i),
@@ -140,7 +142,7 @@ export class MeshGraph {
140
142
  };
141
143
  }
142
144
  }
143
- /** 极简二叉最小堆( priority 排序,存顶点索引)。用于 Dijkstra */
145
+ /** Minimal binary min-heap (ordered by priority, stores vertex indices). Used for Dijkstra. */
144
146
  class MinHeap {
145
147
  constructor() {
146
148
  this.ids = [];
@@ -1 +1 @@
1
- {"version":3,"file":"MeshGraph.js","sourceRoot":"","sources":["../../../src/Utils/surfaceAnnotation/MeshGraph.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"MeshGraph.js","sourceRoot":"","sources":["../../../src/Utils/surfaceAnnotation/MeshGraph.ts"],"names":[],"mappings":"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"}
@@ -9,26 +9,34 @@ export interface SurfaceAnnotatorOptions {
9
9
  enabled: boolean;
10
10
  };
11
11
  mesh: THREE.Mesh;
12
- /** 缺省时从 mesh 几何包围盒对角线自算。 */
12
+ /** Computed from the mesh geometry's bounding-box diagonal when omitted. */
13
13
  bboxDiagonal?: number;
14
- /** 自由手绘 contour 颜色,默认 #e5006e。 */
14
+ /**
15
+ * Outward offset of the annotation line from the surface (world units), defaults to bboxDiagonal*0.002.
16
+ * Providing it separately decouples it from the sampling spacing (minGap/maxJump, still derived from
17
+ * bboxDiagonal) — useful on bumpy/voxel surfaces where a larger offset is needed to float the line
18
+ * above the relief without also coarsening the sampling.
19
+ */
20
+ epsilon?: number;
21
+ /** Freehand contour color, defaults to #e5006e. */
15
22
  freehandColor?: string;
16
- /** 测地线 contour 颜色,默认 #ffa24e */
23
+ /** Geodesic contour color, defaults to #ffa24e. */
17
24
  geodesicColor?: string;
18
- /** 放点标记颜色,默认 #ffd166 */
25
+ /** Point-marker color, defaults to #ffd166. */
19
26
  pointColor?: string;
20
- /** 线宽(像素),默认 3 */
27
+ /** Line width (pixels), defaults to 3. */
21
28
  lineWidth?: number;
22
- /** 标记小球半径,默认 bboxDiagonal*0.006 */
29
+ /** Marker sphere radius, defaults to bboxDiagonal*0.006. */
23
30
  markerRadius?: number;
24
31
  onModeChange?: (m: AnnotationMode) => void;
25
- /** 标注列表变化回调(增删/撤销/清空) */
32
+ /** Callback when the annotation list changes (add/remove/undo/clear). */
26
33
  onChange?: (annotations: Annotation[]) => void;
27
34
  }
28
35
  /**
29
- * 表面标注主控制器(Phase 4):navigate / freehand / geodesic / point 四模式,
30
- * Enter 闭合,数据交给 AnnotationStore 管理(多条带颜色标签、撤销/删除/清空、导出)。
31
- * 渲染层据 store.list() 做场景对账(reconcile),撤销/删除自动加/移 three 对象。
36
+ * Main surface-annotation controller (Phase 4): four modes navigate / freehand / geodesic / point,
37
+ * Enter closes the loop, and data is managed by AnnotationStore (multiple color-labeled strips,
38
+ * undo/delete/clear, export).
39
+ * The render layer reconciles the scene against store.list(); undo/delete automatically add/remove three objects.
32
40
  */
33
41
  export declare class SurfaceAnnotator {
34
42
  private o;
@@ -56,7 +64,7 @@ export declare class SurfaceAnnotator {
56
64
  private hoveredGeoMarker;
57
65
  private _projV;
58
66
  constructor(opts: SurfaceAnnotatorOptions);
59
- /** 窗口尺寸变化时更新所有 fat line 的像素分辨率,否则线宽会失真。 */
67
+ /** Update the pixel resolution of all fat lines on window resize, otherwise line width distorts. */
60
68
  private onResize;
61
69
  private get freehandColor();
62
70
  private get geodesicColor();
@@ -64,13 +72,13 @@ export declare class SurfaceAnnotator {
64
72
  getMode(): AnnotationMode;
65
73
  setMode(m: AnnotationMode): void;
66
74
  getStore(): AnnotationStore;
67
- /** 当前标注列表快照。 */
75
+ /** Snapshot of the current annotation list. */
68
76
  getAnnotations(): Annotation[];
69
77
  undo(): void;
70
78
  clearAll(): void;
71
79
  deleteAnnotation(id: string): void;
72
80
  selectAnnotation(id: string | null): void;
73
- /** 颜色变更后重画对应 three 对象。 */
81
+ /** Redraw the corresponding three object after a color change. */
74
82
  refreshAnnotation(id: string): void;
75
83
  exportJSON(modelName: string, opts?: ExportOptions): {
76
84
  model: string;
@@ -87,42 +95,54 @@ export declare class SurfaceAnnotator {
87
95
  }[];
88
96
  };
89
97
  private applyCameraGating;
90
- /** store.list() 对账场景:补齐缺失对象、移除已删对象( dispose,留给撤销恢复) */
98
+ /** Reconcile the scene against store.list(): add missing objects, remove deleted ones (no dispose, kept for undo restore). */
91
99
  private reconcile;
92
100
  private applySelection;
93
101
  private disposeObject;
94
102
  private nextId;
95
103
  private hit;
96
104
  /**
97
- * 事件目标是否是容器内的 WebGL canvas
98
- * 仅认 canvas:面板(GUIDE / 控制面板 / 标注列表的按钮)都是 container 的子元素,
99
- * 若只判断 contains 会把面板上的点击也当成在模型上作画 —— 这会"穿透"删除按钮、
100
- * 难以点中。只响应 canvas 上的指针事件即可彻底隔离 UI 与画布。
105
+ * Whether the event target is the WebGL canvas inside the container.
106
+ * Only accept the canvas: panels (GUIDE / control panel / thebuttons in the annotation list)
107
+ * are all children of the container, so checking contains alone would treat clicks on the panels
108
+ * as drawing on the model which "leaks through" the delete buttons and makes ✕ hard to click.
109
+ * Responding only to pointer events on the canvas fully isolates the UI from the drawing surface.
101
110
  */
102
111
  private insideContainer;
103
112
  private onPointerDown;
104
- /** 射线拾取进行中的锚点小球,返回锚点下标;未命中返回 -1。 */
113
+ /**
114
+ * Pick an in-progress anchor: return the index of the nearest anchor (screen pixel distance <
115
+ * tolerance), or -1 on a miss.
116
+ *
117
+ * Uses "screen-space pixel distance" instead of ray/sphere intersection: the anchor spheres are
118
+ * tiny, so strict ray/sphere hits require pixel-perfect aiming and most clicks miss — and a miss
119
+ * falls through to the "add anchor" branch, so trying to delete a point ends up adding one. That
120
+ * was the root cause of the old "deleting a point takes several clicks, must hit the sphere dead
121
+ * center" problem. Projecting each anchor to the screen and taking the nearest within tolerance
122
+ * makes deletion stable and reliable. The tolerance is enlarged relative to the sphere's screen
123
+ * radius to make it easy to hit.
124
+ */
105
125
  private pickGeoMarker;
106
- /** 设置当前悬停的锚点(-1 = ):更新高亮缩放、光标与"✕(可取消)"悬浮标。 */
126
+ /** Set the currently hovered anchor (-1 = none): update highlight scale, cursor, and the "✕ (cancel)" floating badge. */
107
127
  private setGeoHover;
108
- /** 懒创建悬浮(挂在 container 内,pointer-events:none 不挡点击) */
128
+ /** Lazily create the floating badge (appended inside the container, pointer-events:none so it doesn't block clicks). */
109
129
  private ensureGeoBadge;
110
- /** 标定位到锚点投影到屏幕的位置(正中心,即光标悬停处,避免歧义) */
130
+ /** Position the badge at the anchor's screen projection (dead center, i.e. where the cursor hovers, to avoid ambiguity). */
111
131
  private positionGeoBadge;
112
- /** 据当前锚点重建可见的锚点小球(锚点比放点稍大,便于看见与点中取消) */
132
+ /** Rebuild the visible anchor spheres from the current anchors (slightly larger than placed points, so they're easy to see and click to cancel). */
113
133
  private rebuildGeoMarkers;
114
- /** 据当前锚点重画进行中的测地线(不闭合);不足两点时移除线。 */
134
+ /** Redraw the in-progress geodesic from the current anchors (not closed); remove the line when fewer than two points. */
115
135
  private redrawGeoLine;
116
- /** 丢弃进行中的测地线:移除并 dispose 线与全部锚点。 */
136
+ /** Discard the in-progress geodesic: remove and dispose the line and all anchors. */
117
137
  private clearActiveGeo;
118
- /** 移除进行中测地线的全部锚点小球(落定后调用:只留下线) */
138
+ /** Remove all anchor spheres of the in-progress geodesic (called after committing: only the line remains). */
119
139
  private removeGeoMarkers;
120
140
  private onPointerMove;
121
141
  private onPointerUp;
122
142
  private closeLastContour;
123
- /** 沿网格表面求 a→b 的测地路径(local 顶点),去掉与 a 重合的首点。a/b 已是 local */
143
+ /** Compute the geodesic path a→b along the mesh surface (local vertices), dropping the first point that coincides with a. a/b are already local. */
124
144
  private surfacePathBetween;
125
- /** 结束当前测地线:闭合成环并落定为一条 contour */
145
+ /** Finish the current geodesic: close it into a ring and commit it as one contour. */
126
146
  private finishGeodesic;
127
147
  private isTypingTarget;
128
148
  private onKeyDown;