gpt4 book ai didi

c# - POLYGON 180-90 的对映点异常的边

转载 作者:行者123 更新时间:2023-11-30 22:03:48 25 4
gpt4 key购买 nike

使用 DbGeography.FromText(polygonAsText, 4326); 从文本创建 DbGeography 会生成引用的异常。框尺寸已由 Google 地理编码结果作为建议的视口(viewport)尺寸提供。坐标不好吗?构建多边形时使用的顺序是否错误?

纬度/经度排序提供了除此坐标以外的其他坐标的准确结果。

东北经:180.0东北纬度:90.0

西南经度:-180.0西南纬度:-90.0

POLYGON((180 90, -180 90, -180 -90, 180 -90, 180 90))

异常:

24206: The specified input cannot be accepted because it contains an edge with antipodal points.

为什么这些坐标不能生成有效的多边形?

最佳答案

有一个很好的简单方法来解决这个问题(假设您有 SQL Server 2012 或更高版本 - 正如 John Barca 指出的那样,这是构建覆盖超过半个半球的空间对象所绝对需要的)。

尝试以下操作:

// Let's use the nice and simple "FULLGLOBE" statement to create a polygon covering the earth
SqlGeography geography = SqlGeography.STGeomFromText("FULLGLOBE", 4326);
DbGeography dbGeography = DbGeography.FromText(geography.ToString(), 4326);

转换(第二行)取 self 之前在 SO here 上的回答.

关于c# - POLYGON 180-90 的对映点异常的边,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25755153/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com