![]() |
Главная Случайная страница Контакты | Мы поможем в написании вашей работы! | |
|
|
Пусть надо изобразить пространственную кривую:
Всю кривую разобьём на криволинейные отрезки. В пределах кусочка {t0-t1}
зададим некоторый параметр t. t изменяется в диапазоне от 0 до 1.
Пространственные координаты этих кусочков:
(*)
Но чтобы обеспечить хорошую стыковку этих кусочков нужно соблюдать сле-
дующие условия:
1) При стыковке по уровню
- непрерывность по координатам;
2) При стыковке по уровню
- непрерывность по первой производной;
3) При стыковке по уровню
- непрерывность на уровне второй произ-
Водной.
Математическое вычисление коэффициентов полиномов (*):
1) В форме Эрмитта:
Для куска кривой должны быть известны:
а) координаты начальной и конечной точек:

Координаты:
и 
Рассмотрим вычисления только относительно X:
; 
б) производные (по каждой из координат) в начальной и конечной точках:
; 
Для нахождения коэффициентов полиномов (*) обозначим:

, где
- матрица коэффициентов

Пусть:

- геометрический вектор Эрмитта (т.е. наши начальные донные).

, где
- матрица Эрмитта.

Анологичные вычисления производятся для Y и Z.
Таким образом мы получаем следующие формулы:
и 

Кривая построенная по этим данным:
V1 и V2 – вектора скорости
Касательная к кривой задаётся от-
ношением
:

Если мы хотим соединить несколько кусочков, то в месте стыковки направле-
ние касательных для конца 1-го и начала 2-го отрезков должно совпадать.
Скорости могут отличаться по длине, но они должны лежать на одной касатель-
ной.
2) Задание коэффициентов в форме Безье:
В этом случае точки 2 и 3 являются управляющими(управляют формой кривой),
а точки 1 и 4 являются опорными точками (кривая проходит через них).
Представление по Эрмиту: 
; 
А Безье предложил следующее:

Т.е. кривая должна выити из точки 1 и прийти в точку 4, а лежать она будет вну-
три четырёхугольника, образованного точками 1, 2, 3, 4.

По Эрмиту:
, где под p может подразумеваться либо x, либо y, либо z
Запишем эту формулу для Безье:
; 
Откуда следует, что:
,
где
- матрица Безье.

, где
- матрица коэффициентов.
![]() |
ки надо соблюсти следующее условие: 
т.е точки 3 и 5 должны лежать на одной прямой (для данного случая). Это
обеспечивает одинаковую касательную в точке стыковки.
3) Форма сплайна:
![]() |
Пример 1:
1) Берём первые 4-ре точки и по ним считаем уравнение кусочка кривой, но
это уравнение опишет нам кусочек кривой между точками 2 и 3.
2) Берём следующие 4-ре точки и получаем кусочек кривой между точками 3
и 4, причём можно подобрать такие коэффициенты, что в точке 3 стыков-
ка будет гладкостью
.
Тогда:

; 
Примечание:
В рассмотренном выше примере все точки являются управляющими, т.е. кривая
проходит вблизи точек, а не по ним.
Обеспечивается гладкость
.
Относительно решения проблемы кусочка кривой между точками 1 и 2 можно
предложить следующие варианты:
1) можно добавить фиктивные точки;
2) сделать замкнутую кривую;
3) “слить” две точки в одну.
Пример 2:
Нам нужно чтобы кривая прошла через какие-то фиксированные точки:
![]() |
Процесс обработки тот же, что и в примере 1.
Отличие в том, что в данном случае все точки опорные и кривая проходит не
вблизи, а точно по точкам. Следовательно мы проигрываем в гладкости, обе-
спечивая только уровень
.
Для данного случая:
; 
Дата публикования: 2014-11-03; Прочитано: 501 | Нарушение авторского права страницы | Мы поможем в написании вашей работы!
