| MATLAB Function Reference | ![]() |
表示
surfnorm(Z) surfnorm(X,Y,Z) [Nx,Ny,Nz] = surfnorm(...)
詳細
関数 surfnorm は、X, Y, Z で定義した surface に対するサーフェスの法線を計算します。サーフェスの法線は正規化されずに、各頂点に対して妥当な値になります。法線は、視点に面していないサーフェスの要素に対しては表示されません。
surfnorm(Z) and surfnorm(X,Y,Z)
は、Surface とサーフェスの法線をプロットします。Z は、Surface の z 成分を定義する行列です。X と Y は、Surface の x 成分と y 成分を定義するベクトルまたは行列です。
[Nx,Ny,Nz] = surfnorm(...)
は、Surface に対する 3 次元サーフェスの法線の成分を出力します。
注意
法線の方向は、転置した引数を用いてsurfnorm をコールすることで、反対になります。
surfnorm(X',Y',Z')
surfl は、Surface の反射の計算をするときに、法線を求めるためにsurfnorm を使います。
アルゴリズム
サーフェスの法線は、X, Y, Z のデータの双キュービック近似を基にしています。各頂点に対して、対角ベクトルが計算されそれに直交するように法線が求められます。
例題
[x,y,z] = cylinder(1:10); surfnorm(x,y,z) axis([-12 12 -12 12 -0.1 1])
参考
| surfl | svd | ![]() |