feat: Initial release v0.1.0

STP/STEP 3D viewer (WPF, .NET 8) - CADability + HelixToolkit.Wpf:

- Multi-file import (STEP/STL/DXF) with STEP assembly tree
  (per-node visibility/color cascade, zoom-to)
- Measurements: point / distance / edge / face / circle / angle /
  face-to-face distance (B-rep exact where available)
- Assembly verification: two-point align (translate), 3-point align
  (rotate+translate via RigidAlign), axis rotate 90, interference
  check (tri-tri intersection + min gap)
- Section view (CPU mesh clipping, originals preserved)
- mm/inch toggle, CSV export (UTF-8 BOM), 2x PNG screenshot
- Performance: per-file merged edge lines, per-leaf merged mesh in
  browse mode, no BackMaterial on closed solids, edge suspend during
  camera interaction, parallel leaf triangulation with retry
- SmokeTest CLI: import pipeline, --tree, --clip-test,
  --interference-test, --align-test (all passing)

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
2026-06-13 00:16:10 +08:00
co-authored by Claude Opus 4.8
commit 0e19dbae1b
33 changed files with 4155 additions and 0 deletions
+31
View File
@@ -0,0 +1,31 @@
# ══════════════════════════════════════════════════════════════════
# run-STPViewer.ps1 範本
#
# 第一次 clone 下來:
# cd secret
# Copy-Item run-STPViewer.ps1.example run-STPViewer.ps1
# .\run-STPViewer.ps1
#
# 若 PowerShell 擋執行 script,執行一次:
# Set-ExecutionPolicy -Scope CurrentUser RemoteSigned
#
# secret/ 下除 README.md 和 .example 外皆已 gitignore。
# ══════════════════════════════════════════════════════════════════
$ErrorActionPreference = 'Stop'
# ─── secret(本專案目前無 DB / ApiKey;未來需要時在此加 env var) ──
# $env:SomeService__ApiKey = '__CHANGE_ME__'
# ══════════════════════════════════════════════════════════════════
$ScriptDir = Split-Path -Parent $MyInvocation.MyCommand.Path
$RepoRoot = Resolve-Path (Join-Path $ScriptDir '..')
Push-Location $RepoRoot
try {
dotnet run --project src/STPViewer
}
finally {
Pop-Location
}