質問

タイトルはそれ自体を物語っています...私はそのような別の質問を見つけようとしましたが、もし存在するならそれを逃したに違いありません。 GAPIを置き換えるコアライブラリから.netラッパーに至るまで、何でも探しています。3Dが不要な素晴らしいUIを構築するためのものです...

役に立ちましたか?

解決

.NETのSystem.Drawingクラスは、人々が理解しているよりもはるかに強力です。欠落している唯一のもの(これは2Dグラフィックスで実際に重要です)は、個々のピクセルを読み書きする機能です。これは、ビットマップオブジェクトでGetPixelメソッドとSetPixelメソッドを使用して技術的に可能ですが、これらのメソッドは想像を絶するほど遅くなります。

幸いなことに、ビットマップでLockBitsを呼び出してからビットマップのバイトデータに直接アクセスすることで実装できる超高速の代替手段があります。私はこれを効果的に使用しました。実際、私は先週、完全に.NETで魚眼レンズエフェクトを作成しました(ライブラリやPInvoke呼び出しは一切ありません)。

このJPEGは一種の安っぽいですが、.NETを使用するだけで何が可能かを示しています:

代替テキストhttp://www.freeimagehosting.net/uploads/5fdd250b21.jpg

他のヒント

IMOフレームバッファーを手に入れて、可能であれば直接描画するか、D3DMを使用するか、coredll.dllからDrawGradient()などのAPIを介してNative Platform(GDI)が提供する描画サービスを使用することをお勧めしますWMを使用している場合は、aygshell.dllを活用してウィジェットを描画できる場合があります。

ここにいくつかのリンクがあります...

1)ドットネットからのグラデーション塗りつぶしの使用
2)グラデーション塗りつぶしを直接使用する
3)その他のネイティブGDI関数

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top