- 추가 단 상자 = 유출 흙막이 상자 양식 · 공용 [추가] · [빼기] · 흙막이 형태 · 높이 · 옹벽 높이(콘크리트) · 키 tier_{n}_*
- 정의 그룹 종류 덧붙임 명세(ADDON_SPECS) — 좌측 폼만 · 그룹 상자 · 목록 · M02 그대로
- 벽 제원 짝(TS tierExtras · 파이썬 tier_extras) · 단 수 = 1 + 상자 수 · 횡단 단 조정 m · h
- 새 시험 test_178_3_slope_tiers · walls_mirror extras 대조
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_015sDZSjFvoiDjdGpgj3muc3
35 lines
1.6 KiB
TypeScript
35 lines
1.6 KiB
TypeScript
/* =============================================================================
|
|
* design_structure_slope_tier.ts
|
|
* 사면안정 흙막이 · 옹벽 「추가 단」 상자(178-3) — 배관 유출 흙막이 상자 양식(`design_structure_guard`)
|
|
* 재사용 · 공용 [추가] · [빼기] · 상자 수 = 추가 단.
|
|
*
|
|
* · 흙막이 = 형태 · 높이 · 옹벽 = 높이만(형태 = 콘크리트) · 저장 = structures.json `options` 키 `tier_{n}_*`
|
|
* · 정의 그룹 종류에 덧붙임 — 좌측 폼 선택 컨테이너만(그룹 상자 · 목록 · 벌룬 · M02 는 정의 그룹 그대로 ·
|
|
* `STRUCTURE_SPECS` 에 안 넣음)
|
|
* · 단 그림 = `common_util_structure_walls`(`tierExtras` · 파이썬 짝) → 횡단 다단
|
|
* import = 같은 폴더 명세뿐 — 시험이 이 폴더 파일만 옮겨 돌림.
|
|
* ========================================================================== */
|
|
|
|
import type { SpecContainer, SpecItem, StructureSpec } from "./design_structure_spec";
|
|
import { guardItems } from "./design_structure_guard";
|
|
|
|
const TIER_ITEMS = guardItems().filter((item) => item.id === "form" || item.id === "height");
|
|
|
|
const tierAdd = (items: SpecItem[]): SpecContainer => ({
|
|
id: "tier",
|
|
title: "추가 단",
|
|
required: false,
|
|
prefix: "tier",
|
|
link: "gtier",
|
|
items,
|
|
});
|
|
|
|
export const ADDON_SPECS: Readonly<Record<string, StructureSpec>> = {
|
|
soil_guard: { typeId: "soil_guard", containers: [tierAdd(TIER_ITEMS)], retired: [] },
|
|
retaining_wall: {
|
|
typeId: "retaining_wall",
|
|
containers: [tierAdd(TIER_ITEMS.filter((item) => item.id === "height"))],
|
|
retired: [],
|
|
},
|
|
};
|