Модераторы: Partizan, gambit

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Fillpolygon, VB, Fillmode - Когда и что закрашивает? 
:(
    Опции темы
diostm
Дата 29.1.2010, 22:44 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 18
Регистрация: 28.12.2009

Репутация: нет
Всего: нет



В данный момент читаю Ч. Петцольда, "Как программировать для Microsoft Windows на Visual Basic .NET". Дошел до конца раздела с графикой. Не могу понять, при каких условиях будет закрашиваться часть фигуры, а при каких не будет?

На рисунке фигура слева создана с помощью
Код

grfx.FillPolygon(br, apt, FillMode.Alternate)


фигура справа:

Код

grfx.FillPolygon(br, apt, FillMode.Winding)


Собственно и не могу понять, при каких условиях будет закрашиваться фигура какая-то часть фигуры, а при каких - нет.
П.С. Прошу простить меня, ламера, за создание еще одного топика, если топик с подобным содержанием уже был создан.

Присоединённый файл ( Кол-во скачиваний: 11 )
Присоединённый файл  Untitled.png 6,66 Kb
PM MAIL   Вверх
Sfate
Дата 29.1.2010, 23:04 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Angry Beaver
*


Профиль
Группа: Участник
Сообщений: 111
Регистрация: 7.9.2008
Где: mov AL, BL

Репутация: нет
Всего: нет



внимательно читаем http://msdn.microsoft.com/ru-ru/library/sy...-us,VS.71).aspx
вчастности отличия между Alternate и Winding
--------------------
"Начинающий программист твердо уверен, что в 1 кбайте 1000 байт, а опытный точно знает, что в 1 километре 1024 метра..." © Unknown
PM MAIL WWW ICQ   Вверх
diostm
Дата 29.1.2010, 23:44 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 18
Регистрация: 28.12.2009

Репутация: нет
Всего: нет



К сожалению мой английский слишком слаб(учил в школе немецкий) :(
=====
Отрывок из Петцольда:
Цитата

Обычно в режиме winding закрашиваются все замкнутые области. Но не все-
гда все так просто — есть и ряд исключений. Чтобы определить, будет ли закра-
шена область в режиме winding, мысленно проведите прямую из любой точки этой
области в бесконечность, Если воображаемая линия пересекает нечетное число
границ, область закрашивается (так же, как в режиме alternate). Если же вообра-
жаемая линия пересекает четное число границ, то область может быть закраше-
на, а может остаться и свободной. Такая область закрашивается, если число гра-
ничных линий, направленных по часовой стрелке, не равно числу линий, направ-
ленных против часовой стрелки.


Что понимается под словом "граиница"?
Под "число граничных линий" ?
Под "направленных по часовой стрелке"? Это какое направление? Право/низ/верх/лево?
PM MAIL   Вверх
Sfate
Дата 30.1.2010, 01:51 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Angry Beaver
*


Профиль
Группа: Участник
Сообщений: 111
Регистрация: 7.9.2008
Где: mov AL, BL

Репутация: нет
Всего: нет



в моем понимании... метод Winding закрашивает замкнутую фигуру... а метод Alternate с каким то перекрытием (каким точно я хз)...
--------------------
"Начинающий программист твердо уверен, что в 1 кбайте 1000 байт, а опытный точно знает, что в 1 километре 1024 метра..." © Unknown
PM MAIL WWW ICQ   Вверх
diostm
Дата 30.1.2010, 02:45 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 18
Регистрация: 28.12.2009

Репутация: нет
Всего: нет



в том-то вся и беда, что нужны нюансы и точное понимание того что и как работает :(
PM MAIL   Вверх
diadiavova
Дата 30.1.2010, 11:53 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Доктор Зло(диагност, настоящий, с лицензией и полномочиями)
****


Профиль
Группа: Модератор
Сообщений: 5821
Регистрация: 14.8.2008
Где: В Коньфпольте

Репутация: 18
Всего: 142





--------------------
Хочешь получить мудрый совет - читай подписи участников форумов.
Злой доктор Щасзаболит smile
PM   Вверх
diostm
Дата 30.1.2010, 12:35 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 18
Регистрация: 28.12.2009

Репутация: нет
Всего: нет



спасибо, что еще раз ткнули в мсдн. ответов, увы не прибавилось :(
PM MAIL   Вверх
diadiavova
Дата 30.1.2010, 13:40 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Доктор Зло(диагност, настоящий, с лицензией и полномочиями)
****


Профиль
Группа: Модератор
Сообщений: 5821
Регистрация: 14.8.2008
Где: В Коньфпольте

Репутация: 18
Всего: 142



Цитата(diostm @  30.1.2010,  12:35 Найти цитируемый пост)
спасибо, что еще раз ткнули в мсдн

Это был ответ на это
Цитата(diostm @  29.1.2010,  23:44 Найти цитируемый пост)
К сожалению мой английский слишком слаб(учил в школе немецкий) :(

 smile 


--------------------
Хочешь получить мудрый совет - читай подписи участников форумов.
Злой доктор Щасзаболит smile
PM   Вверх
diostm
Дата 30.1.2010, 13:47 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 18
Регистрация: 28.12.2009

Репутация: нет
Всего: нет



diadiavova, нет, нет, доктор Зло, не надо smile
П.С.  smile 
PM MAIL   Вверх
diadiavova
Дата 30.1.2010, 13:53 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Доктор Зло(диагност, настоящий, с лицензией и полномочиями)
****


Профиль
Группа: Модератор
Сообщений: 5821
Регистрация: 14.8.2008
Где: В Коньфпольте

Репутация: 18
Всего: 142



diostm, я этим не пользовался, но гуголь вполне находит примеры по запросу
http://www.google.ru/search?hl=ru&rlz=...mp;aq=f&oq=

Вот этот, скажем, чем плох?

http://www.codenet.ru/progr/delphi/stat/regions/

Добавлено через 1 минуту и 6 секунд
Там на примере со звездой даже без пояснений понятно всё.


--------------------
Хочешь получить мудрый совет - читай подписи участников форумов.
Злой доктор Щасзаболит smile
PM   Вверх
diostm
Дата 30.1.2010, 21:33 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 18
Регистрация: 28.12.2009

Репутация: нет
Всего: нет



Только вот немного непонятно следующее:
Слева Fillmode: Alternate
Слева Fillmode: Winding

Не понимаю, почему не закрашивается область внутренняя на правой фигуре на рисунке...

Присоединённый файл ( Кол-во скачиваний: 9 )
Присоединённый файл  Untitled.png 62,59 Kb
PM MAIL   Вверх
Sfate
Дата 31.1.2010, 16:30 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Angry Beaver
*


Профиль
Группа: Участник
Сообщений: 111
Регистрация: 7.9.2008
Где: mov AL, BL

Репутация: нет
Всего: нет



diostm, стучимся к мелкомягким в суппорт...
--------------------
"Начинающий программист твердо уверен, что в 1 кбайте 1000 байт, а опытный точно знает, что в 1 километре 1024 метра..." © Unknown
PM MAIL WWW ICQ   Вверх
diostm
Дата 31.1.2010, 18:13 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 18
Регистрация: 28.12.2009

Репутация: нет
Всего: нет



Sfate, а этот раздел называется не помощь новичкам в .НЕТ
П.С. Если по существу нечего было сказать, то можно было и воздержаться от реплики smile
PM MAIL   Вверх
Sfate
Дата 31.1.2010, 22:49 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Angry Beaver
*


Профиль
Группа: Участник
Сообщений: 111
Регистрация: 7.9.2008
Где: mov AL, BL

Репутация: нет
Всего: нет



Цитата(diostm @  31.1.2010,  18:13 Найти цитируемый пост)
Sfate, а этот раздел называется не помощь новичкам в .НЕТ
да так...


Цитата(diostm @  31.1.2010,  18:13 Найти цитируемый пост)
П.С. Если по существу нечего было сказать, то можно было и воздержаться от реплики 
ммм... помоему... реплика очень содержательна и несет много смысла... т.к. только мелкомягкие несут тот кладязь знаний... которые мы пытаемся понять...
если серьезно... из двух приведенных Вами примеров (изображения в 1м и 11м постах) можно понять, в кратце принцип работы:
FillMode.Alternate - при рисовании самопересекающихся замкнутых сплайнов будут чередоваться закрашенные и не закрашенные области... 
FillMode.Winding - большинство замкнутых областей будет закрашено...

Это сообщение отредактировал(а) Sfate - 31.1.2010, 22:50
--------------------
"Начинающий программист твердо уверен, что в 1 кбайте 1000 байт, а опытный точно знает, что в 1 километре 1024 метра..." © Unknown
PM MAIL WWW ICQ   Вверх
diostm
Дата 31.1.2010, 23:28 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 18
Регистрация: 28.12.2009

Репутация: нет
Всего: нет



Sfate, ну вот мне и интересно, в каких случаях при FillMode.Winding области(и какие именно) будут закрашены, то есть другими словами, как определить будет ли какая-то область закрашена или останется не закрашенной при FillMode.Winding
PM MAIL   Вверх
diostm
Дата 2.2.2010, 21:18 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 18
Регистрация: 28.12.2009

Репутация: нет
Всего: нет



up
PM MAIL   Вверх
diostm
Дата 6.2.2010, 00:42 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 18
Регистрация: 28.12.2009

Репутация: нет
Всего: нет



ap
PM MAIL   Вверх
diadiavova
Дата 6.2.2010, 00:46 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Доктор Зло(диагност, настоящий, с лицензией и полномочиями)
****


Профиль
Группа: Модератор
Сообщений: 5821
Регистрация: 14.8.2008
Где: В Коньфпольте

Репутация: 18
Всего: 142



Что ап то? Нарисуй многоугольник с непересекающимися линиями и проблемы не будет. Сможешь полностью сам контролировать что закрасится, а что нет.


--------------------
Хочешь получить мудрый совет - читай подписи участников форумов.
Злой доктор Щасзаболит smile
PM   Вверх
diostm
Дата 6.2.2010, 16:50 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 18
Регистрация: 28.12.2009

Репутация: нет
Всего: нет



Все ясно, нюансов я тут не найду smile
PM MAIL   Вверх
Sfate
Дата 6.2.2010, 20:51 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Angry Beaver
*


Профиль
Группа: Участник
Сообщений: 111
Регистрация: 7.9.2008
Где: mov AL, BL

Репутация: нет
Всего: нет



diostm, о чем тебе и было написано раньше smile 
--------------------
"Начинающий программист твердо уверен, что в 1 кбайте 1000 байт, а опытный точно знает, что в 1 километре 1024 метра..." © Unknown
PM MAIL WWW ICQ   Вверх
Страницы: (2) [Все] 1 2 
Ответ в темуСоздание новой темы Создание опроса
Прежде чем создать тему, посмотрите сюда:
Partizan
PashaPash

Используйте теги [code=csharp][/code] для подсветки кода. Используйтe чекбокс "транслит" если у Вас нет русских шрифтов.
Что делать если Вам помогли, но отблагодарить помощника плюсом в репутацию Вы не можете(не хватает сообщений)? Пишите сюда, или отправляйте репорт. Поставим :)
Так же не забывайте отмечать свой вопрос решенным, если он таковым является :)


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, mr.DUDA, Partizan, PashaPash.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | .NET для новичков | Следующая тема »


 




[ Время генерации скрипта: 0.0594 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.