development of

Tieghaに関する備忘録とおまけ

【ODA】OdaMfcAppでアンチエイリアスを有効にする

ODAライブラリにサンプルとして含まれているOdaMfcAppアプリケーションでロードした図面を、 WinDirectX.txvを使用してビューをDirectXで描画させる際にアンチエイリアスを有効にする方法。

ODAライブラリのサンプルを参考にしてDWGのビューを作成するサンプルを作成してみたが、 OdGsDeviceのプロパティをいくら調整しても、線分や円などエンティティの描画に対してアンチエイリアを有効にできなかったので、 WinDirectX.txvモジュール自体に手を入れてみたら無事アンチエイリアスを有効にできたのでその方法を忘れないためにメモ。

  1. WinDireccXプロジェクトを開く
  2. ExGsDirectXDevice.cppのコードを表示させる
  3. IDirect3DDeviceのインスタンス作成後にSetRenderState関数でD3DRS_ANTIALIASEDLINEENABLEを有効にする

ただ、どうやらWinDirectX.txvはDirectX9を使用しているようなので、このモジュールを一から作り直したほうが良さそうな気もしない…