Математический форум Math Help Planet
Обсуждение и решение задач по математике, физике, химии, экономике Теоретический раздел |
Часовой пояс: UTC + 3 часа [ Летнее время ] |
новый онлайн-сервис число, сумма и дата прописью |
|
Часовой пояс: UTC + 3 часа [ Летнее время ] |
Страница 1 из 1 |
[ Сообщений: 6 ] |
|
Автор | Сообщение | |
---|---|---|
mpjoke |
|
|
Дано ширина, высота многоугольника, х,у точки, через которую проходит линия, Тангенс угла наклона. Требуется - построить прямую линию, проходящую через заданную точку с заданным углом наклона... Казалось бы, что все просто.... У меня почему то нормально стоит только над диагональю, а все, что под - начинает безбожно врать...( В чем ошибка и недоработка, делаю так float k = Math::Tan(angle*(Math::PI / 180)); //вычисляю тангенс угла int b = yDat - k * xDat; //count B b=y-k*x = вычисляю коэф и из уравнения y = kx+b if (x==0){ y = b; if (y<0){ // under the map y = 0; x = -b/k; }else if (y>h){ //upper the map y=h; x=-b/k; } }else if (x==w){ //if cross xMax y = k*x +b; if (y>h){ //upper the map y=h; x=b/k; }else if (y<0){ // under the map y = 0; x = -b/k; } }else if (0<x<w){ y = k*x +b; } PointF xTsyTs = PointF(x,y); - точка на границе прямоугольника с одной стороны. Затем меняем Тангенс, прибавляя 180 и считаем точку на другой стороне прямоугольника. Соединяем точки, но не получаем искомую линию, если ниже диагонали....(( |
||
Вернуться к началу | ||
Andy |
|
|
mpjoke
А Вы решали задачу аналитически? Если да, то воспроизведите, пожалуйста выкладки. Тогда можно будет найти ошибку. |
||
Вернуться к началу | ||
mpjoke |
|
||
Аналитически я решал следующим образом:
Нашел коэф-т b, выразив из известной формулы у = к*х + б Далее нашел х при у =о и наоборот..... Но эт как то работает только на половине плоскости - над диагональю... Вчера попробовал вывести, но получается то же не для всей плоскости Во вложении - на фотке я попытался нарисовать условие задачи. Знаем ширину, высоту окна Координаты точки на линии и угловой коэффициент. Надо найти 2 точки пересечения этой линии с краями плоскости..... Я попробовал сосчитать, используя формулы - итоговую... Как я понимаю найти можно следующим образом формулу по которой считать в дальнейшем a/sin(alf)=b/sin(bet) значит a' = b*еп(alf) b' = a * tg(bet) где a и b - длины соответствующих сторон вспомогательных треугольников Значит полная формула aa = x + y*tg(alf) и bb=y+x*tg(bet) Но, если этим пользоваться, то находим только пересечения на осях.... Значит, если противоположные стороны прямоугольника, то сдвигаем оси, а потом считаем???
|
|||
Вернуться к началу | |||
Andy |
|
|
mpjoke
В Вашем случае, как я понял, координаты заданной точки [math]M[/math] удовлетворяют неравенствам [math]0\le x_M \le a,~0\le y_M \le b,[/math] начало координат располагается в вершине левого нижнего угла прямоугольника. Требуется найти точки пересечения прямой [math]y=k(x-x_M)+y_M[/math] со сторонами прямоугольника? |
||
Вернуться к началу | ||
mpjoke |
|
|
Да....
|
||
Вернуться к началу | ||
Andy |
|
|
mpjoke
Вы легко согласились с предложенной мной формулировкой. Для решения задачи, между тем, немаловажно, может ли заданная точка [math]M[/math] принадлежать границе или является только внутренней точкой прямоугольника. Тогда [math]0<x_M<a,~0<y_M<b.[/math] Определитесь, пожалуйста. |
||
Вернуться к началу | ||
[ Сообщений: 6 ] |
Похожие темы | Автор | Ответы | Просмотры | Последнее сообщение |
---|---|---|---|---|
Кривол-ый интеграл по границе тр-ка, Формула Грина
в форуме Интегральное исчисление |
0 |
131 |
12 окт 2021, 20:13 |
|
Кривол-ый интеграл по границе тр-ка, Формула Грина
в форуме Интегральное исчисление |
2 |
231 |
07 сен 2022, 15:31 |
|
Что означает формула (степень в границе интегрирования)
в форуме Интегральное исчисление |
2 |
250 |
07 авг 2022, 07:26 |
|
Коэффициенты прогонки на границе двух сред
в форуме Численные методы |
0 |
353 |
02 сен 2015, 12:29 |
|
Поведение электромагнитной волны на границе двух сред
в форуме Электричество и Магнетизм |
1 |
1039 |
02 окт 2016, 10:47 |
|
Три прямоугольника | 1 |
331 |
05 авг 2020, 16:32 |
|
Деление прямоугольника
в форуме Геометрия |
5 |
554 |
02 дек 2018, 13:50 |
|
Площадь прямоугольника
в форуме Геометрия |
4 |
321 |
19 ноя 2015, 16:54 |
|
Периметр прямоугольника
в форуме Алгебра |
1 |
420 |
06 авг 2015, 07:36 |
|
Задача о диагонали прямоугольника | 3 |
1301 |
26 июл 2016, 14:05 |
Часовой пояс: UTC + 3 часа [ Летнее время ] |
Кто сейчас на конференции |
Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 16 |
Вы не можете начинать темы Вы не можете отвечать на сообщения Вы не можете редактировать свои сообщения Вы не можете удалять свои сообщения Вы не можете добавлять вложения |