All files / src/core/grid grid.ts

0% Statements 0/0
0% Branches 1/1
0% Functions 1/1
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                                                                         
import { Point, EdgeInfo } from "../../types";
 
export interface Grid {
  pixelToCell(pixel: Point): { col: number; row: number } | null;
  cellToPixel(cell: { col: number; row: number }): Point;
  getNeighbors(cell: {
    col: number;
    row: number;
  }): { col: number; row: number }[];
 
  getCellPolygon(cell: { col: number; row: number }): Point[];
  getCellEdges(cell: { col: number; row: number }): EdgeInfo[];
 
  getEdgeAt(
    pixel: Point,
    threshold: number,
    gridWidth: number,
    gridHeight: number
  ): EdgeInfo | null;
  getVertexAt(
    pixel: Point,
    threshold: number,
    gridWidth: number,
    gridHeight: number
  ): Point | null;
  getEdgesAtVertex(
    vertex: Point,
    gridWidth: number,
    gridHeight: number
  ): EdgeInfo[];
}
 
export interface CairoGridOptions {
  scale: number;
  pentagonType: "catalan" | "type4";
}