2012年10月11日木曜日

CGの数学メモ

これまで、TPでパーティクル触ってるうちに学んだものを整理、メモしてみた。

当然のごとく間違って解釈している事もあるかと思うので、その時は突っ込みのほうお願いします。
こちらも、手法見つけるたびに更新していきたいと思いまする。
又、TPのエクスプレッションの記事と、ダブルとこもあるが気にしない。


ベクトル


■ベクトルは方向と大きさを持った値

■空間での、あるポイントのワールド位置座標は原点からのベクトルの成分値である

■ベクトルAの|A|の意味は大きさを表す記号。
絶対値は、全てをプラスにするという意味に思われがちだが
本来の意味は「始まりから終わりまでの距離」である。

■ベクトルの足し算、引き算で何ができるか?
基礎はこちらが、すんごくわかりやすいです^^
線分上の点を求めることができる→こちらの「ベクトルの加算を用いて~・・」のところ
ベクトルの加算で、動きを滑らかな軌道にする事ができる。こちら
ベクトルの減算で、2点のベクトルを求める事ができる。TPで言う、C distanceノードと思えばよい。こちら

■内積は何ができるのか?

-----------------------------------------------------------------------------------


●二つのベクトルのなす角が求まる。
内積の公式、A*B=|A||B|cosθより
cosθを求めればよい。
--追記2012/10/11-
角度として、値を求めるならarccosθとする。
cosθ=0.5の場合、arccosθ=60度
------------------

●ベクトルの投影の長さ(大きさ)が求まる。
A*unit(B)=投影の長さ
画像
-----------------------------------------------------------------------------------
条件命題

●二つのベクトルの垂直チェック

A*B=0ならば垂直

●二つのベクトルの角度情報(二つのベクトルのなす角をθとする)

A*B>0のとき、θ<90度
A*B<0のとき、θ>90度
-----------------------------------------------------------------------------------


■外積は何ができるのか?
はじめに、AxBで表されるxはcrossという。よってクロス積とも言われる。
結果はベクトル値だが、二次元の場合だとスカラー値になる。

●二つのベクトルに対して、垂直なベクトルが求まる
右手の法則により、垂直の向きを割り出す!
AxBが上向きなら、BxAは下向きになる。
右手の手首を、ベクトルA,Bの交点に置き、親指は立てながら人差し指から薬指までベクトルAの向きに合わせる。んで、4本の指をベクトルBに曲げたとき親指の指す方向がAxBになる。

●二つのベクトルのなす角が求まる。(内積使ったほうが早いとのことだが、時と場合による)
外積の公式、|AxB|=|A||B|sinθより
sinθを求めればよい。

●ベクトル同士の交点を求める
こちらがすばらしい記事になります。


●ベクトルと点の距離を求める
画像|AxC|/|B|



2 件のコメント:

  1. ベクトル同士の交点を求める、の記事すばらしい!!です!!!
    大変参考になります。ありがとうございます。

    返信削除
  2. 色々、さまよってたら見つけました{%万歳webry%}
    これ以上にない解説だったのでリンクつけさせてもらいました{%トホホwebry%}

    返信削除