3

多くの2Dポイント/ラインを表示できる必要があるWPF(.NET 4.0)でCADのようなアプリケーションを作成しようとしています。マウスオーバーでズーム、パン、回転、ポイント スナップを使用して、都市全体の CAD プランを表示するために使用されます。

現在、私は純粋にWPFを使用しています。CAD ファイルからオブジェクトを読み込んで StreamGeometry に描画し、それを新しいパスのストロークとして使用し、いくつかの変換を行って Canvas に追加します。

私の問題は、このソリューションが十分に拡張できないことです。小さなCADファイルでは問題なく動作しますが、都市の半分(住宅と土地の境界)を表示したい場合、非常に遅くなります。

また、CAD ファイルを画像に変換しようとしましたが、32000x32000 の解像度では不十分な場合があり、縮小すると線が細すぎます。

最後に、これをキャンバス (2D/3D) に背景として配置できるようにする必要があります。

ここでの最良の選択肢は何ですか?

ありがとう、ニクラス

4

3 に答える 3

1

wpfは、大規模な3Dモデルには適していません。遅すぎるのではないかと思います。あなたの最善の策は、ダイレクト3DまたはopenGLです

ただし、direct3d、openGLの速度でも、都市全体を表示しようとしている場合は、シーンをレンダリングする前に、できるだけ多くのポリゴン/頂点をカリングする方法を検討する必要があります。

これに関する大量の情報があります(通常はゲーム開発中です)。錐台カリング、近平面および遠平面のカリングを含むいくつかのテクニックがあります。

また、おそらく静的なシーンがあるため、バイナリ空間パーティショニングを使用できる場合があります。

于 2012-02-07T00:56:58.387 に答える
0

Chris Lovettのこのような VirtualCanvas を使用します。

于 2013-07-31T22:14:17.963 に答える