summaryrefslogtreecommitdiff
path: root/web/src/renderGrid.ts
diff options
context:
space:
mode:
authorJosh Kingsley <josh@joshkingsley.me>2025-10-25 22:05:04 +0300
committerJosh Kingsley <josh@joshkingsley.me>2025-10-25 22:10:04 +0300
commit1b8d05bf83d7bd9ab425852f519ea81bdc379444 (patch)
treea2555ce10f3c607c6809d020ba4d31fa3c05c7fb /web/src/renderGrid.ts
parent5404a95c15e176d25728bf1a319ddb9828b23625 (diff)
feat(web): render and draw grid
Diffstat (limited to 'web/src/renderGrid.ts')
-rw-r--r--web/src/renderGrid.ts64
1 files changed, 0 insertions, 64 deletions
diff --git a/web/src/renderGrid.ts b/web/src/renderGrid.ts
deleted file mode 100644
index 476876b..0000000
--- a/web/src/renderGrid.ts
+++ /dev/null
@@ -1,64 +0,0 @@
-import Rect from "./math/Rect";
-import { Cell, CellRef, Grid, Row, RowRef } from "./types";
-
-export interface RenderedCell extends Cell {
- cellRef: CellRef;
- rect: Rect;
-}
-
-export interface RenderedRow {
- rowRef: RowRef;
- rect: Rect;
- renderedCells: RenderedCell[];
-}
-
-export interface RenderedGrid extends Grid {
- rect: Rect;
- renderedRows: RenderedRow[];
-}
-
-function renderCell(grid: Grid, row: Row, cell: Cell): RenderedCell {}
-
-function renderRow(grid: Grid, row: Row): RenderedRow {
- let topLeftX = 0;
-
- const renderedCells = row.cells.map((cell, cellIndex) => {
- const renderedCell = renderCell(grid, row, cell);
- topLeftX = renderedCell.rect.bottomRight.y;
- return renderedCell;
- });
-}
-
-function renderRows(grid: Grid): RenderedRow[] {
- const renderedRows: RenderedRow[] = [];
-
- let partIndex = 0;
- let rowIndex = 0;
- let topLeftY = 0;
- let renderedRowIndex = 0;
-
- while (true) {
- if (!grid.parts[partIndex]?.rows[rowIndex]) break;
-
- const row = grid.parts[partIndex].rows[rowIndex];
- const renderedRow = renderRow(grid, row);
-
- topLeftY = renderedRow.rect.bottomRight.y;
- renderedRows.push(renderedRow);
-
- if (!grid.parts[++partIndex]) {
- partIndex = 0;
- rowIndex++;
- }
-
- renderedRowIndex++;
- }
-
- return renderedRows;
-}
-
-export default function renderGrid(grid: Grid) {
- const renderedRows = renderRows(grid);
- const rect = renderedRows[0].rect.extend(renderedRows.at(-1)!.rect);
- return { ...grid, rect, renderedRows };
-}