All files / tools/src/types LabelmapTypes.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 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64                                                                                                                               
/**
 * Active labelmap style properties
 */
export type BaseLabelmapStyle = {
  /** whether to render segmentation outline */
  renderOutline?: boolean;
  /** thickness of the outline when segmentation is active - all segments */
  outlineWidth?: number;
  /** delta thickness of the active segment index outline (0 means same thickness,
   * 1 means 1px thicker, -1 means 1px thinner) */
  activeSegmentOutlineWidthDelta?: number;
  /** whether to render segmentation filling */
  renderFill?: boolean;
  /** alpha of the fill */
  fillAlpha?: number;
  /** alpha of outline for active segmentation */
  outlineOpacity?: number;
};
 
/**
 * Inactive labelmap style properties
 */
export type InactiveLabelmapStyle = {
  /** whether to render segmentation outline when inactive */
  renderOutlineInactive?: boolean;
  /** thickness of the outline when segmentation is inactive - all segments */
  outlineWidthInactive?: number;
  /** whether to render segmentation filling when inactive */
  renderFillInactive?: boolean;
  /** alpha of the fill when inactive */
  fillAlphaInactive?: number;
  /** alpha of outline for inactive segmentation */
  outlineOpacityInactive?: number;
};
 
/**
 * Combined labelmap style for both active and inactive states
 */
export type LabelmapStyle = BaseLabelmapStyle & InactiveLabelmapStyle;
 
export type LabelmapSegmentationDataVolume = {
  volumeId: string;
  referencedVolumeId?: string;
};
 
export type LabelmapSegmentationDataStack = {
  /**
   * array of imageIds that are associated with this segmentation
   * for each slice
   */
  imageIds: string[];
};
 
export type LabelmapSegmentationData =
  | LabelmapSegmentationDataVolume
  | LabelmapSegmentationDataStack
  // PolySeg version that has both
  | {
      volumeId?: string;
      referencedVolumeId?: string;
      referencedImageIds?: string[];
      imageIds?: string[];
    };