Показать сообщение отдельно
  #5 (permalink)  
Старый 15.12.2020, 10:05
Аспирант
Отправить личное сообщение для mirek Посмотреть профиль Найти все сообщения от mirek
 
Регистрация: 21.05.2012
Сообщений: 49

Проблема не только в школьном курсе

Например я вычисляю перпендикуляры для каждой стороны полигона соответственно. Это для отображения тех же уголков на чертеже

Но при перемещении всего четежа В данном случае это земельный участок подразумевается
Так вот изменяются значения Left и Top каждого уголка - перпендикулярной по отношению к полигону изображающему участок линии

Но вот x1, y1, x2, y2 этих линий-перпендикуляров при этом не меняется

И соответственно когда пользователь щелкает по точке и модифицирует сторону полигона то найти как относятся перпендикуляры чертежа к этой стороне не возможно так как координаты x1, y1, x2, y2 перпендикулярных линий у схеме остаются те, что были до перемещения всей схемы

Я погуглил и нашел это
We cannot implement it on moving since it would clutter the move event without reason, but we can totally write a short method get current points

При этом автор советует реализовывать этот метод используя width и height объекта

Я попробовал реализовать этот short method
При этом получаются приближенные значения x1, y1, x2, y2 до .005 тысячных

Ну и соответственно сравнение типа obj.х1 == searchp.x1 не срабатывает

Тут можно чудить еще. Округлять например. Только это ни к чему не приведет.

Потому-что реальные координаты перемещенной точки на самом полигоне после перемещения приобретают также не фиксированную точность
Ответить с цитированием