add: figma_to_html_agent/blocks/ + 변환 도구 docs 갱신

전체 401 files (397 추가 + 4 수정), 14304 insertions.

추가:
- figma_to_html_agent/blocks/ — Figma 변환 결과 (32 frame, ~79MB).
  각 frame folder = {analysis.md, flat.md, texts.md, index.html, assets/,
  _renders/, _render.py, RELATIONSHIPS.md / STATUS.md / classification.md
  (일부 frame)}.
  Phase Z 의 *figma source layer* — runtime 에서 직접 사용 X, contract /
  partial / builder adapter (미래 axis A) 의 source.
- figma_to_html_agent/DISCUSSION-SUMMARY-20260411.md — 변환 설계 회의 기록.
- figma_to_html_agent/HARNESS.md — 변환 검증 harness.
- figma_to_html_agent/scripts/fetch_figma_screenshots.py — Figma 스크린샷 자동 수집.

수정:
- figma_to_html_agent/PROCESS-CONTROL.md / PROCESS.md / RULES.md —
  변환 프로세스 / 룰 갱신 (R8/R9 lock 강화 등).
- figma_to_html_agent/blocks_index.md — 32 frame 인덱스 갱신.

Phase Z 영향 0 (figma_to_html_agent/blocks/ 가 V4 catalog +
templates/phase_z2/families adapter 의 source — runtime 에서 직접 import X).

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
2026-05-08 09:41:05 +09:00
parent cc2f434000
commit 9fbe3ac90c
401 changed files with 14304 additions and 2 deletions

Binary file not shown.

After

Width:  |  Height:  |  Size: 368 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 374 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 333 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 343 KiB

View File

@@ -0,0 +1,62 @@
# Frame 1171281195 — BIM과 DX의 이해
## 내용 설명
두 개념(BIM, DX)을 여러 관점에서 행별로 비교하는 표 디자인.
좌우 2개 컬럼(BIM/DX)을 상단에 두고, 하단에 관점별
(범위·S/W·프로세스·성과품·활용·확장성·수행개념·수행주체)
행을 나열해 개념 차이와 상호관계를 정리한다.
2개 용어·개념의 다면 비교, 용어 혼용 정리에 적합.
3개 이상 비교 대상이나 단일 개념 설명에는 부적합.
## 후보 키워드
BIM, DX, 범위, 성과품, 확장성, 수행개념, 수행주체, 프로세스, 활용, 비교, 상호관계, 혼용
## 정제 Anchor Sets
- **bim_dx**: BIM, DX _[min_hits=2, cap=0.7, exempt_if≥0.5]_
- note: 2-term generic pair. BIM·DX가 본문에 둘 다 등장해도 그것만으로 "비교 주제" 라고 단정하지 않음 — 우연 언급일 수 있음. 같은 템플릿의 다른 anchor set이 0.50 이상 매칭이면 cap 면제 (진짜 비교 주제).
- **comparison_dimensions**: 범위, 성과품, 확장성, 수행개념, 수행주체, 프로세스, 활용
- **term_comparison**: 비교, 상호관계, 혼용
## 구조 매칭 정보
- **family**: table
- **layout**: compare-rows
- **axis**: vertical
- **relation_type**: compare
- **cardinality**: ideal 2 / min 2 / max 2
- **slots** (4개, required 4개): title, col_a_label, col_b_label, rows
- **source title**: BIM과 DX의 이해
- **original layout**: compare-rows
## 적합/부적합 기준
### suits
- 2개 개념·용어를 여러 관점에서 비교
- 용어 혼용 정리
- 다면 비교표
### not_suits
- 시간 순서
- 원인-결과 흐름
- 3개 이상 비교 대상
- 1개 개념만 설명
- 병렬 나열(비교 없음)
## 재구성 허용
- **split**: False
- **merge**: True
- **infer_missing_slot**: False
- **rewrite_label**: True
- **rewrite_body**: True
## 메타
- schema_version: template-fit-v1 mirror
- source_of_truth: structure_ontology.yaml + keyword_base.yaml
- structure_content_original_tagged_by: claude-opus-4-7 (2026-04-21)
- keyword_base_sync_at: 2026-04-22
- anchor_sets_cleaned_at: 2026-04-22

