2D-геометрия (параметрическое уравнение)
От: Аноним  
Дата: 29.06.05 10:32
Оценка:
Функция y = f(x) задана 2-мя параметрическими уравнениями

y(t) = A(t)= a0 + a1*t + a2*t2 + a3*t3
x(t) = B(t)= b0 + b1*t + b2*t2 + b3*t3

надо в интервале t0-t1 найти максимальную величину отклонения
Re: 2D-геометрия (параметрическое уравнение)
От: Кодт Россия  
Дата: 29.06.05 10:53
Оценка:
Здравствуйте, Аноним, Вы писали:

А>Функция y = f(x) задана 2-мя параметрическими уравнениями


А>y(t) = A(t)= a0 + a1*t + a2*t2 + a3*t3

А>x(t) = B(t)= b0 + b1*t + b2*t2 + b3*t3

А>надо в интервале t0-t1 найти максимальную величину отклонения


Отклонения чего от чего?
Да, кстати: это этюд, или требуется помощь в решении задачи?
Перекуём баги на фичи!
Re[2]: 2D-геометрия (параметрическое уравнение)
От: Аноним  
Дата: 29.06.05 11:24
Оценка:
Здравствуйте, Кодт, Вы писали:

это этюд, или требуется помощь в решении задачи?


Отклонения чего от чего?
имея t0 и t1

получим 2 точки P0(x0,y0) и P1(x1,y1)

Надо получить максимальное отклонение кривой в интервале p0 и p1 от
прямой соединяющей p0 b P1

требуется помощь в решении задачи

29.06.05 15:40: Перенесено модератором из 'Этюды для программистов' — Кодт
Re: 2D-геометрия (параметрическое уравнение)
От: Vi2 Удмуртия http://www.adem.ru
Дата: 29.06.05 13:24
Оценка:
Здравствуйте, Аноним, Вы писали:

А>Функция y = f(x) задана 2-мя параметрическими уравнениями


А>y(t) = A(t)= a0 + a1*t + a2*t2 + a3*t3

А>x(t) = B(t)= b0 + b1*t + b2*t2 + b3*t3

А>надо в интервале t0-t1 найти максимальную величину отклонения


Сначала переводишь в Безье полином (а этот перевод существует всегда), потом идешь в Адаптивное разбиение кривой Безье
Автор: McSeem2
Дата: 16.06.05
и там среди обсуждения находишь, как они считают отклонение кривой Безье.
Vita
Выше головы не прыгнешь, ниже земли не упадешь, дальше границы не убежишь! © КВН НГУ
Re[3]: 2D-геометрия (параметрическое уравнение)
От: migel  
Дата: 30.06.05 10:53
Оценка:
Здравствуйте, <Аноним>, Вы писали:

А>требуется помощь в решении задачи

А если преобразованием координат свести параметрическую функцию таким образом чтобы p0 и p1 имели одинаковыми одну из координат — грубо говоря чтобы прямая их соеденяющая была бы горизонтальной или вертикальной. тогда высоты от экстремумов полученной кривой даст тебе искомое.
... << RSDN@Home 1.1.4 beta 7 rev. 448>>
Re: 2D-геометрия (параметрическое уравнение)
От: volk  
Дата: 01.07.05 16:43
Оценка:
Здравствуйте, Аноним, Вы писали:


А>Функция y = f(x) задана 2-мя параметрическими уравнениями


А>y(t) = A(t)= a0 + a1*t + a2*t2 + a3*t3

А>x(t) = B(t)= b0 + b1*t + b2*t2 + b3*t3

А>надо в интервале t0-t1 найти максимальную величину отклонения


Отклонение от прямой (x0,y0)-(x1,y1) -- это что такое?
Геометрическое расстояние на плоскости xy?
Или же это max(|y(t) — y_прямой(x(t))|) ?

В первом случае схема решения такая:
1. Поворот системы координат так, чтобы прямая совпала с осью x в новой системе (x',y').
Рассчитываются y'(t), x'(t), задающие кривую в новой системе.
2. Отыскание точек минимума и максимума: там dy/dt == 0.
3. Сравнение значений y(t), рассчитаных в точках экстремумов -- поиск наибольшего.

Если кривая -- не прямая и не особая кривая, то, наверное, по этой схеме все получится.
Однако могут быть неудобные частные случаи.

x'(t) можно не определять.
Тот, кто желает, но не делает, распространяет чуму.
Re: 2D-геометрия (параметрическое уравнение)
От: piAnd Россия  
Дата: 01.07.05 19:46
Оценка:
Здравствуйте, Аноним, Вы писали:


А>Функция y = f(x) задана 2-мя параметрическими уравнениями


А>y(t) = A(t)= a0 + a1*t + a2*t2 + a3*t3

А>x(t) = B(t)= b0 + b1*t + b2*t2 + b3*t3

А>надо в интервале t0-t1 найти максимальную величину отклонения

Че-то я не понял... Уравнения линейные => y=f(x) — прямая? Или какие-то другие сложные штуки?
Или это квадрат и куб цифрами после t?

Если квадрат и куб, то задача чисто аналитически решается.
В маткаде за десять минут

Я вот тут попробовал, получилось следующее: (надо перепроверять!!!)
Всего 2а значения t надо проверить подстановкой,
A*t^2 + B*t + C = 0

где A = 3*a3 + 3*(a1*b2*b3 + a2*b1*b3 + a3*b1*b2)/(b1*b2);
B = 2*a2 + 2*(a1*b2*b3 + a2*b1*b3 + a3*b1*b2)/(b1*b3);
C = a1 + (a1*b2*b3 + a2*b1*b3 + a3*b1*b2)/(b2*b3);

Решения t1, t2 подставляем в:

y(t) + x(t)*(a1*b2*b3 + a2*b1*b3 + a3*b1*b2)/(b1*b2*b3) — y2 + x2*(y2 — y1)/(x2 — x1)

где x1,y1,x2,y2 — координаты соотв-но x(t), y(t) при начальном t_beg и конечном t_end

То значение выражения, которое окажется больше, и есть искомое t !

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