Я пытаюсь определить, граничат ли два прямоугольника друг с другом. Если они разделяют край или часть ребра, то я хочу включить их, если они разделяют только вершину, а затем нет.Прямоугольное пересечение общего края
Я пробовал использовать android.graphics.Rect, я надеялся, что метод intersect вернет true, давая мне прямоугольник с шириной 0, но точки пересекающегося края. Я использую andEngine, а также попытался использовать метод collideswith org.andengine.entity.primitive.Rectangle, но возвращает true, даже если прямоугольник имеет только одну угловую вершину.
Есть ли хороший способ сделать это? Единственный другой способ, о котором я могу думать, - попытаться создать коллекцию всех ребер, тогда посмотрим, равны ли они или частично частично равны.
Вот изображение, чтобы продемонстрировать, что я хочу. Если я нажимаю на прямоугольнику 1, то я хочу вернуться прямоугольниками 2,3 и 4, но не 5.
1 http://i43.tinypic.com/2d0bfxg.png «Карта»
Как насчет того, чтобы рассматривать их как график и удерживать список аджанс? Вместо списка краев вы говорите о ... – gtgaxiola
Делают прямоугольники двигаются или вращаются? Попробуйте точечный продукт оси x и y. –
Нет, прямоугольники не перемещаются и не вращаются. Я не знаком с точками или списками Adjacency, но я пойду и посмотрю их. –