Method: Mageo::Triangle#normal_vector

Defined in:
lib/mageo/triangle.rb

#normal_vectorObject

法線ベクトルの1つを返す。法線ベクトルは正反対の方向を示す 2つがあるが、内部的には頂点の順が右ねじとなる方向(正確には外積の定義される方向) のものが選ばれる。また、長さが1に規格化されたものが返される。



157
158
159
160
161
162
163
164
# File 'lib/mageo/triangle.rb', line 157

def normal_vector
  edge1 = (@vertices[1] - @vertices[0])
  edge2 = (@vertices[2] - @vertices[1])
  vec = edge1.exterior_product( edge2 )
  normal = vec * (1.0/vec.r)

  return normal
end