View File

@@ -0,0 +1,17 @@
# Frame 1171281195 — BIM과 DX의 이해
## 구조
- **layout**: compare-rows
- **detail**: BIM vs DX 다행 비교표 — 관점별(범위/S·W/프로세스/성과품/활용/확장성/수행개념/주체) 좌우 행별 대조. 상단 영문 타이틀(BIM/DX) + 한글 명칭
## 내용
BIM과 DX 용어 혼용 정리 — 개념 범위·S/W·프로세스·성과품·활용·확장성·수행개념·주체 등 관점별 행별 비교. 두 용어의 개념 차이와 상호관계 해설.
## 후보 키워드
BIM, DX, 범위, 성과품, 확장성, 수행개념, 수행주체, 발주처, 설계사, 시공사, 용어비교, 상호관계, 혼용, 프로세스, 활용, 운영, 의존, 상용, CIVIL, IT, 구체, 소극, 적극, 해외, 국내, 건설, 디지털, S/W
## 메타
- source: texts.md + flat.md
- schema_version: analysis-v1
- tagged_by: claude-opus-4-7
- tagged_at: 2026-04-21

Binary file not shown.

After

Width:  |  Height:  |  Size: 109 KiB

View File

@@ -0,0 +1,9 @@
<svg preserveAspectRatio="none" width="100%" height="100%" overflow="visible" style="display: block;" viewBox="0 0 192 169" fill="none" xmlns="http://www.w3.org/2000/svg">
<path id="Vector" d="M192 169L179.022 154.254C168.646 142.474 159.023 133.381 145.754 127.296C133.472 121.666 118.062 118.732 97.6292 118.185V165.326L0 82.663L97.6292 0V47.3981C131.266 48.7758 156.328 59.8343 172.195 80.3485C185.335 97.3587 192 120.867 192 150.291V169Z" fill="url(#paint0_linear_101_190)"/>
<defs>
<linearGradient id="paint0_linear_101_190" x1="0" y1="84.5" x2="192" y2="84.5" gradientUnits="userSpaceOnUse">
<stop/>
<stop offset="1" stop-opacity="0.3"/>
</linearGradient>
</defs>
</svg>

After

Width:  |  Height:  |  Size: 677 B

View File

