几何与几何之间转换时的差异地理实例

时间:2009-10-07 13:59:34

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

使用SQL Server 2008:假设我有一个有效的地理对象 geog1 ,将其转换为几何实例 geom1 (使用相同的SRID)并将其转换回对象地理 geog2 显示 geog1 geog2 之间没有区别。

但是,由于已经讨论过的问题here,我无法创建包含原始数据中的线串的地理对象。它适用于几何对象。但是,如果我在生成的几何体上执行MakeValid(),我可以再次创建一个地理对象。 问题是我不知道这个地理位置与之前geography::STGeomFromText()未接受的原始线串相比是否会有很大不同。 特别是对象长度(STLength())是我感兴趣的。

有没有人知道地理位置和几何类型之间的转换是否无法解决,以及对几何体的MakeValid()调用是否会改变数据(特别是在长度方面)?

由于

1 个答案:

答案 0 :(得分:1)

MakeValid()必然会更改几何实例的基础数据。 (如果没有做任何更改,那么生成的几何图形仍然与原始几何图形一样无效)。

在许多情况下,唯一的变化是生成几何的类型(即无效的,自相交的线串可能会成为有效的多线串),但坐标值也可能是更改。但是,这些只会移动验证几何图形所需的绝对分数,并且不会对长度产生显着影响。