Регистрация
17 Июл 2013
Сообщения
96
Репутация
0
Спасибо
0
Монет
0
Кто знает самый короткий алгоритм на проверку, находится ли точка в ромбе либо на его рёбрах?



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

23371603_8302e06a4450834650f054205c04f8b4_800.png

 
Собственно, если у вас дагонали dx, dy, и они параллельны осям, а центр - rx, ry, точка - x, y, то проверка сводится к следующей:
|(x - rx) / dx| + |(y - ry) / dy| <= 2.
Всё.
 
Назад
Сверху