2014 dxdy logo

Научный форум dxdy

Математика, Физика, Computer Science, Machine Learning, LaTeX, Механика и Техника, Химия,
Биология и Медицина, Экономика и Финансовая Математика, Гуманитарные науки




Начать новую тему Ответить на тему
 
 Кривые Безье
Сообщение03.12.2005, 01:03 
Дали на самостоятельное изучение, не подскажете, ребята, в кокой книжке можно найти хорошо изложенную теорию по этому вопросу, чтоб врубиться и писать прогу.

  
                  
 
 
Сообщение04.12.2005, 20:25 


15/05/05
351
Россия
Посмотрите "Математика и САПР: В 2-х книгах", пер с фр. М. , "Мир" 1988 год. Один из авторов - Шенен П.

 Профиль  
                  
 
 
Сообщение04.12.2005, 21:16 
Заслуженный участник
Аватара пользователя


17/10/05
3709
:evil:
Alexandr писал(а):
"Математика и САПР: В 2-х книгах"

Другой автор - Пьер Безье. Но эта книга - кошмар, а не учебное пособие. Я так и не сумел понять, о чем и для кого она.

Что Вы имеете в виду под теорией? Если Вам нужно просто рисовать, попробуйте Google, Yandex, Aport - найдете до хрена. Если в Windows, например, эта. Статья в Wikipedia на русском - откровенно слаба, но ссылается на книжку "Роджерс Д., Адамс Дж., Математические основы машинной графики.– М.: Мир, 2001". Рекомендовать не берусь, не читал. А по англицки, в Wikipedia приличные статьи Bézier curve и de Casteljau's algorithm. Там же есть дополнительные ссылки.

Не уверен, что какая либо из книг анализирует глобальные свойства, геометрическую классификацию кривых Безье (например, наличие острия, точек перегиба, или петли). Ни разу не видел, а жаль - это важно для рисования. Существуют "канонические" аппроксимации кривой Безье дуги круга, эллипса... Параболы не предлагать :D

 Профиль  
                  
 
 
Сообщение04.12.2005, 21:56 
В том-то и дело, готовых прог куча, по ссылкам, которые через поисковиках нарыл, ходил, там в основно рассказывают, как эти кривые используются в графических пакетах, а как их собственно строить нигде нет. Спасибо, сейчас поброжу по ссылочкам, что вы дали, о результатах доложу))

  
                  
 
 
Сообщение04.12.2005, 22:15 
Руся писал(а):
...через поисковиках нарыл...
))))
Жаль,что редактировать нельзя)) через поисковики,конечно. Скорее всего, надо будет написать прогу, которая будет строить эти кривые. Завтра уж экзамен, будем надеятся, что этот билет не попадется, но ко всему надо быть готовым. ещё не могу найти "нахождение корней полиномов" (в частности, "метод Лагерра" ), в конспекте всё как-то...Почти никак))

  
                  
 
 
Сообщение04.12.2005, 22:46 
Заслуженный участник
Аватара пользователя


17/10/05
3709
:evil:
Основной способ построения - алгорифм де Кастельжо, основанный на следующем: если мы имеем кривую 3-го порядка с опорными точками$(p_{0}, p_{1}, p_{2}, p_{3})$, и начинаем интерполировать с параметром $t$, то имеем:

$p_{01} = (1-t) p_0 + t\,p_1$, $p_{12} = (1-t) p_1 + t\,p_2$, $p_{23} = (1-t) p_2 + t\,p_3$
$p_{012} = (1-t) p_{01} + t\,p_{12}$, $p_{123} = (1-t) p_{12} + t\,p_{23}$.
$p_{0123} = (1-t) p_{012} + t\,p_{123}$.

Теперь - самое интересное. Точка $p_{0123}$ суть точка кривой Безье с параметром $t$, а наборы $(p_{0}, p_{01}, p_{012}, p_{0123})$ и $(p_{0123}, p_{123}, p_{23}, p_{3})$ есть опорные точки соответствующих сегментов кривой Безье (оные сегменты, очевидно, и сами являются к. Б.).

Мораль сего такова: обычно берут $t=\frac12$. Тогда формулы упрощаются до дальше некуда (а в целочисленном случае используется сдвиг), и деление сегментов применяется рекурсивно до тех пор, пока $(p_{0}, p_{1}, p_{2}, p_{3})$ не становиться прямым с заданной точностью.

Дальше, уж простите, начинается опыт. Я готов продолжить это обсуждение, если Ваш интерес не пропадет после экзамена.

 Профиль  
                  
 
 
Сообщение05.12.2005, 00:07 
незванный гость писал(а):
... если Ваш интерес не пропадет после экзамена.

Что очень,очень вероятно)))

  
                  
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 7 ] 

Модераторы: Karan, Toucan, PAV, maxal, Супермодераторы



Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group