정의
$centerSphere구형 기하학을 사용하는 지리 지리 공간적 쿼리 에 대한 원을 정의합니다. 쿼리 원의
$centerSphere경계 내에 있는 문서를 반환합니다. GeoJSON 객체와 레거시 좌표 쌍 모두에서 연산자 사용할 수 있습니다.를 사용하려면 다음을 포함하는 배열
$centerSphere지정합니다.원의 중심점의 그리드 좌표,
라디안 단위로 측정한 원의 반지름입니다. 라디안을 계산하려면 구형 연산자에 대한 거리를 라디안으로 변환을 참조하세요.
{ <location field>: { $geoWithin: { $centerSphere: [ [ <x>, <y> ], <radius> ] } } } 중요
경도와 위도를 사용하는 경우 경도를 먼저 지정합니다.
행동
애플리케이션은 지리 공간적 인덱스 없이도 를 사용할 수 있습니다. 그러나 지리 공간적 인덱스는 $centerSphere 인덱싱되지 않은 쿼리보다 훨씬 빠른 쿼리를 지원 .
2dsphere 및 2d 지리 공간적 인덱스는 $centerSphere 모두 를 지원 .
예시
다음 예에서는 그리드 좌표를 쿼리하고 경도 88 W 및 위도 30 N 반경 10마일 내의 모든 문서를 반환합니다. 쿼리는 지구의 대략적인 적도 반경인 3963.2마일을 나누어 거리를 라디안으로 변환합니다.
db.places.find( { loc: { $geoWithin: { $centerSphere: [ [ -88, 30 ], 10/3963.2 ] } } } )