2014 dxdy logo

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

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


Правила форума


В этом разделе нельзя создавать новые темы.

Если Вы хотите задать новый вопрос, то не дописывайте его в существующую тему, а создайте новую в корневом разделе "Помогите решить/разобраться (М)".

Если Вы зададите новый вопрос в существующей теме, то в случае нарушения оформления или других правил форума Ваше сообщение и все ответы на него могут быть удалены без предупреждения.

Не ищите на этом форуме халяву, правила запрещают участникам публиковать готовые решения стандартных учебных задач. Автор вопроса обязан привести свои попытки решения и указать конкретные затруднения.

Обязательно просмотрите тему Правила данного раздела, иначе Ваша тема может быть удалена или перемещена в Карантин, а Вы так и не узнаете, почему.



Начать новую тему Ответить на тему На страницу Пред.  1, 2
 
 
Сообщение30.09.2008, 21:45 
Аватара пользователя


20/06/07
179
Прикольно...

А если серьезно? Зачем матричный вид?

 Профиль  
                  
 
 
Сообщение30.09.2008, 22:09 


29/09/06
4552
Алексей К. в сообщении #147632 УЖЕ писал(а):
Не знаю.
Я с ними, с Безьями, много имел дела, и не встречал, чтобы пользовались матрицами. Может, кто и расскажет нам. Не я.

 Профиль  
                  
 
 Собственно --- о выводе уравнения.
Сообщение01.10.2008, 05:58 


29/09/06
4552
artful7, Вы осознали, откуда берётся обсуждаемое уравнение?

Есть две точки, A и B. Берём их взвешенное среднее, $w_1A+w_2B$, типа $(2/3)A+(1/3)B$. Получаем некую среднюю точку, поближе к A. Веса удобнее выражать "в процентах", т.е. принять $w_1+w_2=1$, или $w_1=(1-t),\;w_2=t$. Получаем отрезок $AB(t)=A(1-t)+Bt$.
А если "взвесить" два отрезка, $AQ_1$ и $Q_2B$? --- думаем. Подумали --- сделали:
$$AQ_1Q_2B(t)=  AQ_1(t)\cdot(1-t)+Q_2B(t)\cdot t=
A(1-t)^2+(Q_1+Q_2)t(1-t)+Bt^2.$$
Рисуем (линейки достаточно, веса берём 0/5,1/5,2/5,3/5,4/5,5/5), строим, балуемся. Видим (уже из формулы), что результат зависит только от положения средней точки $P=\frac12(Q_1+Q_2)$ и не фиг для этой конструкции лишние параметры держать:
$$APB(t)=  AP(t)\cdot(1-t)+PB(t)\cdot t=A(1-t)^2+2P(1-t)t+Bt^2$$.
Любуемся полученной параболой, как она вписывается в ломаную $APB$.

Дальше естественным образом приходит мысль --- а "взвешу"-ка я две параболы, $AP_1P_2$ и $P_1P_2B$. Вау, как эта кривулька здорово вписывается в ломаную $AP_1P_2B$, как бы эту ломаную не ломали!

Дальше можно много играть, искать "вычислительно-идеальную запись", в форме Бернштейна раскрыть все скобки и назвать это "в форме Фергюссона", матричный вид придумать. Когда не было телевизоров или сериалов, люди столько всего про них напридумали --- и тебе пирамидальные алгоритмы, и цветение сакуры (blossoming? и слово и суть забылись...), книжек аглицких --- тонны понаписали.

 Профиль  
                  
 
 
Сообщение01.10.2008, 08:50 
Аватара пользователя


20/06/07
179
Это Вы изложили статью из Википедии http://en.wikipedia.org/wiki/Bezier_curves?

 Профиль  
                  
 
 
Сообщение01.10.2008, 09:16 


29/09/06
4552
Нет, я ни у кого не списывал и даже не подглядывал. Просто случилась бессонница (4:58 по местному) и с ней возможность написать подробнее. Типа было и не лень, и не некогда.

 Профиль  
                  
 
 
Сообщение01.10.2008, 20:38 
Аватара пользователя


