@openbraininstitute/morphoviewer 0.32.4 → 0.34.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 (49) hide show
  1. package/dist/behaviors/index.d.ts +1 -0
  2. package/dist/behaviors/index.d.ts.map +1 -1
  3. package/dist/behaviors/index.js +2 -1
  4. package/dist/behaviors/space-per-pixel.d.ts.map +1 -1
  5. package/dist/behaviors/space-per-pixel.js +2 -2
  6. package/dist/behaviors/zoom.d.ts +3 -0
  7. package/dist/behaviors/zoom.d.ts.map +1 -0
  8. package/dist/behaviors/zoom.js +13 -0
  9. package/dist/components/morpho-viewer-small-circuit/index.d.ts +1 -0
  10. package/dist/components/morpho-viewer-small-circuit/index.d.ts.map +1 -1
  11. package/dist/components/morpho-viewer-small-circuit/index.js +2 -1
  12. package/dist/components/morpho-viewer-small-circuit/morpho-viewer-small-circuit.d.ts.map +1 -1
  13. package/dist/components/morpho-viewer-small-circuit/morpho-viewer-small-circuit.js +20 -2
  14. package/dist/components/morpho-viewer-small-circuit/morpho-viewer-small-circuit.module.css +70 -62
  15. package/dist/components/morpho-viewer-small-circuit/painter/camera.d.ts +11 -2
  16. package/dist/components/morpho-viewer-small-circuit/painter/camera.d.ts.map +1 -1
  17. package/dist/components/morpho-viewer-small-circuit/painter/camera.js +42 -6
  18. package/dist/components/morpho-viewer-small-circuit/painter/manager.d.ts +24 -8
  19. package/dist/components/morpho-viewer-small-circuit/painter/manager.d.ts.map +1 -1
  20. package/dist/components/morpho-viewer-small-circuit/painter/manager.js +209 -72
  21. package/dist/components/morpho-viewer-small-circuit/painter/offscreen-painter/offscreen-painter.d.ts +3 -3
  22. package/dist/components/morpho-viewer-small-circuit/painter/offscreen-painter/offscreen-painter.d.ts.map +1 -1
  23. package/dist/components/morpho-viewer-small-circuit/painter/offscreen-painter/offscreen-painter.js +9 -2
  24. package/dist/components/morpho-viewer-small-circuit/painter/offscreen-painter/segment-offscreen-painter.d.ts +2 -0
  25. package/dist/components/morpho-viewer-small-circuit/painter/offscreen-painter/segment-offscreen-painter.d.ts.map +1 -1
  26. package/dist/components/morpho-viewer-small-circuit/painter/offscreen-painter/segment-offscreen-painter.js +8 -2
  27. package/dist/components/morpho-viewer-small-circuit/painter/painter-cell/factory/section-index.d.ts +4 -2
  28. package/dist/components/morpho-viewer-small-circuit/painter/painter-cell/factory/section-index.d.ts.map +1 -1
  29. package/dist/components/morpho-viewer-small-circuit/painter/painter-cell/factory/section-index.js +15 -6
  30. package/dist/components/morpho-viewer-small-circuit/painter/painter-cell/factory/tree.d.ts +1 -0
  31. package/dist/components/morpho-viewer-small-circuit/painter/painter-cell/factory/tree.d.ts.map +1 -1
  32. package/dist/components/morpho-viewer-small-circuit/painter/painter-cell/factory/tree.js +219 -16
  33. package/dist/components/morpho-viewer-small-circuit/painter/painter-cell/painter-cell-flat.js +2 -2
  34. package/dist/components/morpho-viewer-small-circuit/painter/painter-cell/painter-cell-id.js +2 -2
  35. package/dist/components/morpho-viewer-small-circuit/painter/painter-cell/painter-cell.d.ts +5 -1
  36. package/dist/components/morpho-viewer-small-circuit/painter/painter-cell/painter-cell.d.ts.map +1 -1
  37. package/dist/components/morpho-viewer-small-circuit/painter/painter-cell/painter-cell.js +16 -4
  38. package/dist/components/morpho-viewer-small-circuit/painter/painter-synapses/index.d.ts.map +1 -1
  39. package/dist/components/morpho-viewer-small-circuit/painter/painter-synapses/index.js +1 -1
  40. package/dist/components/morpho-viewer-small-circuit/types.d.ts +3 -1
  41. package/dist/components/morpho-viewer-small-circuit/types.d.ts.map +1 -1
  42. package/dist/components/signals.d.ts +1 -0
  43. package/dist/components/signals.d.ts.map +1 -1
  44. package/dist/components/signals.js +2 -1
  45. package/dist/package.json +1 -1
  46. package/dist/painters/gizmo.d.ts +1 -0
  47. package/dist/painters/gizmo.d.ts.map +1 -1
  48. package/dist/painters/gizmo.js +27 -5
  49. package/package.json +1 -1
@@ -1,22 +1,22 @@
1
1
  import { TgdContext } from "@tolokoban/tgd";
2
- import type { CacheLRU } from "../../../../tools/cache-lru";
3
2
  import type { MorphoViewerSmallCircuitCell, MorphoViewerSmallCircuitCellData } from "../../types";
4
3
  export interface OffscreenPainterOptions {
5
4
  circuit: MorphoViewerSmallCircuitCell[];
6
5
  loadCell: (id: string) => Promise<MorphoViewerSmallCircuitCellData | null>;
7
- loadedCells: CacheLRU<Promise<MorphoViewerSmallCircuitCellData | null>>;
6
+ dendrogramMix?: number;
8
7
  }
