cad-editor/src
Repository files (latest commit first)
Filename Latest commit message Latest commit date
Hakan 78cbb5570e perf(scene): frustum-cull wires using camera view AABB
Block defns and top-level entities now know their world-space XY
AABB, and `tessellate_entity` / `expand_insert` early-out for anything
that doesn't intersect the camera's view rect. Tested commit-only on
time_open (correct subset emitted with default camera); GUI run
pending user verification.

Cache plumbing:
  - `LocalWire` / `BlockDefn` carry `aabb_local` (post-build recursive
    union over nested defns).
  - `Scene::view_world_aabb()` derives a 25%-margined world rect from
    the active camera + last-seen render aspect.
  - `wire_cache` / `paper_sheet_cache` keys widen to
    `(geometry_epoch, camera_generation)` so pan/zoom invalidates the
    cached wire list — and pipeline `cached_epoch` widens to match
    so the GPU re-uploads on view change.
  - `XrefStatus::Unloaded` ack already shipped — orthogonal to this.

Also adds `examples/xref_states.rs` to dump per-block_record xref
metadata for diagnosing the is_loaded / unloaded distinction.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-05-14 13:52:04 +03:00
..
app feat(xref): honor BlockRecord is_loaded — skip Unloaded xrefs 2026-05-14 11:20:11 +03:00
command cargo fmt 2026-05-12 10:36:15 +03:00
entities fix(render): preserve f64 precision until world_offset subtraction 2026-05-12 23:47:40 +03:00
io feat(xref): honor BlockRecord is_loaded — skip Unloaded xrefs 2026-05-14 11:20:11 +03:00
modules fix(explode): correct arc/ellipse direction in mirrored INSERT blocks 2026-05-12 22:04:12 +03:00
scene perf(scene): frustum-cull wires using camera view AABB 2026-05-14 13:52:04 +03:00
shaders fix(hatch): more improvement on arc boundary and pattern 2026-05-10 20:29:39 +03:00
snap cargo fmt 2026-05-12 10:36:15 +03:00
ui feat(io): show loading overlay while opening CAD files 2026-05-13 09:59:07 +03:00
lib.rs perf(scene): cache block defns + batch wires by style 2026-05-14 11:12:08 +03:00
linetypes.rs cargo fmt 2026-05-12 10:36:15 +03:00
main.rs perf(scene): cache block defns + batch wires by style 2026-05-14 11:12:08 +03:00
patterns.rs first commit 2026-03-22 14:56:27 +03:00