20/06/07
179
Я имел ввиду не Ваше подглядывание/неподглядывание, а смысл излагаемого материала. В Википедии очень наглядная анимированная картинка построения кривой.

Вот только непонятно, что Вы имели ввиду под "формой Фергюссона"?

А также под вычислительно-идеальной записью?

 Профиль  
                  
 
 
Сообщение01.10.2008, 22:13 


29/09/06
4552
artful7 в сообщении #147828 писал(а):
В Википедии очень наглядная анимированная картинка построения кривой.
Вот я её, на всякий случай, и покомментировал формулами.
artful7 в сообщении #147828 писал(а):
что Вы имели ввиду под "формой Фергюссона"?
Будем считать, устаревший термин. Когда полиномы расписаны просто по степеням $t$, что скрывает алгоритм взвешивания, и на что, в частности, нацелены Ваши матрицы. Действительно, термин давно не попадался. Мы с ним устарели.

artful7 в сообщении #147828 писал(а):
А также под вычислительно-идеальной записью?
Ну, намекал на Ваше замечание и расстановку скобок в
artful7 писал(а):
для алгоритмизации удобнее параметрическое уравнение $\[{\mathbf{R}}\left( t \right) = \left( {\left( {\left( {1 - t} \right){\mathbf{P}}_0  + 3t{\mathbf{P}}_1 } \right)\left( {1 - t} \right) + 3t^2 {\mathbf{P}}_2 } \right)\left( {1 - t} \right) + t^3 {\mathbf{P}}_3 \]$?
что, вероятно, вполне обосновано. Сильно не заморачивайтесь. Важным (полезным) я считал понимание происхождения кривой (не всем сразу понятны эти анимационные картинки, Вы, похоже, их поняли).

 Профиль  
                  
 
 Re: Вопрос по выводу уравнения кривой Безье
Сообщение16.03.2010, 22:34 


16/03/10
3
Добрый день.
Алексей К. если вам не трудно не могли бы, Вы пояснить методы сшивания кривых Безье без скачка кривизны (непрерывность первой и второй производных)

 Профиль  
                  
 
 Re: Вопрос по выводу уравнения кривой Безье
Сообщение16.03.2010, 23:42 


29/09/06
4552
Мне нетрудно пояснить любой вопрос (из тех немногих), в котором я разбираюсь. Тема кривых Безье несколько забыта (уже до появления этой темы), но что-то в памяти осталось. И, к тому же, много реальных специалистов на форуме имеется.

И мне, и им наверняка захочется уточнить Вашу проблему: чем Вас не устраивает обычный кубический сплайн, обеспечивающий непрерывность кривизны? Т.е. она автооматически "сшита", если я Вас правильно понял.

Возможно, Вы хотите, из тех или иных соображений, приписать заранее заданные значения кривизны (и, естественно, наклона касательной) в узлах "сплайна" (в смысле, кривой, проходящей строго через точки $P_0=(x_0,y_0)$, $P_1=(x_1,y_1)$, $P_2=(x_2,y_2)$, $\ldots$, $P_n=(x_n,y_n)$ и имеющей в кажлой точке заданные значения наклона касательной $\tau_i$ и кривизны $k_i$, что с формальным определением "сплайна" может конфликтовать). Тогда Ваша задача должна решаться отдельно на каждой хорде $P_iP_{i+1}$.

