diff --git a/ARCHITECTURE.md b/ARCHITECTURE.md index f167981..fcb14b8 100644 --- a/ARCHITECTURE.md +++ b/ARCHITECTURE.md @@ -108,6 +108,7 @@ STPViewer/ │ └── UnitSystem.cs # mm/inch + Units 格式化 │ ├── StlExportDialog.xaml / .cs # STL 匯出參數對話框(範圍/格式/單位/精度 + 預估,確認再匯出) + ├── AboutDialog.xaml / .cs # 關於視窗(程式/開發者/技術棧 + 使用者版 changelog) │ ├── Services/ │ ├── StepImportService.cs # STEP/STL/DXF 讀檔 + 三角化 + 裝配樹 @@ -480,6 +481,8 @@ WPF retained-mode 每幀重走 visual tree → frame rate 崩。瀏覽模式因 - [x] 勾選清單隨 settings.json(`QuickBarKeys`)保存;null/新按鈕用註冊表預設值 - [x] **剖面參數列**獨立成第三列,只在 `SectionEnabled` 時顯示(含「✕ 關閉」); 平常整條隱藏,不再常駐佔位 +- [x] **關於視窗**(`AboutDialog`,選單「說明 → 關於 STPViewer」)— 程式資訊/開發者/技術棧 + + 給一般使用者看的版本紀錄(樣式參考 ETTerms AboutView);發新版在 Changelog 陣列頂端加一筆 **驗收:** 選單所有功能可用(checkable 與工具列 toggle 同步);快速列勾選即時增減、重開保留; 既有快速鍵 P/D/E/F/C/A/M + Esc 不受影響 diff --git a/CLAUDE.md b/CLAUDE.md index f83cf17..c6df7e9 100644 --- a/CLAUDE.md +++ b/CLAUDE.md @@ -97,6 +97,9 @@ dotnet publish src/STPViewer -c Release -o publish/STPViewer 放開事件靠 overlay 的 `AddHandler(MouseLeftButtonUp, handledEventsToo:true)`(manipulator 會標 handled),`_gizmoBakePending` 防同次重複烘焙 - 干涉/面距/對齊等運算在背景執行緒;`Freeze()` 幾何後才跨執行緒 - 匯入在背景執行緒;`Freeze()` 幾何後才跨執行緒 +- 發新版:升 csproj `` 之外,記得在 `AboutDialog.xaml.cs` 的 `Changelog` 陣列**頂端**加一筆 + (口吻寫給一般使用者:「你會感覺到什麼」,不是技術 changelog)。 + ⚠️ WPF **頂層 MenuItem 直接掛 Click 不會觸發**(實測滑鼠/鍵盤都沒反應),要開視窗的入口一律放子選單(如 說明 → 關於) - Commit 格式:Conventional Commits(`feat:` / `fix:` / `docs:` …) ## 注意事項 / 已知限制 diff --git a/src/STPViewer/AboutDialog.xaml b/src/STPViewer/AboutDialog.xaml new file mode 100644 index 0000000..b131a4d --- /dev/null +++ b/src/STPViewer/AboutDialog.xaml @@ -0,0 +1,118 @@ + + + + + + + + + + + + + + + + + + + + + + + + + STP / STEP 3D 檢視器 + 免開重量級 CAD,快速開檔、量測、 + 對齊插合、干涉檢查、剖面、匯出 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + .NET 8 · WPF · C# + CADability(STEP / B-rep 幾何核心) + HelixToolkit(3D 顯示與相機) + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +