chore(rebar): Pier_T_rebar 작업 폴더 초기 구성 및 외부 의존 파일 통합

- Code\rebar_pipeline, review_pipeline, pier-program을 정션에서 실제 폴더로 전환
- Code\rhino_mcp 및 CLAUDE_rhino배경.md 추가, .mcp.json은 PYTHONPATH로 새 위치 사용
- pier-program 내부 .git 제거(이력은 backup\pier-program_20261028.bundle에 보관)
- worktree 가이드 반영(CLAUDE.local.md, HANDOFF.md)
- D:\Rhino-MCP 경로 참조를 새 위치로 치환

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
This commit is contained in:
ahnyongjooandClaude Sonnet 5.5 committed 2026-10-28 11:20:18 +09:00
commit 964a841de1
3978 files changed
+58013356

No files matched your search

@@ -0,0 +1 @@
{"version": "1", "sources": ["8a7d7d1baac8a882130389776ff4d2c41c1c91306642be907a31bdb599adc479", "0549a0f9165f5105192e45a86bd8b4603e38f89e880a2f0e09d0aae2d651cabf", "7e28c5f9919ef054b6328aa8bfc4a12cba08550de4351606b614c3e7643d2b8a", "0919ec2f363c68495acd11f6c4aa2cda66dd0cce225df7df1115a5c58e57f78e"], "fields": {"params:pile.segments.0.d": {"v": 2350.0, "hits": [{"text": "2,350", "x": 86041.5, "y": -503184.1, "layer": "CS-DIMT", "dwg": "D1", "kind": "mm"}, {"text": "2,350", "x": 105105.4, "y": -503184.1, "layer": "CS-DIMT", "dwg": "D1", "kind": "mm"}, {"text": "2,350", "x": 84510.9, "y": -706661.9, "layer": "CS-DIMT", "dwg": "D4", "kind": "mm"}], "shared": 1}, "params:coping.side.half_width_top": {"v": 1100.0, "hits": [{"text": "1,100", "x": 105655.6, "y": -471154.0, "layer": "CS-DIMT", "dwg": "D1", "kind": "mm"}, {"text": "1,100", "x": 104555.6, "y": -471154.0, "layer": "CS-DIMT", "dwg": "D1", "kind": "mm"}, {"text": "1,100", "x": 79592.6, "y": -464894.9, "layer": "CS-DIMT", "dwg": "D1", "kind": "mm"}, {"text": "1,100", "x": 79592.6, "y": -465994.9, "layer": "CS-DIMT", "dwg": "D1", "kind": "mm"}], "shared": 1}, "params:coping.plan_end.half_width": {"v": 1100.0, "hits": [{"text": "1,100", "x": 105655.6, "y": -471154.0, "layer": "CS-DIMT", "dwg": "D1", "kind": "mm"}, {"text": "1,100", "x": 104555.6, "y": -471154.0, "layer": "CS-DIMT", "dwg": "D1", "kind": "mm"}, {"text": "1,100", "x": 79592.6, "y": -464894.9, "layer": "CS-DIMT", "dwg": "D1", "kind": "mm"}, {"text": "1,100", "x": 79592.6, "y": -465994.9, "layer": "CS-DIMT", "dwg": "D1", "kind": "mm"}], "shared": 1}, "params:bearing_seats.bearings.1.el_x": {"v": 60427, "hits": [{"text": "60.427", "x": 122114.4, "y": -474311.3, "layer": "CS-TABL-TEX2", "dwg": "D1", "kind": "m"}], "shared": 1}, "params:bearing_seats.bearings.1.centre.0": {"v": 2250.0, "hits": [{"text": "2,250", "x": 87166.7, "y": -471214.1, "layer": "CS-DIMT", "dwg": "D1", "kind": "mm"}, {"text": "2,250", "x": 84916.7, "y": -471214.1, "layer": "CS-DIMT", "dwg": "D1", "kind": "mm"}, {"text": "2,250", "x": 87166.7, "y": -461345.8, "layer": "CS-DIMT", "dwg": "D1", "kind": "mm"}, {"text": "2,250", "x": 84916.7, "y": -461345.8, "layer": "CS-DIMT", "dwg": "D1", "kind": "mm"}, {"text": "2.250", "x": 70129.7, "y": -707086.0, "layer": "CS-TABL-TEX2", "dwg": "D3", "kind": "m"}], "shared": 1}, "params:bearing_seats.bearings.0.el_x": {"v": 60112, "hits": [{"text": "60.112", "x": 122114.4, "y": -473511.3, "layer": "CS-TABL-TEX2", "dwg": "D1", "kind": "m"}], "shared": 1}, "params:bearing_seats.bearings.0.centre.0": {"v": -2250.0, "hits": [{"text": "2,250", "x": 87166.7, "y": -471214.1, "layer": "CS-DIMT", "dwg": "D1", "kind": "mm"}, {"text": "2,250", "x": 84916.7, "y": -471214.1, "layer": "CS-DIMT", "dwg": "D1", "kind": "mm"}, {"text": "2,250", "x": 87166.7, "y": -461345.8, "layer": "CS-DIMT", "dwg": "D1", "kind": "mm"}, {"text": "2,250", "x": 84916.7, "y": -461345.8, "layer": "CS-DIMT", "dwg": "D1", "kind": "mm"}, {"text": "2.250", "x": 70129.7, "y": -707086.0, "layer": "CS-TABL-TEX2", "dwg": "D3", "kind": "m"}], "shared": 1}, "params:bearing_seats.pedestal.size_y": {"v": 1400.0, "hits": [{"text": "1400", "x": 136064.0, "y": -473511.3, "layer": "CS-TABL-TEX2", "dwg": "D1", "kind": "mm"}, {"text": "1400", "x": 136064.0, "y": -474311.3, "layer": "CS-TABL-TEX2", "dwg": "D1", "kind": "mm"}, {"text": "1,400", "x": 38753.3, "y": -703047.6, "layer": "CS-DIMT", "dwg": "D3", "kind": "mm"}, {"text": "1,400", "x": 44353.6, "y": -708046.3, "layer": "CS-DIMT", "dwg": "D3", "kind": "mm"}], "shared": 1}, "params:bearing_seats.pedestal.size_x": {"v": 1300.0, "hits": [{"text": "1,300", "x": 116364.4, "y": -492294.7, "layer": "CS-DIMT", "dwg": "D1", "kind": "mm"}, {"text": "1,300", "x": 124764.4, "y": -492294.7, "layer": "CS-DIMT", "dwg": "D1", "kind": "mm"}, {"text": "1300", "x": 140564.0, "y": -473511.3, "layer": "CS-TABL-TEX2", "dwg": "D1", "kind": "mm"}, {"text": "1300", "x": 140564.0, "y": -474311.3, "layer": "CS-TABL-TEX2", "dwg": "D1", "kind": "mm"}, {"text": "1,300", "x": 42194.0, "y": -706070.0, "layer": "CS-DIMT", "dwg": "D3", "kind": "mm"}], "shared": 1}, "params:shaft_rebar.design_lengths.P3-2": {"v": 3342.0, "hits": [{"text": "3.342", "x": 91321.6, "y": -707137.5, "layer": "CS-TABL-TEX2", "dwg": "D4", "kind": "m"}], "shared": 1}, "params:shaft_rebar.design_lengths.P3-1": {"v": 2652.0, "hits": [{"text": "2.652", "x": 91321.6, "y": -706777.5, "layer": "CS-TABL-TEX2", "dwg": "D4", "kind": "m"}], "shared": 1}, "params:shaft_rebar.design_lengths.P1-2": {"v": 3400.0, "hits": [{"text": "3.400", "x": 101634.2, "y": -707137.5, "layer": "CS-TABL-TEX2", "dwg": "D4", "kind": "m"}], "shared": 1}, "params:shaft_rebar.design_lengths.P1-1": {"v": 8750.0, "hits": [{"text": "8.750", "x": 101634.2, "y": -706417.5, "layer": "CS-TABL-TEX2", "dwg": "D4", "kind": "m"}], "shared": 1}, "expected:G1.seats.pedestal_across": {"v": 1300, "hits": [{"text": "1,300", "x": 116364.4, "y": -492294.7, "layer": "CS-DIMT", "dwg": "D1", "kind": "mm"},Line truncated
@@ -0,0 +1,661 @@
{
"_schema": "pier-T-expected/1",
"_note": "독립 기대값: D1 치수 문자·EL 문자·표에서 옮긴 값. params와 별도. [작도] = 치수 문자 없음(작도값)",
"pier_id": "P1",
"tol_mm": 1.0,
"checkers": {
"G1": "g1_shaft.py",
"G2": "g2_straight.py",
"G3": "g3_shaft.py",
"G4": "g4_ramp.py"
},
"negative": {
"G1": [
{
"id": "BS02",
"d": [
3,
0,
0
]
},
{
"id": "BP01",
"d": [
0,
0,
2
]
}
],
"G5": [
{
"id": "BB02",
"d": [
5,
0,
0
]
},
{
"id": "SP01",
"d": [
0,
0,
5
]
}
],
"G2": [
{
"mark": "P1",
"d": [
5,
0,
0
]
},
{
"mark": "P2",
"d": [
0,
0,
5
]
}
],
"G3": [
{
"mark": "P1-1",
"d": [
5,
0,
0
]
},
{
"mark": "P2-1",
"d": [
0,
0,
5
]
}
],
"G4": [
{
"mark": "C1",
"d": [
0,
5,
0
]
},
{
"mark": "C7",
"d": [
0,
0,
5
]
}
]
},
"planned_fail": [],
"G1": {
"pile": {
"z_bottom": 32752,
"segments": [
{
"d": 2350,
"length": 7500
},
{
"d": 2500,
"length": 5200
}
],
"src": "'EL=32.752', '75, 2,350, 75', '2,500', '7,500', '5,200'"
},
"column": {
"d": 2000,
"z0": 45452,
"length": 12000,
"src": "'2,000', 'EL=45.452', '11,500' + '500'"
},
"coping": {
"top_length": 7000,
"bottom_length": 7600,
"column_face_half": 1000,
"soffit_rise": 1500,
"soffit_radius": 5000,
"width_y": 2200,
"side_bottom_width": 2000,
"z_top_left": 59952,
"z_top_right": 60267,
"top_step": 315,
"plan_end_corner_x": 3650,
"src": "'7,000', '7,600' (2,800+2,000+2,800), '1,500', '1,000', 'R=5,000', '2,200' (1,100+1,100), 'EL=59.952', 'EL=60.267', '315'; plan_end_corner_x [작도] D1 평면 51A"
},
"total_height": 27200,
"seats": {
"table": {
"1": [
60112,
110,
50,
900,
800
],
"2": [
60427,
110,
50,
900,
800
]
},
"pos": {
"1": [
-2250,
0
],
"2": [
2250,
0
]
},
"pedestal_along": 1400,
"pedestal_across": 1300,
"rotation_deg": {
"1": -5.55,
"2": -9.194
},
"pad_margin": [
200,
100
],
"src": "ELEVATION TABLE; 평면 '2,250' x2; C3 1,400, C6 1,300; rotation [작도] D1 평면"
}
},
"G5": {
"el_x": {
"1": 60112,
"2": 60427
},
"S": {
"1": -5.526,
"2": -5.526
},
"W": {
"1": 900,
"2": 900
},
"L": 1000,
"T": 50,
"h3": 190,
"bearing_size": {
"1": [
900,
800
],
"2": [
900,
800
]
},
"bearing_shrink": 100,
"thick_end": "-Y",
"colours": {
"bearing": [
0,
0,
0
],
"sole_plate": [
150,
150,
150
]
},
"src": "ELEVATION TABLE (EL.'X', h3, A, B, h4 = T); 솔플레이트 상세 TABLE (S, L, W, T1 78 / T2 22 -> 두꺼운 쪽 -Y, R4)"
},
"rebar_palette": {
"32": [
214,
39,
40
],
"29": [
255,
127,
14
],
"25": [
188,
60,
160
],
"19": [
44,
160,
44
],
"16": [
31,
119,
180
],
"22": [
23,
190,
207
],
"13": [
140,
86,
75
],
"35": [
148,
103,
189
]
},
"G2": {
"schedule_L": {
"P1": 16300,
"P2": 7758,
"P3": 2274
},
"schedule_n": {
"P1": 54,
"P2": 107,
"P3": 108
},
"dia": {
"P1": 35,
"P2": 16,
"P3": 16
},
"chain_anchor": 45492.0,
"main": {
"mark": "P1",
"radius": 875,
"divisions": 54,
"start_deg": 0.0,
"below_anchor": 2000,
"coupler": 40
},
"hoops": {
"mark": "P2",
"radius": 901,
"pitch": 150,
"below": 13
},
"ties": {
"mark": "P3",
"pitch": 300,
"below": 6,
"per_level": 2,
"y_lift": 16
},
"src": "D4 재료표(기둥) L·N, D3 상세 r 901; D2 단면 '125, 875, 875, 125' DIVISION 54; D2 사슬 '2,000', H4 14@150, H5 78@150, H1 7@300, H2 39@300 (기점 EL 45.492); K1 커플러 40, K2 hoop 13단 아래, K3 Y +16 (사용자 결정 2026-10-13)"
},
"G3": {
"schedule_L": {
"P1-1": 8750,
"P1-2": 3400,
"P2-1": 9000,
"P3-1": 2652,
"P3-2": 3342
},
"schedule_n": {
"P1-1": 61,
"P1-2": 61,
"P2-1": 48,
"P3-1": 48,
"P3-2": 30
},
"dia": {
"P1-1": 35,
"P1-2": 22,
"P2-1": 16,
"P3-1": 16,
"P3-2": 16
},
"shaft_top": 45452.0,
"main": {
"pieces": [
"P1-2",
"P1-1"
],
"radius": 999.5,
"divisions": 61,
"start_deg": 1.475
},
"hoops": {
"mark": "P2-1",
"radius": 1025,
"chain": {
"first": 110,
"groups": [
[
13,
150
],
[
34,
300
]
]
}
},
"ties": {
"mark": "P3-1",
"chain": {
"first": 260,
"groups": [
[
6,
300
],
[
17,
600
]
]
},
"y_lift": 16
},
"u_bars": {
"mark": "P3-2",
"bottom_above": 100
},
"plate": {
"size": 1250,
"thickness": 4
},
"src": "D4 재료표(기둥)·PLATE 재료표; 구조물 치수표 H 12,700, H1 17@600, H2 6@300, H3 34@300, H4 13@150, H5·H6 340, 사슬 '260'·'110'·'100'; 단면 원 r 1,025, DIVISION 61 (첫 1.475°); S1~S6 사용자 결정 2026-10-13"
},
"G4": {
"schedule": {
"C1": [
8617,
9
],
"C2": [
7177,
9
],
"C4": [
8617,
8
],
"C5": [
7177,
8
],
"C3": [
7230,
9
],
"C6": [
9003,
9
],
"S3": [
1250,
44
],
"S4": [
1250,
44
],
"C7": [
7480,
20
],
"C8": [
6071,
40
],
"C9": [
9251,
15
],
"C10": [
7426,
30
],
"C11": [
8110,
20
],
"C12": [
5333,
40
],
"C13": [
11309,
18
],
"C14": [
18057,
12
],
"C15": [
2700,
51
],
"C16": [
4000,
17
],
"S1": [
2700,
22
],
"S2": [
2600,
24
]
},
"dia": {
"C1": 29,
"C2": 29,
"C4": 29,
"C5": 29,
"C3": 25,
"C6": 25,
"S3": 25,
"S4": 25,
"C7": 19,
"C8": 19,
"C9": 19,
"C10": 19,
"C11": 19,
"C12": 19,
"C13": 19,
"C14": 19,
"C15": 19,
"C16": 19,
"S1": 16,
"S2": 16
},
"fixed_length": [
"C1",
"C2",
"C3",
"C4",
"C5",
"C6",
"C15",
"C16",
"S1",
"S2",
"S3",
"S4"
],
"layers": {
"C1": {
"z": 59852,
"y": {
"start": -1000,
"pitch": 250,
"n": 9
},
"x_top": [
-3425.6,
3492.1
]
},
"C4": {
"z": 59852,
"y": {
"start": -875,
"pitch": 250,
"n": 8
},
"x_top": [
-3425.6,
3492.1
]
},
"C2": {
"z": 59752,
"y": {
"start": -1000,
"pitch": 250,
"n": 9
},
"x_top": [
-3455.6,
3515.0
]
},
"C5": {
"z": 59752,
"y": {
"start": -875,
"pitch": 250,
"n": 8
},
"x_top": [
-3455.6,
3515.0
]
},
"C3": {
"z": 59652,
"y": {
"start": -1000,
"pitch": 250,
"n": 9
},
"x_top": [
-3485.6,
3537.8
]
},
"C16": {
"z": 60167,
"y": {
"start": -1000,
"pitch": 125,
"n": 17
},
"x_top": [
100,
3400
]
}
},
"stirrups": {
"x": {
"start": -3375,
"pitch": 125,
"n": 55
},
"inner_dx": 20,
"top_cover": 77.5,
"bottom_cover": 77.5,
"outer_y": [
-875,
750
],
"zones": {
"left": [
"C7",
"C8",
-3375,
-1000
],
"centre": [
"C9",
"C10",
-875,
875
],
"right": [
"C11",
"C12",
1000,
3375
]
}
},
"loops": {
"per_level": 3,
"levels": {
"C14": [
59827,
59577,
59327,
59077
],
"C13": [
58827,
58577,
58327,
58077,
57827,
57577
]
}
},
"c6": {
"z_bottom": 57552,
"y": [
-906.5,
-750,
-500,
-250,
0,
250,
500,
750,
906.5
],
"y_note": "T1 @250 9본; 하면 직선부(EL 57.552)에서는 바깥 2본이 측면 테이퍼 피복 100.2로 ±906.5"
},
"c15": {
"a": 2000
},
"seats": {
"1": {
"S1": 11,
"S2": 12,
"S3": 22,
"S4": 22
},
"2": {
"S1": 11,
"S2": 12,
"S3": 22,
"S4": 22
}
},
"src": "D3 재료표·철근 상세; D2 정면 작도(상면 3단 EL·x 끝, 스터럽 55곳, C13·C14 단, C16); 단면 A-A·B-B(행 @125/@250, 스터럽 y·피복 77.5); 교좌면 E-E·F-F; 결정 T1~T6 (2026-10-14)"
}
}
File diff suppressed because it is too large. Load diff
@@ -0,0 +1,7 @@
{
"name": "Ramp-A교P1형",
"desc": "단일 현장타설말뚝(Ø2.35 암반 근입 + Ø2.5) · 원형 기둥 Ø2.0 · Y형 코핑(하면 R5,000, 끝면 평면 볼록, 상면 315 단차) · 받침 2개(회전) · 철근 G2 기둥 · G3 말뚝 철근망(PLATE) · G4 코핑(철근별 중심선 449본)",
"source": "Ramp-A교P1",
"created": "2026-10-14 08:49:45",
"inputs_sha": "c55f791089aa00a4"
}
@@ -0,0 +1,309 @@
{
"_schema": "variability/1",
"status": "초안 — 템플릿 담당자 확정 전",
"grades": {
"V1": "값 변수",
"V2": "목록 변수",
"V3": "생성 변수",
"F": "고정"
},
"sections": {
"params:_schema": {
"grade": "F",
"source": [
"템플릿 고정"
],
"fixed_fields": [],
"note": "참고 정보(게이트가 쓰지 않음)",
"info": true
},
"params:pier_id": {
"grade": "F",
"source": [
"템플릿 고정"
],
"fixed_fields": [],
"note": "교각 식별자",
"info": false
},
"params:_meta": {
"grade": "F",
"source": [
"템플릿 고정"
],
"fixed_fields": [],
"note": "참고 정보(게이트가 쓰지 않음)",
"info": true
},
"params:scope": {
"grade": "F",
"source": [
"템플릿 고정"
],
"fixed_fields": [],
"note": "모델링 게이트 범위(실행 설정)",
"info": false
},
"params:builders": {
"grade": "F",
"source": [
"템플릿 고정"
],
"fixed_fields": [],
"note": "게이트별 생성기(실행 설정)",
"info": false
},
"params:pile": {
"grade": "V1",
"source": [
"표 밖 치수"
],
"fixed_fields": [
"kind"
],
"note": "단일 말뚝 구간",
"info": false
},
"params:column": {
"grade": "V1",
"source": [
"표 밖 치수"
],
"fixed_fields": [
"shape"
],
"note": "기둥 지름·높이 (단면 형식 shape는 고정)",
"info": false
},
"params:coping": {
"grade": "V2",
"source": [
"표 밖 치수"
],
"fixed_fields": [
"form"
],
"note": "코핑 외곽·치수 (형식 form은 고정)",
"info": false
},
"params:materials": {
"grade": "V1",
"source": [
"표 밖 치수"
],
"fixed_fields": [],
"note": "재료 강도 주기",
"info": false
},
"params:bearing_seats": {
"grade": "V1",
"source": [
"표",
"표 밖 치수"
],
"fixed_fields": [
"pedestal",
"pedestals"
],
"note": "받침 표 값 + 평면 위치 (대좌 구조는 고정)",
"info": false
},
"params:sole_plates": {
"grade": "V1",
"source": [
"표"
],
"fixed_fields": [
"bearing_size"
],
"note": "솔플레이트 표 값 (받침 크기 규칙은 고정)",
"info": false
},
"params:rebar_marks": {
"grade": "V1",
"source": [
"표"
],
"fixed_fields": [
"*.shape"
],
"note": "재료표 직경·형상 (마크 체계의 형상은 고정)",
"info": false
},
"params:rebar_marks_src": {
"grade": "F",
"source": [
"템플릿 고정"
],
"fixed_fields": [],
"note": "참고 정보(게이트가 쓰지 않음)",
"info": true
},
"params:display": {
"grade": "F",
"source": [
"템플릿 고정"
],
"fixed_fields": [],
"note": "표시·색 설정",
"info": false
},
"params:column_rebar": {
"grade": "V2",
"source": [
"표 밖 치수"
],
"fixed_fields": [
"form"
],
"note": "기둥 철근 사슬·위치",
"info": false
},
"params:shaft_rebar": {
"grade": "V2",
"source": [
"표 밖 치수"
],
"fixed_fields": [
"form"
],
"note": "말뚝 철근",
"info": false
},
"params:coping_rebar": {
"grade": "V3",
"source": [
"판독 스크립트"
],
"fixed_fields": [
"form",
"host",
"group"
],
"note": "코핑 철근 — 철근별 중심선 목록(판독 스크립트로 생성)",
"info": false
},
"expected:_schema": {
"grade": "F",
"source": [
"템플릿 고정"
],
"fixed_fields": [],
"note": "참고 정보(게이트가 쓰지 않음)",
"info": true
},
"expected:_note": {
"grade": "F",
"source": [
"템플릿 고정"
],
"fixed_fields": [],
"note": "참고 정보(게이트가 쓰지 않음)",
"info": true
},
"expected:pier_id": {
"grade": "F",
"source": [
"템플릿 고정"
],
"fixed_fields": [],
"note": "교각 식별자",
"info": false
},
"expected:tol_mm": {
"grade": "V1",
"source": [
"사람 입력"
],
"fixed_fields": [],
"note": "허용 오차",
"info": false
},
"expected:checkers": {
"grade": "F",
"source": [
"템플릿 고정"
],
"fixed_fields": [],
"note": "게이트별 검사기(실행 설정)",
"info": false
},
"expected:negative": {
"grade": "F",
"source": [
"템플릿 고정"
],
"fixed_fields": [],
"note": "음성 시험 대상(실행 설정)",
"info": false
},
"expected:planned_fail": {
"grade": "V1",
"source": [
"사람 입력"
],
"fixed_fields": [],
"note": "계획된 FAIL (사람 결정 기록)",
"info": false
},
"expected:G1": {
"grade": "V2",
"source": [
"표",
"표 밖 치수"
],
"fixed_fields": [],
"note": "독립 기대값 (params와 따로 도면에서 옮긴 값)",
"info": false
},
"expected:G5": {
"grade": "V2",
"source": [
"표",
"표 밖 치수"
],
"fixed_fields": [],
"note": "독립 기대값 (params와 따로 도면에서 옮긴 값)",
"info": false
},
"expected:rebar_palette": {
"grade": "V1",
"source": [
"사람 입력"
],
"fixed_fields": [],
"note": "철근 직경별 색 (사람 결정 기록)",
"info": false
},
"expected:G2": {
"grade": "V2",
"source": [
"표",
"표 밖 치수"
],
"fixed_fields": [],
"note": "독립 기대값 (params와 따로 도면에서 옮긴 값)",
"info": false
},
"expected:G3": {
"grade": "V2",
"source": [
"표",
"표 밖 치수"
],
"fixed_fields": [],
"note": "독립 기대값 (params와 따로 도면에서 옮긴 값)",
"info": false
},
"expected:G4": {
"grade": "V2",
"source": [
"표",
"표 밖 치수"
],
"fixed_fields": [],
"note": "독립 기대값 (params와 따로 도면에서 옮긴 값)",
"info": false
}
}
}
@@ -0,0 +1 @@
{"version": "1", "sources": ["5805357b67af903ef0a9f17007a31e3ab513accb69d83e5b8950a0272c20707a"], "fields": {"params:lean_concrete.z_top": {"v": 42763, "hits": [{"text": "EL. 42.763", "x": -83822.7, "y": -22989.8, "layer": "CS-DIMT", "dwg": "D1", "kind": "EL"}], "shared": 2}, "params:footing.thickness": {"v": 2500.0, "hits": [{"text": "2.500", "x": 34776.8, "y": -20361.5, "layer": "CS-DIMT", "dwg": "D1", "kind": "m"}, {"text": "2.500", "x": 31339.8, "y": -24224.6, "layer": "CS-DIMT", "dwg": "D1", "kind": "m"}, {"text": "2.500", "x": 34738.1, "y": -28183.5, "layer": "CS-DIMT", "dwg": "D1", "kind": "m"}, {"text": "2.500", "x": 31301.2, "y": -32046.5, "layer": "CS-DIMT", "dwg": "D1", "kind": "m"}, {"text": "2.500", "x": 34722.4, "y": -35946.1, "layer": "CS-DIMT", "dwg": "D1", "kind": "m"}, {"text": "2.500", "x": 31285.4, "y": -39809.2, "layer": "CS-DIMT", "dwg": "D1", "kind": "m"}], "shared": 3}, "params:footing.z_bottom": {"v": 42763, "hits": [{"text": "EL. 42.763", "x": -83822.7, "y": -22989.8, "layer": "CS-DIMT", "dwg": "D1", "kind": "EL"}], "shared": 2}, "params:column.height": {"v": 22600, "hits": [{"text": "22.600", "x": 16273.9, "y": -34758.9, "layer": "CS-DIMT", "dwg": "D1", "kind": "m"}], "shared": 1}, "params:column.diameter": {"v": 2500.0, "hits": [{"text": "2.500", "x": 34776.8, "y": -20361.5, "layer": "CS-DIMT", "dwg": "D1", "kind": "m"}, {"text": "2.500", "x": 31339.8, "y": -24224.6, "layer": "CS-DIMT", "dwg": "D1", "kind": "m"}, {"text": "2.500", "x": 34738.1, "y": -28183.5, "layer": "CS-DIMT", "dwg": "D1", "kind": "m"}, {"text": "2.500", "x": 31301.2, "y": -32046.5, "layer": "CS-DIMT", "dwg": "D1", "kind": "m"}, {"text": "2.500", "x": 34722.4, "y": -35946.1, "layer": "CS-DIMT", "dwg": "D1", "kind": "m"}, {"text": "2.500", "x": 31285.4, "y": -39809.2, "layer": "CS-DIMT", "dwg": "D1", "kind": "m"}], "shared": 3}, "params:coping.z_top_right": {"v": 71063.0, "hits": [{"text": "EL. 71.063", "x": -82908.4, "y": -11189.8, "layer": "CS-DIMT", "dwg": "D1", "kind": "EL"}], "shared": 3}, "params:coping.z_top_left": {"v": 71193.0, "hits": [{"text": "EL. 71.193", "x": -95476.1, "y": -11059.8, "layer": "CS-DIMT", "dwg": "D1", "kind": "EL"}], "shared": 3}, "params:coping.plan_length": {"v": 10000.0, "hits": [{"text": "10.000", "x": 10218.2, "y": -19324.1, "layer": "CS-DIMT", "dwg": "D1", "kind": "m"}, {"text": "10.000", "x": 10218.2, "y": -26123.3, "layer": "CS-DIMT", "dwg": "D1", "kind": "m"}], "shared": 1}, "params:coping.profile_xz.6.1": {"v": 71193.0, "hits": [{"text": "EL. 71.193", "x": -95476.1, "y": -11059.8, "layer": "CS-DIMT", "dwg": "D1", "kind": "EL"}], "shared": 3}, "params:coping.profile_xz.5.1": {"v": 71193.0, "hits": [{"text": "EL. 71.193", "x": -95476.1, "y": -11059.8, "layer": "CS-DIMT", "dwg": "D1", "kind": "EL"}], "shared": 3}, "params:coping.profile_xz.4.1": {"v": 71063.0, "hits": [{"text": "EL. 71.063", "x": -82908.4, "y": -11189.8, "layer": "CS-DIMT", "dwg": "D1", "kind": "EL"}], "shared": 3}, "params:coping.profile_xz.3.1": {"v": 71063.0, "hits": [{"text": "EL. 71.063", "x": -82908.4, "y": -11189.8, "layer": "CS-DIMT", "dwg": "D1", "kind": "EL"}], "shared": 3}, "params:bearing_seats.bearings.3.el_x": {"v": 71310, "hits": [{"text": "71.310", "x": -69076.6, "y": -32940.4, "layer": "CS-TABL-TEX2", "dwg": "D1", "kind": "m"}], "shared": 1}, "params:bearing_seats.bearings.3.seat_z": {"v": 71063.0, "hits": [{"text": "EL. 71.063", "x": -82908.4, "y": -11189.8, "layer": "CS-DIMT", "dwg": "D1", "kind": "EL"}], "shared": 3}, "params:bearing_seats.bearings.2.el_x": {"v": 71440, "hits": [{"text": "71.440", "x": -69076.6, "y": -32140.4, "layer": "CS-TABL-TEX2", "dwg": "D1", "kind": "m"}], "shared": 1}, "params:bearing_seats.bearings.2.seat_z": {"v": 71193.0, "hits": [{"text": "EL. 71.193", "x": -95476.1, "y": -11059.8, "layer": "CS-DIMT", "dwg": "D1", "kind": "EL"}], "shared": 3}, "params:bearing_seats.bearings.1.el_x": {"v": 71288, "hits": [{"text": "71.288", "x": -69076.6, "y": -31340.4, "layer": "CS-TABL-TEX2", "dwg": "D1", "kind": "m"}], "shared": 1}, "params:bearing_seats.bearings.1.seat_z": {"v": 71063.0, "hits": [{"text": "EL. 71.063", "x": -82908.4, "y": -11189.8, "layer": "CS-DIMT", "dwg": "D1", "kind": "EL"}], "shared": 3}, "params:bearing_seats.bearings.0.el_x": {"v": 71418, "hits": [{"text": "71.418", "x": -69076.6, "y": -30540.4, "layer": "CS-TABL-TEX2", "dwg": "D1", "kind": "m"}], "shared": 1}, "params:bearing_seats.bearings.0.seat_z": {"v": 71193.0, "hits": [{"text": "EL. 71.193", "x": -95476.1, "y": -11059.8, "layer": "CS-DIMT", "dwg": "D1", "kind": "EL"}], "shared": 3}, "params:column_rebar.ties.straight": {"v": 2295, "hits": [{"text": "2.295", "x": 100886.3, "y": -24794.6, "layer": "CS-TABL-TEX2", "dwg": "D1", "kind": "m"}], "shared": 1}, "params:column_rebar.hoops.zones.2.a": {"v": 3610, "hits": [{"text": "3.610", "x": 100886.3, "y": -25604.6, "layer": "CS-TABL-TEX2", "dwg": "D1", "kind": "m"}], "shared": 1}, "params:column_rebar.hoops.zones.1.a": {"v": 7164, "hits": [{"text": "7.Line truncated
@@ -0,0 +1,7 @@
{
"name": "산외교울산P1형",
"desc": "직접기초(말뚝 없음) · 원형 기둥 Ø2.5 · 직선 경사 코핑(끝면 300 경사, 상면 130 단차, 평면 R500) · 받침 4개 · 철근 G2~G4 울산 형식(코핑 철근은 철근별 중심선)",
"source": "_휴지통/산외교울산P1_20261013_131140",
"created": "2026-10-13 13:18:47",
"inputs_sha": "d701f1270fd40f2c"
}
@@ -0,0 +1,316 @@
{
"_schema": "variability/1",
"status": "초안 — 템플릿 담당자 확정 전",
"grades": {
"V1": "값 변수",
"V2": "목록 변수",
"V3": "생성 변수",
"F": "고정"
},
"sections": {
"params:_schema": {
"grade": "F",
"source": [
"템플릿 고정"
],
"fixed_fields": [],
"note": "참고 정보(게이트가 쓰지 않음)",
"info": true
},
"params:pier_id": {
"grade": "F",
"source": [
"템플릿 고정"
],
"fixed_fields": [],
"note": "교각 식별자",
"info": false
},
"params:_meta": {
"grade": "F",
"source": [
"템플릿 고정"
],
"fixed_fields": [],
"note": "참고 정보(게이트가 쓰지 않음)",
"info": true
},
"params:scope": {
"grade": "F",
"source": [
"템플릿 고정"
],
"fixed_fields": [],
"note": "모델링 게이트 범위(실행 설정)",
"info": false
},
"params:builders": {
"grade": "F",
"source": [
"템플릿 고정"
],
"fixed_fields": [],
"note": "게이트별 생성기(실행 설정)",
"info": false
},
"params:lean_concrete": {
"grade": "V1",
"source": [
"표 밖 치수"
],
"fixed_fields": [],
"note": "버림콘크리트 치수·EL",
"info": false
},
"params:footing": {
"grade": "V1",
"source": [
"표 밖 치수"
],
"fixed_fields": [],
"note": "기초 치수·EL (rot_deg = 기초 회전 각도 값)",
"info": false
},
"params:column": {
"grade": "V1",
"source": [
"표 밖 치수"
],
"fixed_fields": [
"shape"
],
"note": "기둥 지름·높이 (단면 형식 shape는 고정)",
"info": false
},
"params:coping": {
"grade": "V2",
"source": [
"표 밖 치수"
],
"fixed_fields": [
"form"
],
"note": "코핑 외곽·치수 (형식 form은 고정)",
"info": false
},
"params:materials": {
"grade": "V1",
"source": [
"표 밖 치수"
],
"fixed_fields": [],
"note": "재료 강도 주기",
"info": false
},
"params:bearing_seats": {
"grade": "V1",
"source": [
"표",
"표 밖 치수"
],
"fixed_fields": [
"pedestal",
"pedestals"
],
"note": "받침 표 값 + 평면 위치 (대좌 구조는 고정)",
"info": false
},
"params:sole_plates": {
"grade": "V1",
"source": [
"표"
],
"fixed_fields": [
"bearing_size"
],
"note": "솔플레이트 표 값 (받침 크기 규칙은 고정)",
"info": false
},
"params:display": {
"grade": "F",
"source": [
"템플릿 고정"
],
"fixed_fields": [],
"note": "표시·색 설정",
"info": false
},
"params:rebar_marks": {
"grade": "V1",
"source": [
"표"
],
"fixed_fields": [
"*.shape"
],
"note": "재료표 직경·형상 (마크 체계의 형상은 고정)",
"info": false
},
"params:rebar_marks_src": {
"grade": "F",
"source": [
"템플릿 고정"
],
"fixed_fields": [],
"note": "참고 정보(게이트가 쓰지 않음)",
"info": true
},
"params:column_rebar": {
"grade": "V2",
"source": [
"표 밖 치수"
],
"fixed_fields": [
"form"
],
"note": "기둥 철근 사슬·위치",
"info": false
},
"params:footing_rebar": {
"grade": "V2",
"source": [
"표 밖 치수"
],
"fixed_fields": [
"form"
],
"note": "기초 철근 위치 사슬",
"info": false
},
"params:coping_rebar": {
"grade": "V3",
"source": [
"판독 스크립트"
],
"fixed_fields": [
"form",
"host",
"group"
],
"note": "코핑 철근 — 철근별 중심선 목록(판독 스크립트로 생성)",
"info": false
},
"expected:_schema": {
"grade": "F",
"source": [
"템플릿 고정"
],
"fixed_fields": [],
"note": "참고 정보(게이트가 쓰지 않음)",
"info": true
},
"expected:_note": {
"grade": "F",
"source": [
"템플릿 고정"
],
"fixed_fields": [],
"note": "참고 정보(게이트가 쓰지 않음)",
"info": true
},
"expected:pier_id": {
"grade": "F",
"source": [
"템플릿 고정"
],
"fixed_fields": [],
"note": "교각 식별자",
"info": false
},
"expected:tol_mm": {
"grade": "V1",
"source": [
"사람 입력"
],
"fixed_fields": [],
"note": "허용 오차",
"info": false
},
"expected:checkers": {
"grade": "F",
"source": [
"템플릿 고정"
],
"fixed_fields": [],
"note": "게이트별 검사기(실행 설정)",
"info": false
},
"expected:negative": {
"grade": "F",
"source": [
"템플릿 고정"
],
"fixed_fields": [],
"note": "음성 시험 대상(실행 설정)",
"info": false
},
"expected:rebar_palette": {
"grade": "V1",
"source": [
"사람 입력"
],
"fixed_fields": [],
"note": "철근 직경별 색 (사람 결정 기록)",
"info": false
},
"expected:planned_fail": {
"grade": "V1",
"source": [
"사람 입력"
],
"fixed_fields": [],
"note": "계획된 FAIL (사람 결정 기록)",
"info": false
},
"expected:G1": {
"grade": "V2",
"source": [
"표",
"표 밖 치수"
],
"fixed_fields": [],
"note": "독립 기대값 (params와 따로 도면에서 옮긴 값)",
"info": false
},
"expected:G5": {
"grade": "V2",
"source": [
"표",
"표 밖 치수"
],
"fixed_fields": [],
"note": "독립 기대값 (params와 따로 도면에서 옮긴 값)",
"info": false
},
"expected:G2": {
"grade": "V2",
"source": [
"표",
"표 밖 치수"
],
"fixed_fields": [],
"note": "독립 기대값 (params와 따로 도면에서 옮긴 값)",
"info": false
},
"expected:G3": {
"grade": "V2",
"source": [
"표",
"표 밖 치수"
],
"fixed_fields": [],
"note": "독립 기대값 (params와 따로 도면에서 옮긴 값)",
"info": false
},
"expected:G4": {
"grade": "V2",
"source": [
"표",
"표 밖 치수"
],
"fixed_fields": [],
"note": "독립 기대값 (params와 따로 도면에서 옮긴 값)",
"info": false
}
}
}
@@ -0,0 +1 @@
{"version": "1", "sources": ["8bc02c331e860a1fed9727e5d3f7d51b1dff661e7adaeb8264a778ac8cd69aca"], "fields": {"params:lean_concrete.z_top": {"v": 38916, "hits": [{"text": "EL. 38.916", "x": -80350.7, "y": -22099.7, "layer": "CS-DIMT", "dwg": "D1", "kind": "EL"}], "shared": 2}, "params:footing.thickness": {"v": 2500.0, "hits": [{"text": "2.500", "x": 35840.2, "y": -21067.0, "layer": "CS-DIMT", "dwg": "D1", "kind": "m"}, {"text": "2.500", "x": 32403.3, "y": -24930.0, "layer": "CS-DIMT", "dwg": "D1", "kind": "m"}, {"text": "2.500", "x": 35801.6, "y": -28888.9, "layer": "CS-DIMT", "dwg": "D1", "kind": "m"}, {"text": "2.500", "x": 32364.7, "y": -32752.0, "layer": "CS-DIMT", "dwg": "D1", "kind": "m"}, {"text": "2.500", "x": 35785.9, "y": -36651.6, "layer": "CS-DIMT", "dwg": "D1", "kind": "m"}, {"text": "2.500", "x": 32348.9, "y": -40514.6, "layer": "CS-DIMT", "dwg": "D1", "kind": "m"}], "shared": 3}, "params:footing.z_bottom": {"v": 38916, "hits": [{"text": "EL. 38.916", "x": -80350.7, "y": -22099.7, "layer": "CS-DIMT", "dwg": "D1", "kind": "EL"}], "shared": 2}, "params:footing.size_y": {"v": 7500.0, "hits": [{"text": "7.500", "x": 23726.8, "y": -42666.7, "layer": "CS-DIMT", "dwg": "D1", "kind": "m"}, {"text": "7.500", "x": 50548.0, "y": -25340.1, "layer": "CS-DIMT", "dwg": "D1", "kind": "m"}, {"text": "7.500", "x": 110601.4, "y": -34064.6, "layer": "CS-TABL-TEX2", "dwg": "D1", "kind": "m"}], "shared": 1}, "params:footing.size_x": {"v": 7800.0, "hits": [{"text": "7.800", "x": 9723.9, "y": -42738.9, "layer": "CS-DIMT", "dwg": "D1", "kind": "m"}, {"text": "7.800", "x": 56135.0, "y": -30506.7, "layer": "CS-DIMT", "dwg": "D1", "kind": "m"}, {"text": "7.800", "x": 56135.0, "y": -19977.1, "layer": "CS-DIMT", "dwg": "D1", "kind": "m"}, {"text": "7.800", "x": 110601.4, "y": -33794.6, "layer": "CS-TABL-TEX2", "dwg": "D1", "kind": "m"}], "shared": 1}, "params:column.height": {"v": 27300, "hits": [{"text": "27.300", "x": 15737.0, "y": -34424.7, "layer": "CS-DIMT", "dwg": "D1", "kind": "m"}, {"text": "27.300", "x": 110516.2, "y": -23714.6, "layer": "CS-TABL-TEX2", "dwg": "D1", "kind": "m"}], "shared": 1}, "params:column.diameter": {"v": 2500.0, "hits": [{"text": "2.500", "x": 35840.2, "y": -21067.0, "layer": "CS-DIMT", "dwg": "D1", "kind": "m"}, {"text": "2.500", "x": 32403.3, "y": -24930.0, "layer": "CS-DIMT", "dwg": "D1", "kind": "m"}, {"text": "2.500", "x": 35801.6, "y": -28888.9, "layer": "CS-DIMT", "dwg": "D1", "kind": "m"}, {"text": "2.500", "x": 32364.7, "y": -32752.0, "layer": "CS-DIMT", "dwg": "D1", "kind": "m"}, {"text": "2.500", "x": 35785.9, "y": -36651.6, "layer": "CS-DIMT", "dwg": "D1", "kind": "m"}, {"text": "2.500", "x": 32348.9, "y": -40514.6, "layer": "CS-DIMT", "dwg": "D1", "kind": "m"}], "shared": 3}, "params:coping.z_top_right": {"v": 71916.0, "hits": [{"text": "EL. 71.916", "x": -79586.4, "y": -10299.7, "layer": "CS-DIMT", "dwg": "D1", "kind": "EL"}], "shared": 3}, "params:coping.z_top_left": {"v": 72046.0, "hits": [{"text": "EL. 72.046", "x": -92154.1, "y": -10169.7, "layer": "CS-DIMT", "dwg": "D1", "kind": "EL"}], "shared": 3}, "params:coping.plan_length": {"v": 10000.0, "hits": [{"text": "10.000", "x": 9681.3, "y": -19135.6, "layer": "CS-DIMT", "dwg": "D1", "kind": "m"}, {"text": "10.000", "x": 9681.3, "y": -25941.8, "layer": "CS-DIMT", "dwg": "D1", "kind": "m"}], "shared": 1}, "params:coping.profile_xz.6.1": {"v": 72046.0, "hits": [{"text": "EL. 72.046", "x": -92154.1, "y": -10169.7, "layer": "CS-DIMT", "dwg": "D1", "kind": "EL"}], "shared": 3}, "params:coping.profile_xz.5.1": {"v": 72046.0, "hits": [{"text": "EL. 72.046", "x": -92154.1, "y": -10169.7, "layer": "CS-DIMT", "dwg": "D1", "kind": "EL"}], "shared": 3}, "params:coping.profile_xz.4.1": {"v": 71916.0, "hits": [{"text": "EL. 71.916", "x": -79586.4, "y": -10299.7, "layer": "CS-DIMT", "dwg": "D1", "kind": "EL"}], "shared": 3}, "params:coping.profile_xz.3.1": {"v": 71916.0, "hits": [{"text": "EL. 71.916", "x": -79586.4, "y": -10299.7, "layer": "CS-DIMT", "dwg": "D1", "kind": "EL"}], "shared": 3}, "params:bearing_seats.bearings.3.el_x": {"v": 72163, "hits": [{"text": "72.163", "x": -65754.6, "y": -33539.3, "layer": "CS-TABL-TEX2", "dwg": "D1", "kind": "m"}], "shared": 1}, "params:bearing_seats.bearings.3.seat_z": {"v": 71916.0, "hits": [{"text": "EL. 71.916", "x": -79586.4, "y": -10299.7, "layer": "CS-DIMT", "dwg": "D1", "kind": "EL"}], "shared": 3}, "params:bearing_seats.bearings.2.el_x": {"v": 72293, "hits": [{"text": "72.293", "x": -65754.6, "y": -32739.3, "layer": "CS-TABL-TEX2", "dwg": "D1", "kind": "m"}], "shared": 1}, "params:bearing_seats.bearings.2.seat_z": {"v": 72046.0, "hits": [{"text": "EL. 72.046", "x": -92154.1, "y": -10169.7, "layer": "CS-DIMT", "dwg": "D1", "kind": "EL"}], "shared": 3}, "params:bearing_seats.bearings.1.el_x": {"v": 72133, "hits": [{"text": "72.133", "x": -65754.6, "y": -31939.3, "layer": "CS-TABL-TEX2", "dwg": "D1", "kind": "m"}], "shared": 1}, "params:bearing_seats.bearings.1.seat_z": {"v": 71916.0, "hits": [{"Line truncated
@@ -0,0 +1,7 @@
{
"name": "산외교울산P2형",
"desc": "강관말뚝 Ø508 6×5 기초(평면 37° 회전) · 기둥 Ø2.5 · 직선 경사 코핑(끝면 300 경사, 상면 130 단차, 평면 R500) · 받침 4개 · 철근 G2 링(주철근 68) · G3 기초(B7 320 [추론], 기초 회전 포함) · G4 코핑·받침(철근별 중심선 372본)",
"source": "산외교울산P2",
"created": "2026-10-16 15:37:46",
"inputs_sha": "3f3b19ffe8d277a9"
}
@@ -0,0 +1,327 @@
{
"_schema": "variability/1",
"status": "초안 — 템플릿 담당자 확정 전",
"grades": {
"V1": "값 변수",
"V2": "목록 변수",
"V3": "생성 변수",
"F": "고정"
},
"sections": {
"params:_schema": {
"grade": "F",
"source": [
"템플릿 고정"
],
"fixed_fields": [],
"note": "참고 정보(게이트가 쓰지 않음)",
"info": true
},
"params:pier_id": {
"grade": "F",
"source": [
"템플릿 고정"
],
"fixed_fields": [],
"note": "교각 식별자",
"info": false
},
"params:_meta": {
"grade": "F",
"source": [
"템플릿 고정"
],
"fixed_fields": [],
"note": "참고 정보(게이트가 쓰지 않음)",
"info": true
},
"params:scope": {
"grade": "F",
"source": [
"템플릿 고정"
],
"fixed_fields": [],
"note": "모델링 게이트 범위(실행 설정)",
"info": false
},
"params:builders": {
"grade": "F",
"source": [
"템플릿 고정"
],
"fixed_fields": [],
"note": "게이트별 생성기(실행 설정)",
"info": false
},
"params:lean_concrete": {
"grade": "V1",
"source": [
"표 밖 치수"
],
"fixed_fields": [],
"note": "버림콘크리트 치수·EL",
"info": false
},
"params:footing": {
"grade": "V1",
"source": [
"표 밖 치수"
],
"fixed_fields": [],
"note": "기초 치수·EL (rot_deg = 기초 회전 각도 값)",
"info": false
},
"params:column": {
"grade": "V1",
"source": [
"표 밖 치수"
],
"fixed_fields": [
"shape"
],
"note": "기둥 지름·높이 (단면 형식 shape는 고정)",
"info": false
},
"params:coping": {
"grade": "V2",
"source": [
"표 밖 치수"
],
"fixed_fields": [
"form"
],
"note": "코핑 외곽·치수 (형식 form은 고정)",
"info": false
},
"params:materials": {
"grade": "V1",
"source": [
"표 밖 치수"
],
"fixed_fields": [],
"note": "재료 강도 주기",
"info": false
},
"params:bearing_seats": {
"grade": "V1",
"source": [
"표",
"표 밖 치수"
],
"fixed_fields": [
"pedestal",
"pedestals"
],
"note": "받침 표 값 + 평면 위치 (대좌 구조는 고정)",
"info": false
},
"params:sole_plates": {
"grade": "V1",
"source": [
"표"
],
"fixed_fields": [
"bearing_size"
],
"note": "솔플레이트 표 값 (받침 크기 규칙은 고정)",
"info": false
},
"params:display": {
"grade": "F",
"source": [
"템플릿 고정"
],
"fixed_fields": [],
"note": "표시·색 설정",
"info": false
},
"params:rebar_marks": {
"grade": "V1",
"source": [
"표"
],
"fixed_fields": [
"*.shape"
],
"note": "재료표 직경·형상 (마크 체계의 형상은 고정)",
"info": false
},
"params:rebar_marks_src": {
"grade": "F",
"source": [
"템플릿 고정"
],
"fixed_fields": [],
"note": "참고 정보(게이트가 쓰지 않음)",
"info": true
},
"params:column_rebar": {
"grade": "V2",
"source": [
"표 밖 치수"
],
"fixed_fields": [
"form"
],
"note": "기둥 철근 사슬·위치",
"info": false
},
"params:footing_rebar": {
"grade": "V2",
"source": [
"표 밖 치수"
],
"fixed_fields": [
"form"
],
"note": "기초 철근 위치 사슬",
"info": false
},
"params:coping_rebar": {
"grade": "V3",
"source": [
"판독 스크립트"
],
"fixed_fields": [
"form",
"host",
"group"
],
"note": "코핑 철근 — 철근별 중심선 목록(판독 스크립트로 생성)",
"info": false
},
"params:piles": {
"grade": "V1",
"source": [
"표 밖 치수"
],
"fixed_fields": [
"kind"
],
"note": "말뚝 개수·간격·길이 (말뚝 유무는 템플릿 형식)",
"info": false
},
"expected:_schema": {
"grade": "F",
"source": [
"템플릿 고정"
],
"fixed_fields": [],
"note": "참고 정보(게이트가 쓰지 않음)",
"info": true
},
"expected:_note": {
"grade": "F",
"source": [
"템플릿 고정"
],
"fixed_fields": [],
"note": "참고 정보(게이트가 쓰지 않음)",
"info": true
},
"expected:pier_id": {
"grade": "F",
"source": [
"템플릿 고정"
],
"fixed_fields": [],
"note": "교각 식별자",
"info": false
},
"expected:tol_mm": {
"grade": "V1",
"source": [
"사람 입력"
],
"fixed_fields": [],
"note": "허용 오차",
"info": false
},
"expected:checkers": {
"grade": "F",
"source": [
"템플릿 고정"
],
"fixed_fields": [],
"note": "게이트별 검사기(실행 설정)",
"info": false
},
"expected:negative": {
"grade": "F",
"source": [
"템플릿 고정"
],
"fixed_fields": [],
"note": "음성 시험 대상(실행 설정)",
"info": false
},
"expected:rebar_palette": {
"grade": "V1",
"source": [
"사람 입력"
],
"fixed_fields": [],
"note": "철근 직경별 색 (사람 결정 기록)",
"info": false
},
"expected:planned_fail": {
"grade": "V1",
"source": [
"사람 입력"
],
"fixed_fields": [],
"note": "계획된 FAIL (사람 결정 기록)",
"info": false
},
"expected:G1": {
"grade": "V2",
"source": [
"표",
"표 밖 치수"
],
"fixed_fields": [],
"note": "독립 기대값 (params와 따로 도면에서 옮긴 값)",
"info": false
},
"expected:G5": {
"grade": "V2",
"source": [
"표",
"표 밖 치수"
],
"fixed_fields": [],
"note": "독립 기대값 (params와 따로 도면에서 옮긴 값)",
"info": false
},
"expected:G2": {
"grade": "V2",
"source": [
"표",
"표 밖 치수"
],
"fixed_fields": [],
"note": "독립 기대값 (params와 따로 도면에서 옮긴 값)",
"info": false
},
"expected:G3": {
"grade": "V2",
"source": [
"표",
"표 밖 치수"
],
"fixed_fields": [],
"note": "독립 기대값 (params와 따로 도면에서 옮긴 값)",
"info": false
},
"expected:G4": {
"grade": "V2",
"source": [
"표",
"표 밖 치수"
],
"fixed_fields": [],
"note": "독립 기대값 (params와 따로 도면에서 옮긴 값)",
"info": false
}
}
}
@@ -0,0 +1 @@
{"version": "1", "sources": ["d1a5109698fe92427ea144a3abdf6c37843f592919598c998f90f7e9c0b6c9c6"], "fields": {"params:lean_concrete.z_top": {"v": 10032.0, "hits": [{"text": "EL. 10.032", "x": 38279.4, "y": 25864.0, "layer": "CS-DIMT", "dwg": "D1", "kind": "EL"}], "shared": 2}, "params:lean_concrete.size_y": {"v": 7900.0, "hits": [{"text": "7.900", "x": 33285.3, "y": 21448.5, "layer": "CS-DIMT", "dwg": "D1", "kind": "m"}, {"text": "7.900", "x": 60895.3, "y": 21448.5, "layer": "CS-DIMT", "dwg": "D1", "kind": "m"}], "shared": 1}, "params:lean_concrete.size_x": {"v": 7900.0, "hits": [{"text": "7.900", "x": 33285.3, "y": 21448.5, "layer": "CS-DIMT", "dwg": "D1", "kind": "m"}, {"text": "7.900", "x": 60895.3, "y": 21448.5, "layer": "CS-DIMT", "dwg": "D1", "kind": "m"}], "shared": 1}, "params:footing.thickness": {"v": 2600.0, "hits": [{"text": "2.600", "x": 23703.0, "y": 25577.5, "layer": "CS-DIMT", "dwg": "D1", "kind": "m"}, {"text": "2.600", "x": 44703.9, "y": 25577.5, "layer": "CS-DIMT", "dwg": "D1", "kind": "m"}, {"text": "2.600", "x": 67247.0, "y": 25577.5, "layer": "CS-DIMT", "dwg": "D1", "kind": "m"}, {"text": "2.600", "x": 55299.8, "y": 25577.5, "layer": "CS-DIMT", "dwg": "D1", "kind": "m"}, {"text": "2.600", "x": 362744.4, "y": 26344.9, "layer": "CS-TABL-TEX2", "dwg": "D1", "kind": "m"}], "shared": 1}, "params:footing.z_bottom": {"v": 10032.0, "hits": [{"text": "EL. 10.032", "x": 38279.4, "y": 25864.0, "layer": "CS-DIMT", "dwg": "D1", "kind": "EL"}], "shared": 2}, "params:column.height": {"v": 16900.0, "hits": [{"text": "16.900", "x": 23703.0, "y": 30776.0, "layer": "CS-DIMT", "dwg": "D1", "kind": "m"}, {"text": "16.900", "x": 44703.9, "y": 30776.0, "layer": "CS-DIMT", "dwg": "D1", "kind": "m"}, {"text": "16.900", "x": 232792.5, "y": 26676.0, "layer": "CS-DIMT", "dwg": "D1", "kind": "m"}], "shared": 1}, "params:coping.side_taper.half_width_top": {"v": 1500.0, "hits": [{"text": "1.500", "x": 24861.0, "y": 55715.5, "layer": "CS-DIMT", "dwg": "D1", "kind": "m"}, {"text": "1.500", "x": 24861.0, "y": 54215.5, "layer": "CS-DIMT", "dwg": "D1", "kind": "m"}], "shared": 1}, "params:coping.z_top_right": {"v": 32936.0, "hits": [{"text": "EL. 32.936", "x": 40329.4, "y": 39324.8, "layer": "CS-DIMT", "dwg": "D1", "kind": "EL"}], "shared": 4}, "params:coping.z_top_left": {"v": 32531.5, "hits": [{"text": "EL. 32.532", "x": 25384.4, "y": 39177.8, "layer": "CS-DIMT", "dwg": "D1", "kind": "EL"}], "shared": 4}, "params:coping.top_length": {"v": 12000.0, "hits": [{"text": "12.000", "x": 34331.8, "y": 60537.2, "layer": "CS-DIMT", "dwg": "D1", "kind": "m"}, {"text": "12.000", "x": 33183.9, "y": 42836.9, "layer": "CS-DIMT", "dwg": "D1", "kind": "m"}, {"text": "12.000", "x": 225531.8, "y": 42003.8, "layer": "CS-DIMT", "dwg": "D1", "kind": "m"}, {"text": "12.000", "x": 225531.8, "y": 36021.3, "layer": "CS-DIMT", "dwg": "D1", "kind": "m"}], "shared": 2}, "params:coping.plan_length": {"v": 12000.0, "hits": [{"text": "12.000", "x": 34331.8, "y": 60537.2, "layer": "CS-DIMT", "dwg": "D1", "kind": "m"}, {"text": "12.000", "x": 33183.9, "y": 42836.9, "layer": "CS-DIMT", "dwg": "D1", "kind": "m"}, {"text": "12.000", "x": 225531.8, "y": 42003.8, "layer": "CS-DIMT", "dwg": "D1", "kind": "m"}, {"text": "12.000", "x": 225531.8, "y": 36021.3, "layer": "CS-DIMT", "dwg": "D1", "kind": "m"}], "shared": 2}, "params:coping.profile_xz.12.1": {"v": 32531.5, "hits": [{"text": "EL. 32.532", "x": 25384.4, "y": 39177.8, "layer": "CS-DIMT", "dwg": "D1", "kind": "EL"}], "shared": 4}, "params:coping.profile_xz.11.1": {"v": 32531.5, "hits": [{"text": "EL. 32.532", "x": 25384.4, "y": 39177.8, "layer": "CS-DIMT", "dwg": "D1", "kind": "EL"}], "shared": 4}, "params:coping.profile_xz.4.1": {"v": 32936.0, "hits": [{"text": "EL. 32.936", "x": 40329.4, "y": 39324.8, "layer": "CS-DIMT", "dwg": "D1", "kind": "EL"}], "shared": 4}, "params:coping.profile_xz.3.1": {"v": 32936.0, "hits": [{"text": "EL. 32.936", "x": 40329.4, "y": 39324.8, "layer": "CS-DIMT", "dwg": "D1", "kind": "EL"}], "shared": 4}, "params:coping.profile_xz.1.0": {"v": 1200.0, "hits": [{"text": "1.200", "x": 32685.3, "y": 32414.0, "layer": "CS-DIMT", "dwg": "D1", "kind": "m"}, {"text": "1.200", "x": 33885.3, "y": 32414.0, "layer": "CS-DIMT", "dwg": "D1", "kind": "m"}, {"text": "1.200", "x": 317431.1, "y": 23834.1, "layer": "CS-DIML", "dwg": "D1", "kind": "m"}, {"text": "1.200", "x": 318315.8, "y": 23834.1, "layer": "CS-DIML", "dwg": "D1", "kind": "m"}], "shared": 2}, "params:coping.profile_xz.0.0": {"v": -1200.0, "hits": [{"text": "1.200", "x": 32685.3, "y": 32414.0, "layer": "CS-DIMT", "dwg": "D1", "kind": "m"}, {"text": "1.200", "x": 33885.3, "y": 32414.0, "layer": "CS-DIMT", "dwg": "D1", "kind": "m"}, {"text": "1.200", "x": 317431.1, "y": 23834.1, "layer": "CS-DIML", "dwg": "D1", "kind": "m"}, {"text": "1.200", "x": 318315.8, "y": 23834.1, "layer": "CS-DIML", "dwg": "D1", "kind": "m"}], "shared": 2}, "params:bearing_seats.bearings.9.el_x": {"v": 33180, "hits": [{"text": "33.180", "x": 120393.1, "y": 3Line truncated
@@ -0,0 +1,7 @@
{
"name": "새재1교P1형",
"desc": "직접기초(말뚝 없음) · 원형 기둥 Ø2.2 · 직선 경사 코핑(끝면 수직, 상면 5단, 측면 3,000→2,200 테이퍼, 평면 직사각) · 받침 10개(대좌 5개 공유, 받침 평면 회전) · 철근 G2 기둥(주철근 2겹 49본) · G3 기초(철근별 중심선 307본) · G4 코핑·받침좌 철근(철근별 중심선 873본)",
"source": "새재1교P1",
"created": "2026-10-15 11:48:35",
"inputs_sha": "19d5dc4fdc89c918"
}
@@ -0,0 +1,316 @@
{
"_schema": "variability/1",
"status": "초안 — 템플릿 담당자 확정 전",
"grades": {
"V1": "값 변수",
"V2": "목록 변수",
"V3": "생성 변수",
"F": "고정"
},
"sections": {
"params:_schema": {
"grade": "F",
"source": [
"템플릿 고정"
],
"fixed_fields": [],
"note": "참고 정보(게이트가 쓰지 않음)",
"info": true
},
"params:pier_id": {
"grade": "F",
"source": [
"템플릿 고정"
],
"fixed_fields": [],
"note": "교각 식별자",
"info": false
},
"params:_meta": {
"grade": "F",
"source": [
"템플릿 고정"
],
"fixed_fields": [],
"note": "참고 정보(게이트가 쓰지 않음)",
"info": true
},
"params:scope": {
"grade": "F",
"source": [
"템플릿 고정"
],
"fixed_fields": [],
"note": "모델링 게이트 범위(실행 설정)",
"info": false
},
"params:builders": {
"grade": "F",
"source": [
"템플릿 고정"
],
"fixed_fields": [],
"note": "게이트별 생성기(실행 설정)",
"info": false
},
"params:lean_concrete": {
"grade": "V1",
"source": [
"표 밖 치수"
],
"fixed_fields": [],
"note": "버림콘크리트 치수·EL",
"info": false
},
"params:footing": {
"grade": "V1",
"source": [
"표 밖 치수"
],
"fixed_fields": [],
"note": "기초 치수·EL (rot_deg = 기초 회전 각도 값)",
"info": false
},
"params:column": {
"grade": "V1",
"source": [
"표 밖 치수"
],
"fixed_fields": [
"shape"
],
"note": "기둥 지름·높이 (단면 형식 shape는 고정)",
"info": false
},
"params:coping": {
"grade": "V2",
"source": [
"표 밖 치수"
],
"fixed_fields": [
"form"
],
"note": "코핑 외곽·치수 (형식 form은 고정)",
"info": false
},
"params:materials": {
"grade": "V1",
"source": [
"표 밖 치수"
],
"fixed_fields": [],
"note": "재료 강도 주기",
"info": false
},
"params:bearing_seats": {
"grade": "V1",
"source": [
"표",
"표 밖 치수"
],
"fixed_fields": [
"pedestal",
"pedestals"
],
"note": "받침 표 값 + 평면 위치 (대좌 구조는 고정)",
"info": false
},
"params:sole_plates": {
"grade": "V1",
"source": [
"표"
],
"fixed_fields": [
"bearing_size"
],
"note": "솔플레이트 표 값 (받침 크기 규칙은 고정)",
"info": false
},
"params:rebar_marks": {
"grade": "V1",
"source": [
"표"
],
"fixed_fields": [
"*.shape"
],
"note": "재료표 직경·형상 (마크 체계의 형상은 고정)",
"info": false
},
"params:rebar_marks_src": {
"grade": "F",
"source": [
"템플릿 고정"
],
"fixed_fields": [],
"note": "참고 정보(게이트가 쓰지 않음)",
"info": true
},
"params:display": {
"grade": "F",
"source": [
"템플릿 고정"
],
"fixed_fields": [],
"note": "표시·색 설정",
"info": false
},
"params:column_rebar": {
"grade": "V2",
"source": [
"표 밖 치수"
],
"fixed_fields": [
"form"
],
"note": "기둥 철근 사슬·위치",
"info": false
},
"params:footing_rebar": {
"grade": "V3",
"source": [
"판독 스크립트"
],
"fixed_fields": [
"form"
],
"note": "기초 철근 위치 사슬 — 철근별 중심선 목록(판독 스크립트로 생성)",
"info": false
},
"params:coping_rebar": {
"grade": "V3",
"source": [
"판독 스크립트"
],
"fixed_fields": [
"form",
"host",
"group"
],
"note": "코핑 철근 — 철근별 중심선 목록(판독 스크립트로 생성)",
"info": false
},
"expected:_schema": {
"grade": "F",
"source": [
"템플릿 고정"
],
"fixed_fields": [],
"note": "참고 정보(게이트가 쓰지 않음)",
"info": true
},
"expected:pier_id": {
"grade": "F",
"source": [
"템플릿 고정"
],
"fixed_fields": [],
"note": "교각 식별자",
"info": false
},
"expected:tol_mm": {
"grade": "V1",
"source": [
"사람 입력"
],
"fixed_fields": [],
"note": "허용 오차",
"info": false
},
"expected:_note": {
"grade": "F",
"source": [
"템플릿 고정"
],
"fixed_fields": [],
"note": "참고 정보(게이트가 쓰지 않음)",
"info": true
},
"expected:checkers": {
"grade": "F",
"source": [
"템플릿 고정"
],
"fixed_fields": [],
"note": "게이트별 검사기(실행 설정)",
"info": false
},
"expected:negative": {
"grade": "F",
"source": [
"템플릿 고정"
],
"fixed_fields": [],
"note": "음성 시험 대상(실행 설정)",
"info": false
},
"expected:planned_fail": {
"grade": "V1",
"source": [
"사람 입력"
],
"fixed_fields": [],
"note": "계획된 FAIL (사람 결정 기록)",
"info": false
},
"expected:G1": {
"grade": "V2",
"source": [
"표",
"표 밖 치수"
],
"fixed_fields": [],
"note": "독립 기대값 (params와 따로 도면에서 옮긴 값)",
"info": false
},
"expected:G5": {
"grade": "V2",
"source": [
"표",
"표 밖 치수"
],
"fixed_fields": [],
"note": "독립 기대값 (params와 따로 도면에서 옮긴 값)",
"info": false
},
"expected:rebar_palette": {
"grade": "V1",
"source": [
"사람 입력"
],
"fixed_fields": [],
"note": "철근 직경별 색 (사람 결정 기록)",
"info": false
},
"expected:G2": {
"grade": "V2",
"source": [
"표",
"표 밖 치수"
],
"fixed_fields": [],
"note": "독립 기대값 (params와 따로 도면에서 옮긴 값)",
"info": false
},
"expected:G3": {
"grade": "V2",
"source": [
"표",
"표 밖 치수"
],
"fixed_fields": [],
"note": "독립 기대값 (params와 따로 도면에서 옮긴 값)",
"info": false
},
"expected:G4": {
"grade": "V2",
"source": [
"표",
"표 밖 치수"
],
"fixed_fields": [],
"note": "독립 기대값 (params와 따로 도면에서 옮긴 값)",
"info": false
}
}
}
@@ -0,0 +1 @@
{"version": "1", "sources": ["8cfa9ac10f9412ae04184d25a6f1a04e5bed2c5e2f3c8a4992eecd7bac444720"], "fields": {"params:lean_concrete.z_top": {"v": 12175.0, "hits": [{"text": "EL. 12.175", "x": 396252.3, "y": 327649.9, "layer": "CS-DIMT", "dwg": "D1", "kind": "EL"}], "shared": 2}, "params:footing.thickness": {"v": 2200.0, "hits": [{"text": "2.200", "x": 380729.3, "y": 327178.8, "layer": "CS-DIMT", "dwg": "D1", "kind": "m"}, {"text": "2.200", "x": 401729.3, "y": 327178.8, "layer": "CS-DIMT", "dwg": "D1", "kind": "m"}, {"text": "2.200", "x": 411564.4, "y": 327178.8, "layer": "CS-DIMT", "dwg": "D1", "kind": "m"}, {"text": "2.200", "x": 425364.4, "y": 327178.8, "layer": "CS-DIMT", "dwg": "D1", "kind": "m"}], "shared": 1}, "params:footing.z_bottom": {"v": 12175.0, "hits": [{"text": "EL. 12.175", "x": 396252.3, "y": 327649.9, "layer": "CS-DIMT", "dwg": "D1", "kind": "EL"}], "shared": 2}, "params:column.height": {"v": 3800.0, "hits": [{"text": "3.800", "x": 380729.3, "y": 330178.8, "layer": "CS-DIMT", "dwg": "D1", "kind": "m"}, {"text": "3.800", "x": 401729.3, "y": 330178.8, "layer": "CS-DIMT", "dwg": "D1", "kind": "m"}, {"text": "3.800", "x": 580526.6, "y": 325219.8, "layer": "CS-DIMT", "dwg": "D1", "kind": "m"}], "shared": 1}, "params:coping.side_taper.half_width_bottom": {"v": 1250.0, "hits": [{"text": "1.250", "x": 634685.3, "y": 324237.5, "layer": "CS-DIMT", "dwg": "D1", "kind": "m"}, {"text": "1.250", "x": 716534.3, "y": 325863.6, "layer": "CS-TABL-TEX2", "dwg": "D1", "kind": "m"}, {"text": "1.250", "x": 716534.3, "y": 330063.6, "layer": "CS-TABL-TEX2", "dwg": "D1", "kind": "m"}], "shared": 1}, "params:coping.side_taper.half_width_top": {"v": 1650.0, "hits": [{"text": "1.650", "x": 380204.3, "y": 350838.5, "layer": "CS-DIMT", "dwg": "D1", "kind": "m"}, {"text": "1.650", "x": 380204.3, "y": 352488.5, "layer": "CS-DIMT", "dwg": "D1", "kind": "m"}], "shared": 1}, "params:coping.z_top_right": {"v": 21127.7, "hits": [{"text": "EL. 21.128", "x": 397352.3, "y": 336602.6, "layer": "CS-DIMT", "dwg": "D1", "kind": "EL"}], "shared": 4}, "params:coping.z_top_left": {"v": 21175.0, "hits": [{"text": "EL. 21.175", "x": 382407.3, "y": 336649.9, "layer": "CS-DIMT", "dwg": "D1", "kind": "EL"}], "shared": 4}, "params:coping.top_length": {"v": 12000.0, "hits": [{"text": "12.000", "x": 390742.9, "y": 357359.6, "layer": "CS-DIMT", "dwg": "D1", "kind": "m"}, {"text": "12.000", "x": 390206.7, "y": 340192.1, "layer": "CS-DIMT", "dwg": "D1", "kind": "m"}, {"text": "12.000", "x": 573265.9, "y": 332947.0, "layer": "CS-DIMT", "dwg": "D1", "kind": "m"}, {"text": "12.000", "x": 572939.5, "y": 341144.7, "layer": "CS-DIMT", "dwg": "D1", "kind": "m"}], "shared": 2}, "params:coping.plan_length": {"v": 12000.0, "hits": [{"text": "12.000", "x": 390742.9, "y": 357359.6, "layer": "CS-DIMT", "dwg": "D1", "kind": "m"}, {"text": "12.000", "x": 390206.7, "y": 340192.1, "layer": "CS-DIMT", "dwg": "D1", "kind": "m"}, {"text": "12.000", "x": 573265.9, "y": 332947.0, "layer": "CS-DIMT", "dwg": "D1", "kind": "m"}, {"text": "12.000", "x": 572939.5, "y": 341144.7, "layer": "CS-DIMT", "dwg": "D1", "kind": "m"}], "shared": 2}, "params:coping.profile_xz.12.1": {"v": 21175.0, "hits": [{"text": "EL. 21.175", "x": 382407.3, "y": 336649.9, "layer": "CS-DIMT", "dwg": "D1", "kind": "EL"}], "shared": 4}, "params:coping.profile_xz.11.1": {"v": 21175.0, "hits": [{"text": "EL. 21.175", "x": 382407.3, "y": 336649.9, "layer": "CS-DIMT", "dwg": "D1", "kind": "EL"}], "shared": 4}, "params:coping.profile_xz.4.1": {"v": 21127.7, "hits": [{"text": "EL. 21.128", "x": 397352.3, "y": 336602.6, "layer": "CS-DIMT", "dwg": "D1", "kind": "EL"}], "shared": 4}, "params:coping.profile_xz.3.1": {"v": 21127.7, "hits": [{"text": "EL. 21.128", "x": 397352.3, "y": 336602.6, "layer": "CS-DIMT", "dwg": "D1", "kind": "EL"}], "shared": 4}, "params:coping.profile_xz.1.0": {"v": 1350.0, "hits": [{"text": "1.350", "x": 389633.2, "y": 329599.9, "layer": "CS-DIMT", "dwg": "D1", "kind": "m"}, {"text": "1.350", "x": 390983.2, "y": 329599.9, "layer": "CS-DIMT", "dwg": "D1", "kind": "m"}], "shared": 1}, "params:coping.profile_xz.0.0": {"v": -1350.0, "hits": [{"text": "1.350", "x": 389633.2, "y": 329599.9, "layer": "CS-DIMT", "dwg": "D1", "kind": "m"}, {"text": "1.350", "x": 390983.2, "y": 329599.9, "layer": "CS-DIMT", "dwg": "D1", "kind": "m"}], "shared": 1}, "params:bearing_seats.bearings.9.el_x": {"v": 21372, "hits": [{"text": "21.372", "x": 505672.8, "y": 332652.4, "layer": "CS-TABL-TEX2", "dwg": "D1", "kind": "m"}], "shared": 1}, "params:bearing_seats.bearings.9.seat_z": {"v": 21127.7, "hits": [{"text": "EL. 21.128", "x": 397352.3, "y": 336602.6, "layer": "CS-DIMT", "dwg": "D1", "kind": "EL"}], "shared": 4}, "params:bearing_seats.bearings.8.el_x": {"v": 21433, "hits": [{"text": "21.433", "x": 505672.8, "y": 333452.4, "layer": "CS-TABL-TEX2", "dwg": "D1", "kind": "m"}], "shared": 1}, "params:bearing_seats.bearings.7.el_x": {"v": 21486, "hits": [{"text": "21.486", "x": 505672.8, "y": 334252.4, "layer": "Line truncated
File diff suppressed because it is too large. Load diff
@@ -0,0 +1,7 @@
{
"name": "옥성교P1형",
"desc": "말뚝기초(강관 Ø609 5×5) · 원형 기둥 Ø2.5 · 직선 경사 코핑(끝면 수직, 상면 5단, 측면 3,300→2,500 테이퍼) · 평면 사각 18° · 받침 10개(대좌 5개 공유) · 철근 G2 기둥(2겹) · G3 기초(철근별 중심선 518본) · G4 코핑·교좌면(철근별 중심선 1,163본, 평면 전단)",
"source": "옥성교P1",
"created": "2026-10-14 16:05:54",
"inputs_sha": "a0343ac8d86ca674"
}
@@ -0,0 +1,327 @@
{
"_schema": "variability/1",
"status": "초안 — 템플릿 담당자 확정 전",
"grades": {
"V1": "값 변수",
"V2": "목록 변수",
"V3": "생성 변수",
"F": "고정"
},
"sections": {
"params:_schema": {
"grade": "F",
"source": [
"템플릿 고정"
],
"fixed_fields": [],
"note": "참고 정보(게이트가 쓰지 않음)",
"info": true
},
"params:pier_id": {
"grade": "F",
"source": [
"템플릿 고정"
],
"fixed_fields": [],
"note": "교각 식별자",
"info": false
},
"params:_meta": {
"grade": "F",
"source": [
"템플릿 고정"
],
"fixed_fields": [],
"note": "참고 정보(게이트가 쓰지 않음)",
"info": true
},
"params:scope": {
"grade": "F",
"source": [
"템플릿 고정"
],
"fixed_fields": [],
"note": "모델링 게이트 범위(실행 설정)",
"info": false
},
"params:builders": {
"grade": "F",
"source": [
"템플릿 고정"
],
"fixed_fields": [],
"note": "게이트별 생성기(실행 설정)",
"info": false
},
"params:lean_concrete": {
"grade": "V1",
"source": [
"표 밖 치수"
],
"fixed_fields": [],
"note": "버림콘크리트 치수·EL",
"info": false
},
"params:footing": {
"grade": "V1",
"source": [
"표 밖 치수"
],
"fixed_fields": [],
"note": "기초 치수·EL (rot_deg = 기초 회전 각도 값)",
"info": false
},
"params:piles": {
"grade": "V1",
"source": [
"표 밖 치수"
],
"fixed_fields": [
"kind"
],
"note": "말뚝 개수·간격·길이 (말뚝 유무는 템플릿 형식)",
"info": false
},
"params:column": {
"grade": "V1",
"source": [
"표 밖 치수"
],
"fixed_fields": [
"shape"
],
"note": "기둥 지름·높이 (단면 형식 shape는 고정)",
"info": false
},
"params:coping": {
"grade": "V2",
"source": [
"표 밖 치수"
],
"fixed_fields": [
"form"
],
"note": "코핑 외곽·치수 (형식 form은 고정)",
"info": false
},
"params:materials": {
"grade": "V1",
"source": [
"표 밖 치수"
],
"fixed_fields": [],
"note": "재료 강도 주기",
"info": false
},
"params:bearing_seats": {
"grade": "V1",
"source": [
"표",
"표 밖 치수"
],
"fixed_fields": [
"pedestal",
"pedestals"
],
"note": "받침 표 값 + 평면 위치 (대좌 구조는 고정)",
"info": false
},
"params:sole_plates": {
"grade": "V1",
"source": [
"표"
],
"fixed_fields": [
"bearing_size"
],
"note": "솔플레이트 표 값 (받침 크기 규칙은 고정)",
"info": false
},
"params:rebar_marks": {
"grade": "V1",
"source": [
"표"
],
"fixed_fields": [
"*.shape"
],
"note": "재료표 직경·형상 (마크 체계의 형상은 고정)",
"info": false
},
"params:rebar_marks_src": {
"grade": "F",
"source": [
"템플릿 고정"
],
"fixed_fields": [],
"note": "참고 정보(게이트가 쓰지 않음)",
"info": true
},
"params:display": {
"grade": "F",
"source": [
"템플릿 고정"
],
"fixed_fields": [],
"note": "표시·색 설정",
"info": false
},
"params:column_rebar": {
"grade": "V2",
"source": [
"표 밖 치수"
],
"fixed_fields": [
"form"
],
"note": "기둥 철근 사슬·위치",
"info": false
},
"params:footing_rebar": {
"grade": "V3",
"source": [
"판독 스크립트"
],
"fixed_fields": [
"form"
],
"note": "기초 철근 위치 사슬 — 철근별 중심선 목록(판독 스크립트로 생성)",
"info": false
},
"params:coping_rebar": {
"grade": "V3",
"source": [
"판독 스크립트"
],
"fixed_fields": [
"form",
"host",
"group"
],
"note": "코핑 철근 — 철근별 중심선 목록(판독 스크립트로 생성)",
"info": false
},
"expected:_schema": {
"grade": "F",
"source": [
"템플릿 고정"
],
"fixed_fields": [],
"note": "참고 정보(게이트가 쓰지 않음)",
"info": true
},
"expected:pier_id": {
"grade": "F",
"source": [
"템플릿 고정"
],
"fixed_fields": [],
"note": "교각 식별자",
"info": false
},
"expected:tol_mm": {
"grade": "V1",
"source": [
"사람 입력"
],
"fixed_fields": [],
"note": "허용 오차",
"info": false
},
"expected:_note": {
"grade": "F",
"source": [
"템플릿 고정"
],
"fixed_fields": [],
"note": "참고 정보(게이트가 쓰지 않음)",
"info": true
},
"expected:checkers": {
"grade": "F",
"source": [
"템플릿 고정"
],
"fixed_fields": [],
"note": "게이트별 검사기(실행 설정)",
"info": false
},
"expected:negative": {
"grade": "F",
"source": [
"템플릿 고정"
],
"fixed_fields": [],
"note": "음성 시험 대상(실행 설정)",
"info": false
},
"expected:planned_fail": {
"grade": "V1",
"source": [
"사람 입력"
],
"fixed_fields": [],
"note": "계획된 FAIL (사람 결정 기록)",
"info": false
},
"expected:G1": {
"grade": "V2",
"source": [
"표",
"표 밖 치수"
],
"fixed_fields": [],
"note": "독립 기대값 (params와 따로 도면에서 옮긴 값)",
"info": false
},
"expected:G5": {
"grade": "V2",
"source": [
"표",
"표 밖 치수"
],
"fixed_fields": [],
"note": "독립 기대값 (params와 따로 도면에서 옮긴 값)",
"info": false
},
"expected:rebar_palette": {
"grade": "V1",
"source": [
"사람 입력"
],
"fixed_fields": [],
"note": "철근 직경별 색 (사람 결정 기록)",
"info": false
},
"expected:G2": {
"grade": "V2",
"source": [
"표",
"표 밖 치수"
],
"fixed_fields": [],
"note": "독립 기대값 (params와 따로 도면에서 옮긴 값)",
"info": false
},
"expected:G3": {
"grade": "V2",
"source": [
"표",
"표 밖 치수"
],
"fixed_fields": [],
"note": "독립 기대값 (params와 따로 도면에서 옮긴 값)",
"info": false
},
"expected:G4": {
"grade": "V2",
"source": [
"표",
"표 밖 치수"
],
"fixed_fields": [],
"note": "독립 기대값 (params와 따로 도면에서 옮긴 값)",
"info": false
}
}
}
@@ -0,0 +1 @@
{"version": "1", "sources": ["d275fc3541eb2598c67563a366be893183f0a86063bf80fbad22bc4a41ad0694", "0aa03f2145935b1a2d91ac6f50ed8f37269ada03ec69c22fc8a94e6a3b0584e1", "f77980c5f8592d50be0b22c72b626154af1f492884ad2803e310771643e442b5"], "fields": {"params:lean_concrete.z_top": {"v": 26208, "hits": [{"text": "EL. 26.208", "x": 17398.3, "y": 7683.8, "layer": "CS-DIMT", "dwg": "D1", "kind": "EL"}, {"text": "EL. 26.208", "x": 24673.9, "y": 8775.6, "layer": "CS-DIMT", "dwg": "D1", "kind": "EL"}, {"text": "EL. 26.208", "x": 17398.3, "y": -27122.5, "layer": "CS-DIMT", "dwg": "D1", "kind": "EL"}], "shared": 2}, "params:lean_concrete.size_y": {"v": 8000, "hits": [{"text": "8.000", "x": 43290.6, "y": 25939.8, "layer": "CS-TABL-TEX2", "dwg": "D3", "kind": "m"}, {"text": "8.000", "x": 43290.6, "y": 27379.8, "layer": "CS-TABL-TEX2", "dwg": "D3", "kind": "m"}], "shared": 1}, "params:lean_concrete.size_x": {"v": 9550, "hits": [{"text": "9.550", "x": 43290.6, "y": 25579.8, "layer": "CS-TABL-TEX2", "dwg": "D3", "kind": "m"}, {"text": "9.550", "x": 43290.6, "y": 28819.8, "layer": "CS-TABL-TEX2", "dwg": "D3", "kind": "m"}], "shared": 1}, "params:footing.z_bottom": {"v": 26208, "hits": [{"text": "EL. 26.208", "x": 17398.3, "y": 7683.8, "layer": "CS-DIMT", "dwg": "D1", "kind": "EL"}, {"text": "EL. 26.208", "x": 24673.9, "y": 8775.6, "layer": "CS-DIMT", "dwg": "D1", "kind": "EL"}, {"text": "EL. 26.208", "x": 17398.3, "y": -27122.5, "layer": "CS-DIMT", "dwg": "D1", "kind": "EL"}], "shared": 2}, "params:footing.size_y": {"v": 7800, "hits": [{"text": "7.800", "x": 29878.0, "y": 3741.9, "layer": "CS-DIMT", "dwg": "D1", "kind": "m"}, {"text": "7.800", "x": 22191.2, "y": 16615.7, "layer": "CS-DIMT", "dwg": "D2", "kind": "m"}, {"text": "7.800", "x": 35236.8, "y": 16615.7, "layer": "CS-DIMT", "dwg": "D2", "kind": "m"}, {"text": "7.800", "x": 43290.6, "y": 24139.8, "layer": "CS-TABL-TEX2", "dwg": "D3", "kind": "m"}], "shared": 1}, "params:footing.size_x": {"v": 9350, "hits": [{"text": "9.350", "x": 11903.7, "y": 3741.9, "layer": "CS-DIMT", "dwg": "D1", "kind": "m"}, {"text": "9.350", "x": -22952.2, "y": -26049.0, "layer": "CS-DIMT", "dwg": "D1", "kind": "m"}, {"text": "9.350", "x": 28817.0, "y": 23201.3, "layer": "CS-DIMT", "dwg": "D2", "kind": "m"}, {"text": "9.350", "x": 43290.6, "y": 24499.8, "layer": "CS-TABL-TEX2", "dwg": "D3", "kind": "m"}], "shared": 1}, "params:column.height": {"v": 12003, "hits": [{"text": "12.003", "x": 23303.6, "y": 14008.8, "layer": "CS-DIMT", "dwg": "D1", "kind": "m"}, {"text": "12.003", "x": 3029.4, "y": 14008.8, "layer": "CS-DIMT", "dwg": "D1", "kind": "m"}, {"text": "12.003", "x": 20129.4, "y": 14008.8, "layer": "CS-DIMT", "dwg": "D1", "kind": "m"}, {"text": "12.003", "x": 79697.1, "y": -195286.1, "layer": "CC-TABL-TEX2", "dwg": "D1", "kind": "m"}, {"text": "12.003", "x": 23303.6, "y": -375231.7, "layer": "CS-DIMT", "dwg": "D1", "kind": "m"}, {"text": "12.003", "x": 3029.4, "y": -375231.7, "layer": "CS-DIMT", "dwg": "D1", "kind": "m"}], "shared": 1}, "params:coping.top_steps.4.z": {"v": 43698, "hits": [{"text": "EL. 43.698", "x": 18443.1, "y": 20261.8, "layer": "CS-DIMT", "dwg": "D1", "kind": "EL"}], "shared": 1}, "params:coping.top_steps.2.z": {"v": 43555, "hits": [{"text": "EL. 43.555", "x": 26179.8, "y": 20319.3, "layer": "CS-DIMT", "dwg": "D1", "kind": "EL"}], "shared": 1}, "params:coping.top_steps.0.z": {"v": 43411, "hits": [{"text": "EL. 43.411", "x": 4867.8, "y": 20175.6, "layer": "CS-DIMT", "dwg": "D1", "kind": "EL"}], "shared": 1}, "params:coping.flat_bottom_half_width": {"v": 1100, "hits": [{"text": "1.100", "x": 5846.3, "y": 21259.8, "layer": "CS-TABL-TEX2", "dwg": "D3", "kind": "m"}], "shared": 2}, "params:coping.length_bottom_tip_to_tip": {"v": 12400, "hits": [{"text": "12.400", "x": 11855.6, "y": 31231.1, "layer": "CS-DIMT", "dwg": "D1", "kind": "m"}, {"text": "12.400", "x": 11852.6, "y": 22820.8, "layer": "CS-DIMT", "dwg": "D1", "kind": "m"}, {"text": "12.400", "x": -14619.2, "y": 31231.1, "layer": "CS-DIMT", "dwg": "D1", "kind": "m"}, {"text": "12.400", "x": 11855.6, "y": -360258.3, "layer": "CS-DIMT", "dwg": "D1", "kind": "m"}, {"text": "12.400", "x": 11852.6, "y": -367938.0, "layer": "CS-DIMT", "dwg": "D1", "kind": "m"}], "shared": 1}, "params:bearing_seats.bearings.9.el_x": {"v": 43887, "hits": [{"text": "43.887", "x": 24938.3, "y": 3894.5, "layer": "CS-TABL-TEX2", "dwg": "D2", "kind": "m"}], "shared": 1}, "params:bearing_seats.bearings.8.el_x": {"v": 43816, "hits": [{"text": "43.816", "x": 24938.3, "y": 4374.5, "layer": "CS-TABL-TEX2", "dwg": "D2", "kind": "m"}], "shared": 1}, "params:bearing_seats.bearings.7.el_x": {"v": 43744, "hits": [{"text": "43.744", "x": 24938.3, "y": 4854.5, "layer": "CS-TABL-TEX2", "dwg": "D2", "kind": "m"}], "shared": 1}, "params:bearing_seats.bearings.6.el_x": {"v": 43672, "hits": [{"text": "43.672", "x": 24938.3, "y": 5334.5, "layer": "CS-TABL-TEX2", "dwg": "D2", "kind": "m"}], "shared": 1}, "params:bearing_seats.bearings.5.el_x": {"v": 43600, "hits": [{"textLine truncated
@@ -0,0 +1,118 @@
{
"_schema": "pier-T-expected/1",
"_note": "독립 기대값: 도면 치수 문자·표(D1~D3)에서 직접 옮긴 값. 생성용 params.json과 별도로 관리하며 검사기는 params를 읽지 않는다. 원출처: Code/교각모델링/verify_*.py (검증서 v0.1.05).",
"pier_id": "P1",
"tol_mm": 1.0,
"G1": {
"footing": {"dx": 9350, "dy": 7800, "z0": 26208, "thickness": 2200, "src": "D1 '9.350' '7.800' 'EL. 26.208' '2.200'"},
"lean": {"margin": 100, "thickness": 100, "src": "D1 footing +100 each side, 100 thick"},
"column": {"d": 2000, "height": 12003, "src": "D1 '2.000' '12.003'"},
"coping": {"dx": 12400, "dy": 3100, "z_top_left": 43411, "rise_upper": 1500, "rise_lower": 1500,
"z_top_right": 43698, "z_top_center": 43555, "flat_from_tip": 5100, "end_inset": 200, "radius": 12000,
"src": "D1 '12.400' '3.100' 'EL. 43.411' '1.500' x2 'EL. 43.698' 'EL. 43.555' '5.100' '200' 'R=12.000'"},
"coping_outline": [[-1100, 40411], [1100, 40411], [6200, 41911], [6000, 43698], [3715, 43698], [3715, 43627],
[1210, 43627], [1210, 43555], [-1296, 43555], [-1296, 43483], [-3801, 43483], [-3801, 43411],
[-6000, 43411], [-6200, 41911]],
"coping_outline_src": "D1 정면도 외형 (원호는 현으로 대체 후 활꼴 2개 차감)",
"dxf_arc_centres": {"datum_x": 12159.4, "datum_y": 16515.6, "datum_el": 40411,
"left": [5207.5, 6039.2], "right": [19111.2, 6039.2],
"src": "DXF ARC 1C4BF centre; datum CS-CNTL 1C546 / coping bottom line 1C4BD"},
"piles": {"nx": 6, "ny": 5, "pitch": 1550, "edge": 800, "d": 600, "length": 24400, "head_embedment": 100,
"src": "D1 '5@1.550' '4@1.550' '800' 'Ø600' 'L=24.4M'; 매입 100 (CS-CNTL)"},
"seats": {
"table": {"1": [43625, 164, 50, 700, 640], "2": [43697, 164, 50, 700, 640], "3": [43768, 164, 50, 700, 790],
"4": [43840, 164, 50, 700, 640], "5": [43912, 164, 50, 700, 640], "6": [43600, 139, 50, 700, 540],
"7": [43672, 139, 50, 700, 540], "8": [43744, 139, 50, 700, 650], "9": [43816, 139, 50, 700, 540],
"10": [43887, 139, 50, 700, 540]},
"table_columns": ["EL.'X'", "h1", "h2", "A", "B"],
"girders": 5,
"step_top": {"1": 43411, "2": 43483, "3": 43555, "4": 43627, "5": 43698},
"step_x": {"1": [-6000, -3801], "2": [-3801, -1296], "3": [-1296, 1210], "4": [1210, 3715], "5": [3715, 6000]},
"row_y": {"front": -698, "rear": 600},
"pitch_chain": [3, 7516],
"pedestal_plan": [1250, 1200],
"pad_margin": [200, 100],
"rear_first_from_tip": 1232,
"src": "D2 ELEVATION TABLE; D1 EL texts + drawn steps; D1 평면도 S1/S2 + D2 TABLE S1 (1550-852 / 1550-950); '3@2.505=7.516'; 대좌 2500x1200 반쪽; '1.232'"
}
},
"G2": {
"schedule_L": {"P1": 17247, "P2": 16553, "P3": 6436, "P4": 5636, "P5": 5636, "P6": 2136},
"schedule_n": {"P1": 46, "P2": 46, "P3": 36, "P4": 9, "P5": 22, "P6": 36},
"dia": {"P1": 32, "P2": 32, "P3": 19, "P4": 19, "P5": 19, "P6": 16},
"hoop_chain": {"start": [150, 1030], "groups": [[8, 120], [22, 120], [36, 300]]},
"hoop_marks_by_zone": [["P4", 9], ["P5", 22], ["P3", 36]],
"tie_chain": {"start": [150, 1030], "groups": [[8, 1800]]},
"tie_offset": 17.5,
"r_outer": 870.5, "r_inner": 825.5, "r_hoop": 897,
"main_divisions": 46,
"bottom_above_footing": 300,
"p1_top_parts": [300, 340, 16213],
"no_fillet_marks": ["P1", "P2", "P4", "P5"],
"src": "D3 L·수량; D1 '150','1.030','8@120=960','22@120=2.640','36@300=10.800','8@1.800=14.400'; HITL H2 반지름(단면 CAD)·D3 R"
},
"G3": {
"schedule": {"B1": [8000, 38], "B2": [11500, 38], "B3": [8000, 38], "B4": [7600, 35], "B5": [9550, 32],
"B6": [13050, 32], "B7": [9550, 32], "B8": [9150, 29], "B9": [2155, 493], "B10": [33684, 9],
"B11": [9350, 28], "B12": [7800, 34]},
"dia": {"B1": 25, "B2": 25, "B3": 19, "B4": 25, "B5": 29, "B6": 29, "B7": 19, "B8": 29, "B9": 16, "B10": 19,
"B11": 16, "B12": 16},
"layer_z": {"B2": 122, "B4": 122, "B6": 178, "B8": 178, "B3": 227.5, "B7": 277, "B1": 2073, "B5": 2127},
"rows": {"Y_BOT": {"ends": [-4575, 4575], "start": -4375, "pitch": 125, "n": 71},
"Y_250": {"ends": [-4575, 4575], "start": -4375, "pitch": 250, "n": 36},
"X_BOT": {"ends": [-3800, 3800], "start": -3625, "pitch": 125, "n": 59},
"X_250": {"ends": [-3800, 3800], "start": -3625, "pitch": 250, "n": 30}},
"b10_levels": {"start": 350, "pitch": 200, "n": 9},
"b10_size": [9198, 7644],
"b9_grid": {"x": {"start": -4125, "pitch": 250, "n": 34}, "y": {"start": -3500, "pitch": 250, "n": 29}},
"b9_erec": [150, 2100], "b9_a": 1995, "b9_c": 64,
"mid_levels": [550, 950, 1350, 1750],
"src": "D3 L·수량; D1/D2 '100','200','70@125=8.750' / '35@250' / '100','175','58@125=7.250' / '29@250'; F1 층 높이(작도점); '150','9@200=1.800'; '450','33@250=8.250' / '300','28@250=7.000'; EREC 150~2100; 중간층 작도점 [derived]"
},
"G4": {
"count": {"C1": 12, "C2": 12, "C3": 12, "C4": 12, "C5": 12, "C6": 12, "C7": 12, "C8": 12, "C9": 60, "C10": 21,
"C11": 60, "C12": 18, "C13": 9, "C14": 41, "C15": 13, "C16": 13, "S1": 50, "S2": 105},
"L": {"C1": 14490, "C2": 12081, "C3": 12106, "C4": 14490, "C5": 12081, "C6": 12106, "C7": 13994, "C8": 13994,
"C9": 8647, "C10": 10310, "C11": 8934, "C12": 20513, "C13": 29345, "C14": 3600, "C15": 2784, "C16": 5611,
"S1": 3800, "S2": 2500},
"range": {"C9": ["b_sched", 2956, 1376], "C11": ["b_sched", 2956, 1664], "C10": ["b_sched", 2998, 2998],
"C12": ["a_sched", 12228, 3151], "C13": ["a_sched", 12167, 12044]},
"range_convention": {"b_sched": {"a": 1407, "c": 750, "c_times": 2}, "a_sched": {"b": 1407, "c": 580, "c_times": 4}},
"dia": {"C1": 29, "C2": 29, "C3": 29, "C4": 29, "C5": 29, "C6": 29, "C7": 29, "C8": 29, "C9": 25, "C10": 25,
"C11": 25, "C12": 25, "C13": 25, "C14": 19, "C15": 19, "C16": 19, "S1": 19, "S2": 19},
"half_width": 1550,
"y24_chain": {"start": [100, 237], "pitch": 125, "n": 21, "end": 3000},
"y13_chain": {"start": [100, 237], "pitch": 250, "n": 10, "end": 3000},
"pairs": [["C1", "C4"], ["C2", "C5"], ["C3", "C6"], ["C7", "C8"]],
"tier_z": {"C1": 43311, "C4": 43311, "C2": 43211, "C5": 43211, "C3": 43111, "C6": 43111},
"stirrup_x": {"C10": [-900, -600, -300, 0, 300, 600, 900],
"C11": {"start": 1150, "pitch": 250, "n": 20}, "C9": {"start": -1150, "pitch": -250, "n": 20}},
"stirrups_per_x": 3,
"c10_bottom": 40511,
"loop_z": {"C12": {"start": 40761, "pitch": 250, "n": 6}, "C13": [42261, 42511, 42761]},
"c15_top": 43598.4, "c16_top": 43454.7,
"c14_levels": [[43088.5, 11], [43188.5, 11], [41011, 3], [42011, 5], [41511, 4], [42511, 6], [43442.4, 1]],
"s_per_girder": {"S1": [10, 50], "S2": [21, 100]},
"step_top": {"1": 43411, "2": 43483, "3": 43555, "4": 43627, "5": 43698},
"src": "D3 수량·L·a/b 범위; D1 A-A 사슬 '100','137','21@125','3000' / B-B '10@250'; 정면도 단 높이·스터럽 X·루프 EL; D2 '50','50'"
},
"G5": {
"el_x": {"1": 43625, "2": 43697, "3": 43768, "4": 43840, "5": 43912, "6": 43600, "7": 43672, "8": 43744, "9": 43816, "10": 43887},
"S": {"1": -1.910, "2": -1.907, "3": -1.905, "4": -1.903, "5": -1.901, "6": -1.910, "7": -1.907, "8": -1.905, "9": -1.903, "10": -1.901},
"W": {"1": 740, "2": 740, "3": 890, "4": 740, "5": 740, "6": 640, "7": 640, "8": 750, "9": 640, "10": 640},
"L": 800, "T": 30, "h3": 181,
"bearing_shrink": 100,
"colours": {"bearing": [0, 0, 0], "sole_plate": [150, 150, 150]},
"src": "D2 ELEVATION TABLE (EL.'X', h3), 솔플레이트 상세 TABLE (S, L, W, T); (L-100)x(W-100)·색 = 사용자 지시 2026-10-08"
},
"rebar_palette": {"32": [214, 39, 40], "29": [255, 127, 14], "25": [188, 60, 160], "19": [44, 160, 44], "16": [31, 119, 180]},
"rebar_palette_src": "디자인지침_경로.md R8 (2026-10-07)",
"planned_fail": [
{"gate": "G3", "item": "B12 bar count vs schedule", "reason": "작도 28본 채택(F2) vs D3 34본 — OPEN #9", "approved": "사용자 2026-10-07"},
{"gate": "G4", "item_prefix": "C9 original length vs L", "reason": "작도 폭 채택(K1)", "approved": "사용자 2026-10-07"},
{"gate": "G4", "item_prefix": "C10 original length vs L", "reason": "작도 폭 채택(K1)", "approved": "사용자 2026-10-07"},
{"gate": "G4", "item_prefix": "C11 original length vs L", "reason": "작도 폭 채택(K1)", "approved": "사용자 2026-10-07"},
{"gate": "G4", "item_prefix": "C12 original length vs L", "reason": "작도 폭 채택(C12·C13 drawn width)", "approved": "사용자 2026-10-07"},
{"gate": "G4", "item_prefix": "C13 original length vs L", "reason": "작도 폭 채택(C12·C13 drawn width)", "approved": "사용자 2026-10-07"}
]
}
@@ -0,0 +1,7 @@
{
"name": "운곡교P1형",
"desc": "말뚝기초 · 원형 기둥 Ø2.0 · 하면 곡선(R12,000) 코핑, 상면 5단 · 받침 10개 · 철근 G2~G4 운곡교 형식",
"source": "운곡교P1",
"created": "2026-10-13 13:18:47",
"inputs_sha": "a07fc78446227a14"
}
@@ -0,0 +1,309 @@
{
"_schema": "variability/1",
"status": "초안 — 템플릿 담당자 확정 전",
"grades": {
"V1": "값 변수",
"V2": "목록 변수",
"V3": "생성 변수",
"F": "고정"
},
"sections": {
"params:_meta": {
"grade": "F",
"source": [
"템플릿 고정"
],
"fixed_fields": [],
"note": "참고 정보(게이트가 쓰지 않음)",
"info": true
},
"params:lean_concrete": {
"grade": "V1",
"source": [
"표 밖 치수"
],
"fixed_fields": [],
"note": "버림콘크리트 치수·EL",
"info": false
},
"params:footing": {
"grade": "V1",
"source": [
"표 밖 치수"
],
"fixed_fields": [],
"note": "기초 치수·EL (rot_deg = 기초 회전 각도 값)",
"info": false
},
"params:column": {
"grade": "V1",
"source": [
"표 밖 치수"
],
"fixed_fields": [
"shape"
],
"note": "기둥 지름·높이 (단면 형식 shape는 고정)",
"info": false
},
"params:coping": {
"grade": "V2",
"source": [
"표 밖 치수"
],
"fixed_fields": [
"form"
],
"note": "코핑 외곽·치수 (형식 form은 고정)",
"info": false
},
"params:piles": {
"grade": "V1",
"source": [
"표 밖 치수"
],
"fixed_fields": [
"kind"
],
"note": "말뚝 개수·간격·길이 (말뚝 유무는 템플릿 형식)",
"info": false
},
"params:hitl_decisions_2026_10_07": {
"grade": "F",
"source": [
"템플릿 고정"
],
"fixed_fields": [],
"note": "참고 정보(게이트가 쓰지 않음)",
"info": true
},
"params:bearing_seats": {
"grade": "V1",
"source": [
"표",
"표 밖 치수"
],
"fixed_fields": [
"pedestal",
"pedestals"
],
"note": "받침 표 값 + 평면 위치 (대좌 구조는 고정)",
"info": false
},
"params:column_rebar": {
"grade": "V2",
"source": [
"표 밖 치수"
],
"fixed_fields": [
"form"
],
"note": "기둥 철근 사슬·위치",
"info": false
},
"params:footing_rebar": {
"grade": "V2",
"source": [
"표 밖 치수"
],
"fixed_fields": [
"form"
],
"note": "기초 철근 위치 사슬",
"info": false
},
"params:coping_rebar": {
"grade": "V2",
"source": [
"표 밖 치수"
],
"fixed_fields": [
"form",
"host",
"group"
],
"note": "코핑 철근",
"info": false
},
"params:sole_plates": {
"grade": "V1",
"source": [
"표"
],
"fixed_fields": [
"bearing_size"
],
"note": "솔플레이트 표 값 (받침 크기 규칙은 고정)",
"info": false
},
"params:_schema": {
"grade": "F",
"source": [
"템플릿 고정"
],
"fixed_fields": [],
"note": "참고 정보(게이트가 쓰지 않음)",
"info": true
},
"params:pier_id": {
"grade": "F",
"source": [
"템플릿 고정"
],
"fixed_fields": [],
"note": "교각 식별자",
"info": false
},
"params:rebar_marks": {
"grade": "V1",
"source": [
"표"
],
"fixed_fields": [
"*.shape"
],
"note": "재료표 직경·형상 (마크 체계의 형상은 고정)",
"info": false
},
"params:rebar_marks_src": {
"grade": "F",
"source": [
"템플릿 고정"
],
"fixed_fields": [],
"note": "참고 정보(게이트가 쓰지 않음)",
"info": true
},
"params:materials": {
"grade": "V1",
"source": [
"표 밖 치수"
],
"fixed_fields": [],
"note": "재료 강도 주기",
"info": false
},
"params:display": {
"grade": "F",
"source": [
"템플릿 고정"
],
"fixed_fields": [],
"note": "표시·색 설정",
"info": false
},
"expected:_schema": {
"grade": "F",
"source": [
"템플릿 고정"
],
"fixed_fields": [],
"note": "참고 정보(게이트가 쓰지 않음)",
"info": true
},
"expected:_note": {
"grade": "F",
"source": [
"템플릿 고정"
],
"fixed_fields": [],
"note": "참고 정보(게이트가 쓰지 않음)",
"info": true
},
"expected:pier_id": {
"grade": "F",
"source": [
"템플릿 고정"
],
"fixed_fields": [],
"note": "교각 식별자",
"info": false
},
"expected:tol_mm": {
"grade": "V1",
"source": [
"사람 입력"
],
"fixed_fields": [],
"note": "허용 오차",
"info": false
},
"expected:G1": {
"grade": "V2",
"source": [
"표",
"표 밖 치수"
],
"fixed_fields": [],
"note": "독립 기대값 (params와 따로 도면에서 옮긴 값)",
"info": false
},
"expected:G2": {
"grade": "V2",
"source": [
"표",
"표 밖 치수"
],
"fixed_fields": [],
"note": "독립 기대값 (params와 따로 도면에서 옮긴 값)",
"info": false
},
"expected:G3": {
"grade": "V2",
"source": [
"표",
"표 밖 치수"
],
"fixed_fields": [],
"note": "독립 기대값 (params와 따로 도면에서 옮긴 값)",
"info": false
},
"expected:G4": {
"grade": "V2",
"source": [
"표",
"표 밖 치수"
],
"fixed_fields": [],
"note": "독립 기대값 (params와 따로 도면에서 옮긴 값)",
"info": false
},
"expected:G5": {
"grade": "V2",
"source": [
"표",
"표 밖 치수"
],
"fixed_fields": [],
"note": "독립 기대값 (params와 따로 도면에서 옮긴 값)",
"info": false
},
"expected:rebar_palette": {
"grade": "V1",
"source": [
"사람 입력"
],
"fixed_fields": [],
"note": "철근 직경별 색 (사람 결정 기록)",
"info": false
},
"expected:rebar_palette_src": {
"grade": "F",
"source": [
"템플릿 고정"
],
"fixed_fields": [],
"note": "참고 정보(게이트가 쓰지 않음)",
"info": true
},
"expected:planned_fail": {
"grade": "V1",
"source": [
"사람 입력"
],
"fixed_fields": [],
"note": "계획된 FAIL (사람 결정 기록)",
"info": false
}
}
}
@@ -0,0 +1,184 @@
{
"params:pier_id": {
"sha": "97086571f822df69",
"by": "시험자",
"at": "2026-10-19 13:55:19",
"why": "시험",
"app_st": "g"
},
"params:rebar_marks": {
"sha": "e524b205a20145f4",
"by": "시험자",
"at": "2026-10-19 13:55:19",
"why": "시험",
"app_st": "g"
},
"params:display": {
"sha": "4a8afc994a7b21ec",
"by": "시험자",
"at": "2026-10-19 13:55:19",
"why": "시험",
"app_st": "g"
},
"expected:pier_id": {
"sha": "97086571f822df69",
"by": "시험자",
"at": "2026-10-19 13:55:19",
"why": "시험",
"app_st": "g"
},
"expected:tol_mm": {
"sha": "d0ff5974b6aa52cf",
"by": "시험자",
"at": "2026-10-19 13:55:19",
"why": "시험",
"app_st": "x"
},
"expected:rebar_palette": {
"sha": "cc2556d92248194c",
"by": "시험자",
"at": "2026-10-19 13:55:19",
"why": "시험",
"app_st": "x"
},
"expected:planned_fail": {
"sha": "4f53cda18c2baa0c",
"by": "시험자",
"at": "2026-10-19 13:55:19",
"why": "시험",
"app_st": "x"
},
"params:scope": {
"sha": "dfbd41ca7117a548",
"by": "시험자",
"at": "2026-10-19 13:55:19",
"why": "시험",
"app_st": "g"
},
"params:builders": {
"sha": "e7958245e55ae625",
"by": "시험자",
"at": "2026-10-19 13:55:19",
"why": "시험",
"app_st": "g"
},
"expected:checkers": {
"sha": "ee95f0513cdeee40",
"by": "시험자",
"at": "2026-10-19 13:55:19",
"why": "시험",
"app_st": "g"
},
"expected:negative": {
"sha": "23a51c0a50190273",
"by": "시험자",
"at": "2026-10-19 13:55:19",
"why": "시험",
"app_st": "g"
},
"params:lean_concrete": {
"sha": "345c5b2907c9e33b",
"by": "시험자",
"at": "2026-10-19 13:55:19",
"why": "시험",
"app_st": "n"
},
"params:footing": {
"sha": "cb398c482547463c",
"by": "시험자",
"at": "2026-10-19 13:55:19",
"why": "시험",
"app_st": "n"
},
"params:column": {
"sha": "69b2aee864546aca",
"by": "시험자",
"at": "2026-10-19 13:55:19",
"why": "시험",
"app_st": "n"
},
"params:coping": {
"sha": "f01a8f54b381f46f",
"by": "시험자",
"at": "2026-10-19 13:55:19",
"why": "시험",
"app_st": "n"
},
"params:bearing_seats": {
"sha": "8c4626a69aca1182",
"by": "시험자",
"at": "2026-10-19 13:55:19",
"why": "시험",
"app_st": "g"
},
"params:materials": {
"sha": "b848a02969e61fb3",
"by": "시험자",
"at": "2026-10-19 13:55:19",
"why": "시험",
"app_st": "n"
},
"expected:G1": {
"sha": "085b3feaba63f405",
"by": "시험자",
"at": "2026-10-19 14:02:38",
"why": "시험",
"app_st": "g"
},
"params:column_rebar": {
"sha": "6b442c8cede0a64e",
"by": "시험자",
"at": "2026-10-19 13:55:19",
"why": "시험",
"app_st": "n"
},
"expected:G2": {
"sha": "bf62dc7a3bede0cb",
"by": "시험자",
"at": "2026-10-19 13:55:19",
"why": "시험",
"app_st": "g"
},
"params:footing_rebar": {
"sha": "cb6d76d23dd2ccd9",
"by": "시험자",
"at": "2026-10-19 13:55:19",
"why": "시험",
"app_st": "n"
},
"expected:G3": {
"sha": "e3e355fea2f34cd6",
"by": "시험자",
"at": "2026-10-19 13:55:19",
"why": "시험",
"app_st": "g"
},
"params:coping_rebar": {
"sha": "aa6f7289168582c0",
"by": "시험자",
"at": "2026-10-19 13:55:19",
"why": "시험",
"app_st": "n"
},
"expected:G4": {
"sha": "b60571ffe1902fdb",
"by": "시험자",
"at": "2026-10-19 13:55:19",
"why": "시험",
"app_st": "n"
},
"params:sole_plates": {
"sha": "e1530ddf1eab1ded",
"by": "시험자",
"at": "2026-10-19 13:55:19",
"why": "시험",
"app_st": "g"
},
"expected:G5": {
"sha": "a120c009a51a90cd",
"by": "시험자",
"at": "2026-10-19 13:55:19",
"why": "시험",
"app_st": "g"
}
}
@@ -0,0 +1,10 @@
[
{
"source": "교각배근도(울산P1).dwg",
"source_sha256": "5805357b67af903ef0a9f17007a31e3ab513accb69d83e5b8950a0272c20707a",
"dxf": "교각배근도(울산P1).dxf",
"dxf_sha256": "08e3a06185de18dc5a0029851575d9b09add141690545318f2f39cb2c2e884d5",
"engine": "ODA File Converter 27.1.0",
"label": "D1"
}
]
@@ -0,0 +1 @@
[{"dwg": "D1", "layer": "CS-DIMT", "x": 4573.9, "y": -39918.6, "h": 125.0, "text": "625", "handle": "B046"}, {"dwg": "D1", "layer": "CS-DIMT", "x": 4573.9, "y": -39164.6, "h": 125.0, "text": "11@150=1.650", "handle": "B047"}, {"dwg": "D1", "layer": "CS-DIMT", "x": 4573.9, "y": -36677.1, "h": 125.0, "text": "25@150=3.750", "handle": "B048"}, {"dwg": "D1", "layer": "CS-DIMT", "x": 4573.9, "y": -29463.8, "h": 125.0, "text": "1.155", "handle": "B04A"}, {"dwg": "D1", "layer": "CS-DIMT", "x": 4573.9, "y": -28026.1, "h": 125.0, "text": "100", "handle": "B04B"}, {"dwg": "D1", "layer": "CS-DIMT", "x": 4798.9, "y": -28324.4, "h": 125.0, "text": "띠철근외측", "handle": "B04C"}, {"dwg": "D1", "layer": "CS-DIMT", "x": 3573.9, "y": -34643.9, "h": 125.0, "text": "28.430", "handle": "B04D"}, {"dwg": "D1", "layer": "CS-DIMT", "x": 4298.9, "y": -28324.4, "h": 125.0, "text": "크로스타이", "handle": "B04E"}, {"dwg": "D1", "layer": "CS-DIMT", "x": 4073.9, "y": -28026.1, "h": 125.0, "text": "100", "handle": "B04F"}, {"dwg": "D1", "layer": "CS-DIMT", "x": 4073.9, "y": -29463.8, "h": 125.0, "text": "1.155", "handle": "B050"}, {"dwg": "D1", "layer": "CS-DIMT", "x": 4073.9, "y": -37544.7, "h": 125.0, "text": "3@1.800=5.400", "handle": "B053"}, {"dwg": "D1", "layer": "CS-DIMT", "x": 4073.9, "y": -39918.6, "h": 125.0, "text": "625", "handle": "B054"}, {"dwg": "D1", "layer": "CS-DIMT", "x": 16498.9, "y": -40118.6, "h": 125.0, "text": "225", "handle": "B055"}, {"dwg": "D1", "layer": "CS-DIMT", "x": 16273.9, "y": -39447.0, "h": 125.0, "text": "6@300=1.800", "handle": "B056"}, {"dwg": "D1", "layer": "CS-DIMT", "x": 16498.9, "y": -38093.6, "h": 125.0, "text": "225", "handle": "B057"}, {"dwg": "D1", "layer": "CS-DIMT", "x": 16273.9, "y": -37931.1, "h": 125.0, "text": "100", "handle": "B058"}, {"dwg": "D1", "layer": "CS-DIMT", "x": 16273.9, "y": -34758.9, "h": 125.0, "text": "22.600", "handle": "B059"}, {"dwg": "D1", "layer": "CS-DIMT", "x": 16498.9, "y": -31931.1, "h": 125.0, "text": "100", "handle": "B05A"}, {"dwg": "D1", "layer": "CS-DIMT", "x": 16273.9, "y": -31781.1, "h": 125.0, "text": "200", "handle": "B05B"}, {"dwg": "D1", "layer": "CS-DIMT", "x": 16273.9, "y": -31107.2, "h": 125.0, "text": "2@1.000=2.000", "handle": "B05C"}, {"dwg": "D1", "layer": "CS-DIMT", "x": 16498.9, "y": -29581.1, "h": 125.0, "text": "200", "handle": "B05D"}, {"dwg": "D1", "layer": "CS-DIMT", "x": 16273.9, "y": -29180.9, "h": 125.0, "text": "600", "handle": "B05E"}, {"dwg": "D1", "layer": "CS-DIMT", "x": 16273.9, "y": -28530.7, "h": 125.0, "text": "100", "handle": "B05F"}, {"dwg": "D1", "layer": "CS-DIMT", "x": 4073.9, "y": -23638.7, "h": 125.0, "text": "12@250=3.000", "handle": "B061"}, {"dwg": "D1", "layer": "CS-DIMT", "x": 4058.9, "y": -21285.9, "h": 125.0, "text": "100(하면)", "handle": "B062"}, {"dwg": "D1", "layer": "CS-DIMT", "x": 3573.9, "y": -23340.4, "h": 125.0, "text": "3.200", "handle": "B063"}, {"dwg": "D1", "layer": "CS-DIMT", "x": 4573.9, "y": -23638.7, "h": 125.0, "text": "24@125=3.000", "handle": "B064"}, {"dwg": "D1", "layer": "CS-DIMT", "x": 4558.9, "y": -21285.9, "h": 125.0, "text": "100(상면)", "handle": "B065"}, {"dwg": "D1", "layer": "CS-DIMT", "x": 24093.0, "y": -26752.8, "h": 125.0, "text": "24@125=3.000", "handle": "B078"}, {"dwg": "D1", "layer": "CS-DIMT", "x": 26303.8, "y": -27518.3, "h": 125.0, "text": "(1단)", "handle": "B079"}, {"dwg": "D1", "layer": "CS-DIMT", "x": 26303.8, "y": -27018.3, "h": 125.0, "text": "(2단)", "handle": "B07A"}, {"dwg": "D1", "layer": "CS-DIMT", "x": 26389.0, "y": -26752.8, "h": 125.0, "text": "100", "handle": "B07B"}, {"dwg": "D1", "layer": "CS-DIMT", "x": 21026.5, "y": -41852.5, "h": 125.0, "text": "400", "handle": "B07C"}, {"dwg": "D1", "layer": "CS-DIMT", "x": 24093.0, "y": -41852.5, "h": 125.0, "text": "13@500=6.500", "handle": "B07D"}, {"dwg": "D1", "layer": "CS-DIMT", "x": 27926.5, "y": -41852.5, "h": 125.0, "text": "400", "handle": "B07E"}, {"dwg": "D1", "layer": "CS-DIMT", "x": 28595.9, "y": -41837.5, "h": 125.0, "text": "100(중앙)", "handle": "B07F"}, {"dwg": "D1", "layer": "CS-DIMT", "x": 20901.5, "y": -42577.5, "h": 125.0, "text": "150", "handle": "B080"}, {"dwg": "D1", "layer": "CS-DIMT", "x": 24093.0, "y": -42352.5, "h": 125.0, "text": "56@125=7.000", "handle": "B081"}, {"dwg": "D1", "layer": "CS-DIMT", "x": 28026.5, "y": -42577.5, "h": 125.0, "text": "100", "handle": "B082"}, {"dwg": "D1", "layer": "CS-DIMT", "x": 28144.1, "y": -42352.5, "h": 125.0, "text": "50", "handle": "B083"}, {"dwg": "D1", "layer": "CS-DIMT", "x": 28595.9, "y": -42337.5, "h": 125.0, "text": "100(하면)", "handle": "B084"}, {"dwg": "D1", "layer": "CS-DIMT", "x": 24391.3, "y": -42852.5, "h": 125.0, "text": "7.500", "handle": "B085"}, {"dwg": "D1", "layer": "CS-DIMT", "x": 28595.9, "y": -41337.5, "h": 125.0, "text": "100(상면)", "handle": "B086"}, {"dwg": "D1", "layer": "CS-DIMT", "x": 28051.5, "y": -41577.5, "h": 125.0, "text": "150", "handle": "B087"}, {"dwg": "D1", "layer": "CS-DIMT", "x": 24093.Line truncated
@@ -0,0 +1,105 @@
{
"name": "울산E2E",
"type": "T형",
"created": "2026-10-19 13:55:14",
"template": "템플릿: 산외교울산P1형",
"origin": {
"label": "템플릿: 산외교울산P1형",
"at": "2026-10-19 13:55:14",
"sha": {
"params:_schema": "78a2cba5e3555141",
"params:pier_id": "97086571f822df69",
"params:_meta": "cc84b493e804de9f",
"params:scope": "dfbd41ca7117a548",
"params:builders": "e7958245e55ae625",
"params:lean_concrete": "345c5b2907c9e33b",
"params:footing": "cb398c482547463c",
"params:column": "69b2aee864546aca",
"params:coping": "f01a8f54b381f46f",
"params:materials": "b848a02969e61fb3",
"params:bearing_seats": "8c4626a69aca1182",
"params:sole_plates": "e1530ddf1eab1ded",
"params:display": "4a8afc994a7b21ec",
"params:rebar_marks": "e524b205a20145f4",
"params:rebar_marks_src": "6922b922ab7cdd77",
"params:column_rebar": "6b442c8cede0a64e",
"params:footing_rebar": "cb6d76d23dd2ccd9",
"params:coping_rebar": "aa6f7289168582c0",
"expected:_schema": "21dc6d01b07f7ac8",
"expected:_note": "ba940d2a72bf6f92",
"expected:pier_id": "97086571f822df69",
"expected:tol_mm": "d0ff5974b6aa52cf",
"expected:checkers": "ee95f0513cdeee40",
"expected:negative": "23a51c0a50190273",
"expected:rebar_palette": "cc2556d92248194c",
"expected:planned_fail": "4f53cda18c2baa0c",
"expected:G1": "085b3feaba63f405",
"expected:G5": "a120c009a51a90cd",
"expected:G2": "bf62dc7a3bede0cb",
"expected:G3": "e3e355fea2f34cd6",
"expected:G4": "b60571ffe1902fdb"
},
"fixed": {
"params:column": {
"shape": "\"circular\""
},
"params:coping": {
"form": "\"tapered\""
},
"params:bearing_seats": {
"pedestal": "{\"size_x\": 1300, \"size_y\": 1300}",
"pedestals": "null"
},
"params:sole_plates": {
"bearing_size": "\"AB\""
},
"params:rebar_marks": {
"C1.shape": "\"IX\"",
"C2.shape": "\"IX\"",
"C3.shape": "\"IX\"",
"C4.shape": "\"IX\"",
"C5.shape": "\"IV\"",
"C6.shape": "\"IV\"",
"C7.shape": "\"II\"",
"C8.shape": "\"II\"",
"C9.shape": "\"II\"",
"C10.shape": "\"III\"",
"C11.shape": "\"VII\"",
"C12.shape": "\"XII\"",
"C13.shape": "\"VIII\"",
"C15.shape": "\"I\"",
"P5.shape": "\"I\"",
"C14.shape": "\"I\"",
"P2.shape": "\"VI\"",
"P3.shape": "\"V\"",
"P4.shape": "\"X\"",
"B7.shape": "\"I\"",
"S1.shape": "\"I\"",
"S2.shape": "\"I\"",
"S3.shape": "\"I\"",
"S4.shape": "\"I\"",
"P1.shape": "\"VI\"",
"B2.shape": "\"IV\"",
"B3.shape": "\"I\"",
"B5.shape": "\"IV\"",
"B6.shape": "\"I\"",
"B1.shape": "\"I\"",
"B4.shape": "\"I\"",
"B8.shape": "\"V\"",
"B9.shape": "\"III\"",
"B10.shape": "\"III\""
},
"params:column_rebar": {
"form": "\"ring\""
},
"params:footing_rebar": {
"form": "\"mats\""
},
"params:coping_rebar": {
"form": "\"polylines\"",
"host": "\"CP\"",
"group": "\"코핑\""
}
}
}
}
@@ -0,0 +1,930 @@
{
"summary": {
"total": 104,
"passed": 104,
"failed": 0,
"volumes_m3": {
"lean": 5.929,
"footing": 140.625,
"column": 110.937,
"coping": 82.231
}
},
"results": [
{
"check": "C5",
"item": "object counts",
"detail": "{'LC': 1, 'FT': 1, 'CL': 1, 'CP': 1, 'PL': 0}",
"result": "PASS"
},
{
"check": "C2",
"item": "IsSolid all 4",
"detail": "4/4",
"result": "PASS"
},
{
"check": "C1",
"item": "footing X",
"expected": 7500,
"actual": 7500.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C1",
"item": "footing Y",
"expected": 7500,
"actual": 7500.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C1",
"item": "footing Zbot",
"expected": 42763,
"actual": 42763.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C1",
"item": "footing Ztop",
"expected": 45263,
"actual": 45263.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C1",
"item": "footing centre X",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C1",
"item": "footing centre Y",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C1",
"item": "lean X",
"expected": 7700,
"actual": 7700.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C1",
"item": "lean Y",
"expected": 7700,
"actual": 7700.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C1",
"item": "lean Zbot",
"expected": 42663,
"actual": 42663.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C1",
"item": "lean Ztop",
"expected": 42763,
"actual": 42763.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C1",
"item": "lean centre X",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C1",
"item": "lean centre Y",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C1",
"item": "column diameter X",
"expected": 2500,
"actual": 2500.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C1",
"item": "column diameter Y",
"expected": 2500,
"actual": 2500.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C1",
"item": "column Zbot",
"expected": 45263,
"actual": 45263.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C1",
"item": "column Ztop",
"expected": 67863,
"actual": 67863.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C1",
"item": "coping length X (tip to tip)",
"expected": 10000,
"actual": 10000.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C1",
"item": "coping width Y",
"expected": 3200,
"actual": 3200.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C1",
"item": "coping Zbot",
"expected": 67863,
"actual": 67863.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C1",
"item": "coping Ztop",
"expected": 71193,
"actual": 71193.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C1",
"item": "coping centre X",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C4",
"item": "section closed single loop",
"detail": "1 loop(s)",
"result": "PASS"
},
{
"check": "C4",
"item": "bottom at X=+0",
"expected": 67863,
"actual": 67863.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C4",
"item": "bottom at X=+1249",
"expected": 67863,
"actual": 67863.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C4",
"item": "bottom at X=-1249",
"expected": 67863,
"actual": 67863.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C4",
"item": "bottom at X=+3000",
"expected": 68656.333,
"actual": 68656.333,
"diff": -0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C4",
"item": "bottom at X=-3000",
"expected": 68656.333,
"actual": 68656.333,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C4",
"item": "bottom at X=+4995",
"expected": 69560.733,
"actual": 69560.733,
"diff": -0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C4",
"item": "bottom at X=-4995",
"expected": 69560.733,
"actual": 69560.733,
"diff": -0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C4",
"item": "top at X=-2000",
"expected": 71193,
"actual": 71193.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C4",
"item": "top at X=+2000",
"expected": 71063,
"actual": 71063.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C4",
"item": "top at X=-4690",
"expected": 71193,
"actual": 71193.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C4",
"item": "top at X=+4690",
"expected": 71063,
"actual": 71063.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C4",
"item": "top at X=-4850",
"expected": 70378.0,
"actual": 70378.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C4",
"item": "top at X=+4850",
"expected": 70313.0,
"actual": 70313.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C4",
"item": "top step at the pier centre (left - right)",
"expected": 130,
"actual": 130.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C4",
"item": "plan corners rounded R500 (4 corners outside, edges inside)",
"detail": "z 69613, test point (4927, 1527)",
"result": "PASS"
},
{
"check": "C3",
"item": "LC top = FT bottom",
"expected": 42763.0,
"actual": 42763.0,
"diff": 0.0,
"tol": 0.01,
"result": "PASS"
},
{
"check": "C3",
"item": "FT top = CL bottom",
"expected": 45263.0,
"actual": 45263.0,
"diff": 0.0,
"tol": 0.01,
"result": "PASS"
},
{
"check": "C3",
"item": "CL top = CP bottom",
"expected": 67863.0,
"actual": 67863.0,
"diff": 0.0,
"tol": 0.01,
"result": "PASS"
},
{
"check": "C3",
"item": "overlap LC-FT (mm3)",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C3",
"item": "overlap FT-CL (mm3)",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C3",
"item": "overlap CL-CP (mm3)",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C3",
"item": "column within coping bottom flat zone",
"detail": "r=1250 <= 1250 (X), 1600 (Y)",
"result": "PASS"
},
{
"check": "C6",
"item": "footing volume m3",
"expected": 140.625,
"actual": 140.625,
"diff": 0.0,
"tol": 0.140625,
"result": "PASS"
},
{
"check": "C6",
"item": "column volume m3",
"expected": 110.937,
"actual": 110.937,
"diff": 0.0,
"tol": 0.11093749057988958,
"result": "PASS"
},
{
"check": "C6",
"item": "lean volume m3 (minus pile holes)",
"expected": 5.929,
"actual": 5.929,
"diff": -0.0,
"tol": 0.005929,
"result": "PASS"
},
{
"check": "C6",
"item": "coping volume m3 (dimension outline, R corners)",
"expected": 82.23,
"actual": 82.231,
"diff": 0.001,
"tol": 0.08223033778456262,
"result": "PASS"
},
{
"check": "C7",
"item": "pedestal / pad counts",
"detail": "seats=4 pads=4",
"result": "PASS"
},
{
"check": "C7",
"item": "IsSolid pedestals+pads",
"detail": "8/8",
"result": "PASS"
},
{
"check": "C7",
"item": "NO.1 table EL.'X' - h1 - h2 = coping top (left)",
"expected": 71193,
"actual": 71193,
"diff": 0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.1 pedestal bottom = coping top",
"expected": 71193,
"actual": 71193.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.1 pedestal top = top + h1",
"expected": 71368,
"actual": 71368.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.1 pad top = EL.'X'",
"expected": 71418,
"actual": 71418.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.1 pedestal size X",
"expected": 1300,
"actual": 1300.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.1 pedestal size Y",
"expected": 1300,
"actual": 1300.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.1 pedestal centre X",
"expected": -3250,
"actual": -3250.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.1 pedestal centre Y",
"expected": -799,
"actual": -799.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.1 pad centre X",
"expected": -3250,
"actual": -3250.0,
"diff": -0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.1 pad centre Y",
"expected": -799,
"actual": -799.0,
"diff": -0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.1 pad volume (prismatoid A,B)",
"expected": 26686666.667,
"actual": 26686666.667,
"diff": -0.0,
"tol": 26686.666666666668,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.1 overlap pedestal-coping (mm3)",
"expected": 0,
"actual": 0,
"diff": 0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.1 overlap pad-pedestal (mm3)",
"expected": 0,
"actual": 0,
"diff": 0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.2 table EL.'X' - h1 - h2 = coping top (right)",
"expected": 71063,
"actual": 71063,
"diff": 0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.2 pedestal bottom = coping top",
"expected": 71063,
"actual": 71063.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.2 pedestal top = top + h1",
"expected": 71238,
"actual": 71238.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.2 pad top = EL.'X'",
"expected": 71288,
"actual": 71288.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.2 pedestal size X",
"expected": 1300,
"actual": 1300.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.2 pedestal size Y",
"expected": 1300,
"actual": 1300.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.2 pedestal centre X",
"expected": 3250,
"actual": 3250.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.2 pedestal centre Y",
"expected": -774,
"actual": -774.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.2 pad centre X",
"expected": 3250,
"actual": 3250.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.2 pad centre Y",
"expected": -774,
"actual": -774.0,
"diff": -0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.2 pad volume (prismatoid A,B)",
"expected": 26686666.667,
"actual": 26686666.667,
"diff": 0.0,
"tol": 26686.666666666668,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.2 overlap pedestal-coping (mm3)",
"expected": 0,
"actual": 0,
"diff": 0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.2 overlap pad-pedestal (mm3)",
"expected": 0,
"actual": 0,
"diff": 0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.3 table EL.'X' - h1 - h2 = coping top (left)",
"expected": 71193,
"actual": 71193,
"diff": 0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.3 pedestal bottom = coping top",
"expected": 71193,
"actual": 71193.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.3 pedestal top = top + h1",
"expected": 71390,
"actual": 71390.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.3 pad top = EL.'X'",
"expected": 71440,
"actual": 71440.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.3 pedestal size X",
"expected": 1300,
"actual": 1300.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.3 pedestal size Y",
"expected": 1300,
"actual": 1300.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.3 pedestal centre X",
"expected": -3250,
"actual": -3250.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.3 pedestal centre Y",
"expected": 799,
"actual": 799.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.3 pad centre X",
"expected": -3250,
"actual": -3250.0,
"diff": -0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.3 pad centre Y",
"expected": 799,
"actual": 799.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.3 pad volume (prismatoid A,B)",
"expected": 28166666.667,
"actual": 28166666.667,
"diff": -0.0,
"tol": 28166.666666666668,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.3 overlap pedestal-coping (mm3)",
"expected": 0,
"actual": 0,
"diff": 0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.3 overlap pad-pedestal (mm3)",
"expected": 0,
"actual": 0,
"diff": 0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.4 table EL.'X' - h1 - h2 = coping top (right)",
"expected": 71063,
"actual": 71064,
"diff": 1,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.4 pedestal bottom = coping top",
"expected": 71063,
"actual": 71063.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.4 pedestal top = top + h1",
"expected": 71259,
"actual": 71259.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.4 pad top = EL.'X'",
"expected": 71310,
"actual": 71309.0,
"diff": -1.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.4 pedestal size X",
"expected": 1300,
"actual": 1300.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.4 pedestal size Y",
"expected": 1300,
"actual": 1300.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.4 pedestal centre X",
"expected": 3250,
"actual": 3250.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.4 pedestal centre Y",
"expected": 771,
"actual": 771.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.4 pad centre X",
"expected": 3250,
"actual": 3250.0,
"diff": -0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.4 pad centre Y",
"expected": 771,
"actual": 771.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.4 pad volume (prismatoid A,B)",
"expected": 28166666.667,
"actual": 28166666.667,
"diff": -0.0,
"tol": 28166.666666666668,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.4 overlap pedestal-coping (mm3)",
"expected": 0,
"actual": 0,
"diff": 0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.4 overlap pad-pedestal (mm3)",
"expected": 0,
"actual": 0,
"diff": 0,
"tol": 1.0,
"result": "PASS"
}
]
}
@@ -0,0 +1 @@
{"model": "C:\\Users\\User\\Desktop\\바이브코딩\\pier_T\\Code\\교각모델링앱\\검증\\ulsan_e2e_data\\울산E2E\\runs\\current\\G1.3dm", "units": "Millimeters", "tolerance": 0.001, "count": 12, "layers": {"P1::받침패드": [90, 160, 90, true], "P1::받침대좌": [190, 90, 90, true], "P1::코핑": [210, 180, 80, true], "P1::기둥": [200, 140, 90, true], "P1::기초": [120, 150, 200, true], "P1::버림콘크리트": [160, 160, 160, true]}, "objects": {"P1-BP04": {"layer": "P1::받침패드", "type": "Brep", "hidden": false, "locked": false, "colour_source": 0, "colour": [0, 0, 0], "bbox": [2850.0, 371.0, 71259.0, 3650.0, 1171.0, 71309.0], "user": {"fck": "-", "id": "P1-BP04", "role": "bearing pad h2 NO.4 4500 kN 일방향", "source_views": "일반도 교량받침 상세·ELEVATION TABLE"}, "faces": 6, "solid": true, "volume": 28166666.7}, "P1-BS04": {"layer": "P1::받침대좌", "type": "Brep", "hidden": false, "locked": false, "colour_source": 0, "colour": [0, 0, 0], "bbox": [2600.0, 121.0, 71063.0, 3900.0, 1421.0, 71259.0], "user": {"fck": "40MPa", "id": "P1-BS04", "role": "bearing pedestal h1 NO.4", "source_views": "일반도 교량받침 상세·ELEVATION TABLE"}, "faces": 6, "solid": true, "volume": 331240000.0}, "P1-BP03": {"layer": "P1::받침패드", "type": "Brep", "hidden": false, "locked": false, "colour_source": 0, "colour": [0, 0, 0], "bbox": [-3650.0, 399.0, 71390.0, -2850.0, 1199.0, 71440.0], "user": {"fck": "-", "id": "P1-BP03", "role": "bearing pad h2 NO.3 4500 kN 일방향", "source_views": "일반도 교량받침 상세·ELEVATION TABLE"}, "faces": 6, "solid": true, "volume": 28166666.7}, "P1-BS03": {"layer": "P1::받침대좌", "type": "Brep", "hidden": false, "locked": false, "colour_source": 0, "colour": [0, 0, 0], "bbox": [-3900.0, 149.0, 71193.0, -2600.0, 1449.0, 71390.0], "user": {"fck": "40MPa", "id": "P1-BS03", "role": "bearing pedestal h1 NO.3", "source_views": "일반도 교량받침 상세·ELEVATION TABLE"}, "faces": 6, "solid": true, "volume": 332930000.0}, "P1-BP02": {"layer": "P1::받침패드", "type": "Brep", "hidden": false, "locked": false, "colour_source": 0, "colour": [0, 0, 0], "bbox": [2860.0, -1164.0, 71238.0, 3640.0, -384.0, 71288.0], "user": {"fck": "-", "id": "P1-BP02", "role": "bearing pad h2 NO.2 4000 kN 일방향", "source_views": "일반도 교량받침 상세·ELEVATION TABLE"}, "faces": 6, "solid": true, "volume": 26686666.7}, "P1-BS02": {"layer": "P1::받침대좌", "type": "Brep", "hidden": false, "locked": false, "colour_source": 0, "colour": [0, 0, 0], "bbox": [2600.0, -1424.0, 71063.0, 3900.0, -124.0, 71238.0], "user": {"fck": "40MPa", "id": "P1-BS02", "role": "bearing pedestal h1 NO.2", "source_views": "일반도 교량받침 상세·ELEVATION TABLE"}, "faces": 6, "solid": true, "volume": 295750000.0}, "P1-BP01": {"layer": "P1::받침패드", "type": "Brep", "hidden": false, "locked": false, "colour_source": 0, "colour": [0, 0, 0], "bbox": [-3640.0, -1189.0, 71368.0, -2860.0, -409.0, 71418.0], "user": {"fck": "-", "id": "P1-BP01", "role": "bearing pad h2 NO.1 4000 kN 일방향", "source_views": "일반도 교량받침 상세·ELEVATION TABLE"}, "faces": 6, "solid": true, "volume": 26686666.7}, "P1-BS01": {"layer": "P1::받침대좌", "type": "Brep", "hidden": false, "locked": false, "colour_source": 0, "colour": [0, 0, 0], "bbox": [-3900.0, -1449.0, 71193.0, -2600.0, -149.0, 71368.0], "user": {"fck": "40MPa", "id": "P1-BS01", "role": "bearing pedestal h1 NO.1", "source_views": "일반도 교량받침 상세·ELEVATION TABLE"}, "faces": 6, "solid": true, "volume": 295750000.0}, "P1-CP": {"layer": "P1::코핑", "type": "Brep", "hidden": false, "locked": false, "colour_source": 0, "colour": [0, 0, 0], "bbox": [-5000.0, -1600.0, 67863.0, 5000.0, 1600.0, 71193.0], "user": {"fck": "40MPa", "id": "P1-CP", "role": "coping (tapered T)", "source_views": "일반도 평면도·정면도·단면도"}, "faces": 138, "solid": true, "volume": 82231356101.8}, "P1-CL": {"layer": "P1::기둥", "type": "Brep", "hidden": false, "locked": false, "colour_source": 0, "colour": [0, 0, 0], "bbox": [-1250.0, -1250.0, 45263.0, 1250.0, 1250.0, 67863.0], "user": {"fck": "40MPa", "id": "P1-CL", "role": "column", "source_views": "일반도 정면도·단면도·단면 A-A"}, "faces": 3, "solid": true, "volume": 110937491036.2}, "P1-FT": {"layer": "P1::기초", "type": "Brep", "hidden": false, "locked": false, "colour_source": 0, "colour": [0, 0, 0], "bbox": [-3750.0, -3750.0, 42763.0, 3750.0, 3750.0, 45263.0], "user": {"fck": "27MPa", "id": "P1-FT", "role": "spread footing (no piles)", "source_views": "일반도 정면도·단면도·기초 평면도"}, "faces": 6, "solid": true, "volume": 140625000000.0}, "P1-LC": {"layer": "P1::버림콘크리트", "type": "Brep", "hidden": false, "locked": false, "colour_source": 0, "colour": [0, 0, 0], "bbox": [-3850.0, -3850.0, 42663.0, 3850.0, 3850.0, 42763.0], "user": {"fck": "15MPa", "id": "P1-LC", "role": "lean concrete", "souLine truncated
@@ -0,0 +1,76 @@
{
"gate": "G1",
"checker": "g1_tapered.py",
"verdict": "PASS",
"summary": {
"total": 104,
"passed": 104,
"failed": 0,
"volumes_m3": {
"lean": 5.929,
"footing": 140.625,
"column": 110.937,
"coping": 82.231
}
},
"unplanned_fails": [],
"planned_fails": [],
"negative": {
"negH": {
"move": {
"id": "BS02",
"d": [
3,
0,
0
]
},
"new_fails": [
"NO.2 pedestal centre X"
],
"detected": true
},
"negV": {
"move": {
"id": "BP03",
"d": [
0,
0,
2
]
},
"new_fails": [
"NO.3 pad top = EL.'X'"
],
"detected": true
}
},
"reload": {
"built": 12,
"reopened": 12,
"fingerprint": 12,
"ok": true
},
"unchanged": {
"compared": 0,
"diffs": [],
"missing": [],
"ok": true,
"against": null
},
"model": "C:\\Users\\User\\Desktop\\바이브코딩\\pier_T\\Code\\교각모델링앱\\검증\\ulsan_e2e_data\\울산E2E\\runs\\current\\G1.3dm",
"mode": "single",
"secs": 622.2,
"build_steps": [
{
"name": "G1:concrete_tapered.py",
"secs": 0.28
},
{
"name": "display.py",
"secs": 0.02
}
],
"inputs_sha": "d701f1270fd40f2c",
"job_id": "a6ac73e4d875"
}
@@ -0,0 +1,12 @@
{
"id": "a6ac73e4d875",
"pid": 17668,
"state": "완료",
"at": "2026-10-19 14:13:01",
"log": [
"Rhino 작업 시작",
"[G1] build G1..G1",
"[G1] re-open, check, negative tests, fingerprint",
"[G1] PASS checks 104/104 (planned FAIL 0, unplanned 0) negative H/V True/True reload True unchanged True (0) 622.2s"
]
}
@@ -0,0 +1,930 @@
{
"summary": {
"total": 104,
"passed": 103,
"failed": 1,
"volumes_m3": {
"lean": 5.929,
"footing": 140.625,
"column": 110.937,
"coping": 82.231
}
},
"results": [
{
"check": "C5",
"item": "object counts",
"detail": "{'LC': 1, 'FT': 1, 'CL': 1, 'CP': 1, 'PL': 0}",
"result": "PASS"
},
{
"check": "C2",
"item": "IsSolid all 4",
"detail": "4/4",
"result": "PASS"
},
{
"check": "C1",
"item": "footing X",
"expected": 7500,
"actual": 7500.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C1",
"item": "footing Y",
"expected": 7500,
"actual": 7500.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C1",
"item": "footing Zbot",
"expected": 42763,
"actual": 42763.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C1",
"item": "footing Ztop",
"expected": 45263,
"actual": 45263.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C1",
"item": "footing centre X",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C1",
"item": "footing centre Y",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C1",
"item": "lean X",
"expected": 7700,
"actual": 7700.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C1",
"item": "lean Y",
"expected": 7700,
"actual": 7700.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C1",
"item": "lean Zbot",
"expected": 42663,
"actual": 42663.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C1",
"item": "lean Ztop",
"expected": 42763,
"actual": 42763.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C1",
"item": "lean centre X",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C1",
"item": "lean centre Y",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C1",
"item": "column diameter X",
"expected": 2500,
"actual": 2500.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C1",
"item": "column diameter Y",
"expected": 2500,
"actual": 2500.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C1",
"item": "column Zbot",
"expected": 45263,
"actual": 45263.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C1",
"item": "column Ztop",
"expected": 67863,
"actual": 67863.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C1",
"item": "coping length X (tip to tip)",
"expected": 10000,
"actual": 10000.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C1",
"item": "coping width Y",
"expected": 3200,
"actual": 3200.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C1",
"item": "coping Zbot",
"expected": 67863,
"actual": 67863.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C1",
"item": "coping Ztop",
"expected": 71193,
"actual": 71193.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C1",
"item": "coping centre X",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C4",
"item": "section closed single loop",
"detail": "1 loop(s)",
"result": "PASS"
},
{
"check": "C4",
"item": "bottom at X=+0",
"expected": 67863,
"actual": 67863.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C4",
"item": "bottom at X=+1249",
"expected": 67863,
"actual": 67863.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C4",
"item": "bottom at X=-1249",
"expected": 67863,
"actual": 67863.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C4",
"item": "bottom at X=+3000",
"expected": 68656.333,
"actual": 68656.333,
"diff": -0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C4",
"item": "bottom at X=-3000",
"expected": 68656.333,
"actual": 68656.333,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C4",
"item": "bottom at X=+4995",
"expected": 69560.733,
"actual": 69560.733,
"diff": -0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C4",
"item": "bottom at X=-4995",
"expected": 69560.733,
"actual": 69560.733,
"diff": -0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C4",
"item": "top at X=-2000",
"expected": 71193,
"actual": 71193.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C4",
"item": "top at X=+2000",
"expected": 71063,
"actual": 71063.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C4",
"item": "top at X=-4690",
"expected": 71193,
"actual": 71193.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C4",
"item": "top at X=+4690",
"expected": 71063,
"actual": 71063.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C4",
"item": "top at X=-4850",
"expected": 70378.0,
"actual": 70378.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C4",
"item": "top at X=+4850",
"expected": 70313.0,
"actual": 70313.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C4",
"item": "top step at the pier centre (left - right)",
"expected": 130,
"actual": 130.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C4",
"item": "plan corners rounded R500 (4 corners outside, edges inside)",
"detail": "z 69613, test point (4927, 1527)",
"result": "PASS"
},
{
"check": "C3",
"item": "LC top = FT bottom",
"expected": 42763.0,
"actual": 42763.0,
"diff": 0.0,
"tol": 0.01,
"result": "PASS"
},
{
"check": "C3",
"item": "FT top = CL bottom",
"expected": 45263.0,
"actual": 45263.0,
"diff": 0.0,
"tol": 0.01,
"result": "PASS"
},
{
"check": "C3",
"item": "CL top = CP bottom",
"expected": 67863.0,
"actual": 67863.0,
"diff": 0.0,
"tol": 0.01,
"result": "PASS"
},
{
"check": "C3",
"item": "overlap LC-FT (mm3)",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C3",
"item": "overlap FT-CL (mm3)",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C3",
"item": "overlap CL-CP (mm3)",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C3",
"item": "column within coping bottom flat zone",
"detail": "r=1250 <= 1250 (X), 1600 (Y)",
"result": "PASS"
},
{
"check": "C6",
"item": "footing volume m3",
"expected": 140.625,
"actual": 140.625,
"diff": 0.0,
"tol": 0.140625,
"result": "PASS"
},
{
"check": "C6",
"item": "column volume m3",
"expected": 110.937,
"actual": 110.937,
"diff": 0.0,
"tol": 0.11093749057988958,
"result": "PASS"
},
{
"check": "C6",
"item": "lean volume m3 (minus pile holes)",
"expected": 5.929,
"actual": 5.929,
"diff": -0.0,
"tol": 0.005929,
"result": "PASS"
},
{
"check": "C6",
"item": "coping volume m3 (dimension outline, R corners)",
"expected": 82.23,
"actual": 82.231,
"diff": 0.001,
"tol": 0.08223033778456262,
"result": "PASS"
},
{
"check": "C7",
"item": "pedestal / pad counts",
"detail": "seats=4 pads=4",
"result": "PASS"
},
{
"check": "C7",
"item": "IsSolid pedestals+pads",
"detail": "8/8",
"result": "PASS"
},
{
"check": "C7",
"item": "NO.1 table EL.'X' - h1 - h2 = coping top (left)",
"expected": 71193,
"actual": 71193,
"diff": 0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.1 pedestal bottom = coping top",
"expected": 71193,
"actual": 71193.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.1 pedestal top = top + h1",
"expected": 71368,
"actual": 71368.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.1 pad top = EL.'X'",
"expected": 71418,
"actual": 71418.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.1 pedestal size X",
"expected": 1300,
"actual": 1300.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.1 pedestal size Y",
"expected": 1300,
"actual": 1300.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.1 pedestal centre X",
"expected": -3250,
"actual": -3250.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.1 pedestal centre Y",
"expected": -799,
"actual": -799.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.1 pad centre X",
"expected": -3250,
"actual": -3250.0,
"diff": -0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.1 pad centre Y",
"expected": -799,
"actual": -799.0,
"diff": -0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.1 pad volume (prismatoid A,B)",
"expected": 26686666.667,
"actual": 26686666.667,
"diff": -0.0,
"tol": 26686.666666666668,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.1 overlap pedestal-coping (mm3)",
"expected": 0,
"actual": 0,
"diff": 0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.1 overlap pad-pedestal (mm3)",
"expected": 0,
"actual": 0,
"diff": 0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.2 table EL.'X' - h1 - h2 = coping top (right)",
"expected": 71063,
"actual": 71063,
"diff": 0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.2 pedestal bottom = coping top",
"expected": 71063,
"actual": 71063.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.2 pedestal top = top + h1",
"expected": 71238,
"actual": 71238.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.2 pad top = EL.'X'",
"expected": 71288,
"actual": 71288.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.2 pedestal size X",
"expected": 1300,
"actual": 1300.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.2 pedestal size Y",
"expected": 1300,
"actual": 1300.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.2 pedestal centre X",
"expected": 3250,
"actual": 3253.0,
"diff": 3.0,
"tol": 1.0,
"result": "FAIL"
},
{
"check": "C7",
"item": "NO.2 pedestal centre Y",
"expected": -774,
"actual": -774.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.2 pad centre X",
"expected": 3250,
"actual": 3250.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.2 pad centre Y",
"expected": -774,
"actual": -774.0,
"diff": -0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.2 pad volume (prismatoid A,B)",
"expected": 26686666.667,
"actual": 26686666.667,
"diff": 0.0,
"tol": 26686.666666666668,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.2 overlap pedestal-coping (mm3)",
"expected": 0,
"actual": 0,
"diff": 0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.2 overlap pad-pedestal (mm3)",
"expected": 0,
"actual": 0,
"diff": 0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.3 table EL.'X' - h1 - h2 = coping top (left)",
"expected": 71193,
"actual": 71193,
"diff": 0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.3 pedestal bottom = coping top",
"expected": 71193,
"actual": 71193.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.3 pedestal top = top + h1",
"expected": 71390,
"actual": 71390.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.3 pad top = EL.'X'",
"expected": 71440,
"actual": 71440.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.3 pedestal size X",
"expected": 1300,
"actual": 1300.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.3 pedestal size Y",
"expected": 1300,
"actual": 1300.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.3 pedestal centre X",
"expected": -3250,
"actual": -3250.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.3 pedestal centre Y",
"expected": 799,
"actual": 799.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.3 pad centre X",
"expected": -3250,
"actual": -3250.0,
"diff": -0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.3 pad centre Y",
"expected": 799,
"actual": 799.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.3 pad volume (prismatoid A,B)",
"expected": 28166666.667,
"actual": 28166666.667,
"diff": -0.0,
"tol": 28166.666666666668,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.3 overlap pedestal-coping (mm3)",
"expected": 0,
"actual": 0,
"diff": 0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.3 overlap pad-pedestal (mm3)",
"expected": 0,
"actual": 0,
"diff": 0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.4 table EL.'X' - h1 - h2 = coping top (right)",
"expected": 71063,
"actual": 71064,
"diff": 1,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.4 pedestal bottom = coping top",
"expected": 71063,
"actual": 71063.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.4 pedestal top = top + h1",
"expected": 71259,
"actual": 71259.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.4 pad top = EL.'X'",
"expected": 71310,
"actual": 71309.0,
"diff": -1.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.4 pedestal size X",
"expected": 1300,
"actual": 1300.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.4 pedestal size Y",
"expected": 1300,
"actual": 1300.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.4 pedestal centre X",
"expected": 3250,
"actual": 3250.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.4 pedestal centre Y",
"expected": 771,
"actual": 771.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.4 pad centre X",
"expected": 3250,
"actual": 3250.0,
"diff": -0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.4 pad centre Y",
"expected": 771,
"actual": 771.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.4 pad volume (prismatoid A,B)",
"expected": 28166666.667,
"actual": 28166666.667,
"diff": -0.0,
"tol": 28166.666666666668,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.4 overlap pedestal-coping (mm3)",
"expected": 0,
"actual": 0,
"diff": 0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.4 overlap pad-pedestal (mm3)",
"expected": 0,
"actual": 0,
"diff": 0,
"tol": 1.0,
"result": "PASS"
}
]
}
@@ -0,0 +1,930 @@
{
"summary": {
"total": 104,
"passed": 103,
"failed": 1,
"volumes_m3": {
"lean": 5.929,
"footing": 140.625,
"column": 110.937,
"coping": 82.231
}
},
"results": [
{
"check": "C5",
"item": "object counts",
"detail": "{'LC': 1, 'FT': 1, 'CL': 1, 'CP': 1, 'PL': 0}",
"result": "PASS"
},
{
"check": "C2",
"item": "IsSolid all 4",
"detail": "4/4",
"result": "PASS"
},
{
"check": "C1",
"item": "footing X",
"expected": 7500,
"actual": 7500.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C1",
"item": "footing Y",
"expected": 7500,
"actual": 7500.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C1",
"item": "footing Zbot",
"expected": 42763,
"actual": 42763.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C1",
"item": "footing Ztop",
"expected": 45263,
"actual": 45263.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C1",
"item": "footing centre X",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C1",
"item": "footing centre Y",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C1",
"item": "lean X",
"expected": 7700,
"actual": 7700.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C1",
"item": "lean Y",
"expected": 7700,
"actual": 7700.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C1",
"item": "lean Zbot",
"expected": 42663,
"actual": 42663.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C1",
"item": "lean Ztop",
"expected": 42763,
"actual": 42763.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C1",
"item": "lean centre X",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C1",
"item": "lean centre Y",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C1",
"item": "column diameter X",
"expected": 2500,
"actual": 2500.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C1",
"item": "column diameter Y",
"expected": 2500,
"actual": 2500.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C1",
"item": "column Zbot",
"expected": 45263,
"actual": 45263.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C1",
"item": "column Ztop",
"expected": 67863,
"actual": 67863.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C1",
"item": "coping length X (tip to tip)",
"expected": 10000,
"actual": 10000.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C1",
"item": "coping width Y",
"expected": 3200,
"actual": 3200.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C1",
"item": "coping Zbot",
"expected": 67863,
"actual": 67863.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C1",
"item": "coping Ztop",
"expected": 71193,
"actual": 71193.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C1",
"item": "coping centre X",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C4",
"item": "section closed single loop",
"detail": "1 loop(s)",
"result": "PASS"
},
{
"check": "C4",
"item": "bottom at X=+0",
"expected": 67863,
"actual": 67863.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C4",
"item": "bottom at X=+1249",
"expected": 67863,
"actual": 67863.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C4",
"item": "bottom at X=-1249",
"expected": 67863,
"actual": 67863.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C4",
"item": "bottom at X=+3000",
"expected": 68656.333,
"actual": 68656.333,
"diff": -0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C4",
"item": "bottom at X=-3000",
"expected": 68656.333,
"actual": 68656.333,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C4",
"item": "bottom at X=+4995",
"expected": 69560.733,
"actual": 69560.733,
"diff": -0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C4",
"item": "bottom at X=-4995",
"expected": 69560.733,
"actual": 69560.733,
"diff": -0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C4",
"item": "top at X=-2000",
"expected": 71193,
"actual": 71193.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C4",
"item": "top at X=+2000",
"expected": 71063,
"actual": 71063.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C4",
"item": "top at X=-4690",
"expected": 71193,
"actual": 71193.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C4",
"item": "top at X=+4690",
"expected": 71063,
"actual": 71063.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C4",
"item": "top at X=-4850",
"expected": 70378.0,
"actual": 70378.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C4",
"item": "top at X=+4850",
"expected": 70313.0,
"actual": 70313.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C4",
"item": "top step at the pier centre (left - right)",
"expected": 130,
"actual": 130.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C4",
"item": "plan corners rounded R500 (4 corners outside, edges inside)",
"detail": "z 69613, test point (4927, 1527)",
"result": "PASS"
},
{
"check": "C3",
"item": "LC top = FT bottom",
"expected": 42763.0,
"actual": 42763.0,
"diff": 0.0,
"tol": 0.01,
"result": "PASS"
},
{
"check": "C3",
"item": "FT top = CL bottom",
"expected": 45263.0,
"actual": 45263.0,
"diff": 0.0,
"tol": 0.01,
"result": "PASS"
},
{
"check": "C3",
"item": "CL top = CP bottom",
"expected": 67863.0,
"actual": 67863.0,
"diff": 0.0,
"tol": 0.01,
"result": "PASS"
},
{
"check": "C3",
"item": "overlap LC-FT (mm3)",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C3",
"item": "overlap FT-CL (mm3)",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C3",
"item": "overlap CL-CP (mm3)",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C3",
"item": "column within coping bottom flat zone",
"detail": "r=1250 <= 1250 (X), 1600 (Y)",
"result": "PASS"
},
{
"check": "C6",
"item": "footing volume m3",
"expected": 140.625,
"actual": 140.625,
"diff": 0.0,
"tol": 0.140625,
"result": "PASS"
},
{
"check": "C6",
"item": "column volume m3",
"expected": 110.937,
"actual": 110.937,
"diff": 0.0,
"tol": 0.11093749057988958,
"result": "PASS"
},
{
"check": "C6",
"item": "lean volume m3 (minus pile holes)",
"expected": 5.929,
"actual": 5.929,
"diff": -0.0,
"tol": 0.005929,
"result": "PASS"
},
{
"check": "C6",
"item": "coping volume m3 (dimension outline, R corners)",
"expected": 82.23,
"actual": 82.231,
"diff": 0.001,
"tol": 0.08223033778456262,
"result": "PASS"
},
{
"check": "C7",
"item": "pedestal / pad counts",
"detail": "seats=4 pads=4",
"result": "PASS"
},
{
"check": "C7",
"item": "IsSolid pedestals+pads",
"detail": "8/8",
"result": "PASS"
},
{
"check": "C7",
"item": "NO.1 table EL.'X' - h1 - h2 = coping top (left)",
"expected": 71193,
"actual": 71193,
"diff": 0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.1 pedestal bottom = coping top",
"expected": 71193,
"actual": 71193.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.1 pedestal top = top + h1",
"expected": 71368,
"actual": 71368.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.1 pad top = EL.'X'",
"expected": 71418,
"actual": 71418.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.1 pedestal size X",
"expected": 1300,
"actual": 1300.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.1 pedestal size Y",
"expected": 1300,
"actual": 1300.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.1 pedestal centre X",
"expected": -3250,
"actual": -3250.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.1 pedestal centre Y",
"expected": -799,
"actual": -799.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.1 pad centre X",
"expected": -3250,
"actual": -3250.0,
"diff": -0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.1 pad centre Y",
"expected": -799,
"actual": -799.0,
"diff": -0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.1 pad volume (prismatoid A,B)",
"expected": 26686666.667,
"actual": 26686666.667,
"diff": -0.0,
"tol": 26686.666666666668,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.1 overlap pedestal-coping (mm3)",
"expected": 0,
"actual": 0,
"diff": 0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.1 overlap pad-pedestal (mm3)",
"expected": 0,
"actual": 0,
"diff": 0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.2 table EL.'X' - h1 - h2 = coping top (right)",
"expected": 71063,
"actual": 71063,
"diff": 0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.2 pedestal bottom = coping top",
"expected": 71063,
"actual": 71063.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.2 pedestal top = top + h1",
"expected": 71238,
"actual": 71238.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.2 pad top = EL.'X'",
"expected": 71288,
"actual": 71288.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.2 pedestal size X",
"expected": 1300,
"actual": 1300.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.2 pedestal size Y",
"expected": 1300,
"actual": 1300.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.2 pedestal centre X",
"expected": 3250,
"actual": 3250.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.2 pedestal centre Y",
"expected": -774,
"actual": -774.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.2 pad centre X",
"expected": 3250,
"actual": 3250.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.2 pad centre Y",
"expected": -774,
"actual": -774.0,
"diff": -0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.2 pad volume (prismatoid A,B)",
"expected": 26686666.667,
"actual": 26686666.667,
"diff": 0.0,
"tol": 26686.666666666668,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.2 overlap pedestal-coping (mm3)",
"expected": 0,
"actual": 0,
"diff": 0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.2 overlap pad-pedestal (mm3)",
"expected": 0,
"actual": 0,
"diff": 0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.3 table EL.'X' - h1 - h2 = coping top (left)",
"expected": 71193,
"actual": 71193,
"diff": 0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.3 pedestal bottom = coping top",
"expected": 71193,
"actual": 71193.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.3 pedestal top = top + h1",
"expected": 71390,
"actual": 71390.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.3 pad top = EL.'X'",
"expected": 71440,
"actual": 71442.0,
"diff": 2.0,
"tol": 1.0,
"result": "FAIL"
},
{
"check": "C7",
"item": "NO.3 pedestal size X",
"expected": 1300,
"actual": 1300.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.3 pedestal size Y",
"expected": 1300,
"actual": 1300.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.3 pedestal centre X",
"expected": -3250,
"actual": -3250.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.3 pedestal centre Y",
"expected": 799,
"actual": 799.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.3 pad centre X",
"expected": -3250,
"actual": -3250.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.3 pad centre Y",
"expected": 799,
"actual": 799.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.3 pad volume (prismatoid A,B)",
"expected": 28166666.667,
"actual": 28166666.667,
"diff": -0.0,
"tol": 28166.666666666668,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.3 overlap pedestal-coping (mm3)",
"expected": 0,
"actual": 0,
"diff": 0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.3 overlap pad-pedestal (mm3)",
"expected": 0,
"actual": 0,
"diff": 0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.4 table EL.'X' - h1 - h2 = coping top (right)",
"expected": 71063,
"actual": 71064,
"diff": 1,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.4 pedestal bottom = coping top",
"expected": 71063,
"actual": 71063.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.4 pedestal top = top + h1",
"expected": 71259,
"actual": 71259.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.4 pad top = EL.'X'",
"expected": 71310,
"actual": 71309.0,
"diff": -1.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.4 pedestal size X",
"expected": 1300,
"actual": 1300.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.4 pedestal size Y",
"expected": 1300,
"actual": 1300.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.4 pedestal centre X",
"expected": 3250,
"actual": 3250.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.4 pedestal centre Y",
"expected": 771,
"actual": 771.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.4 pad centre X",
"expected": 3250,
"actual": 3250.0,
"diff": -0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.4 pad centre Y",
"expected": 771,
"actual": 771.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.4 pad volume (prismatoid A,B)",
"expected": 28166666.667,
"actual": 28166666.667,
"diff": -0.0,
"tol": 28166.666666666668,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.4 overlap pedestal-coping (mm3)",
"expected": 0,
"actual": 0,
"diff": 0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.4 overlap pad-pedestal (mm3)",
"expected": 0,
"actual": 0,
"diff": 0,
"tol": 1.0,
"result": "PASS"
}
]
}
@@ -0,0 +1,349 @@
{
"summary": {
"total": 35,
"passed": 35,
"failed": 0,
"min_cover": {
"P1": 109.0,
"P2": 93.0,
"P3": 117.8,
"P4": 93.0,
"P5": 93.0
}
},
"results": [
{
"check": "C8",
"item": "P1 bar count",
"expected": 68,
"actual": 68,
"diff": 0,
"tol": 0,
"result": "PASS"
},
{
"check": "C8",
"item": "P1 pipes closed & paired with centrelines",
"detail": "68/68",
"result": "PASS"
},
{
"check": "C8",
"item": "P2 bar count",
"expected": 70,
"actual": 70,
"diff": 0,
"tol": 0,
"result": "PASS"
},
{
"check": "C8",
"item": "P2 pipes closed & paired with centrelines",
"detail": "140/140",
"result": "PASS"
},
{
"check": "C8",
"item": "P3 bar count",
"expected": 12,
"actual": 12,
"diff": 0,
"tol": 0,
"result": "PASS"
},
{
"check": "C8",
"item": "P3 pipes closed & paired with centrelines",
"detail": "24/24",
"result": "PASS"
},
{
"check": "C8",
"item": "P4 bar count",
"expected": 25,
"actual": 25,
"diff": 0,
"tol": 0,
"result": "PASS"
},
{
"check": "C8",
"item": "P4 pipes closed & paired with centrelines",
"detail": "25/25",
"result": "PASS"
},
{
"check": "C8",
"item": "P5 bar count",
"expected": 64,
"actual": 64,
"diff": 0,
"tol": 0,
"result": "PASS"
},
{
"check": "C8",
"item": "P5 pipes closed & paired with centrelines",
"detail": "64/64",
"result": "PASS"
},
{
"check": "C8",
"item": "P1 original length (+coupler) vs schedule L (worst of 68)",
"expected": 0,
"actual": 0.929,
"diff": 0.929,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C8",
"item": "P1 curve length - L (record)",
"detail": "min -0.9 / max -0.9 mm",
"result": "INFO"
},
{
"check": "C8",
"item": "P1 curve length (+coupler) vs L (no fillet)",
"expected": 0,
"actual": 0.929,
"diff": 0.929,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C8",
"item": "P2 original length (+coupler) vs schedule L (worst of 70)",
"expected": 0,
"actual": 1.0,
"diff": 1.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C8",
"item": "P2 curve length - L (record)",
"detail": "min -252.3 / max -252.3 mm",
"result": "INFO"
},
{
"check": "C8",
"item": "P3 original length (+coupler) vs schedule L (worst of 12)",
"expected": 0,
"actual": 1.0,
"diff": 1.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C8",
"item": "P3 curve length - L (record)",
"detail": "min 0.4 / max 0.4 mm",
"result": "INFO"
},
{
"check": "C8",
"item": "P3 curve length (+coupler) vs L (no fillet)",
"expected": 0,
"actual": 0.38,
"diff": 0.38,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C8",
"item": "P4 original length (+coupler) vs schedule L (worst of 25)",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C8",
"item": "P4 curve length - L (record)",
"detail": "min 0.4 / max 0.4 mm",
"result": "INFO"
},
{
"check": "C8",
"item": "P4 curve length (+coupler) vs L (no fillet)",
"expected": 0,
"actual": 0.38,
"diff": 0.38,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C8",
"item": "P5 original length (+coupler) vs schedule L (worst of 64)",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C8",
"item": "P5 curve length - L (record)",
"detail": "min -36.7 / max -36.7 mm",
"result": "INFO"
},
{
"check": "C8",
"item": "P1 radius (worst)",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 0.5,
"result": "PASS"
},
{
"check": "C8",
"item": "P1 angle vs start + i*360/68 (worst, deg)",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 0.01,
"result": "PASS"
},
{
"check": "C8",
"item": "P1 top EL (worst)",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C8",
"item": "P1 hook leg EL (footing bottom + 200) (worst)",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C8",
"item": "hoop level count 107",
"detail": "107",
"result": "PASS"
},
{
"check": "C8",
"item": "hoop levels vs dim chain (worst)",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C8",
"item": "hoop marks by zone (P3 x12, P4 x25, P2 x70)",
"detail": "",
"result": "PASS"
},
{
"check": "C8",
"item": "P3 radius (mid point)",
"expected": 1149,
"actual": 1149.0,
"diff": -0.0,
"tol": 0.5,
"result": "PASS"
},
{
"check": "C8",
"item": "P4 radius (mid point)",
"expected": 1149,
"actual": 1149.0,
"diff": -0.0,
"tol": 0.5,
"result": "PASS"
},
{
"check": "C8",
"item": "P2 radius (mid point)",
"expected": 1149,
"actual": 1149.0,
"diff": 0.0,
"tol": 0.5,
"result": "PASS"
},
{
"check": "C8",
"item": "tie levels 16 x 4",
"detail": "16 levels",
"result": "PASS"
},
{
"check": "C8",
"item": "tie levels vs chain + 17.5 (worst)",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C8",
"item": "concrete union for cover",
"detail": "1 brep",
"result": "INFO"
},
{
"check": "C8",
"item": "P1 sample points outside concrete",
"expected": 0,
"actual": 0,
"diff": 0,
"tol": 0,
"result": "PASS"
},
{
"check": "C8",
"item": "P2 sample points outside concrete",
"expected": 0,
"actual": 0,
"diff": 0,
"tol": 0,
"result": "PASS"
},
{
"check": "C8",
"item": "P3 sample points outside concrete",
"expected": 0,
"actual": 0,
"diff": 0,
"tol": 0,
"result": "PASS"
},
{
"check": "C8",
"item": "P4 sample points outside concrete",
"expected": 0,
"actual": 0,
"diff": 0,
"tol": 0,
"result": "PASS"
},
{
"check": "C8",
"item": "P5 sample points outside concrete",
"expected": 0,
"actual": 0,
"diff": 0,
"tol": 0,
"result": "PASS"
},
{
"check": "C8",
"item": "min cover to concrete surface per mark (record)",
"detail": "{\"P1\": 109.0, \"P2\": 93.0, \"P3\": 117.8, \"P4\": 93.0, \"P5\": 93.0}",
"result": "INFO"
}
]
}
@@ -0,0 +1 @@
{"model": "C:\\Users\\User\\Desktop\\바이브코딩\\pier_T\\Code\\교각모델링앱\\검증\\ulsan_e2e_data\\울산E2E\\runs\\current\\G2.3dm", "units": "Millimeters", "tolerance": 0.001, "count": 654, "layers": {"P1::철근::기둥::P5": [140, 60, 160, true], "P1::철근::중심선": [60, 60, 60, true], "P1::철근::기둥::P2": [40, 120, 200, true], "P1::철근::기둥::P4": [90, 90, 220, true], "P1::철근::기둥::P3": [40, 170, 170, true], "P1::철근::기둥::P1": [200, 40, 40, true], "P1::받침패드": [90, 160, 90, true], "P1::받침대좌": [190, 90, 90, true], "P1::코핑": [210, 180, 80, true], "P1::기둥": [200, 140, 90, true], "P1::기초": [120, 150, 200, true], "P1::버림콘크리트": [160, 160, 160, true]}, "objects": {"P1-R-P5-L16-132.4": {"layer": "P1::철근::기둥::P5", "type": "Brep", "hidden": false, "locked": false, "colour_source": 1, "colour": [44, 160, 44], "bbox": [-782.57, -857.51, 69805.5, 782.57, 857.51, 69965.0], "user": {"anchor_hosts": "P1-CP", "coupler_length": "0.000", "design_length": "2595.000", "dia": "H19", "host": "P1-CL", "id": "P1-R-P5-L16-132.4", "mark": "P5", "occurrence": "L16-132.4", "shape": "I", "src": "EL 69.938 (+17.5 on hoop); angle 132.35 deg"}, "faces": 7, "solid": true, "volume": "skipped"}, "P1-RC-P5-L16-132.4": {"layer": "P1::철근::중심선", "type": "PolyCurve", "hidden": false, "locked": false, "colour_source": 0, "colour": [0, 0, 0], "bbox": [-773.07, -848.01, 69805.5, 773.07, 848.01, 69955.5], "user": {"anchor_hosts": "P1-CP", "coupler_length": "0.000", "design_length": "2595.000", "dia": "H19", "host": "P1-CL", "id": "P1-RC-P5-L16-132.4", "mark": "P5", "occurrence": "L16-132.4", "shape": "I", "src": "EL 69.938 (+17.5 on hoop); angle 132.35 deg"}, "length": 2558.303}, "P1-R-P5-L16-090.0": {"layer": "P1::철근::기둥::P5", "type": "Brep", "hidden": false, "locked": false, "colour_source": 1, "colour": [44, 160, 44], "bbox": [-9.5, -1157.0, 69805.5, 9.5, 1157.0, 69965.0], "user": {"anchor_hosts": "P1-CP", "coupler_length": "0.000", "design_length": "2595.000", "dia": "H19", "host": "P1-CL", "id": "P1-R-P5-L16-090.0", "mark": "P5", "occurrence": "L16-090.0", "shape": "I", "src": "EL 69.938 (+17.5 on hoop); angle 90.00 deg"}, "faces": 7, "solid": true, "volume": "skipped"}, "P1-RC-P5-L16-090.0": {"layer": "P1::철근::중심선", "type": "PolyCurve", "hidden": false, "locked": false, "colour_source": 0, "colour": [0, 0, 0], "bbox": [-0.0, -1147.5, 69805.5, 0.0, 1147.5, 69955.5], "user": {"anchor_hosts": "P1-CP", "coupler_length": "0.000", "design_length": "2595.000", "dia": "H19", "host": "P1-CL", "id": "P1-RC-P5-L16-090.0", "mark": "P5", "occurrence": "L16-090.0", "shape": "I", "src": "EL 69.938 (+17.5 on hoop); angle 90.00 deg"}, "length": 2558.303}, "P1-R-P5-L16-042.4": {"layer": "P1::철근::기둥::P5", "type": "Brep", "hidden": false, "locked": false, "colour_source": 1, "colour": [44, 160, 44], "bbox": [-857.51, -782.57, 69805.5, 857.51, 782.57, 69965.0], "user": {"anchor_hosts": "P1-CP", "coupler_length": "0.000", "design_length": "2595.000", "dia": "H19", "host": "P1-CL", "id": "P1-R-P5-L16-042.4", "mark": "P5", "occurrence": "L16-042.4", "shape": "I", "src": "EL 69.938 (+17.5 on hoop); angle 42.35 deg"}, "faces": 7, "solid": true, "volume": "skipped"}, "P1-RC-P5-L16-042.4": {"layer": "P1::철근::중심선", "type": "PolyCurve", "hidden": false, "locked": false, "colour_source": 0, "colour": [0, 0, 0], "bbox": [-848.01, -773.07, 69805.5, 848.01, 773.07, 69955.5], "user": {"anchor_hosts": "P1-CP", "coupler_length": "0.000", "design_length": "2595.000", "dia": "H19", "host": "P1-CL", "id": "P1-RC-P5-L16-042.4", "mark": "P5", "occurrence": "L16-042.4", "shape": "I", "src": "EL 69.938 (+17.5 on hoop); angle 42.35 deg"}, "length": 2558.303}, "P1-R-P5-L16-000.0": {"layer": "P1::철근::기둥::P5", "type": "Brep", "hidden": false, "locked": false, "colour_source": 1, "colour": [44, 160, 44], "bbox": [-1157.0, -9.5, 69805.5, 1157.0, 9.5, 69965.0], "user": {"anchor_hosts": "P1-CP", "coupler_length": "0.000", "design_length": "2595.000", "dia": "H19", "host": "P1-CL", "id": "P1-R-P5-L16-000.0", "mark": "P5", "occurrence": "L16-000.0", "shape": "I", "src": "EL 69.938 (+17.5 on hoop); angle 0.00 deg"}, "faces": 7, "solid": true, "volume": "skipped"}, "P1-RC-P5-L16-000.0": {"layer": "P1::철근::중심선", "type": "PolyCurve", "hidden": false, "locked": false, "colour_source": 0, "colour": [0, 0, 0], "bbox": [-1147.5, 0.0, 69805.5, 1147.5, 0.0, 69955.5], "user": {"anchor_hosts": "P1-CP", "coupler_length": "0.000", "design_length": "2595.000", "dia": "H19", "host": "P1-CL", "id": "P1-RC-P5-L16-000.0", "mark": "P5", "occurrence": "L16-000.0", "shape": "I", "src": "EL 69.938 (+17.5 on hoop); angle 0.00 deg"}, "length": 2558.303}, "P1-R-P5-L15-132.4": {"layer": "P1::철근::기둥::P5", "type": "Brep", "hidden": false, "locked": false, "colour_source": 1, "colour": [44, 160, 44], "bbox": [-782.57, -857.51, 68605.5, 782.57, 857.51, 68765.0], "uLine truncated
@@ -0,0 +1,87 @@
{
"gate": "G2",
"checker": "g2_ring.py",
"verdict": "PASS",
"summary": {
"total": 35,
"passed": 35,
"failed": 0,
"min_cover": {
"P1": 109.0,
"P2": 93.0,
"P3": 117.8,
"P4": 93.0,
"P5": 93.0
}
},
"unplanned_fails": [],
"planned_fails": [],
"negative": {
"negH": {
"move": {
"mark": "P1",
"d": [
5,
0,
0
]
},
"new_fails": [
"P1 radius (worst)"
],
"detected": true
},
"negV": {
"move": {
"mark": "P2",
"d": [
0,
0,
5
]
},
"new_fails": [
"hoop level count 107",
"hoop levels vs dim chain (worst)",
"hoop marks by zone (P3 x12, P4 x25, P2 x70)"
],
"detected": true
}
},
"reload": {
"built": 654,
"reopened": 654,
"fingerprint": 654,
"ok": true
},
"unchanged": {
"compared": 12,
"diffs": [],
"missing": [],
"ok": true,
"against": "G1_fp.json"
},
"model": "C:\\Users\\User\\Desktop\\바이브코딩\\pier_T\\Code\\교각모델링앱\\검증\\ulsan_e2e_data\\울산E2E\\runs\\current\\G2.3dm",
"mode": "single",
"secs": 93.9,
"build_steps": [
{
"name": "G1:concrete_tapered.py",
"secs": 0.3
},
{
"name": "G2:column_rebar_ring.py",
"secs": 1.5
},
{
"name": "G2:rebar_colours.py",
"secs": 0.06
},
{
"name": "display.py",
"secs": 0.04
}
],
"inputs_sha": "d701f1270fd40f2c",
"job_id": "8095947b48a9"
}
@@ -0,0 +1,12 @@
{
"id": "8095947b48a9",
"pid": 17668,
"state": "완료",
"at": "2026-10-19 13:57:18",
"log": [
"Rhino 작업 시작",
"[G2] build G1..G2",
"[G2] re-open, check, negative tests, fingerprint",
"[G2] PASS checks 35/35 (planned FAIL 0, unplanned 0) negative H/V True/True reload True unchanged True (12) 93.9s"
]
}
@@ -0,0 +1,349 @@
{
"summary": {
"total": 35,
"passed": 34,
"failed": 1,
"min_cover": {
"P1": 104.0,
"P2": 93.0,
"P3": 117.8,
"P4": 93.0,
"P5": 93.0
}
},
"results": [
{
"check": "C8",
"item": "P1 bar count",
"expected": 68,
"actual": 68,
"diff": 0,
"tol": 0,
"result": "PASS"
},
{
"check": "C8",
"item": "P1 pipes closed & paired with centrelines",
"detail": "68/68",
"result": "PASS"
},
{
"check": "C8",
"item": "P2 bar count",
"expected": 70,
"actual": 70,
"diff": 0,
"tol": 0,
"result": "PASS"
},
{
"check": "C8",
"item": "P2 pipes closed & paired with centrelines",
"detail": "140/140",
"result": "PASS"
},
{
"check": "C8",
"item": "P3 bar count",
"expected": 12,
"actual": 12,
"diff": 0,
"tol": 0,
"result": "PASS"
},
{
"check": "C8",
"item": "P3 pipes closed & paired with centrelines",
"detail": "24/24",
"result": "PASS"
},
{
"check": "C8",
"item": "P4 bar count",
"expected": 25,
"actual": 25,
"diff": 0,
"tol": 0,
"result": "PASS"
},
{
"check": "C8",
"item": "P4 pipes closed & paired with centrelines",
"detail": "25/25",
"result": "PASS"
},
{
"check": "C8",
"item": "P5 bar count",
"expected": 64,
"actual": 64,
"diff": 0,
"tol": 0,
"result": "PASS"
},
{
"check": "C8",
"item": "P5 pipes closed & paired with centrelines",
"detail": "64/64",
"result": "PASS"
},
{
"check": "C8",
"item": "P1 original length (+coupler) vs schedule L (worst of 68)",
"expected": 0,
"actual": 0.929,
"diff": 0.929,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C8",
"item": "P1 curve length - L (record)",
"detail": "min -0.9 / max -0.9 mm",
"result": "INFO"
},
{
"check": "C8",
"item": "P1 curve length (+coupler) vs L (no fillet)",
"expected": 0,
"actual": 0.929,
"diff": 0.929,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C8",
"item": "P2 original length (+coupler) vs schedule L (worst of 70)",
"expected": 0,
"actual": 1.0,
"diff": 1.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C8",
"item": "P2 curve length - L (record)",
"detail": "min -252.3 / max -252.3 mm",
"result": "INFO"
},
{
"check": "C8",
"item": "P3 original length (+coupler) vs schedule L (worst of 12)",
"expected": 0,
"actual": 1.0,
"diff": 1.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C8",
"item": "P3 curve length - L (record)",
"detail": "min 0.4 / max 0.4 mm",
"result": "INFO"
},
{
"check": "C8",
"item": "P3 curve length (+coupler) vs L (no fillet)",
"expected": 0,
"actual": 0.38,
"diff": 0.38,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C8",
"item": "P4 original length (+coupler) vs schedule L (worst of 25)",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C8",
"item": "P4 curve length - L (record)",
"detail": "min 0.4 / max 0.4 mm",
"result": "INFO"
},
{
"check": "C8",
"item": "P4 curve length (+coupler) vs L (no fillet)",
"expected": 0,
"actual": 0.38,
"diff": 0.38,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C8",
"item": "P5 original length (+coupler) vs schedule L (worst of 64)",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C8",
"item": "P5 curve length - L (record)",
"detail": "min -36.7 / max -36.7 mm",
"result": "INFO"
},
{
"check": "C8",
"item": "P1 radius (worst)",
"expected": 0,
"actual": 5.0,
"diff": 5.0,
"tol": 0.5,
"result": "FAIL"
},
{
"check": "C8",
"item": "P1 angle vs start + i*360/68 (worst, deg)",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 0.01,
"result": "PASS"
},
{
"check": "C8",
"item": "P1 top EL (worst)",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C8",
"item": "P1 hook leg EL (footing bottom + 200) (worst)",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C8",
"item": "hoop level count 107",
"detail": "107",
"result": "PASS"
},
{
"check": "C8",
"item": "hoop levels vs dim chain (worst)",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C8",
"item": "hoop marks by zone (P3 x12, P4 x25, P2 x70)",
"detail": "",
"result": "PASS"
},
{
"check": "C8",
"item": "P3 radius (mid point)",
"expected": 1149,
"actual": 1149.0,
"diff": -0.0,
"tol": 0.5,
"result": "PASS"
},
{
"check": "C8",
"item": "P4 radius (mid point)",
"expected": 1149,
"actual": 1149.0,
"diff": -0.0,
"tol": 0.5,
"result": "PASS"
},
{
"check": "C8",
"item": "P2 radius (mid point)",
"expected": 1149,
"actual": 1149.0,
"diff": 0.0,
"tol": 0.5,
"result": "PASS"
},
{
"check": "C8",
"item": "tie levels 16 x 4",
"detail": "16 levels",
"result": "PASS"
},
{
"check": "C8",
"item": "tie levels vs chain + 17.5 (worst)",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C8",
"item": "concrete union for cover",
"detail": "1 brep",
"result": "INFO"
},
{
"check": "C8",
"item": "P1 sample points outside concrete",
"expected": 0,
"actual": 0,
"diff": 0,
"tol": 0,
"result": "PASS"
},
{
"check": "C8",
"item": "P2 sample points outside concrete",
"expected": 0,
"actual": 0,
"diff": 0,
"tol": 0,
"result": "PASS"
},
{
"check": "C8",
"item": "P3 sample points outside concrete",
"expected": 0,
"actual": 0,
"diff": 0,
"tol": 0,
"result": "PASS"
},
{
"check": "C8",
"item": "P4 sample points outside concrete",
"expected": 0,
"actual": 0,
"diff": 0,
"tol": 0,
"result": "PASS"
},
{
"check": "C8",
"item": "P5 sample points outside concrete",
"expected": 0,
"actual": 0,
"diff": 0,
"tol": 0,
"result": "PASS"
},
{
"check": "C8",
"item": "min cover to concrete surface per mark (record)",
"detail": "{\"P1\": 104.0, \"P2\": 93.0, \"P3\": 117.8, \"P4\": 93.0, \"P5\": 93.0}",
"result": "INFO"
}
]
}
@@ -0,0 +1,349 @@
{
"summary": {
"total": 35,
"passed": 32,
"failed": 3,
"min_cover": {
"P1": 109.0,
"P2": 93.0,
"P3": 117.8,
"P4": 93.0,
"P5": 93.0
}
},
"results": [
{
"check": "C8",
"item": "P1 bar count",
"expected": 68,
"actual": 68,
"diff": 0,
"tol": 0,
"result": "PASS"
},
{
"check": "C8",
"item": "P1 pipes closed & paired with centrelines",
"detail": "68/68",
"result": "PASS"
},
{
"check": "C8",
"item": "P2 bar count",
"expected": 70,
"actual": 70,
"diff": 0,
"tol": 0,
"result": "PASS"
},
{
"check": "C8",
"item": "P2 pipes closed & paired with centrelines",
"detail": "140/140",
"result": "PASS"
},
{
"check": "C8",
"item": "P3 bar count",
"expected": 12,
"actual": 12,
"diff": 0,
"tol": 0,
"result": "PASS"
},
{
"check": "C8",
"item": "P3 pipes closed & paired with centrelines",
"detail": "24/24",
"result": "PASS"
},
{
"check": "C8",
"item": "P4 bar count",
"expected": 25,
"actual": 25,
"diff": 0,
"tol": 0,
"result": "PASS"
},
{
"check": "C8",
"item": "P4 pipes closed & paired with centrelines",
"detail": "25/25",
"result": "PASS"
},
{
"check": "C8",
"item": "P5 bar count",
"expected": 64,
"actual": 64,
"diff": 0,
"tol": 0,
"result": "PASS"
},
{
"check": "C8",
"item": "P5 pipes closed & paired with centrelines",
"detail": "64/64",
"result": "PASS"
},
{
"check": "C8",
"item": "P1 original length (+coupler) vs schedule L (worst of 68)",
"expected": 0,
"actual": 0.929,
"diff": 0.929,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C8",
"item": "P1 curve length - L (record)",
"detail": "min -0.9 / max -0.9 mm",
"result": "INFO"
},
{
"check": "C8",
"item": "P1 curve length (+coupler) vs L (no fillet)",
"expected": 0,
"actual": 0.929,
"diff": 0.929,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C8",
"item": "P2 original length (+coupler) vs schedule L (worst of 70)",
"expected": 0,
"actual": 1.0,
"diff": 1.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C8",
"item": "P2 curve length - L (record)",
"detail": "min -252.3 / max -252.3 mm",
"result": "INFO"
},
{
"check": "C8",
"item": "P3 original length (+coupler) vs schedule L (worst of 12)",
"expected": 0,
"actual": 1.0,
"diff": 1.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C8",
"item": "P3 curve length - L (record)",
"detail": "min 0.4 / max 0.4 mm",
"result": "INFO"
},
{
"check": "C8",
"item": "P3 curve length (+coupler) vs L (no fillet)",
"expected": 0,
"actual": 0.38,
"diff": 0.38,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C8",
"item": "P4 original length (+coupler) vs schedule L (worst of 25)",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C8",
"item": "P4 curve length - L (record)",
"detail": "min 0.4 / max 0.4 mm",
"result": "INFO"
},
{
"check": "C8",
"item": "P4 curve length (+coupler) vs L (no fillet)",
"expected": 0,
"actual": 0.38,
"diff": 0.38,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C8",
"item": "P5 original length (+coupler) vs schedule L (worst of 64)",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C8",
"item": "P5 curve length - L (record)",
"detail": "min -36.7 / max -36.7 mm",
"result": "INFO"
},
{
"check": "C8",
"item": "P1 radius (worst)",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 0.5,
"result": "PASS"
},
{
"check": "C8",
"item": "P1 angle vs start + i*360/68 (worst, deg)",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 0.01,
"result": "PASS"
},
{
"check": "C8",
"item": "P1 top EL (worst)",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C8",
"item": "P1 hook leg EL (footing bottom + 200) (worst)",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C8",
"item": "hoop level count 107",
"detail": "108",
"result": "FAIL"
},
{
"check": "C8",
"item": "hoop levels vs dim chain (worst)",
"expected": 0,
"actual": 300.0,
"diff": 300.0,
"tol": 1.0,
"result": "FAIL"
},
{
"check": "C8",
"item": "hoop marks by zone (P3 x12, P4 x25, P2 x70)",
"detail": "",
"result": "FAIL"
},
{
"check": "C8",
"item": "P3 radius (mid point)",
"expected": 1149,
"actual": 1149.0,
"diff": -0.0,
"tol": 0.5,
"result": "PASS"
},
{
"check": "C8",
"item": "P4 radius (mid point)",
"expected": 1149,
"actual": 1149.0,
"diff": -0.0,
"tol": 0.5,
"result": "PASS"
},
{
"check": "C8",
"item": "P2 radius (mid point)",
"expected": 1149,
"actual": 1149.0,
"diff": 0.0,
"tol": 0.5,
"result": "PASS"
},
{
"check": "C8",
"item": "tie levels 16 x 4",
"detail": "16 levels",
"result": "PASS"
},
{
"check": "C8",
"item": "tie levels vs chain + 17.5 (worst)",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C8",
"item": "concrete union for cover",
"detail": "1 brep",
"result": "INFO"
},
{
"check": "C8",
"item": "P1 sample points outside concrete",
"expected": 0,
"actual": 0,
"diff": 0,
"tol": 0,
"result": "PASS"
},
{
"check": "C8",
"item": "P2 sample points outside concrete",
"expected": 0,
"actual": 0,
"diff": 0,
"tol": 0,
"result": "PASS"
},
{
"check": "C8",
"item": "P3 sample points outside concrete",
"expected": 0,
"actual": 0,
"diff": 0,
"tol": 0,
"result": "PASS"
},
{
"check": "C8",
"item": "P4 sample points outside concrete",
"expected": 0,
"actual": 0,
"diff": 0,
"tol": 0,
"result": "PASS"
},
{
"check": "C8",
"item": "P5 sample points outside concrete",
"expected": 0,
"actual": 0,
"diff": 0,
"tol": 0,
"result": "PASS"
},
{
"check": "C8",
"item": "min cover to concrete surface per mark (record)",
"detail": "{\"P1\": 109.0, \"P2\": 93.0, \"P3\": 117.8, \"P4\": 93.0, \"P5\": 93.0}",
"result": "INFO"
}
]
}
@@ -0,0 +1,621 @@
{
"summary": {
"total": 63,
"passed": 63,
"failed": 0,
"cover": {
"B1": 69.5,
"B2": 89.0,
"B3": 89.0,
"B4": 92.0,
"B5": 66.5,
"B6": 89.0,
"B7": 109.5,
"B8": 69.5,
"B9": 92.0,
"B10": 92.0
}
},
"results": [
{
"check": "C9",
"item": "B1 bar count vs schedule",
"expected": 31,
"actual": 31,
"diff": 0,
"tol": 0,
"result": "PASS"
},
{
"check": "C9",
"item": "B1 pipes closed & paired",
"detail": "31/31",
"result": "PASS"
},
{
"check": "C9",
"item": "B1 original length vs L (worst)",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C9",
"item": "B1 curve length - L (bend fillets / laps)",
"detail": "min 0.0 / max 0.0",
"result": "INFO"
},
{
"check": "C9",
"item": "B2 bar count vs schedule",
"expected": 31,
"actual": 31,
"diff": 0,
"tol": 0,
"result": "PASS"
},
{
"check": "C9",
"item": "B2 pipes closed & paired",
"detail": "31/31",
"result": "PASS"
},
{
"check": "C9",
"item": "B2 original length vs L (worst)",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C9",
"item": "B2 curve length - L (bend fillets / laps)",
"detail": "min -1042.5 / max -1042.5",
"result": "INFO"
},
{
"check": "C9",
"item": "B3 bar count vs schedule",
"expected": 28,
"actual": 28,
"diff": 0,
"tol": 0,
"result": "PASS"
},
{
"check": "C9",
"item": "B3 pipes closed & paired",
"detail": "28/28",
"result": "PASS"
},
{
"check": "C9",
"item": "B3 original length vs L (worst)",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C9",
"item": "B3 curve length - L (bend fillets / laps)",
"detail": "min 0.0 / max 0.0",
"result": "INFO"
},
{
"check": "C9",
"item": "B4 bar count vs schedule",
"expected": 31,
"actual": 31,
"diff": 0,
"tol": 0,
"result": "PASS"
},
{
"check": "C9",
"item": "B4 pipes closed & paired",
"detail": "31/31",
"result": "PASS"
},
{
"check": "C9",
"item": "B4 original length vs L (worst)",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C9",
"item": "B4 curve length - L (bend fillets / laps)",
"detail": "min 0.0 / max 0.0",
"result": "INFO"
},
{
"check": "C9",
"item": "B5 bar count vs schedule",
"expected": 31,
"actual": 31,
"diff": 0,
"tol": 0,
"result": "PASS"
},
{
"check": "C9",
"item": "B5 pipes closed & paired",
"detail": "31/31",
"result": "PASS"
},
{
"check": "C9",
"item": "B5 original length vs L (worst)",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C9",
"item": "B5 curve length - L (bend fillets / laps)",
"detail": "min -1042.5 / max -1042.5",
"result": "INFO"
},
{
"check": "C9",
"item": "B6 bar count vs schedule",
"expected": 28,
"actual": 28,
"diff": 0,
"tol": 0,
"result": "PASS"
},
{
"check": "C9",
"item": "B6 pipes closed & paired",
"detail": "28/28",
"result": "PASS"
},
{
"check": "C9",
"item": "B6 original length vs L (worst)",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C9",
"item": "B6 curve length - L (bend fillets / laps)",
"detail": "min 0.0 / max 0.0",
"result": "INFO"
},
{
"check": "C9",
"item": "B7 bar count vs schedule",
"expected": 98,
"actual": 98,
"diff": 0,
"tol": 0,
"result": "PASS"
},
{
"check": "C9",
"item": "B7 pipes closed & paired",
"detail": "98/98",
"result": "PASS"
},
{
"check": "C9",
"item": "B7 original length vs L (worst)",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C9",
"item": "B7 curve length - L (bend fillets / laps)",
"detail": "min -16.7 / max -16.7",
"result": "INFO"
},
{
"check": "C9",
"item": "B8 bar count vs schedule",
"expected": 7,
"actual": 7,
"diff": 0,
"tol": 0,
"result": "PASS"
},
{
"check": "C9",
"item": "B8 pipes closed & paired",
"detail": "7/7",
"result": "PASS"
},
{
"check": "C9",
"item": "B8 original length vs L (worst)",
"expected": 0,
"actual": 1.0,
"diff": 1.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C9",
"item": "B8 curve length - L (bend fillets / laps)",
"detail": "min -2242.2 / max -2242.2",
"result": "INFO"
},
{
"check": "C9",
"item": "B9 bar count vs schedule",
"expected": 7,
"actual": 7,
"diff": 0,
"tol": 0,
"result": "PASS"
},
{
"check": "C9",
"item": "B9 pipes closed & paired",
"detail": "7/7",
"result": "PASS"
},
{
"check": "C9",
"item": "B9 original length vs L (worst)",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C9",
"item": "B9 curve length - L (bend fillets / laps)",
"detail": "min -20.6 / max -20.6",
"result": "INFO"
},
{
"check": "C9",
"item": "B10 bar count vs schedule",
"expected": 7,
"actual": 7,
"diff": 0,
"tol": 0,
"result": "PASS"
},
{
"check": "C9",
"item": "B10 pipes closed & paired",
"detail": "7/7",
"result": "PASS"
},
{
"check": "C9",
"item": "B10 original length vs L (worst)",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C9",
"item": "B10 curve length - L (bend fillets / laps)",
"detail": "min -20.6 / max -20.6",
"result": "INFO"
},
{
"check": "C9",
"item": "B1 layer z (worst) [derived]",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C9",
"item": "B1 positions vs chain (worst, n=31/31)",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C9",
"item": "B2 layer z (worst) [derived]",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C9",
"item": "B2 positions vs chain (worst, n=31/31)",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C9",
"item": "B3 layer z (worst) [derived]",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C9",
"item": "B3 positions vs chain (worst, n=28/28)",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C9",
"item": "B4 layer z (worst) [derived]",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C9",
"item": "B4 positions vs chain (worst, n=31/31)",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C9",
"item": "B5 layer z (worst) [derived]",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C9",
"item": "B5 positions vs chain (worst, n=31/31)",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C9",
"item": "B6 layer z (worst) [derived]",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C9",
"item": "B6 positions vs chain (worst, n=28/28)",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C9",
"item": "B9 layer z (worst) [derived]",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C9",
"item": "B9 positions vs chain (worst, n=7/7)",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C9",
"item": "B10 layer z (worst) [derived]",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C9",
"item": "B10 positions vs chain (worst, n=7/7)",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C9",
"item": "B8 levels vs chain (worst)",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C9",
"item": "B8 centreline size X [derived]",
"expected": 7345.0,
"actual": 7345.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C9",
"item": "B8 centreline size Y [derived]",
"expected": 7345.0,
"actual": 7345.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C9",
"item": "B7 positions = checkerboard of 14x14 grid [추론]",
"detail": "98 / 98",
"result": "PASS"
},
{
"check": "C9",
"item": "B7 bottom z (worst)",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C9",
"item": "B7 vertical extent a",
"expected": 2218,
"actual": 2218.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C9",
"item": "B1 sample points outside footing",
"expected": 0,
"actual": 0,
"diff": 0,
"tol": 0,
"result": "PASS"
},
{
"check": "C9",
"item": "B2 sample points outside footing",
"expected": 0,
"actual": 0,
"diff": 0,
"tol": 0,
"result": "PASS"
},
{
"check": "C9",
"item": "B3 sample points outside footing",
"expected": 0,
"actual": 0,
"diff": 0,
"tol": 0,
"result": "PASS"
},
{
"check": "C9",
"item": "B4 sample points outside footing",
"expected": 0,
"actual": 0,
"diff": 0,
"tol": 0,
"result": "PASS"
},
{
"check": "C9",
"item": "B5 sample points outside footing",
"expected": 0,
"actual": 0,
"diff": 0,
"tol": 0,
"result": "PASS"
},
{
"check": "C9",
"item": "B6 sample points outside footing",
"expected": 0,
"actual": 0,
"diff": 0,
"tol": 0,
"result": "PASS"
},
{
"check": "C9",
"item": "B7 sample points outside footing",
"expected": 0,
"actual": 0,
"diff": 0,
"tol": 0,
"result": "PASS"
},
{
"check": "C9",
"item": "B8 sample points outside footing",
"expected": 0,
"actual": 0,
"diff": 0,
"tol": 0,
"result": "PASS"
},
{
"check": "C9",
"item": "B9 sample points outside footing",
"expected": 0,
"actual": 0,
"diff": 0,
"tol": 0,
"result": "PASS"
},
{
"check": "C9",
"item": "B10 sample points outside footing",
"expected": 0,
"actual": 0,
"diff": 0,
"tol": 0,
"result": "PASS"
},
{
"check": "C9",
"item": "min cover to footing surface per mark (record; top face under the column counted)",
"detail": "{\"B1\": 69.5, \"B2\": 89.0, \"B3\": 89.0, \"B4\": 92.0, \"B5\": 66.5, \"B6\": 89.0, \"B7\": 109.5, \"B8\": 69.5, \"B9\": 92.0, \"B10\": 92.0}",
"result": "INFO"
},
{
"check": "C9",
"item": "rebar pipe colour by diameter mismatches (all rebar)",
"expected": 0,
"actual": 0,
"diff": 0,
"tol": 0,
"result": "PASS"
}
]
}
@@ -0,0 +1 @@
{"model": "C:\\Users\\User\\Desktop\\바이브코딩\\pier_T\\Code\\교각모델링앱\\검증\\ulsan_e2e_data\\울산E2E\\runs\\current\\G3.3dm", "units": "Millimeters", "tolerance": 0.001, "count": 1252, "layers": {"P1::철근::기초::B7": [150, 110, 60, true], "P1::철근::중심선": [60, 60, 60, true], "P1::철근::기초::B8": [150, 110, 60, true], "P1::철근::기초::B10": [150, 110, 60, true], "P1::철근::기초::B9": [150, 110, 60, true], "P1::철근::기초::B6": [150, 110, 60, true], "P1::철근::기초::B5": [150, 110, 60, true], "P1::철근::기초::B4": [150, 110, 60, true], "P1::철근::기초::B3": [150, 110, 60, true], "P1::철근::기초::B2": [150, 110, 60, true], "P1::철근::기초::B1": [150, 110, 60, true], "P1::철근::기둥::P5": [140, 60, 160, true], "P1::철근::기둥::P2": [40, 120, 200, true], "P1::철근::기둥::P4": [90, 90, 220, true], "P1::철근::기둥::P3": [40, 170, 170, true], "P1::철근::기둥::P1": [200, 40, 40, true], "P1::받침패드": [90, 160, 90, true], "P1::받침대좌": [190, 90, 90, true], "P1::코핑": [210, 180, 80, true], "P1::기둥": [200, 140, 90, true], "P1::기초": [120, 150, 200, true], "P1::버림콘크리트": [160, 160, 160, true]}, "objects": {"P1-R-B7-x+3250y+3250": {"layer": "P1::철근::기초::B7", "type": "Brep", "hidden": false, "locked": false, "colour_source": 1, "colour": [140, 86, 75], "bbox": [3243.5, 3243.5, 42922.5, 3256.5, 3350.0, 45153.5], "user": {"coupler_length": "0.000", "design_length": "2418.000", "dia": "H13", "host": "P1-FT", "id": "P1-R-B7-x+3250y+3250", "mark": "B7", "occurrence": "x+3250y+3250", "shape": "I", "src": "14x14 격자 @500 중 체크무늬 98 [추론]; 작도 z 150~2,400, A 중앙 배치 [추론]; 갈고리 +Y [추론]"}, "faces": 7, "solid": true, "volume": "skipped"}, "P1-RC-B7-x+3250y+3250": {"layer": "P1::철근::중심선", "type": "PolyCurve", "hidden": false, "locked": false, "colour_source": 0, "colour": [0, 0, 0], "bbox": [3250.0, 3250.0, 42929.0, 3250.0, 3350.0, 45147.0], "user": {"coupler_length": "0.000", "design_length": "2418.000", "dia": "H13", "host": "P1-FT", "id": "P1-RC-B7-x+3250y+3250", "mark": "B7", "occurrence": "x+3250y+3250", "shape": "I", "src": "14x14 격자 @500 중 체크무늬 98 [추론]; 작도 z 150~2,400, A 중앙 배치 [추론]; 갈고리 +Y [추론]"}, "length": 2401.261}, "P1-R-B7-x+3250y+2250": {"layer": "P1::철근::기초::B7", "type": "Brep", "hidden": false, "locked": false, "colour_source": 1, "colour": [140, 86, 75], "bbox": [3243.5, 2243.5, 42922.5, 3256.5, 2350.0, 45153.5], "user": {"coupler_length": "0.000", "design_length": "2418.000", "dia": "H13", "host": "P1-FT", "id": "P1-R-B7-x+3250y+2250", "mark": "B7", "occurrence": "x+3250y+2250", "shape": "I", "src": "14x14 격자 @500 중 체크무늬 98 [추론]; 작도 z 150~2,400, A 중앙 배치 [추론]; 갈고리 +Y [추론]"}, "faces": 7, "solid": true, "volume": "skipped"}, "P1-RC-B7-x+3250y+2250": {"layer": "P1::철근::중심선", "type": "PolyCurve", "hidden": false, "locked": false, "colour_source": 0, "colour": [0, 0, 0], "bbox": [3250.0, 2250.0, 42929.0, 3250.0, 2350.0, 45147.0], "user": {"coupler_length": "0.000", "design_length": "2418.000", "dia": "H13", "host": "P1-FT", "id": "P1-RC-B7-x+3250y+2250", "mark": "B7", "occurrence": "x+3250y+2250", "shape": "I", "src": "14x14 격자 @500 중 체크무늬 98 [추론]; 작도 z 150~2,400, A 중앙 배치 [추론]; 갈고리 +Y [추론]"}, "length": 2401.261}, "P1-R-B7-x+3250y+1250": {"layer": "P1::철근::기초::B7", "type": "Brep", "hidden": false, "locked": false, "colour_source": 1, "colour": [140, 86, 75], "bbox": [3243.5, 1243.5, 42922.5, 3256.5, 1350.0, 45153.5], "user": {"coupler_length": "0.000", "design_length": "2418.000", "dia": "H13", "host": "P1-FT", "id": "P1-R-B7-x+3250y+1250", "mark": "B7", "occurrence": "x+3250y+1250", "shape": "I", "src": "14x14 격자 @500 중 체크무늬 98 [추론]; 작도 z 150~2,400, A 중앙 배치 [추론]; 갈고리 +Y [추론]"}, "faces": 7, "solid": true, "volume": "skipped"}, "P1-RC-B7-x+3250y+1250": {"layer": "P1::철근::중심선", "type": "PolyCurve", "hidden": false, "locked": false, "colour_source": 0, "colour": [0, 0, 0], "bbox": [3250.0, 1250.0, 42929.0, 3250.0, 1350.0, 45147.0], "user": {"coupler_length": "0.000", "design_length": "2418.000", "dia": "H13", "host": "P1-FT", "id": "P1-RC-B7-x+3250y+1250", "mark": "B7", "occurrence": "x+3250y+1250", "shape": "I", "src": "14x14 격자 @500 중 체크무늬 98 [추론]; 작도 z 150~2,400, A 중앙 배치 [추론]; 갈고리 +Y [추론]"}, "length": 2401.261}, "P1-R-B7-x+3250y+250": {"layer": "P1::철근::기초::B7", "type": "Brep", "hidden": false, "locked": false, "colour_source": 1, "colour": [140, 86, 75], "bbox": [3243.5, 243.5, 42922.5, 3256.5, 350.0, 45153.5], "user": {"coupler_length": "0.000", "design_length": "2418.000", "dia": "H13", "host": "P1-FT", "id": "P1-R-B7-x+3250y+250", "mark": "B7", "occurrence": "x+3250y+250", "shape": "I",Line truncated
@@ -0,0 +1,94 @@
{
"gate": "G3",
"checker": "g3_mats.py",
"verdict": "PASS",
"summary": {
"total": 63,
"passed": 63,
"failed": 0,
"cover": {
"B1": 69.5,
"B2": 89.0,
"B3": 89.0,
"B4": 92.0,
"B5": 66.5,
"B6": 89.0,
"B7": 109.5,
"B8": 69.5,
"B9": 92.0,
"B10": 92.0
}
},
"unplanned_fails": [],
"planned_fails": [],
"negative": {
"negH": {
"move": {
"mark": "B3",
"d": [
5,
0,
0
]
},
"new_fails": [
"B3 positions vs chain (worst, n=28/28)"
],
"detected": true
},
"negV": {
"move": {
"mark": "B7",
"d": [
0,
0,
5
]
},
"new_fails": [
"B7 bottom z (worst)"
],
"detected": true
}
},
"reload": {
"built": 1252,
"reopened": 1252,
"fingerprint": 1252,
"ok": true
},
"unchanged": {
"compared": 654,
"diffs": [],
"missing": [],
"ok": true,
"against": "G2_fp.json"
},
"model": "C:\\Users\\User\\Desktop\\바이브코딩\\pier_T\\Code\\교각모델링앱\\검증\\ulsan_e2e_data\\울산E2E\\runs\\current\\G3.3dm",
"mode": "single",
"secs": 43.0,
"build_steps": [
{
"name": "G1:concrete_tapered.py",
"secs": 0.3
},
{
"name": "G2:column_rebar_ring.py",
"secs": 1.7
},
{
"name": "G3:footing_rebar_mats.py",
"secs": 0.8
},
{
"name": "G3:rebar_colours.py",
"secs": 0.13
},
{
"name": "display.py",
"secs": 0.06
}
],
"inputs_sha": "d701f1270fd40f2c",
"job_id": "d6701ca0c3a4"
}
@@ -0,0 +1,12 @@
{
"id": "d6701ca0c3a4",
"pid": 17668,
"state": "완료",
"at": "2026-10-19 13:58:03",
"log": [
"Rhino 작업 시작",
"[G3] build G1..G3",
"[G3] re-open, check, negative tests, fingerprint",
"[G3] PASS checks 63/63 (planned FAIL 0, unplanned 0) negative H/V True/True reload True unchanged True (654) 43.0s"
]
}
@@ -0,0 +1,621 @@
{
"summary": {
"total": 63,
"passed": 62,
"failed": 1,
"cover": {
"B1": 69.5,
"B2": 89.0,
"B3": 89.0,
"B4": 92.0,
"B5": 66.5,
"B6": 89.0,
"B7": 109.5,
"B8": 69.5,
"B9": 92.0,
"B10": 92.0
}
},
"results": [
{
"check": "C9",
"item": "B1 bar count vs schedule",
"expected": 31,
"actual": 31,
"diff": 0,
"tol": 0,
"result": "PASS"
},
{
"check": "C9",
"item": "B1 pipes closed & paired",
"detail": "31/31",
"result": "PASS"
},
{
"check": "C9",
"item": "B1 original length vs L (worst)",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C9",
"item": "B1 curve length - L (bend fillets / laps)",
"detail": "min 0.0 / max 0.0",
"result": "INFO"
},
{
"check": "C9",
"item": "B2 bar count vs schedule",
"expected": 31,
"actual": 31,
"diff": 0,
"tol": 0,
"result": "PASS"
},
{
"check": "C9",
"item": "B2 pipes closed & paired",
"detail": "31/31",
"result": "PASS"
},
{
"check": "C9",
"item": "B2 original length vs L (worst)",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C9",
"item": "B2 curve length - L (bend fillets / laps)",
"detail": "min -1042.5 / max -1042.5",
"result": "INFO"
},
{
"check": "C9",
"item": "B3 bar count vs schedule",
"expected": 28,
"actual": 28,
"diff": 0,
"tol": 0,
"result": "PASS"
},
{
"check": "C9",
"item": "B3 pipes closed & paired",
"detail": "28/28",
"result": "PASS"
},
{
"check": "C9",
"item": "B3 original length vs L (worst)",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C9",
"item": "B3 curve length - L (bend fillets / laps)",
"detail": "min 0.0 / max 0.0",
"result": "INFO"
},
{
"check": "C9",
"item": "B4 bar count vs schedule",
"expected": 31,
"actual": 31,
"diff": 0,
"tol": 0,
"result": "PASS"
},
{
"check": "C9",
"item": "B4 pipes closed & paired",
"detail": "31/31",
"result": "PASS"
},
{
"check": "C9",
"item": "B4 original length vs L (worst)",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C9",
"item": "B4 curve length - L (bend fillets / laps)",
"detail": "min 0.0 / max 0.0",
"result": "INFO"
},
{
"check": "C9",
"item": "B5 bar count vs schedule",
"expected": 31,
"actual": 31,
"diff": 0,
"tol": 0,
"result": "PASS"
},
{
"check": "C9",
"item": "B5 pipes closed & paired",
"detail": "31/31",
"result": "PASS"
},
{
"check": "C9",
"item": "B5 original length vs L (worst)",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C9",
"item": "B5 curve length - L (bend fillets / laps)",
"detail": "min -1042.5 / max -1042.5",
"result": "INFO"
},
{
"check": "C9",
"item": "B6 bar count vs schedule",
"expected": 28,
"actual": 28,
"diff": 0,
"tol": 0,
"result": "PASS"
},
{
"check": "C9",
"item": "B6 pipes closed & paired",
"detail": "28/28",
"result": "PASS"
},
{
"check": "C9",
"item": "B6 original length vs L (worst)",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C9",
"item": "B6 curve length - L (bend fillets / laps)",
"detail": "min 0.0 / max 0.0",
"result": "INFO"
},
{
"check": "C9",
"item": "B7 bar count vs schedule",
"expected": 98,
"actual": 98,
"diff": 0,
"tol": 0,
"result": "PASS"
},
{
"check": "C9",
"item": "B7 pipes closed & paired",
"detail": "98/98",
"result": "PASS"
},
{
"check": "C9",
"item": "B7 original length vs L (worst)",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C9",
"item": "B7 curve length - L (bend fillets / laps)",
"detail": "min -16.7 / max -16.7",
"result": "INFO"
},
{
"check": "C9",
"item": "B8 bar count vs schedule",
"expected": 7,
"actual": 7,
"diff": 0,
"tol": 0,
"result": "PASS"
},
{
"check": "C9",
"item": "B8 pipes closed & paired",
"detail": "7/7",
"result": "PASS"
},
{
"check": "C9",
"item": "B8 original length vs L (worst)",
"expected": 0,
"actual": 1.0,
"diff": 1.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C9",
"item": "B8 curve length - L (bend fillets / laps)",
"detail": "min -2242.2 / max -2242.2",
"result": "INFO"
},
{
"check": "C9",
"item": "B9 bar count vs schedule",
"expected": 7,
"actual": 7,
"diff": 0,
"tol": 0,
"result": "PASS"
},
{
"check": "C9",
"item": "B9 pipes closed & paired",
"detail": "7/7",
"result": "PASS"
},
{
"check": "C9",
"item": "B9 original length vs L (worst)",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C9",
"item": "B9 curve length - L (bend fillets / laps)",
"detail": "min -20.6 / max -20.6",
"result": "INFO"
},
{
"check": "C9",
"item": "B10 bar count vs schedule",
"expected": 7,
"actual": 7,
"diff": 0,
"tol": 0,
"result": "PASS"
},
{
"check": "C9",
"item": "B10 pipes closed & paired",
"detail": "7/7",
"result": "PASS"
},
{
"check": "C9",
"item": "B10 original length vs L (worst)",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C9",
"item": "B10 curve length - L (bend fillets / laps)",
"detail": "min -20.6 / max -20.6",
"result": "INFO"
},
{
"check": "C9",
"item": "B1 layer z (worst) [derived]",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C9",
"item": "B1 positions vs chain (worst, n=31/31)",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C9",
"item": "B2 layer z (worst) [derived]",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C9",
"item": "B2 positions vs chain (worst, n=31/31)",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C9",
"item": "B3 layer z (worst) [derived]",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C9",
"item": "B3 positions vs chain (worst, n=28/28)",
"expected": 0,
"actual": 5.0,
"diff": 5.0,
"tol": 1.0,
"result": "FAIL"
},
{
"check": "C9",
"item": "B4 layer z (worst) [derived]",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C9",
"item": "B4 positions vs chain (worst, n=31/31)",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C9",
"item": "B5 layer z (worst) [derived]",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C9",
"item": "B5 positions vs chain (worst, n=31/31)",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C9",
"item": "B6 layer z (worst) [derived]",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C9",
"item": "B6 positions vs chain (worst, n=28/28)",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C9",
"item": "B9 layer z (worst) [derived]",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C9",
"item": "B9 positions vs chain (worst, n=7/7)",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C9",
"item": "B10 layer z (worst) [derived]",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C9",
"item": "B10 positions vs chain (worst, n=7/7)",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C9",
"item": "B8 levels vs chain (worst)",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C9",
"item": "B8 centreline size X [derived]",
"expected": 7345.0,
"actual": 7345.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C9",
"item": "B8 centreline size Y [derived]",
"expected": 7345.0,
"actual": 7345.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C9",
"item": "B7 positions = checkerboard of 14x14 grid [추론]",
"detail": "98 / 98",
"result": "PASS"
},
{
"check": "C9",
"item": "B7 bottom z (worst)",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C9",
"item": "B7 vertical extent a",
"expected": 2218,
"actual": 2218.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C9",
"item": "B1 sample points outside footing",
"expected": 0,
"actual": 0,
"diff": 0,
"tol": 0,
"result": "PASS"
},
{
"check": "C9",
"item": "B2 sample points outside footing",
"expected": 0,
"actual": 0,
"diff": 0,
"tol": 0,
"result": "PASS"
},
{
"check": "C9",
"item": "B3 sample points outside footing",
"expected": 0,
"actual": 0,
"diff": 0,
"tol": 0,
"result": "PASS"
},
{
"check": "C9",
"item": "B4 sample points outside footing",
"expected": 0,
"actual": 0,
"diff": 0,
"tol": 0,
"result": "PASS"
},
{
"check": "C9",
"item": "B5 sample points outside footing",
"expected": 0,
"actual": 0,
"diff": 0,
"tol": 0,
"result": "PASS"
},
{
"check": "C9",
"item": "B6 sample points outside footing",
"expected": 0,
"actual": 0,
"diff": 0,
"tol": 0,
"result": "PASS"
},
{
"check": "C9",
"item": "B7 sample points outside footing",
"expected": 0,
"actual": 0,
"diff": 0,
"tol": 0,
"result": "PASS"
},
{
"check": "C9",
"item": "B8 sample points outside footing",
"expected": 0,
"actual": 0,
"diff": 0,
"tol": 0,
"result": "PASS"
},
{
"check": "C9",
"item": "B9 sample points outside footing",
"expected": 0,
"actual": 0,
"diff": 0,
"tol": 0,
"result": "PASS"
},
{
"check": "C9",
"item": "B10 sample points outside footing",
"expected": 0,
"actual": 0,
"diff": 0,
"tol": 0,
"result": "PASS"
},
{
"check": "C9",
"item": "min cover to footing surface per mark (record; top face under the column counted)",
"detail": "{\"B1\": 69.5, \"B2\": 89.0, \"B3\": 89.0, \"B4\": 92.0, \"B5\": 66.5, \"B6\": 89.0, \"B7\": 109.5, \"B8\": 69.5, \"B9\": 92.0, \"B10\": 92.0}",
"result": "INFO"
},
{
"check": "C9",
"item": "rebar pipe colour by diameter mismatches (all rebar)",
"expected": 0,
"actual": 0,
"diff": 0,
"tol": 0,
"result": "PASS"
}
]
}
@@ -0,0 +1,621 @@
{
"summary": {
"total": 63,
"passed": 62,
"failed": 1,
"cover": {
"B1": 69.5,
"B2": 89.0,
"B3": 89.0,
"B4": 92.0,
"B5": 66.5,
"B6": 89.0,
"B7": 104.5,
"B8": 69.5,
"B9": 92.0,
"B10": 92.0
}
},
"results": [
{
"check": "C9",
"item": "B1 bar count vs schedule",
"expected": 31,
"actual": 31,
"diff": 0,
"tol": 0,
"result": "PASS"
},
{
"check": "C9",
"item": "B1 pipes closed & paired",
"detail": "31/31",
"result": "PASS"
},
{
"check": "C9",
"item": "B1 original length vs L (worst)",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C9",
"item": "B1 curve length - L (bend fillets / laps)",
"detail": "min 0.0 / max 0.0",
"result": "INFO"
},
{
"check": "C9",
"item": "B2 bar count vs schedule",
"expected": 31,
"actual": 31,
"diff": 0,
"tol": 0,
"result": "PASS"
},
{
"check": "C9",
"item": "B2 pipes closed & paired",
"detail": "31/31",
"result": "PASS"
},
{
"check": "C9",
"item": "B2 original length vs L (worst)",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C9",
"item": "B2 curve length - L (bend fillets / laps)",
"detail": "min -1042.5 / max -1042.5",
"result": "INFO"
},
{
"check": "C9",
"item": "B3 bar count vs schedule",
"expected": 28,
"actual": 28,
"diff": 0,
"tol": 0,
"result": "PASS"
},
{
"check": "C9",
"item": "B3 pipes closed & paired",
"detail": "28/28",
"result": "PASS"
},
{
"check": "C9",
"item": "B3 original length vs L (worst)",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C9",
"item": "B3 curve length - L (bend fillets / laps)",
"detail": "min 0.0 / max 0.0",
"result": "INFO"
},
{
"check": "C9",
"item": "B4 bar count vs schedule",
"expected": 31,
"actual": 31,
"diff": 0,
"tol": 0,
"result": "PASS"
},
{
"check": "C9",
"item": "B4 pipes closed & paired",
"detail": "31/31",
"result": "PASS"
},
{
"check": "C9",
"item": "B4 original length vs L (worst)",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C9",
"item": "B4 curve length - L (bend fillets / laps)",
"detail": "min 0.0 / max 0.0",
"result": "INFO"
},
{
"check": "C9",
"item": "B5 bar count vs schedule",
"expected": 31,
"actual": 31,
"diff": 0,
"tol": 0,
"result": "PASS"
},
{
"check": "C9",
"item": "B5 pipes closed & paired",
"detail": "31/31",
"result": "PASS"
},
{
"check": "C9",
"item": "B5 original length vs L (worst)",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C9",
"item": "B5 curve length - L (bend fillets / laps)",
"detail": "min -1042.5 / max -1042.5",
"result": "INFO"
},
{
"check": "C9",
"item": "B6 bar count vs schedule",
"expected": 28,
"actual": 28,
"diff": 0,
"tol": 0,
"result": "PASS"
},
{
"check": "C9",
"item": "B6 pipes closed & paired",
"detail": "28/28",
"result": "PASS"
},
{
"check": "C9",
"item": "B6 original length vs L (worst)",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C9",
"item": "B6 curve length - L (bend fillets / laps)",
"detail": "min 0.0 / max 0.0",
"result": "INFO"
},
{
"check": "C9",
"item": "B7 bar count vs schedule",
"expected": 98,
"actual": 98,
"diff": 0,
"tol": 0,
"result": "PASS"
},
{
"check": "C9",
"item": "B7 pipes closed & paired",
"detail": "98/98",
"result": "PASS"
},
{
"check": "C9",
"item": "B7 original length vs L (worst)",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C9",
"item": "B7 curve length - L (bend fillets / laps)",
"detail": "min -16.7 / max -16.7",
"result": "INFO"
},
{
"check": "C9",
"item": "B8 bar count vs schedule",
"expected": 7,
"actual": 7,
"diff": 0,
"tol": 0,
"result": "PASS"
},
{
"check": "C9",
"item": "B8 pipes closed & paired",
"detail": "7/7",
"result": "PASS"
},
{
"check": "C9",
"item": "B8 original length vs L (worst)",
"expected": 0,
"actual": 1.0,
"diff": 1.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C9",
"item": "B8 curve length - L (bend fillets / laps)",
"detail": "min -2242.2 / max -2242.2",
"result": "INFO"
},
{
"check": "C9",
"item": "B9 bar count vs schedule",
"expected": 7,
"actual": 7,
"diff": 0,
"tol": 0,
"result": "PASS"
},
{
"check": "C9",
"item": "B9 pipes closed & paired",
"detail": "7/7",
"result": "PASS"
},
{
"check": "C9",
"item": "B9 original length vs L (worst)",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C9",
"item": "B9 curve length - L (bend fillets / laps)",
"detail": "min -20.6 / max -20.6",
"result": "INFO"
},
{
"check": "C9",
"item": "B10 bar count vs schedule",
"expected": 7,
"actual": 7,
"diff": 0,
"tol": 0,
"result": "PASS"
},
{
"check": "C9",
"item": "B10 pipes closed & paired",
"detail": "7/7",
"result": "PASS"
},
{
"check": "C9",
"item": "B10 original length vs L (worst)",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C9",
"item": "B10 curve length - L (bend fillets / laps)",
"detail": "min -20.6 / max -20.6",
"result": "INFO"
},
{
"check": "C9",
"item": "B1 layer z (worst) [derived]",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C9",
"item": "B1 positions vs chain (worst, n=31/31)",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C9",
"item": "B2 layer z (worst) [derived]",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C9",
"item": "B2 positions vs chain (worst, n=31/31)",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C9",
"item": "B3 layer z (worst) [derived]",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C9",
"item": "B3 positions vs chain (worst, n=28/28)",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C9",
"item": "B4 layer z (worst) [derived]",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C9",
"item": "B4 positions vs chain (worst, n=31/31)",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C9",
"item": "B5 layer z (worst) [derived]",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C9",
"item": "B5 positions vs chain (worst, n=31/31)",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C9",
"item": "B6 layer z (worst) [derived]",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C9",
"item": "B6 positions vs chain (worst, n=28/28)",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C9",
"item": "B9 layer z (worst) [derived]",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C9",
"item": "B9 positions vs chain (worst, n=7/7)",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C9",
"item": "B10 layer z (worst) [derived]",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C9",
"item": "B10 positions vs chain (worst, n=7/7)",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C9",
"item": "B8 levels vs chain (worst)",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C9",
"item": "B8 centreline size X [derived]",
"expected": 7345.0,
"actual": 7345.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C9",
"item": "B8 centreline size Y [derived]",
"expected": 7345.0,
"actual": 7345.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C9",
"item": "B7 positions = checkerboard of 14x14 grid [추론]",
"detail": "98 / 98",
"result": "PASS"
},
{
"check": "C9",
"item": "B7 bottom z (worst)",
"expected": 0,
"actual": 5.0,
"diff": 5.0,
"tol": 1.0,
"result": "FAIL"
},
{
"check": "C9",
"item": "B7 vertical extent a",
"expected": 2218,
"actual": 2218.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C9",
"item": "B1 sample points outside footing",
"expected": 0,
"actual": 0,
"diff": 0,
"tol": 0,
"result": "PASS"
},
{
"check": "C9",
"item": "B2 sample points outside footing",
"expected": 0,
"actual": 0,
"diff": 0,
"tol": 0,
"result": "PASS"
},
{
"check": "C9",
"item": "B3 sample points outside footing",
"expected": 0,
"actual": 0,
"diff": 0,
"tol": 0,
"result": "PASS"
},
{
"check": "C9",
"item": "B4 sample points outside footing",
"expected": 0,
"actual": 0,
"diff": 0,
"tol": 0,
"result": "PASS"
},
{
"check": "C9",
"item": "B5 sample points outside footing",
"expected": 0,
"actual": 0,
"diff": 0,
"tol": 0,
"result": "PASS"
},
{
"check": "C9",
"item": "B6 sample points outside footing",
"expected": 0,
"actual": 0,
"diff": 0,
"tol": 0,
"result": "PASS"
},
{
"check": "C9",
"item": "B7 sample points outside footing",
"expected": 0,
"actual": 0,
"diff": 0,
"tol": 0,
"result": "PASS"
},
{
"check": "C9",
"item": "B8 sample points outside footing",
"expected": 0,
"actual": 0,
"diff": 0,
"tol": 0,
"result": "PASS"
},
{
"check": "C9",
"item": "B9 sample points outside footing",
"expected": 0,
"actual": 0,
"diff": 0,
"tol": 0,
"result": "PASS"
},
{
"check": "C9",
"item": "B10 sample points outside footing",
"expected": 0,
"actual": 0,
"diff": 0,
"tol": 0,
"result": "PASS"
},
{
"check": "C9",
"item": "min cover to footing surface per mark (record; top face under the column counted)",
"detail": "{\"B1\": 69.5, \"B2\": 89.0, \"B3\": 89.0, \"B4\": 92.0, \"B5\": 66.5, \"B6\": 89.0, \"B7\": 104.5, \"B8\": 69.5, \"B9\": 92.0, \"B10\": 92.0}",
"result": "INFO"
},
{
"check": "C9",
"item": "rebar pipe colour by diameter mismatches (all rebar)",
"expected": 0,
"actual": 0,
"diff": 0,
"tol": 0,
"result": "PASS"
}
]
}
@@ -0,0 +1 @@
{"model": "C:\\Users\\User\\Desktop\\바이브코딩\\pier_T\\Code\\교각모델링앱\\검증\\ulsan_e2e_data\\울산E2E\\runs\\current\\G4.3dm", "units": "Millimeters", "tolerance": 0.001, "count": 1996, "layers": {"P1::철근::코핑::S4": [120, 120, 160, true], "P1::철근::중심선": [60, 60, 60, true], "P1::철근::코핑::S3": [120, 120, 160, true], "P1::철근::코핑::S2": [120, 120, 160, true], "P1::철근::코핑::S1": [120, 120, 160, true], "P1::철근::코핑::C14": [120, 120, 160, true], "P1::철근::코핑::C10": [120, 120, 160, true], "P1::철근::코핑::C11": [120, 120, 160, true], "P1::철근::코핑::C12": [120, 120, 160, true], "P1::철근::코핑::C13": [120, 120, 160, true], "P1::철근::코핑::C9": [120, 120, 160, true], "P1::철근::코핑::C8": [120, 120, 160, true], "P1::철근::코핑::C7": [120, 120, 160, true], "P1::철근::코핑::C5": [120, 120, 160, true], "P1::철근::코핑::C6": [120, 120, 160, true], "P1::철근::코핑::C15": [120, 120, 160, true], "P1::철근::코핑::C2": [120, 120, 160, true], "P1::철근::코핑::C4": [120, 120, 160, true], "P1::철근::코핑::C1": [120, 120, 160, true], "P1::철근::코핑::C3": [120, 120, 160, true], "P1::철근::기초::B7": [150, 110, 60, true], "P1::철근::기초::B8": [150, 110, 60, true], "P1::철근::기초::B10": [150, 110, 60, true], "P1::철근::기초::B9": [150, 110, 60, true], "P1::철근::기초::B6": [150, 110, 60, true], "P1::철근::기초::B5": [150, 110, 60, true], "P1::철근::기초::B4": [150, 110, 60, true], "P1::철근::기초::B3": [150, 110, 60, true], "P1::철근::기초::B2": [150, 110, 60, true], "P1::철근::기초::B1": [150, 110, 60, true], "P1::철근::기둥::P5": [140, 60, 160, true], "P1::철근::기둥::P2": [40, 120, 200, true], "P1::철근::기둥::P4": [90, 90, 220, true], "P1::철근::기둥::P3": [40, 170, 170, true], "P1::철근::기둥::P1": [200, 40, 40, true], "P1::받침패드": [90, 160, 90, true], "P1::받침대좌": [190, 90, 90, true], "P1::코핑": [210, 180, 80, true], "P1::기둥": [200, 140, 90, true], "P1::기초": [120, 150, 200, true], "P1::버림콘크리트": [160, 160, 160, true]}, "objects": {"P1-R-S4-B4y+600": {"layer": "P1::철근::코핑::S4", "type": "Brep", "hidden": false, "locked": false, "colour_source": 1, "colour": [140, 86, 75], "bbox": [2643.5, 1364.5, 70496.0, 3856.5, 1377.5, 71202.5], "user": {"coupler_length": "0.000", "design_length": "2600.000", "dia": "H13", "host": "P1-CP", "id": "P1-R-S4-B4y+600", "mark": "S4", "occurrence": "B4y+600", "shape": "I", "src": "받침 4 보강 상세; S1/S3 아래 단 [추론]"}, "faces": 7, "solid": true, "volume": "skipped"}, "P1-RC-S4-B4y+600": {"layer": "P1::철근::중심선", "type": "PolyCurve", "hidden": false, "locked": false, "colour_source": 0, "colour": [0, 0, 0], "bbox": [2650.0, 1371.0, 70496.0, 3850.0, 1371.0, 71196.0], "user": {"coupler_length": "0.000", "design_length": "2600.000", "dia": "H13", "host": "P1-CP", "id": "P1-RC-S4-B4y+600", "mark": "S4", "occurrence": "B4y+600", "shape": "I", "src": "받침 4 보강 상세; S1/S3 아래 단 [추론]"}, "length": 2583.261}, "P1-R-S3-B4x+600": {"layer": "P1::철근::코핑::S3", "type": "Brep", "hidden": false, "locked": false, "colour_source": 1, "colour": [140, 86, 75], "bbox": [3843.5, 164.5, 70509.0, 3856.5, 1377.5, 71215.5], "user": {"coupler_length": "0.000", "design_length": "2600.000", "dia": "H13", "host": "P1-CP", "id": "P1-R-S3-B4x+600", "mark": "S3", "occurrence": "B4x+600", "shape": "I", "src": "받침 4 보강 상세; '50','100','8@125','100','50'"}, "faces": 7, "solid": true, "volume": "skipped"}, "P1-RC-S3-B4x+600": {"layer": "P1::철근::중심선", "type": "PolyCurve", "hidden": false, "locked": false, "colour_source": 0, "colour": [0, 0, 0], "bbox": [3850.0, 171.0, 70509.0, 3850.0, 1371.0, 71209.0], "user": {"coupler_length": "0.000", "design_length": "2600.000", "dia": "H13", "host": "P1-CP", "id": "P1-RC-S3-B4x+600", "mark": "S3", "occurrence": "B4x+600", "shape": "I", "src": "받침 4 보강 상세; '50','100','8@125','100','50'"}, "length": 2583.261}, "P1-R-S4-B4y+500": {"layer": "P1::철근::코핑::S4", "type": "Brep", "hidden": false, "locked": false, "colour_source": 1, "colour": [140, 86, 75], "bbox": [2643.5, 1264.5, 70496.0, 3856.5, 1277.5, 71202.5], "user": {"coupler_length": "0.000", "design_length": "2600.000", "dia": "H13", "host": "P1-CP", "id": "P1-R-S4-B4y+500", "mark": "S4", "occurrence": "B4y+500", "shape": "I", "src": "받침 4 보강 상세; S1/S3 아래 단 [추론]"}, "faces": 7, "solid": true, "volume": "skipped"}, "P1-RC-S4-B4y+500": {"layer": "P1::철근::중심선", "type": "PolyCurve", "hidden": false, "locked": false, "colour_source": 0, "colour": [0, 0, 0], "bbox": [2650.0, 1271.0, 70496.0, 3850.0, 1271.0, 71196.0], "user": {"coupler_length": "0.000", "design_length": "2600.000", "dia": "H13", "host": "P1-CP", "id": "P1-RC-S4-B4y+500", "mark": "S4", "occurrence": "B4y+500", "shape": "I", "src": "받침 4 Line truncated
@@ -0,0 +1,109 @@
{
"gate": "G4",
"checker": "g4_polylines.py",
"verdict": "PASS",
"summary": {
"total": 129,
"passed": 129,
"failed": 0,
"cover": {
"C1": 82.5,
"C2": 82.5,
"C3": 82.9,
"C4": 82.9,
"C5": 83.5,
"C6": 83.5,
"C7": 62.5,
"C8": 61.5,
"C9": 62.0,
"C10": 88.5,
"C11": 94.9,
"C12": 88.5,
"C13": 104.2,
"C14": 92.0,
"C15": 87.8,
"S1": 112.6,
"S2": 125.6,
"S3": 90.6,
"S4": 103.6
}
},
"unplanned_fails": [],
"planned_fails": [],
"negative": {
"negH": {
"move": {
"mark": "C7",
"d": [
5,
0,
0
]
},
"new_fails": [
"C7 stirrup positions = drawn x (17) x 3",
"C7 legs at y pairs [[-1500, -250], [-1000, 1000], [250, 1500]] (A-A; corner positions [-4600, -4400, 4400, 4600] excluded)",
"C7 centreline height vs drawn + 54 (worst)"
],
"detected": true
},
"negV": {
"move": {
"mark": "C11",
"d": [
0,
0,
5
]
},
"new_fails": [
"C11 levels / drawn ends / y (32)"
],
"detected": true
}
},
"reload": {
"built": 1996,
"reopened": 1996,
"fingerprint": 1996,
"ok": true
},
"unchanged": {
"compared": 1252,
"diffs": [],
"missing": [],
"ok": true,
"against": "G3_fp.json"
},
"model": "C:\\Users\\User\\Desktop\\바이브코딩\\pier_T\\Code\\교각모델링앱\\검증\\ulsan_e2e_data\\울산E2E\\runs\\current\\G4.3dm",
"mode": "single",
"secs": 214.2,
"build_steps": [
{
"name": "G1:concrete_tapered.py",
"secs": 0.3
},
{
"name": "G2:column_rebar_ring.py",
"secs": 1.59
},
{
"name": "G3:footing_rebar_mats.py",
"secs": 0.75
},
{
"name": "G4:rebar_polylines.py",
"secs": 1.58
},
{
"name": "G4:rebar_colours.py",
"secs": 0.11
},
{
"name": "display.py",
"secs": 0.05
}
],
"inputs_sha": "d701f1270fd40f2c",
"job_id": "6edc10290d03"
}
@@ -0,0 +1,12 @@
{
"id": "6edc10290d03",
"pid": 17668,
"state": "완료",
"at": "2026-10-19 14:01:39",
"log": [
"Rhino 작업 시작",
"[G4] build G1..G4",
"[G4] re-open, check, negative tests, fingerprint",
"[G4] PASS checks 129/129 (planned FAIL 0, unplanned 0) negative H/V True/True reload True unchanged True (1252) 214.2s"
]
}
@@ -0,0 +1,657 @@
{
"summary": {
"total": 75,
"passed": 75,
"failed": 0
},
"results": [
{
"check": "C11",
"item": "bearing count",
"expected": 4,
"actual": 4,
"diff": 0,
"tol": 0,
"result": "PASS"
},
{
"check": "C11",
"item": "sole plate count",
"expected": 4,
"actual": 4,
"diff": 0,
"tol": 0,
"result": "PASS"
},
{
"check": "C11",
"item": "all 8 closed solids",
"detail": "",
"result": "PASS"
},
{
"check": "C11",
"item": "NO.1 bearing bottom = EL.'X'",
"expected": 71418,
"actual": 71418.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.1 bearing height h3",
"expected": 144,
"actual": 144.0,
"diff": 0.0,
"tol": 0.01,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.1 bearing across (B)",
"expected": 580,
"actual": 580.0,
"diff": 0.0,
"tol": 0.5,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.1 bearing along (A)",
"expected": 580,
"actual": 580.0,
"diff": 0.0,
"tol": 0.5,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.1 sole plate across W",
"expected": 800,
"actual": 800.0,
"diff": 0.0,
"tol": 0.5,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.1 sole plate along L",
"expected": 920,
"actual": 920.0,
"diff": 0.0,
"tol": 0.5,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.1 sole plate bottom = bearing top",
"expected": 71562.0,
"actual": 71562.0,
"diff": 0.0,
"tol": 0.01,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.1 bearing plan centre offset from pad (mm)",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.1 sole plate plan centre offset from pad (mm)",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.1 bearing axis vs pad (deg)",
"expected": 0.0,
"actual": 0.0,
"diff": 0.0,
"tol": 0.01,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.1 sole plate axis vs pad (deg)",
"expected": 0.0,
"actual": 0.0,
"diff": 0.0,
"tol": 0.01,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.1 sole plate slope S (%) along +Y-ward axis",
"expected": 1.896,
"actual": 1.896,
"diff": 0.0,
"tol": 0.01,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.1 sole plate centre thickness T",
"expected": 31,
"actual": 31.0,
"diff": 0.0,
"tol": 0.01,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.1 thick end at +Y",
"detail": "",
"result": "PASS"
},
{
"check": "C11",
"item": "NO.1 no transverse slope",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 0.01,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.1 overlap bearing-pad (mm3)",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.1 overlap bearing-sole plate (mm3)",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.1 colours (bearing (0, 0, 0), sole plate (150, 150, 150))",
"detail": "",
"result": "PASS"
},
{
"check": "C11",
"item": "NO.2 bearing bottom = EL.'X'",
"expected": 71288,
"actual": 71288.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.2 bearing height h3",
"expected": 144,
"actual": 144.0,
"diff": 0.0,
"tol": 0.01,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.2 bearing across (B)",
"expected": 580,
"actual": 580.0,
"diff": 0.0,
"tol": 0.5,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.2 bearing along (A)",
"expected": 580,
"actual": 580.0,
"diff": 0.0,
"tol": 0.5,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.2 sole plate across W",
"expected": 800,
"actual": 800.0,
"diff": 0.0,
"tol": 0.5,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.2 sole plate along L",
"expected": 920,
"actual": 920.0,
"diff": 0.0,
"tol": 0.5,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.2 sole plate bottom = bearing top",
"expected": 71432.0,
"actual": 71432.0,
"diff": 0.0,
"tol": 0.01,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.2 bearing plan centre offset from pad (mm)",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.2 sole plate plan centre offset from pad (mm)",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.2 bearing axis vs pad (deg)",
"expected": 0.0,
"actual": 0.0,
"diff": 0.0,
"tol": 0.01,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.2 sole plate axis vs pad (deg)",
"expected": 0.0,
"actual": 0.0,
"diff": 0.0,
"tol": 0.01,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.2 sole plate slope S (%) along +Y-ward axis",
"expected": 1.899,
"actual": 1.899,
"diff": 0.0,
"tol": 0.01,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.2 sole plate centre thickness T",
"expected": 31,
"actual": 31.0,
"diff": 0.0,
"tol": 0.01,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.2 thick end at +Y",
"detail": "",
"result": "PASS"
},
{
"check": "C11",
"item": "NO.2 no transverse slope",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 0.01,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.2 overlap bearing-pad (mm3)",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.2 overlap bearing-sole plate (mm3)",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.2 colours (bearing (0, 0, 0), sole plate (150, 150, 150))",
"detail": "",
"result": "PASS"
},
{
"check": "C11",
"item": "NO.3 bearing bottom = EL.'X'",
"expected": 71440,
"actual": 71440.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.3 bearing height h3",
"expected": 152,
"actual": 152.0,
"diff": 0.0,
"tol": 0.01,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.3 bearing across (B)",
"expected": 600,
"actual": 600.0,
"diff": 0.0,
"tol": 0.5,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.3 bearing along (A)",
"expected": 600,
"actual": 600.0,
"diff": 0.0,
"tol": 0.5,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.3 sole plate across W",
"expected": 820,
"actual": 820.0,
"diff": 0.0,
"tol": 0.5,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.3 sole plate along L",
"expected": 940,
"actual": 940.0,
"diff": 0.0,
"tol": 0.5,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.3 sole plate bottom = bearing top",
"expected": 71592.0,
"actual": 71592.0,
"diff": 0.0,
"tol": 0.01,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.3 bearing plan centre offset from pad (mm)",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.3 sole plate plan centre offset from pad (mm)",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.3 bearing axis vs pad (deg)",
"expected": 0.0,
"actual": 0.0,
"diff": 0.0,
"tol": 0.01,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.3 sole plate axis vs pad (deg)",
"expected": 0.0,
"actual": 0.0,
"diff": 0.0,
"tol": 0.01,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.3 sole plate slope S (%) along +Y-ward axis",
"expected": 1.896,
"actual": 1.896,
"diff": 0.0,
"tol": 0.01,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.3 sole plate centre thickness T",
"expected": 31,
"actual": 31.0,
"diff": 0.0,
"tol": 0.01,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.3 thick end at +Y",
"detail": "",
"result": "PASS"
},
{
"check": "C11",
"item": "NO.3 no transverse slope",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 0.01,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.3 overlap bearing-pad (mm3)",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.3 overlap bearing-sole plate (mm3)",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.3 colours (bearing (0, 0, 0), sole plate (150, 150, 150))",
"detail": "",
"result": "PASS"
},
{
"check": "C11",
"item": "NO.4 bearing bottom = EL.'X'",
"expected": 71310,
"actual": 71309.0,
"diff": -1.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.4 bearing height h3",
"expected": 152,
"actual": 152.0,
"diff": 0.0,
"tol": 0.01,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.4 bearing across (B)",
"expected": 600,
"actual": 600.0,
"diff": 0.0,
"tol": 0.5,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.4 bearing along (A)",
"expected": 600,
"actual": 600.0,
"diff": 0.0,
"tol": 0.5,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.4 sole plate across W",
"expected": 820,
"actual": 820.0,
"diff": 0.0,
"tol": 0.5,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.4 sole plate along L",
"expected": 940,
"actual": 940.0,
"diff": 0.0,
"tol": 0.5,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.4 sole plate bottom = bearing top",
"expected": 71461.0,
"actual": 71461.0,
"diff": 0.0,
"tol": 0.01,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.4 bearing plan centre offset from pad (mm)",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.4 sole plate plan centre offset from pad (mm)",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.4 bearing axis vs pad (deg)",
"expected": 0.0,
"actual": 0.0,
"diff": 0.0,
"tol": 0.01,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.4 sole plate axis vs pad (deg)",
"expected": 0.0,
"actual": 0.0,
"diff": 0.0,
"tol": 0.01,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.4 sole plate slope S (%) along +Y-ward axis",
"expected": 1.899,
"actual": 1.899,
"diff": 0.0,
"tol": 0.01,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.4 sole plate centre thickness T",
"expected": 31,
"actual": 31.0,
"diff": 0.0,
"tol": 0.01,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.4 thick end at +Y",
"detail": "",
"result": "PASS"
},
{
"check": "C11",
"item": "NO.4 no transverse slope",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 0.01,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.4 overlap bearing-pad (mm3)",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.4 overlap bearing-sole plate (mm3)",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.4 colours (bearing (0, 0, 0), sole plate (150, 150, 150))",
"detail": "",
"result": "PASS"
}
]
}
@@ -0,0 +1 @@
{"model": "C:\\Users\\User\\Desktop\\바이브코딩\\pier_T\\Code\\교각모델링앱\\검증\\ulsan_e2e_data\\울산E2E\\runs\\current\\G5.3dm", "units": "Millimeters", "tolerance": 0.001, "count": 2004, "layers": {"P1::솔플레이트": [150, 150, 150, true], "P1::교량받침": [0, 0, 0, true], "P1::철근::코핑::S4": [120, 120, 160, true], "P1::철근::중심선": [60, 60, 60, true], "P1::철근::코핑::S3": [120, 120, 160, true], "P1::철근::코핑::S2": [120, 120, 160, true], "P1::철근::코핑::S1": [120, 120, 160, true], "P1::철근::코핑::C14": [120, 120, 160, true], "P1::철근::코핑::C10": [120, 120, 160, true], "P1::철근::코핑::C11": [120, 120, 160, true], "P1::철근::코핑::C12": [120, 120, 160, true], "P1::철근::코핑::C13": [120, 120, 160, true], "P1::철근::코핑::C9": [120, 120, 160, true], "P1::철근::코핑::C8": [120, 120, 160, true], "P1::철근::코핑::C7": [120, 120, 160, true], "P1::철근::코핑::C5": [120, 120, 160, true], "P1::철근::코핑::C6": [120, 120, 160, true], "P1::철근::코핑::C15": [120, 120, 160, true], "P1::철근::코핑::C2": [120, 120, 160, true], "P1::철근::코핑::C4": [120, 120, 160, true], "P1::철근::코핑::C1": [120, 120, 160, true], "P1::철근::코핑::C3": [120, 120, 160, true], "P1::철근::기초::B7": [150, 110, 60, true], "P1::철근::기초::B8": [150, 110, 60, true], "P1::철근::기초::B10": [150, 110, 60, true], "P1::철근::기초::B9": [150, 110, 60, true], "P1::철근::기초::B6": [150, 110, 60, true], "P1::철근::기초::B5": [150, 110, 60, true], "P1::철근::기초::B4": [150, 110, 60, true], "P1::철근::기초::B3": [150, 110, 60, true], "P1::철근::기초::B2": [150, 110, 60, true], "P1::철근::기초::B1": [150, 110, 60, true], "P1::철근::기둥::P5": [140, 60, 160, true], "P1::철근::기둥::P2": [40, 120, 200, true], "P1::철근::기둥::P4": [90, 90, 220, true], "P1::철근::기둥::P3": [40, 170, 170, true], "P1::철근::기둥::P1": [200, 40, 40, true], "P1::받침패드": [90, 160, 90, true], "P1::받침대좌": [190, 90, 90, true], "P1::코핑": [210, 180, 80, true], "P1::기둥": [200, 140, 90, true], "P1::기초": [120, 150, 200, true], "P1::버림콘크리트": [160, 160, 160, true]}, "objects": {"P1-SP04": {"layer": "P1::솔플레이트", "type": "Brep", "hidden": false, "locked": false, "colour_source": 1, "colour": [150, 150, 150], "bbox": [2840.0, 301.0, 71461.0, 3660.0, 1241.0, 71500.93], "user": {"L": "940", "S": "1.899", "T": "31", "W": "820", "end_thick": "22.07/39.93", "id": "P1-SP04", "no": "4", "role": "sole plate", "src": "솔플레이트 상세 TABLE (S, L, W, T, T1, T2); L 교축 방향; S > 0 -> 두꺼운 쪽 +Y (T2 40)"}, "faces": 6, "solid": true, "volume": 23894800.0}, "P1-BB04": {"layer": "P1::교량받침", "type": "Brep", "hidden": false, "locked": false, "colour_source": 1, "colour": [0, 0, 0], "bbox": [2950.0, 471.0, 71309.0, 3550.0, 1071.0, 71461.0], "user": {"el_x": "71310", "id": "P1-BB04", "no": "4", "role": "bridge bearing", "size": "600x600x152", "src": "ELEVATION TABLE h3, A x B (교량받침 상세)"}, "faces": 6, "solid": true, "volume": 54720000.0}, "P1-SP03": {"layer": "P1::솔플레이트", "type": "Brep", "hidden": false, "locked": false, "colour_source": 1, "colour": [150, 150, 150], "bbox": [-3660.0, 329.0, 71592.0, -2840.0, 1269.0, 71631.91], "user": {"L": "940", "S": "1.896", "T": "31", "W": "820", "end_thick": "22.09/39.91", "id": "P1-SP03", "no": "3", "role": "sole plate", "src": "솔플레이트 상세 TABLE (S, L, W, T, T1, T2); L 교축 방향; S > 0 -> 두꺼운 쪽 +Y (T2 40)"}, "faces": 6, "solid": true, "volume": 23894800.0}, "P1-BB03": {"layer": "P1::교량받침", "type": "Brep", "hidden": false, "locked": false, "colour_source": 1, "colour": [0, 0, 0], "bbox": [-3550.0, 499.0, 71440.0, -2950.0, 1099.0, 71592.0], "user": {"el_x": "71440", "id": "P1-BB03", "no": "3", "role": "bridge bearing", "size": "600x600x152", "src": "ELEVATION TABLE h3, A x B (교량받침 상세)"}, "faces": 6, "solid": true, "volume": 54720000.0}, "P1-SP02": {"layer": "P1::솔플레이트", "type": "Brep", "hidden": false, "locked": false, "colour_source": 1, "colour": [150, 150, 150], "bbox": [2850.0, -1234.0, 71432.0, 3650.0, -314.0, 71471.74], "user": {"L": "920", "S": "1.899", "T": "31", "W": "800", "end_thick": "22.26/39.74", "id": "P1-SP02", "no": "2", "role": "sole plate", "src": "솔플레이트 상세 TABLE (S, L, W, T, T1, T2); L 교축 방향; S > 0 -> 두꺼운 쪽 +Y (T2 40)"}, "faces": 6, "solid": true, "volume": 22816000.0}, "P1-BB02": {"layer": "P1::교량받침", "type": "Brep", "hidden": false, "locked": false, "colour_source": 1, "colour": [0, 0, 0], "bbox": [2960.0, -1064.0, 71288.0, 3540.0, -484.0, 71432.0], "user": {"el_x": "71288", "id": "P1-BB02", "no": "2", "role": "bridge bearing", "size": "580x580x144", "src": "ELEVATION TABLE h3, A x B (교량받침 상세)"}, "faces": 6, "solid": true, "volume": 48441600.0}, "P1-SP01": {"layer": "P1::Line truncated
@@ -0,0 +1,90 @@
{
"gate": "G5",
"checker": "g5_bearings.py",
"verdict": "PASS",
"summary": {
"total": 75,
"passed": 75,
"failed": 0
},
"unplanned_fails": [],
"planned_fails": [],
"negative": {
"negH": {
"move": {
"id": "BB04",
"d": [
5,
0,
0
]
},
"new_fails": [
"NO.4 bearing plan centre offset from pad (mm)"
],
"detected": true
},
"negV": {
"move": {
"id": "SP03",
"d": [
0,
0,
5
]
},
"new_fails": [
"NO.3 sole plate bottom = bearing top"
],
"detected": true
}
},
"reload": {
"built": 2004,
"reopened": 2004,
"fingerprint": 2004,
"ok": true
},
"unchanged": {
"compared": 1996,
"diffs": [],
"missing": [],
"ok": true,
"against": "G4_fp.json"
},
"model": "C:\\Users\\User\\Desktop\\바이브코딩\\pier_T\\Code\\교각모델링앱\\검증\\ulsan_e2e_data\\울산E2E\\runs\\current\\G5.3dm",
"mode": "single",
"secs": 27.7,
"build_steps": [
{
"name": "G1:concrete_tapered.py",
"secs": 0.29
},
{
"name": "G2:column_rebar_ring.py",
"secs": 1.55
},
{
"name": "G3:footing_rebar_mats.py",
"secs": 0.76
},
{
"name": "G4:rebar_polylines.py",
"secs": 1.61
},
{
"name": "G4:rebar_colours.py",
"secs": 0.11
},
{
"name": "G5:bearings.py",
"secs": 0.03
},
{
"name": "display.py",
"secs": 0.04
}
],
"inputs_sha": "d701f1270fd40f2c",
"job_id": "173301765c62"
}
@@ -0,0 +1,12 @@
{
"id": "173301765c62",
"pid": 17668,
"state": "완료",
"at": "2026-10-19 14:02:08",
"log": [
"Rhino 작업 시작",
"[G5] build G1..G5",
"[G5] re-open, check, negative tests, fingerprint",
"[G5] PASS checks 75/75 (planned FAIL 0, unplanned 0) negative H/V True/True reload True unchanged True (1996) 27.7s"
]
}
@@ -0,0 +1,657 @@
{
"summary": {
"total": 75,
"passed": 74,
"failed": 1
},
"results": [
{
"check": "C11",
"item": "bearing count",
"expected": 4,
"actual": 4,
"diff": 0,
"tol": 0,
"result": "PASS"
},
{
"check": "C11",
"item": "sole plate count",
"expected": 4,
"actual": 4,
"diff": 0,
"tol": 0,
"result": "PASS"
},
{
"check": "C11",
"item": "all 8 closed solids",
"detail": "",
"result": "PASS"
},
{
"check": "C11",
"item": "NO.1 bearing bottom = EL.'X'",
"expected": 71418,
"actual": 71418.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.1 bearing height h3",
"expected": 144,
"actual": 144.0,
"diff": 0.0,
"tol": 0.01,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.1 bearing across (B)",
"expected": 580,
"actual": 580.0,
"diff": 0.0,
"tol": 0.5,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.1 bearing along (A)",
"expected": 580,
"actual": 580.0,
"diff": 0.0,
"tol": 0.5,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.1 sole plate across W",
"expected": 800,
"actual": 800.0,
"diff": 0.0,
"tol": 0.5,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.1 sole plate along L",
"expected": 920,
"actual": 920.0,
"diff": 0.0,
"tol": 0.5,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.1 sole plate bottom = bearing top",
"expected": 71562.0,
"actual": 71562.0,
"diff": 0.0,
"tol": 0.01,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.1 bearing plan centre offset from pad (mm)",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.1 sole plate plan centre offset from pad (mm)",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.1 bearing axis vs pad (deg)",
"expected": 0.0,
"actual": 0.0,
"diff": 0.0,
"tol": 0.01,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.1 sole plate axis vs pad (deg)",
"expected": 0.0,
"actual": 0.0,
"diff": 0.0,
"tol": 0.01,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.1 sole plate slope S (%) along +Y-ward axis",
"expected": 1.896,
"actual": 1.896,
"diff": 0.0,
"tol": 0.01,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.1 sole plate centre thickness T",
"expected": 31,
"actual": 31.0,
"diff": 0.0,
"tol": 0.01,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.1 thick end at +Y",
"detail": "",
"result": "PASS"
},
{
"check": "C11",
"item": "NO.1 no transverse slope",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 0.01,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.1 overlap bearing-pad (mm3)",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.1 overlap bearing-sole plate (mm3)",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.1 colours (bearing (0, 0, 0), sole plate (150, 150, 150))",
"detail": "",
"result": "PASS"
},
{
"check": "C11",
"item": "NO.2 bearing bottom = EL.'X'",
"expected": 71288,
"actual": 71288.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.2 bearing height h3",
"expected": 144,
"actual": 144.0,
"diff": 0.0,
"tol": 0.01,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.2 bearing across (B)",
"expected": 580,
"actual": 580.0,
"diff": 0.0,
"tol": 0.5,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.2 bearing along (A)",
"expected": 580,
"actual": 580.0,
"diff": 0.0,
"tol": 0.5,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.2 sole plate across W",
"expected": 800,
"actual": 800.0,
"diff": 0.0,
"tol": 0.5,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.2 sole plate along L",
"expected": 920,
"actual": 920.0,
"diff": 0.0,
"tol": 0.5,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.2 sole plate bottom = bearing top",
"expected": 71432.0,
"actual": 71432.0,
"diff": 0.0,
"tol": 0.01,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.2 bearing plan centre offset from pad (mm)",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.2 sole plate plan centre offset from pad (mm)",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.2 bearing axis vs pad (deg)",
"expected": 0.0,
"actual": 0.0,
"diff": 0.0,
"tol": 0.01,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.2 sole plate axis vs pad (deg)",
"expected": 0.0,
"actual": 0.0,
"diff": 0.0,
"tol": 0.01,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.2 sole plate slope S (%) along +Y-ward axis",
"expected": 1.899,
"actual": 1.899,
"diff": 0.0,
"tol": 0.01,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.2 sole plate centre thickness T",
"expected": 31,
"actual": 31.0,
"diff": 0.0,
"tol": 0.01,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.2 thick end at +Y",
"detail": "",
"result": "PASS"
},
{
"check": "C11",
"item": "NO.2 no transverse slope",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 0.01,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.2 overlap bearing-pad (mm3)",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.2 overlap bearing-sole plate (mm3)",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.2 colours (bearing (0, 0, 0), sole plate (150, 150, 150))",
"detail": "",
"result": "PASS"
},
{
"check": "C11",
"item": "NO.3 bearing bottom = EL.'X'",
"expected": 71440,
"actual": 71440.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.3 bearing height h3",
"expected": 152,
"actual": 152.0,
"diff": 0.0,
"tol": 0.01,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.3 bearing across (B)",
"expected": 600,
"actual": 600.0,
"diff": 0.0,
"tol": 0.5,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.3 bearing along (A)",
"expected": 600,
"actual": 600.0,
"diff": 0.0,
"tol": 0.5,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.3 sole plate across W",
"expected": 820,
"actual": 820.0,
"diff": 0.0,
"tol": 0.5,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.3 sole plate along L",
"expected": 940,
"actual": 940.0,
"diff": 0.0,
"tol": 0.5,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.3 sole plate bottom = bearing top",
"expected": 71592.0,
"actual": 71592.0,
"diff": 0.0,
"tol": 0.01,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.3 bearing plan centre offset from pad (mm)",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.3 sole plate plan centre offset from pad (mm)",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.3 bearing axis vs pad (deg)",
"expected": 0.0,
"actual": 0.0,
"diff": 0.0,
"tol": 0.01,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.3 sole plate axis vs pad (deg)",
"expected": 0.0,
"actual": 0.0,
"diff": 0.0,
"tol": 0.01,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.3 sole plate slope S (%) along +Y-ward axis",
"expected": 1.896,
"actual": 1.896,
"diff": 0.0,
"tol": 0.01,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.3 sole plate centre thickness T",
"expected": 31,
"actual": 31.0,
"diff": 0.0,
"tol": 0.01,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.3 thick end at +Y",
"detail": "",
"result": "PASS"
},
{
"check": "C11",
"item": "NO.3 no transverse slope",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 0.01,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.3 overlap bearing-pad (mm3)",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.3 overlap bearing-sole plate (mm3)",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.3 colours (bearing (0, 0, 0), sole plate (150, 150, 150))",
"detail": "",
"result": "PASS"
},
{
"check": "C11",
"item": "NO.4 bearing bottom = EL.'X'",
"expected": 71310,
"actual": 71309.0,
"diff": -1.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.4 bearing height h3",
"expected": 152,
"actual": 152.0,
"diff": 0.0,
"tol": 0.01,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.4 bearing across (B)",
"expected": 600,
"actual": 600.0,
"diff": 0.0,
"tol": 0.5,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.4 bearing along (A)",
"expected": 600,
"actual": 600.0,
"diff": 0.0,
"tol": 0.5,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.4 sole plate across W",
"expected": 820,
"actual": 820.0,
"diff": 0.0,
"tol": 0.5,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.4 sole plate along L",
"expected": 940,
"actual": 940.0,
"diff": 0.0,
"tol": 0.5,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.4 sole plate bottom = bearing top",
"expected": 71461.0,
"actual": 71461.0,
"diff": 0.0,
"tol": 0.01,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.4 bearing plan centre offset from pad (mm)",
"expected": 0,
"actual": 5.0,
"diff": 5.0,
"tol": 1.0,
"result": "FAIL"
},
{
"check": "C11",
"item": "NO.4 sole plate plan centre offset from pad (mm)",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.4 bearing axis vs pad (deg)",
"expected": 0.0,
"actual": 0.0,
"diff": 0.0,
"tol": 0.01,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.4 sole plate axis vs pad (deg)",
"expected": 0.0,
"actual": 0.0,
"diff": 0.0,
"tol": 0.01,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.4 sole plate slope S (%) along +Y-ward axis",
"expected": 1.899,
"actual": 1.899,
"diff": 0.0,
"tol": 0.01,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.4 sole plate centre thickness T",
"expected": 31,
"actual": 31.0,
"diff": 0.0,
"tol": 0.01,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.4 thick end at +Y",
"detail": "",
"result": "PASS"
},
{
"check": "C11",
"item": "NO.4 no transverse slope",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 0.01,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.4 overlap bearing-pad (mm3)",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.4 overlap bearing-sole plate (mm3)",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.4 colours (bearing (0, 0, 0), sole plate (150, 150, 150))",
"detail": "",
"result": "PASS"
}
]
}
@@ -0,0 +1,657 @@
{
"summary": {
"total": 75,
"passed": 74,
"failed": 1
},
"results": [
{
"check": "C11",
"item": "bearing count",
"expected": 4,
"actual": 4,
"diff": 0,
"tol": 0,
"result": "PASS"
},
{
"check": "C11",
"item": "sole plate count",
"expected": 4,
"actual": 4,
"diff": 0,
"tol": 0,
"result": "PASS"
},
{
"check": "C11",
"item": "all 8 closed solids",
"detail": "",
"result": "PASS"
},
{
"check": "C11",
"item": "NO.1 bearing bottom = EL.'X'",
"expected": 71418,
"actual": 71418.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.1 bearing height h3",
"expected": 144,
"actual": 144.0,
"diff": 0.0,
"tol": 0.01,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.1 bearing across (B)",
"expected": 580,
"actual": 580.0,
"diff": 0.0,
"tol": 0.5,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.1 bearing along (A)",
"expected": 580,
"actual": 580.0,
"diff": 0.0,
"tol": 0.5,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.1 sole plate across W",
"expected": 800,
"actual": 800.0,
"diff": 0.0,
"tol": 0.5,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.1 sole plate along L",
"expected": 920,
"actual": 920.0,
"diff": 0.0,
"tol": 0.5,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.1 sole plate bottom = bearing top",
"expected": 71562.0,
"actual": 71562.0,
"diff": 0.0,
"tol": 0.01,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.1 bearing plan centre offset from pad (mm)",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.1 sole plate plan centre offset from pad (mm)",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.1 bearing axis vs pad (deg)",
"expected": 0.0,
"actual": 0.0,
"diff": 0.0,
"tol": 0.01,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.1 sole plate axis vs pad (deg)",
"expected": 0.0,
"actual": 0.0,
"diff": 0.0,
"tol": 0.01,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.1 sole plate slope S (%) along +Y-ward axis",
"expected": 1.896,
"actual": 1.896,
"diff": 0.0,
"tol": 0.01,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.1 sole plate centre thickness T",
"expected": 31,
"actual": 31.0,
"diff": 0.0,
"tol": 0.01,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.1 thick end at +Y",
"detail": "",
"result": "PASS"
},
{
"check": "C11",
"item": "NO.1 no transverse slope",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 0.01,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.1 overlap bearing-pad (mm3)",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.1 overlap bearing-sole plate (mm3)",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.1 colours (bearing (0, 0, 0), sole plate (150, 150, 150))",
"detail": "",
"result": "PASS"
},
{
"check": "C11",
"item": "NO.2 bearing bottom = EL.'X'",
"expected": 71288,
"actual": 71288.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.2 bearing height h3",
"expected": 144,
"actual": 144.0,
"diff": 0.0,
"tol": 0.01,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.2 bearing across (B)",
"expected": 580,
"actual": 580.0,
"diff": 0.0,
"tol": 0.5,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.2 bearing along (A)",
"expected": 580,
"actual": 580.0,
"diff": 0.0,
"tol": 0.5,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.2 sole plate across W",
"expected": 800,
"actual": 800.0,
"diff": 0.0,
"tol": 0.5,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.2 sole plate along L",
"expected": 920,
"actual": 920.0,
"diff": 0.0,
"tol": 0.5,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.2 sole plate bottom = bearing top",
"expected": 71432.0,
"actual": 71432.0,
"diff": 0.0,
"tol": 0.01,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.2 bearing plan centre offset from pad (mm)",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.2 sole plate plan centre offset from pad (mm)",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.2 bearing axis vs pad (deg)",
"expected": 0.0,
"actual": 0.0,
"diff": 0.0,
"tol": 0.01,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.2 sole plate axis vs pad (deg)",
"expected": 0.0,
"actual": 0.0,
"diff": 0.0,
"tol": 0.01,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.2 sole plate slope S (%) along +Y-ward axis",
"expected": 1.899,
"actual": 1.899,
"diff": 0.0,
"tol": 0.01,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.2 sole plate centre thickness T",
"expected": 31,
"actual": 31.0,
"diff": 0.0,
"tol": 0.01,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.2 thick end at +Y",
"detail": "",
"result": "PASS"
},
{
"check": "C11",
"item": "NO.2 no transverse slope",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 0.01,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.2 overlap bearing-pad (mm3)",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.2 overlap bearing-sole plate (mm3)",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.2 colours (bearing (0, 0, 0), sole plate (150, 150, 150))",
"detail": "",
"result": "PASS"
},
{
"check": "C11",
"item": "NO.3 bearing bottom = EL.'X'",
"expected": 71440,
"actual": 71440.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.3 bearing height h3",
"expected": 152,
"actual": 152.0,
"diff": 0.0,
"tol": 0.01,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.3 bearing across (B)",
"expected": 600,
"actual": 600.0,
"diff": 0.0,
"tol": 0.5,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.3 bearing along (A)",
"expected": 600,
"actual": 600.0,
"diff": 0.0,
"tol": 0.5,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.3 sole plate across W",
"expected": 820,
"actual": 820.0,
"diff": 0.0,
"tol": 0.5,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.3 sole plate along L",
"expected": 940,
"actual": 940.0,
"diff": 0.0,
"tol": 0.5,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.3 sole plate bottom = bearing top",
"expected": 71592.0,
"actual": 71597.0,
"diff": 5.0,
"tol": 0.01,
"result": "FAIL"
},
{
"check": "C11",
"item": "NO.3 bearing plan centre offset from pad (mm)",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.3 sole plate plan centre offset from pad (mm)",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.3 bearing axis vs pad (deg)",
"expected": 0.0,
"actual": 0.0,
"diff": 0.0,
"tol": 0.01,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.3 sole plate axis vs pad (deg)",
"expected": 0.0,
"actual": 0.0,
"diff": 0.0,
"tol": 0.01,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.3 sole plate slope S (%) along +Y-ward axis",
"expected": 1.896,
"actual": 1.896,
"diff": 0.0,
"tol": 0.01,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.3 sole plate centre thickness T",
"expected": 31,
"actual": 31.0,
"diff": 0.0,
"tol": 0.01,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.3 thick end at +Y",
"detail": "",
"result": "PASS"
},
{
"check": "C11",
"item": "NO.3 no transverse slope",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 0.01,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.3 overlap bearing-pad (mm3)",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.3 overlap bearing-sole plate (mm3)",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.3 colours (bearing (0, 0, 0), sole plate (150, 150, 150))",
"detail": "",
"result": "PASS"
},
{
"check": "C11",
"item": "NO.4 bearing bottom = EL.'X'",
"expected": 71310,
"actual": 71309.0,
"diff": -1.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.4 bearing height h3",
"expected": 152,
"actual": 152.0,
"diff": 0.0,
"tol": 0.01,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.4 bearing across (B)",
"expected": 600,
"actual": 600.0,
"diff": 0.0,
"tol": 0.5,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.4 bearing along (A)",
"expected": 600,
"actual": 600.0,
"diff": 0.0,
"tol": 0.5,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.4 sole plate across W",
"expected": 820,
"actual": 820.0,
"diff": 0.0,
"tol": 0.5,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.4 sole plate along L",
"expected": 940,
"actual": 940.0,
"diff": 0.0,
"tol": 0.5,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.4 sole plate bottom = bearing top",
"expected": 71461.0,
"actual": 71461.0,
"diff": 0.0,
"tol": 0.01,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.4 bearing plan centre offset from pad (mm)",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.4 sole plate plan centre offset from pad (mm)",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.4 bearing axis vs pad (deg)",
"expected": 0.0,
"actual": 0.0,
"diff": 0.0,
"tol": 0.01,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.4 sole plate axis vs pad (deg)",
"expected": 0.0,
"actual": 0.0,
"diff": 0.0,
"tol": 0.01,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.4 sole plate slope S (%) along +Y-ward axis",
"expected": 1.899,
"actual": 1.899,
"diff": 0.0,
"tol": 0.01,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.4 sole plate centre thickness T",
"expected": 31,
"actual": 31.0,
"diff": 0.0,
"tol": 0.01,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.4 thick end at +Y",
"detail": "",
"result": "PASS"
},
{
"check": "C11",
"item": "NO.4 no transverse slope",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 0.01,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.4 overlap bearing-pad (mm3)",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.4 overlap bearing-sole plate (mm3)",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.4 colours (bearing (0, 0, 0), sole plate (150, 150, 150))",
"detail": "",
"result": "PASS"
}
]
}
@@ -0,0 +1,37 @@
{
"G1": {
"decision": "승인",
"by": "시험자",
"note": "",
"at": "2026-10-19 14:13:04",
"inputs_sha": "d701f1270fd40f2c"
},
"G2": {
"decision": "승인",
"by": "시험자",
"note": "",
"at": "2026-10-19 13:57:20",
"inputs_sha": "d701f1270fd40f2c"
},
"G3": {
"decision": "승인",
"by": "시험자",
"note": "",
"at": "2026-10-19 13:58:05",
"inputs_sha": "d701f1270fd40f2c"
},
"G4": {
"decision": "승인",
"by": "시험자",
"note": "",
"at": "2026-10-19 14:01:40",
"inputs_sha": "d701f1270fd40f2c"
},
"G5": {
"decision": "승인",
"by": "시험자",
"note": "",
"at": "2026-10-19 14:02:10",
"inputs_sha": "d701f1270fd40f2c"
}
}
@@ -0,0 +1,11 @@
{
"chapters_missing": [],
"vocab_bad": [],
"finding_rows": 0,
"finding_rows_without_source": 0,
"schedule_rows": 34,
"schedule_marks": 34,
"gate_rows": 5,
"schedule_unread": false,
"ok": true
}
@@ -0,0 +1,185 @@
# 울산E2E 교각 모델링 검토보고서 (초안)
> 앱이 게이트 결과·도면 표·승인 기록으로 자동 작성한 **초안**입니다. '오류'·'불일치' 판정과 3~5장의 서술은 담당자가 확인·확정해야 합니다. 작성일 2026-10-19 · 작성 시험자.
## 1. 개요
- 교각: 울산E2E (T형) · 좌표: 로컬(교각 중심 원점, X 교축직각, Y 교축, Z = EL×1000, mm) · 산출: .3dm
- 게이트 진행: 5/5 실행, **전 게이트 PASS·승인**
### 1.1 입력 도면
| 구분 | DWG | SHA-256(앞 16자) |
| :--- | :--- | :--- |
| D1 | 교각배근도(울산P1).dwg | 5805357b67af903e |
### 1.2 게이트 결과
| 게이트 | 내용 | 판정 | 검사 PASS | 승인 | 의견 |
| :--- | :--- | :--- | :--- | :--- | :--- |
| G1 | 형상(콘크리트·말뚝·받침대좌·패드) | PASS | 104/104 | 승인 시험자 2026-10-19 13:55:44 | - |
| G2 | 기둥 철근 | PASS | 35/35 | 승인 시험자 2026-10-19 13:57:20 | - |
| G3 | 확대기초 철근 | PASS | 63/63 | 승인 시험자 2026-10-19 13:58:05 | - |
| G4 | 코핑 철근 | PASS | 129/129 | 승인 시험자 2026-10-19 14:01:40 | - |
| G5 | 교량받침·솔플레이트 | PASS | 75/75 | 승인 시험자 2026-10-19 14:02:10 | - |
## 2. 도면 오류·불일치
자동 등재 기준: 승인된 계획 FAIL → '불일치', 계획되지 않은 FAIL과 도면 표 값·입력값 차이 → '확인 필요'.
자동으로 찾은 항목이 없습니다.
## 3. 개선방안
[담당자 작성] 2장 항목별로 도면 수정·설계자 확인 방안을 적습니다.
## 4. 추가되어야 할 사항
[담당자 작성] 도면에 없어 추정·가정으로 모델링한 사항(입력 묶음의 `[추론]` 표기)을 정리합니다.
- 자동 확인: `[추론]` 표기가 있는 입력 묶음 — column_rebar, coping_rebar, footing_rebar, materials
## 5. 누락사항
[담당자 작성] 도면에서 빠진 치수·표·상세를 적습니다.
## 6. 철근재료표 (원본 vs 모델)
원본 = 도면 재료표 판독값(동일 기호 " 해석 포함), 모델 = 게이트 검사의 본수 실측값.
| 마크 | 형식 | 직경 | 재료표 수량 | 재료표 L(mm) | 모델 본수 | 대조 | 근거 |
| :--- | :--- | :--- | :--- | :--- | :--- | :--- | :--- |
| C1 | IX | H32 | 13 | 13551 | 13 | 일치 | D1 철근재료표 (SD400) C1 |
| C2 | IX | H32 | 13 | 11061 | 13 | 일치 | D1 철근재료표 (SD400) C2 |
| C3 | IX | H32 | 12 | 13551 | 12 | 일치 | D1 철근재료표 (SD400) C3 |
| C4 | IX | H32 | 12 | 11061 | 12 | 일치 | D1 철근재료표 (SD400) C4 |
| C5 | IV | H32 | 7 | 12731 | 7 | 일치 | D1 철근재료표 (SD400) C5 |
| C6 | IV | H32 | 6 | 12731 | 6 | 일치 | D1 철근재료표 (SD400) C6 |
| C7 | II | H22 | 51 | 9190 | 51 | 일치 | D1 철근재료표 (SD400) C7 |
| C8 | II | H22 | 21 | 10666 | 21 | 일치 | D1 철근재료표 (SD400) C8 |
| C9 | II | H22 | 51 | 8931 | 51 | 일치 | D1 철근재료표 (SD400) C9 |
| C10 | III | H22 | 7 | 21711 | 7 | 일치 | D1 철근재료표 (SD400) C10 |
| C11 | VII | H22 | 32 | 7081 | 32 | 일치 | D1 철근재료표 (SD400) C11 |
| C12 | XII | H22 | 6 | 27300 | 6 | 일치 | D1 철근재료표 (SD400) C12 |
| C13 | VIII | H22 | 20 | 10880 | 20 | 일치 | D1 철근재료표 (SD400) C13 |
| C15 | I | H22 | 13 | 5520 | 13 | 일치 | D1 철근재료표 (SD400) C15 |
| P5 | I | H19 | 64 | 2595 | 64 | 일치 | D1 철근재료표 (SD400) P5 |
| C14 | I | H16 | 20 | 3600 | 20 | 일치 | D1 철근재료표 (SD400) C14 |
| P2 | VI | H16 | 70 | 8779 | 70 | 일치 | D1 철근재료표 (SD400) P2 |
| P3 | V | H16 | 12 | 7219 | 12 | 일치 | D1 철근재료표 (SD400) P3 |
| P4 | X | H16 | 25 | 7219 | 25 | 일치 | D1 철근재료표 (SD400) P4 |
| B7 | I | H13 | 98 | 2418 | 98 | 일치 | D1 철근재료표 (SD400) B7 |
| S1 | I | H13 | 22 | 2600 | 22 | 일치 | D1 철근재료표 (SD400) S1 |
| S2 | I | H13 | 22 | 2600 | 22 | 일치 | D1 철근재료표 (SD400) S2 |
| S3 | I | H13 | 22 | 2600 | 22 | 일치 | D1 철근재료표 (SD400) S3 |
| S4 | I | H13 | 22 | 2600 | 22 | 일치 | D1 철근재료표 (SD400) S4 |
| P1 | VI | H32 | 68 | 28545 | 68 | 일치 | D1 철근재료표 (SD500) P1 |
| B2 | IV | H22 | 31 | 12800 | 31 | 일치 | D1 철근재료표 (SD500) B2 |
| B3 | I | H22 | 28 | 7300 | 28 | 일치 | D1 철근재료표 (SD500) B3 |
| B5 | IV | H22 | 31 | 12800 | 31 | 일치 | D1 철근재료표 (SD500) B5 |
| B6 | I | H22 | 28 | 7300 | 28 | 일치 | D1 철근재료표 (SD500) B6 |
| B1 | I | H16 | 31 | 7300 | 31 | 일치 | D1 철근재료표 (SD500) B1 |
| B4 | I | H16 | 31 | 7300 | 31 | 일치 | D1 철근재료표 (SD500) B4 |
| B8 | V | H16 | 7 | 31581 | 7 | 일치 | D1 철근재료표 (SD500) B8 |
| B9 | III | H16 | 7 | 7500 | 7 | 일치 | D1 철근재료표 (SD500) B9 |
| B10 | III | H16 | 7 | 7500 | 7 | 일치 | D1 철근재료표 (SD500) B10 |
## 7. 철근상세 (기록)
원길이·곡선길이·피복은 판정이 아닌 기록 값입니다(요구사항 §6.2).
### 7.1 기둥 (G2)
| 항목 | 값 |
| :--- | :--- |
| P1 curve length - L (record) | min -0.9 / max -0.9 mm |
| P2 curve length - L (record) | min -252.3 / max -252.3 mm |
| P3 curve length - L (record) | min 0.4 / max 0.4 mm |
| P4 curve length - L (record) | min 0.4 / max 0.4 mm |
| P5 curve length - L (record) | min -36.7 / max -36.7 mm |
| concrete union for cover | 1 brep |
| min cover to concrete surface per mark (record) | {"P1": 109.0, "P2": 93.0, "P3": 117.8, "P4": 93.0, "P5": 93.0} |
### 7.2 확대기초 (G3)
| 항목 | 값 |
| :--- | :--- |
| B1 curve length - L (bend fillets / laps) | min 0.0 / max 0.0 |
| B2 curve length - L (bend fillets / laps) | min -1042.5 / max -1042.5 |
| B3 curve length - L (bend fillets / laps) | min 0.0 / max 0.0 |
| B4 curve length - L (bend fillets / laps) | min 0.0 / max 0.0 |
| B5 curve length - L (bend fillets / laps) | min -1042.5 / max -1042.5 |
| B6 curve length - L (bend fillets / laps) | min 0.0 / max 0.0 |
| B7 curve length - L (bend fillets / laps) | min -16.7 / max -16.7 |
| B8 curve length - L (bend fillets / laps) | min -2242.2 / max -2242.2 |
| B9 curve length - L (bend fillets / laps) | min -20.6 / max -20.6 |
| B10 curve length - L (bend fillets / laps) | min -20.6 / max -20.6 |
| min cover to footing surface per mark (record; top face under the column counted) | {"B1": 69.5, "B2": 89.0, "B3": 89.0, "B4": 92.0, "B5": 66.5, "B6": 89.0, "B7": 109.5, "B8": 69.5, "B9": 92.0, "B10": 92.0} |
### 7.3 코핑 (G4)
| 항목 | 값 |
| :--- | :--- |
| C7 mean original length vs L (variable mark, record) | mean 9162.8 / L 9190 (diff -27.2); min 6645 max 11640 |
| C8 mean original length vs L (variable mark, record) | mean 10648.0 / L 10666 (diff -18.0); min 10037 max 11796 |
| C9 mean original length vs L (variable mark, record) | mean 8904.2 / L 8931 (diff -26.8); min 6394 max 11381 |
| C10 mean original length vs L (variable mark, record) | mean 20828.4 / L 21711 (diff -882.6); min 15534 max 26122 |
| C11 mean original length vs L (variable mark, record) | mean 7081.4 / L 7081 (diff +0.4); min 3993 max 10170 |
| C12 mean original length vs L (variable mark, record) | mean 27283.1 / L 27300 (diff -16.9); min 26993 max 27607 |
| C13 mean original length vs L (variable mark, record) | mean 10880.0 / L 10880 (diff -0.0); min 10726 max 11034 |
| min cover to coping surface per mark (record; seat bars measured to the coping only) | {"C1": 82.5, "C2": 82.5, "C3": 82.9, "C4": 82.9, "C5": 83.5, "C6": 83.5, "C7": 62.5, "C8": 61.5, "C9": 62.0, "C10": 88.5, "C11": 94.9, "C12": 88.5, "C13": 104.2, "C14": 92.0, "C15": 87.8, "S1": 112.6, "S2": 125.6, "S3": 90.6, "S4": 103.6} |
## 8. 검증 방법
- 검사기는 생성 입력(params)이 아니라 도면 문자·표에서 옮긴 독립 기대값(expected)만 읽습니다.
- 게이트마다 G1부터 새로 생성 → 저장 파일을 다시 열어 검사(재로드) → 객체를 수평·수직으로 옮겨 FAIL이 나는지 확인(음성 시험) → 앞 게이트 객체 지문 비교.
- 일괄 실행(단일 Rhino 세션)으로 검사한 게이트는 중간 저장·재로드와 앞 게이트 비교를 하지 않으며, 표에 '생략(일괄 실행)'으로 적습니다. 모델은 마지막 G5만 저장합니다.
| 게이트 | 재로드 | 음성 시험 | 앞 게이트 객체 |
| :--- | :--- | :--- | :--- |
| G1 | 일치 | 수평 검출 / 수직 검출 | 불변 (0) |
| G2 | 일치 | 수평 검출 / 수직 검출 | 불변 (12) |
| G3 | 일치 | 수평 검출 / 수직 검출 | 불변 (654) |
| G4 | 일치 | 수평 검출 / 수직 검출 | 불변 (1252) |
| G5 | 일치 | 수평 검출 / 수직 검출 | 불변 (1996) |
### 8.1 입력 묶음 앱 확인 결과 요약
- 앱 확인(검사 버전 B2, 2026-10-19 13:55:17): 일치 14 · 주의 0 · 불일치 0 · 근거 없음 9 · 해당 없음 8 (전체 묶음 31개).
- 앱 확인은 도면 표·재료표 수량·고정 항목을 앱이 대조한 결과입니다. '일치'는 독립 근거와 값이 같다는 뜻이며 도면이 맞다는 보증이 아닙니다. 확정은 사람이 했고, 앱 확인이 일치가 아닌 묶음은 사유가 기록되어 있습니다.
| 묶음 | 앱 확인 | 근거 | 사람 확정 |
| :--- | :--- | :--- | :--- |
| expected:G1 | 일치 | C2 표 후보 4건이 현재 값과 모두 같다 | 시험자 2026-10-19 13:55:19 (앱 확인 일치, 사유: 시험) |
| expected:G2 | 일치 | C2 표 후보 10건이 현재 값과 모두 같다 | 시험자 2026-10-19 13:55:19 (앱 확인 일치, 사유: 시험) |
| expected:G3 | 일치 | C2 표 후보 10건이 현재 값과 모두 같다 | 시험자 2026-10-19 13:55:19 (앱 확인 일치, 사유: 시험) |
| expected:G5 | 일치 | C2 표 후보 24건이 현재 값과 모두 같다 | 시험자 2026-10-19 13:55:19 (앱 확인 일치, 사유: 시험) |
| expected:checkers | 일치 | C7 고정(F) 항목이 템플릿 원본과 같다 | 시험자 2026-10-19 13:55:19 (앱 확인 일치, 사유: 시험) |
| expected:negative | 일치 | C7 고정(F) 항목이 템플릿 원본과 같다 | 시험자 2026-10-19 13:55:19 (앱 확인 일치, 사유: 시험) |
| expected:pier_id | 일치 | C7 고정(F) 항목이 템플릿 원본과 같다 | 시험자 2026-10-19 13:55:19 (앱 확인 일치, 사유: 시험) |
| params:bearing_seats | 일치 | C2 표 후보 20건이 현재 값과 모두 같다 | 시험자 2026-10-19 13:55:19 (앱 확인 일치, 사유: 시험) |
| params:builders | 일치 | C7 고정(F) 항목이 템플릿 원본과 같다 | 시험자 2026-10-19 13:55:19 (앱 확인 일치, 사유: 시험) |
| params:display | 일치 | C7 고정(F) 항목이 템플릿 원본과 같다 | 시험자 2026-10-19 13:55:19 (앱 확인 일치, 사유: 시험) |
| params:pier_id | 일치 | C7 고정(F) 항목이 템플릿 원본과 같다 | 시험자 2026-10-19 13:55:19 (앱 확인 일치, 사유: 시험) |
| params:rebar_marks | 일치 | C2 표 후보 34건이 현재 값과 모두 같다 | 시험자 2026-10-19 13:55:19 (앱 확인 일치, 사유: 시험) |
| params:scope | 일치 | C7 고정(F) 항목이 템플릿 원본과 같다 | 시험자 2026-10-19 13:55:19 (앱 확인 일치, 사유: 시험) |
| params:sole_plates | 일치 | C2 표 후보 20건이 현재 값과 모두 같다 | 시험자 2026-10-19 13:55:19 (앱 확인 일치, 사유: 시험) |
| expected:G4 | 근거 없음 | C3 현재 값이 템플릿 원본 그대로이고 새 도면 근거가 없다 | 시험자 2026-10-19 13:55:19 (앱 확인 근거 없음, 사유: 시험) |
| params:column | 근거 없음 | C3 현재 값이 템플릿 원본 그대로이고 새 도면 근거가 없다 | 시험자 2026-10-19 13:55:19 (앱 확인 근거 없음, 사유: 시험) |
| params:column_rebar | 근거 없음 | C3 현재 값이 템플릿 원본 그대로이고 새 도면 근거가 없다 | 시험자 2026-10-19 13:55:19 (앱 확인 근거 없음, 사유: 시험) |
| params:coping | 근거 없음 | C3 현재 값이 템플릿 원본 그대로이고 새 도면 근거가 없다 | 시험자 2026-10-19 13:55:19 (앱 확인 근거 없음, 사유: 시험) |
| params:coping_rebar | 근거 없음 | C3 현재 값이 템플릿 원본 그대로이고 새 도면 근거가 없다 | 시험자 2026-10-19 13:55:19 (앱 확인 근거 없음, 사유: 시험) |
| params:footing | 근거 없음 | C3 현재 값이 템플릿 원본 그대로이고 새 도면 근거가 없다 | 시험자 2026-10-19 13:55:19 (앱 확인 근거 없음, 사유: 시험) |
| params:footing_rebar | 근거 없음 | C3 현재 값이 템플릿 원본 그대로이고 새 도면 근거가 없다 | 시험자 2026-10-19 13:55:19 (앱 확인 근거 없음, 사유: 시험) |
| params:lean_concrete | 근거 없음 | C3 현재 값이 템플릿 원본 그대로이고 새 도면 근거가 없다 | 시험자 2026-10-19 13:55:19 (앱 확인 근거 없음, 사유: 시험) |
| params:materials | 근거 없음 | C3 현재 값이 템플릿 원본 그대로이고 새 도면 근거가 없다 | 시험자 2026-10-19 13:55:19 (앱 확인 근거 없음, 사유: 시험) |
| expected:planned_fail | 해당 없음 | 사람 결정 기록 또는 참고 정보 — 앱이 도면과 대조하지 않는다 | 시험자 2026-10-19 13:55:19 (앱 확인 해당 없음, 사유: 시험) |
| expected:rebar_palette | 해당 없음 | 사람 결정 기록 또는 참고 정보 — 앱이 도면과 대조하지 않는다 | 시험자 2026-10-19 13:55:19 (앱 확인 해당 없음, 사유: 시험) |
| expected:tol_mm | 해당 없음 | 사람 결정 기록 또는 참고 정보 — 앱이 도면과 대조하지 않는다 | 시험자 2026-10-19 13:55:19 (앱 확인 해당 없음, 사유: 시험) |
| params:rebar_marks_src | 해당 없음 | 참고 정보 | 미확정 |
## 변경 이력
| 버전 | 일자 | 내용 |
| :--- | :--- | :--- |
| v0.1.00 | 2026-10-19 | 앱 자동 생성 초안 |
@@ -0,0 +1,316 @@
{
"_schema": "variability/1",
"status": "초안 — 템플릿 담당자 확정 전",
"grades": {
"V1": "값 변수",
"V2": "목록 변수",
"V3": "생성 변수",
"F": "고정"
},
"sections": {
"params:_schema": {
"grade": "F",
"source": [
"템플릿 고정"
],
"fixed_fields": [],
"note": "참고 정보(게이트가 쓰지 않음)",
"info": true
},
"params:pier_id": {
"grade": "F",
"source": [
"템플릿 고정"
],
"fixed_fields": [],
"note": "교각 식별자",
"info": false
},
"params:_meta": {
"grade": "F",
"source": [
"템플릿 고정"
],
"fixed_fields": [],
"note": "참고 정보(게이트가 쓰지 않음)",
"info": true
},
"params:scope": {
"grade": "F",
"source": [
"템플릿 고정"
],
"fixed_fields": [],
"note": "모델링 게이트 범위(실행 설정)",
"info": false
},
"params:builders": {
"grade": "F",
"source": [
"템플릿 고정"
],
"fixed_fields": [],
"note": "게이트별 생성기(실행 설정)",
"info": false
},
"params:lean_concrete": {
"grade": "V1",
"source": [
"표 밖 치수"
],
"fixed_fields": [],
"note": "버림콘크리트 치수·EL",
"info": false
},
"params:footing": {
"grade": "V1",
"source": [
"표 밖 치수"
],
"fixed_fields": [],
"note": "기초 치수·EL (rot_deg = 기초 회전 각도 값)",
"info": false
},
"params:column": {
"grade": "V1",
"source": [
"표 밖 치수"
],
"fixed_fields": [
"shape"
],
"note": "기둥 지름·높이 (단면 형식 shape는 고정)",
"info": false
},
"params:coping": {
"grade": "V2",
"source": [
"표 밖 치수"
],
"fixed_fields": [
"form"
],
"note": "코핑 외곽·치수 (형식 form은 고정)",
"info": false
},
"params:materials": {
"grade": "V1",
"source": [
"표 밖 치수"
],
"fixed_fields": [],
"note": "재료 강도 주기",
"info": false
},
"params:bearing_seats": {
"grade": "V1",
"source": [
"표",
"표 밖 치수"
],
"fixed_fields": [
"pedestal",
"pedestals"
],
"note": "받침 표 값 + 평면 위치 (대좌 구조는 고정)",
"info": false
},
"params:sole_plates": {
"grade": "V1",
"source": [
"표"
],
"fixed_fields": [
"bearing_size"
],
"note": "솔플레이트 표 값 (받침 크기 규칙은 고정)",
"info": false
},
"params:display": {
"grade": "F",
"source": [
"템플릿 고정"
],
"fixed_fields": [],
"note": "표시·색 설정",
"info": false
},
"params:rebar_marks": {
"grade": "V1",
"source": [
"표"
],
"fixed_fields": [
"*.shape"
],
"note": "재료표 직경·형상 (마크 체계의 형상은 고정)",
"info": false
},
"params:rebar_marks_src": {
"grade": "F",
"source": [
"템플릿 고정"
],
"fixed_fields": [],
"note": "참고 정보(게이트가 쓰지 않음)",
"info": true
},
"params:column_rebar": {
"grade": "V2",
"source": [
"표 밖 치수"
],
"fixed_fields": [
"form"
],
"note": "기둥 철근 사슬·위치",
"info": false
},
"params:footing_rebar": {
"grade": "V2",
"source": [
"표 밖 치수"
],
"fixed_fields": [
"form"
],
"note": "기초 철근 위치 사슬",
"info": false
},
"params:coping_rebar": {
"grade": "V3",
"source": [
"판독 스크립트"
],
"fixed_fields": [
"form",
"host",
"group"
],
"note": "코핑 철근 — 철근별 중심선 목록(판독 스크립트로 생성)",
"info": false
},
"expected:_schema": {
"grade": "F",
"source": [
"템플릿 고정"
],
"fixed_fields": [],
"note": "참고 정보(게이트가 쓰지 않음)",
"info": true
},
"expected:_note": {
"grade": "F",
"source": [
"템플릿 고정"
],
"fixed_fields": [],
"note": "참고 정보(게이트가 쓰지 않음)",
"info": true
},
"expected:pier_id": {
"grade": "F",
"source": [
"템플릿 고정"
],
"fixed_fields": [],
"note": "교각 식별자",
"info": false
},
"expected:tol_mm": {
"grade": "V1",
"source": [
"사람 입력"
],
"fixed_fields": [],
"note": "허용 오차",
"info": false
},
"expected:checkers": {
"grade": "F",
"source": [
"템플릿 고정"
],
"fixed_fields": [],
"note": "게이트별 검사기(실행 설정)",
"info": false
},
"expected:negative": {
"grade": "F",
"source": [
"템플릿 고정"
],
"fixed_fields": [],
"note": "음성 시험 대상(실행 설정)",
"info": false
},
"expected:rebar_palette": {
"grade": "V1",
"source": [
"사람 입력"
],
"fixed_fields": [],
"note": "철근 직경별 색 (사람 결정 기록)",
"info": false
},
"expected:planned_fail": {
"grade": "V1",
"source": [
"사람 입력"
],
"fixed_fields": [],
"note": "계획된 FAIL (사람 결정 기록)",
"info": false
},
"expected:G1": {
"grade": "V2",
"source": [
"표",
"표 밖 치수"
],
"fixed_fields": [],
"note": "독립 기대값 (params와 따로 도면에서 옮긴 값)",
"info": false
},
"expected:G5": {
"grade": "V2",
"source": [
"표",
"표 밖 치수"
],
"fixed_fields": [],
"note": "독립 기대값 (params와 따로 도면에서 옮긴 값)",
"info": false
},
"expected:G2": {
"grade": "V2",
"source": [
"표",
"표 밖 치수"
],
"fixed_fields": [],
"note": "독립 기대값 (params와 따로 도면에서 옮긴 값)",
"info": false
},
"expected:G3": {
"grade": "V2",
"source": [
"표",
"표 밖 치수"
],
"fixed_fields": [],
"note": "독립 기대값 (params와 따로 도면에서 옮긴 값)",
"info": false
},
"expected:G4": {
"grade": "V2",
"source": [
"표",
"표 밖 치수"
],
"fixed_fields": [],
"note": "독립 기대값 (params와 따로 도면에서 옮긴 값)",
"info": false
}
}
}