С такой задачкой я тоже возился. В архивах поковыряюсь, когда Вы уточните задачу. Насколько я помню, решение сводилось к уравнению 4-й степени, и были случаи неоднозначного построения (3 варианта). Не помню, были ли случаи отсутствия решений. Помню лишь, что алгебру в те годы я знал совсем плохо. :(

Не удивляйтесь, ежели модераторы перенесут Ваш (уточнённый) вопрос в форум "Помогите решить", где вопрос будет у всех на виду, либо отделят от этой темы в самостоятельную.

 Профиль  
                  
 
 Re: Вопрос по выводу уравнения кривой Безье
Сообщение17.03.2010, 00:34 


16/03/10
3
Задача в принципе не сложная(построение профиля лопаточной машины).
Есть координаты трех точек и значения наклонов касательных в них. Требуется провести кривую удовлетворяющею граничным условиям, при этом должны остаться механизмы управления формы кривой.(непрерывность первой и второй производных )

В качестве базовой кривой выбрал кривую Безье 5 порядка.
В средней точке стыкую две кривые.Стыковка по координате и первой производной вопросов не вызывают. Непрерывность второй производной обеспечиваю путем подбора соответствующего положения третьего узла одной из кривых.

Я вот думаю может как то проще можно решить вопрос сшивания кривых, либо решения задачи в целом.

 Профиль  
                  
 
 Re: Вопрос по выводу уравнения кривой Безье
Сообщение17.03.2010, 14:22 


29/09/06
4552
ALL1828 в сообщении #298465 писал(а):
Задача в принципе не сложная(построение профиля лопаточной машины).
Слова "лопаточная машина" мне, к сожалению, ничего не говорят.
Интереснее было бы другое --- чем определяется форма профиля? Вы получаете её как решение некой механической задачи (диффура, например, т.е. довольно точно) и пытаетесь приблизить упомянутой Безьёй? Или Вас удовлетворяет визуальная оценка полученного профиля, регулируемая контрольными точками?
В последнем случае, весьма вольном, стремление сшить кривизну представляется мне не особо обоснованным, а лишь следованием традиции: "Вроде все обычно сшивают, сошью-ка и я. На всякий случай."

ALL1828 писал(а):
Есть координаты трех точек и значения наклонов касательных в них. Требуется провести кривую удовлетворяющею граничным условиям, при этом должны остаться механизмы управления формы кривой.(непрерывность первой и второй производных )

В качестве базовой кривой выбрал кривую Безье 5 порядка.


Со степенями выше 3 дела не имел: в компьютерной графике 3-х за глаза достаточно, а реальным геом. моделированием занимался в несколько ином аспекте, типа строительства дорог, без Безьёв.
(Опять бы не перепутать порядки и степени, а то ewert снова меня засечёт).

ALL1828 писал(а):
В средней точке стыкую две кривые.Стыковка по координате и первой производной вопросов не вызывают. Непрерывность второй производной обеспечиваю путем подбора соответствующего положения третьего узла одной из кривых.
Давайте различать узлы и контрольные точки. Узлы --- это те три точки $P_0,P_1,P_2$, через которые проходит Ваш профиль. На каждой ходре, $P_0P_1$ и $P_1P_2$, Вы дополнительно выбираете 4 контрольные точки; получаются контрольные полигоны $P_0A_0B_0C_0D_0P_1$ и $P_1A_1B_1C_1D_1P_2$. Кривая через дополнительные контрольные точки не проходит, с их помощью Вы управляете формой и, видимо, кривизной в месте сшивки.
Задача рассматривается почти независимо на каждой из двух хорд ("почти" = "кроме требований сшивки"). $G^1$-гладкость обеспечивается тем, что точки $D_0P_1A_1$ лежат на одной прямой-касательной.

Примерно это я и хотел услышать в качестве конкретизации задачи. Додумал сам, надеюсь, правильно. Замкнутость ($P_0=P_2$), если она и наличествует, роли не играет.

ALL1828 писал(а):
Я вот думаю может как то проще можно решить вопрос сшивания кривых, либо решения задачи в целом.
Я так не думаю. Сшивка производных гарантирует непрерывность кривизны, но не является обязательным условием. Но, полагаю, мы лишь усложним решение, записав условие равенства углов и кривизн в конце первого и в начале второго участков (т.е. два громоздких уравнения для $\tau,k$ вместо 4-х более простых для $x',y',x'',y''$). Надо брать мат-пакет, смотреть эти штуки, но не думаю, что что-то там окажется простым...
Что касается другого подхода к задаче в целом --- вряд ли могу чего-то предложить, я её всё же недостаточно чувствую. С дорогой попроще было бы. :)

Алексей К. в сообщении #254121 писал(а):
Как-то так: кривые Безье не очень заточены под задачки с кривизной, и ожидать простых-красивых-замкнутых выражений не приходится. А численные рассчёты несложнЫ.

 Профиль  
                  
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 26 ]  На страницу Пред.  1, 2

Модераторы: Модераторы Математики, Супермодераторы



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

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


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

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