Если у меня есть 2D прямоугольник типа Microsoft.XNA.Framework.Rectangle, и я хочу посмотреть, проходит ли через него точка на экране (определенная как (x, y)) после того, как она также была повернута на определенную сумму?Поиск, если точка пересекает вращающийся прямоугольник?
ответ
Поворот вокруг начала координат так, чтобы прямоугольник выровнен по X & оси Y, то тест становится простым:
is rect.left <= point.x <= rect.right, is rect.bottom <= point.y <= rect.top
Если вы не знаете, вращение прямоугольника, вы можете понять это с тригонометрией.
Дайте мне знать, если вы хотите больше помочь с помощью триггера. –
Исправьте меня, если я ошибаюсь, но если я поворачиваю прямоугольник так, как вы полагаете, я буду проверять пересечения в новом прямоугольнике, который включает вращающийся прямоугольник. То, что я хочу сделать, это проверить только пересечения на прямоугольнике, который был повернут. – tweetypi
Если вы поворачиваете прямоугольник и точку, «новый прямоугольник» на самом деле является одним и тем же прямоугольником, просто выравнивается, чтобы вы могли легко проверить его границы. Чтобы увидеть, как это работает, нарисуйте (на бумаге) прямоугольник под углом 45 градусов вместе с некоторой точкой. Теперь наклоните голову на 45 градусов, и прямоугольник будет выглядеть так, как будто он больше не вращается. –
Можете ли вы повернуть как прямоугольник, так и точку, а затем увидеть, находится ли точка внутри с простой проверкой границ?
Unrotate Я имею в виду, что одна из краев прямоугольника выровнена с осью x.
- 1. Почему точка Slick2d не пересекает прямоугольник?
- 2. Простой способ определить, пересекает ли точка на линии прямоугольник
- 3. Нарисуйте вращающийся прямоугольник на апплете
- 4. C# Графика Прямоугольник, вращающийся настойчиво
- 5. Вращающийся прямоугольник и настройка positon
- 6. Перестраиваемый и вращающийся прямоугольник D3?
- 7. Finding Отрезок-Прямоугольник точка пересечения
- 8. Как проверить, пересекает ли отрезок линии прямоугольник?
- 9. Как узнать, пересекает ли луч прямоугольник?
- 10. Как проверить, пересекает ли точка многоугольник
- 11. Вращающийся прямоугольник не указывает на игрока точно
- 12. вращающийся прямоугольник дает очень запутанные результаты
- 13. Вращающийся просмотр камеры. Точка с кварианнами
- 14. Найти, если линия пересекает сферу
- 15. Detect, если полилиния пересекает многоугольник
- 16. Проверить, если точка прямоугольника
- 17. Как определить, какой прямоугольник пересекает больше C# XNA
- 18. Поиск точек, где круг пересекает другой круг
- 19. Emacs поиск Повсеместно прямоугольник
- 20. Поиск области, в которой CGPath пересекает CGRect
- 21. Вращающийся SVG прямоугольник вокруг его центра с использованием ванили JavaScript
- 22. Я пытаюсь найти, если прямоугольник пересекает вогнутый многоугольник. Выполняет ли этот алгоритм это?
- 23. JavaScript Проверка холста, если прямоугольник включает прямоугольник
- 24. OpenCV/Python: cv2.minAreaRect не вернет вращающийся прямоугольник
- 25. Как реализовать вращающийся прямоугольник вокруг круга в libGDX Box2D?
- 26. Matplotlib: вращающийся патч
- 27. Найти, если луч пересекает вокселя без марширования
- 28. поиск /./ страница точка исчезает - HTML
- 29. Поиск, если точка в 3D поли в python
- 30. Поиск, если лат/длинная точка находится внутри многоугольника, определяемого координатами
Аналогичный вопрос размещен здесь: http://stackoverflow.com/questions/1240660/check-if-a-point-is-in-a-rotated-rectangle-c Он находится в виде окон, но также применяется для XNA. – Marking