Im делает некоторую обработку изображения, и у меня есть координаты 4 точек четырехугольника. (что-то вроде трапеции) Как я могу получить координаты всех пикселей внутри него? Кстати, я использую Java. Спасибо!Как найти пиксельные точки внутри четырехугольника, используя Java?
ответ
Необходимо заполнить полигон полилинии.
Вот быстрый PDF лекции по теме:
http://www.cs.binghamton.edu/~reckert/460/lect11_2009-areafill-transformations.pdf
Вот пример веб-страницы с некоторым кодом образца C и хорошей иллюстрацией основной идеи:
http://alienryderflex.com/polygon_fill/
Вот короткая форма. Разделите четырехугольные линии на те, которые находятся слева, и справа. Для каждой строки констант-Y-координаты выведите точку пересечения левой линии; определить точку пересечения для правильной линии; все пиксели в этой строке между двумя точками пересечения находятся внутри вашей трапеции.
Как раз в истории эта вещь была первоначально (и, вероятно, еще) выполнена для рендеринга 3d-сцен в программном обеспечении. Я думаю, что тогда у него другое имя, но я не помню его. Однако на самом деле вам не нужно рисовать пиксели; алгоритм даст вам пиксели, рисуете ли вы их или нет.
http://wiki.processing.org/w/Find_which_side_of_a_line_a_point_is_on имеет псевдокод о том, как найти, на какой стороне линии находится точка.
Если ваш квадрат определяется точками, то A, B, C, D - проверка, если ваша точка находится на левой стороне AB, BC, CD и DA, должна дать вам ответ.
Редактировать: К сожалению, я прочитал ваш вопрос, как найти a пункт, не все пункты. Надеюсь, это еще полезно.
Это вопрос обнаружения столкновения? Вы хотите знать, находится ли данная точка внутри формы? Или вы действительно хотите, чтобы координаты всех точек внутри вашей фигуры?
Нет, это не вопрос обнаружения столкновения. Я хотел бы знать все координаты внутри данной формы, поэтому я могу рассчитать средние значения RGB внутри этого многоугольника. – orangebrainer
Я ищу решение такого рода. Можете ли вы указать мне в правильном направлении? –
- 1. Найти все точки вне четырехугольника (не прямоугольник)
- 2. Поиск эвауивалентной точки в четырехугольника
- 3. Как получить пиксельные точки контуров?
- 4. Найти подключенные пиксельные точки нескольких контуров
- 5. Относительное положение точки в пределах четырехугольника
- 6. Найти внутри прямоугольника, используя внешние точки
- 7. Площадь четырехугольника
- 8. Graphics2D рисовать изображение внутри определенного четырехугольника
- 9. Найти белые пиксельные линии
- 10. Рисование выпуклого/вогнутого четырехугольника в Java
- 11. CGAL - найти точки внутри многогранника
- 12. Как найти точки, находящиеся внутри границы 3D
- 13. Как получить пиксели внутри четырехугольника, определенные четырьмя точками в OpenCV?
- 14. Диагональ четырехугольника
- 15. Заполнение четырехугольника
- 16. MFC - Как нарисовать пиксельные волны внутри прямоугольника
- 17. Как нарисовать строку в java, используя точки?
- 18. Как я могу вписать прямоугольник или круг внутри произвольного четырехугольника
- 19. Найти ближайшие два точки JAVA
- 20. Рисунок круг наименьшего радиуса вокруг четырехугольника, используя R
- 21. Найти точки на расстоянии, используя MySQL
- 22. Найти слово, используя Java
- 23. Найти точки, используя Oracle, прямо перед polgon
- 24. Найти центр точки TouchImageView, используя TouchImageView.java класс
- 25. Python Opencv - Найти черные точки внутри контуров
- 26. Рассчитать площадь четырехугольника
- 27. Как найти все пиксельные индексы в указанных координатах?
- 28. iPhone CoreText: Найти пиксельные координаты подстроки
- 29. Найти внутри zeros в Java
- 30. Что такое эффективный алгоритм для копирования пикселей, находящихся внутри четырехугольника?
Вы имеете в виду площадь в пикселях или список всех отдельных пикселей, находящихся в форме? Предполагая первое, и что координаты, которые у вас есть, представляют собой четыре отдельных пикселя, вам просто нужно найти и реализовать формулу для определения области четырехугольника (Google поможет вам в этом). –