适用对象:
MongoDB vCore
该 $center
运算符使用要用于查询的 $geoWithin
旧坐标对指定圆圈。 它为平面、欧克里丹平面上的地理空间查询定义圆圈。
语法
$center
运算符的语法如下:
{
$geoWithin: {
$center: [ [ <x>, <y> ], <radius> ]
}
}
参数
参数 | 类型 | DESCRIPTION |
---|---|---|
<x> |
数字 | 圆中心点的 x 坐标 |
<y> |
数字 | 圆中心点的 y 坐标 |
<radius> |
数字 | 圆的半径与坐标的单位相同 |
示例:
让我们使用存储数据集在中心点的 50 度半径内查找所有存储。 此查询可帮助识别特定位置的特定距离内的存储。
db.stores.find({
"location": {
$geoWithin: {
$center: [[-112.7858, -29.1866], 50]
}
}
})
此查询将返回如下存储:
{
"_id": "f2a8c190-28e4-4e14-9d8b-0256e53dca66",
"name": "Fabrikam, Inc. | Car Accessory Outlet - West Adele",
"location": {
"lat": -47.2548,
"lon": -38.4071
},
// ... other fields
}
该查询搜索第一个 Up 顾问麦克风集市位置的 50 度半径内的商店,这对于分析市场覆盖范围或规划交付路线很有用。
重要
作员 $center
在一架平整的欧克里丹飞机上工作。
对于更准确的地球样球面计算,请改用 $centerSphere
。
半径以与所使用的坐标系相同的单位指定。