평면에 대한 법선 벡터를 계산하고 있습니다 ax + by + cz + d = 0

책에 따르면

p>

일반 벡터 N은 종종 단위 길이로 정규화됩니다.이 경우 방정식

d = N ⋅Q + D 

는 평면에서 임의의 거리까지의 부호있는 거리를 제공하기 때문입니다. 점 Q. d = 0이면 점 Q는 평면에 있습니다. d> 0이면 Q가 일반 벡터가 가리키는쪽에 있기 때문에 점 Q가 평면의 양의쪽에 있다고 말합니다.

N (일반 벡터)을 얻는 방법은 무엇입니까? 감사합니다

Answer

From MathWorld :

비행기가 주어지면

여기에 이미지 설명 입력

그러면 법선 벡터는

여기에 이미지 설명 입력

일반 단위 벡터 n 는 다음과 같이 지정됩니다.

여기에 이미지 설명 입력

그러므로 비행기 5x+2y+3z-1=0,

일반 벡터 N

N = [5,2,3]

크기 | N |

| N | = sqrt (5 ^ 2 + 2 ^ 2 + 3 ^ 2)

| N | = 6.1644

따라서 일반 단위 벡터 n 는 대략 :

n = N / | N |

n = [0.8111, 0.3244, 0.4866]

n 의 길이를 측정하여 확인할 수 있습니다.

코드 :

import math def mag(V): return math.sqrt(sum([x*x for x in V])) def n(V): v_m = mag(V) return [ vi/v_m for vi in V] 

대화 형 Python 셸 :

>>> N = [5,2,3] >>> mag(N) 6.164414002968976 >>> n(N) [0.8111071056538127, 0.3244428422615251, 0.48666426339228763] >>> mag(n(N)) 1.0 

답글 남기기

이메일 주소를 발행하지 않을 것입니다. 필수 항목은 *(으)로 표시합니다