Files
Aislo/common_util/common_util_structure_parts.json
T
eomsangdonandClaude Opus 5.5 0da2fa0767 fix(구조물표): 322-2 다듬기(브레인 화면 확인) — 화면에 영어 키 안 보임 · 검사 글 한국어(화면 · 서버 짝) · 부품 탭 읽는 칸 = 정의 이름 · 줄바꿈 · 한눈 표 폭 줄임 · 바꿨다 되돌리면 [저장] 꺼짐
- 자리꼴 점 · 구간 · 터 · 정본 관 지점 · 구조물(키는 툴팁) · 고르기 글 = 부품 짧은 이름(괄호 설명 · 키는 툴팁) · 횡단도 없음 = 「안 만듦」 · 「벽 스윕」 → 「벽」 · 종류 키는 툴팁
- 검사 글: 「형상이 「없음」이면 횡단도도 「안 만듦」」 · 부품 짧은 이름 · 칸 이름 · 종류 이름(M02_SO_Def_Check.ts = M02_SO_Check.py)
- 부품 탭: 읽는 칸 = 그 부품을 쓰는 종류의 칸 이름(단위) · 표 줄바꿈(table-layout fixed)
- 한눈 표 형상칸 「기본 형태」 = 그림 형태 고르기(REVET_FORMS)
- [저장] 켬 = 저장할 꼴(tidy · 목록 짝 enabled)끼리 지금 판과 다를 때만(M02_SO_Def_Reflect.differs)
- 시험: 322-2 검사 글 · 되돌림 견본

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Ji4nuyLVHcxrXWHTdb5nRD
2026-10-14 16:29:30 +09:00

514 lines
13 KiB
JSON

