3

今日は(単純な)レンダリングの問題があります。私の現在のプロジェクトは、ファイルからデータを取得して SVG ファイルを生成します。SVG 形式のおかげでポリゴンとして物を描くのはとても簡単ですが、私には 1 つの問題があります。表示制限を超えています)。最終的な SVG ファイルを最適化するには、ポリゴンを単純な形に縮小する必要があります。

灰色の長方形を私のページと考えてください。緑色のポリゴンを実際に描いているものと考えてください。

最初の写真は私が実際に持っているものを示し、2 番目の写真は私が望む最終的な結果を示しています。

私が今持っているポリゴンとページ 必要なポリゴンとページ 最初に、表示範囲内のポイントのみを描画するために、ポリゴンを単純な三角形に縮小することを考えました。しかし、もっと簡単な解決策があると思います...もしあれば、遠慮なく私と共有してください:)

編集:

私もこのトリッキーなケースを処理する必要があります:

ここに画像の説明を入力ここに画像の説明を入力

ありがとうございました。

4

1 に答える 1

3
  1. 長方形で多角形をクリッピングします。この問題を
  2. ポリゴンを線でクリッピングします。これをさらに単純な問題に減らします。
  3. ポリゴンの 1 つのエッジを線でクリッピングします。これは本当にただ
  4. 線分と線との交点を見つける (存在する場合)。

最後の問題は、線が垂直または水平であることを考えると、非常に簡単です。それで十分?

于 2011-06-05T14:34:47.990 に答える