CCW(Counter Clock Wise) 알고리즘은 3개의 점이 있를 때 이 점 3개를 이은 직선의 방향을 알고자하는 방법이다.
벡터의 외적을 통해 음수이면 시계 방향, 0이면 직선, 양수이면 반시계 방향이다.
외적의 특징은 외적한 두 벡터의 수직 벡터를 알 수 있고 두벡터가 만들어내는 평행사변형의 넓이와 같다는 점이다.
a = (a1, a2, a3), b = (b1, b2, b3)일 때 벡터의 외적은 다음과 같다.
a x b = (a2b3 - a3b2)i - (a1b3 - a3b1)j + (a1b2 - a2b1)k
2차원 임으로 z좌표는 0으로 설정하고 다음 식을 이용해 결과 값을 구한다.