{
"comment": "구조물 부품 상자(PLAN 322-1) — 코드가 그리는 방법 한 벌. TS(import) · 파이썬(json.load)이 같은 파일을 읽음. parts = 갈래(횡단도 · 카드이름 · 형상 · 3D)마다 부품 id → {이름 · 읽는 칸(옵션 키) · 자리꼴 · 정본 · 필수 칸(비면 그 그림이 안 섬 = 빈칸 경고 · 형상만)}. 처음값 = 종류마다 정의 `반영` 이 없을 때 쓰는 값(지금 동작 · ★ = PLAN_구조물표 4장). 표 읽기 = common_util_structure_catalog.ts · .py(짝).",
"parts": {
"횡단도": {
"anchor": {
"이름": "기준 한 장",
"읽는 칸": [],
"자리꼴": ["point", "interval", "site"],
"정본": ["pipe_points", "structures"]
},
"span3": {
"이름": "시작 · 기준 · 끝",
"읽는 칸": ["length_m", "before_m", "after_m"],
"자리꼴": ["interval"],
"정본": ["pipe_points", "structures"]
}
},
"카드이름": {
"pipe": {
"이름": "관종 D관경",
"읽는 칸": ["pipe_kind", "pipe_diameter_mm"],
"자리꼴": ["point"],
"정본": ["pipe_points"]
}
},
"형상": {
"pipe_set": {
"이름": "배관 세트(관 · 유입 · 유출 · 흙막이 · 도수로)",
"읽는 칸": [
"pipe_kind",
"pipe_diameter_mm",
"revet_foundation",
"inlet_type",
"inlet_revet_form",
"inlet_revet_length_m",
"inlet_revet_before_m",
"inlet_revet_after_m",
"inlet_revet_height_m",
"inlet_basin_length_m",
"inlet_basin_before_m",
"inlet_basin_after_m",
"inlet_basin_height_m",
"outlet_type",
"outlet_revet_form",
"outlet_revet_length_m",
"outlet_revet_before_m",
"outlet_revet_after_m",
"outlet_revet_height_m"
],
"자리꼴": ["point"],
"정본": ["pipe_points"],
"필수 칸": ["pipe_diameter_mm"]
},
"box": {
"이름": "BOX 본체 · 날개벽",
"읽는 칸": [
"body_width_m",
"body_height_m",
"wall_thickness_m",
"slab_thickness_m",
"wing_in",
"wing_in_height_m",
"wing_in_length_m",
"wing_in_angle_deg",
"wing_out",
"wing_out_height_m",
"wing_out_length_m",
"wing_out_angle_deg"
],
"자리꼴": ["point"],
"정본": ["pipe_points"]
},
"ford": {
"이름": "세월교(관 · 월류 · 날개벽)",
"읽는 칸": [
"pipe_kind",
"pipe_diameter_mm",
"pipe_count",
"ford_width_m",
"ford_height_m",
"wing_in",
"wing_in_height_m",
"wing_in_length_m",
"wing_in_angle_deg",
"wing_out",
"wing_out_height_m",
"wing_out_length_m",
"wing_out_angle_deg"
],
"자리꼴": ["point"],
"정본": ["pipe_points"]
},
"ford_pavement": {
"이름": "물넘이 포장(파인 노면 · 도수로)",
"읽는 칸": ["ford_width_m", "ford_height_m", "ford_slope_deg", "ford_slope_pct"],
"자리꼴": ["point"],
"정본": ["pipe_points"],
"필수 칸": ["ford_height_m"]
},
"hidden_revet": {
"이름": "독립 기슭막이(관 숨김 벽)",
"읽는 칸": [
"form",
"height_m",
"length_m",
"before_m",
"after_m",
"tiers",
"side",
"foundation",
"face_role",
"face_slope_ratio"
],
"자리꼴": ["interval"],
"정본": ["pipe_points"],
"필수 칸": ["height_m"]
},
"wall": {
"이름": "벽(옹벽 · 흙막이 · 돌쌓기)",
"읽는 칸": [
"form",
"height_m",
"side",
"foundation",
"tiers",
"lift_m",
"shift_m",
"face_role",
"face_slope_ratio"
],
"자리꼴": ["interval"],
"정본": ["structures"],
"필수 칸": ["height_m"]
},
"berm": {
"이름": "소단(사면 계단)",
"읽는 칸": ["width_m", "interval_m", "slope_deg", "depth_m"],
"자리꼴": ["interval"],
"정본": ["structures"]
},
"underdrain": {
"이름": "맹암거",
"읽는 칸": ["culvert_height_m", "culvert_slope_pct"],
"자리꼴": ["point"],
"정본": ["structures"],
"필수 칸": ["culvert_height_m"]
},
"pavement": {
"이름": "포장층",
"읽는 칸": ["pave_spec", "height_m", "widening_off"],
"자리꼴": ["interval"],
"정본": ["structures"]
},
"spoil": {
"이름": "사토(성토 채움)",
"읽는 칸": ["capacity_m3"],
"자리꼴": ["site"],
"정본": ["structures"]
}
},
"3D": {
"pipe": {
"이름": "관 · 유입 · 유출 벽",
"읽는 칸": [],
"자리꼴": ["point"],
"정본": ["pipe_points"]
},
"box": {
"이름": "BOX 본체 · 날개벽",
"읽는 칸": [],
"자리꼴": ["point"],
"정본": ["pipe_points"]
},
"ford": {
"이름": "세월교 몸체 · 관",
"읽는 칸": [],
"자리꼴": ["point"],
"정본": ["pipe_points"]
},
"chute": {
"이름": "물넘이 도수로 띠",
"읽는 칸": [],
"자리꼴": ["point"],
"정본": ["pipe_points"]
},
"wall": {
"이름": "벽",
"읽는 칸": [],
"자리꼴": ["interval"],
"정본": ["pipe_points", "structures"]
},
"surface": {
"이름": "설계선만(몸체 없음)",
"읽는 칸": [],
"자리꼴": ["point", "interval", "site"],
"정본": ["pipe_points", "structures"]
}
}
},
"처음값": {
"pipe": {
"목록": "both",
"횡단도": "anchor",
"카드이름": "pipe",
"형상": "pipe_set",
"3D": "pipe"
},
"box_culvert": {
"목록": "both",
"횡단도": "anchor",
"카드이름": "name",
"형상": "box",
"3D": "box"
},
"ford_pavement": {
"목록": "both",
"횡단도": "anchor",
"카드이름": "name",
"형상": "ford_pavement",
"3D": "chute"
},
"ford_bridge": {
"목록": "both",
"횡단도": "anchor",
"카드이름": "name",
"형상": "ford",
"3D": "ford"
},
"cross_drain_exposed": {
"목록": "both",
"횡단도": "none",
"카드이름": "name",
"형상": "none",
"3D": "none"
},
"open_ditch": {
"목록": "both",
"횡단도": "none",
"카드이름": "name",
"형상": "none",
"3D": "none"
},
"cross_underdrain": {
"목록": "both",
"횡단도": "anchor",
"카드이름": "name",
"형상": "underdrain",
"3D": "surface"
},
"ditch_side": {
"목록": "hidden",
"횡단도": "none",
"카드이름": "name",
"형상": "none",
"3D": "none"
},
"ditch_ridge": {
"목록": "hidden",
"횡단도": "none",
"카드이름": "name",
"형상": "none",
"3D": "none"
},
"ditch_berm": {
"목록": "hidden",
"횡단도": "none",
"카드이름": "name",
"형상": "none",
"3D": "none"
},
"chute": {
"목록": "hidden",
"횡단도": "none",
"카드이름": "name",
"형상": "none",
"3D": "none"
},
"slope_drain": {
"목록": "hidden",
"횡단도": "none",
"카드이름": "name",
"형상": "none",
"3D": "none"
},
"underdrain": {
"목록": "hidden",
"횡단도": "none",
"카드이름": "name",
"형상": "none",
"3D": "none"
},
"retaining_wall": {
"목록": "both",
"횡단도": "span3",
"카드이름": "name",
"형상": "wall",
"형상칸": {
"form": "콘크리트",
"weep": true
},
"3D": "wall"
},
"masonry_wet": {
"목록": "hidden",
"횡단도": "span3",
"카드이름": "name",
"형상": "wall",
"형상칸": {
"form": "돌쌓기(찰)"
},
"3D": "wall"
},
"masonry_dry": {
"목록": "hidden",
"횡단도": "span3",
"카드이름": "name",
"형상": "wall",
"형상칸": {
"form": "돌쌓기(메)"
},
"3D": "wall"
},
"soil_guard": {
"목록": "both",
"횡단도": "span3",
"카드이름": "name",
"형상": "wall",
"형상칸": {
"form": "통나무·목재틀"
},
"3D": "wall"
},
"boulder_masonry": {
"목록": "hidden",
"횡단도": "span3",
"카드이름": "name",
"형상": "wall",
"형상칸": {
"form": "돌쌓기(메)"
},
"3D": "wall"
},
"berm": {
"목록": "both",
"횡단도": "span3",
"카드이름": "name",
"형상": "berm",
"3D": "surface"
},
"erosion_check": {
"목록": "hidden",
"횡단도": "none",
"카드이름": "name",
"형상": "none",
"3D": "none"
},
"bed_sill": {
"목록": "hidden",
"횡단도": "none",
"카드이름": "name",
"형상": "none",
"3D": "none"
},
"check_dam_small": {
"목록": "hidden",
"횡단도": "none",
"카드이름": "name",
"형상": "none",
"3D": "none"
},
"revetment": {
"목록": "hidden",
"횡단도": "span3",
"카드이름": "name",
"형상": "hidden_revet",
"3D": "wall",
"자리꼴": "interval"
},
"evac_road": {
"목록": "both",
"횡단도": "none",
"카드이름": "name",
"형상": "none",
"3D": "none"
},
"refuge": {
"목록": "hidden",
"횡단도": "none",
"카드이름": "name",
"형상": "none",
"3D": "none"
},
"work_yard": {
"목록": "hidden",
"횡단도": "none",
"카드이름": "name",
"형상": "none",
"3D": "none"
},
"turnaround": {
"목록": "hidden",
"횡단도": "none",
"카드이름": "name",
"형상": "none",
"3D": "none"
},
"mirror": {
"목록": "both",
"횡단도": "none",
"카드이름": "name",
"형상": "none",
"3D": "none"
},
"curb": {
"목록": "both",
"횡단도": "none",
"카드이름": "name",
"형상": "none",
"3D": "none"
},
"hazard_sign": {
"목록": "both",
"횡단도": "none",
"카드이름": "name",
"형상": "none",
"3D": "none"
},
"guardrail": {
"목록": "both",
"횡단도": "none",
"카드이름": "name",
"형상": "none",
"3D": "none"
},
"position_sign": {
"목록": "both",
"횡단도": "none",
"카드이름": "name",
"형상": "none",
"3D": "none"
},
"water_intake": {
"목록": "both",
"횡단도": "none",
"카드이름": "name",
"형상": "none",
"3D": "none"
},
"barrier_gate": {
"목록": "both",
"횡단도": "none",
"카드이름": "name",
"형상": "none",
"3D": "none"
},
"completion_sign": {
"목록": "both",
"횡단도": "none",
"카드이름": "name",
"형상": "none",
"3D": "none"
},
"spoil_bank": {
"목록": "both",
"횡단도": "none",
"카드이름": "name",
"형상": "spoil",
"3D": "surface"
},
"borrow_pit": {
"목록": "both",
"횡단도": "none",
"카드이름": "name",
"형상": "none",
"3D": "none"
},
"wildlife_path": {
"목록": "b06",
"횡단도": "none",
"카드이름": "name",
"형상": "none",
"3D": "none"
},
"revegetation": {
"목록": "b06",
"횡단도": "none",
"카드이름": "name",
"형상": "none",
"3D": "none"
},
"pavement_concrete": {
"목록": "both",
"횡단도": "none",
"카드이름": "name",
"형상": "pavement",
"3D": "surface"
},
"gravel_surfacing": {
"목록": "b06",
"횡단도": "none",
"카드이름": "name",
"형상": "pavement",
"3D": "surface"
},
"etc": {
"목록": "both",
"횡단도": "none",
"카드이름": "name",
"형상": "none",
"3D": "none"
}
}
}