Алгоритм Кир-Бек является обобщенной линией отсечения алгоритма. Он был разработан, чтобы быть более эффективным, чем алгоритм Коэна – Сазерленда , который использует повторяющееся отсечение. [1] Сайрус-Бек - это общий алгоритм, который может использоваться с окном отсечения выпуклого многоугольника, в отличие от Сазерленда-Коэна, который может использоваться только на прямоугольной области отсечения.
Здесь параметрическое уравнение линии в плоскости обзора имеет вид
где .
Теперь, чтобы найти точку пересечения с окном отсечения, мы вычисляем значение скалярного произведения. Пусть p E - точка на плоскости E отсечения .
Рассчитать :
- если <0, вектор направлен внутрь;
- если = 0, вектор направлен параллельно плоскости, содержащей p ;
- если> 0, вектор направлен изнутри.
Здесь n обозначает нормаль текущей плоскости отсечения (направленной от внутренней части).
Этим мы выбираем точку пересечения линии и окна отсечения, где (скалярное произведение равно 0), и, следовательно, обрезаем линию.
Заметки
Смотрите также
Алгоритмы, используемые с той же целью:
Ссылки в других СМИ:
- Трон: Восстание
Рекомендации
- Майк Сайрус, Джей Бек. « Обобщенная двух- и трехмерная вырезка ». Компьютеры и графика, 1978: 23–28.
- Джеймс Д. Фоули. Компьютерная графика: принципы и практика . Addison-Wesley Professional, 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