곡률은
곡선, 곡면의 한 지점이 얼마나 휘어지는지를 나타냅니다.
2차원에서는 곡선의 한 지점을 원으로 근사하게 되면 곡률 k = 1/R이 됩니다. 여기서 R은 원의 반지름을 의미합니다.
곡률 값이 원의 반지름 역수가 되어 곡선이 직선에 가까우면 곡률이 0에 가깝게 되고, 곡률이 크면 원의 반지름 R이 작아져 원의 크기가 작아지게 됩니다.
3차원에서는 곡면의 한 점에서 접 평면(Tangent Plane)을 여러 방향에서 정의할 수 있기 때문에 한 개의 값으로 계산하기 힘듭니다. 그래서 3차원 곡면의 곡률은 주곡률(Principal Curvature)과 평균곡률(Mean Curvature)을 사용합니다.
주곡률은 곡면의 한 점에서 계산되는 여러 개의 곡률 값 중에 가장 큰 값과 가장 작은 값을 주곡률이라고 합니다. 가장 큰 곡률을 k1, 가장 작은 곡률을 k2라고 할 때 주곡률 곱으로 가우스 곡률을 구할 수 있습니다.
가우스 곡률(Gauss Curvature) K = k1*k2
가우스 곡률을 이용해서 곡면의 한 지점이 오목/볼록하게 굽었는지 판별할 수 있습니다. 가우스곡률이 음수이면 오목한 모양이 되고, 양수이면 볼록한 형태로 굽었다고 보시면 됩니다.
그리고 평균곡률은 주곡률 값의 평균을 계산한 값입니다.
평균 곡률(Mean Curvature) H = (k1+k2)/2
이 평균 곡률을 이용해서 곡면의 한 지점이 얼마나 굽혀졌는지 판별합니다.
정리해 보면 2차원에서는 원의 반지름으로 곡률을 계산할 수 있고, 3차원 곡면 일 경우는 가우스 곡률과 평균 곡률을 구하여 가우스 곡률은 형태가 오목한 형태인지 볼록한 형태인지 판별할 수 있으며, 평균 곡률은 얼마나 그 지점이 굽었는지를 알 수 있습니다.
'3D Algorithm' 카테고리의 다른 글
CCW(Counter Clockwise) 정의와 판별 알고리즘 (0) | 2023.11.13 |
---|---|
Backface Culling 의미와 기본 원리 (0) | 2023.11.08 |
벡터 내적 활용(개발자 관점) (0) | 2023.10.30 |
라디안 각도 변환과 개념(Radian Degree) - 쉽게 그림으로 설명 (0) | 2023.10.26 |
3차원 직선 계산 및 벡터 표현(개발자 관점) (0) | 2023.10.26 |