Поворот ЗАКРАШЕННОГО прямоугольника

Программирование на Visual Basic, главный форум. Обсуждение тем программирования на VB 1—6.
Даже если вы плохо разбираетесь в VB и программировании вообще — тут вам помогут. В разумных пределах, конечно.
Правила форума
Темы, в которых будет сначала написано «что нужно сделать», а затем просьба «помогите», будут закрыты.
Читайте требования к создаваемым темам.
dimanych
Начинающий
Начинающий
 
Сообщения: 5
Зарегистрирован: 20.07.2012 (Пт) 11:16

Поворот ЗАКРАШЕННОГО прямоугольника

Сообщение dimanych » 20.07.2012 (Пт) 11:19

Доброго времени всем!
Понадобилось написать прогу поворота прямоугольника на произвольний угол. Проблема была успешно решена. НО! Как сделать тоже самое только с залитым цветом прямоугольником? Рисовать его в повернутом положении линиями, а потом сделать заливку - не прокатит.

Хакер
Телепат
Телепат
Аватара пользователя
 
Сообщения: 16478
Зарегистрирован: 13.11.2005 (Вс) 2:43
Откуда: Казахстан, Петропавловск

Re: Поворот ЗАКРАШЕННОГО прямоугольника

Сообщение Хакер » 20.07.2012 (Пт) 11:31

О чём думают задающие вопросы? Почему не пишут очевидные вещи.

Вот есть одна ситуация. Надо рисовать незакрашенный прямоугольник с поворотом на произвольный угол. Тут всё окей.
Есть вторая ситуация. Надо рисовать закрашенный прямоугольник с поворотом на произвольный угол. Тут какие-то проблемы.

Вопрос: на каком этапе при переходе от первого ко второму возникает проблема лично у тебя?
—We separate their smiling faces from the rest of their body, Captain.
—That's right! We decapitate them.

Qwertiy
Доктор VB наук
Доктор VB наук
 
Сообщения: 2753
Зарегистрирован: 26.06.2011 (Вс) 21:26

Сообщение Qwertiy » 20.07.2012 (Пт) 11:42

Хакер писал(а):Вопрос: на каком этапе при переходе от первого ко второму возникает проблема лично у тебя?

Абсолютно понятно всё написано. Незакрашенный прямоугольник рисуется тупо четырьмя линиеми, а закрашенный так нарисовать нельзя. Т. к. если написовать линии, то область будет незакрашена. Это же очевидно!

dimanych писал(а):Как сделать тоже самое только с залитым цветом прямоугольником?

Там где-то должен быть метод для рисования многоугольников... ну и по координатам вершин.

Хакер
Телепат
Телепат
Аватара пользователя
 
Сообщения: 16478
Зарегистрирован: 13.11.2005 (Вс) 2:43
Откуда: Казахстан, Петропавловск

Re: Поворот ЗАКРАШЕННОГО прямоугольника

Сообщение Хакер » 20.07.2012 (Пт) 11:44

Qwertiy писал(а):Абсолютно понятно всё написано. Незакрашенный прямоугольник ресуется тупо четырьмя линиеми, а закрашенный так нарисовать нельзя. Т. к. если написовать линии, то область будет незакрашена. Это же очевидно!

Это очевидно только для тех, кто кроме рисования многоугольников по-ребёрно (edge-by-edge) ничего больше не знает и не умеет.
—We separate their smiling faces from the rest of their body, Captain.
—That's right! We decapitate them.

dimanych
Начинающий
Начинающий
 
Сообщения: 5
Зарегистрирован: 20.07.2012 (Пт) 11:16

Re: Поворот ЗАКРАШЕННОГО прямоугольника

Сообщение dimanych » 20.07.2012 (Пт) 12:09

Это очевидно только для тех, кто кроме рисования многоугольников по-ребёрно (edge-by-edge) ничего больше не знает и не умеет


согласен ))) не знаю и, соответственно, не умею. это возможно сделать?

Хакер
Телепат
Телепат
Аватара пользователя
 
Сообщения: 16478
Зарегистрирован: 13.11.2005 (Вс) 2:43
Откуда: Казахстан, Петропавловск

Re: Поворот ЗАКРАШЕННОГО прямоугольника

Сообщение Хакер » 20.07.2012 (Пт) 12:14

dimanych писал(а):согласен ))) не знаю и, соответственно, не умею. это возможно сделать?

Человечество на Луну слетало, а вы тут про какую-то фигню спрашиваете, возможно ли это.
—We separate their smiling faces from the rest of their body, Captain.
—That's right! We decapitate them.

dimanych
Начинающий
Начинающий
 
Сообщения: 5
Зарегистрирован: 20.07.2012 (Пт) 11:16

Re: Поворот ЗАКРАШЕННОГО прямоугольника

