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:
BIN
figma_to_html_agent/blocks/1171281180/_renders/flex.png
Normal file
BIN
figma_to_html_agent/blocks/1171281180/_renders/flex.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 129 KiB |
BIN
figma_to_html_agent/blocks/1171281180/_renders/slide_flex.png
Normal file
BIN
figma_to_html_agent/blocks/1171281180/_renders/slide_flex.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 122 KiB |
62
figma_to_html_agent/blocks/1171281180/analysis.md
Normal file
62
figma_to_html_agent/blocks/1171281180/analysis.md
Normal file
@@ -0,0 +1,62 @@
|
||||
# Frame 1171281180 — 시공 전 모델 기반 시공상세 정보물
|
||||
|
||||
## 내용 설명
|
||||
|
||||
시공 전 모델 기반 시공상세 정보물을 활용한 시공계획 작성 지원
|
||||
내용을 세로 스택 리스트로 제시하는 디자인. 타이틀 + 세로 라벨 +
|
||||
여러 항목(정보물·모델·시뮬레이션·도면·성과물)을 수직으로 나열.
|
||||
시공 전 계획 단계 정보물 나열·3D 모델 기반 시공 산출물 목록·
|
||||
시공계획 작성 지원 도구 정리에 적합. 주체별 나열·비교 구조·
|
||||
2개 대조·3개 이하 항목·시간 순서 단계·필수요건 나열에는 부적합.
|
||||
|
||||
## 후보 키워드
|
||||
|
||||
시공전모델, 시공상세정보물, 시공계획, 계획작성, 정보물, 모델, 시뮬레이션, 도면, 성과물, 3D모델, 지원
|
||||
|
||||
## 정제 Anchor Sets
|
||||
|
||||
- **pre_construction**: 시공전모델, 시공상세정보물, 시공계획, 계획작성
|
||||
- **deliverables**: 정보물, 모델, 시뮬레이션, 도면, 성과물, 3D모델
|
||||
- **support_context**: 지원
|
||||
|
||||
## 구조 매칭 정보
|
||||
|
||||
- **family**: list
|
||||
- **layout**: list-stacked-vertical
|
||||
- **axis**: vertical
|
||||
- **relation_type**: parallel
|
||||
- **cardinality**: ideal 5 / min 4 / max 6
|
||||
- **slots** (3개, required 3개): title, side_label, items
|
||||
- **source title**: 시공 전 모델 기반 시공상세 정보물
|
||||
- **original layout**: list-stacked
|
||||
|
||||
## 적합/부적합 기준
|
||||
|
||||
### suits
|
||||
- 시공 전 계획 단계 정보물 나열
|
||||
- 3D 모델 기반 시공 산출물 목록
|
||||
- 시공계획 도구 정리
|
||||
|
||||
### not_suits
|
||||
- 주체별 나열 (발주자/시공자/설계자)
|
||||
- 비교 구조 (대조)
|
||||
- 2개 대조
|
||||
- 3개 이하 항목
|
||||
- 시간 순서 단계
|
||||
- 필수요건 나열 (기술/사람/자연)
|
||||
|
||||
## 재구성 허용
|
||||
|
||||
- **split**: True
|
||||
- **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
|
||||
@@ -0,0 +1,17 @@
|
||||
# Frame 1171281180 — 시공 전 모델 기반 시공상세 정보물
|
||||
|
||||
## 구조
|
||||
- **layout**: list-stacked
|
||||
- **detail**: 타이틀("시공 전 모델 기반 시공상세 정보물 이용한 시공계획 작성 지원") + 세로 라벨 + 수직 리스트 항목들
|
||||
|
||||
## 내용
|
||||
시공 전 모델 기반 시공상세 정보물 활용 — 시공계획 작성 지원을 위한 정보물·모델·시뮬레이션·도면·성과물 리스트.
|
||||
|
||||
## 후보 키워드
|
||||
시공전모델, 시공상세정보물, 시공계획, 정보물, 모델, 시뮬레이션, 도면, 성과물, 계획작성, 지원, 3D모델
|
||||
|
||||
## 메타
|
||||
- source: texts.md + flat.md
|
||||
- schema_version: analysis-v1
|
||||
- tagged_by: claude-opus-4-7
|
||||
- tagged_at: 2026-04-21
|
||||
@@ -0,0 +1,3 @@
|
||||
<svg preserveAspectRatio="none" width="100%" height="100%" overflow="visible" style="display: block;" viewBox="0 0 22.4 16.8" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<path id="Vector" d="M21.4629 0.5L11.1191 15.8984L0.930664 0.5H21.4629Z" fill="var(--fill-0, black)" stroke="var(--stroke-0, white)"/>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 316 B |
@@ -0,0 +1,30 @@
|
||||
<svg preserveAspectRatio="none" width="100%" height="100%" overflow="visible" style="display: block;" viewBox="0 0 210.699 489.919" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<g id="Mask group" filter="url(#filter0_d_106_321)">
|
||||
<mask id="mask0_106_321" style="mask-type:alpha" maskUnits="userSpaceOnUse" x="0" y="0" width="201" height="475">
|
||||
<path id="Intersect" d="M0 58.1721C0 62.7691 3.14483 66.7452 7.5533 68.0482C80.6773 89.662 134.036 157.329 134.036 237.46C134.036 317.59 80.677 385.255 7.55332 406.868C3.14484 408.171 0 412.148 0 416.745V465.118C0 471.337 5.62415 476.059 11.6872 474.677C119.925 450.01 200.699 353.169 200.699 237.46C200.699 121.751 119.925 24.9083 11.6872 0.241745C5.62413 -1.13998 0 3.58191 0 9.80042V58.1721Z" fill="url(#paint0_linear_106_321)"/>
|
||||
</mask>
|
||||
<g mask="url(#mask0_106_321)">
|
||||
<rect id="Rectangle 43991" y="-0.00117085" width="270" height="95" fill="var(--fill-0, #FD9164)" fill-opacity="0.8"/>
|
||||
<rect id="Rectangle 43992" y="94.9988" width="270" height="95" fill="var(--fill-0, #F29700)" fill-opacity="0.8"/>
|
||||
<rect id="Rectangle 43993" x="-54" y="189.999" width="270" height="95" fill="var(--fill-0, #FCC948)" fill-opacity="0.8"/>
|
||||
<rect id="Rectangle 43994" y="284.999" width="270" height="95" fill="var(--fill-0, #C3D601)" fill-opacity="0.8"/>
|
||||
<rect id="Rectangle 43995" y="379.999" width="270" height="95" fill="var(--fill-0, #65C6C4)" fill-opacity="0.8"/>
|
||||
</g>
|
||||
</g>
|
||||
<defs>
|
||||
<filter id="filter0_d_106_321" x="0" y="0" width="210.699" height="489.919" filterUnits="userSpaceOnUse" color-interpolation-filters="sRGB">
|
||||
<feFlood flood-opacity="0" result="BackgroundImageFix"/>
|
||||
<feColorMatrix in="SourceAlpha" type="matrix" values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 127 0" result="hardAlpha"/>
|
||||
<feOffset dx="5" dy="10"/>
|
||||
<feGaussianBlur stdDeviation="2.5"/>
|
||||
<feComposite in2="hardAlpha" operator="out"/>
|
||||
<feColorMatrix type="matrix" values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.3 0"/>
|
||||
<feBlend mode="normal" in2="BackgroundImageFix" result="effect1_dropShadow_106_321"/>
|
||||
<feBlend mode="normal" in="SourceGraphic" in2="effect1_dropShadow_106_321" result="shape"/>
|
||||
</filter>
|
||||
<linearGradient id="paint0_linear_106_321" x1="121.177" y1="-3.68723" x2="22.5301" y2="487.856" gradientUnits="userSpaceOnUse">
|
||||
<stop stop-color="#6FD6D8"/>
|
||||
<stop offset="1" stop-color="#14706E"/>
|
||||
</linearGradient>
|
||||
</defs>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 2.3 KiB |
68
figma_to_html_agent/blocks/1171281180/flat.md
Normal file
68
figma_to_html_agent/blocks/1171281180/flat.md
Normal file
@@ -0,0 +1,68 @@
|
||||
# Frame 1171281180 — 실측 기록 (flat)
|
||||
|
||||
> 원본: 1153 × 592 px (node 112:87)
|
||||
> 패턴: stacked-arrow-list (계단식 pill 리스트)
|
||||
> Scale: 1280 / 1153 = 1.11015
|
||||
|
||||
## 구조
|
||||
|
||||
```
|
||||
Frame 112:87 (1153 × 592)
|
||||
├── 112:89 타이틀 바 (12, 47) 1141×29 — CSS: #fbd5b9, radius:5px, shadow
|
||||
├── 112:90 TEXT 타이틀 center(592, 38) — mixed: 43px+50px gradient, #144838
|
||||
│
|
||||
├── 112:91 좌측 아크 장식 (12, 117) 200.7×474.9 — SVG mask group (이미지)
|
||||
├── 112:117 TEXT "시공 상세 정보물" center(62.5, 342) — 45px Bold #144838, 세로 3줄
|
||||
│
|
||||
├── 5개 pill 행 (CSS: bg + border-bottom + radius + shadow)
|
||||
│ ├── 112:111 행1 (65, 128.89) 1088×70 — border-bottom: 3px #fb5915
|
||||
│ │ ├── 화살표 SVG (-rotate-90)
|
||||
│ │ └── TEXT "3차원 형상의 정보 모델과 Data Base (D/B)" — 38px Medium
|
||||
│ │
|
||||
│ ├── 112:114 행2 (137, 220.89) 1016×70 — border-bottom: 3px #e79000
|
||||
│ │ └── TEXT "목적물, 가시설 등의 단계별 시공 시뮬레이션"
|
||||
│ │
|
||||
│ ├── 112:108 행3 (166, 318.89) 987×70 — border-bottom: 3px #e9a804
|
||||
│ │ └── TEXT "시공 및 안전교육에 도움이 되는 영상물 등 성과물"
|
||||
│ │
|
||||
│ ├── 112:102 행4 (137, 420.89) 1016×70 — border-bottom: 3px #919f00
|
||||
│ │ └── TEXT "모델 또는 D/B, 시뮬레이션으로 부터 추출한 도면"
|
||||
│ │
|
||||
│ └── 112:105 행5 (65, 508.89) 1088×70 — border-bottom: 3px #0d6361
|
||||
│ └── TEXT "모델에서 추출이 곤란한 안전, 유의사항, 개념도 등 상세 표현 도면"
|
||||
```
|
||||
|
||||
## 에셋
|
||||
|
||||
| hash | 의미 |
|
||||
|------|------|
|
||||
| ff649c28...svg | 좌측 아크 장식 (복잡 mask, 이미지 유지) |
|
||||
| 29c778b5...svg | 화살표 아이콘 (-rotate-90, 이미지 유지) |
|
||||
|
||||
## pill 행 CSS 속성 (공통)
|
||||
|
||||
- bg: rgba(255,255,255,0.5)
|
||||
- border-bottom: 3px solid {color}
|
||||
- border-radius: 30px
|
||||
- box-shadow: 2px 4px 5px rgba(0,0,0,0.5)
|
||||
- padding: 10px 20px
|
||||
- display: flex; align-items: center; gap: 15px
|
||||
|
||||
## 계단 배치 패턴
|
||||
|
||||
| 행 | left | width | 색상 |
|
||||
|----|------|-------|------|
|
||||
| 1 | 65 | 1088 | #fb5915 |
|
||||
| 2 | 137 | 1016 | #e79000 |
|
||||
| 3 | 166 | 987 | #e9a804 |
|
||||
| 4 | 137 | 1016 | #919f00 |
|
||||
| 5 | 65 | 1088 | #0d6361 |
|
||||
|
||||
다이아몬드 형태: 넓→좁→좁→넓→넓
|
||||
|
||||
## 변형 가능 축
|
||||
|
||||
- items[N=3~7] (required) — 각 행: text + border_color
|
||||
- stacking_pattern (required) — indent 패턴
|
||||
- arc_decoration (optional)
|
||||
- vertical_label (optional)
|
||||
175
figma_to_html_agent/blocks/1171281180/index.html
Normal file
175
figma_to_html_agent/blocks/1171281180/index.html
Normal file
@@ -0,0 +1,175 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="ko">
|
||||
<head>
|
||||
<meta charset="UTF-8">
|
||||
<meta name="viewport" content="width=1280">
|
||||
<title>시공상세 정보물 (Frame 1171281180)</title>
|
||||
<!--
|
||||
Frame: 112:87, 1153×592 px
|
||||
Scale: 1280 / 1153 = 1.11015
|
||||
패턴: stacked-arrow-list
|
||||
구조: R17 (pill 행 flex column) + R19 (zoom)
|
||||
-->
|
||||
<link rel="preconnect" href="https://fonts.googleapis.com">
|
||||
<link href="https://fonts.googleapis.com/css2?family=Noto+Sans+KR:wght@400;500;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: 1153px;
|
||||
zoom: 1.11015; /* R19: layout 크기도 반영 */
|
||||
position: relative;
|
||||
}
|
||||
|
||||
/* 타이틀 영역 */
|
||||
.title-area {
|
||||
position: relative;
|
||||
height: 100px;
|
||||
}
|
||||
.title-bar {
|
||||
position: absolute; left: 12px; top: 47px;
|
||||
width: 1141px; height: 29px;
|
||||
background: #fbd5b9; border-radius: 5px;
|
||||
box-shadow: 0 4px 4px rgba(0,0,0,0.25);
|
||||
}
|
||||
.title-text {
|
||||
position: absolute;
|
||||
left: 592px; top: 38px;
|
||||
transform: translate(-50%, -50%);
|
||||
font-weight: 700; font-size: 0; line-height: 0;
|
||||
color: #144838; text-align: center;
|
||||
white-space: nowrap; letter-spacing: -2.25px;
|
||||
}
|
||||
|
||||
/* 좌측 장식 (absolute, 콘텐츠 영역 위에 overlay) */
|
||||
.arc-deco {
|
||||
position: absolute; left: 12px; top: 117px;
|
||||
width: 200.7px; height: 474.92px;
|
||||
z-index: 0;
|
||||
}
|
||||
.arc-deco img { width: 105%; height: 103.16%; display: block; }
|
||||
|
||||
.vlabel {
|
||||
position: absolute;
|
||||
left: 62.5px; top: 342px;
|
||||
transform: translate(-50%, -50%);
|
||||
font-weight: 700; font-size: 45px; line-height: 76px;
|
||||
color: #144838; text-align: center;
|
||||
text-shadow: 0 4px 4px rgba(0,0,0,0.25);
|
||||
white-space: nowrap;
|
||||
z-index: 1;
|
||||
}
|
||||
|
||||
/* pill 행 컨테이너 (flex column, R17) */
|
||||
.pill-rows {
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
align-items: center; /* 계단 배치: 각 행이 개별 width */
|
||||
gap: 22px;
|
||||
padding-top: 29px; /* 타이틀 아래 여백 */
|
||||
position: relative;
|
||||
z-index: 1;
|
||||
}
|
||||
|
||||
/* pill 행 (flex row: arrow + text) */
|
||||
.pill-row {
|
||||
height: 70px;
|
||||
background: rgba(255,255,255,0.5);
|
||||
border-radius: 30px;
|
||||
box-shadow: 2px 4px 5px rgba(0,0,0,0.5);
|
||||
border-bottom: 3px solid;
|
||||
display: flex; align-items: center;
|
||||
padding: 10px 20px; gap: 15px;
|
||||
align-self: flex-start; /* 좌측 정렬 기본 */
|
||||
}
|
||||
.pill-row .arrow {
|
||||
flex: none; width: 16.8px; height: 22.4px;
|
||||
display: flex; align-items: center; justify-content: center;
|
||||
}
|
||||
.pill-row .arrow img {
|
||||
width: 22.4px; height: 16.8px;
|
||||
transform: rotate(-90deg);
|
||||
}
|
||||
.pill-row .text {
|
||||
font-weight: 500; font-size: 38px; line-height: 75px;
|
||||
color: #000; letter-spacing: -1.14px; white-space: nowrap;
|
||||
}
|
||||
|
||||
/* 결론 바 영역 */
|
||||
.conclusion {
|
||||
position: relative;
|
||||
margin-top: 20px;
|
||||
height: 109px;
|
||||
}
|
||||
</style>
|
||||
</head>
|
||||
<body>
|
||||
<div class="slide">
|
||||
<div class="block">
|
||||
<div class="inner">
|
||||
|
||||
<!-- 타이틀 영역 -->
|
||||
<div class="title-area">
|
||||
<div class="title-bar"></div>
|
||||
<div class="title-text">
|
||||
<span style="font-size:43px; line-height:76px;">시공 전 모델 기반</span>
|
||||
<span style="font-size:45px; line-height:76px;"> </span>
|
||||
<span style="font-weight:900; font-size:50px; line-height:76px; background:linear-gradient(90deg, rgb(204,82,0), rgb(204,82,0)); -webkit-background-clip:text; background-clip:text; -webkit-text-fill-color:transparent;">시공상세 정보물</span>
|
||||
<span style="font-size:45px; line-height:76px;"> </span>
|
||||
<span style="font-size:43px; line-height:76px;">이용한 시공계획 작성 지원</span>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<!-- 좌측 장식 (absolute overlay) -->
|
||||
<div class="arc-deco"><img src="assets/ff649c28fd98518d6b48b9e5451fe1da4c1e95d5.svg" alt=""></div>
|
||||
<div class="vlabel">시공<br>상세<br>정보물</div>
|
||||
|
||||
<!-- pill 행 (flex column, R17 — 계단 배치) -->
|
||||
<div class="pill-rows">
|
||||
<!-- 행1: #fb5915, width:1088 -->
|
||||
<div class="pill-row" style="width:1088px; margin-left:65px; border-color:#fb5915;">
|
||||
<div class="arrow"><img src="assets/29c778b566aca6778f505874f21670de129351f8.svg" alt=""></div>
|
||||
<div class="text">3차원 형상의 정보 모델과 Data Base (D/B)</div>
|
||||
</div>
|
||||
|
||||
<!-- 행2: #e79000, width:1016 -->
|
||||
<div class="pill-row" style="width:1016px; margin-left:137px; border-color:#e79000;">
|
||||
<div class="arrow"><img src="assets/29c778b566aca6778f505874f21670de129351f8.svg" alt=""></div>
|
||||
<div class="text">목적물, 가시설 등의 단계별 시공 시뮬레이션</div>
|
||||
</div>
|
||||
|
||||
<!-- 행3: #e9a804, width:987 -->
|
||||
<div class="pill-row" style="width:987px; margin-left:166px; border-color:#e9a804;">
|
||||
<div class="arrow"><img src="assets/29c778b566aca6778f505874f21670de129351f8.svg" alt=""></div>
|
||||
<div class="text">시공 및 안전교육에 도움이 되는 영상물 등 성과물</div>
|
||||
</div>
|
||||
|
||||
<!-- 행4: #919f00, width:1016 -->
|
||||
<div class="pill-row" style="width:1016px; margin-left:137px; border-color:#919f00;">
|
||||
<div class="arrow"><img src="assets/29c778b566aca6778f505874f21670de129351f8.svg" alt=""></div>
|
||||
<div class="text">모델 또는 D/B, 시뮬레이션으로 부터 추출한 도면</div>
|
||||
</div>
|
||||
|
||||
<!-- 행5: #0d6361, width:1088 -->
|
||||
<div class="pill-row" style="width:1088px; margin-left:65px; border-color:#0d6361;">
|
||||
<div class="arrow"><img src="assets/29c778b566aca6778f505874f21670de129351f8.svg" alt=""></div>
|
||||
<div class="text">모델에서 추출이 곤란한 안전, 유의사항, 개념도 등 상세 표현 도면</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
14
figma_to_html_agent/blocks/1171281180/texts.md
Normal file
14
figma_to_html_agent/blocks/1171281180/texts.md
Normal file
@@ -0,0 +1,14 @@
|
||||
# Frame 1171281180 — 텍스트 (TF-IDF 매칭용)
|
||||
|
||||
## 타이틀
|
||||
시공 전 모델 기반 시공상세 정보물 이용한 시공계획 작성 지원
|
||||
|
||||
## 세로 라벨
|
||||
시공 상세 정보물
|
||||
|
||||
## 항목
|
||||
3차원 형상의 정보 모델과 Data Base (D/B)
|
||||
목적물, 가시설 등의 단계별 시공 시뮬레이션
|
||||
시공 및 안전교육에 도움이 되는 영상물 등 성과물
|
||||
모델 또는 D/B, 시뮬레이션으로 부터 추출한 도면
|
||||
모델에서 추출이 곤란한 안전, 유의사항, 개념도 등 상세 표현 도면
|
||||
Reference in New Issue
Block a user