openpencil/src/engine
Danila Poyarkov bb5b4b57e5 Viewport culling: skip rendering off-screen nodes
Compute the world-space viewport from pan/zoom and skip nodes
whose bounds don't intersect it. Only culls leaf nodes and
clipped containers — unclipped parents are still traversed since
their children may extend beyond the parent bounds.

Handles rotation by expanding the bounding box to the diagonal.
Section titles and component labels also culled during collection.
Export path (renderSceneToCanvas) uses infinite viewport to render all.
2026-02-28 19:14:00 +03:00
..
canvaskit.ts Add oxlint, oxfmt, typescript-go 2026-02-27 15:52:55 +03:00
clipboard.ts Add components, component sets, and instances 2026-02-28 17:46:28 +03:00
color.ts Fill type picker with solid/gradient/image tabs and gradient stop editing 2026-02-28 17:26:50 +03:00
fig-export.ts Add components, component sets, and instances 2026-02-28 17:46:28 +03:00
fonts.ts Fix text disappearing on window resize 2026-02-28 19:08:16 +03:00
layout.ts Add layout tests, fix cross-axis sizing bugs 2026-02-28 13:59:39 +03:00
renderer.ts Viewport culling: skip rendering off-screen nodes 2026-02-28 19:14:00 +03:00
scene-graph.ts Fix component interaction: click selects component, drag by label, no white fill 2026-02-28 18:28:55 +03:00
snap.ts Rotation-aware snap guides and selection bounds 2026-02-28 01:24:23 +03:00
undo.ts Wire undo/redo into all editor operations 2026-02-28 06:28:17 +03:00
vector.ts Fix open paths rendering as closed 2026-02-28 07:15:07 +03:00