Сообщение dimanych » 20.07.2012 (Пт) 12:16

че ты ломаешься? скажи как сделать лучше, а не про луну рассказывай.

Хакер
Телепат
Телепат
Аватара пользователя
 
Сообщения: 16478
Зарегистрирован: 13.11.2005 (Вс) 2:43
Откуда: Казахстан, Петропавловск

Re: Поворот ЗАКРАШЕННОГО прямоугольника

Сообщение Хакер » 20.07.2012 (Пт) 12:20

Выбирай выражения.
—We separate their smiling faces from the rest of their body, Captain.
—That's right! We decapitate them.

dimanych
Начинающий
Начинающий
 
Сообщения: 5
Зарегистрирован: 20.07.2012 (Пт) 11:16

Re: Поворот ЗАКРАШЕННОГО прямоугольника

Сообщение dimanych » 20.07.2012 (Пт) 12:23

ясно с тобой все ))

dimanych
Начинающий
Начинающий
 
Сообщения: 5
Зарегистрирован: 20.07.2012 (Пт) 11:16

Re: Поворот ЗАКРАШЕННОГО прямоугольника

Сообщение dimanych » 20.07.2012 (Пт) 12:23

уже и сам нашел, пока ты тут про луну гонишь всем ))

Viper
Артефакт VBStreets
Артефакт VBStreets
Аватара пользователя
 
Сообщения: 4394
Зарегистрирован: 12.04.2005 (Вт) 17:50
Откуда: Н.Новгород

Re: Поворот ЗАКРАШЕННОГО прямоугольника

Сообщение Viper » 20.07.2012 (Пт) 15:48

dimanych писал(а):уже и сам нашел, пока ты тут про луну гонишь всем ))
Тогда поведай обществу, мало ли, может еще кто не знает.
Весь мир матрица, а мы в нем потоки байтов!

Хакер
Телепат
Телепат
Аватара пользователя
 
Сообщения: 16478
Зарегистрирован: 13.11.2005 (Вс) 2:43
Откуда: Казахстан, Петропавловск

Re: Поворот ЗАКРАШЕННОГО прямоугольника

Сообщение Хакер » 20.07.2012 (Пт) 19:34

Viper писал(а):Тогда поведай обществу, мало ли, может еще кто не знает.

Какой смысл?
Кто-то рисует родными методами VB. Тут решение одно.
Кто-то рисует с помощью GDI. Тут решение другое.
Кто-то рисует с помощью GDI+. Тут решение третье.
Кто-то рисует с помощью DirectX. Тут решение четвёртое.
Наверняка кто-то рисует с помощью .NET Framework-а, и там решение пятое.
Кто-то рисует в растре (непосредственно в массиве байтов) и выводит готовую картинку с помощью SetDIBitsToDevice. Тут решение шестое.
Кто-то рисует с помощью тысяч многочисленных частных вспомогательных библиотечек. И тут ещё тысяча разных решений.

В общем, тысячи вариантов проблемы и тысячи разных решений. Пока задающий вопрос не укажет, какой именно из тысячи вариантов лично у него, нет вообще никого смысла продолжать разговор.
—We separate their smiling faces from the rest of their body, Captain.
—That's right! We decapitate them.

Mikle
Изобретатель велосипедов
Изобретатель велосипедов
Аватара пользователя
 
Сообщения: 4148
Зарегистрирован: 25.03.2003 (Вт) 14:02
Откуда: Туапсе

Re: Поворот ЗАКРАШЕННОГО прямоугольника

Сообщение Mikle » 20.07.2012 (Пт) 19:56

Я почти уверен, что автор рисует с помощью Line, а Line с параметром BF повернуть на произвольный угол нельзя. Возможно он даже не подозревает, что есть другие способы.

Хакер
Телепат
Телепат
Аватара пользователя
 
Сообщения: 16478
Зарегистрирован: 13.11.2005 (Вс) 2:43
Откуда: Казахстан, Петропавловск

Re: Поворот ЗАКРАШЕННОГО прямоугольника

Сообщение Хакер » 20.07.2012 (Пт) 20:19

Mikle писал(а):Я почти уверен, что автор рисует с помощью Line, а Line с параметром BF повернуть на произвольный угол нельзя. Возможно он даже не подозревает, что есть другие способы.

Так и есть. Но угадывать — это неправильный метод решения проблем.
Один недосказал, другой предположил — это источник 90 % катастроф.
—We separate their smiling faces from the rest of their body, Captain.
—That's right! We decapitate them.

Qwertiy
Доктор VB наук
Доктор VB наук
 
Сообщения: 2753
Зарегистрирован: 26.06.2011 (Вс) 21:26

Сообщение Qwertiy » 20.07.2012 (Пт) 20:37

Хакер писал(а):Но угадывать — это неправильный метод решения проблем.

Ну очевидные же вещи. И вообще, очень даже правильный.

iGrok
Артефакт VBStreets
Артефакт VBStreets
 
Сообщения: 4272
Зарегистрирован: 10.05.2007 (Чт) 16:11
Откуда: Сетевое сознание

Re: Поворот ЗАКРАШЕННОГО прямоугольника

Сообщение iGrok » 20.07.2012 (Пт) 20:49

Qwertiy писал(а):Ну очевидные же вещи. И вообще, очень даже правильный.

Ага, куда уж правильнее. Ты, вот, в другом топике уже "угадал":
http://bbs.vbstreets.ru/viewtopic.php?f=7&t=44061 писал(а):iGrok, ну ясно же было, что он имел в виду инкремент.


Когда существует, скажем, до пяти возможных путей решения описанной "проблемы" - можно и поугадывать. А когда их минимум сотня?
Вдобавок, этот путь должен учить человека описывать свою проблему. Правильно описывать, а не как обычно.
label:
cli
jmp label

Qwertiy
Доктор VB наук
Доктор VB наук
 
Сообщения: 2753
Зарегистрирован: 26.06.2011 (Вс) 21:26

Сообщение Qwertiy » 20.07.2012 (Пт) 21:11

iGrok писал(а):
Qwertiy писал(а):Ну очевидные же вещи. И вообще, очень даже правильный.

Ага, куда уж правильнее. Ты, вот, в другом топике уже "угадал":
http://bbs.vbstreets.ru/viewtopic.php?f=7&t=44061 писал(а):iGrok, ну ясно же было, что он имел в виду инкремент.

Вообще-то я угадал :) Там действительно было нужно увеничение счётчика идентификатора на 1 после добавления куска xml. Более того, я могу решить поставленную задачу именно таким образом, хотя это и извращение.
А вот твоим способом - с константой равной 1, решить уж точно нельзя :twisted:

iGrok писал(а):Вдобавок, этот путь должен учить человека описывать свою проблему. Правильно описывать, а не как обычно.

Учить надо там, где надо. А когда всё понятно, то начинать придираться вметсто очевидного ответвета, абсолютно неправильно.

iGrok
Артефакт VBStreets
Артефакт VBStreets
 
Сообщения: 4272
Зарегистрирован: 10.05.2007 (Чт) 16:11
Откуда: Сетевое сознание

Re: Поворот ЗАКРАШЕННОГО прямоугольника

Сообщение iGrok » 20.07.2012 (Пт) 22:29

Qwertiy, на извращения я тоже горазд, только кому это надо? Ему нужно было не увеличение идентификатора, а приравнивание идентификатора счётчику, который у него уже был. И со стартпостом это коррелирует очень слабо. А я всего лишь написал, как именно его "техзадание" понимается буквально.
Но это мы уже оффтоп развели.

Qwertiy писал(а):Учить надо там, где надо.

Вот как раз если такие вопросы (да ещё и в такой формулировке) возникают, то первым делом и нужно учить правильно задавать вопросы. Тогда он и сам все ответы в гугле найти сможет. А пока человек этому не научится, никакого толку не будет.
label:
cli
jmp label

Qwertiy
Доктор VB наук
Доктор VB наук
 
Сообщения: 2753
Зарегистрирован: 26.06.2011 (Вс) 21:26

Сообщение Qwertiy » 20.07.2012 (Пт) 23:13

iGrok писал(а):да ещё и в такой формулировке

А что с ней собственно не так?

iGrok
Артефакт VBStreets
Артефакт VBStreets
 
Сообщения: 4272
Зарегистрирован: 10.05.2007 (Чт) 16:11
Откуда: Сетевое сознание

Re: Поворот ЗАКРАШЕННОГО прямоугольника

Сообщение iGrok » 21.07.2012 (Сб) 2:11

Qwertiy писал(а):А что с ней собственно не так?

А ты перечитай заголовок и вопрос, что ли: viewtopic.php?f=7&t=44061

Да и в этом топике вопрос тоже отлично поставлен. Мало ли как там решена проблема поворота, может вообще четырьмя Line из тулбокса, а не кодом. Потому что если кодом - то не понятно, по какой причине "не прокатит" заливка ((Ext)FloodFill).
label:
cli
jmp label

Qwertiy
Доктор VB наук
Доктор VB наук
 
Сообщения: 2753
Зарегистрирован: 26.06.2011 (Вс) 21:26

Сообщение Qwertiy » 21.07.2012 (Сб) 10:13

iGrok писал(а):А ты перечитай заголовок и вопрос, что ли: viewtopic.php?f=7&t=44061

Ну это-то да. Я думал, ты про эту тему, а не про ту.


Вернуться в Visual Basic 1–6

Кто сейчас на конференции

Сейчас этот форум просматривают: Google-бот и гости: 22

    TopList