1

我有代表地球上边界矩形的坐标:

左上角纬度

左上角经度

右下角纬度

右下角经度

我需要编写函数来确定具有经纬度坐标的给定点是否命中边界矩形。

有什么办法吗?我没有在 sql server 中找到执行此操作的函数。所有函数都适用于线和多边形,但我只有边界,而不是完整的多边形或线。

4

1 回答 1

1

您需要创建四个点的多边形,并STWithin针对您的几何点或STIntersects地理进行调用

即:http: //msdn.microsoft.com/en-us/library/ff929207.aspx

 declare @area geography, @point geography
 select @area = geography :: STGeomFromText('polygon((10 10, 20 10, 20 20, 10 20, 10 10))', 4326)
 select @point = geography :: STGeomFromText('point(15 15)', 4326)
 select @area.STIntersects(@point)

 select @point = geography :: STGeomFromText('point(5 5)', 4326)
 select @area.STIntersects(@point)
于 2012-07-10T14:37:04.987 回答