Как обнаружить закрытую область на picturebox c#

#c# #paint

#c# #Краски

Вопрос:

Я создаю простое приложение для рисования. У меня есть поле с картинками, и я рисую линию, прямоугольник, эллипс, … над ним.Но я не знаю, как я могу обнаружить закрытую область, такую как эллипс, при щелчке мышью, которая заполняет ее указанным цветом. (т.е. Я хочу имитировать заливку с помощью кнопки цвета в paint). Кто-нибудь может мне помочь?

Спасибо

Комментарии:

1. Это может быть проблемой только в том случае, если вы каким-то образом забыли, что объект представляет собой линию или эллипс. Следите за фигурами, а не просто рисуйте пиксели. Теперь это просто, вы знаете, что вы не можете заполнить строку. И тестирование попадания становится простым. GraphicsPath — удобный вспомогательный класс.

2. Как я могу отслеживать фигуры? Может быть, есть много эллипсов и прямоугольников и … на поле с картинками. Я хочу, чтобы именно эта форма, на которую я нажимаю, заливала область моим цветом. (извините за мой плохой английский)

Ответ №1:

Я нажимаю на эту область, заливая ее своим цветом.@Да, вы можете использовать библиотеку AForge для заливки цветом заостренной области в формах элемента управления picture box и класса PointedMeanFloodFill. ссылка на код: