1

親愛なる友人、GLCanvas で 1 つの画像を表示する方法と、マウスを使用して GLCanvas で画像を回転させる方法を教えてください。この jogl 開発は初めてです。これを行う方法を教えてください。 jogl の開発について明確なアイデアを得るために、コード スニペットと参考サイトを参照してください。

よろしく、s.kumaran。

4

3 に答える 3

2

GLCanvas で画像を表示するには、gl.glBegin(GL.GL_POLYGON)を使用してポリゴンを作成し、クラス TextureIOを使用してテクスチャをロードします。次に、Java Swings で MouseListener を使用すると、画像の回転を簡単に制御できます (つまり、テクスチャポリゴン) 単純にカメラの位置を変更するか、Model-View マトリックスでいくつかの変換 ( "gl.glRotate(angle,x-axis,y-axis,z-axis) ") を実行します。

于 2011-01-31T15:47:17.930 に答える
1

これを行う最も簡単な方法は、画像でクワッドにテクスチャを付けてから、そのクワッドにアフィン変換を適用することです。このクワッドをレンダリングすると、クワッドの頂点をシフトすることで、ほとんどすべての変換を実行できる回転画像が表示されます。

于 2009-09-26T04:06:11.007 に答える
0

回転させたい 2D 画像を持っているのではなく、3D シーンを描いていて、その向きを変更したいと思っています。

簡単に言えば、それは 2 つの部分で行われるということです。シーンの方向を 4x4 マトリックス (均質マトリックス - よくわからない場合は検索してください) として保存する必要があります。最初に、マウスのドラッグを 4x4 マトリックスの変更に変換するコードを記述する必要があります。したがって、マウスが上にドラッグされたときに、適切な回転などをマトリックスに適用します。

次に、シーンを再描画する必要がありますが、新しく変換された 4x4 マトリックスを使用します。glMatrixMode を使用してどのマトリックスを指定し (GL_PROJECTION または GL_MODELVIEW を使用)、次に glMultMatrixf() のような関数を使用して適切なマトリックスを操作します。

それが意味をなさない場合は、シーンを回転する方法に関する OpenGL チュートリアルを選択してください。OpenGL と JOGL は十分に近いため、OpenGL のメソッドは JOGL で機能します。

于 2009-10-07T17:54:44.307 に答える