Просмотр полной версии : Расстояние до объекта, как узнать?
У меня есть кривая. Надо определять расстояние от кривой до текущего положения мыши.
Как это сделать? Очень, очень нужно.
Помогите, пожалуйста!:away:
_x
_y
координаты объекта
_xmouse
_ymouse
координаты мыши
...
нажимай F1 иногда!
Вы в школе теорему пифагора доказывали?
orangeline
05.06.2006, 21:30
растояние от точки до текущего положения сыши - понятно, а кривая это очень очень много точек )))).
какое именно расстояние тебе нужно ? кротчайшее?
Буньков Максим
05.06.2006, 21:47
оффтоп: Геометрия отдыхает....
Какой пифагор, ребяты. Вы что.
Для простоты возьмем: Дано: пусть есть уравнение кривой. Есть точка в пространстве. Найти: кратчайшее расстояние от точки до кривой.
Ну ка, вперед. Хорошо если парабола: тогда уравнение касательной - y = f(x0) + f'(x0)(x-x0), решаем систему уравнений, находим искомую прямую, перпендикуляр к касательной в нужной точке, и тогда уж пифагор. А если это не парабола, а если это тригонометрия. А если руками нарисованный безье?
Вы шо.
Буньков Максим
05.06.2006, 23:44
А нам пофигу у mc тока _x _y _width _hight
есть еще хиттест.
это то что я имел ввиду когда говорил про подбор
шо значит кривая? как она описывается?
мда....
уравненипе легко решаемо для любой не комплексной кривой
неопределенное решение если в кривой есть точки разрыва второго рода
всех желающих найти кратчайшее расстояние отправляю учить матанализ
Давайте автора подождем и он нам растолкует подробно, что он хочет.
А можно мне, любопытства ради.. Не создавать же новую тему.
Может Kinsler согласится объяснить мне как найти решение для y = x+sin(x) и случайной точки на поверхности?
Матанализ подучить мне уже не светит. Математике меня не учат уже лет 5.
(x-x0)^2 + (y-y0)^2
ищем минимум....
гыыы.
что значит ищем минимум :-)
блин подставляешь в выражение что я написал функцию кривой
и ищешь минимум получившигося выражения
будет время напиши прогу, которая это делает, может даже сегодня...
считаем что координаты точки известны
кликнули мышью, их узнали
ставим вместо x0 и y0
поставляем у = x+sin(x);
дифференцируем получившиеся и приравниваем нулю.
Работает на vBulletin ® версия 3.7.3. Copyright ©2000-2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Copyright © 1999-2008 Flasher.ru. All rights reserved.