forked from 1b-agent/opencadstudio-upstream
fix(dxf): stop writing a duplicate *Active viewport (#319)
Opening a DXF whose active viewport is stored uppercase (*ACTIVE), editing and re-saving produced a file with two full-window model-space viewports — the file's own *ACTIVE plus a fresh *Active we add on save. The reserved viewport name is case-insensitive, so the two didn't collapse and other CAD apps drew them one on top of the other, which read as the copied objects being linked / "reacting as one". save_model_tiles_to_vports dropped existing active viewports with a case-sensitive `name != "*Active"` filter, so an uppercase *ACTIVE survived and sat next to the new entry. Route every *Active comparison (save filter + camera/tile restore) through a case-insensitive is_active_vport_name helper so the file's record is recognised and replaced instead of duplicated. Also bumps acadrust to #99f75fe (merged PR #1): the ASCII DXF writer now emits shortest round-trippable floats instead of the full 16-digit expansion, halving the round-tripped file size. Co-Authored-By: Claude Opus 4.8 <[email protected]>
This commit is contained in:
1 parent
28414f8cef
commit
9838cd6d83
2 files changed
+16
-6
No files matched your search
Generated
+1
-1
@@ -71,7 +71,7 @@ checksum = "366ffbaa4442f4684d91e2cd7c5ea7c4ed8add41959a31447066e279e432b618"
|
||||
[[package]]
|
||||
name = "acadrust"
|
||||
version = "0.4.0"
|
||||
source = "git+https://github.com/HakanSeven12/acadrust?branch=main#f1f4dbf9f0e1273670556f86d3c26f2b14543fcc"
|
||||
source = "git+https://github.com/HakanSeven12/acadrust?branch=main#99f75fe116ba836ae5fab70a886290688bbc5f50"
|
||||
dependencies = [
|
||||
"ahash 0.8.12",
|
||||
"anyhow",
|
||||
|
||||
Reference in new issue
Block a user