Collector For PINOGIO ============================== .. |icon-menu| image:: login/images/icon_menu.png :height: 1.1em :class: inline-icon .. |icon-back| image:: login/images/icon_back.png :height: 1.1em :class: inline-icon .. |icon-map| image:: project/images/icon_map.png :height: 1.1em :class: inline-icon .. |icon-edit-project| image:: project/images/icon_edit_project.png :height: 1.1em :class: inline-icon .. |icon-proj-info| image:: project/images/icon_proj_info.png :height: 1.1em :class: inline-icon .. |icon-manage-member| image:: project/images/icon_manage_member.png :height: 1.1em :class: inline-icon .. |icon-applicant| image:: project/images/icon_applicant.png :height: 1.1em :class: inline-icon .. |icon-apply| image:: project/images/icon_apply.png :height: 1.1em :class: inline-icon .. |icon-manage-dataset| image:: project/images/icon_manage_dataset.png :height: 1.1em :class: inline-icon .. |icon-accept| image:: project/images/icon_accept.png :height: 1.1em :class: inline-icon .. |icon-refuse| image:: project/images/icon_refuse.png :height: 1.1em :class: inline-icon .. |icon-col-edit| image:: project/images/icon_col_edit.png :height: 1.1em :class: inline-icon .. |icon-col-delete| image:: project/images/icon_col_delete.png :height: 1.1em :class: inline-icon .. |icon-invite| image:: project/images/icon_invite.png :height: 1.1em :class: inline-icon .. |icon-edit-mode| image:: map/images/icon_edit_mode.png :height: 1.1em :class: inline-icon .. |icon-layer-toc| image:: map/images/icon_layer_toc.png :height: 1.1em :class: inline-icon .. |icon-ref-layer| image:: map/images/icon_ref_layer.png :height: 1.1em :class: inline-icon .. |icon-filter| image:: map/images/icon_filter.png :height: 1.1em :class: inline-icon .. |icon-tracking| image:: map/images/icon_tracking.png :height: 1.1em :class: inline-icon .. |icon-feature-edit| image:: map/images/icon_feature_edit.png :height: 1.1em :class: inline-icon PINOGIO 계정으로 로그인하여 프로젝트·데이터셋을 불러오고, 지도 화면에서 데이터를 수집·편집하는 모드입니다. =========================================================================== 로그인 및 회원가입 =========================================================================== PINOGIO 계정은 **Collector For PINOGIO** 모드에서 팀 프로젝트에 참여하고 현장 데이터를 수집하는 데 필요한 사용자 인증 수단입니다. 계정 하나로 PINOGIO 웹과 gPocket 앱 양쪽에서 동일한 프로젝트와 데이터에 접근할 수 있어, 사무실에서 PINOGIO 웹으로 프로젝트를 구성하고 현장에서 gPocket 앱으로 데이터를 수집하는 연속적인 작업 흐름을 지원합니다. --------------------------------------------------------------------------------------- 로그인 --------------------------------------------------------------------------------------- .. list-table:: :widths: auto :align: center :class: flow-table * - .. image:: login/images/login_main.png :alt: gPocket - 앱 메인 화면 - **→** - .. image:: login/images/login.png :alt: gPocket - PINOGIO 로그인 1. 메인 화면에서 **[ Collector For PINOGIO ]** 카드를 탭합니다. 2. PINOGIO 로그인 화면으로 이동합니다. 3. **이메일** 입력란에 PINOGIO 계정의 이메일 주소를 입력합니다. 4. **비밀번호** 입력란에 비밀번호를 입력합니다. 5. **[ 로그인 ]** 버튼을 탭합니다. 6. 로그인에 성공하면 PINOGIO 프로젝트 목록 화면으로 이동합니다. .. tip:: 최초 로그인 후에는 앱을 다시 실행해도 자동으로 로그인이 유지됩니다. .. note:: 로그인에 실패하면 토스트 메시지로 오류가 표시됩니다. 이메일 주소와 비밀번호를 확인 후 다시 시도하세요. --------------------------------------------------------------------------------------- 회원가입 --------------------------------------------------------------------------------------- PINOGIO 계정이 없는 경우 gPocket 앱 내에서 직접 회원가입을 할 수 있습니다. .. image:: login/images/login.png :width: 250 :alt: gPocket - 로그인 화면 (회원가입 버튼) .. TODO: join.png 추가 후 아래 flow-table로 교체 .. .. list-table:: .. :widths: auto .. :align: center .. :class: flow-table .. .. * - .. image:: login/images/login.png .. :alt: gPocket - 로그인 화면 (회원가입 버튼) .. - **→** .. - .. image:: login/images/join.png .. :alt: gPocket - PINOGIO 회원가입 1. 로그인 화면 하단의 **[ 회원가입 ]** 을 탭합니다. 2. 회원가입 화면으로 이동합니다. 3. 아래의 필수 항목을 모두 입력합니다. .. list-table:: :widths: 80 200 :header-rows: 1 * - 입력 항목 - 설명 * - 이메일 - 로그인에 사용할 이메일 주소. 중복 사용 불가. * - 비밀번호 - 6자 이상. 영문·숫자·특수문자 조합 권장. * - 비밀번호 확인 - 위에서 입력한 비밀번호와 동일하게 입력. * - 이름 (First Name) - 사용자의 이름 (성을 제외한 이름). * - 성 (Last Name) - 사용자의 성. * - 초대 코드 - | 소속 기관에서 발급받은 초대 코드를 입력합니다. | 서버에서 코드 유효성을 검증한 뒤에만 가입이 진행됩니다. 4. 모든 항목 입력 후 **[ 회원가입 ]** 버튼을 탭합니다. 5. 가입이 완료되면 자동으로 로그인되어 프로젝트 목록 화면으로 이동합니다. .. note:: 초대 코드가 유효하지 않으면 회원가입이 진행되지 않고 오류 메시지가 표시됩니다. 관리자에게 유효한 초대 코드를 요청하세요. --------------------------------------------------------------------------------------- 로그아웃 --------------------------------------------------------------------------------------- .. image:: login/images/logout.png :width: 250 :alt: gPocket - 로그아웃 로그아웃은 **프로젝트 목록 화면의 메뉴** 에서 수행합니다. 지도 화면에서 로그아웃하려면 먼저 프로젝트 목록으로 돌아가야 합니다. 1. 지도 화면을 사용 중이라면 좌측 상단의 **[ 뒤로가기 ]** 를 탭하여 프로젝트 목록 화면으로 이동합니다. 2. 프로젝트 목록 화면 우측 상단의 **[ 메뉴 아이콘 (** |icon-menu| **)** 을 탭합니다. 3. 메뉴 상단의 **[ 로그아웃 ]** 버튼을 탭합니다. 4. 로그아웃이 완료되면 앱 메인 화면으로 이동합니다. .. attention:: 로그아웃 시 현재 편집 중인 내용이나 아직 저장되지 않은 데이터는 모두 사라집니다. 편집 내용은 반드시 저장한 후 로그아웃하세요. --------------------------------------------------------------------------------------- 계정 정보 (마이페이지) --------------------------------------------------------------------------------------- 마이페이지에서 내 계정 정보를 조회하고 비밀번호를 변경할 수 있습니다. 마이페이지는 **프로젝트 목록 화면의 메뉴** 에서 접근합니다. .. list-table:: :widths: auto :align: center :class: flow-table * - .. image:: login/images/logout.png :alt: gPocket - 프로젝트 목록 메뉴 - **→** - .. image:: login/images/mypage.png :alt: gPocket - 마이페이지 - **→** - .. image:: login/images/password_change.png :alt: gPocket - 비밀번호 변경 1. 프로젝트 목록 화면 우측 상단의 **[ 메뉴 아이콘 (** |icon-menu| **)** 을 탭합니다. 2. 메뉴에서 **[ 마이페이지 ]** 를 탭합니다. 3. 마이페이지 화면에서 아래 계정 정보를 확인할 수 있습니다. - **이름** : 등록된 사용자 이름 - **이메일** : 로그인에 사용 중인 이메일 주소 - **가입일** : 계정 생성 날짜 4. 정보를 수정한 후 **[ 저장 ]** 버튼을 탭합니다. **비밀번호 변경** 1. 마이페이지 화면에서 **[ 비밀번호 변경 ]** 버튼을 탭합니다. 2. 비밀번호 변경 팝업이 표시됩니다. 3. 아래의 항목을 입력합니다. .. list-table:: :widths: 80 200 :header-rows: 1 * - 입력 항목 - 설명 * - 현재 비밀번호 - 현재 사용 중인 비밀번호를 입력합니다. * - 새 비밀번호 - 변경할 새 비밀번호를 입력합니다. 6자 이상. * - 새 비밀번호 확인 - 위에서 입력한 새 비밀번호와 동일하게 입력합니다. 4. **[ 변경 ]** 버튼을 탭합니다. 5. 비밀번호 변경이 완료되면 확인 메시지가 표시됩니다. .. note:: 비밀번호 변경 후 다음 로그인부터 새 비밀번호를 사용합니다. 현재 로그인 세션에는 영향을 주지 않습니다. =========================================================================== 프로젝트 준비 =========================================================================== 프로젝트는 팀이 함께 공간 데이터를 수집하고 관리하기 위해 만드는 작업 공간입니다. 특정 현장 조사나 시설물 점검처럼 하나의 목적에 맞게 프로젝트를 구성하면, 팀원들이 같은 데이터셋을 공유하며 지도에서 함께 데이터를 수집하고 편집할 수 있습니다. 프로젝트에는 수집·편집 대상인 **데이터셋** 이 포함됩니다. 데이터셋은 PINOGIO 웹에서도 만들 수 있고, gPocket 앱에서도 만들 수 있으며, 어느 쪽에서 만들어도 같은 프로젝트 안에서 공유됩니다. **프로젝트 목록 화면 구성** 프로젝트 목록 화면 우측 상단의 **[ 메뉴 아이콘 (** |icon-menu| **)** 을 탭하면 아래 항목이 표시됩니다. - **로그아웃** : 현재 계정에서 로그아웃합니다. - **마이페이지** : 계정 정보 조회·수정. - **프로젝트 추가** : 새 프로젝트를 생성합니다. - **오픈소스 라이선스** : 앱 라이선스 정보. 공개 프로젝트 검색·참여 신청, 초대받은 프로젝트 확인 등은 프로젝트 목록 화면 내부의 UI에서 수행합니다. 자세한 내용은 아래 섹션에서 안내합니다. --------------------------------------------------------------------------------------- 프로젝트 생성 또는 참여 --------------------------------------------------------------------------------------- .. rubric:: 프로젝트 목록 .. list-table:: :widths: auto :align: center :class: flow-table * - .. image:: project/images/project_list.png :alt: gPocket - 프로젝트 목록 - **→** - .. image:: project/images/project_list_search.png :alt: gPocket - 프로젝트 검색 필터 - **→** - .. image:: project/images/invite_menu.png :alt: gPocket - 메뉴 아이콘 탭 로그인 후 표시되는 프로젝트 목록 화면에서 내가 참여 중인 프로젝트를 확인합니다. 검색창에 프로젝트 이름을 입력하면 목록을 필터링할 수 있습니다. - 항목을 탭하면 접기·펼치기 방식으로 해당 프로젝트의 액션 버튼이 표시됩니다. - **[ 지도 아이콘 (** |icon-map| **)** 버튼을 탭하면 해당 프로젝트의 지도 화면으로 바로 이동합니다. .. note:: 프로젝트 목록에는 내가 소유자인 프로젝트와 멤버로 참여 중인 프로젝트가 모두 표시됩니다. .. rubric:: 새 프로젝트 만들기 .. list-table:: :widths: auto :align: center :class: flow-table * - .. image:: project/images/invite_menu.png :alt: gPocket - 메뉴 열기 (프로젝트 추가) - **→** - .. image:: project/images/add_project.png :alt: gPocket - 프로젝트 생성 폼 1. 프로젝트 목록 화면 우측 상단의 **[ 메뉴 아이콘 ]** → **[ 프로젝트 추가 ]** 를 탭합니다. 2. 아래의 항목을 입력합니다. .. list-table:: :widths: 80 200 :header-rows: 1 * - 입력 항목 - 설명 * - 프로젝트 이름 - 프로젝트를 식별하는 이름입니다. 다른 프로젝트와 중복될 수 있습니다. * - 프로젝트 설명 - 프로젝트에 대한 간략한 소개입니다. 선택 입력입니다. * - 공개 범위 - | **공개** : 누구나 프로젝트를 검색해 찾을 수 있고, 게시물을 볼 수 있습니다. | 참여 신청 시 자동으로 승인됩니다. | **팀에게만 공개** : 누구나 프로젝트를 검색해 찾을 수 있지만, 게시물은 멤버만 볼 수 있습니다. | 참여 신청 시 프로젝트 소유자의 승인이 필요합니다. | **비공개** : 프로젝트가 검색되지 않고, 게시물도 멤버만 볼 수 있습니다. | 초대를 통해서만 참여할 수 있습니다. 3. **[ 저장 ]** 을 탭하면 프로젝트가 생성됩니다. 4. 생성된 프로젝트가 목록에 나타납니다. .. tip:: 현장 조사처럼 내부 팀원만 참여하는 프로젝트는 **팀에게만 공개** 또는 **비공개** 로 설정하면 외부 공개 없이 운영할 수 있습니다. .. rubric:: 프로젝트 참여 신청 .. list-table:: :widths: auto :align: center :class: flow-table * - .. image:: project/images/apply_entry.png :alt: gPocket - 프로젝트 참가신청 진입 - **→** - .. image:: project/images/search_project.png :alt: gPocket - 프로젝트 검색 목록 - **→** - .. image:: project/images/apply_confirm.png :alt: gPocket - 가입신청 확인 - **→** - .. image:: project/images/apply_entry_after.png :alt: gPocket - 신청 완료 후 초대/신청 관리 화면 - **→** - .. image:: project/images/apply_project_info.png :alt: gPocket - 프로젝트 정보보기 공개 또는 팀에게만 공개로 설정된 프로젝트는 검색하여 참여 신청할 수 있습니다. 1. 프로젝트 목록 화면에서 **[ 프로젝트 참가신청 ]** 탭 또는 관련 섹션으로 이동합니다. 2. 참여 신청 가능한 프로젝트 목록이 표시됩니다. 3. 검색창에 프로젝트 이름을 입력하여 원하는 프로젝트를 찾습니다. 4. 프로젝트 항목에서 **[ 가입신청 (** |icon-apply| **)** 을 탭합니다. 5. 확인 팝업에서 **[ 신청 ]** 을 탭합니다. 6. 신청이 완료되면 **초대 및 신청 관리** 화면의 **내 신청** 영역에 해당 프로젝트가 **승인 대기** 상태로 추가됩니다. 항목의 **[ 정보 ]** 를 탭하면 프로젝트 정보를 확인할 수 있고, **[ 신청 취소 ]** 를 탭하면 대기 중인 신청을 취소할 수 있습니다. - **공개** 프로젝트는 신청 즉시 참여가 완료됩니다. - **팀에게만 공개** 프로젝트는 소유자의 승인 후 참여가 완료됩니다. 승인 대기 상태는 참가 신청 목록에서 확인할 수 있으며, 대기 중인 신청을 취소할 수도 있습니다. .. rubric:: 초대받은 프로젝트 다른 프로젝트 소유자로부터 초대를 받은 경우 초대받은 프로젝트 섹션에서 수락 또는 거절할 수 있습니다. 1. 프로젝트 목록 화면에서 **[ 초대받은 프로젝트 ]** 탭 또는 관련 섹션으로 이동합니다. 2. 초대된 프로젝트 목록이 표시됩니다. 3. 각 항목에서 **[ 수락 (** |icon-accept| **)** 또는 **[ 거절 (** |icon-refuse| **)** 을 탭합니다. 4. 수락한 프로젝트는 프로젝트 목록에 추가됩니다. .. note:: 거절한 경우에도 같은 프로젝트에서 다시 초대를 받을 수 있습니다. 초대를 보낸 소유자가 취소하면 목록에서 자동으로 제외됩니다. .. rubric:: 프로젝트 정보 보기 및 편집 .. list-table:: :widths: auto :align: center :class: flow-table * - .. image:: project/images/project_list_actions.png :alt: gPocket - 프로젝트 목록 액션 메뉴 - **→** - .. image:: project/images/project_info.png :alt: gPocket - 프로젝트 정보 - **→** - .. image:: project/images/project_info_edit.png :alt: gPocket - 프로젝트 수정 프로젝트 목록에서 항목을 탭한 뒤 **[ 정보 ]** 버튼을 탭하면 프로젝트 정보 화면으로 이동합니다. - 프로젝트 이름, 설명, 공개 범위, 멤버 수를 확인할 수 있습니다. - 소유자는 **[ 편집 아이콘 (** |icon-edit-project| **)** 을 탭하여 이름, 설명, 공개 범위를 수정할 수 있습니다. - **[ 지도로 이동 ]** 버튼을 탭하면 해당 프로젝트의 지도 수집 화면으로 이동합니다. .. note:: 프로젝트 정보 수정 및 멤버·데이터셋 관리 기능은 프로젝트 소유자에게만 표시됩니다. --------------------------------------------------------------------------------------- 멤버 초대 및 관리 --------------------------------------------------------------------------------------- .. rubric:: 프로젝트 멤버 목록 .. list-table:: :widths: auto :align: center :class: flow-table * - .. image:: project/images/project_list_actions.png :alt: gPocket - 프로젝트 목록 액션 메뉴 - **→** - .. image:: project/images/project_member.png :alt: gPocket - 프로젝트 멤버 관리 프로젝트 목록에서 항목을 탭한 뒤 **[ 멤버 관리 (** |icon-manage-member| **)** 를 탭하면 프로젝트 멤버 목록을 확인할 수 있습니다. 각 멤버의 이름, 역할, 상태를 확인하며, 소유자는 아래 작업을 수행할 수 있습니다. .. list-table:: :widths: 80 200 :header-rows: 1 * - 역할 - 설명 * - 소유자 - 프로젝트를 만든 사용자입니다. 프로젝트 설정·멤버 관리·데이터셋 관리 등 모든 기능을 사용할 수 있습니다. * - 편집자 - 프로젝트에 참여한 사용자입니다. 지도에서 데이터 수집 및 편집을 할 수 있지만, 프로젝트 설정은 변경할 수 없습니다. 멤버 항목의 오른쪽 아이콘을 탭하면 **활동 정지** 또는 **강제 탈퇴** 처리를 할 수 있습니다. 두 경우 모두 해당 멤버는 프로젝트에 접근할 수 없게 됩니다. .. attention:: 강제 탈퇴는 취소할 수 없습니다. 활동 정지는 소유자가 언제든지 해제할 수 있습니다. .. rubric:: 멤버 초대하기 .. list-table:: :widths: auto :align: center :class: flow-table * - .. image:: project/images/project_member.png :alt: gPocket - 멤버 관리 화면 - **→** - .. image:: project/images/invite_member.png :alt: gPocket - 멤버 초대 화면 프로젝트 소유자는 사용자를 직접 검색하여 초대할 수 있습니다. 1. 멤버 관리 화면에서 **[ 초대 ]** 탭을 탭합니다. 2. 검색창에 초대할 사용자의 아이디를 입력합니다. 3. 검색된 사용자 오른쪽의 **[ 초대 (** |icon-invite| **)** 버튼을 탭합니다. 4. 초대된 사용자가 수락하면 멤버로 추가됩니다. .. rubric:: 참여 신청 관리 .. list-table:: :widths: auto :align: center :class: flow-table * - .. image:: project/images/project_list_actions.png :alt: gPocket - 프로젝트 목록 액션 메뉴 - **→** - .. image:: project/images/applicant_list.png :alt: gPocket - 참가신청 관리 목록 - **→** - .. image:: project/images/project_applicant.png :alt: gPocket - 참여 신청 완료 (멤버 추가됨) **팀에게만 공개** 로 설정된 프로젝트에 참여 신청이 들어오면 소유자가 승인 또는 거절할 수 있습니다. 1. 프로젝트 목록에서 항목을 탭한 뒤 **[ 신청자 관리 (** |icon-applicant| **)** 를 탭합니다. 2. 신청자 목록에서 각 신청자의 이름과 신청일을 확인합니다. 3. **[ 승인 (** |icon-accept| **)** 또는 **[ 거절 (** |icon-refuse| **)** 버튼을 탭하여 처리합니다. 4. 승인된 사용자는 멤버로 추가되고 프로젝트 목록에 해당 프로젝트가 나타납니다. .. note:: 공개 프로젝트는 참여 신청 즉시 자동 승인되어 신청자 관리 목록에 나타나지 않습니다. --------------------------------------------------------------------------------------- 데이터셋 구성 --------------------------------------------------------------------------------------- 데이터셋은 지도에서 수집하고 편집할 공간 데이터의 구조를 정의한 레이어입니다. 예를 들어 "맨홀 조사" 데이터셋에는 위치(포인트), 맨홀 번호, 상태, 점검일 등의 필드가 담길 수 있습니다. 데이터셋은 PINOGIO 웹에서도 만들 수 있고, gPocket 앱에서도 만들 수 있으며, 어느 쪽에서 만들어도 같은 프로젝트 안에서 공유됩니다. .. note:: PINOGIO 웹에서 데이터셋을 추가할 때 **gPocket 편집허용** 옵션이 기본으로 체크되어 있습니다. 이 옵션이 활성화된 데이터셋만 gPocket 앱에서 편집할 수 있습니다. 만약 PINOGIO에서 추가한 데이터셋이 gPocket에서 편집되지 않는다면, PINOGIO 웹에서 해당 데이터셋의 gPocket 편집허용 옵션이 활성화되어 있는지 확인하시기 바랍니다. .. rubric:: 데이터셋 목록 조회 .. list-table:: :widths: auto :align: center :class: flow-table * - .. image:: project/images/project_list_actions.png :alt: gPocket - 프로젝트 목록 액션 메뉴 - **→** - .. image:: project/images/manage_dataset.png :alt: gPocket - 데이터셋 목록 - **→** - .. image:: project/images/dataset_card_expanded.png :alt: gPocket - 데이터셋 카드 펼친 상태 1. 프로젝트 목록에서 항목을 탭한 뒤 **[ 데이터셋 관리 (** |icon-manage-dataset| **)** 를 탭합니다. 2. 해당 프로젝트에 속한 데이터셋 목록이 표시됩니다. 3. 데이터셋 항목을 탭하면 카드가 펼쳐지며 **[ 편집 / 필드 / ⋯ (더보기) ]** 액션 버튼이 표시됩니다. .. rubric:: 데이터셋 추가 (빈 데이터셋 / PostGIS 연결) 데이터셋 목록 우측 하단의 **[ + ]** FAB을 탭하면 **[ PostGIS 연결 / 빈 데이터셋 생성 ]** 옵션이 펼쳐집니다. 두 가지 방식으로 데이터셋을 만들 수 있습니다. .. list-table:: :widths: auto :align: center :class: flow-table * - .. image:: project/images/dataset_fab_expanded.png :alt: gPocket - 데이터셋 추가 FAB 펼친 상태 - **→** - .. image:: project/images/add_dataset.png :alt: gPocket - 빈 데이터셋 추가 폼 - .. image:: project/images/add_postgis_dataset.png :alt: gPocket - PostGIS 데이터셋 추가 폼 * - - - **[ 빈 데이터셋 생성 ]** - **[ PostGIS 연결 ]** **① 빈 데이터셋 생성** 새 데이터셋을 처음부터 만들 때 사용합니다. .. list-table:: :widths: auto :align: center :class: flow-table * - .. image:: project/images/add_dataset.png :alt: gPocket - 데이터셋 추가 폼 - **→** - .. image:: project/images/add_field.png :alt: gPocket - 필드 추가 시트 - **→** - .. image:: project/images/add_field_options.png :alt: gPocket - 허용값 목록 지정 - **→** - .. image:: project/images/manage_dataset.png :alt: gPocket - 데이터셋 목록 1. **[ 빈 데이터셋 생성 ]** 을 탭하면 **데이터셋 추가** 화면이 열립니다. 2. 데이터셋 메타데이터를 입력합니다. .. list-table:: :widths: 80 200 :header-rows: 1 * - 입력 항목 - 설명 * - 제목 - 목록에 표시되는 데이터셋의 이름입니다. * - 설명 - 데이터셋의 수집 목적이나 내용을 간략히 적습니다. * - 유형 - **PUBLIC** : 누구나 검색·조회 가능. **PRIVATE** : 권한이 있는 사용자만 조회 가능. * - 지오메트리 타입 - **POINT** (단일 지점) / **LINESTRING** (선) / **POLYGON** (면) 중 선택합니다. * - 이미지 포함 - 켜면 피처 속성에 사진을 첨부할 수 있는 데이터셋이 됩니다. 3. **필드** 영역의 **[ + 필드 추가 ]** 를 탭하면 **필드 추가** 시트가 열립니다. 아래 항목을 입력하고 **[ 추가 ]** 를 탭하면 필드가 목록에 추가됩니다. .. list-table:: :widths: 80 200 :header-rows: 1 * - 입력 항목 - 설명 * - 필드명 - | 데이터베이스에 저장되는 실제 컬럼명입니다. | 영문 소문자로 시작하고, 소문자·숫자·밑줄(_)만 사용 가능합니다. * - 별칭(표시 이름) - 지도와 폼에 표시되는 이름입니다. 한글·영문·숫자·공백 사용 가능. * - 데이터 타입 - | **문자형** : 텍스트 값. | **숫자형** : 정수(INTEGER) 또는 실수(DOUBLE). | **예/아니요형** : 참/거짓 값. | **날짜형** : 날짜(YYYY-MM-DD) 형식. * - 허용값 - | **제한 없음** : 임의의 값을 입력. | **목록 지정** : 미리 정의한 값 목록에서 선택. 항목을 한 줄씩 입력합니다. * - 필수 입력 - 활성화하면 저장 시 반드시 값이 있어야 합니다. 4. 모든 입력이 끝나면 **데이터셋 추가** 화면 하단의 **[ 추가 ]** 버튼을 탭하여 데이터셋을 생성합니다. 데이터셋 목록에 새 카드가 추가됩니다. **② PostGIS 연결** PostGIS 서버에 이미 있는 공간 테이블을 그대로 데이터셋으로 가져옵니다. 1. **[ PostGIS 연결 ]** 을 탭하면 **PostGIS 데이터셋 추가** 화면이 열립니다. 2. **제목 / 설명 / 유형(PUBLIC·PRIVATE)** 을 입력합니다. 3. **PostGIS 연결** 정보(호스트, 포트, 데이터베이스, 스키마)를 입력합니다. 4. 화면 하단의 **[ 추가 ]** 를 탭하면 PostGIS 테이블이 데이터셋으로 등록됩니다. .. rubric:: 데이터셋 카드 액션 (편집 · 정보 · 삭제) 데이터셋 목록에서 카드를 탭해 펼치면 **[ 편집 / 필드 / ⋯ (더보기) ]** 액션 버튼이 나타납니다. **[ 편집 ]** 은 즉시 수정 화면을 열고, **[ ⋯ ]** 를 탭하면 **[ 정보 / 삭제 ]** 시트가 열립니다. .. list-table:: :widths: auto :align: center :class: flow-table * - .. image:: project/images/dataset_card_expanded.png :alt: gPocket - 데이터셋 카드 펼친 상태 - **→** - .. image:: project/images/edit_dataset.png :alt: gPocket - 데이터셋 수정 폼 - .. image:: project/images/dataset_card_menu.png :alt: gPocket - 데이터셋 ⋯ 메뉴 (정보/삭제) - .. image:: project/images/dataset_info.png :alt: gPocket - 데이터셋 정보 페이지 * - - - **[ 편집 ]** - **[ ⋯ ]** - **[ ⋯ → 정보 ]** - **편집** : **[ 편집 ]** 버튼을 탭하면 **데이터셋 수정** 화면이 열립니다. **제목 / 설명 / 유형(PUBLIC·PRIVATE)** 을 변경하고 **[ 저장 ]** 을 탭합니다. - **정보** : **[ ⋯ ]** → **[ 정보 ]** 를 탭하면 **데이터셋 정보** 페이지로 이동합니다. 이름, 유형, 지오메트리 타입, 필드 목록(이름·유형) 등의 메타데이터를 확인하고, 우측 상단의 **[ 편집 (** |icon-edit-project| **) ]** 으로 *데이터셋 편집* 화면에 진입할 수도 있습니다. - **삭제** : **[ ⋯ ]** → **[ 삭제 ]** 를 탭하고 확인 다이얼로그에서 다시 **[ 삭제 ]** 를 탭하면 데이터셋이 제거됩니다. .. attention:: 데이터셋을 삭제하면 해당 데이터셋에 저장된 모든 피처와 필드 정의가 함께 삭제되며 복구할 수 없습니다. .. rubric:: 데이터셋 필드 관리 .. list-table:: :widths: auto :align: center :class: flow-table * - .. image:: project/images/column_list.png :alt: gPocket - 필드 목록 - **→** - .. image:: project/images/column_expanded.png :alt: gPocket - 필드 항목 펼침 (수정 카드) - **→** - .. image:: project/images/column_edit_active.png :alt: gPocket - 필드 수정 입력 완료 - **→** - .. image:: project/images/delete_field.png :alt: gPocket - 필드 삭제 확인 데이터셋이 생성된 이후에도 필드를 추가하거나, 기존 필드의 별칭을 수정하거나, 더 이상 필요하지 않은 필드를 삭제할 수 있습니다. **필드 추가** .. list-table:: :widths: auto :align: center :class: flow-table * - .. image:: project/images/add_field.png :alt: gPocket - 필드 추가 기본 입력 - **→** - .. image:: project/images/add_field_options.png :alt: gPocket - 선택형 필드 허용값 지정 1. 필드 목록 화면에서 **[ + 추가 ]** 를 탭합니다. 2. 필드명, 필드별칭, 데이터 타입, 필수 여부를 입력합니다. 3. **데이터 타입** 을 **문자형(선택형)** 으로 지정한 경우, **허용값** 영역에서 **[ 목록 지정 ]** 을 선택하고 허용 값을 한 줄씩 입력합니다. 4. **[ 추가 ]** 를 탭합니다. **필드 수정** 1. 필드 목록에서 항목을 탭하면 **필드 수정** 카드가 펼쳐집니다. 2. **별칭(표시 이름)**, **숫자 타입**, **범위 지정**, **필수 입력** 등을 변경합니다. (**필드명** 과 **데이터 타입** 은 변경할 수 없습니다.) 3. **[ 적용 ]** 을 탭하면 변경 내용이 저장됩니다. .. attention:: **필드명** 과 **데이터 타입** 은 데이터셋 생성 후 변경할 수 없습니다. **필드 삭제** 1. 삭제할 필드 항목에서 **[ 삭제 아이콘 (** |icon-col-delete| **)** 을 탭합니다. 2. 확인 다이얼로그에서 **[ 삭제 ]** 를 탭합니다. .. attention:: 필드를 삭제하면 해당 필드에 저장된 모든 데이터도 함께 삭제되며 복구할 수 없습니다. --------------------------------------------------------------------------------------- 지도로 이동 --------------------------------------------------------------------------------------- 데이터셋 구성이 완료되면 지도 화면으로 이동해 실제 데이터를 수집할 수 있습니다. - 프로젝트 목록에서 항목을 탭한 뒤 **[ 지도 아이콘 ]** 버튼을 탭하면 바로 지도로 이동합니다. - 프로젝트 정보 화면에서 **[ 지도로 이동 ]** 버튼을 탭해도 이동할 수 있습니다. =========================================================================== 지도 화면 및 데이터 수집·편집 =========================================================================== 프로젝트의 지도 화면에서 데이터를 직접 수집하고 편집합니다. 지도에 표시되는 **데이터셋** 은 PINOGIO 프로젝트에 속한 공간 데이터 레이어입니다. PINOGIO 웹 또는 gPocket 앱 어느 쪽에서 만들어도 같은 프로젝트 안에서 공유됩니다. .. list-table:: :widths: auto :align: center :class: flow-table * - .. image:: map/images/project_list.png :alt: gPocket - 프로젝트 목록 - **→** - .. image:: map/images/map_main.png :alt: gPocket - 지도 화면 구성 **지도 화면 구성 (조회 상태)** 지도에 진입하면 상단에 투명한 **플로팅 헤더** 가 떠 있고, 지도 전체에 피처와 배경 지도가 표시됩니다. 헤더와 지도 가장자리의 버튼은 아래와 같이 배치됩니다. - **좌측 상단 (플로팅 헤더)** : **[ 뒤로가기 ]** / **프로젝트 이름** / **[ 더보기 (⋮) ]** — 더보기 탭 시 사이드 메뉴가 열립니다. - **우측 상단** : **[ 편집 버튼 ]** (연필 FAB) — 편집 레이어 선택 화면으로 이동합니다. - **우측 가장자리** : **[ 레이어 TOC 아이콘 ]** — 레이어 관리 바텀시트를 엽니다. - **우측 하단** : 현위치 버튼, 줌 인/아웃, 나침반. 편집 모드나 GPS 트래킹이 실행 중이면 플로팅 헤더가 **[ {레이어명} 편집 중 ]** 또는 **[ GPS 트래킹 중 ]** 상태 헤더로 전환됩니다. **사이드 메뉴 구성** 플로팅 헤더의 **[ 더보기 (⋮) ]** 를 탭하면 우측에서 사이드 메뉴가 열리며, 아래 항목이 섹션별로 표시됩니다. .. list-table:: :widths: 100 200 :header-rows: 1 * - 섹션 - 메뉴 항목 * - 설정 - 필터 / GPS 트래킹 / 북마크 * - 작업 도구 - 오프라인 GPKG 다운로드 / 오프라인 GPKG 생성 * - 일반 - 앱 정보 .. rubric:: 앱 정보 사이드 메뉴 **[ 일반 ]** 그룹의 **[ 앱 정보 ]** 를 탭하면 앱 버전, 제작사 정보, 그리고 본 앱이 사용하는 오픈소스 라이브러리 목록을 확인할 수 있습니다. .. list-table:: :widths: auto :align: center :class: flow-table * - .. image:: map/images/open_license.png :alt: gPocket - 앱 정보 페이지 (사용된 오픈소스 목록) --------------------------------------------------------------------------------------- 데이터 조회 --------------------------------------------------------------------------------------- 지도를 탭하면 해당 위치의 피처 속성을 확인할 수 있습니다. .. list-table:: :widths: auto :align: center :class: flow-table * - .. image:: map/images/map_main.png :alt: gPocket - 지도에서 피처 선택 - **→** - .. image:: map/images/feature_info.png :alt: gPocket - 피처 속성 조회 1. 지도에서 속성을 확인할 피처를 탭합니다. 2. 선택된 피처가 지도에 하이라이트 마커로 표시되고, 하단에 **피처 선택 바텀시트** 가 열립니다. 3. 바텀시트에서 해당 피처의 속성 목록을 확인할 수 있습니다. 여러 레이어의 피처가 겹치는 경우 바텀시트에서 레이어별로 피처 목록을 확인할 수 있습니다. --------------------------------------------------------------------------------------- 데이터 수집 --------------------------------------------------------------------------------------- 지도에서 데이터를 조회한 후, 편집 모드를 활성화하여 새 도형을 그리고 속성을 기입해 피처를 생성합니다. .. rubric:: 편집 모드 활성화 .. list-table:: :widths: auto :align: center :class: flow-table * - .. image:: map/images/map_main.png :alt: gPocket - 지도 화면 (조회 상태) - **→** - .. image:: map/images/edit_menu.png :alt: gPocket - 편집 레이어 선택 화면 - **→** - .. image:: map/images/edit_layer_activated.png :alt: gPocket - 편집 모드 활성화 완료 1. 프로젝트 목록에서 작업할 프로젝트를 탭해 지도 화면으로 이동합니다. 2. 지도 화면 우측 상단의 **[ 편집 버튼 (** |icon-edit-mode| **)** (연필 아이콘)을 탭합니다. 3. **편집 레이어 선택** 화면이 열립니다. 편집할 데이터셋(레이어)을 하나 선택합니다. - 편집 권한이 부여된 데이터셋만 목록에 표시됩니다. 4. **[ 확인 ]** 을 탭하면 편집 모드가 활성화됩니다. 5. 지도 상단의 플로팅 헤더가 **[ {레이어명} 편집 중 ]** 으로 전환되고, 우측 상단 버튼이 **[ + 버튼 ]** 으로 변경됩니다. .. rubric:: 도형 생성 및 속성 입력 지오메트리 타입에 따라 지도에서 도형을 그리고, 속성을 입력하여 피처를 저장합니다. .. list-table:: :widths: auto :align: center :class: flow-table * - .. image:: map/images/add_feature.png :alt: gPocket - 도형 그리기 - **→** - .. image:: map/images/attribute_form.png :alt: gPocket - 속성 입력 - **→** - .. image:: map/images/feature_created.png :alt: gPocket - 피처 생성 완료 1. 편집 중 상태에서 우측 상단 **[ + 버튼 ]** 을 탭하여 추가 모드를 활성화합니다. 2. 지오메트리 타입에 따라 아래와 같이 도형을 그립니다. - **포인트** — 지도의 원하는 위치를 한 번 탭하면 피처가 즉시 생성되고, 속성 입력 화면이 열립니다. - **라인** — 시작점을 탭한 뒤 꺾이는 지점마다 탭하고 **[ 완료 ]** 를 탭하면 선이 완성됩니다. - **폴리곤** — 첫 꼭짓점부터 탭하여 면을 그리고 **[ 완료 ]** 를 탭하면 면이 닫힙니다. - **속성 입력** — 도형 생성 후 속성 입력 화면이 열립니다. 각 필드에 값을 입력하고 **[ 저장 ]** 을 탭합니다. .. tip:: 편집 모드에서 포인트 수집은 번거로운 커서 조정 없이 **한 번 탭으로 즉시 피처가 생성** 되어 현장에서 빠르게 수집할 수 있습니다. --------------------------------------------------------------------------------------- 데이터 편집 --------------------------------------------------------------------------------------- 기존 피처의 도형을 다시 그리거나 속성 값을 수정합니다. .. rubric:: 편집 모드 켜기 / 종료 편집 모드는 **지도 우측 상단의 편집 버튼** 으로 활성화하고, **플로팅 편집 헤더의 [ 편집 종료 ] 버튼** 으로 해제합니다. - **활성화** : 지도 화면 우측 상단의 **[ 편집 버튼 (** |icon-edit-mode| **)** 을 탭하고 편집할 데이터셋을 선택합니다. - **종료** : 편집 중 플로팅 헤더 우측의 **[ 편집 종료 ]** 버튼을 탭합니다. .. important:: 편집 중이거나 GPS 트래킹 중인 상태에서 뒤로가기를 탭하면 **"편집 중인 내용이 저장되지 않습니다. 나가시겠습니까?"** 확인 다이얼로그가 표시됩니다. .. rubric:: 피처 편집 .. list-table:: :widths: auto :align: center :class: flow-table * - .. image:: map/images/feature_selected_edit.png :alt: gPocket - 편집 대상 피처 선택 - **→** - .. image:: map/images/attribute_form.png :alt: gPocket - 속성 편집 **속성 편집** 1. 편집 모드에서 수정할 피처를 지도에서 탭하면 하이라이트 마커가 표시되고 하단에 피처 선택 바텀시트가 열립니다. 2. 바텀시트에서 **[ 편집 (** |icon-feature-edit| **)** 을 탭합니다. 3. 속성 입력 화면이 열립니다. 수정할 필드 값을 변경합니다. 4. **[ 저장 ]** 을 탭하면 변경 내용이 서버에 전송됩니다. .. tip:: 사진 첨부가 필요한 경우 속성 입력 화면의 **[ 사진 추가 ]** 버튼을 탭하여 카메라로 촬영하거나 갤러리에서 이미지를 선택합니다. **도형 편집** 편집 모드에서 피처 선택 바텀시트의 도형 편집 옵션을 탭하면 도형 수정 모드로 진입할 수 있습니다. - **꼭짓점 이동** : 꼭짓점을 탭하여 선택한 뒤 드래그합니다. - **꼭짓점 추가** : 선분 중간의 반투명 중간점 핸들을 탭하면 새 꼭짓점이 생성됩니다. - **꼭짓점 삭제** : 꼭짓점을 탭하여 선택한 뒤 **[ 삭제 ]** 아이콘을 탭합니다. - 수정이 완료되면 **[ 저장 ]** 을 탭합니다. .. rubric:: 피처 삭제 .. list-table:: :widths: auto :align: center :class: flow-table * - .. image:: map/images/delete_feature.png :alt: gPocket - 피처 삭제 확인 다이얼로그 - **→** - .. image:: map/images/feature_deleted.png :alt: gPocket - 피처 삭제 완료 안내 1. 편집 모드에서 삭제할 피처를 지도에서 탭하여 피처 선택 바텀시트를 엽니다. 2. 바텀시트의 **[ 삭제 ]** 옵션을 탭합니다. 3. **"이 피처를 삭제하시겠습니까?"** 확인 다이얼로그에 피처 ID·이름·유형이 표시됩니다. **[ 삭제 ]** 를 탭합니다. 4. 삭제가 완료되면 **"피처 1개가 삭제되었습니다"** 안내가 표시됩니다. .. attention:: 삭제된 피처는 되돌릴 수 없습니다. 삭제 전 피처 정보를 다시 한번 확인하세요. .. rubric:: 편집 종료 - **편집 모드 종료** : 플로팅 편집 헤더 우측의 **[ 편집 종료 ]** 버튼을 탭합니다. - **뒤로가기** : 편집 중이거나 저장되지 않은 내용이 있으면 **"나가시겠습니까?"** 다이얼로그가 표시됩니다. .. attention:: 저장되지 않은 데이터는 편집 모드를 종료하거나 화면을 벗어나면 모두 사라집니다. 반드시 **[ 저장 ]** 후 편집을 종료하세요. --------------------------------------------------------------------------------------- 레이어 관리 --------------------------------------------------------------------------------------- 지도 화면에서 레이어 가시성·순서·참조 레이어·배경 지도를 조정합니다. 모든 레이어 관리 기능은 **지도 우측 가장자리의 레이어 TOC 아이콘** 을 탭해 열리는 바텀시트에서 수행합니다. .. rubric:: 레이어 TOC 바텀시트 지도 우측 가장자리의 **[ 레이어 TOC 아이콘 (** |icon-layer-toc| **)** 을 탭하면 하단에 바텀시트가 열리며, 아래 섹션으로 구성됩니다. - **편집 데이터셋** : 프로젝트에 속한 수집·편집 대상 데이터셋 목록. 헤더에 ``N/N 활성`` 카운트가 표시됩니다. - **참조 레이어** : PINOGIO 프로젝트에 연결된 참조용 레이어 목록 (조건부 표시). - **배경 지도** : 배경으로 사용할 지도를 선택합니다. **가시성 토글 시연** .. list-table:: :widths: auto :align: center :class: flow-table * - .. image:: map/images/toc_all_layers.png :alt: gPocket - 모든 레이어 활성 (9/9) - **→** - .. image:: map/images/toc_single_layer.png :alt: gPocket - 1개만 활성 (1/9) - **→** - .. image:: map/images/layer_toggled_map.png :alt: gPocket - 1개 레이어만 보이는 지도 각 행 오른쪽의 **토글 스위치** 를 탭하면 즉시 지도에 반영됩니다. 위 흐름은 9개 데이터셋 중 1개(`access_routes_v3`)만 켰을 때 지도에 해당 레이어만 남는 모습입니다. **레이어 조작 방법** - **가시성 켜기/끄기** : 레이어 항목 오른쪽의 **토글 스위치** 를 탭하여 지도에서 레이어를 표시하거나 숨깁니다. - **순서 변경** : 레이어 항목을 **길게 탭한 후 드래그** 하여 순서를 변경합니다. - **상태 배지** : 현재 편집 중인 레이어에는 **[ 편집중 ]**, CQL 필터가 적용된 레이어에는 **[ 필터 중 ]** 배지가 표시됩니다. .. note:: TOC 바깥을 탭하거나 우측 상단 **[ X ]** 버튼을 탭하면 바텀시트가 닫힙니다. .. rubric:: 참조 레이어 관리 참조 레이어는 PINOGIO 에서 관리자가 프로젝트에 연결해 둔 레이어입니다. 작업 기준선이나 배경 참고 데이터로 지도에 함께 표시하기 위해 사용합니다. gPocket 에서는 참조 레이어를 새로 추가하거나 편집할 수 없고, 활성·비활성만 조정합니다. 1. 레이어 TOC 바텀시트의 **[ 참조 레이어 ]** 섹션에서 우측의 **[ 관리 ]** 버튼을 탭합니다. 2. 참조 레이어 관리 바텀시트가 열리며, 프로젝트에 연결된 모든 참조 레이어 후보가 표시됩니다. 3. 각 항목의 **on/off 스위치** 를 탭해 지도 표시 여부를 즉시 전환합니다. 4. 활성화된 참조 레이어는 레이어 TOC 바텀시트의 **[ 참조 레이어 ]** 섹션에 나타나고, 비활성화하면 목록에서 제거됩니다. .. note:: 참조 레이어는 조회·참고 목적으로만 사용할 수 있습니다. 피처를 수정하거나 새 레이어를 추가하려면 PINOGIO 웹에서 설정해야 합니다. .. rubric:: 배경 지도 변경 레이어 TOC 바텀시트의 **[ 배경 지도 ]** 섹션에서 카드를 탭하여 배경 지도를 변경합니다. .. list-table:: :widths: 80 200 :header-rows: 1 * - 배경 지도 - 설명 * - VWorld - 도로명, 건물명, 행정구역 경계 등 일반적인 지도 정보 제공. * - 위성 - 위성 이미지 기반. 실제 지형 및 건물 확인에 유용. * - OpenStreetMap (OSM) - 전 세계 오픈소스 지도. --------------------------------------------------------------------------------------- 고급 기능 --------------------------------------------------------------------------------------- 지도 사이드 메뉴의 **[ 설정 ]** 섹션에서 접근할 수 있는 고급 기능을 설명합니다. 필터 (CQL Filter) ~~~~~~~~~~~~~~~~~ CQL 필터는 지도에 표시되는 데이터를 속성 조건에 따라 좁히는 기능입니다. 예를 들어 "상태" 필드가 "미점검"인 시설물만 지도에 표시하거나, 특정 날짜 이후 수집된 데이터만 볼 수 있습니다. 필터는 PINOGIO 프로젝트에서 가져온 **데이터셋** 과 지도에 추가한 **참조 레이어** 모두에 적용할 수 있습니다. .. list-table:: :widths: auto :align: center :class: flow-table * - .. image:: map/images/cql_filter_empty.png :alt: gPocket - 필터 화면 진입 직후 (필드 미선택) - **→** - .. image:: map/images/cql_value_lookup.png :alt: gPocket - 도형 탭으로 속성 값 확인 - **→** - .. image:: map/images/cql_filter_applied.png :alt: gPocket - 필터 입력 완료 (route="루트2") - **→** - .. image:: map/images/cql_active_map.png :alt: gPocket - 필터 적용된 지도 + 노란 '필터 중' 뱃지 .. rubric:: 필터 화면 열기 사이드 메뉴의 **[ 작업 도구 ]** 섹션에서 **[ 필터 (** |icon-filter| **)** 를 탭하면 필터 설정 화면이 열립니다. (CQL 필터는 레이어 TOC가 아닌 별도 페이지로 진입합니다.) 필터가 적용된 상태에서는 지도 상단에 **[ 필터 적용 중 ]** 토스트가 표시되고, 레이어 TOC 바텀시트에서 해당 레이어에 노란 **[ 필터 중 ]** 배지가 나타납니다. .. tip:: 필터에 입력할 정확한 속성 값을 모르면, 필터 화면 진입 전에 **지도에서 도형을 탭해 속성 정보** 를 확인한 뒤 그 값을 사용하는 것이 빠릅니다. .. rubric:: 필터 설정 방법 1. 상단 탭에서 **데이터셋** 또는 **참조 레이어** 를 선택합니다. 2. 드롭다운에서 필터를 적용할 레이어를 선택합니다. 3. 조건으로 사용할 **컬럼** 을 선택하면 데이터 타입에 맞는 입력 UI가 표시됩니다. .. list-table:: :widths: 100 200 :header-rows: 1 * - 입력 방식 - 설명 * - 텍스트 입력 (STRING/TEXT) - 필터링할 문자열 값을 직접 입력합니다. * - 숫자 입력 (INTEGER/LONG) - 필터링할 정수 값을 입력합니다. * - 소수 입력 (DOUBLE/FLOAT) - 필터링할 실수 값을 입력합니다. * - 날짜 선택 (DATE/DATETIME) - 달력 팝업에서 날짜를 선택합니다. * - 선택형 드롭다운 (ALLOWED_VALUES) - 허용된 값 목록에서 선택합니다. * - 범위 입력 (RANGE_VALUES) - 최솟값~최댓값 범위 내에서 값을 입력합니다. * - 예/아니오 (BOOLEAN) - 참/거짓 값을 선택합니다. 4. 값 입력 후 **[ + 추가 아이콘 ]** 을 탭하면 조건이 추가됩니다. 5. 같은 컬럼에 값을 여러 개 추가하면 **OR 조건**, 다른 컬럼 간에는 **AND 조건** 으로 처리됩니다. 6. **[ 필터 적용 ]** 버튼을 탭하면 조건이 지도에 즉시 반영됩니다. 적용된 조건은 카드 형태로 표시되며, **[ X 아이콘 ]** 또는 **[ 필터 초기화 ]** 로 제거할 수 있습니다. .. tip:: 필터를 모두 지우려면 **[ 필터 초기화 ]** 후 **[ 필터 적용 ]** 을 탭합니다. GPS 트래킹 ~~~~~~~~~~ GPS 트래킹은 이동 경로를 실시간으로 기록하여 라인 데이터셋에 저장하는 기능입니다. 현장 조사 경로나 순찰 경로를 데이터로 남길 때 활용합니다. .. important:: GPS 트래킹을 사용하려면 위치 권한이 **항상 허용** 으로 설정되어 있어야 합니다. .. rubric:: 트래킹 시작 1. 사이드 메뉴의 **[ 설정 ]** 섹션에서 **[ GPS 트래킹 (** |icon-tracking| **)** 을 탭합니다. 2. 설정 화면에서 아래 항목을 조정합니다. .. list-table:: :widths: auto :align: center :class: flow-table * - .. image:: map/images/gps_tracking_settings.png :alt: gPocket - GPS 트래킹 설정 - **→** - .. image:: map/images/gps_tracking_recording.png :alt: gPocket - GPS 트래킹 기록 중 .. list-table:: :widths: 100 80 200 :header-rows: 1 * - 항목 - 기본값 - 설명 * - 라인 데이터셋 선택 - 가상 레이어 - | **가상 레이어** : 서버에 저장하지 않고 지도에만 표시. | **실제 데이터셋** : PINOGIO 프로젝트에서 편집 허용된 라인 데이터셋에 기록. * - 정확도 - 높음 (high) - 낮음·보통·높음·최고 중 선택. 높을수록 배터리 소모 증가. * - 거리 필터 (m) - 5m - 이전 기록 위치에서 이 거리 이상 이동했을 때만 기록합니다. * - 인터벌 (초) - 1초 - 위치를 기록하는 최소 시간 간격. 값이 클수록 배터리 절약. 3. **[ 활성화 ]** 버튼을 탭하면 트래킹이 시작됩니다. 4. 지도 상단 플로팅 헤더가 **[ GPS 트래킹 중 ]** 상태로 전환되고, 이동 경로가 라인으로 그려집니다. .. tip:: 장시간 조사에는 정확도 **보통**, 거리 필터 **10~20m**, 인터벌 **5초** 이상을 권장합니다. .. rubric:: 트래킹 일시 정지 / 재개 / 종료 - **일시 정지·재개** : 지도 화면의 **[ 트래킹 모드 버튼 ]** 을 탭합니다. - **완전 종료** : **[ 트래킹 모드 버튼 ]** 을 길게 탭 → 종료 확인 다이얼로그에서 **[ 종료 ]** 를 탭합니다. 종료 시 선택한 라인 데이터셋에 따라 동작이 달라집니다. **① 가상 레이어로 기록한 경우** 종료 후 **"전송할까요?"** 프롬프트가 표시됩니다. 전송을 선택하면 실제 라인 데이터셋으로 저장 흐름이 이어집니다. .. list-table:: :widths: auto :align: center :class: flow-table * - .. image:: map/images/gps_tracking_send_prompt.png :alt: gPocket - 가상 레이어 종료 후 전송 프롬프트 - **→** - .. image:: map/images/gps_tracking_save_confirm.png :alt: gPocket - 트래킹 기록 저장 확인 다이얼로그 - **→** - .. image:: map/images/gps_tracking_save_form.png :alt: gPocket - 트래킹 저장 속성 폼 **② 실제 데이터셋으로 기록한 경우** 종료 즉시 **"트래킹 기록 저장"** 다이얼로그가 표시되고, 확인 후 속성 입력 폼에서 저장합니다. .. list-table:: :widths: auto :align: center :class: flow-table * - .. image:: map/images/gps_tracking_save_confirm.png :alt: gPocket - 트래킹 기록 저장 확인 다이얼로그 - **→** - .. image:: map/images/gps_tracking_save_form.png :alt: gPocket - 트래킹 저장 속성 폼 .. attention:: 트래킹 종료 후에는 기록된 경로를 되돌릴 수 없습니다. =========================================================================== 오프라인 GPKG 준비 =========================================================================== 인터넷이 없는 현장에서도 지도 탐색과 데이터 수집·편집을 하려면 **GPKG 파일**\이 필요합니다. GPKG는 배경 지도·데이터셋·참조 레이어를 하나의 파일로 묶은 오프라인 패키지입니다. 현장 출발 전 PINOGIO 모드에서 GPKG 파일을 직접 생성하거나, 서버에 업로드된 파일을 다운로드하여 기기에 저장합니다. 준비가 끝나면 :doc:`../offline/index` 에서 오프라인 편집을 시작할 수 있습니다. --------------------------------------------------------------------------------------- GPKG 파일 생성 --------------------------------------------------------------------------------------- PINOGIO 지도 화면에서 작업 영역과 레이어를 지정하여 GPKG 파일을 직접 생성합니다. .. list-table:: :widths: auto :align: center :class: flow-table * - .. image:: ../offline/images/create_01_menu.png :alt: gPocket - 사이드 메뉴 작업 도구 - **→** - .. image:: ../offline/images/create_02_form.png :alt: gPocket - GPKG 생성 폼 PINOGIO 지도 화면의 사이드 메뉴 **[ 작업 도구 ]** 섹션에서 **[ 오프라인 GPKG 생성 ]** 을 탭합니다. **GPKG 파일 이름** 생성할 GPKG 파일의 이름을 입력합니다. **배경 지도 선택** 오프라인 환경에서 사용할 배경 지도를 선택합니다. .. list-table:: :widths: 100 200 :header-rows: 1 * - 배경 지도 - 설명 * - VWorld - 일반 지도 정보 제공. 오프라인 지도 탐색에 적합. * - 위성 - 위성 이미지 기반. 지형·건물 확인에 유용. * - OpenStreetMap (OSM) - 전 세계 오픈소스 지도. **데이터셋 / 참조 레이어 선택** 현재 지도에 추가된 데이터셋과 참조 레이어 목록이 표시됩니다. GPKG에 포함할 항목을 선택합니다. (복수 선택 가능) - **데이터셋** : PINOGIO 프로젝트에서 구성한 수집·편집 대상 공간 데이터. - **참조 레이어** : 편집 없이 현장 작업의 기준선이나 배경 정보로 활용하는 외부 레이어. **영역 설정** .. list-table:: :widths: auto :align: center :class: flow-table * - .. image:: ../offline/images/create_03_area_guide.png :alt: gPocket - 영역 설정 안내 - **→** - .. image:: ../offline/images/create_04_area_select.png :alt: gPocket - 영역 드래그 선택 - **→** - .. image:: ../offline/images/create_05_area_setting.png :alt: gPocket - 영역 설정 패널 1. **[ 영역 설정 ]** 버튼을 탭합니다. 2. 지도 화면에서 두 손가락으로 이동·확대하여 원하는 범위를 화면에 맞게 조정합니다. 3. 드래그하여 수집 영역을 지정합니다. 4. 하단 패널에서 선택된 영역 좌표와 다운로드 줌 범위를 확인합니다. 5. **[ 확인 ]** 을 탭하면 현재 화면 영역이 GPKG 범위로 설정됩니다. .. important:: 설정 영역이 넓을수록 GPKG 파일 크기가 커지고 생성 시간이 길어집니다. 현장에서 실제로 사용할 범위만 선택하는 것을 권장합니다. **생성 완료** .. list-table:: :widths: auto :align: center :class: flow-table * - .. image:: ../offline/images/create_06_ready.png :alt: gPocket - GPKG 생성 버튼 - **→** - .. image:: ../offline/images/create_07_done.png :alt: gPocket - GPKG 생성 완료 모든 항목 설정 후 **[ GPKG 생성 ]** 버튼을 탭합니다. 생성을 요청하면 확인 메시지가 표시되고, 파일은 기기에 저장됩니다. --------------------------------------------------------------------------------------- 프로젝트 GPKG 다운로드 --------------------------------------------------------------------------------------- 서버에 업로드된 GPKG 파일을 다운로드하여 기기에 저장합니다. 화면은 **프로젝트 GPKG** (부제: *서버에 등록된 GeoPackage*) 페이지이며, 카드를 탭해 펼치면 **[ 정보보기 / 이름수정 / 삭제 / 다운로드 ]** 4개 액션이 노출됩니다. .. list-table:: :widths: auto :align: center :class: flow-table * - .. image:: ../offline/images/download_01_list.png :alt: gPocket - 프로젝트 GPKG 다운로드 목록 - **→** - .. image:: ../offline/images/download_02_created.png :alt: gPocket - 활성 카드 다운로드 메뉴 - **→** - .. image:: ../offline/images/download_03_pending.png :alt: gPocket - 다운로드 요청 후 대기중 - **→** - .. image:: ../offline/images/download_06_complete.png :alt: gPocket - 다운로드 완료 안내 1. PINOGIO 지도 화면 사이드 메뉴의 **[ 작업 도구 ]** 섹션에서 **[ 오프라인 GPKG 다운로드 ]** 를 탭합니다. 2. 현재 프로젝트에 속한 GPKG 파일 목록이 표시됩니다. 3. **활성** 상태(파란 아이콘)의 항목을 탭하면 **[ 정보보기 / 이름수정 / 삭제 / 다운로드 ]** 4개 버튼이 펼쳐집니다. 4. **[ 다운로드 ]** 를 탭합니다. 5. 카드 상태가 **대기중** (amber 아이콘 + 노란 뱃지)으로 바뀌며 서버에서 다운로드 처리가 진행됩니다. 6. 처리가 완료되면 **"다운로드가 완료되었습니다"** 안내 다이얼로그가 표시되고, **Collector For OFFLINE MAP** 모드의 GPKG 목록에서도 확인할 수 있습니다. .. tip:: 상태가 **대기중** 으로 멈춰 있다면 우하단의 새로고침 버튼을 눌러 최신 상태를 확인하세요. .. rubric:: 카드 액션 (정보보기 · 이름수정 · 삭제) 펼친 카드에서 다운로드 외의 3개 액션을 통해 서버측 GPKG의 메타데이터를 확인하거나, 이름을 변경하거나, 삭제할 수 있습니다. .. list-table:: :widths: auto :align: center :class: flow-table * - .. image:: ../offline/images/download_02_created.png :alt: gPocket - 활성 카드 펼침 (4개 액션) - **→** - .. image:: ../offline/images/download_04_info.png :alt: gPocket - 프로젝트 GPKG 정보보기 - .. image:: ../offline/images/download_05_rename.png :alt: gPocket - 프로젝트 GPKG 이름수정 - .. image:: ../offline/images/download_07_delete.png :alt: gPocket - 프로젝트 GPKG 삭제 확인 * - - - **정보보기** - **이름수정** - **삭제** - **정보보기** : 수정일, 줌 레벨, 포함된 데이터셋·참조 레이어 목록, GPKG 속성(EPSG·WGS84 Bounds 등) 메타데이터를 확인합니다. - **이름수정** : 영역·시기별로 GPKG를 구분 관리할 때 이름을 변경합니다. 입력 후 **[ 확인 ]** 을 탭하면 서버에 즉시 반영됩니다. - **삭제** : 확인 다이얼로그에서 **[ 삭제 ]** 를 탭하면 서버에서 GPKG 파일이 제거됩니다. .. attention:: 서버에서 GPKG를 삭제하면 복구할 수 없습니다. 다른 사용자가 다운로드해 사용 중일 수 있으니 신중하게 결정하세요. --------------------------------------------------------------------------------------- 다음 단계: 오프라인 편집 --------------------------------------------------------------------------------------- GPKG 파일이 준비되었으면 현장에서 오프라인 편집을 시작할 수 있습니다. 앱 메인 화면에서 **[ Collector For OFFLINE MAP ]** 카드를 탭하면 GPKG 목록 화면으로 이동하고, 파일을 선택하면 오프라인 지도에서 데이터 수집·편집이 가능합니다. 오프라인 모드의 자세한 사용법은 :doc:`../offline/index` 문서를 참고하세요.