import type { Sprite } from '@/types/sprites'; import { getMaxDimensions } from './useSprites'; /** * Calculate negative spacing to add to top-left of cells. * Uses half the available space so spacing is equal on all sides. */ export function calculateNegativeSpacing(sprites: Sprite[], enabled: boolean): number { if (!enabled || sprites.length === 0) return 0; const { maxWidth, maxHeight } = getMaxDimensions(sprites); const minWidth = Math.min(...sprites.map(s => s.width)); const minHeight = Math.min(...sprites.map(s => s.height)); // Available space is the gap between cell size and smallest sprite const availableWidth = maxWidth - minWidth; const availableHeight = maxHeight - minHeight; // Use half to balance spacing equally on all sides return Math.floor(Math.min(availableWidth, availableHeight) / 2); }