Потоки

  • Автор темы louden
  • Дата начала
Статус
Закрыто для дальнейших ответов.
L

louden

#1
Здравствуйте!
Никогда не обращался за помощью к подобным ресурсам,но тут я бессилен....
Мне надо составить программу вывода в верхнюю часть экрана дисплея изображения тучи, а в нижнюю часть экрана дисплея - емкость для воды. При запуске программы начинает идти дождь. При этом размер тучи уменьшается, a емкость наполняется водой.
Я даже не представляю как это реализовать...
У кого ни спрашивал,никто не знает.
Может кто-нибудь из вас натолкнёт на мысль или подскажет какую литературу почитать.
Может есть похожие программки,чтобы узнать хотябы примерно как это реализуется.
Вобщем посоветуйте что-нибудь.
Буду очень благодарен.
 

grigsoft

Well-known member
15.11.2005
735
0
#2
Что именно не понятно?
- Как рисовать вообще
- как рисовать дождь
- как уменьшать объем тучи
- как применить сюда потоки (которые тут не нужны, на самом деле, разве что это задание на потоки)

Разделяй и властвуй. Начни с малого: просто нарисуй тучу и бочку.
 
U

uis99

#3
Туча - рисунок или фотка тучи в виде .bmp, загруженная в программу как ресурс, выводимая в прямоугольник, уменьшающийся по таймеру.
Дождь вывод точек со случайными координатами (лучше черточек) по своему таймеру.
Емкость - 4-5 рисунков одной и той же емкости, но с разным уровнем воды, сменяемые по своему таймеру.
 
V

Vedrus

#5
добавлю к словам uis99'а. Лучше для вывода тучи использовать не прямоугольное окно, а заданное при помощи регионов (MSDN->SetWindowRgn).

При создании двух окон, ты скорее всего сталкнёшься с проблемой: второе окно выводится только после закрытия первого. Решается так:
1. Оформляешь каждое окно в виде отдельной функции.
2. Запускаешь каждую из этих функций ввиде отдельного потока (MSDN->CreateThread)
3. Обмениваешься между этими потоками данными таймером и механизмами межпоточного взаимодействия (MSDN->SetTimer, CreateEvent, ...)
 
U

uis99

#6
Если условия позволяют, все в одном окне
Разделить на 3 части
Tucha.jpg
 

Вложения

L

louden

#7
Всем спасибо за советы,но я тут поднапрягся и сделал уже:)
Простенько,но работает.
Вот экзешник кому интерессно.
 

Вложения

  • 240.5 КБ Просмотры: 62
U

uis99

#8
Для: louden
Если можно, в zip-e выложи, у меня рар не открывает, а посмотреть интересно
 
T

ttshechka

#12
у меня похожая программа ткоо намног проще без всяких тучек и луж и программа не на C++ и просто на C
вот условие ->
раздел: графика и анимация.
условие: "Дождь": В верхней строке экрана случайным образом появляются точки, которые затем падают вниз с постоянной скоростью.

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

заранее спасибо
 

Вложения

  • 17.9 КБ Просмотры: 41
G

gamecreator

#13
поищи проги по извлечению исходников. в сети полно.
 
T

ttshechka

#14
а как они называются я просто понятия не имею...
 
O

opium

#15
Напиши в гугле: "Дождь". Не обращай внимание на то что тебе выдадит 2.000.000 сайтов! Недельки через 2 упорног поиска ты возможно найдеш то, что тебе нужно!
 

Kmet

Java Team
25.05.2006
1 036
8
#16
<!--QuoteBegin-gamecreator+11:01:2008, 19:01 -->
<span class="vbquote">(gamecreator @ 11:01:2008, 19:01 )</span><!--QuoteEBegin-->поищи проги по извлечению исходников. в сети полно.
[snapback]93129" rel="nofollow" target="_blank[/snapback]​
[/quote]

по извлечению?! ни одной не знаю...
 
U

uis99

#17
Для: ttshechka
Проще написать заново, чем извлекать исходники. Тем более прога элементарная.
Генератор случайных чисел и функция SetPixel:

Код:
COLORREF SetPixel(
HDC hdc,	// handle of device context 
int X,	// x-coordinate of pixel 
int Y,	// y-coordinate of pixel 
COLORREF crColor 	// pixel color 
);
 
G

gamecreator

#18
Для: uis99
я ему это говорил. как горохом об стену.
 
Статус
Закрыто для дальнейших ответов.