9
8
  export declare class OffscreenPainter {
10
9
  private readonly onscreenContext;
11
- mix: number;
12
10
  readonly context: TgdContext;
13
11
  resolutionDivider: number;
14
12
  private readonly offscreenCanvas;
15
13
  private readonly offscreenContext;
16
14
  private readonly group;
15
+ private readonly meshes;
17
16
  private readonly circuit;
18
17
  private isDeleted;
19
18
  constructor(onscreenContext: TgdContext, options: OffscreenPainterOptions);
19
+ set dendrogramMix(mix: number);
20
20
  getItemAt(xScreen: number, yScreen: number): MorphoViewerSmallCircuitCell | undefined;
21
21
  getItemNear(xScreen: number, yScreen: number, radiusInPixels: number): MorphoViewerSmallCircuitCell | undefined;
22
22
  private readonly paint;
@@ -1 +1 @@
1
- {"version":3,"file":"offscreen-painter.d.ts","sourceRoot":"","sources":["../../../../../src/components/morpho-viewer-small-circuit/painter/offscreen-painter/offscreen-painter.ts"],"names":[],"mappings":"AACA,OAAO,EACL,UAAU,EAKX,MAAM,gBAAgB,CAAC;AAOxB,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAClD,OAAO,KAAK,EAAE,4BAA4B,EAAE,gCAAgC,EAAE,MAAM,aAAa,CAAC;AAElG,MAAM,WAAW,uBAAuB;IACtC,OAAO,EAAE,4BAA4B,EAAE,CAAC;IACxC,QAAQ,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,OAAO,CAAC,gCAAgC,GAAG,IAAI,CAAC,CAAC;IAC3E,WAAW,EAAE,QAAQ,CAAC,OAAO,CAAC,gCAAgC,GAAG,IAAI,CAAC,CAAC,CAAC;CACzE;AAUD,qBAAa,gBAAgB;IAoBzB,OAAO,CAAC,QAAQ,CAAC,eAAe;IAnB3B,GAAG,SAAK;IACf,SAAgB,OAAO,EAAE,UAAU,CAAC;IAS7B,iBAAiB,SAA8B;IAEtD,OAAO,CAAC,QAAQ,CAAC,eAAe,CAA6B;IAC7D,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAa;IAC9C,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAyB;IAC/C,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAiC;IACzD,OAAO,CAAC,SAAS,CAAS;gBAGP,eAAe,EAAE,UAAU,EAC5C,OAAO,EAAE,uBAAuB;IAkClC,SAAS,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,4BAA4B,GAAG,SAAS;IAiBrF,WAAW,CACT,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,MAAM,EACf,cAAc,EAAE,MAAM,GACrB,4BAA4B,GAAG,SAAS;IAc3C,OAAO,CAAC,QAAQ,CAAC,KAAK,CASpB;IAEF,MAAM;CAKP"}
1
+ {"version":3,"file":"offscreen-painter.d.ts","sourceRoot":"","sources":["../../../../../src/components/morpho-viewer-small-circuit/painter/offscreen-painter/offscreen-painter.ts"],"names":[],"mappings":"AACA,OAAO,EACL,UAAU,EAKX,MAAM,gBAAgB,CAAC;AAOxB,OAAO,KAAK,EAAE,4BAA4B,EAAE,gCAAgC,EAAE,MAAM,aAAa,CAAC;AAElG,MAAM,WAAW,uBAAuB;IACtC,OAAO,EAAE,4BAA4B,EAAE,CAAC;IACxC,QAAQ,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,OAAO,CAAC,gCAAgC,GAAG,IAAI,CAAC,CAAC;IAE3E,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAUD,qBAAa,gBAAgB;IAoBzB,OAAO,CAAC,QAAQ,CAAC,eAAe;IAnBlC,SAAgB,OAAO,EAAE,UAAU,CAAC;IAS7B,iBAAiB,SAA8B;IAEtD,OAAO,CAAC,QAAQ,CAAC,eAAe,CAA6B;IAC7D,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAa;IAC9C,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAyB;IAC/C,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAuB;IAC9C,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAiC;IACzD,OAAO,CAAC,SAAS,CAAS;gBAGP,eAAe,EAAE,UAAU,EAC5C,OAAO,EAAE,uBAAuB;IA2ClC,IAAI,aAAa,CAAC,GAAG,EAAE,MAAM,EAE5B;IAED,SAAS,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,4BAA4B,GAAG,SAAS;IAiBrF,WAAW,CACT,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,MAAM,EACf,cAAc,EAAE,MAAM,GACrB,4BAA4B,GAAG,SAAS;IAc3C,OAAO,CAAC,QAAQ,CAAC,KAAK,CASpB;IAEF,MAAM;CAKP"}
@@ -6,11 +6,12 @@ const FIRST_INDEX = 1;
6
6
  const DEFAULT_RESOLUTION_DIVIDER = 4;
7
7
  export class OffscreenPainter {
8
8
  constructor(onscreenContext, options) {
9
+ var _a;
9
10
  this.onscreenContext = onscreenContext;
10
- this.mix = 0;
11
11
  this.resolutionDivider = DEFAULT_RESOLUTION_DIVIDER;
12
12
  this.offscreenCanvas = new OffscreenCanvas(1, 1);
13
13
  this.group = new TgdPainterGroup();
14
+ this.meshes = [];
14
15
  this.isDeleted = false;
15
16
  this.paint = () => {
16
17
  if (this.isDeleted)
@@ -45,11 +46,17 @@ export class OffscreenPainter {
45
46
  loadCell: options.loadCell,
46
47
  id: index,
47
48
  });
49
+ mesh.dendrogramMix = (_a = options.dendrogramMix) !== null && _a !== void 0 ? _a : 0;
48
50
  this.group.add(mesh);
51
+ this.meshes.push(mesh);
49
52
  index++;
50
53
  }
51
54
  this.paint();
52
55
  }
56
+ set dendrogramMix(mix) {
57
+ for (const mesh of this.meshes)
58
+ mesh.dendrogramMix = mix;
59
+ }
53
60
  getItemAt(xScreen, yScreen) {
54
61
  var _a;
55
62
  if (this.isDeleted)
@@ -79,4 +86,4 @@ export class OffscreenPainter {
79
86
  this.isDeleted = true;
80
87
  }
81
88
  }
82
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib2Zmc2NyZWVuLXBhaW50ZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvY29tcG9uZW50cy9tb3JwaG8tdmlld2VyLXNtYWxsLWNpcmN1aXQvcGFpbnRlci9vZmZzY3JlZW4tcGFpbnRlci9vZmZzY3JlZW4tcGFpbnRlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQ0wsVUFBVSxFQUNWLGVBQWUsRUFDZixlQUFlLEVBQ2YsZUFBZSxFQUNmLGdCQUFnQixHQUNqQixNQUFNLGdCQUFnQixDQUFDO0FBRXhCLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQzFELE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxTQUFTLENBQUM7QUFFdEMsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBV2hELE1BQU0sV0FBVyxHQUFHLENBQUMsQ0FBQztBQU10QixNQUFNLDBCQUEwQixHQUFHLENBQUMsQ0FBQztBQUVyQyxNQUFNLE9BQU8sZ0JBQWdCO0lBbUIzQixZQUNtQixlQUEyQixFQUM1QyxPQUFnQztRQURmLG9CQUFlLEdBQWYsZUFBZSxDQUFZO1FBbkJ2QyxRQUFHLEdBQUcsQ0FBQyxDQUFDO1FBVVIsc0JBQWlCLEdBQUcsMEJBQTBCLENBQUM7UUFFckMsb0JBQWUsR0FBRyxJQUFJLGVBQWUsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUM7UUFFNUMsVUFBSyxHQUFHLElBQUksZUFBZSxFQUFFLENBQUM7UUFFdkMsY0FBUyxHQUFHLEtBQUssQ0FBQztRQXlFVCxVQUFLLEdBQUcsR0FBRyxFQUFFO1lBQzVCLElBQUksSUFBSSxDQUFDLFNBQVM7Z0JBQUUsT0FBTztZQUUzQixNQUFNLEVBQUUsZUFBZSxFQUFFLGdCQUFnQixFQUFFLGVBQWUsRUFBRSxHQUFHLElBQUksQ0FBQztZQUNwRSxnQkFBZ0IsQ0FBQyxNQUFNLEdBQUcsZUFBZSxDQUFDLE1B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
89
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib2Zmc2NyZWVuLXBhaW50ZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvY29tcG9uZW50cy9tb3JwaG8tdmlld2VyLXNtYWxsLWNpcmN1aXQvcGFpbnRlci9vZmZzY3JlZW4tcGFpbnRlci9vZmZzY3JlZW4tcGFpbnRlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQ0wsVUFBVSxFQUNWLGVBQWUsRUFDZixlQUFlLEVBQ2YsZUFBZSxFQUNmLGdCQUFnQixHQUNqQixNQUFNLGdCQUFnQixDQUFDO0FBRXhCLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQzFELE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxTQUFTLENBQUM7QUFFdEMsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBV2hELE1BQU0sV0FBVyxHQUFHLENBQUMsQ0FBQztBQU10QixNQUFNLDBCQUEwQixHQUFHLENBQUMsQ0FBQztBQUVyQyxNQUFNLE9BQU8sZ0JBQWdCO0lBbUIzQixZQUNtQixlQUEyQixFQUM1QyxPQUFnQzs7UUFEZixvQkFBZSxHQUFmLGVBQWUsQ0FBWTtRQVZ2QyxzQkFBaUIsR0FBRywwQkFBMEIsQ0FBQztRQUVyQyxvQkFBZSxHQUFHLElBQUksZUFBZSxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQztRQUU1QyxVQUFLLEdBQUcsSUFBSSxlQUFlLEVBQUUsQ0FBQztRQUM5QixXQUFNLEdBQW9CLEVBQUUsQ0FBQztRQUV0QyxjQUFTLEdBQUcsS0FBSyxDQUFDO1FBc0ZULFVBQUssR0FBRyxHQUFHLEVBQUU7WUFDNUIsSUFBSSxJQUFJLENBQUMsU0FBUztnQkFBRSxPQUFPO1lBRTNCLE1BQU0sRUFBRSxlQUFlLEVBQUUsZ0JBQWdCLEVBQUUsZUFBZSxFQUFFLEdBQUcsSUFBSSxDQUFDO1lBQ3BFLGdCQUFnQixDQUFDLE1BQU0sR0FBRyxlQUFlLENBQUMs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
@@ -5,6 +5,7 @@ export interface SegmentOffscreenPainterOptions {
5
5
  circuit: MorphoViewerSmallCircuitCell[];
6
6
  loadCell: (id: string) => Promise<MorphoViewerSmallCircuitCellData | null>;
7
7
  onCellLoaded?: () => void;
8
+ dendrogramMix?: number;
8
9
  }
9
10
  export declare class SegmentOffscreenPainter {
10
11
  private readonly onscreenContext;
@@ -15,6 +16,7 @@ export declare class SegmentOffscreenPainter {
15
16
  private readonly cellPainters;
16
17
  private isDeleted;
17
18
  constructor(onscreenContext: TgdContext, options: SegmentOffscreenPainterOptions);
19
+ set dendrogramMix(mix: number);
18
20
  getSections(cell: MorphoViewerSmallCircuitCell): CellSectionIndex | null;
19
21
  getSegmentNear(cell: MorphoViewerSmallCircuitCell, xScreen: number, yScreen: number, radiusInPixels: number): CellSegment | undefined;
20
22
  private getSegmentAt;
@@ -1 +1 @@
1
- {"version":3,"file":"segment-offscreen-painter.d.ts","sourceRoot":"","sources":["../../../../../src/components/morpho-viewer-small-circuit/painter/offscreen-painter/segment-offscreen-painter.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,UAAU,EAKX,MAAM,gBAAgB,CAAC;AAMxB,OAAO,KAAK,EAAE,4BAA4B,EAAE,gCAAgC,EAAE,MAAM,aAAa,CAAC;AAClG,OAAO,KAAK,EAAE,gBAAgB,EAAE,WAAW,EAAE,MAAM,uCAAuC,CAAC;AAa3F,MAAM,WAAW,8BAA8B;IAC7C,OAAO,EAAE,4BAA4B,EAAE,CAAC;IACxC,QAAQ,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,OAAO,CAAC,gCAAgC,GAAG,IAAI,CAAC,CAAC;IAO3E,YAAY,CAAC,EAAE,MAAM,IAAI,CAAC;CAC3B;AAED,qBAAa,uBAAuB;IAWhC,OAAO,CAAC,QAAQ,CAAC,eAAe;IAVlC,SAAgB,OAAO,EAAE,UAAU,CAAC;IAEpC,OAAO,CAAC,QAAQ,CAAC,eAAe,CAA6B;IAC7D,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAa;IAC9C,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAyB;IAE/C,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAkC;IAC/D,OAAO,CAAC,SAAS,CAAS;gBAGP,eAAe,EAAE,UAAU,EAC5C,OAAO,EAAE,8BAA8B;IAmCzC,WAAW,CAAC,IAAI,EAAE,4BAA4B,GAAG,gBAAgB,GAAG,IAAI;IAWxE,cAAc,CACZ,IAAI,EAAE,4BAA4B,EAClC,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,MAAM,EACf,cAAc,EAAE,MAAM,GACrB,WAAW,GAAG,SAAS;IAa1B,OAAO,CAAC,YAAY;IAgBpB,OAAO,CAAC,QAAQ,CAAC,KAAK,CASpB;IAEF,MAAM;CAUP"}
1
+ {"version":3,"file":"segment-offscreen-painter.d.ts","sourceRoot":"","sources":["../../../../../src/components/morpho-viewer-small-circuit/painter/offscreen-painter/segment-offscreen-painter.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,UAAU,EAKX,MAAM,gBAAgB,CAAC;AAMxB,OAAO,KAAK,EAAE,4BAA4B,EAAE,gCAAgC,EAAE,MAAM,aAAa,CAAC;AAClG,OAAO,KAAK,EAAE,gBAAgB,EAAE,WAAW,EAAE,MAAM,uCAAuC,CAAC;AAa3F,MAAM,WAAW,8BAA8B;IAC7C,OAAO,EAAE,4BAA4B,EAAE,CAAC;IACxC,QAAQ,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,OAAO,CAAC,gCAAgC,GAAG,IAAI,CAAC,CAAC;IAO3E,YAAY,CAAC,EAAE,MAAM,IAAI,CAAC;IAE1B,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAED,qBAAa,uBAAuB;IAWhC,OAAO,CAAC,QAAQ,CAAC,eAAe;IAVlC,SAAgB,OAAO,EAAE,UAAU,CAAC;IAEpC,OAAO,CAAC,QAAQ,CAAC,eAAe,CAA6B;IAC7D,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAa;IAC9C,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAyB;IAE/C,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAkC;IAC/D,OAAO,CAAC,SAAS,CAAS;gBAGP,eAAe,EAAE,UAAU,EAC5C,OAAO,EAAE,8BAA8B;IA0CzC,IAAI,aAAa,CAAC,GAAG,EAAE,MAAM,EAE5B;IAGD,WAAW,CAAC,IAAI,EAAE,4BAA4B,GAAG,gBAAgB,GAAG,IAAI;IAWxE,cAAc,CACZ,IAAI,EAAE,4BAA4B,EAClC,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,MAAM,EACf,cAAc,EAAE,MAAM,GACrB,WAAW,GAAG,SAAS;IAa1B,OAAO,CAAC,YAAY;IAgBpB,OAAO,CAAC,QAAQ,CAAC,KAAK,CASpB;IAEF,MAAM;CAUP"}
@@ -4,6 +4,7 @@ import { PainterCell } from "../painter-cell";
4
4
  const RESOLUTION_DIVIDER = 2;
5
5
  export class SegmentOffscreenPainter {
6
6
  constructor(onscreenContext, options) {
7
+ var _a;
7
8
  this.onscreenContext = onscreenContext;
8
9
  this.offscreenCanvas = new OffscreenCanvas(1, 1);
9
10
  this.group = new TgdPainterGroup();
@@ -38,14 +39,19 @@ export class SegmentOffscreenPainter {
38
39
  const painter = new PainterCell(context, {
39
40
  cell,
40
41
  loadCell: options.loadCell,
41
- matrerial: "segment",
42
+ material: "segment",
42
43
  onCellLoaded: () => { var _a; return (_a = options.onCellLoaded) === null || _a === void 0 ? void 0 : _a.call(options); },
43
44
  });
45
+ painter.dendrogramMix = (_a = options.dendrogramMix) !== null && _a !== void 0 ? _a : 0;
44
46
  this.cellPainters.set(cell.id, painter);
45
47
  this.group.add(painter);
46
48
  }
47
49
  this.paint();
48
50
  }
51
+ set dendrogramMix(mix) {
52
+ for (const painter of this.cellPainters.values())
53
+ painter.dendrogramMix = mix;
54
+ }
49
55
  getSections(cell) {
50
56
  var _a, _b;
51
57
  return (_b = (_a = this.cellPainters.get(cell.id)) === null || _a === void 0 ? void 0 : _a.sections) !== null && _b !== void 0 ? _b : null;
@@ -83,4 +89,4 @@ export class SegmentOffscreenPainter {
83
89
  this.isDeleted = true;
84
90
  }
85
91
  }
86
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VnbWVudC1vZmZzY3JlZW4tcGFpbnRlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9jb21wb25lbnRzL21vcnBoby12aWV3ZXItc21hbGwtY2lyY3VpdC9wYWludGVyL29mZnNjcmVlbi1wYWludGVyL3NlZ21lbnQtb2Zmc2NyZWVuLXBhaW50ZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLFVBQVUsRUFDVixlQUFlLEVBQ2YsZUFBZSxFQUNmLGVBQWUsRUFDZixnQkFBZ0IsR0FDakIsTUFBTSxnQkFBZ0IsQ0FBQztBQUV4QixPQUFPLEVBQUUsa0JBQWtCLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUU5RSxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFjOUMsTUFBTSxrQkFBa0IsR0FBRyxDQUFDLENBQUM7QUFjN0IsTUFBTSxPQUFPLHVCQUF1QjtJQVVsQyxZQUNtQixlQUEyQixFQUM1QyxPQUF1QztRQUR0QixvQkFBZSxHQUFmLGVBQWUsQ0FBWTtRQVI3QixvQkFBZSxHQUFHLElBQUksZUFBZSxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQztRQUU1QyxVQUFLLEdBQUcsSUFBSSxlQUFlLEVBQUUsQ0FBQztRQUU5QixpQkFBWSxHQUFHLElBQUksR0FBRyxFQUF1QixDQUFDO1FBQ3ZELGNBQVMsR0FBRyxLQUFLLENBQUM7UUFvRlQsVUFBSyxHQUFHLEdBQUcsRUFBRTtZQUM1QixJQUFJLElBQUksQ0FBQyxTQUFTO2dCQUFFLE9BQU87WUFFM0IsTUFBTSxFQUFFLGVBQWUsRUFBRSxnQkFBZ0IsRUFBRSxlQUFlLEVBQUUsR0FBRyxJQUFJLENBQUM7WUFDcEUsZ0JBQWdCLENBQUMsTUFBTSxHQUFHLGVBQWUsQ0FBQyxNQUFNLENBQUM7WUFDakQsTUFBTSxFQUFFLE1BQU0sRUFBRSxHQUFHLGVBQWUsQ0FBQztZQUNuQyxlQUFlLENB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
92
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VnbWVudC1vZmZzY3JlZW4tcGFpbnRlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9jb21wb25lbnRzL21vcnBoby12aWV3ZXItc21hbGwtY2lyY3VpdC9wYWludGVyL29mZnNjcmVlbi1wYWludGVyL3NlZ21lbnQtb2Zmc2NyZWVuLXBhaW50ZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLFVBQVUsRUFDVixlQUFlLEVBQ2YsZUFBZSxFQUNmLGVBQWUsRUFDZixnQkFBZ0IsR0FDakIsTUFBTSxnQkFBZ0IsQ0FBQztBQUV4QixPQUFPLEVBQUUsa0JBQWtCLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUU5RSxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFjOUMsTUFBTSxrQkFBa0IsR0FBRyxDQUFDLENBQUM7QUFnQjdCLE1BQU0sT0FBTyx1QkFBdUI7SUFVbEMsWUFDbUIsZUFBMkIsRUFDNUMsT0FBdUM7O1FBRHRCLG9CQUFlLEdBQWYsZUFBZSxDQUFZO1FBUjdCLG9CQUFlLEdBQUcsSUFBSSxlQUFlLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDO1FBRTVDLFVBQUssR0FBRyxJQUFJLGVBQWUsRUFBRSxDQUFDO1FBRTlCLGlCQUFZLEdBQUcsSUFBSSxHQUFHLEVBQXVCLENBQUM7UUFDdkQsY0FBUyxHQUFHLEtBQUssQ0FBQztRQWdHVCxVQUFLLEdBQUcsR0FBRyxFQUFFO1lBQzVCLElBQUksSUFBSSxDQUFDLFNBQVM7Z0JBQUUsT0FBTztZQUUzQixNQUFNLEVBQUUsZUFBZSxFQUFFLGdCQUFnQixFQUFFLGVBQWUsRUFBRSxHQUFHLElBQUksQ0FBQztZQUNwRSxnQkFBZ0IsQ0FBQyxNQUFNLEdBQUcsZUFBZSxDQUFDLE1BQU0sQ0FBQztZQUNqRCxNQUFNLEVBQUUsTUFBTSxFQUFFLEdBQUcsZUFBZSxDQUFDO1lBQ25DLGVBQWUs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
@@ -6,15 +6,17 @@ export interface CellSegment extends PickableSegment {
6
6
  sonataSectionId?: number;
7
7
  sectionType: MorphoViewerTreeItemType;
8
8
  isSomaStub: boolean;
9
+ chartStart: ArrayNumber3;
10
+ chartEnd: ArrayNumber3;
9
11
  }
10
12
  export declare class CellSectionIndex implements SectionSegmentIndex {
11
13
  private readonly segments;
12
14
  private readonly bySection;
13
- add(item: MorphoViewerTreeItem, start: ArrayNumber3, end: ArrayNumber3, isSomaStub?: boolean): CellSegment;
15
+ add(item: MorphoViewerTreeItem, start: ArrayNumber3, end: ArrayNumber3, isSomaStub?: boolean, chartStart?: ArrayNumber3, chartEnd?: ArrayNumber3): CellSegment;
14
16
  get length(): number;
15
17
  get(index: number): CellSegment | undefined;
16
18
  getSegmentsOfSection(sectionName: string): CellSegment[];
17
19
  getSectionType(sectionName: string): MorphoViewerTreeItemType | undefined;
18
- getPointAtOffset(sectionName: string, offset: number): ArrayNumber3 | null;
20
+ getPointAtOffset(sectionName: string, offset: number, mix?: number): ArrayNumber3 | null;
19
21
  }
20
22
  //# sourceMappingURL=section-index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"section-index.d.ts","sourceRoot":"","sources":["../../../../../../src/components/morpho-viewer-small-circuit/painter/painter-cell/factory/section-index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AACnD,OAAO,KAAK,EACV,oBAAoB,EACpB,wBAAwB,EACzB,MAAM,kCAAkC,CAAC;AAC1C,OAAO,KAAK,EAAE,eAAe,EAAE,mBAAmB,EAAE,MAAM,sBAAsB,CAAC;AAGjF,MAAM,WAAW,WAAY,SAAQ,eAAe;IAElD,KAAK,EAAE,MAAM,CAAC;IAEd,eAAe,CAAC,EAAE,MAAM,CAAC;IAEzB,WAAW,EAAE,wBAAwB,CAAC;IAEtC,UAAU,EAAE,OAAO,CAAC;CACrB;AASD,qBAAa,gBAAiB,YAAW,mBAAmB;IAC1D,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAqB;IAC9C,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAoC;IAQ9D,GAAG,CACD,IAAI,EAAE,oBAAoB,EAC1B,KAAK,EAAE,YAAY,EACnB,GAAG,EAAE,YAAY,EACjB,UAAU,UAAQ,GACjB,WAAW;IAwBd,IAAI,MAAM,IAAI,MAAM,CAEnB;IAGD,GAAG,CAAC,KAAK,EAAE,MAAM,GAAG,WAAW,GAAG,SAAS;IAK3C,oBAAoB,CAAC,WAAW,EAAE,MAAM,GAAG,WAAW,EAAE;IAWxD,cAAc,CAAC,WAAW,EAAE,MAAM,GAAG,wBAAwB,GAAG,SAAS;IASzE,gBAAgB,CAAC,WAAW,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,YAAY,GAAG,IAAI;CAkB3E"}
1
+ {"version":3,"file":"section-index.d.ts","sourceRoot":"","sources":["../../../../../../src/components/morpho-viewer-small-circuit/painter/painter-cell/factory/section-index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AACnD,OAAO,KAAK,EACV,oBAAoB,EACpB,wBAAwB,EACzB,MAAM,kCAAkC,CAAC;AAC1C,OAAO,KAAK,EAAE,eAAe,EAAE,mBAAmB,EAAE,MAAM,sBAAsB,CAAC;AAGjF,MAAM,WAAW,WAAY,SAAQ,eAAe;IAElD,KAAK,EAAE,MAAM,CAAC;IAEd,eAAe,CAAC,EAAE,MAAM,CAAC;IAEzB,WAAW,EAAE,wBAAwB,CAAC;IAEtC,UAAU,EAAE,OAAO,CAAC;IAEpB,UAAU,EAAE,YAAY,CAAC;IACzB,QAAQ,EAAE,YAAY,CAAC;CACxB;AASD,qBAAa,gBAAiB,YAAW,mBAAmB;IAC1D,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAqB;IAC9C,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAoC;IAQ9D,GAAG,CACD,IAAI,EAAE,oBAAoB,EAC1B,KAAK,EAAE,YAAY,EACnB,GAAG,EAAE,YAAY,EACjB,UAAU,UAAQ,EAClB,UAAU,GAAE,YAAoB,EAChC,QAAQ,GAAE,YAAkB,GAC3B,WAAW;IA0Bd,IAAI,MAAM,IAAI,MAAM,CAEnB;IAGD,GAAG,CAAC,KAAK,EAAE,MAAM,GAAG,WAAW,GAAG,SAAS;IAK3C,oBAAoB,CAAC,WAAW,EAAE,MAAM,GAAG,WAAW,EAAE;IAWxD,cAAc,CAAC,WAAW,EAAE,MAAM,GAAG,wBAAwB,GAAG,SAAS;IAWzE,gBAAgB,CAAC,WAAW,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,SAAI,GAAG,YAAY,GAAG,IAAI;CAkBpF"}
@@ -3,7 +3,7 @@ export class CellSectionIndex {
3
3
  this.segments = [];
4
4
  this.bySection = new Map();
5
5
  }
6
- add(item, start, end, isSomaStub = false) {
6
+ add(item, start, end, isSomaStub = false, chartStart = start, chartEnd = end) {
7
7
  var _a;
8
8
  const sectionName = item.sectionId;
9
9
  const siblings = (_a = this.bySection.get(sectionName)) !== null && _a !== void 0 ? _a : [];
@@ -15,6 +15,8 @@ export class CellSectionIndex {
15
15
  segmentLength: distance(start, end),
16
16
  start,
17
17
  end,
18
+ chartStart,
19
+ chartEnd,
18
20
  sonataSectionId: item.sonataSectionId,
19
21
  sectionType: item.type,
20
22
  isSomaStub,
@@ -40,23 +42,23 @@ export class CellSectionIndex {
40
42
  var _a, _b;
41
43
  return (_b = (_a = this.bySection.get(sectionName)) === null || _a === void 0 ? void 0 : _a[0]) === null || _b === void 0 ? void 0 : _b.sectionType;
42
44
  }
43
- getPointAtOffset(sectionName, offset) {
45
+ getPointAtOffset(sectionName, offset, mix = 0) {
44
46
  const segments = this.getSegmentsOfSection(sectionName);
45
47
  if (segments.length === 0)
46
48
  return null;
47
49
  const total = segments.reduce((sum, segment) => sum + segment.segmentLength, 0);
48
50
  if (total <= 0)
49
- return segments[0].start;
51
+ return at(segments[0], 0, mix);
50
52
  const target = Math.min(Math.max(offset, 0), 1) * total;
51
53
  let walked = 0;
52
54
  for (const segment of segments) {
53
55
  if (walked + segment.segmentLength >= target) {
54
56
  const within = segment.segmentLength > 0 ? (target - walked) / segment.segmentLength : 0;
55
- return lerp(segment.start, segment.end, within);
57
+ return at(segment, within, mix);
56
58
  }
57
59
  walked += segment.segmentLength;
58
60
  }
59
- return segments[segments.length - 1].end;
61
+ return at(segments[segments.length - 1], 1, mix);
60
62
  }
61
63
  }
62
64
  function lerp(from, to, alpha) {
@@ -69,4 +71,11 @@ function lerp(from, to, alpha) {
69
71
  function distance([x1, y1, z1], [x2, y2, z2]) {
70
72
  return Math.sqrt(Math.pow((x1 - x2), 2) + Math.pow((y1 - y2), 2) + Math.pow((z1 - z2), 2));
71
73
  }
72
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VjdGlvbi1pbmRleC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3NyYy9jb21wb25lbnRzL21vcnBoby12aWV3ZXItc21hbGwtY2lyY3VpdC9wYWludGVyL3BhaW50ZXItY2VsbC9mYWN0b3J5L3NlY3Rpb24taW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBMEJBLE1BQU0sT0FBTyxnQkFBZ0I7SUFBN0I7UUFDbUIsYUFBUSxHQUFrQixFQUFFLENBQUM7UUFDN0IsY0FBUyxHQUFHLElBQUksR0FBRyxFQUF5QixDQUFDO0lBcUZoRSxDQUFDO0lBN0VDLEdBQUcsQ0FDRCxJQUEwQixFQUMxQixLQUFtQixFQUNuQixHQUFpQixFQUNqQixVQUFVLEdBQUcsS0FBSzs7UUFFbEIsTUFBTSxXQUFXLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQztRQUNuQyxNQUFNLFFBQVEsR0FBRyxNQUFBLElBQUksQ0FBQyxTQUFTLENBQUMsR0FBRyxDQUFDLFdBQVcsQ0FBQyxtQ0FBSSxFQUFFLENBQUM7UUFDdkQsTUFBTSxNQUFNLEdBQUcsTUFBTSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsU0FBUyxFQUFFLEVBQUUsQ0FBQyxDQUFDO1FBQ25ELE1BQU0sT0FBTyxHQUFnQjtZQUMzQixLQUFLLEVBQUUsSUFBSSxDQUFDLFFBQVEsQ0FBQyxNQUFNO1lBQzNCLFdBQVc7WUFHWCxZQUFZLEVBQUUsTUFBTSxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsTUFBTTtZQUM3RCxhQUFhLEVBQUUsUUFBUSxDQUFDLEtBQUssRUFBRSxHQUFHLENBQUM7WUFDbkMsS0FBSztZQUNMLEdBQUc7WUFDSCxlQUFlLEVBQUUsSUFBSSxDQUFDLGVBQWU7WUFDckMsV0FBVyxFQUFFLElBQUksQ0FBQyxJQUFJO1lBQ3RCLFVBQVU7U0FDWCxDQUFDO1FBQ0YsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDNUIsUUFBUSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUN2QixJQUFJLENBQUMsU0FBUyxDQUFDLEdBQUcsQ0FBQyxXQUFXLEVBQUUsUUFBUSxDQUFDLENBQUM7UUFDMUMsT0FBTyxPQUFPLENBQUM7SUFDakIsQ0FBQztJQUdELElBQUksTUFBTTtRQUNSLE9BQU8sSUFBSSxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUM7SUFDOUIsQ0FBQztJQUdELEdBQUcsQ0FBQyxLQUFhO1FBQ2YsT0FBTyxJQUFJLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQzlCLENBQUM7SUFHRCxvQkFBb0IsQ0FBQyxXQUFtQjs7UUFDdEMsTUFBTSxHQUFHLEdBQUcsTUFBQSxJQUFJLENBQUMsU0FBUyxDQUFDLEdBQUcsQ0FBQyxXQUFXLENBQUMsbUNBQUksRUFBRSxDQUFDO1FBQ2xELE1BQU0sUUFBUSxHQUFHLEdBQUcsQ0FBQyxNQUFNLENBQUMsQ0FBQyxPQUFPLEVBQUUsRUFBRSxDQUFDLENBQUMsT0FBTyxDQUFDLFVBQVUsQ0FBQyxDQUFDO1FBQzlELE9BQU8sUUFBUSxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDO0lBQzlDLENBQUM7SUFPRCxjQUFjLENBQUMsV0FBbUI7O1FBQ2hDLE9BQU8sTUFBQSxNQUFBLElBQUksQ0FBQyxTQUFTLENBQUMsR0FBRyxDQUFDLFdBQVcsQ0FBQywwQ0FBRyxDQUFDLENBQUMsMENBQUUsV0FBVyxDQUFDO0lBQzNELENBQUM7SUFPRCxnQkFBZ0IsQ0FBQyxXQUFtQixFQUFFLE1BQWM7UUFDbEQsTUFBTSxRQUFRLEdBQUcsSUFBSSxDQUFDLG9CQUFvQixDQUFDLFdBQVcsQ0FBQyxDQUFDO1FBQ3hELElBQUksUUFBUSxDQUFDLE1BQU0sS0FBSyxDQUFDO1lBQUUsT0FBTyxJQUFJLENBQUM7UUFFdkMsTUFBTSxLQUFLLEdBQUcsUUFBUSxDQUFDLE1BQU0sQ0FBQyxDQUFDLEdBQUcsRUFBRSxPQUFPLEVBQUUsRUFBRSxDQUFDLEdBQUcsR0FBRyxPQUFPLENBQUMsYUFBYSxFQUFFLENBQUMsQ0FBQyxDQUFDO1FBQ2hGLElBQUksS0FBSyxJQUFJLENBQUM7WUFBRSxPQUFPLFFBQVEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUM7UUFFekMsTUFBTSxNQUFNLEdBQUcsSUFBSSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLE1BQU0sRUFBRSxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsR0FBRyxLQUFLLENBQUM7UUFDeEQsSUFBSSxNQUFNLEdBQUcsQ0FBQyxDQUFDO1FBQ2YsS0FBSyxNQUFNLE9BQU8sSUFBSSxRQUFRLEVBQUUsQ0FBQztZQUMvQixJQUFJLE1BQU0sR0FBRyxPQUFPLENBQUMsYUFBYSxJQUFJLE1BQU0sRUFBRSxDQUFDO2dCQUM3QyxNQUFNLE1BQU0sR0FBRyxPQUFPLENBQUMsYUFBYSxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxNQUFNLEdBQUcsTUFBTSxDQUFDLEdBQUcsT0FBTyxDQUFDLGFBQWEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO2dCQUN6RixPQUFPLElBQUksQ0FBQyxPQUFPLENBQUMsS0FBSyxFQUFFLE9BQU8sQ0FBQyxHQUFHLEVBQUUsTUFBTSxDQUFDLENBQUM7WUFDbEQsQ0FBQztZQUNELE1BQU0sSUFBSSxPQUFPLENBQUMsYUFBYSxDQUFDO1FBQ2xDLENBQUM7UUFDRCxPQUFPLFFBQVEsQ0FBQyxRQUFRLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQztJQUMzQyxDQUFDO0NBQ0Y7QUFFRCxTQUFTLElBQUksQ0FBQyxJQUFrQixFQUFFLEVBQWdCLEVBQUUsS0FBYTtJQUMvRCxPQUFPO1FBQ0wsSUFBSSxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxHQUFHLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxHQUFHLEtBQUs7UUFDbkMsSUFBSSxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxHQUFHLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxHQUFHLEtBQUs7UUFDbkMsSUFBSSxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxHQUFHLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxHQUFHLEtBQUs7S0FDcEMsQ0FBQztBQUNKLENBQUM7QUFFRCxTQUFTLFFBQVEsQ0FBQyxDQUFDLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxDQUFlLEVBQUUsQ0FBQyxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsQ0FBZTtJQUN0RSxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsU0FBQSxDQUFDLEVBQUUsR0FBRyxFQUFFLENBQUMsRUFBSSxDQUFDLENBQUEsR0FBRyxTQUFBLENBQUMsRUFBRSxHQUFHLEVBQUUsQ0FBQyxFQUFJLENBQUMsQ0FBQSxHQUFHLFNBQUEsQ0FBQyxFQUFFLEdBQUcsRUFBRSxDQUFDLEVBQUksQ0FBQyxDQUFBLENBQUMsQ0FBQztBQUNyRSxDQUFDIn0=
74
+ function at(segment, within, mix) {
75
+ const solid = lerp(segment.start, segment.end, within);
76
+ if (mix <= 0)
77
+ return solid;
78
+ const chart = lerp(segment.chartStart, segment.chartEnd, within);
79
+ return lerp(solid, chart, mix);
80
+ }
81
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VjdGlvbi1pbmRleC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3NyYy9jb21wb25lbnRzL21vcnBoby12aWV3ZXItc21hbGwtY2lyY3VpdC9wYWludGVyL3BhaW50ZXItY2VsbC9mYWN0b3J5L3NlY3Rpb24taW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBNkJBLE1BQU0sT0FBTyxnQkFBZ0I7SUFBN0I7UUFDbUIsYUFBUSxHQUFrQixFQUFFLENBQUM7UUFDN0IsY0FBUyxHQUFHLElBQUksR0FBRyxFQUF5QixDQUFDO0lBMkZoRSxDQUFDO0lBbkZDLEdBQUcsQ0FDRCxJQUEwQixFQUMxQixLQUFtQixFQUNuQixHQUFpQixFQUNqQixVQUFVLEdBQUcsS0FBSyxFQUNsQixhQUEyQixLQUFLLEVBQ2hDLFdBQXlCLEdBQUc7O1FBRTVCLE1BQU0sV0FBVyxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUM7UUFDbkMsTUFBTSxRQUFRLEdBQUcsTUFBQSxJQUFJLENBQUMsU0FBUyxDQUFDLEdBQUcsQ0FBQyxXQUFXLENBQUMsbUNBQUksRUFBRSxDQUFDO1FBQ3ZELE1BQU0sTUFBTSxHQUFHLE1BQU0sQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLFNBQVMsRUFBRSxFQUFFLENBQUMsQ0FBQztRQUNuRCxNQUFNLE9BQU8sR0FBZ0I7WUFDM0IsS0FBSyxFQUFFLElBQUksQ0FBQyxRQUFRLENBQUMsTUFBTTtZQUMzQixXQUFXO1lBR1gsWUFBWSxFQUFFLE1BQU0sQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLE1BQU07WUFDN0QsYUFBYSxFQUFFLFFBQVEsQ0FBQyxLQUFLLEVBQUUsR0FBRyxDQUFDO1lBQ25DLEtBQUs7WUFDTCxHQUFHO1lBQ0gsVUFBVTtZQUNWLFFBQVE7WUFDUixlQUFlLEVBQUUsSUFBSSxDQUFDLGVBQWU7WUFDckMsV0FB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
@@ -5,5 +5,6 @@ export declare function createCellFromTree(context: TgdContext, material: TgdMat
5
5
  bbox: TgdBoundingBox;
6
6
  node: TgdPainterNode;
7
7
  sections: CellSectionIndex;
8
+ setDendrogramMix(mix: number): void;
8
9
  };
9
10
  //# sourceMappingURL=tree.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"tree.d.ts","sourceRoot":"","sources":["../../../../../../src/components/morpho-viewer-small-circuit/painter/painter-cell/factory/tree.ts"],"names":[],"mappings":"AAAA,OAAO,EAIL,cAAc,EACd,KAAK,UAAU,EACf,KAAK,WAAW,EAChB,cAAc,EAGf,MAAM,gBAAgB,CAAC;AAExB,OAAO,EACL,KAAK,gBAAgB,EAGtB,MAAM,kCAAkC,CAAC;AAG1C,OAAO,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AAenD,wBAAgB,kBAAkB,CAChC,OAAO,EAAE,UAAU,EACnB,QAAQ,EAAE,WAAW,EACrB,IAAI,EAAE,gBAAgB,EACtB,YAAY,EAAE,OAAO,EACrB,YAAY,UAAQ,GACnB;IAAE,IAAI,EAAE,cAAc,CAAC;IAAC,IAAI,EAAE,cAAc,CAAC;IAAC,QAAQ,EAAE,gBAAgB,CAAA;CAAE,CAmF5E"}
1
+ {"version":3,"file":"tree.d.ts","sourceRoot":"","sources":["../../../../../../src/components/morpho-viewer-small-circuit/painter/painter-cell/factory/tree.ts"],"names":[],"mappings":"AAAA,OAAO,EAIL,cAAc,EACd,KAAK,UAAU,EACf,KAAK,WAAW,EAChB,cAAc,EAGf,MAAM,gBAAgB,CAAC;AAExB,OAAO,EACL,KAAK,gBAAgB,EAGtB,MAAM,kCAAkC,CAAC;AAG1C,OAAO,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AAuBnD,wBAAgB,kBAAkB,CAChC,OAAO,EAAE,UAAU,EACnB,QAAQ,EAAE,WAAW,EACrB,IAAI,EAAE,gBAAgB,EACtB,YAAY,EAAE,OAAO,EACrB,YAAY,UAAQ,GACnB;IACD,IAAI,EAAE,cAAc,CAAC;IACrB,IAAI,EAAE,cAAc,CAAC;IACrB,QAAQ,EAAE,gBAAgB,CAAC;IAC3B,gBAAgB,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,CAAC;CACrC,CAkKA"}