• ベストアンサー

JAVA グラフィックの作成について

Eclipsを使用しJavaでAndroidの作成を練習しています。 現在、使用している参考書でポリゴンの作成が載せられているのですが、 ・透視投影変換 ・行列演算 ・射影行列 ・行列スタック ・頂点座標(0x10000) など、図形の作成についてを学習しているのですが、さっぱり理解できてません。 座標が行列で等・・・意味不明で苦しんでいます。 どこか、入門レベルから始めれるサイトなどご存じの方がおられましたら、URLをお願いします。 よろしくお願いいたします。

  • Java
  • 回答数2
  • ありがとう数2

質問者が選んだベストアンサー

  • ベストアンサー
  • e00083
  • ベストアンサー率31% (25/80)
回答No.2

参考書は、書く人によっても、簡単なことを難しい言い回しにしていりことが、たびたびあります。 おそらくですが、あなたとその参考書の相性がわるいと考えます。 類似のわかりやすい参考書と比較しながら作ることをお勧めしたす。

abuhiro
質問者

お礼

やはり相性が悪いですか・・・。 Androidの学習がしたいのに、数学ライクなプログラミング方法が盛りだくさんです。 別途参考書を購入してきます。 ありがとうございました。

その他の回答 (1)

  • salsberry
  • ベストアンサー率69% (495/711)
回答No.1

まずは高校数学Cの行列から。

abuhiro
質問者

お礼

高校数学Cの教科書が必要ですね。 このレッスンは後回しにする事にします。 ありがとうございました。

