feat: 2 m placeholder pattern zones on lining, station/pattern readout in viewer (Task 5)
No pattern-to-station data exists in the drawings. Per user decision (2026-10-21) the modelled range 4+745..5+480 is split into 2 m segments with arbitrary pattern names, marked placeholder in CSV, meta and viewer, to be replaced later. Ring step reduced to 1 m so that the 2 m segments align. Co-Authored-By: Claude Haiku 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01A5Cun3RHQKna9qxE6ybZ4A
This commit is contained in:
1 parent
c9de6f0ef3
commit
6c7e555c25
7 files changed
+2303
-10
No files matched your search
@@ -0,0 +1,21 @@
|
||||
#!/usr/bin/env python3
|
||||
"""Task 5 (user decision 2026-10-21): no pattern-station data exists. Create a
|
||||
PLACEHOLDER pattern table at 2 m segments over the modelled range 4+745..5+480,
|
||||
cycling the six pattern names. Every row is marked '임의 배정 (placeholder)'.
|
||||
The table is an editable CSV: replace the 'pattern' column later and rebuild.
|
||||
Output: data/pattern_zones_placeholder.csv (created only if absent; never overwritten)."""
|
||||
import csv
|
||||
import os
|
||||
import sys
|
||||
|
||||
ROOT = sys.argv[1]
|
||||
OUT = f"{ROOT}/data/pattern_zones_placeholder.csv"
|
||||
PATTERNS = ["NP-4AD-1-D-2", "NP-4BD-1-D-2", "NP-5AE-1-WL-4", "NP-5BE-1-WL-4", "NP-6A", "NP-6B"]
|
||||
S0, S1, SEG = 4745, 5480, 2
|
||||
if not os.path.exists(OUT):
|
||||
with open(OUT, "w", newline="", encoding="utf-8") as fh:
|
||||
w = csv.writer(fh)
|
||||
w.writerow(["seg_from", "seg_to", "pattern", "status"])
|
||||
for k, s in enumerate(range(S0, S1, SEG)):
|
||||
w.writerow([s, min(s + SEG, S1), PATTERNS[k % len(PATTERNS)], "임의 배정 (placeholder, 실제 구간 아님)"])
|
||||
print("pattern table:", OUT)
|
||||
Reference in new issue
Block a user