diff --git a/A05_EduDetail/guide/B03/00_설명서.md b/A05_EduDetail/guide/B03/00_설명서.md index 2d7ae7e01..364d845b7 100644 --- a/A05_EduDetail/guide/B03/00_설명서.md +++ b/A05_EduDetail/guide/B03/00_설명서.md @@ -1,9 +1,39 @@ -# 파일입력 설명서 +# 파일입력 -## 이 화면에서 하는 일 +계획노선 파일과 지형(라이다) 파일을 올려, 이후 설계의 바탕 자료를 만듦. + +## 여는 길 + +- 프로젝트를 만들면 자동으로 열림. +- 이미 만든 프로젝트는 대시보드 [프로젝트] 표의 단계 막대에서 「파일입력」 누름. + +![화면 한눈에](B03_00_overview.webp) + +## 화면 구역 + +| 번호 | 구역 | 하는 일 | +| --- | --- | --- | +| 1 | 왼쪽 패널 | 지금 단계(파일입력)와 프로젝트 이름 · 진행 안내 글 · 접기 손잡이 · [?] 도움말 | +| 2 | [입력 파일 선택] 칸 | 파일을 끌어다 놓거나 눌러서 한꺼번에 고름 | +| 3 | [임시 보관함] | 대시보드에 미리 올려 둔 자료를 가져옴 | +| 4 | [파일 업로드] | 고른 파일을 서버로 올림 | +| 5 | [LAS 없이 설계 (도엽등고선 기반)] | 라이다 없이 도엽 등고선으로 지형을 만드는 선택 | +| 6 | [계획노선 자료] | 노선 도형 · 색인 · 속성 · 인코딩 · 좌표계 카드 다섯 | +| 7 | [지형 자료 (LAS)] | 포인트클라우드 · 지형 좌표계 · 래스터 좌표 · 지형 래스터 카드 넷 | + +![왼쪽 패널](B03_08_left_panel.webp) + +왼쪽 패널 그림 번호 — ① 단계 이름 · ② 패널 접기 손잡이 · ③ [?] 도움말. 이미 끝난 프로젝트는 「필수 파일 업로드와 지표면 분석이 모두 완료된 프로젝트입니다. 파일을 다시 올리면 기존 결과가 교체됩니다.」 안내가 패널에 보임. ## 작업 순서 -## 버튼 +1. 파일을 끌어다 놓거나 [입력 파일 선택] 으로 고름 → [파일 올리기](B03/01_파일_올리기). +2. 카드마다 파일이 맞게 들어갔는지 확인 → [카드 읽는 법](B03/02_카드_읽는_법). +3. 대시보드에 올려 둔 자료가 있으면 [임시 보관함] 으로 → [임시 보관함에서 가져오기](B03/03_임시_보관함에서_가져오기). +4. 산림청 예정노선을 쓰면 [예정노선에서 가져오기] → [예정노선 가져오기](B03/04_예정노선_가져오기). +5. 라이다가 없으면 [LAS 없이 설계] → [LAS 없이 설계](B03/05_LAS_없이_설계). +6. [파일 업로드] → 분석이 끝나면 전처리 화면으로 자동 이동 → [B04](B04/00_설명서). -## 주의할 점 +> 주의: 이미 끝난 프로젝트에 파일을 다시 올리면 기존 분석 결과가 새 파일로 교체됨. + +> 참고: 어떤 파일이 필요한지는 [필요한 파일](B03/10_필요한_파일) 참고. diff --git a/A05_EduDetail/guide/B03/01_파일_올리기.md b/A05_EduDetail/guide/B03/01_파일_올리기.md new file mode 100644 index 000000000..39729c93a --- /dev/null +++ b/A05_EduDetail/guide/B03/01_파일_올리기.md @@ -0,0 +1,34 @@ +# 파일 올리기 + +계획노선 · 지형 파일을 고르고 서버로 올림. + +## 여는 길 + +- 파일입력 화면 위쪽 [입력 파일 선택] 칸과 [파일 업로드] 단추. + +![올리기 줄](B03_01_pick_row.webp) + +그림 번호 — ① [입력 파일 선택] 칸 · ② [임시 보관함] · ③ [파일 업로드] · ④ [LAS 없이 설계 (도엽등고선 기반)]. + +## 단계 + +| 단계 | 할 일 | +| --- | --- | +| 1 | 컴퓨터의 파일들을 [입력 파일 선택] 칸 위로 끌어다 놓음 (칸을 눌러 고를 수도 있음) | +| 2 | 확장자를 보고 파일이 알맞은 카드에 자동으로 들어감 — 카드 상태가 「완료」 나 선택 표시로 바뀜 | +| 3 | 빠진 카드는 카드의 [파일 선택] 으로 한 칸씩 채움 | +| 4 | 잘못 넣은 파일은 카드의 ✕ [파일 제거] 로 되돌림 | +| 5 | 필수 카드가 모두 차면 [파일 업로드] 가 켜짐 · 누름 | +| 6 | 카드마다 진행률 · 속도 · 예상 완료 시간이 표시됨 | +| 7 | 올리기가 끝나면 분석이 백그라운드로 돌고, 끝나면 전처리 화면으로 자동 이동 | + +## 보이는 것 + +- 올리는 동안 [파일 업로드] 단추는 「업로드 중…」 으로 바뀜. +- 같은 칸에 이미 올라간 파일이 있으면 「기존 파일 교체 확인」 창이 뜸 — [교체] 를 누르면 기존 파일과 분석 결과(지표면 모델 등)가 바뀜, [취소] 하면 그대로. +- 오류 글 예: 「같은 유형의 파일이 이미 선택되어 있습니다.」 · 「선택한 파일 유형이 이 카드와 맞지 않습니다.」 · 「필수 카드를 모두 채우세요 …」. +- 올리다 중단되면 「중단된 업로드 감지」 띠가 뜸 — 같은 파일을 다시 고르고 [업로드 재개]. + +> 주의: 계획노선 PRJ 와 지형 PRJ 는 서로 다른 칸. 라이다 PRJ 가 작업 좌표계 기준이며 노선 좌표계와 다르면 올리기가 막힘. + +> 참고: 큰 파일은 올리는 데 시간이 걸림. 올리는 동안 창을 닫지 않기. diff --git a/A05_EduDetail/guide/B03/02_카드_읽는_법.md b/A05_EduDetail/guide/B03/02_카드_읽는_법.md new file mode 100644 index 000000000..d15e309a6 --- /dev/null +++ b/A05_EduDetail/guide/B03/02_카드_읽는_법.md @@ -0,0 +1,52 @@ +# 카드 읽는 법 + +계획노선과 지형 자료의 카드 아홉 장이 각각 무엇을 뜻하는지, 어떤 정보를 미리 보여 주는지. + +## 여는 길 + +- 파일입력 화면의 [계획노선 자료] · [지형 자료 (LAS)] 구역. + +![카드 한 장의 구성](B03_04_card_parts.webp) + +## 단계 + +| 번호 | 부분 | 뜻 | +| --- | --- | --- | +| 1 | 카드 이름과 확장자 | 이 카드가 받을 파일의 종류 (예: 계획노선 도형 .shp) | +| 2 | 상태 | 완료 · 업로드 중 · 대기 · 실패 · 선택 | +| 3 | [파일 선택] | 이 카드에 파일을 직접 고름 | +| 4 | 파일명과 크기 | 지금 올라가 있는 파일 | +| 5 | 미리보기 | 파일을 읽어서 보여 주는 요약 | + +### 계획노선 자료 + +그림 번호는 아래 표의 번호와 같음 — 맨 아래 [예정노선에서 가져오기] 는 [예정노선 가져오기](B03/04_예정노선_가져오기). + +![계획노선 카드들](B03_02_route_cards.webp) + +| 번호 | 카드 | 파일 | 미리보기 | +| --- | --- | --- | --- | +| 1 | 계획노선 도형 | .shp | 노선 모양 | +| 2 | 노선 도형 색인 | .shx | 도형 개수 · 범위 | +| 3 | 노선 속성 | .dbf | 레코드 · 속성 개수 | +| 4 | 노선 속성 인코딩 | .cpg (선택) | 인코딩 번호 | +| 5 | 노선 좌표계 | .prj | 좌표계 이름과 번호 | + +### 지형 자료 + +그림 번호는 아래 표의 번호와 같음. + +![지형 카드들](B03_03_terrain_cards.webp) + +| 번호 | 카드 | 파일 | 미리보기 | +| --- | --- | --- | --- | +| 1 | 포인트클라우드 | .las · .laz | 점 5,000개를 솎아 위에서 본 모양 | +| 2 | 지형 좌표계 | .prj | 좌표계 이름과 번호 | +| 3 | 래스터 좌표 | .tfw | 픽셀 크기 | +| 4 | 지형 래스터 | .tif (선택) | 지형 래스터 그림 | + +## 보이는 것 + +- 계획노선이 지형 자료 범위를 벗어나면 「계획노선이 지형 자료 범위를 벗어납니다.」 · 안에 있으면 「계획노선이 지형 자료 범위 안에 있습니다.」 표시. + +> 참고: 지형 쪽 PRJ · TFW 는 지형 자료의 좌표계. 노선 PRJ 와 별개. diff --git a/A05_EduDetail/guide/B03/03_임시_보관함에서_가져오기.md b/A05_EduDetail/guide/B03/03_임시_보관함에서_가져오기.md new file mode 100644 index 000000000..af1c8170a --- /dev/null +++ b/A05_EduDetail/guide/B03/03_임시_보관함에서_가져오기.md @@ -0,0 +1,28 @@ +# 임시 보관함에서 가져오기 + +대시보드 임시 보관함에 먼저 올려 둔 자료를 이 프로젝트로 옮김. 큰 파일을 미리 올려 둘 때 편함. + +## 여는 길 + +- 파일입력 화면 위쪽 [임시 보관함] 단추. + +![보관 자료 선택 창](B03_06_temp_modal.webp) + +## 단계 + +| 단계 | 할 일 | +| --- | --- | +| 1 | [임시 보관함] 누름 | +| 2 | 목록에서 가져올 묶음을 고름 (이름 · 파일 개수 · 크기가 보임) | +| 3 | [확인] | +| 4 | 자료가 프로젝트로 옮겨지고 분석이 시작됨 | + +## 보이는 것 + +그림 ① 은 창 아래 [취소] · [확인] 단추 줄. 그림은 보관 자료가 없을 때의 모습. + +- 옮기기가 끝나면 「보관 자료를 프로젝트로 옮겼습니다. 분석을 시작합니다.」 알림. +- 라이다 파일이 묶음에 없으면 「파일은 옮겼지만 라이다 파일이 없어 분석을 시작하지 못했습니다.」 알림. +- 쓸 수 있는 묶음이 없으면 「사용할 수 있는 보관 자료가 없습니다. 대시보드 임시 보관함에서 필수 파일을 모두 올려 주세요.」 안내. + +> 참고: 보관함에 올리는 방법은 [B01 임시 보관함](B01/04_임시_보관함). diff --git a/A05_EduDetail/guide/B03/04_예정노선_가져오기.md b/A05_EduDetail/guide/B03/04_예정노선_가져오기.md new file mode 100644 index 000000000..80a65ca4c --- /dev/null +++ b/A05_EduDetail/guide/B03/04_예정노선_가져오기.md @@ -0,0 +1,30 @@ +# 예정노선 가져오기 + +산림청이 우리 회사에 지정해 준 예정노선을 계획노선 칸에 바로 넣음. + +## 여는 길 + +- 파일입력 화면 [계획노선 자료] 카드 맨 아래 [예정노선에서 가져오기] 단추. + +![예정노선 고르기 창](B03_07_plan_import_modal.webp) + +## 단계 + +| 단계 | 할 일 | +| --- | --- | +| 1 | [예정노선에서 가져오기] 누름 | +| 2 | 「지정받은 예정노선 연도 고르기」 창에서 연도를 선택 | +| 3 | 안내에 따라 [예정노선에서 가져오기] 로 확정 | +| 4 | 「예정노선을 노선 칸에 넣었습니다.」 알림 후 노선 카드들이 채워짐 | + +## 보이는 것 + +그림은 지정받은 예정노선이 없을 때의 모습 — 있으면 연도 목록이 나타남. + +- 지정받은 예정노선이 없으면 「우리 회사에 지정된 예정노선이 없습니다.」 안내. +- 이미 연결된 노선은 「연결됨: 프로젝트 이름」 표시. +- 연결한 예정노선이 나중에 바뀌면 화면 위에 「예정노선이 바뀜 …」 띠와 [다시 가져오기] 가 나타남. + +> 주의: 이미 분석이 끝난 프로젝트에 가져오면 기존 결과가 지워짐 — 확인 창이 한 번 더 뜸. + +> 참고: 받은 예정노선 목록은 [B01 받은 예정노선](B01/03_받은_예정노선). diff --git a/A05_EduDetail/guide/B03/05_LAS_없이_설계.md b/A05_EduDetail/guide/B03/05_LAS_없이_설계.md new file mode 100644 index 000000000..160898d3f --- /dev/null +++ b/A05_EduDetail/guide/B03/05_LAS_없이_설계.md @@ -0,0 +1,25 @@ +# LAS 없이 설계 + +라이다(LAS) 파일이 없을 때 1:5,000 수치지형도의 도엽 등고선으로 지형을 만드는 선택. + +## 여는 길 + +- 파일입력 화면 위쪽 [LAS 없이 설계 (도엽등고선 기반)] 체크 칸. + +![체크한 모습](B03_05_lasfree_on.webp) + +## 단계 + +| 단계 | 할 일 | +| --- | --- | +| 1 | (그림 ①) [LAS 없이 설계 (도엽등고선 기반)] 에 체크 | +| 2 | (그림 ②) 포인트클라우드 카드가 흐려지며 필수에서 빠짐 | +| 3 | 계획노선 파일과 지형 좌표계(PRJ)만 채움 | +| 4 | [파일 업로드] | + +## 보이는 것 + +- 체크 칸 위에 마우스를 올리면 「포인트클라우드 없이 1:5,000 수치지형도 등고선으로 지형을 만듭니다.」 안내. +- 체크한 상태에서 LAS · LAZ 파일을 넣으면 「LAS 없이 설계를 켠 상태에서는 LAS/LAZ 파일을 넣을 수 없습니다.」 표시. + +> 참고: 전처리 화면에서는 [도엽등고 3D 서피스] 가 지형의 바탕이 됨 → [B04 도엽등고 3D 서피스](B04/04_도엽등고_3D_서피스). diff --git a/A05_EduDetail/guide/B03/10_필요한_파일.md b/A05_EduDetail/guide/B03/10_필요한_파일.md index 4fe4b1b22..40e5d5747 100644 --- a/A05_EduDetail/guide/B03/10_필요한_파일.md +++ b/A05_EduDetail/guide/B03/10_필요한_파일.md @@ -1,5 +1,11 @@ # 필요한 파일 - 계획노선 — shapefile 한 벌(.shp·.shx·.dbf·.cpg·.prj) 5개. + +![계획노선 카드 다섯](B03_02_route_cards.webp) + - 지형 — 포인트클라우드 LAS/LAZ 1개와 좌표계 PRJ, 래스터 기준 TFW. -- 지형 TIF(DEM)는 선택 사항 — 없어도 지표면 분석이 진행됩니다. + +![지형 카드 넷](B03_03_terrain_cards.webp) + +- 지형 TIF(DEM)는 선택 사항 — 없어도 지표면 분석이 진행됨. diff --git a/A05_EduDetail/guide/B03/20_고르는_방법.md b/A05_EduDetail/guide/B03/20_고르는_방법.md index 02333ba83..0075cf534 100644 --- a/A05_EduDetail/guide/B03/20_고르는_방법.md +++ b/A05_EduDetail/guide/B03/20_고르는_방법.md @@ -1,5 +1,10 @@ # 고르는 방법 -- 여러 개를 한 번에 끌어 놓으면 확장자로 카드에 자동 배정됩니다. -- 카드의 [선택]으로 한 칸씩 지정하거나 ✕로 되돌릴 수 있습니다. -- [임시 보관함]은 대시보드에 미리 올려 둔 자료를 가져옵니다. +- 여러 개를 한 번에 끌어 놓으면 확장자로 카드에 자동 배정됨. + +![올리기 줄](B03_01_pick_row.webp) + +- 카드의 [파일 선택]으로 한 칸씩 지정하거나 ✕로 되돌릴 수 있음. +- [임시 보관함]은 대시보드에 미리 올려 둔 자료를 가져옴. + +![보관 자료 선택 창](B03_06_temp_modal.webp) diff --git a/A05_EduDetail/guide/B03/30_알아_둘_것.md b/A05_EduDetail/guide/B03/30_알아_둘_것.md index e80291a60..d21d94a15 100644 --- a/A05_EduDetail/guide/B03/30_알아_둘_것.md +++ b/A05_EduDetail/guide/B03/30_알아_둘_것.md @@ -1,5 +1,7 @@ # 알아 둘 것 -- 이미 완료된 프로젝트에 다시 올리면 기존 분석 결과가 교체됩니다. -- 작업 좌표계는 라이다 PRJ가 기준 — 노선 좌표계와 다르면 업로드가 막힙니다. -- 라이다가 없으면 [LAS 없는 설계]를 켜고 도엽 등고선으로 진행합니다. +- 이미 완료된 프로젝트에 다시 올리면 기존 분석 결과가 교체됨. +- 작업 좌표계는 라이다 PRJ가 기준 — 노선 좌표계와 다르면 업로드가 막힘. +- 라이다가 없으면 [LAS 없이 설계 (도엽등고선 기반)]를 켜고 도엽 등고선으로 진행함. + +![체크한 모습](B03_05_lasfree_on.webp) diff --git a/A05_EduDetail/guide/B03/B03_00_overview.webp b/A05_EduDetail/guide/B03/B03_00_overview.webp new file mode 100644 index 000000000..3e65734e5 Binary files /dev/null and b/A05_EduDetail/guide/B03/B03_00_overview.webp differ diff --git a/A05_EduDetail/guide/B03/B03_01_pick_row.webp b/A05_EduDetail/guide/B03/B03_01_pick_row.webp new file mode 100644 index 000000000..aa354ae12 Binary files /dev/null and b/A05_EduDetail/guide/B03/B03_01_pick_row.webp differ diff --git a/A05_EduDetail/guide/B03/B03_02_route_cards.webp b/A05_EduDetail/guide/B03/B03_02_route_cards.webp new file mode 100644 index 000000000..4e274e342 Binary files /dev/null and b/A05_EduDetail/guide/B03/B03_02_route_cards.webp differ diff --git a/A05_EduDetail/guide/B03/B03_03_terrain_cards.webp b/A05_EduDetail/guide/B03/B03_03_terrain_cards.webp new file mode 100644 index 000000000..7209a81c0 Binary files /dev/null and b/A05_EduDetail/guide/B03/B03_03_terrain_cards.webp differ diff --git a/A05_EduDetail/guide/B03/B03_04_card_parts.webp b/A05_EduDetail/guide/B03/B03_04_card_parts.webp new file mode 100644 index 000000000..bb9de7589 Binary files /dev/null and b/A05_EduDetail/guide/B03/B03_04_card_parts.webp differ diff --git a/A05_EduDetail/guide/B03/B03_05_lasfree_on.webp b/A05_EduDetail/guide/B03/B03_05_lasfree_on.webp new file mode 100644 index 000000000..74050dbdc Binary files /dev/null and b/A05_EduDetail/guide/B03/B03_05_lasfree_on.webp differ diff --git a/A05_EduDetail/guide/B03/B03_06_temp_modal.webp b/A05_EduDetail/guide/B03/B03_06_temp_modal.webp new file mode 100644 index 000000000..53626031d Binary files /dev/null and b/A05_EduDetail/guide/B03/B03_06_temp_modal.webp differ diff --git a/A05_EduDetail/guide/B03/B03_07_plan_import_modal.webp b/A05_EduDetail/guide/B03/B03_07_plan_import_modal.webp new file mode 100644 index 000000000..9db4c94e6 Binary files /dev/null and b/A05_EduDetail/guide/B03/B03_07_plan_import_modal.webp differ diff --git a/A05_EduDetail/guide/B03/B03_08_left_panel.webp b/A05_EduDetail/guide/B03/B03_08_left_panel.webp new file mode 100644 index 000000000..bdbf12fa6 Binary files /dev/null and b/A05_EduDetail/guide/B03/B03_08_left_panel.webp differ diff --git a/A05_EduDetail/guide/B03/_scenes.json b/A05_EduDetail/guide/B03/_scenes.json new file mode 100644 index 000000000..a3d912b18 --- /dev/null +++ b/A05_EduDetail/guide/B03/_scenes.json @@ -0,0 +1,330 @@ +[ + { + "name": "B03_00_overview", + "route": "#/b03-file-input", + "project": "road", + "before": [ + { + "eval": "document.head.insertAdjacentHTML('beforeend','')" + }, + { + "wait": ".b03-file__pick-row" + }, + { + "wait_ms": 1500 + } + ], + "clip": null, + "callouts": [ + { + "n": 1, + "sel": ".ui-workflow-overlay__panel" + }, + { + "n": 2, + "sel": ".b03-file__dropzone" + }, + { + "n": 3, + "sel": ".b03-file__temp-picker .ui-btn" + }, + { + "n": 4, + "sel": ".b03-file__pick-row > .ui-btn--filled" + }, + { + "n": 5, + "sel": ".b03-file__lasfree" + }, + { + "n": 6, + "sel": ".b03-file__columns > :nth-child(1) .b03-file__group-title" + }, + { + "n": 7, + "sel": ".b03-file__columns > :nth-child(2) .b03-file__group-title" + } + ] + }, + { + "name": "B03_01_pick_row", + "route": "#/b03-file-input", + "project": "road", + "before": [ + { + "eval": "document.head.insertAdjacentHTML('beforeend','')" + }, + { + "wait": ".b03-file__pick-row" + } + ], + "clip": ".b03-file__control-panel", + "callouts": [ + { + "n": 1, + "sel": ".b03-file__dropzone" + }, + { + "n": 2, + "sel": ".b03-file__temp-picker .ui-btn" + }, + { + "n": 3, + "sel": ".b03-file__pick-row > .ui-btn--filled" + }, + { + "n": 4, + "sel": ".b03-file__lasfree" + } + ] + }, + { + "name": "B03_02_route_cards", + "route": "#/b03-file-input", + "project": "road", + "viewport": [ + 1600, + 2000 + ], + "before": [ + { + "eval": "document.head.insertAdjacentHTML('beforeend','')" + }, + { + "wait": ".b03-file__columns" + }, + { + "wait_ms": 1500 + } + ], + "clip": ".b03-file__columns > :nth-child(1)", + "callouts": [ + { + "n": 1, + "sel": ".b03-file__columns > :nth-child(1) [data-slot-id=csv]" + }, + { + "n": 2, + "sel": ".b03-file__columns > :nth-child(1) [data-slot-id=shx]" + }, + { + "n": 3, + "sel": ".b03-file__columns > :nth-child(1) [data-slot-id=dbf]" + }, + { + "n": 4, + "sel": ".b03-file__columns > :nth-child(1) [data-slot-id=cpg]" + }, + { + "n": 5, + "sel": ".b03-file__columns > :nth-child(1) [data-slot-id=route_prj]" + } + ] + }, + { + "name": "B03_03_terrain_cards", + "route": "#/b03-file-input", + "project": "road", + "viewport": [ + 1600, + 2000 + ], + "before": [ + { + "eval": "document.head.insertAdjacentHTML('beforeend','')" + }, + { + "wait": ".b03-file__columns" + }, + { + "wait_ms": 1500 + } + ], + "clip": ".b03-file__columns > :nth-child(2)", + "callouts": [ + { + "n": 1, + "sel": "[data-slot-id=las_laz]" + }, + { + "n": 2, + "sel": "[data-slot-id=prj]" + }, + { + "n": 3, + "sel": "[data-slot-id=tfw]" + }, + { + "n": 4, + "sel": "[data-slot-id=tif]" + } + ] + }, + { + "name": "B03_04_card_parts", + "route": "#/b03-file-input", + "project": "road", + "before": [ + { + "eval": "document.head.insertAdjacentHTML('beforeend','')" + }, + { + "wait": "[data-slot-id=csv]" + }, + { + "wait_ms": 1200 + } + ], + "clip": "[data-slot-id=csv]", + "callouts": [ + { + "n": 1, + "sel": "[data-slot-id=csv] .b03-file__card-label" + }, + { + "n": 2, + "sel": "[data-slot-id=csv] .ui-tag" + }, + { + "n": 3, + "sel": "[data-slot-id=csv] .b03-file__card-select" + }, + { + "n": 4, + "sel": "[data-slot-id=csv] .b03-file__file-info" + }, + { + "n": 5, + "sel": "[data-slot-id=csv] .b03-file__preview" + } + ] + }, + { + "name": "B03_05_lasfree_on", + "route": "#/b03-file-input", + "project": "road", + "viewport": [ + 1600, + 1500 + ], + "before": [ + { + "eval": "document.head.insertAdjacentHTML('beforeend','')" + }, + { + "wait": ".b03-file__lasfree" + }, + { + "click": ".b03-file__lasfree input" + }, + { + "wait_ms": 800 + }, + { + "eval": "(()=>{const q=[\".b03-file__control-panel\", \"[data-slot-id=las_laz]\"];const els=q.map(s=>[...document.querySelectorAll(s)].find(e=>e.getBoundingClientRect().width>0));const rs=els.map(e=>e.getBoundingClientRect());const L=Math.min(...rs.map(r=>r.left)),T=Math.min(...rs.map(r=>r.top)),R=Math.max(...rs.map(r=>r.right)),B=Math.max(...rs.map(r=>r.bottom));const d=document.createElement('div');d.id='__clip';d.style.cssText='position:absolute;pointer-events:none;left:'+(L+scrollX)+'px;top:'+(T+scrollY)+'px;width:'+(R-L)+'px;height:'+(B-T)+'px';document.body.appendChild(d);})()" + } + ], + "clip": "#__clip", + "clip_pad": 4, + "callouts": [ + { + "n": 1, + "sel": ".b03-file__lasfree" + }, + { + "n": 2, + "sel": "[data-slot-id=las_laz]" + } + ] + }, + { + "name": "B03_06_temp_modal", + "route": "#/b03-file-input", + "project": "road", + "before": [ + { + "eval": "document.head.insertAdjacentHTML('beforeend','')" + }, + { + "wait": ".b03-file__temp-picker .ui-btn" + }, + { + "click": ".b03-file__temp-picker .ui-btn" + }, + { + "wait": ".b03-file__temp-modal" + }, + { + "wait_ms": 800 + } + ], + "clip": ".b03-file__temp-modal", + "callouts": [ + { + "n": 1, + "sel": ".b03-file__temp-modal-actions" + } + ] + }, + { + "name": "B03_07_plan_import_modal", + "route": "#/b03-file-input", + "project": "road", + "before": [ + { + "eval": "document.head.insertAdjacentHTML('beforeend','')" + }, + { + "wait": ".b03-file__columns" + }, + { + "click": "button:has-text('예정노선에서 가져오기')" + }, + { + "wait_ms": 1200 + } + ], + "clip": ".ui-modal", + "callouts": [ + { + "n": 1, + "sel": ".ui-modal__body" + } + ] + }, + { + "name": "B03_08_left_panel", + "route": "#/b03-file-input", + "project": "road", + "viewport": [ + 1600, + 560 + ], + "before": [ + { + "eval": "document.head.insertAdjacentHTML('beforeend','')" + }, + { + "wait": ".ui-workflow-overlay__panel" + }, + { + "wait_ms": 1200 + } + ], + "clip": ".ui-workflow-overlay__panel", + "callouts": [ + { + "n": 1, + "sel": ".ui-workflow-overlay__title" + }, + { + "n": 2, + "sel": ".ui-workflow-overlay__handle--side" + }, + { + "n": 3, + "sel": ".ui-workflow-overlay__panel .ui-help-btn" + } + ] + } +] \ No newline at end of file