All files / tools/src/types FloodFillTypes.ts

0% Statements 0/0
0% Branches 0/0
0% Functions 0/0
0% Lines 0/0

Press n or j to go to the next uncovered block, b, p or k for the previous block.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22                                           
import type { Types } from '@cornerstonejs/core';
 
type FloodFillResult = {
  flooded: Types.Point2[] | Types.Point3[];
};
 
type FloodFillGetter3D = (x: number, y: number, z: number) => unknown;
type FloodFillGetter2D = (x: number, y: number) => unknown;
type FloodFillGetter = FloodFillGetter2D | FloodFillGetter3D;
 
type FloodFillOptions = {
  onFlood?: (x: number, y: number, z?: number) => void;
  onBoundary?: (x: number, y: number, z?: number) => void;
  equals?: (a, b) => boolean; // Equality operation for your datastructure. Defaults to a === b.
  diagonals?: boolean; // Whether to flood fill across diagonals. Default false.
  bounds?: Map<number, Types.Point2 | Types.Point3>; //Store the bounds
  // Return false to exclude
  filter?: (point) => boolean;
};
 
export type { FloodFillResult, FloodFillGetter, FloodFillOptions };