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 | import type { Types } from '@cornerstonejs/core'; import type { Annotation } from '../../types/AnnotationTypes'; export type BidirectionalData = { majorAxis: [Types.Point3, Types.Point3]; minorAxis: [Types.Point3, Types.Point3]; maxMajor: number; maxMinor: number; segmentIndex: number; label?: string; color?: string | number[]; referencedImageId: string; sliceIndex: number; }; /** * Creates data suitable for the BidirectionalTool from the basic bidirectional * data object. */ export default function createBidirectionalToolData( bidirectionalData: BidirectionalData, viewport ): Annotation { const { majorAxis, minorAxis, label = '', sliceIndex } = bidirectionalData; const [major0, major1] = majorAxis; const [minor0, minor1] = minorAxis; const points = [major0, major1, minor0, minor1]; const bidirectionalToolData = { highlighted: true, invalidated: true, metadata: { toolName: 'Bidirectional', // Get a view reference for the slice this applies to, not the currently // displayed slice. This will fill in the remaining data for that slice ...viewport.getViewReference({ sliceIndex }), }, data: { handles: { points, textBox: { hasMoved: false, worldPosition: [0, 0, 0] as Types.Point3, worldBoundingBox: { topLeft: [0, 0, 0] as Types.Point3, topRight: [0, 0, 0] as Types.Point3, bottomLeft: [0, 0, 0] as Types.Point3, bottomRight: [0, 0, 0] as Types.Point3, }, }, activeHandleIndex: null, }, label, cachedStats: {}, }, isLocked: false, isVisible: true, }; return bidirectionalToolData; } |