GhiVideo 소스 복제 — v4 작업 시작 기준

기존 GhiVideo 저장소 HEAD의 트래킹 소스 362개 파일을 복제.
(node_modules·storage·빌드 산출물·대용량 미디어는 .gitignore 규칙대로 제외)

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This commit is contained in:
2026-07-09 14:32:51 +09:00
co-authored by Claude Fable 5
commit d38b842e8d
362 changed files with 46358 additions and 0 deletions
+119
View File
@@ -0,0 +1,119 @@
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml" lang xml:lang>
<head>
<meta charset="utf-8" />
<meta name="generator" content="pandoc" />
<meta name="viewport" content="width=device-width, initial-scale=1.0, user-scalable=yes" />
<title>그림_시간측점대응표</title>
<style>
code{white-space: pre-wrap;}
span.smallcaps{font-variant: small-caps;}
span.underline{text-decoration: underline;}
div.column{display: inline-block; vertical-align: top; width: 50%;}
div.hanging-indent{margin-left: 1.5em; text-indent: -1.5em;}
ul.task-list{list-style: none;}
.display.math{display: block; text-align: center; margin: 0.5rem auto;}
</style>
<style type="text/css">@page {
size: A4;
margin: 18mm 16mm 16mm 16mm;
@bottom-center {
content: counter(page) " / " counter(pages);
font-family: "Malgun Gothic", sans-serif;
font-size: 9pt;
color: #999;
}
}
html { font-size: 11pt; }
body {
font-family: "Malgun Gothic", "Hancom Gothic", sans-serif;
color: #23272e;
line-height: 1.65;
max-width: 920px;
margin: 0 auto;
padding: 24px;
}
h1 {
font-size: 1.7rem;
color: #b45309;
border-bottom: 3px solid #f59e0b;
padding-bottom: 8px;
margin: 0 0 4px;
}
h2 {
font-size: 1.25rem;
color: #b45309;
border-bottom: 1px solid #e5d3b3;
padding-bottom: 5px;
margin-top: 1.6em;
}
h3 { font-size: 1.05rem; color: #92400e; margin-top: 1.1em; }
a { color: #b45309; }
hr { border: none; border-top: 1px solid #e2e2e2; margin: 1.6em 0; }
ul { padding-left: 1.25em; }
li { margin: 0.18em 0; }
strong { color: #1f2937; }
code {
font-family: "D2Coding", Consolas, monospace;
background: #f4f1ea;
border: 1px solid #e7e0d2;
border-radius: 3px;
padding: 0.5px 5px;
font-size: 0.92em;
}
table {
border-collapse: collapse;
width: 100%;
margin: 0.8em 0;
font-size: 0.95em;
}
th, td { border: 1px solid #d8d2c4; padding: 6px 10px; text-align: left; vertical-align: top; }
th { background: #fdf3df; color: #7c2d12; }
blockquote {
border-left: 4px solid #f59e0b;
margin: 0.8em 0;
padding: 0.2em 0 0.2em 14px;
color: #555;
background: #fffbf2;
}
h1, h2, h3 { break-after: avoid; }
</style>
<!--[if lt IE 9]>
<script src="//cdnjs.cloudflare.com/ajax/libs/html5shiv/3.7.3/html5shiv-printshiv.min.js"></script>
<![endif]-->
</head>
<body>
<header id="title-block-header">
<h1 class="title">그림_시간측점대응표</h1>
</header>
<h1 id="시간측점-대응표--재생-기준을-시간에서-스테이션측점으로-전환하기-위한-색인-구조">시간↔︎측점 대응표 — 재생 기준을 &#39;시간&#39;에서 &#39;스테이션(측점)&#39;으로 전환하기 위한 색인 구조</h1>
<figure>
<svg viewBox="0 0 1080 470" role="img" aria-label="시간↔측점 대응표 도식" font-family="Malgun Gothic, sans-serif">
<defs><marker id="ar" markerWidth="10" markerHeight="10" refX="7" refY="3.5" orient="auto"><path d="M0,0 L7,3.5 L0,7 Z" fill="#7c3aed"></path></marker></defs>
<rect x="0" y="0" width="1080" height="470" fill="#ffffff"></rect>
<!-- 상단: 영상 프레임 -->
<rect x="390" y="30" width="300" height="76" fill="#595959"></rect>
<text x="540" y="63" text-anchor="middle" font-size="21" font-weight="bold" fill="#ffffff">영상 프레임 (사진 1장)</text>
<text x="540" y="90" text-anchor="middle" font-size="15" fill="#e8e8e8">(번호 + 드론 GPS 기록)</text>
<!-- 좌: 시간 계산 -->
<rect x="110" y="180" width="340" height="80" fill="#2e75b6"></rect>
<text x="280" y="215" text-anchor="middle" font-size="21" font-weight="bold" fill="#ffffff">프레임번호 ÷ fps = 시간</text>
<text x="280" y="243" text-anchor="middle" font-size="15" fill="#dbe9f7">예: 5760번 ÷ 30 = 192초</text>
<!-- 우: 측점 계산 -->
<rect x="630" y="180" width="340" height="80" fill="#70ad47"></rect>
<text x="800" y="215" text-anchor="middle" font-size="21" font-weight="bold" fill="#ffffff">GPS → 측점 (선로에 투영)</text>
<text x="800" y="243" text-anchor="middle" font-size="15" fill="#e6f2dc">예: 위도·경도 → 160k130</text>
<!-- 하단: 대응표 완성 -->
<rect x="320" y="340" width="440" height="80" fill="#bf9000"></rect>
<text x="540" y="375" text-anchor="middle" font-size="21" font-weight="bold" fill="#ffffff">시간 ↔ 측점 대응표 완성!</text>
<text x="540" y="403" text-anchor="middle" font-size="15" fill="#f7ecd0">&quot;192초 = 160k130&quot; 처럼 서로 변환 가능</text>
<!-- 화살표 -->
<line x1="455" y1="106" x2="305" y2="176" stroke="#7c3aed" stroke-width="3" marker-end="url(#ar)"></line>
<line x1="625" y1="106" x2="775" y2="176" stroke="#7c3aed" stroke-width="3" marker-end="url(#ar)"></line>
<line x1="295" y1="260" x2="445" y2="336" stroke="#7c3aed" stroke-width="3" marker-end="url(#ar)"></line>
<line x1="785" y1="260" x2="635" y2="336" stroke="#7c3aed" stroke-width="3" marker-end="url(#ar)"></line>
</svg>
</figure>
</body>
</html>