Join us at MongoDB.local London on 7 May to unlock new possibilities for your data. Use WEB50 to save 50%.
Register now >
Docs Menu
Docs Home
/ /

$centerSphere (operador de predicado de consulta)

$centerSphere

Define un círculo para un query geoespacial que utiliza geometría esférica. La query devuelve documentos que se encuentran dentro de los límites del círculo. Puedes utilizar la $centerSphere operador tanto en GeoJSON objetos como en legacy coordinate pairs heredados.

Para utilizar $centerSphere, especifica un arreglo que contenga:

  • Las coordenadas de la cuadrícula del punto central del círculo, y

  • El radio del círculo medido en radianes. Para calcular radianes, consulte Convertir distancia a radianes para operadores esféricos.

{
<location field>: {
$geoWithin: { $centerSphere: [ [ <x>, <y> ], <radius> ] }
}
}

Importante

Si usa longitud y latitud, debe especificar primero la longitud.

Las aplicaciones pueden usar $centerSphere sin un índice geoespacial. Sin embargo, los índices geoespaciales admiten consultas mucho más rápidas que sus equivalentes sin indexar.

Tanto 2dsphere como 2d los índices geoespaciales admiten $centerSphere.

El siguiente ejemplo query las coordenadas de la cuadrícula y devuelve todos los documentos dentro de un radio de 10 millas de longitud 88 W y latitud 30 N. La query convierte la distancia a radianes dividiéndola por el radio ecuatorial aproximado de la tierra, 3963,2 millas:

db.places.find( {
loc: { $geoWithin: { $centerSphere: [ [ -88, 30 ], 10/3963.2 ] } }
} )

Volver

$center

En esta página