이 문서는 지원되지 않는 버전의 PostgreSQL을위한 것입니다.
당신은에 대해 같은 페이지를 보려고 할 수 있습니다사설 토토 사이트 : 문서 : 17 : F.14. Earthdistance-큰 원형 사설 토토 사이트버전 또는 위에 나열된 다른 지원 버전 중 하나입니다.

F.11. 배트맨 토토

theEarthdistance모듈 제공 큰 원 거리를 계산하는 두 가지 다른 접근법 배트맨 토토 표면. 먼저 설명 된 것은에 의존합니다.큐브패키지 (필수전에 설치해야Earthdistance설치할 수 있습니다). 두 번째 내장을 기반으로포인트DataType, 좌표에 경도 및 위도 사용.

이 모듈에서 지구는 완벽하게 가정됩니다. 구의. (너무 부정확하다면, 당신은postgis프로젝트.)

F.11.1. 큐브 기반 지구 거리

데이터는 지점 인 큐브에 저장됩니다 (두 모서리는 동일) x, y 및 z를 나타내는 3 개의 좌표 사용 지구의 중심으로부터의 거리. 도메인EarthOver큐브제공됩니다. 여기에는 값이 이들을 충족시키는 제약 조건 검사가 포함됩니다 제한 사항과 실제 표면에 합리적으로 가깝습니다. 지구.

배트맨 토토 반경은에서 얻습니다.Earth ()함수. 그것은 미터로 제공됩니다. 하지만 이 기능을 변경하면 사용할 모듈을 변경할 수 있습니다. 다른 단위, 또는 다른 반경 값을 사용하려면 당신이 더 적절하다고 생각합니다.

이 패키지에는 천문 데이터베이스에 대한 응용 프로그램이 있습니다 잘. 천문학 자들은 아마도 변화를 원할 것입니다Earth ()반경을 반환하려면180/pi ()거리가 각도에 도달합니다.

함수는 위도의 입력을지지하기 위해 제공됩니다 위도 (도), 위도의 출력을 지원하기 위해 경도, 둘 사이의 큰 원 거리는 계산합니다 포인트 및 인덱스 용으로 사용할 수있는 경계 상자를 쉽게 지정하려면 검색.

다음 기능이 제공됩니다.

표 F-3. 큐브 기반의 지구 분위기 기능

기능 반환 설명
Earth () float8 지구의 가정 된 반경을 반환합니다.
sec_to_gc (float8) float8 정상 직선 (Secant) 거리를 변환합니다 지구 표면의 두 지점 사이 그들 사이의 큰 원 거리는.
gc_to_sec (float8) float8 큰 원 거리를 둘 사이로 변환합니다 지구 표면에 정상까지의 지점 직선 (Secant) 사이의 거리.
ll_to_earth (float8, float8) Earth 표면에있는 지점의 위치를 ​​반환합니다. 지구는 위도 (인수 1)와 경도를 주었다 (인수 2) 학위.
Latitude (Earth) float8 위도를 배트맨 토토 표면.
경도 (지구) float8 경도를 한 지점의 정도로 반환합니다. 지구의 표면.
Earth_distance (Earth, 지구) float8 둘 사이의 큰 원 거리를 반환합니다 지구 표면의 지점.
Earth_box (Earth, float8) 큐브 인덱스 검색에 적합한 상자를 반환합니다 큐브@운영자 주어진 큰 원 거리는 a 위치. 이 상자의 일부 포인트는 그 이상입니다 위치에서 지정된 큰 원 거리, 따라서 a 두 번째 점검 사용Earth_distance에 포함되어야합니다 쿼리.

F.11.2. 포인트 기반 지구 거리

모듈의 두 번째 부분은 지구를 나타내는 데 의존합니다. 유형의 값으로 위치포인트, in 첫 번째 구성 요소가 경도를 나타 내기 위해 학위 및 두 번째 구성 요소는 표현됩니다 정도의 위도. 포인트는 (경도, 위도)로 간주됩니다. 경도는 직관적 인 것에 더 가깝기 때문에 그 반대도 마찬가지입니다. x 축과 위도에 대한 아이디어

단일 연산자가 제공됩니다 :

표 F-4. 포인트 기반 지구 분위기 연산자

운영자 반환 설명
포인트 <@ 포인트 float8 두 사이의 법령 마일로 거리를 제공합니다 지구 표면의 지점.

큐브기반 부품 모듈의 유닛은 여기에 연결되어 있습니다 : 변경Earth ()함수는 영향을 미치지 않습니다 이 연산자의 결과.

경도/위도 표현의 한 가지 단점은 다음과 같습니다 근처의 가장자리 조건에주의를 기울여야합니다. 기둥과 거의 +/- 180 도의 경도. 그만큼큐브기반 표현은 이것을 피합니다 불연속.