거리 측정기 데이터 수집 준비

거리 측정기를 사용하여 대상 객체의 위치, 오프셋, 높이 정보를 취득할 수 있습니다. 거리 측정기는 일반적으로 다음과 같은 상황에서 사용됩니다.

  • 객체에 가까이 가기 어렵거나 안전하지 않아 접근할 수 없는 객체의 위치를 매핑하는 경우입니다. 예를 들어 섬에 있는 나무나 통행량이 많은 도로 한가운데의 맨홀 등이 있습니다.
  • GPS 신호가 잡히지 않거나 충분한 정확도의 GPS 위치를 취득할 수 없는 곳에서 객체의 위치를 매핑하는 경우입니다. 예를 들어, 큰 나무 아래, 좁은 거리, 또는 빌딩으로 둘러싸인 일명 '어번 캐니언' 등이 있습니다.

측정 기록을 위한 현장조사 준비

먼저 어떤 측정을 기록할지 결정해야 합니다.

적어도 rangefinder 모양이 있는 텍스트 질문을 생성하여 거리 측정기에서 반환된 값을 저장해야 합니다. 이 질문은 여러 거리 측정기의 측정을 기록하는 경우 텍스트 질문(전체 JSON 객체가 저장됨), 또는 하나의 측정만 기록하는 경우 정수(Integer) 또는 소수 질문(단일 숫자 값이 저장됨)이 될 수 있습니다.

측정 유형은 measurement=를 사용하고 쉼표로 구분된 매개변수 목록(예: measurement=height,azimuth,horizontalDistance,slopeDistance,inclination)을 뒤에 덧붙어 bind::esri:parameters 열에 지정되어 있습니다.

multipleHeight 매개변수를 사용하고 쉼표로 구분된 높이 레이블 목록을 뒤에 덧붙이면 세로 구조에서도 여러 높이 측정 루틴을 수행할 수 있습니다. 공백이 포함된 높이 레이블이 있는 경우 매개변수의 목록을 따옴표 안에 넣습니다(예: measurement="multipleHeight,Height 1,Height 2,Height 3"). 여러 높이 측정 루틴은 다른 측정 값과 결합할 수 없으며 단독으로만 사용할 수 있습니다.

현장조사의 추가 텍스트 질문은 개별 측정을 저장할 수 있습니다. pulldata 함수를 사용하여 JSON 객체에서 거리 측정기가 반환한 속성을 끌어옵니다. 예를 들어, pulldata("@json",${tree},"azimuth")는 진행 방향 값(방위각)만 반환합니다.

거리 측정기가 반환한 JSON 객체의 예시는 다음과 같습니다. 이러한 속성은 위와 비슷한 pulldata 식을 사용하여 질문에서 가져오고 저장할 수 있습니다.

{
    "referenceCoordinates": {
       "latitude":-37.8479578,
       "longitude":144.9792849
    },
    "targetCoordinates": {
       "latitude":-37.847956857525,
       "longitude":144.979303248161
    },
    "height":0.6,
    "heightUnits":"m"
    "horizontalDistance":2.1,
    "horizontalDistanceUnits":"m",
    "slopeDistance":2.1,
    "slopeDistanceUnits":"m",
    "azimuth":50.1,
    "azimuthUnits":deg",
    "inclination":-4.4,
    "inclinationUnits":"deg",
    "heightArray":[0.6,0.9,1.1,1.4,2]
}

거리 측정기 모양이 있는 질문이 포함된 현장조사가 실행되면 사용자에게 질문 옆에 거리 측정기 아이콘이 표시됩니다. 사용자는 아이콘을 누르고, 거리 측정기로 대상을 찍고, 현장조사로 돌아와서 남은 질문에 대한 답을 작성하여 측정을 취득합니다.

워크플로에서 사용할 현장조사 준비

현장조사에 대체 구성을 적용하여 Survey123 갤러리의 거리 측정기 타일에서 현장조사를 선택할 수 있도록 할 수 있습니다.

거리 측정기 타일은 거리 측정기로 측정한 값이 현장조사의 일괄 데이터 입력을 구성하는 반복 취득 프로젝트에 사용하기 적합합니다. 여러 현장조사가 거리 측정기의 측정을 수락하도록 구성할 수 있으며, 취득 시 선택 가능합니다.

현장조사가 거리 측정기 타일의 현장조사 목록에 나타나도록 구성하려면 bind::esri:workflow 열에 다음 값 중 하나를 추가합니다.

  • rangefinderMode=height
  • rangefinderMode=offset
  • rangefinderMode=height,offset
  • rangefinderHeight

이 매개변수는 앱에 어떤 거리 측정기 측정 워크플로를 실행하는지 알리고 반환된 JSON 객체를 연결된 텍스트 질문에 저장합니다. 이러한 질문은 현장조사에서 숨길 수 있으며(숨겨진 모양 사용) 개별 측정 값은 추가 질문에 저장할 수 있습니다.

여러 높이 측정 워크플로 또한 rangefinderMode=height를 통해 텍스트 질문을 포함하고 각 높이 값을 저장하기 위한 추가 소수 질문을 더해 구성할 수 있습니다. XLSForm의 bind::esri:workflow 열에서 각 소수 질문에 rangefinderHeight의 값을 입력합니다.

현장조사의 추가 질문은 다른 개별 측정 값을 저장할 수 있습니다. 측정 기록을 위한 현장조사 준비에서 설명한 대로 pulldata 함수를 사용하여 JSON 객체에서 거리 측정기가 반환한 속성을 끌어옵니다.