边界框 - 点

时间:2012-11-25 21:30:42

标签: sql sql-server-2008 sql-server-2008-r2 geometry geospatial

我有两列Northing和Easting,它们是NZTM 2000格式。从这两列中,我使用geometry :: Point(Easting,Northing,0)计算我的几何列。下一步创建一个边界框,以在我的几何体列上创建空间索引。在创建空间索引时,SQL Server 2008 R2会向我询问绑定框,即X Min,Y Min,X Max,Y Max。

那么我需要如何计算我的边界框以在我的几何体列上创建空间索引。我能找到min(Northing)= X Min,min(Easting),max(Northing),Max(Easting)。如果我正在进行正确的计算以创建空间索引的边界框,有人可以帮助我吗?

我想创建索引的原因是因为我想使用STContains()来检查我的点在该区域中的位置。

干杯,

2 个答案:

答案 0 :(得分:1)

如果您希望索引覆盖所有数据或仅包含部分数据,这将取决于此。 如需全面保险,您可以使用:
XMIN:-180
YMIN:-90
XMAX:180
YMAX:90

参考:Beginning Spatial with SQL server By Alastair Aitchison
 (我强烈推荐这本书)

答案 1 :(得分:1)

我没有使用Eastings和Northings,但我相信应该采用相同的逻辑。

我使用以下代码从几何创建邮政编码边界框:

更新BBox.dbo.ZIPs
SET bbox = geom.STEnvelope()

我也强烈推荐收到Tomas提到的那本书。