Add sheet viewer page
This commit is contained in:
21
util.ts
21
util.ts
@ -5,4 +5,25 @@ export const inRect = (x: number, y: number, rectX: number, rectY: number, rectW
|
||||
y >= rectY &&
|
||||
y < rectY+rectH
|
||||
)
|
||||
}
|
||||
|
||||
export function reGridWithGap (x: number, y: number, gridX: number, gridY: number, cellW: number, cellH: number, gapX: number, gapY: number): {x: number, y: number} | null {
|
||||
const gx = Math.floor((x-gridX)/(cellW+gapX));
|
||||
const gy = Math.floor((y-gridY)/(cellH+gapY));
|
||||
if (x >= gridX+(cellW+gapX)*gx+cellW || y >= gridY+(cellH+gapY)*gy+cellH) {
|
||||
return null;
|
||||
}
|
||||
return {
|
||||
x: Math.floor((x-gridX)/(cellW+gapX)),
|
||||
y: Math.floor((y-gridY)/(cellH+gapY)),
|
||||
}
|
||||
}
|
||||
|
||||
export function reGrid (x: number, y: number, gridX: number, gridY: number, cellW: number, cellH: number): {x: number, y: number} {
|
||||
const gx = Math.floor((x-gridX)/(cellW));
|
||||
const gy = Math.floor((y-gridY)/(cellH));
|
||||
return {
|
||||
x: gx,
|
||||
y: gy,
|
||||
}
|
||||
}
|
Reference in New Issue
Block a user