Математический форум Math Help Planet
http://mathhelpplanet.com/

Кривая Безье, получить X(1,2) по данному Y
http://mathhelpplanet.com/viewtopic.php?f=33&t=35389
Страница 1 из 1

Автор:  AlexCones [ 02 сен 2014, 15:20 ]
Заголовок сообщения:  Кривая Безье, получить X(1,2) по данному Y

Добрый день!

Не могли бы вы подсказать формулу, по которой я смогу при данном Y получить X1,2?
Решение необходимо для квадратичной кривой Безье,
формула, задающая кривую:
[math]B(t) = (1 - t)^2 P_0 + 2t (1-t) P_1 + t^2 P_2[/math], где t принадлежит от 0 до 1, а P0, P1 и P2 - точки, задающие кривую.

Точки, задающие кривую мне известны, Y мне известен. Помогите, пожалуйста, получить уравнение для поиска X при данном Y.

▼ неполадки
Кнопка "редактор формул" не работает( Да и с помощью shift текст нельзя выделить. Бидапечаль.

Автор:  3D Homer [ 02 сен 2014, 22:44 ]
Заголовок сообщения:  Re: Кривая Безье, получить X(1,2) по данному Y

AlexCones писал(а):
Не могли бы вы подсказать формулу, по которой я смогу при данном Y получить X1,2?
Что вы имеете в виду под [math]Y[/math] и [math]X_{1,2}[/math]?

AlexCones писал(а):
Да и с помощью shift текст нельзя выделить.
Да, это плохо. У меня зато работает выделение текста мышью.

Автор:  AlexCones [ 02 сен 2014, 22:49 ]
Заголовок сообщения:  Re: Кривая Безье, получить X(1,2) по данному Y

Цитата:
Что вы имеете в виду под Y и X_{1,2}?


Я имею в виду функцию X(Y) применительно к кривой Безье.

Пока на данный момент у меня в голове только одно решение -искать точки пересечения прямой с кривой, вычисляем t как корни квадратного уравнения и поставляем обратно в исходное уравнение. Но у меня прямая всегда параллельна OX , поэтому я думаю, что это можно решить проще.

Автор:  sergebsl [ 02 сен 2014, 22:51 ]
Заголовок сообщения:  Re: Кривая Безье, получить X(1,2) по данному Y

Вот, что я получил:

Wolfram

Автор:  sergebsl [ 02 сен 2014, 23:02 ]
Заголовок сообщения:  Re: Кривая Безье, получить X(1,2) по данному Y

A*(1 - t)² + 2*B*t*(1-t) + C*t² - Y =0; Find t


2ABC(1 - t)³t³ = Y

2(1-t)t = ³√(Y/ABC)

2t² - 2t + M = 0

t = 1/4 ± √(1/2 - M), M = ³√(Y/ABC) < 1/2

A = P0
B = P1
C = P2

Автор:  AlexCones [ 02 сен 2014, 23:05 ]
Заголовок сообщения:  Re: Кривая Безье, получить X(1,2) по данному Y

И как это поможет мне получить уравнение X(Y)? И откуда взялась M?

Автор:  sergebsl [ 02 сен 2014, 23:13 ]
Заголовок сообщения:  Re: Кривая Безье, получить X(1,2) по данному Y

Кривая Безье

CM 2.2

Автор:  sergebsl [ 02 сен 2014, 23:27 ]
Заголовок сообщения:  Re: Кривая Безье, получить X(1,2) по данному Y

Безье курве

Bézier curve

Автор:  3D Homer [ 03 сен 2014, 00:32 ]
Заголовок сообщения:  Re: Кривая Безье, получить X(1,2) по данному Y

AlexCones писал(а):
Я имею в виду функцию X(Y) применительно к кривой Безье.
Я все-таки не очень понимаю, что значит "[math]X(Y)[/math] применительно к кривой Безье". Кривая Безье -- это параметрическая кривая [math](x(t),y(t))[/math], где [math]t[/math] пробегает некоторый отрезок, обычно [math][0,1][/math]. В общем случае она не является графиком функции [math]y(x)[/math], поскольку одному [math]x[/math] может соотствовать несколько [math]y[/math], а одному [math]y[/math] -- несколько [math]x[/math].

Если вы хотите нарисовать ее, то для каждого значения параметра [math]t[/math] нужно вычислить соответствующие [math]x(t)[/math] и [math]y(t)[/math] и построить точку [math](x(t),y(t))[/math]. Координата [math]x(t)[/math] вычисляется по формуле [math]x(t)=(1-t)^2x_0+2t(1-t)x_1+t^2x_2[/math], где [math]x_0,x_1,x_2[/math] -- координаты соответственно [math]P_0,P_1,P_2[/math]. Координата [math]y(t)[/math] вычисляется аналогично.

Страница 1 из 1 Часовой пояс: UTC + 3 часа [ Летнее время ]
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
http://www.phpbb.com/