컴플렉스 제작 방법 2021
김현 한국학중앙연구원 인문정보학 교수 |
목차
§ 컴플렉스란?
- 여러 개의 파빌리온을 함께 열람할 수 있도록 편성한 저작물을 말합니다.
- 이곳에서는 Cesium 3D 지도상에 여러 곳의 파빌리온을 함꺼번에 표시하고, 선택적으로 개별 파빌리온을 방문할 수 있게 하는 시스템의 제작 방법을 설명합니다.
※ 가상 전시관 구성 체계
No | 편성 단위 이름 | Curation Level | 저작도구 S/W |
---|---|---|---|
1 | 모노미디어 | Mono-medium Objects | ExtractPhotoMetaXml.bat / ExtractPhptoMetaKml.bat / Make 2D Video.bat / Make 3D Video.bat |
2 | 신 | Scene | PTGui / MAKE PANO (MULTIRES) droplet.bat |
3 | 파빌리온 | Pavilion | Make 3D Scene.bat |
4 | 컴플렉스 | Complex | xml2cesium.exe / altitude.exe |
§ Cesium 기반 컴플렉스 제작 도구
※ ftp://digerati.aks.ac.kr/2021/101/home/vr-tools 에서 다운로드받으실 수 있습니다. (FTP S/W로 접속하세요. FileZilla 등)
§ Cesium 기반 컴플렉스 제작 프로그램 사용 예시 사이트
※ 3D Scene Pavilion 만을 대상으로 제작한 컴플렉스 예시
※ 3D Scene Pavilion과 함께, Wiki Text, Network Graph, Photo Gallery, 3D Model 등 다양한 멀티미디어 요소들의 종합 메뉴 제공 예시
§ Cesium 기반 컴플렉스 스크립트 작성 방법
- Cesium 기반 컴플렉스 스크립트는 Xml 문서 형식으로 작성합니다.
1. Xml 문서
- Template:
<?xml version="1.0" encoding="UTF-8"?> <?xml-stylesheet type="text/xsl" href="validation.xsl"?> <complex> <home></home> <pavilion> <id></id> <label></label> <position> <latitude></latitude> <longitude></longitude> <altitude></altitude> </position> <reference> <icon></icon> <vr></vr> <text></text> <network></network> <gallery></gallery> <model></model> </reference> </pavilion> </complex>
- 예시 1:
<?xml version="1.0" encoding="UTF-8"?> <?xml-stylesheet type="text/xsl" href="validation.xsl"?> <complex> <home>http://digerati.aks.ac.kr/DhLab/2021/Pavilions/complex</home> <pavilion> <id>aks_central</id> <label>한국학중앙연구원 중앙</label> <position> <longitude>127.054242</longitude> <latitude>37.392349</latitude> <altitude>114.696</altitude> </position> <reference> <vr>http://digerati.aks.ac.kr/DhLab/2021/Pavilions/aks/aks_central/aks_central.htm</vr> </reference> </pavilion> <pavilion> <id>aks_west</id> <label>한국학중앙연구원 서편</label> <position> <longitude>127.051544 </longitude> <latitude>37.392732</latitude> <altitude>126.321</altitude> </position> <reference> <vr>http://digerati.aks.ac.kr/DhLab/2021/Pavilions/aks/aks_west/aks_west.htm</vr> </reference> </pavilion> <pavilion> <id>aks_east</id> <label>한국학중앙연구원 동편</label> <position> <longitude>127.054177</longitude> <latitude>37.393398</latitude> <altitude>125.713</altitude> </position> <reference> <vr>http://digerati.aks.ac.kr/DhLab/2021/Pavilions/aks/aks_east/aks_east.htm</vr> </reference> </pavilion> <pavilion> <id>motionVideo</id> <label>보미네</label> <position> <longitude>127.081632</longitude> <latitude>37.357351</latitude> <altitude>98.8601</altitude> </position> <reference> <vr>http://digerati.aks.ac.kr/DhLab/2021/Pavilions/motionVideo/video360.htm</vr> </reference> </pavilion> </complex>
- 예시 2:
<?xml version="1.0" encoding="UTF-8"?> <?xml-stylesheet type="text/xsl" href="validation.xsl"?> <complex> <home>http://digerati.aks.ac.kr/DhLab/2021/Pavilions/complex</home> <pavilion> <id>D00-0289-0000</id> <label>구 목포 일본영사관</label> <position> <longitude>126.382</longitude> <latitude>34.7875</latitude> <altitude>51.0</altitude> </position> <reference> <icon>http://www.cha.go.kr/unisearch/images/history_site/thumb/1627104.jpg</icon> <text>http://www.heritage.go.kr/heri/cul/culSelectDetail.do?ccbaCpno=1333602890000</text> <network>http://dh.aks.ac.kr/~sandbox/cgi-bin/Story02.py?db=mokpo&project=mokpo&key=목포일본영사관</network> <vr>http://dh.aks.ac.kr/~mokpo/pavilion/gallery/land/area/D00-0289-0000/museum.htm</vr> <gallery>http://dh.aks.ac.kr/~mokpo/wiki/index.php/Photo:Heritage:D00-0289-0000</gallery> <model>http://dh.aks.ac.kr/~mokpo/cgi-bin/ModelView2.py?url=dh.aks.ac.kr/~mokpo/model/D00-0289-0000.glb</model> </reference> </pavilion> </complex>
2. 스크립트 작성 및 실행 프로세스
1. 템플릿 xml 파일을 이용하여 자신의 파빌리온 정보를 담은 xml 문서를 작성합니다.
※ xml 문서의 이름이 곧 컴플렉스의 이름이 됩니다. ( 컴플렉스_이름.xml ) 컴플렉스 이름 안에 공백이 들어가거나 "." 문자를 사용해서는 안됩니다.
2. xml 문서를 xml2cesium.exe 프로그램에 떨어뜨리면 (Drag and Drop) 홈페이지 실행 문서가 (html 파일, 컴플렉스_이름.htm) 생성됩니다.
3. xml 문서와 html 문서를 웹 서버상의 자신의 파빌리온 컴플렉스 홈 폴더에 업로드 합니다. (FTP)
4. 웹 브라우저에서 웹 서버상의 html 문서를 실행합니다.
2. 스크립트 Xml 요소 설명
- complex ....... 이 xml 문서의 최상위 요소.
- complex/home ....... 지금 작성하는 컴플렉스 스크립트를 실행시킬 홈페이지 위치. 웹 서버상의 폴더 주소를 요소 값으로 지정합니다. (필수 요소)
- complex/pavilion ....... 이 컴플렉스에 포함시킬 파빌리온의 갯수만큼 작성합니다. (1개 이상 필수 요소)
- complex/pavilion/id ....... 각 파빌리온을 시스템이 식별할 수 있게 할 고유한 이름, 한 컴플렉스 안에서 중복 id가 있으면 안됩니다. (필수 요소)
- complex/pavilion/label ....... 해당 파빌리온이 세슘 지도상에 표시될 보일 이름 (필수 요소)
- complex/pavilion/pisition/longitude ....... 해당 파빌리온의 위치 .... 경도 값 (필수 요소)
- complex/pavilion/pisition/latitude ....... 해당 파빌리온의 위치 .... 위도 값 (필수 요소)
- complex/pavilion/pisition/altitude ....... 해당 파빌리온의 위치 .... 고도 값 (필수 요소)
- complex/pavilion/reference/icon ........ 해당 파빌리온 마커를 클릭했을 때 정보 창 안에서 보여 줄 썸네일 이미지 (선택 요소)
- complex/pavilion/reference/vr ........ 해당 파빌리온의 3D VR 씬 링크 주소 (선택 요소)
- complex/pavilion/reference/text ........ 해당 파빌리온의 위키 텍스트 씬 링크 주소 (선택 요소)
- complex/pavilion/reference/network ........ 해당 파빌리온의 네트워크 그래프 링크 주소 (선택 요소)
- complex/pavilion/reference/gallery ........ 해당 파빌리온의 사진 갤러리 링크 주소 (선택 요소)
- complex/pavilion/reference/model ........ 해당 파빌리온의 3D 모델 링크 주소 (선택 요소)
3. 고도 (altitude) 값 획득 방법
- Cesium 3D 지도 상에서 컴플렉스를 구현하기 위해서는 각 파빌리온의 위치를 위도, 경도, 고도 값으로 표시해야 합니다.
- 경도(longitude)와 위도(latitude) 값만 알고 고도(altitude) 값을 모르는 경우, altitude.exe 프로그램을 이용하여 여러 장소의 고도 값을 한꺼번에 얻을 수 있습니다.
- altitude.exe 사용법
1. 위도와 경도 값을 차례대로 기록한 데이터 파일을 작성합니다. (확장자는 반드시 .lst)
- 입력 파일 예시
#AKS 37.392349, 127.054242 37.392732, 127.051544 37.393398, 127.054177 #Home 37.357351, 127.081632
※ #으로 시작하는 행은 주석문입니다. (없어도 무방)
2. 이 파일을 altitude.exe 에 떨어뜨리면 고도 값을 포함하는 새 파일이 *_a.lst라는 이름으로 생성됩니다.
- 출력 파일 예시
#AKS 37.392349, 127.054242, 114.6968688964844 37.392732, 127.051544, 126.3219146728516 37.393398, 127.054177, 125.7135009765625 #Home 37.357351, 127.081632, 98.86018371582031
§ 저작권 사용 허가
이곳에서 소개하는 파빌리온 제작 도구는 누구나 교육/연구의 목적으로 자유롭게 사용할 수 있습니다. 이 프로그램을 이용하여 제작한 디지털 콘텐츠를 발행, 배포하거나 이에 관한 2차적 교육 자료, 연구물을 제작할 경우, 이 도구의 사용 허가 사항을 다음과 같이 표시하여 주시기 바랍니다.
"이 저작물상의 가상 전시관 프로그램은 DH 디지털 큐레이션 저작도구 (Copyright (C) 2017-2021 디지털인문학연구소, AKS)를 이용하여 제작하였습니다." |
“Virtual Reality Programs in this work were created using DH Digital Curation Tools (Copyright (C) 2017-2018 Center for Digital Humanities, AKS).” |