사이러스-벡 알고리즘
Cyrus–Beck algorithm사이러스-벡 알고리즘은 일반화된 선 클리핑 알고리즘이다.반복적인 클리핑을 사용하는 코헨-서덜랜드 알고리즘보다 더 효율적이도록 설계됐다.[1]사이러스-벡은 일반 알고리즘으로 직사각형 클리핑 영역에서만 사용할 수 있는 코헨-서덜랜드와 달리 볼록한 폴리곤 클리핑 윈도우와 함께 사용할 수 있다.
여기서 뷰 평면에 있는 선의 모수 방정식은 다음과 같다.
여기서
이제 클리핑 윈도우와 교차점을 찾기 위해 우리는 도트 제품의 값을 계산한다.자르기 평면 E에서 p를E 한 점으로 하자.
( () -p ) ( 계산
- < 0인 경우, 벡터는 내부를 가리킨다.
- = 0인 경우, p를 포함하는 평면에 평행한 벡터 점;
- 0 >일 경우, 벡터는 실내에서 멀리 가리킨다.
여기서 n은 현재 클리핑 평면의 정상(내부를 가리킴)을 의미한다.
이를 통해 선과 자르기 창의 교차점(점 제품은 0)을 선택하고 선을 자른다.
메모들
참고 항목
동일한 목적으로 사용되는 알고리즘:
다른 미디어의 참조:
참조
- 마이크 사이러스, 제이 벡"일반화된 2차원 및 3차원 클리핑"컴퓨터 & 그래픽스, 1978: 23–28.
- 제임스 D.폴리. 컴퓨터 그래픽: 원칙과 실천.애디슨 웨슬리 프로페셔널, 1996. 페이지 117.
외부 링크
- https://web.archive.org/web/20101203041134/http:///cs1.bradley.edu/public/jcm/cs535CyrusBeck.html
- https://web.archive.org/web/20110725233122/http:///softsurfer.com/Archive/algorithm_0111/algorithm_0111.htm