のは、あなたを想定してみましょうカメラはある種のピラミッドです。それは私が「カメラスクリーン」と呼ぶ底面を持ち、焦点距離とも呼ばれるピラミッドの高さはF(またはあなたの方程式、W)でマークされます。
T(op)
*---------*
|\ /|
| \ /|
| \ /|
| \/ |
L(eft) | *E(ye| R(ight)
| /\ |
|/ \ |
|/ \ |
|/ \|
*---------*
B(ottom)
のはj
は(1/Ny
の段階で-Ny/2
から+Ny/2
に)下から上へ行くと仮定しましょう、とi
は(-Nx/2
から1/Nx
の段階で+Nx/2
に)左から右に行きます。 Nyが偶数の場合、jはNx/2-1
になります(Nx
が偶数の場合も同様です)。
あなたがイメージに下から上に行くように、画面上の、あなたはT
値にB
値から移動。
d = (j + 0.5)/Ny
:下から上へあなたの方法のd
(= 0との間の底部および1 =トップ)留分で、あなたの高さは、いじりのビットは小数d
が実際にあることを示している Vs = T + (B-T) * d
あります
ので:
Vs = T + (B-T) * (j + 0.5)/Ny
と同様:
Us = L + (R-L) * (i + 0.5)/Nx
ここでは、左から右へ行くベクトルとしてU
、下から上へV
、目から進む方向に「W」を示します。これらのベクトルはすべて正規化されています。
ここでは、目がピラミッドの長方形の面の中心の真上にある(0,0)
の真上にあるとします。
Ws * W
そしてインデックスで、画面上の別のポイントにその時点から行くこと(i,j)
あなたは行くだろう:あなたが行くだろう(0,0)
に直接目から行くために
Us * U + Vs * V
あなたは見ることができるようになることUs = 0
目は中央の真上にあるように、i = 0
用とB = -T
とL = -R
以来j = 0
ためVs = 0
(の長方形)。
そして、私たちは一緒にそれを構成する場合、最終的に、インデックス(i,j)
で画面上のポイントは
S = E + Us * U + Vs * V + Ws * W
お楽しみです!
素晴らしいイラストは、 –
:)おかげで私は私の説明で裏返し底部と頂部を固定しました。方程式はそうだった。だから何かがどこかで理にかなっていない場合は、再読みしてみてください。嬉しいことに役立つ:) –