선형대수학 행렬 수학 핵심개념

1. 내적 (Dot Product)

공식

성분으로 계산하면

결과값

  • 스칼라(숫자) 반환
  • 방향 정보 없음, 크기만 있음

직관적 이해

두 벡터가 얼마나 같은 방향을 향하는지 나타낸다.

θ = 0°   → 내적 최대 (완전히 같은 방향)
θ = 90°  → 내적 = 0  (수직)
θ = 180° → 내적 최소 (완전히 반대 방향)

주요 활용

활용방법
두 벡터 사이 각도θ = arccos(A·B / |A|B|)
수직 여부 확인A·B = 0 이면 수직
같은 방향 여부A·B > 0 이면 같은 방향
법선 방향 성분 추출(V·N)N
float Dot(Vector3 A, Vector3 B) {
    return A.x*B.x + A.y*B.y + A.z*B.z;
}

2. 외적 (Cross Product)

공식

a = (ax, ay, az)
b = (bx, by, bz)

a × b =
(
    ay * bz - az * by,
    az * bx - ax * bz,
    ax * by - ay * bx
)

결과값

  • 벡터 반환
  • A와 B 모두에 수직인 방향

직관적 이해

두 벡터가 만드는 평면의 수직 방향을 구한다.

        A × B
        ↑
        |
B ──────+
       /
      A

오른손 법칙: A에서 B 방향으로 손가락을 감으면 엄지가 외적 방향

주요 활용

활용방법
법선 벡터 계산삼각형의 두 변을 외적
두 벡터의 수직 방향A × B
회전 방향 판단외적 부호로 좌/우 판단
Vector3 Cross(Vector3 A, Vector3 B) {
    return Vector3(
        A.y*B.z - A.z*B.y,
        A.z*B.x - A.x*B.z,
        A.x*B.y - A.y*B.x
    );
}

3. 내적 vs 외적 비교

내적외적
결과스칼라벡터
의미얼마나 같은 방향인가두 벡터의 수직 방향
주요 용도각도, 법선 성분 추출법선 벡터, 회전 방향
3D 전용❌ (2D 가능)✅ (3D 전용)

4. 예제

내적으로 각도 구하기

A = (1, 0, 0), B = (0, 1, 0)

A·B = 1×0 + 0×1 + 0×0 = 0
→ cos(θ) = 0
→ θ = 90° (수직)

외적으로 법선 구하기

A = (1, 0, 0), B = (0, 1, 0)

A × B = (0×0 - 0×1, 0×0 - 1×0, 1×1 - 0×0)
      = (0, 0, 1)
→ z축 방향 (위쪽)

연관 개념