質問

私は、カスタムヒートマップジェネレータを書くプロセスにいますよ。私は、最速の方法は、Javaのボックス(100万の周りまで)を描画するためには何か思ったんだけど。私が見つけたほとんどの質問は、(ゲームのように)動的な画像に集中しており、静止画像のために行くには良い方法があります場合、私は思ったんだけど。私はGraphics2Dを使ったパネルの上に直接描画し、また処理ライブラリを使用することにより、スイングを使用してみました(GridLayoutのを経由して、それぞれのボックスに色のキャンバスを追加)しました。処理は非常に高速で、クリーンなイメージを生成しますが、ウィンドウはそれを維持する問題を抱えているようです。あなたが最小化時はいつでも、それはなど、ウィンドウを移動、画像の異なる部分を生成します。

私は、OpenGLを聞いたが、私はそれに触れたことがない、と私はどうかという(または他の何か)へといくつかのフィードバックを望んでいたことに時間を投資する前に、より良いアプローチとなります。

役に立ちましたか?

解決

は、静的なイメージの場合、私はBufferedImageの(BI)にそれらをペイントし、その後のGraphics2Dを経由していることを描きます。 私は、BIが最新であるかどうか私に語ったブール値を保ちます。そのように私は一度だけ、高価な絵画のコストが発生します。あなたは空想を取得したい場合は、マイナーなサイズ変更を処理するためにBIを拡張することができます。主要なサイズ変更のために、あなたはおそらくアーティファクトを導入しないようにBIを再描画することをお勧めします。また、あなたが唯一のBIやデータを塗っているよう(ななど十字線、カーソルの下の値、など)のデータを重ねるために便利です。

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