All files / tools/src/types SplineCurveSegment.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                                                         
import type { Types } from '@cornerstonejs/core';
import type { SplineLineSegment } from './SplineLineSegment';
 
/**
 * Spline curve segment the is part of a spline path
 */
export type SplineCurveSegment = {
  /**
   * Control Points that influences the spline curve segment.
   *
   * For cubic splines the curve goes from P1 and P2 but it is also influenced by the
   * previous point (P0) and the next point (P3)
   */
  controlPoints: {
    p0: Types.Point2;
    p1: Types.Point2;
    p2: Types.Point2;
    p3: Types.Point2;
  };
  /** Axis-aligned bounding (minX, minY, maxX, maxY) */
  aabb: Types.AABB2;
  /** Length of the curve segment */
  length: number;
  /** Total length of all previous curve segments */
  previousCurveSegmentsLength: number;
  /** Line segments that makes the curve segment */
  lineSegments: SplineLineSegment[];
};