diff --git a/line-segment-intersection/src/App.svelte b/line-segment-intersection/src/App.svelte index e1bc327..7193edc 100644 --- a/line-segment-intersection/src/App.svelte +++ b/line-segment-intersection/src/App.svelte @@ -77,18 +77,16 @@ } function handleCanvasClick(event) { - // If we're about to turn off tracking, update position one last time - if (trackHover) { - const rect = canvas.getBoundingClientRect(); - const mouseX = event.clientX - rect.left; - const mouseY = event.clientY - rect.top; + // Update position at click location before toggling tracking + const rect = canvas.getBoundingClientRect(); + const mouseX = event.clientX - rect.left; + const mouseY = event.clientY - rect.top; - // Add half grid unit offset for snapping to closest grid intersection - userPoint = { - x: Math.floor((mouseX + GRID_SIZE / 2) / GRID_SIZE), - y: Math.floor((HEIGHT - mouseY + GRID_SIZE / 2) / GRID_SIZE) - }; - } + // Add half grid unit offset for snapping to closest grid intersection + userPoint = { + x: Math.floor((mouseX + GRID_SIZE / 2) / GRID_SIZE), + y: Math.floor((HEIGHT - mouseY + GRID_SIZE / 2) / GRID_SIZE) + }; trackHover = !trackHover; }