2

だから私はhttp://www.gadm.org/データセットをいじっています。

緯度と経度から国と州 (または同等のもの) に移動したい。

したがって、データを単純化するために、データをグループ化し、ジオメトリを結合しています。ここまでは順調ですね。結果は素晴らしいです。ベルギーを引き戻すことができます。問題ありません。

私はオーストラリアを引き戻し、物が大きすぎるのでビクトリアを手に入れました。

正直なところ、詳細のレベルはあまり気にしません。線が本来あるべき場所から 1 km 以内にある場合は問題ありません (形状が大きく、小さくない限り)

地理空間オブジェクトの複雑さを軽減して、世界をすばやくシンプルに表示するための最良のアプローチは何ですか?

すべてのデータは Geometry データとして保持されます。

4

2 に答える 2

7

質問に「tsql」のタグを付けたので、Sql Serverを使用していると思います。したがって、 Reduceという便利な関数が既に用意されており、これをジオメトリ データ型に適用して簡略化できます。

例(上記のリンクからコピー):

DECLARE @g geometry;
SET @g = geometry::STGeomFromText('LINESTRING(0 0, 0 1, 1 0, 2 1, 3 0, 4 1)', 0);
SELECT @g.Reduce(.75).ToString();

この関数は、簡略化のしきい値を指定した許容値の引数を受け取ります。

于 2012-12-01T04:21:14.487 に答える
1

複雑さは、形状の頂点の数によってのみ決定されると思います。かなりの数の形状単純化アルゴリズムから選択することができます (おそらくいくつかのソースも)。

単純なアプローチとして、できれば小さなセグメントを大きなセグメントに隣接させて、結果が大きすぎるエラー (たとえば、追加された領域の観点から) を引き起こさない場合は、頂点を反復処理して凹型の頂点を拒否できます。より洗練されたアプローチでは、既存のセグメントを分割して、小さなセグメントをより適切に削除できます。

于 2012-11-30T06:42:30.223 に答える