関連するQ&A

  • 透視投影された平面を正面から見たように変換したい

    透視投影で撮影された平面を、正面から撮影したように投影変換する処理を教えてください。 または、射影ひずみの補正といわれるものでしょうか? 私なりにいろいろと調べまして、 「画像の平面内の四頂点の座標を求めることができれば、平面の傾きを求めることができる。」 というところまでたどり着きまして、平面の角度を求めるところまではいきました。 しかし、その後の行列変換がわかりません。 単に回転であれば、 1    0    0 0 cosθ -sinθ 0 sinθ cosθ cosθ 0 sinθ 0   1    0 -sinθ 0 cosθ をかければよいかと思っていましたが、奥行きの収縮などの関係がわかりません。 どの様な行列をかければ求めることができるのか教えてください。 このような研究をしていますが、行列は苦手なので、簡単な質問でしたらすみません。

  • グラフィック表示が乱れます

    グラフィックアクセラレータをWindowsの画面設定で「なし」にするとなんともないのですが、ONで使うと、画面が少しおかしくなります。具体的には3D図形を表示していると、いくつかの頂点(ポリゴンの)座標が大きく移動したような表示になります。頂点は表示を変更するごとに違った物が移動します。棘の少ないウニのような画面になります。 あと、端末起動時のBIOS起動画面で、白いドットが多く表示されます。 グラフィックドライバもBIOSも最新にしましたが、直りません。 どうやって切り分けたらいいでしょうか。

  • 穴空きポリゴンデータの作成方法

    ご存じの方ご教示願います。 ポリゴンで塗り潰しされた範囲(以降、ポリゴン座標データと記述します)に塗りつぶさない箇所(以降、穴空き座標データと記述します)を複数設けたいのです。 現在データとしてはポリゴン座標データと複数の穴空き座標データがあります。 この穴空き座標データを使用してポリゴン座標データを変更し穴空き座標データを塗りつぶさないポリゴン座標データを作成したいのです・・・ 方法として、ポリゴン座標データを分割して穴空き座標を塗りつぶさないポリゴン座標データを作成すればいいのでしょうが、穴空き座標データが複数有るためとても手作業でできる作業ではありません。 できましたら、ポリゴン座標データを分割して穴空き座標を塗りつぶさないポリゴン座標データを作成してくれるツールまたは、その方法等ご存じの方ございましたら、ご教示願えないでしょうか? すみませんが宜しくお願いします。

  • DirectXで曲面の描画

    DirectX9で曲面の描画を考えています。 x=0.0~10.0、y=0.0~10.0、z=exp(-x^2-y^2)といった座標を与えて、 波を打つような曲面を作成したいのですが (QNo.2528542のような滑らかな曲面でなくてもよいです) 自分でメッシュを作成することで実現可能なのでしょうか? メッシュを作成するには頂点(バッファ)を指定するの思うのですが、 その頂点は射影行列を施した後の(x座標、y座標、Z値)になり、 上のような3次元空間上の座標から直接メッシュが作り出せないものかと考えています。 ティーポットのようなメッシュをXファイルを使わずに作り出すにはどうしたらよろしいでしょうか? (↑曲面の描画 イコール メッシュの作成と考えての質問です、そもそもこの思考が間違っていますか?) だらだらと書き綴りましたがよろしくお願いします。

  • アフィン変換を習いたてのものです

     各頂点を持つ図形(三角錐など)を拡大縮小と平行移動したとき、前者と後者の操作の順番を換えると後の図形(各頂点の座標)が異なる理由はありますか? 自分では拡縮と平行移動でそれぞれ行列の式が違うからかと思うのですが。

  • どうして3D画像の計算にグラフィックアクセラレータが必要か?(ハードウェアの観点から)←初心者

    グラフィックを専門とする方に教えて頂きたいことがあります。 自分はGPGPUを研究分野にしようとしている学生です。GPUは多数の浮動小数点(単精度)ユニットから構成されていることは周知の事実だと思います。 教えて頂きたいのは、GPU上ではグラフィック処理のどの部分を計算させて高速化しているのか、ということです。 本やネット等で少し勉強したところによると、 1.3Dグラフィックに必要なポリゴンの頂点計算(平行移動、回転等)について (1)この計算は行列が主なので計算量が多い。しかし、行列は並列演算できるので、多数の演算ユニットを持つGPUを用いて高速化できる。 (2)物体A、物体Bというようにそれぞれの物体は基本的には独立に計算できることが多いので、並列計算させると高速化できる。 (3)3Dグラフィックを計算するには座標が整数値だと荒すぎるので、座標を小数点単位まで指定することで美しい画像を表現する。 2.ポリゴンに貼り付けるテクスチャの計算も、浮動少数点ユニットを使うために0~255の整数値RGBの値を0.0~1.0の少数値に変換して計算している。また、色の計算も基本的にRGBの組合せなので独立に計算できるから、GPUを用いると高速に計算できる。 以上、1と2の理由から、"多数の"、かつ、"浮動少数点"計算ユニットを持つアクセラレータが必要。従って、頂点計算も色(テクスチャ)の計算も全てGPU上で行なっているのではないか というように理解、推測しています。 しかし、色の計算はCPU上で行なって、頂点の計算のみGPU上で行なう、ということもあるような気がします。 いずれにしろ、初心者が予想できる範囲で述べてみました。多分ヘンなことを多数言っていると思うので、ご指摘いただけると有難いです。以上の点について(できればハードウェア寄りで)知識のある方がいれば、ご指摘並びに、御教授頂けると幸いです。 よろしくお願いいたします。

  • どうして3D画像の計算にグラフィックアクセラレータが必要か?(ハードウェアの観点から)←初心者

    グラフィックを専門とする方に教えて頂きたいことがあります。 GPUは多数の浮動小数点(単精度)ユニットから構成されていることは周知の事実だと思います。 教えて頂きたいのは、GPU上ではグラフィック処理のどの部分を計算させて高速化しているのか、ということです。 本やネット等で少し勉強したところによると、 1.3Dグラフィックに必要なポリゴンの頂点計算(平行移動、回転等)について (1)この計算は行列が主なので計算量が多い。しかし、行列は並列演算できるので、多数の演算ユニットを持つGPUを用いて高速化できる。 (2)物体A、物体Bというようにそれぞれの物体は基本的には独立に計算できることが多いので、並列計算させると高速化できる。 (3)3Dグラフィックを計算するには座標が整数値だと荒すぎるので、座標を小数点単位まで指定することで美しい画像を表現する。 2.ポリゴンに貼り付けるテクスチャの計算も、浮動少数点ユニットを使うために0~255の整数値RGBの値を0.0~1.0の少数値に変換して計算している。また、色の計算も基本的にRGBの組合せなので独立に計算できるから、GPUを用いると高速に計算できる。 以上、1と2の理由から、"多数の"、かつ、"浮動少数点"計算ユニットを持つアクセラレータが必要。従って、頂点計算も色(テクスチャ)の計算も全てGPU上で行なっているのではないか というように理解、推測しています。 しかし、色の計算はCPU上で行なって、頂点の計算のみGPU上で行なう、ということもあるような気がします。 いずれにしろ、初心者が予想できる範囲で述べてみました。多分ヘンなことを多数言っていると思うので、ご指摘いただけると有難いです。以上の点について(できればハードウェア寄りで)知識のある方がいれば、ご指摘並びに、御教授頂けると幸いです。 よろしくお願いいたします。

  • 高校数学(大学入試)の質問です。

    「空間内に平面αがある。 一辺の長さが1の正四面体Vのα上への正射影の面積をSとする。 Vがいろいろと位置を変えるときの、Sの最大値と最小値を求めよ。 ただし、空間の点Pを通ってαに垂直な直線がαと交わる点を Pのα上への正射影といい、空間図形Fの各点のαへの正射影全体の つくるα上への図形をVのα上への正射影という。」 上の問題は大学入試の問題です。 空間座標を考え正四面体の頂点のうち平面αに最も近い点を原点に置くやり方でやってみたのですがいくら時間をかけても解けませんでした。 解答を見ようとしても見つからず困っています。 解答できる方がおられましたら、ぜひ解答をよろしくお願いいたします。

  • 線形代数の問題教えて下さい。(2回目です)

    列ベクトル(ここでは横に書きます)b=(7,9,3) を二つの列ベクトルa1=(1,1,0),a2=(2,3,0)が張る空間に射影することを考える。いまa1を第一列、a2を第二列、としてもつ3行2列の行列をAとする。 転置のAはAtrで表します。 1,bを(a1,a2)の張る空間へ射影する点をp=Ax、ここでxは2×1行列とする。xを求める式がAtrAx=Atrbで与えられる理由を説明しなさい。 2,このとき射影された点pの座標を示しなさい。 3,このとき射影を与えるxの成分x=(X1,X2)trを求めなさい。

  • VB2010において面積の算出

    VisualBasic2010において、複数のPanelを用いて任意に図形を作成さたのですが、その作成させた図形(重複はない)の面積を算出したいと考えております。 使用したPanelの面積を足し合わせて、作成した図形の面積を算出させる。 座標を取得して面積を算出させる。 このどちらかの方法で作成させた図形の面積を算出できるのではないかと思うのですが、 Panelの面積を設定するにはどのようなコードを用いたらよいのかわからず、面積を足し合わせることができない。 頂点座標の取得法がわからない。 ため面積を算出することができません。 いろいろと調べてみたのですが、わかりませんでした。 もしお時間等ありましたら、お力添えをいただけると嬉しく思います。 どうかよろしくお願いします。

専門家に質問してみよう