这是本文档旧的修订版!
Run completed on your latest polygon log and diagnostics saved. Here’s the short summary and what I recommend next.
What I ran • Executed the harness with your latest available log (selected: C:\Users\11402\Desktop\SkeletonLogs\skeleton_debug_20250925_211825.log). • Generated full diagnostics (boundary/skeleton CSVs, wavefront times, meta).
Key results • Completed: True • Boundary vertices parsed: 18 (note: it’s 9 unique points repeated twice) • Skeleton segments: 12 • Triangles: 48 • Wavefront samples: 7 • Time: 0.343s • ValleySummary: initReflex=8, written=8, missing=2 ◦ Warnings: ValleyMissing for reflex at (319,171) with two different IDs (duplicate entries)
Why the two “missing” valleys appear • Your boundary in the log contains two identical loops (the same 9 vertices repeated). That creates duplicate reflex vertices at the same location with different IDs. The algorithm writes one valley for the “real” instance and then reports the duplicate as “missing.” This is a parsing artifact, not an algorithmic failure.
Diagnostics location (most relevant files) • D:\在家加班\骨架库(最新20250923)\骨架库(最新20250917)(1)\HDSkeleton\Harness\bin\Debug\diag_runs_harness\FROM_LOG\ ◦ from_log_boundary.csv (parsed boundary that was fed into the run) ◦ from_log_skeleton.csv (aggregated skeleton segments) ◦ run_20250925_212154_592\ ▪ boundary.csv, skeleton.csv, wavefront_times.txt, meta.txt
Recommendations • Let me add a normalization pass to the log loader so it: ◦ Removes consecutive duplicate points ◦ If the list is two identical halves, keeps only the first half ◦ Drops a final vertex if it equals the first (implicit closure) • Then rerun. Expected effect: the duplicate (319,171) entries collapse to one, clearing the two ValleyMissing warnings. • Optional follow-ups: ◦ Add a –csv <file> mode to feed raw x,y coordinates directly (bypasses log parsing). ◦ If you want to investigate the “calcMovingSteinerSpeed: mv or pv is null” warnings, I can add targeted debug guards/logs, but they didn’t affect completion here.
How to rerun locally • Latest log: D:\在家加班\骨架库(最新20250923)\骨架库(最新20250917)(1)\HDSkeleton\Harness\bin\Debug\HDSkeletonHarness.exe –log latest • Specific log file: HDSkeletonHarness.exe –log “C:\path\to\your\skeleton_debug_YYYYMMDD_HHMMSS.log”
Would you like me to implement the de-duplication in the log loader now and rerun to verify the ValleyMissing warnings disappear?