The Cyrus–Beck algorithm is a generalized line-clipping algorithm. It was designed to be more efficient than the Sutherland–Cohen algorithm, which uses repetitive clipping. Cyrus–Beck is a general algorithm and can be used with a convex polygon clipping window, unlike Sutherland–Cohen, which can be used only on a rectangular clipping area.
Here the parametric equation of a line in the view plane is
Now to find intersection point with the clipping window we calculate value of dot product. Let pE be a point on the clipping plane E.
- if > 0, vector pointed towards interior;
- if = 0, vector pointed parallel to plane containing p;
- if < 0, vector pointed away from interior.
Here n stands for normal of the current clipping plane (pointed away from interior).
By this we select the point of intersection of line and clipping window where (dot product is 0) and hence clip the line.
Algorithms used for the same purpose:
References in other media:
- Mike Cyrus, Jay Beck. "Generalized two- and three-dimensional clipping". Computers & Graphics, 1978: 23–28.
- James D. Foley. Computer graphics: principles and practice. Addison-Wesley Professional, 1996. p. 117.
|This computer graphics–related article is a stub. You can help Wikipedia by expanding it.|