@@ -0,0 +1,90 @@
# Frame 1171281195 — 실측 기록 (flat)
> 원본: 1868 × 1908 px (node 106:252)
> 패턴: compare-vs-rows (BIM vs DX 비교 표)
> Scale: 1280 / 1868 = 0.68524
## 구조
```
Frame 106:252 (1868 × 1908)
├── 106:254 타이틀 (0, 0) 570×85
│ ├── 106:256 아이콘 IMG (0, 5.5) 50×50
│ └── 106:257 TEXT "BIM과 DX의 이해" (65, -8) 512×101 — 70px Bold gradient(#CC5200→#883700)
├── 106:307 서브헤더 바 (65, 103) 1803×75 — CSS gradient, border-radius:50px
├── 106:308 TEXT "BIM vs. DX" (331, 100) 1193×80 — 55px Bold white
├── 중앙 카테고리 뱃지 12개 (813, y) 242×h — CSS gradient, border-radius:10px
│ ├── 106:271 "BIM/DX" (813, 205) 242×83
│ ├── 106:273 "S/W" (813, 321) 242×138
│ ├── 106:275 "프로세스" (813, 492) 242×84
│ ├── 106:277 "성과물" (813, 609) 242×138
│ ├── 106:279 "활 용" (813, 780) 242×83
│ ├── 106:281 "확장성" (813, 896) 242×83
│ ├── 106:283 "수행개념" (813, 1012) 242×84
│ ├── 106:285 "CIVIL + IT" (813, 1129) 242×82
│ ├── 106:287 "주 체" (813, 1244) 242×83
│ ├── 106:289 "발주처" (813, 1360) 242×83
│ ├── 106:291 "설계사" (813, 1476) 242×84
│ └── 106:293 "시공사" (813, 1593) 242×140
├── BIM 측 텍스트 12개 (left:780, -translateX(100%) -translateY(50%))
│ ├── 106:258 center_y=243.5 "Only 3D" — 40px Bold #5c3714
│ ├── 106:259 center_y=385.5 "모델 제작용 상용 S/W..."
│ ├── 106:260 center_y=533.5 "기존 2D 설계방식 유지"
│ ├── 106:261 center_y=678 "3D 모델 중심 기존 성과품 유지"
│ ├── 106:262 center_y=822.5 "3D 모델에 의한 일반적 이해 향상"
│ ├── 106:263 center_y=942 "(설계/시공/운영) 분야별 단절"
│ ├── 106:264 center_y=1061.5 "단순화(오류) - 수동적/집단적 동질화"
│ ├── 106:265 center_y=1181.5 "소극적, 상용 기술에 의존"
│ ├── 106:266 center_y=1295 "S/W 제작사 판매 정책에 의존"
│ ├── 106:267 center_y=1409 "평준화, 국내 중심"
│ ├── 106:268 center_y=1524 "소규모 BIM팀 운영 + 단순교육에 집중"
│ └── 106:269 center_y=1662 "국내 토목 소극적/해외 토목증가"
├── DX 측 텍스트 12개 (left:1088, -translateY(50%))
│ ├── 106:295 center_y=239.5 "BIM << DX (ENG. + Management 포함)" — 40px Bold #285b4a
│ ├── 106:296 center_y=378.5 "제작 및 운영..."
│ ├── 106:297 center_y=527.5 "근본적 문제의식을 통한 개선"
│ ├── 106:298 center_y=670 "공학 정보 및 콘텐츠 연계에 집중..."
│ ├── 106:299 center_y=822 "설계/시공의 혁신(개념의 재정립)"
│ ├── 106:300 center_y=935.5 "전 생애주기 활용 시스템"
│ ├── 106:301 center_y=1054 "구체화(복잡) - 적극/구체적 실현 방안"
│ ├── 106:302 center_y=1170 "적극적, 주체적인 기술 접목/융합"
│ ├── 106:303 center_y=1283 "자체 수행능력 - 지속가능성 확보"
│ ├── 106:304 center_y=1399 "차별화 및 경쟁력 확보, 해외 진출"
│ ├── 106:305 center_y=1518 "IT + CIVIL ENG 220명 운영 + 기술 개발"
│ └── 106:306 center_y=1661.5 "분야 확장 모델 및 시스템"
├── 106:309 결론 박스 (427, 1738) 1214×170 — #FAEDCB multiply → CSS
├── 106:310 TEXT 결론 (446, 1730) — 50px/55px Bold black+#ae3607
└── 106:311 화살표 IMG — SVG path, rotate(180deg)
```
## 에셋
| hash | 의미 | CSS 변환 |
|------|------|---------|
| b0e9fad5...png | 타이틀 아이콘 | 이미지 유지 |
| 7713e15d...svg | 결론 박스 (사각형 #FAEDCB multiply) | ✓ CSS |
| bf175527...svg | 화살표 (복잡 path) | 이미지 유지 |
## 색상
| 요소 | 값 |
|------|------|
| 타이틀 gradient | linear-gradient(#CC5200, #883700) |
| 서브헤더 바 | linear-gradient(270deg, rgb(40,91,74), rgba(40,91,74,0.8) 30%, rgba(74,64,38,0.8) 70%, rgb(74,64,38)) |
| 카테고리 뱃지 | linear-gradient(270deg, rgba(40,91,74,0.8), rgba(40,91,74,0.64) 30%, rgba(74,64,38,0.64) 70%, rgba(74,64,38,0.8)) |
| BIM 측 텍스트 | #5c3714 |
| DX 측 텍스트 | #285b4a |
| 결론 강조 | #ae3607 |
| 결론 배경 | #FAEDCB, mix-blend-mode: multiply |
## 변형 가능 축
- rows[N=8~15] (required) — 각 행: left_text + center_label + right_text
- title (required)
- conclusion (optional)
- arrow_decoration (optional)

View File

@@ -0,0 +1,241 @@
<!DOCTYPE html>
<html lang="ko">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=1280">
<title>BIM vs DX 비교 (Frame 1171281195)</title>
<!--
Frame: 106:252, 1868×1908 px
Scale: 1280 / 1868 = 0.68524
패턴: compare-vs-rows
구조: R17 (행 flex column + 각 행 flex row) + R19 (zoom)
불릿: list-style disc inside
-->
<link rel="preconnect" href="https://fonts.googleapis.com">
<link href="https://fonts.googleapis.com/css2?family=Noto+Sans+KR:wght@400;700;900&display=swap" rel="stylesheet">
<style>
* { margin:0; padding:0; box-sizing:border-box; }
body {
font-family: 'Noto Sans KR', sans-serif;
background: #e8ecf0;
display: flex; justify-content: center; align-items: center;
min-height: 100vh; word-break: keep-all;
}
.slide {
width: 1280px;
background: #fff; position: relative;
box-shadow: 0 4px 20px rgba(0,0,0,.15);
}
.block { width: 1280px; position: relative; overflow: hidden; }
.inner {
width: 1868px;
zoom: 0.68524; /* R19 */
}
/* 타이틀 */
.title-row { display: flex; align-items: center; gap: 15px; height: 85px; }
.title-icon { width: 50px; height: 61px; display: flex; align-items: center; justify-content: center; flex: none; }
.title-icon img { width: 50px; height: 50px; object-fit: cover; }
.title-text {
font-weight: 700; font-size: 70px; line-height: normal; white-space: nowrap;
background: linear-gradient(rgb(204,82,0), rgb(136,55,0));
-webkit-background-clip: text; background-clip: text; -webkit-text-fill-color: transparent;
text-shadow: 0 0 4px #322c1e;
}
/* 서브헤더 바 */
.subheader {
margin: 18px 65px 15px;
height: 75px; border-radius: 50px;
background: linear-gradient(270deg, rgb(40,91,74) 0%, rgba(40,91,74,0.8) 30%, rgba(74,64,38,0.8) 70%, rgb(74,64,38) 100%);
display: flex; align-items: center; justify-content: center;
}
.subheader span {
font-weight: 700; font-size: 55px; color: #fff; line-height: normal;
white-space: pre-wrap;
}
/* 비교 행 컨테이너 (flex column, R17) */
.compare-rows {
display: flex;
flex-direction: column;
padding: 0 22px;
gap: 8px; /* 행 간 여백 */
}
/* 각 비교 행 (flex row: left | badge | right) */
.compare-row {
display: flex;
align-items: stretch; /* badge와 좌우 텍스트가 같은 높이 */
}
.compare-row .col-left {
flex: 1;
font-weight: 700; font-size: 40px; color: #5c3714;
text-align: right; line-height: 1.3;
padding: 12px 15px 12px 25px;
display: flex; flex-direction: column; justify-content: center;
}
.compare-row .col-badge {
flex: none; width: 242px;
border-radius: 10px; padding: 12px 20px;
background: linear-gradient(270deg, rgba(40,91,74,0.8) 0%, rgba(40,91,74,0.64) 30%, rgba(74,64,38,0.64) 70%, rgba(74,64,38,0.8) 100%);
display: flex; align-items: center; justify-content: center;
align-self: stretch; /* 행 높이에 맞춤 */
}
.compare-row .col-badge span {
font-weight: 700; font-size: 40px; color: #fff;
text-align: center; line-height: normal; white-space: nowrap;
}
.compare-row .col-right {
flex: 1;
font-weight: 700; font-size: 40px; color: #285b4a;
line-height: 1.3;
padding: 12px 25px 12px 15px;
display: flex; flex-direction: column; justify-content: center;
}
.compare-row .col-left ul,
.compare-row .col-right ul { list-style: disc inside; padding: 0; margin: 0; }
/* 결론 영역 — arrow + box + text 한 컴포넌트 */
.conclusion {
margin: 40px 22px 20px;
display: flex;
align-items: flex-start;
gap: 15px;
}
.conclusion .arrow {
flex: none;
width: 192px; height: 169px;
}
.conclusion .arrow img { width: 100%; height: 100%; transform: rotate(180deg); }
.conclusion .content {
flex: 1;
position: relative;
min-height: 170px;
display: flex; align-items: center; justify-content: center;
}
.conclusion .bg {
position: absolute; inset: 0;
background: #FAEDCB;
mix-blend-mode: multiply;
}
.conclusion .text {
position: relative; z-index: 1;
line-height: 90px;
text-align: center;
padding: 15px 30px;
}
.conclusion .text .normal { font-weight: 700; font-size: 50px; color: #000; }
.conclusion .text .accent { font-weight: 700; font-size: 55px; color: #ae3607; }
</style>
</head>
<body>
<div class="slide">
<div class="block">
<div class="inner">
<!-- 타이틀 -->
<div class="title-row">
<div class="title-icon"><img src="assets/b0e9fad5b03f4d9e368524976c20c9886392e17b.png" alt=""></div>
<div class="title-text">BIM과 DX의 이해</div>
</div>
<!-- 서브헤더 -->
<div class="subheader">
<span> BIM vs. DX</span>
</div>
<!-- 비교 행 (flex column, R17) -->
<div class="compare-rows">
<div class="compare-row">
<div class="col-left"><ul><li>Only 3D</li></ul></div>
<div class="col-badge"><span>BIM/DX</span></div>
<div class="col-right"><ul><li>BIM &lt;&lt; DX <span style="font-size:35px;">(ENG. + Management 포함)</span></li></ul></div>
</div>
<div class="compare-row">
<div class="col-left"><ul><li><span style="font-size:40px;">모델 제작용 상용 S/W</span><br><span style="font-size:35px;">[Civil 3D, Revit, Navisworks, Autocad]</span></li></ul></div>
<div class="col-badge"><span>S/W</span></div>
<div class="col-right"><ul><li><span style="font-size:40px;">제작 및 운영 (상용 + 전용 40~80개)</span><br><span style="font-size:35px;">[Rhino, Sketchup, Blender ..] + [EG-BIM 등]</span></li></ul></div>
</div>
<div class="compare-row">
<div class="col-left"><ul><li>기존 2D 설계방식 유지</li></ul></div>
<div class="col-badge"><span>프로세스</span></div>
<div class="col-right"><ul><li>근본적 문제의식을 통한 개선</li></ul></div>
</div>
<div class="compare-row">
<div class="col-left"><ul><li>3D 모델 중심</li><li>기존 성과품 유지</li></ul></div>
<div class="col-badge"><span>성과물</span></div>
<div class="col-right"><ul><li>공학 정보 및 콘텐츠 연계에 집중</li><li>도면, 수량, 시공계획 등 일식</li></ul></div>
</div>
<div class="compare-row">
<div class="col-left"><ul><li>3D 모델에 의한 일반적 이해 향상</li></ul></div>
<div class="col-badge"><span>&nbsp;&nbsp;</span></div>
<div class="col-right"><ul><li>설계/시공의 혁신(개념의 재정립)</li></ul></div>
</div>
<div class="compare-row">
<div class="col-left"><ul><li>(설계/시공/운영) 분야별 단절</li></ul></div>
<div class="col-badge"><span>확장성</span></div>
<div class="col-right"><ul><li>전 생애주기 활용 시스템</li></ul></div>
</div>
<div class="compare-row">
<div class="col-left"><ul><li>단순화(오류) - 수동적/집단적 동질화</li></ul></div>
<div class="col-badge"><span>수행개념</span></div>
<div class="col-right"><ul><li>구체화(복잡) - 적극/구체적 실현 방안</li></ul></div>
</div>
<div class="compare-row">
<div class="col-left"><ul><li>소극적, 상용 기술에 의존</li></ul></div>
<div class="col-badge"><span>CIVIL + IT</span></div>
<div class="col-right"><ul><li>적극적, 주체적인 기술 접목/융합</li></ul></div>
</div>
<div class="compare-row">
<div class="col-left"><ul><li>S/W 제작사 판매 정책에 의존</li></ul></div>
<div class="col-badge"><span>&nbsp;&nbsp;</span></div>
<div class="col-right"><ul><li>자체 수행능력 - 지속가능성 확보</li></ul></div>
</div>
<div class="compare-row">
<div class="col-left"><ul><li>평준화, 국내 중심</li></ul></div>
<div class="col-badge"><span>발주처</span></div>
<div class="col-right"><ul><li>차별화 및 경쟁력 확보, 해외 진출</li></ul></div>
</div>
<div class="compare-row">
<div class="col-left"><ul><li>소규모 BIM팀 운영 + 단순교육에 집중</li></ul></div>
<div class="col-badge"><span>설계사</span></div>
<div class="col-right"><ul><li>IT + CIVIL ENG 220명 운영 + 기술 개발</li></ul></div>
</div>
<div class="compare-row">
<div class="col-left"><ul><li>국내 토목 소극적/해외 토목증가</li></ul></div>
<div class="col-badge"><span>시공사</span></div>
<div class="col-right"><ul><li>분야 확장 모델 및 시스템</li></ul></div>
</div>
</div>
<!-- 결론 (arrow + box + text 한 컴포넌트) -->
<div class="conclusion">
<div class="arrow"><img src="assets/bf1755273910e17f7a012ce2d269a93cca9483ac.svg" alt=""></div>
<div class="content">
<div class="bg"></div>
<div class="text">
<span class="normal">BIM은 건설산업의 DX(디지털전환)을 수행하는 과정에서</span><br>
<span class="accent">가장 기초가 되는 일부분</span><span class="normal">임을 인지하는 것이 매우 중요</span>
</div>
</div>
</div>
</div>
</div>
</div>
</body>
</html>

View File

@@ -0,0 +1,52 @@
# Frame 1171281195 — 텍스트 (TF-IDF 매칭용)
## 타이틀
- BIM과 DX의 이해
## 서브헤더
- BIM vs. DX
## BIM 측 (좌)
- Only 3D
- 모델 제작용 상용 S/W [Civil 3D, Revit, Navisworks, Autocad]
- 기존 2D 설계방식 유지
- 3D 모델 중심 기존 성과품 유지
- 3D 모델에 의한 일반적 이해 향상
- (설계/시공/운영) 분야별 단절
- 단순화(오류) - 수동적/집단적 동질화
- 소극적, 상용 기술에 의존
- S/W 제작사 판매 정책에 의존
- 평준화, 국내 중심
- 소규모 BIM팀 운영 + 단순교육에 집중
- 국내 토목 소극적/해외 토목증가
## 카테고리 (중앙)
- BIM/DX
- S/W
- 프로세스
- 성과물
- 활용
- 확장성
- 수행개념
- CIVIL + IT
- 주체
- 발주처
- 설계사
- 시공사
## DX 측 (우)
- BIM << DX (ENG. + Management 포함)
- 제작 및 운영 (상용 + 전용 40~80개) [Rhino, Sketchup, Blender ..] + [EG-BIM 등]
- 근본적 문제의식을 통한 개선
- 공학 정보 및 콘텐츠 연계에 집중 도면, 수량, 시공계획 등 일식
- 설계/시공의 혁신(개념의 재정립)
- 전 생애주기 활용 시스템
- 구체화(복잡) - 적극/구체적 실현 방안
- 적극적, 주체적인 기술 접목/융합
- 자체 수행능력 - 지속가능성 확보
- 차별화 및 경쟁력 확보, 해외 진출
- IT + CIVIL ENG 220명 운영 + 기술 개발
- 분야 확장 모델 및 시스템
## 결론
- BIM은 건설산업의 DX(디지털전환)을 수행하는 과정에서 가장 기초가 되는 일부분임을 인지하는 것이 매우 중요