![]() |
|
||||||||||
|
|||||||
|
|
« Предыдущая тема | Следующая тема » |
| Опции темы | Опции просмотра |
|
![]() |
![]() |
|
|||||
|
Регистрация: Sep 2012
Сообщений: 8
|
Здравствуйте!
Ситуация: есть некоторый графический объект, например квадрат: для него в качестве маски применяется другой графический объект, пусть это будет звезда: Звезда может как лежать внутри квадрата, так и просто пересекаться с ним (или вообще не пересекаться). Задача - определить площадь этого пересечения (например, определить, что звезда "покрывает" квадрат на 90%). Подскажите, в какую сторону копать? |
|
|||||
|
Если фигуры действительно произвольные, то getPixel\getPixel32\getPixels
__________________
9 из 10 голосов в моей голове сказали наркотикам "НЕТ" Мои ачивки: художник-паразит. |
|
|||||
|
Ну как всегда, два пути, аналитический и фактический.
Первое. Т.к. вы знаете что вы нарисовали(а вы знаете раз нарисовали) то и площадь подсчитать можно почти всегда, исключения составляют всякие фракталы и прочие не особо интересующие нас вещи. И фактический, это взять оба накладываемых изображения, растеризовать, и попиксельно проверить значения цветов в каждой точне, ну и по цветам понять что и как. Или посчитать количество ненулевых пикселей маскированного объекта.
__________________
:) |
|
|||||
|
Регистрация: Jun 2008
Сообщений: 205
|
Копать в сторону http://active.tutsplus.com/tutorials...-pixel-colors/ - т е оценки площади пересечения получившейся
|
|
|||||
|
Регистрация: Sep 2012
Сообщений: 8
|
Цитата:
Цитата:
|
|
|||||
|
Цитата:
__________________
:) |
|
|||||
|
Регистрация: Sep 2012
Сообщений: 8
|
Цитата:
update Всем спасибо за подсказки, получилось. Убедился, что если объект закрыт маской и мы "передаем" его в BitmapData, то сумма его непрозрачных пикселей ограничивается площадью маски. Последний раз редактировалось olegpon3; 06.09.2012 в 17:29. |
![]() |
![]() |
Часовой пояс GMT +4, время: 18:07. |
|
|
« Предыдущая тема | Следующая тема » |
|
|