今、私は問題を見つけました。ユーザーは右下から始めて時計回りに多角形を描きました。ポイントを最大の緯度から並べ替えてから、緯度と経度で並べ替えて逆方向に移動すると、機能します。そのためのヘルパーを見つけましたが、「それが間違っていることを知っている」場合にのみ機能します:
if(sqlGeography.EnvelopeAngle() > 90)
sqlGeography ? sqlGeography.ReorientObject();
私の価値観を修正する小さなソリューションをまとめてください:https://github.com/danielwertheim/GeographyFactory>
およびそれに関するブログ投稿: http://danielwertheim.se/sqlgeography-in-sql-server-2012-polygon-must-start-on-correct-position/
そして、本当の「問題」である左手の法則についてのフォローアップ:
http:// danielwertheim.se/sqlgeography-in-sql-server-2012-polygon-must-start-on-correct-position-no/