Tag: 地理

如何使用C#/ SQL Server 2008空间“平均”两个或更多地理线串

假设我从一项关于特定候鸟行为的研究中得到了一组结果。 这只鸟已被标记,GPS接收器记录了它在五年内每年所遵循的迁移路径。 结果存储在SQL Server表中,该表包含每年路径的一个地理线串。 你将如何定义代表五年期间“平均”路径的线串? 请注意,每个样本线串可能包含不同数量的点。 它们也不会以完全相同的点开始和结束。 到目前为止,我所获得的最佳方法是使用插值来确定沿每个线串的特定设定比例的点。 因此,例如,起点,四分之一路,沿着每条路线的中途等。然后计算所有路线上这些位置的平均纬度/经度,并从这些平均点构建新的地理线串。 我查看了一些计算几何书籍,看看是否有更好的已知算法或技术来做到这一点,但似乎没有任何相关性。 我不敢相信这不是别人以前没有做过的事情…… 我不需要确切的代码 – 只是建议任何更好的一般方法。 我也不需要“超精准”。 作为旁注,我理想地喜欢这种方法也适用于两个或多个多边形。 谢谢你的任何建议!

在.net 4.5中有类似dbgeometry makevalid的东西吗?

我正在尝试计算折线的面积 string poly = “POLYGON ((637604.918432772 2230520.64934531, 637622.257266129 2230419.44632915, 637279.107128549 2230192.04910755, 636765.470527745 2230179.6468564, 636778.005055813 2229861.77192838, 636529.81646905 2229464.29327025, 635813.486592791 2229523.30345774, 636017.385069448 2229974.32341381, 636267.323659164 2230070.32127916, 637035.026966561 2230404.70764784, 637275.265066307 2230401.13408429, 637604.918432772 2230520.64934531, 637604.918432772 2230520.64934531))”; DbGeometry gm = DbGeometry.FromText(poly, 32637); double area= gm.Area.Value; // here I got the error Exception has been thrown by the target of an invocation. […]