11 Commits
Author SHA1 Message Date
minsung fb8f7ca4eb fix(viewer2d): correct Slug GPU text scale to match DWG cap-height
SlugTextBatch.add() scaled em-unit glyph outlines by the raw DWG
`height` value, but glyph ink only reaches capHeightEm (~0.74 em) of
the em box. Rendered cap height ended up ~26% short of spec (e.g. a
3.6-height TABLE cell text rendered at ~2.68), while the canvas-sprite
fallback already corrected for this via measured ascent. Divide by
capHeightEm so both paths agree.

Rebuilds dist2 (was stale since before the Entity selection/Property
Inspector/Layer panel work landed).
2026-08-03 15:26:06 +09:00
minsungandClaude Opus 5 b047dc44e2 fix(viewer2d): sync dwg-wasm fix for large-DWG load and hatch arc artifacts
Mirrors hmwebviewer's rust/dwg-wasm change into the sample: the wasm
artifact plus the parser wrapper, which now goes through parse_dwg_json
and JSON.parse instead of the JsValue-returning parse_dwg.

Building the whole result as a serde_json::Value tree pushed the live
wasm heap near 2.9GB for a 19MB drawing, and the allocator's cost grows
with that heap, so parsing went quadratic — 354s, with the tab frozen
throughout. Streaming one entity at a time keeps it linear: 2.5s.

The same build also fixes three bugs that drew stray 4km grey shapes
where two CF-PATT SOLID hatches should be. Max hatch span 4655 -> 110.

Adds two docs recording both investigations, in the format of the
existing ones: measurements, the hypotheses that were ruled out, the
fixes, regression checks, and the MPL-2.0 position (acadrust is
unmodified, so no new source-disclosure obligation arises).

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
2026-08-03 13:55:34 +09:00
minsung 199317d575 feat: Entity 선택기능, Property Inspector 패널, Layer 관리 패널, 드래그/접기/크기조절 UI 구현 2026-07-31 13:38:14 +09:00
minsung f7564d4abf feat: 배경 테마(다크/라이트)에 따른 ACI 7번 색상 동적 변경 적용 2026-07-31 10:06:11 +09:00
minsung 14d1f06927 feat: DWG 내장 복합 라인타입 동적 바인딩 및 텍스트 갭 정렬 보정 2026-07-31 09:24:48 +09:00
minsung 3d3e052f3e feat: enhance complex linetype rendering with DWG text style data, gap midpoint centering, and theme defaults 2026-07-30 17:59:08 +09:00
minsung 1a664f677a feat(viewer2d): add complex linetype rendering & LIN pattern parser support 2026-07-30 17:06:38 +09:00
minsung 76f3e20582 fix(parser): dynamically extract OLE2FRAME 4-corner coordinates from binary OLE stream header; remove hardcoded coordinates 2026-07-30 16:10:43 +09:00
minsung 963a90319e fix: replace BMP img.src decoder with pure-JS BMP parser for Brave/Firefox cross-browser support 2026-07-30 15:48:37 +09:00
minsung be8d52fcd5 feat: implement OLE2Frame embedded image parsing and exact coordinate rendering 2026-07-30 14:17:56 +09:00
minsung 95fa6a452b Initial public release: DWG/DXF 2D viewer sample
Standalone Vite sample composing acadrust-dwg WASM, dxf-parser, and Viewer2D.
2026-07-15 10:58:04 +09:00