- 라이브러리 항목을 목록으로(항목마다 AX-ST-<8hex>.json) · 기본 찰쌓기에 코드 부여
- 가져오기: 로그인한 사람의 개인·회사 단 + 프로그램 기본에서 골라 {프로젝트}/B08_Quantity/library 에 박음 · 그 종류의 고친 식은 비움
- 표·원단위·자재총괄·인계는 박힌 양식 → 없으면 프로그램 기본만 읽음(여는 사람마다 값이 안 갈림)
- [확정] 때 아직 안 박힌 기본 양식을 박음 · 장 머리에 「어느 단에서 가져왔나 · 고친 식 N줄」
- 시험 test_b08_structure_library.py 6개 · 전체 1524 통과
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_016VBGFXB9AbJBwXP19z75Qq
265 lines
11 KiB
JSON
265 lines
11 KiB
JSON
{
|
||
"schema_version": 1,
|
||
"code": "AX-ST-56e81a2c",
|
||
"library_tier": "program",
|
||
"item_kind": "form",
|
||
"type_id": "masonry_wet",
|
||
"name": "돌쌓기(찰)",
|
||
"note": "구조물도 양식형 항목 첫 벌(PLAN 3장 ② · 명세 13장 식 칸 계약). 값은 지금 전개(`B08_Quantity_Engine_UnitQuantity.stone_masonry` + 기초잡석)와 같게 둠(판정 Ⓑ). 규격(높이·뒷길이·돌종류)마다 항목을 늘리지 않고 제원 vars 와 표 한 벌로 수량이 다시 남(명세 16장).",
|
||
"differs_from_engine": [
|
||
"원문 「-」 칸(야면석 75·깬돌 25·견치돌 25/30 고임돌)에서 전개는 고임돌 줄을 안 세우고 채집석에 0 을 더함. 이 양식은 고임돌 줄이 「표 칸이 비어 있음」 오류로 서고 채집석도 막힘 — 명세 13장 Ⓐ(안 선 줄을 0 으로 치지 않음)을 따른 것",
|
||
"돌 줄 이름 — 전개는 돌종류 이름(야면석·호박돌…/돌), 양식은 이름 「돌」 고정 + spec 에 종류(명세 13장 Ⓒ)"
|
||
],
|
||
"vars": {
|
||
"H": { "label": "높이(m)", "source": "height_m" },
|
||
"L": { "label": "연장(m)", "source": "length_m" },
|
||
"N": {
|
||
"label": "전면 기울기 1:n",
|
||
"source": "judged_face_slope",
|
||
"note": "사용자 값이 있으면 그 값, 없으면 품셈 13-4-4 [주]⑪ 표준경사를 전개가 판정해 넘김"
|
||
},
|
||
"L3": { "label": "뒷길이(㎝)", "option": "back_len_cm", "default": 45 },
|
||
"돌종류": { "label": "돌 종류", "option": "stone_kind", "default": "" },
|
||
"계수기준": { "label": "야면석 계수", "option": "stone_coeff_basis", "default": "" },
|
||
"TOP_IN": {
|
||
"label": "상부 두께(m) — 0 은 안 정함",
|
||
"option": "thickness_top_m",
|
||
"default": 0
|
||
},
|
||
"BOT_IN": {
|
||
"label": "하부 두께(m) — 0 은 안 정함",
|
||
"option": "thickness_bottom_m",
|
||
"default": 0
|
||
},
|
||
"기초": { "label": "기초(기초유·기초버림)", "option": "foundation", "default": "" },
|
||
"BLIND": {
|
||
"label": "버림 콘크리트(넣음·안 넣음)",
|
||
"option": "blinding_concrete",
|
||
"default": "넣음"
|
||
},
|
||
"SUPPLY": { "label": "돌 조달(채집·구입)", "option": "stone_supply", "default": "채집" },
|
||
"MPA": { "label": "채움 콘크리트 강도(MPa)", "option": "fill_concrete_mpa", "default": "210" },
|
||
"HOLE_DIA": { "label": "물구멍 지름(㎜)", "option": "weep_hole_diameter_mm", "default": 50 },
|
||
"HOLE_AREA": {
|
||
"label": "물구멍 1개소당 벽면적(㎡)",
|
||
"option": "weep_hole_area_m2",
|
||
"default": 2,
|
||
"candidates": [
|
||
{ "value": 2.5, "source": "소광리 07-구조도 「돌기슭막이(45)찰」 실무 관측 — ea/2.5㎡" }
|
||
]
|
||
},
|
||
"RUBBLE_T": {
|
||
"label": "기초잡석 두께(m)",
|
||
"setting": "rubble_base_thickness_m",
|
||
"default": 0.2
|
||
}
|
||
},
|
||
"tables": {
|
||
"고임돌표": {
|
||
"note": "품셈 13-4-3 고임돌 ㎥/㎡ · 「참고자료」 열은 돌종류 미지정·실무 관행일 때(건설품셈 참고자료) · null 은 원문 「-」",
|
||
"keys": [25, 30, 35, 45, 55, 60, 75],
|
||
"columns": {
|
||
"야면석·호박돌": [0.06, 0.07, 0.09, 0.11, 0.14, 0.15, null],
|
||
"깬잡석": [0.09, 0.11, 0.13, 0.16, 0.19, 0.21, 0.26],
|
||
"깬돌": [null, 0.1, 0.12, 0.15, 0.18, 0.2, 0.25],
|
||
"견치돌": [null, null, 0.12, 0.15, 0.18, 0.2, 0.25],
|
||
"참고자료": [null, 0.1, 0.12, 0.15, 0.18, 0.2, 0.25]
|
||
}
|
||
},
|
||
"채움표": {
|
||
"note": "품셈 13-4-4 [주]① 채움 콘크리트 ㎥/㎡",
|
||
"keys": [25, 30, 35, 45, 55, 60, 75],
|
||
"columns": {
|
||
"야면석·호박돌": [0.08, 0.1, 0.12, 0.15, 0.18, 0.2, 0.25],
|
||
"깬잡석": [0.11, 0.14, 0.16, 0.2, 0.25, 0.27, 0.34],
|
||
"깬돌": [0.11, 0.14, 0.16, 0.2, 0.25, 0.27, 0.34],
|
||
"견치돌": [0.11, 0.14, 0.16, 0.2, 0.25, 0.27, 0.34],
|
||
"참고자료": [0.11, 0.14, 0.16, 0.2, 0.25, 0.27, 0.34]
|
||
}
|
||
},
|
||
"돌중량표": {
|
||
"note": "야면석 돌중량 ton/㎡ — 울진 소광 원단위 라이브러리 실무 관측(35·45·55㎝만). 다른 종류는 계산식",
|
||
"keys": [35, 45, 55],
|
||
"columns": { "야면석": [0.575, 0.88, 1.1] }
|
||
}
|
||
},
|
||
"rows": [
|
||
{
|
||
"seq": 1,
|
||
"name": "돌쌓기",
|
||
"spec": "",
|
||
"formula": "H*L*SQRT(1+N^2)",
|
||
"formula_text": "정면적 × √(1+n²) — 비탈면적",
|
||
"unit": "㎡",
|
||
"destination": "unit_price",
|
||
"rounding": { "mode": "none", "digits": 0 },
|
||
"source": "library"
|
||
},
|
||
{
|
||
"seq": 2,
|
||
"name": "입적",
|
||
"spec": "",
|
||
"formula": "H*L*(IF(TOP_IN>0,TOP_IN,L3/100+0.3)+IF(BOT_IN>0,BOT_IN,IF(TOP_IN>0,TOP_IN,L3/100+0.3)+0.3*MAX(H-1,0)))/2",
|
||
"formula_text": "정면적 × 평균두께 · 상부 = 뒷길이 + 0.30 · 하부 = 상부 + 0.30×(H−1) (실무 구조물도 식, 두께를 넣으면 그 값)",
|
||
"unit": "㎥",
|
||
"destination": "reference",
|
||
"rounding": { "mode": "none", "digits": 0 },
|
||
"source": "library"
|
||
},
|
||
{
|
||
"seq": 3,
|
||
"name": "고임돌",
|
||
"spec": "",
|
||
"formula": "A*LOOKUP_EXACT(고임돌표,L3,IF(돌종류='','참고자료',IF(계수기준='실무 관행','참고자료',돌종류)))",
|
||
"formula_text": "돌쌓기 × 고임돌 원단위(뒷길이·돌종류, 품셈 13-4-3)",
|
||
"refs": { "A": 1 },
|
||
"unit": "㎥",
|
||
"destination": "material",
|
||
"rounding": { "mode": "none", "digits": 0 },
|
||
"source": "library"
|
||
},
|
||
{
|
||
"seq": 4,
|
||
"name": "석적",
|
||
"spec": "",
|
||
"formula": "H*L*L3/100*0.77",
|
||
"formula_text": "정면적 × 뒷길이 × 0.77(채움률) — 소광리 시트에만 있는 줄",
|
||
"unit": "㎥",
|
||
"destination": "reference",
|
||
"rounding": { "mode": "none", "digits": 0 },
|
||
"source": "library"
|
||
},
|
||
{
|
||
"seq": 5,
|
||
"name": "돌",
|
||
"spec": "{돌종류}",
|
||
"formula": "A*IF(돌종류='야면석·호박돌',LOOKUP_EXACT(돌중량표,L3,'야면석'),L3/100*0.77*2.65)",
|
||
"formula_text": "돌쌓기 × 돌중량 — 뒷길이 × 0.77 × 2.65(확정 5차, 잠정) · 야면석은 실무 관측표",
|
||
"refs": { "A": 1 },
|
||
"unit": "ton",
|
||
"destination": "material",
|
||
"rounding": { "mode": "none", "digits": 0 },
|
||
"source": "library"
|
||
},
|
||
{
|
||
"seq": 6,
|
||
"name": "막자갈",
|
||
"spec": "",
|
||
"formula": "(0.3+0.45)/2*H*L",
|
||
"formula_text": "(뒷채움 상 0.30 + 하 0.45) ÷ 2 × H × 연장 — 정본 여섯 탭 공통값",
|
||
"unit": "㎥",
|
||
"destination": "material",
|
||
"rounding": { "mode": "none", "digits": 0 },
|
||
"source": "library"
|
||
},
|
||
{
|
||
"seq": 7,
|
||
"name": "채움콘크리트",
|
||
"spec": "{MPA}",
|
||
"formula": "A*LOOKUP_EXACT(채움표,L3,IF(돌종류='','참고자료',IF(계수기준='실무 관행','참고자료',돌종류)))",
|
||
"formula_text": "돌쌓기 × 채움 콘크리트 원단위(뒷길이·돌종류, 품셈 13-4-4 [주]①)",
|
||
"refs": { "A": 1 },
|
||
"unit": "㎥",
|
||
"destination": "material",
|
||
"rounding": { "mode": "none", "digits": 0 },
|
||
"source": "library"
|
||
},
|
||
{
|
||
"seq": 8,
|
||
"name": "모르터",
|
||
"spec": "",
|
||
"formula": "A*0.009",
|
||
"formula_text": "돌쌓기 × 0.009 ㎥/㎡ (줄눈)",
|
||
"refs": { "A": 1 },
|
||
"unit": "㎥",
|
||
"destination": "unit_price",
|
||
"rounding": { "mode": "none", "digits": 0 },
|
||
"source": "library"
|
||
},
|
||
{
|
||
"seq": 9,
|
||
"name": "물구멍관",
|
||
"spec": "Ø{HOLE_DIA}",
|
||
"formula": "A/HOLE_AREA*(IF(TOP_IN>0,TOP_IN,L3/100+0.3)+IF(BOT_IN>0,BOT_IN,IF(TOP_IN>0,TOP_IN,L3/100+0.3)+0.3*MAX(H-1,0)))/2",
|
||
"formula_text": "돌쌓기 ÷ 개소당 벽면적 × 평균두께(관이 벽을 가로지름) — 2㎡ 기본 · 품셈 [주]⑤ 2~3㎡당 1개소 이상 · PVC Ø50(3~6㎝)",
|
||
"refs": { "A": 1 },
|
||
"unit": "m",
|
||
"destination": "material",
|
||
"rounding": { "mode": "none", "digits": 0 },
|
||
"source": "library"
|
||
},
|
||
{
|
||
"seq": 10,
|
||
"name": "채집석",
|
||
"spec": "",
|
||
"when": "SUPPLY<>'구입'",
|
||
"formula": "S+W+R",
|
||
"formula_text": "석적 + 고임돌 + 막자갈 — 현장 채집분 · 여기서 빼지 않음(사토에서 한 번만 뺌)",
|
||
"refs": { "S": 4, "W": 3, "R": 6 },
|
||
"unit": "㎥",
|
||
"destination": "haul_deduction",
|
||
"rounding": { "mode": "none", "digits": 0 },
|
||
"source": "library"
|
||
},
|
||
{
|
||
"seq": 11,
|
||
"name": "버림콘크리트",
|
||
"spec": "",
|
||
"when": "IF(BLIND='안 넣음',0,IF(BLIND='안넣음',0,IF(BLIND='제외',0,1)))",
|
||
"formula": "IF(BOT_IN>0,BOT_IN,IF(TOP_IN>0,TOP_IN,L3/100+0.3)+0.3*MAX(H-1,0))*L*0.1",
|
||
"formula_text": "하단 길이(하부 두께) × 연장 × 두께 0.10m — KDS 44 90 00 · 폭은 잡석다짐 폭(KCS 34 50 05)",
|
||
"unit": "㎥",
|
||
"destination": "material",
|
||
"rounding": { "mode": "none", "digits": 0 },
|
||
"source": "library"
|
||
},
|
||
{
|
||
"seq": 12,
|
||
"name": "터파기",
|
||
"spec": "",
|
||
"formula": "(IF(기초='기초유',0.5*0.9,IF(기초='기초버림',0.1*0.7,0))+H*((IF(TOP_IN>0,TOP_IN,L3/100+0.3)+IF(BOT_IN>0,BOT_IN,IF(TOP_IN>0,TOP_IN,L3/100+0.3)+0.3*MAX(H-1,0)))/2+0.2))*L",
|
||
"formula_text": "기초분(기초유 0.5×0.9 · 기초버림 0.1×0.7) + H × (평균두께 + 0.2) × 연장 — 실무 정본 식",
|
||
"unit": "㎥",
|
||
"destination": "earthwork",
|
||
"rounding": { "mode": "none", "digits": 0 },
|
||
"source": "library"
|
||
},
|
||
{
|
||
"seq": 13,
|
||
"name": "되메우기",
|
||
"spec": "",
|
||
"formula": "(IF(기초='기초유',0.5,IF(기초='기초버림',0.1,0))+H)*0.2*L",
|
||
"formula_text": "(기초깊이 + H) × 0.2 × 연장",
|
||
"unit": "㎥",
|
||
"destination": "earthwork",
|
||
"rounding": { "mode": "none", "digits": 0 },
|
||
"source": "library"
|
||
},
|
||
{
|
||
"seq": 14,
|
||
"name": "잔토처리",
|
||
"spec": "",
|
||
"formula": "E-B",
|
||
"formula_text": "터파기 − 되메우기",
|
||
"refs": { "E": 12, "B": 13 },
|
||
"unit": "㎥",
|
||
"destination": "earthwork",
|
||
"rounding": { "mode": "none", "digits": 0 },
|
||
"source": "library"
|
||
},
|
||
{
|
||
"seq": 15,
|
||
"name": "기초잡석",
|
||
"spec": "",
|
||
"when": "IF(BLIND='안 넣음',0,IF(BLIND='안넣음',0,IF(BLIND='제외',0,RUBBLE_T>0)))",
|
||
"formula": "B*(RUBBLE_T/0.1)",
|
||
"formula_text": "버림 × (잡석두께 ÷ 버림두께 0.1) — 폭이 같음(KCS 34 50 05) · 두께는 확정 3차 ②",
|
||
"refs": { "B": 11 },
|
||
"unit": "㎥",
|
||
"destination": "unit_price",
|
||
"rounding": { "mode": "none", "digits": 0 },
|
||
"source": "library"
|
||
}
|
||
]
|
||
}
|