티스토리 뷰

갑자기 시작되는 컴퓨터그래픽스 포스팅.
3학년 1학기 과목인 컴퓨터그래픽스 시간에 제출할 과제를 정리해서 올릴 겁니다. 단, 과제를 배끼거나 성의없게 했을때는 안올릴수도..

제가 포스팅을 올리지 않을때는, 이녀석 이번주는 과제 대충했구나~ 라고 생각하세요 :D

중력장(Gravity Field) 기법
그래픽 프로그램에서, 마우스로 객체를 정확하게 클릭하지 않아도 선택되도록 하는 기법을 말합니다.

벡터의 내적과 외적을 적절히 이용하여 계산이 가능하죠.
간단한 과정은 아래와 같습니다.

Step1. 마우스 위치-선의시작점 벡터와 선의끝점-선의시작점 벡터의 내적연산
  위의 결과가 양수일경우 Setp2. 음수일경우 Step4.
Step2. 마우스 위치-선의 끝점 벡터와 선의 시작점- 선의 끝점 벡터의 내적연산
  위의 결과가 양수일경우 Setp3. 음수일경우 Step4.
Step3. (마우스위치-선의사작점 벡터와 선의끝점-선의시작점벡터 의 외적 결과의 크기) / 선의 길이 계산. Step5.
Step4. 마우스의 위치와 각 끝점사이의 거리중 작은거리 계산
Step5. 위의 계산 결과가 허용범위 이내이면 선택된선, 크면 선택된선 아님


대충 이런식 입니다. (-_-);;

벡터의 내적과 외적을 이런곳에서 쓴다는게 신기했죠 :D

[이곳] 을 클릭하시면 OpenGL로 구현한 러버밴드와 중력장기법을 보실 수 있습니다.

댓글
댓글쓰기 폼