수학/이득우의 게임 수학

무게중심좌표

monstro 2025. 12. 3. 10:51
728x90
반응형

- 개요

세 점을 사용하는 아핀 결합식 첫번째 단계

 

위와 같은 세 점의 아핀 결합에서 사용하는 3개의 스칼라는 모두 실수이므로 묶어서 하나의 3차원 벡터를 생성할 수 있다

위와 같이 아핀 결합의 스칼라를 묶어서 생성한 좌표를 무게중심좌표라고 표현하고

무게중심좌표는 삼각형과 관련된 정보를 담고 있아 삼각형과 관련된 기능을 구현할 때 매우 유용하다

 

- 무게중심좌표의 계산

무게중심좌표에 대한 각 스칼라의 표현

 

세 점의 아핀 결합이 삼각형이 되기 위해서는 모든 스칼라의 값이 [0, 1]의 범위안에 존재해야 한다

무게중심좌표를 구성하는 스칼라값이 하나라도 [0, 1]의 범위를 벗어나면

아핀 결합으로 생성된 점은 삼각형의 외부에 존재하는 것을 의미하므로

이런 성질을 사용하여 주어진 점이 삼각형 내부에 존재하는지 판단할 수 있다

 

삼각형을 구성하는 3개의 벡터의 표현

 

위와 같이 스칼라로 표현된 무게중심좌표벡터로 표현하도록 수정한다

벡터의 내적을 사용하면 아핀 결합으로 생성되는 점 P`삼각형 내부에 존재하는지 판단할 수 있다

 

스칼라 t와 s를 구하는 벡터 내적 연산식

 

위와 같이 계산하여 얻어진 무게중심좌표 ts 그리고 (1 - s - t)에 대해 다음과 같은 결론을 얻을 수 있다

  • 세 점이 모두 [0, 1]의 범위안에 존재 : 점 P`삼각형의 안에 존재
  • 세 점중 하나라도 [0, 1]의 범위밖에 존재 : 점 P`는 삼각형의 밖에 존재

 

- 예외 처리

무게중심좌표 연산식의 공통분모

 

무게중심좌표를 구성하는 점 ts에 대해위와 같이 공통분모를 사용하는 것을 확인할 수 있다

이때 분모가 0이라면 무게중심좌표를 계산하는 것은 불가능하다

따라서 분모가 0인 경우를 제외해야 할 필요가 있다

 

공통분모의 내적을 cos 공식으로 변경

 

위와 같이 공통분모의 내적cos 공식으로 변경하여 0이 되는 조건을 정리하면 다음과 같다

  • 벡터 u 또는 벡터 v크기가 0인 경우
  • 벡터 u와 벡터 v가 이루는 각 θ의 값이거나 180°인 경우

 

위와 같은 조건을 달성한 경우 두 개의 벡터는 평행한 상태이고 선형 종속 관계를 이룬다

선형 종속 관계의 세 점의 결합선분을 만들어내므로 그리기에서 제외한다

이런 삼각형을 퇴화삼각형이라고 표현한다

728x90
반응형

'수학 > 이득우의 게임 수학' 카테고리의 다른 글

Scene의 구조 (1) - 프로젝트에서 Scene의 구성  (0) 2025.12.24
게임 엔진의 구성 요소  (0) 2025.12.24
메시  (0) 2025.11.26
세 점의 결합  (0) 2025.11.26
벡터의 내적을 이용한 시야 판별  (0) 2025.11.12