Конференция "Игры" » Проверить, принадлежит ли точка прямоугольнику [Delphi]
 
  • @!!ex © (27.08.07 13:50) [20]
    > [19] MBo ©   (27.08.07 13:37)

    В данном случае нет смысла от такого описания, хоть оно и универсальное.. :(


    > [18] Darkwingg   (27.08.07 13:03)

    Хм. А я обычно наоборот избегаю вертикальных прямых именно применением прямой близкой к вертикальной, обычно точности хватает, даже на очень длинных прямых.
  • MBo © (27.08.07 15:01) [21]
    >В данном случае нет смысла от такого описания
    Если речь идет о том, с какой стороны от прямой находится точка, то это описание отлично подходит.
  • @!!ex © (27.08.07 15:05) [22]
    > [21] MBo ©   (27.08.07 15:01)

    А! Точно. Протупил нафиг.
    Ведь как раз именно это уравнение дает расстояние от прямой до точки и к тому же универсальное.

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

    Darkwingg, вот оно - то самое уравнение.
  • MBo © (27.08.07 15:28) [23]
    >@!!ex
    однако для построения уравнений придется делать вычисления для всех сторон, что излишне.

    в [5] описан более экономичный способ.
  • Darkwingg (27.08.07 15:28) [24]

    > @!!ex ©

    угу согласен)) я тож щас понял, что пора бы заново пролистать кой-какие книжки...

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

    (x-x1)/(y-y1) = (x-x2)/(y-y2)

    путем бубна и ктулху его можно привести к виду ax + by + c = 0, где всерно будет (x1 - x2) в знаменателе.
  • @!!ex © (27.08.07 15:34) [25]
    > [24] Darkwingg   (27.08.07 15:28)

    Честно говоря я уже сейчас не помню, но нам объясняли как избегать случая, когда компонента направляющего вектора равно 0, вроде там както просто, но это было давно и я не помню.
  • Darkwingg (27.08.07 15:41) [26]
    в том то и дело что с синусами, косинусами, углами и векторами не дожно возникать никаких проблем. там вообще нет никакого деления. что собсно и отражено в моем методе))). все заканчиваю флудить....последний пост в этой теме.
  • @!!ex © (28.08.07 09:51) [27]
    > однако для построения уравнений придется делать вычисления
    > для всех сторон, что излишне.
    >
    > в [5] описан более экономичный способ.

    Зачем? парами считать, направляющие векторы то у парарельных прямых одинаквые.
    А если это прямоугольник, то достаточно найти один, а второй будет под 90 градусов.


    > [26] Darkwingg   (27.08.07 15:41)

    Нееет. Все таки я туплю конкретно.
    Нет там деления на ноль. Даже при вертикальной прямой.
    Это же тупо компоненты вектора, ну равна одна из них нулю, там же умножение, а не деление!
  • @!!ex © (28.08.07 09:51) [28]
    > однако для построения уравнений придется делать вычисления
    > для всех сторон, что излишне.
    >
    > в [5] описан более экономичный способ.

    Зачем? парами считать, направляющие векторы то у парарельных прямых одинаквые.
    А если это прямоугольник, то достаточно найти один, а второй будет под 90 градусов.


    > [26] Darkwingg   (27.08.07 15:41)

    Нееет. Все таки я туплю конкретно.
    Нет там деления на ноль. Даже при вертикальной прямой.
    Это же тупо компоненты вектора, ну равна одна из них нулю, там же умножение, а не деление!
 
Конференция "Игры" » Проверить, принадлежит ли точка прямоугольнику [Delphi]
Есть новые Нет новых   [134431   +10][b:0][p:0]