4장 기하학적 객체와 변환 - 기하 1장 – 그래픽스 시스템과 모델 2장 – 그래픽스 프로그래밍 3장 – 입력과 상호작용 입력 장치를 이해한다 물리적 장치 논리적 장치 입력 모드 GLUT를 이용한 이벤트–구동(Event-driven)입력의 프로그래밍 mouse keyboard 재구성(reshape) menu 기타 이중 버퍼링, 논리연산 등
4장 기하학적 객체와 변환 - 기하 학습목표 기하의 기본 스칼라 벡터 점 기본요소들의 정의 선분 다각형
기하는 n-차원 공간 내의 객체들의 관계를 다룬다. 기하의 기본요소 기하는 n-차원 공간 내의 객체들의 관계를 다룬다. 컴퓨터 그래픽스에서 다루는 공간은 3차원 이다. 단순한 개체들을 사용해서 복잡한 객체를 정의한다. 단순한 개체와 그들 사이의 관계는 세 가지 기본 요소로 기술된다 스칼라, 벡터, 점 삼각형 메시로 표현된 객체
우리에게 친숙한 스칼라의 예: 실수, 복소수, 유리수 스칼라만으로는 기하학적 성질을 갖지 않는다. 기하에는 세 가지 기본 요소가 필요 스칼라, 벡터, 점 스칼라는 두 개의 연산(덧셈과 곱셈)으로 연결될 수 있고 몇 가지 공리(결합법칙, 교환법칙, 역원)를 따르는 집합의 원소들로 정의될 수 있다. 우리에게 친숙한 스칼라의 예: 실수, 복소수, 유리수 스칼라만으로는 기하학적 성질을 갖지 않는다.
물리적인 정의: 벡터는 다음의 두 속성을 갖는 량이다 방향 크기 벡터의 예 힘 속도 방향성 선분 그래픽스를 위한 가장 중요한 예 v
벡터 연산 모든 벡터는 역원을 갖는다 모든 벡터는 스칼라로 곱할 수 있다 영 벡터가 존재한다 임의의 두 벡터의 합은 벡터이다 반대방향을 가리키는 같은 크기의 벡터 모든 벡터는 스칼라로 곱할 수 있다 영 벡터가 존재한다 크기는 0, 방향은 정의되지 않음 임의의 두 벡터의 합은 벡터이다 수미연결 공리를 사용 v -v v u w
선형 벡터 공간 벡터를 다루는 수학적 체계 연산 스칼라-벡터 곱셈 벡터-벡터 덧셈: 다음의 표현식은 벡터공간에서 의미를 갖는다
벡터에는 위치가 없다 다음의 벡터들은 같은 벡터이다 같은 길이와 방향 벡터 공간은 기하를 다루기에는 불충분하다 점이 필요하다
점 공간 내의 위치 점과 벡터 사이에 연산이 허용됨 v=P-Q P=v+Q 점-점 뺄셈은 벡터의 결과를 갖는다 점-벡터 덧셈은 점의 결과를 갖는다 P=v+Q v=P-Q
아핀(affine) 공간 벡터 공간에 점이 추가됨 연산들 임의의 점에 대해서 다음을 정의 벡터-벡터 덧셈 스칼라-벡터 곱셈 점-벡터 덧셈 스칼라-스칼라 연산들 임의의 점에 대해서 다음을 정의 1 • P = P 0 • P = 0 (0 벡터)
다음과 같은 형태로 표현되는 모든 점들을 생각해 보자 직선 다음과 같은 형태로 표현되는 모든 점들을 생각해 보자 를 지나고 벡터 d 의 방향을 갖는 모든 점들의 집합
매개변수 형식 직선의 매개변수형식 표현 2차원 형식 x(a) = ax0 + (1-a)x1 y(a) = ay0 + (1-a)y1 다른 형식들 보다 안정적이고 일반적이다 곡선과 곡면으로 확장된다 2차원 형식 양함수 표현 : y = mx +h 음함수 표현 : ax + by +c =0 매개변수 표현 : x(a) = ax0 + (1-a)x1 y(a) = ay0 + (1-a)y1
a >= 0 이면 P(a) 는 P0 를 떠나 d 방향으로 가는 광선(ray)이다 광선과 선분 a >= 0 이면 P(a) 는 P0 를 떠나 d 방향으로 가는 광선(ray)이다 v를 정의하기 위해서 두 개의 점을 사용하면 P( a) = Q + a (R-Q)=Q+av =aR + (1-a)Q = a1R + a2Q (단, a1+ a2=1) 형식상 두 점의 합처럼 보이고 아핀합이라고함 0<=a<=1 이면 R과 Q를 연결하는 선분상의 모든 점들을 얻는다
볼록함 객체 내의 임의의 두 점을 연결하는 선분 상의 모든 점들이 그 객체 내부에 있을 때 그 객체를 볼록하다(convex)고 한다 P P Q Q not convex convex
아핀 합 다음의 “합”을 생각해 보자 P=a1P1+a2P2+…..+anPn 다음의 조건을 만족할 때 위의 식이 의미를 가짐을 귀납적으로 보일 수 있다 a1+a2+…..an=1 이 경우 점들 P1,P2,…..Pn 의 아핀 합이 된다. 또한, ai>=0 이면 , P1,P2,…..Pn 의 컨벡스 헐(convex hull)이 된다.
컨벡스 헐 P1,P2,…..Pn 을 포함하는 가장 작은 컨벡스 점들을 “축소 포장”함으로 얻어짐
내적
외적 u v n
P(a) P(a, b) 곡선과 곡면 곡선은 P(a) 형식의 하나의 매개변수를 갖는 비선형 함수이다 선형함수로는 평면과 다각형을 얻을 수 있다 P(a) P(a, b)
평면 평면은 한 점과 두 벡터 또는 세 개의 점으로 결정될 수 있다 P(a,b)=R+a(Q-R)+b(P-Q) P(a,b)=R+au+bv
삼각형
법선 모든 평면은 그 면에 수직인 법선 벡터 n 을 갖는다 점과 두 벡터 형식 P(a,b)=P0+au+bv 로부터, 외적을 이용해서 n = u v 을 구할 수 있고 평면의 또 다른 식을 얻을 수 있다. u v P0