세 점을 지나는 평면의 방정식 쉽게 이해하기 — 개념과 원리
한 직선 위에 있지 않은 세 점은 단 하나의 평면을 결정합니다. 이 계산기는 그 평면을 표준형 ax + by + cz = d로 구하고, 법선벡터 (a, b, c)와 세 점이 이루는 삼각형의 넓이도 함께 알려 줍니다. 공간도형과 선형대수 문제, 3D 모델링과 게임 엔진(메시의 각 삼각형마다 평면과 법선이 있습니다), 측량과 CAD 작업에서 쓰입니다.
계산 방법
- 점을 "x y z; x y z; x y z" 형식으로 입력합니다(P₁; P₂; P₃).
- 두 변 벡터 u = P₂ − P₁, v = P₃ − P₁을 만듭니다.
- 법선벡터는 외적 n = u × v = (u₂v₃ − u₃v₂, u₃v₁ − u₁v₃, u₁v₂ − u₂v₁)입니다.
- n = (a, b, c)일 때 상수 d = a·x₁ + b·y₁ + c·z₁입니다.
- 삼각형의 넓이는 |n| ÷ 2입니다.
원리
두 벡터의 외적은 두 벡터 모두에 수직입니다. u와 v가 평면 위에 있으므로 n = u × v는 평면 전체에 수직인 법선이 됩니다. 점 X가 평면 위에 있다는 것은 벡터 X − P₁이 n에 수직이라는 뜻, 즉 n · (X − P₁) = 0이고, 이를 전개하면 ax + by + cz = d가 됩니다. 또 |u × v| = |u||v| sin(사잇각)은 u와 v가 만드는 평행사변형의 넓이이므로, 삼각형은 그 절반입니다.
예제 풀이
- 기본 입력값은 P₁ = (1, 0, 0), P₂ = (0, 1, 0), P₃ = (0, 0, 1)입니다.
- u = (−1, 1, 0), v = (−1, 0, 1)입니다.
- n = (1·1 − 0·0, 0·(−1) − (−1)·1, (−1)·0 − 1·(−1)) = (1, 1, 1)입니다.
- d = 1·1 + 1·0 + 1·0 = 1이므로 평면은 1x + 1y + 1z = 1입니다.
- |n| = √3이므로 삼각형 넓이는 √3 ÷ 2 = 0.8660254038입니다.
결과 해석
계수 (a, b, c)가 곧 법선벡터입니다. 식 전체에 0이 아닌 같은 수를 곱해도 같은 평면이므로 2x + 2y + 2z = 2도 같은 답입니다. 법선이 (0, 0, 0)으로 나오면 세 점이 한 직선 위에 있어 평면이 하나로 정해지지 않습니다. 점 (x₀, y₀, z₀)에서 평면까지의 거리는 |ax₀ + by₀ + cz₀ − d| ÷ √(a² + b² + c²)이며, 예제에서 원점까지의 거리는 1/√3 ≈ 0.577입니다.
흔한 실수
- 같은 점이나 한 직선 위의 점을 넣어 법선이 0이 되는 경우입니다.
- 외적 성분의 순서를 틀려 부호가 바뀌는 경우입니다.
- 점의 순서를 바꾸면 법선 방향이 반대가 된다는 점을 놓치는 경우입니다. 평면은 같지만 그래픽에서 앞면·뒷면이 달라집니다.
자주 묻는 질문
네 번째 점이 평면 위에 있는지 어떻게 확인하나요?
ax + by + cz에 대입해 d가 나오는지 보면 됩니다. 예제에서 (1/3, 1/3, 1/3)은 1이 되므로 평면 위에 있습니다.
평면의 절편형은 무엇인가요?
a, b, c, d가 모두 0이 아니면 x/(d/a) + y/(d/b) + z/(d/c) = 1로 쓸 수 있습니다. 예제 평면은 각 축과 1에서 만납니다.
단위 법선벡터는 어떻게 구하나요?
(a, b, c)를 그 크기로 나누면 됩니다. (1, 1, 1)이면 약 (0.577, 0.577, 0.577)입니다.
출처: Gilbert Strang, Introduction to Linear Algebra, chapter on vectors, dot and cross products · James Stewart, Calculus: Early Transcendentals, section on equations of lines and planes