2012-01-13 20 views
3

四角形内にBufferedImageを描画する必要があります。 私はそれをしたい:私は猫を希望 四角形のイメージを四辺形のイメージに描画/ワープする

enter image description here

が四角形内に描画されるように変形します。

Graphicsオブジェクトがイメージを描画するためのさまざまな方法を持っているが、唯一の(Graphics.drawImage方法を参照)XおよびY軸に沿ってそれらを延伸します。

私が夢見ているのは、Graphics.drawImage()の方法で、四角形の4点の座標を指定します。それを行う簡単な方法はありますか?

答えて

1

標準のJavaパッケージでこれを行う簡単な方法がわかりません。もちろん、4コーナーの画像ワーピングのための独自の双線形またはパースペクティブ変換を実装することもできますが、そのすべてを処理したいと考えています。

私は、Java Advanced Imaging API(javax.media.JAI)を調べることをお勧めします。 http://java.sun.com/products/java-media/jai/forDevelopers/jai1_0_1guide-unc/Geom-image-manip.doc.html#55959

+0

ありがとうございます。私はそれを見てみましょう! – julien

1

ここで目的コード-cで行う方法のコードはこちらhttps://github.com/hfossli/AGGeometryKit/に記載されています。私はそれがjavaに移植することが可能であると確信しています。

+0

ありがとうございます。私はjavaに移植しようとします。 – julien

+0

元気です。あなたが本当に必要とするのは、ここにあるコードです:http://stackoverflow.com/a/12820877/202451あなたはそのコードでJavaのための3dマトリックスを作成することができるはずです。このファイルの最後にあるのと同じコードですhttps://github.com/hfossli/AGGeometryKit/blob/master/Source/AGQuad.m – hfossli

+0

4行と列の行列が必要です...私は 'これはhttp://developer.android.com/reference/android/graphics/Matrix.html – hfossli

関連する問題