Форум программистов, компьютерный форум, киберфорум
C++ Builder
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.91/11: Рейтинг темы: голосов - 11, средняя оценка - 4.91
0 / 0 / 0
Регистрация: 24.10.2012
Сообщений: 4
1

Визуализация протекания трех физических процессов

24.10.2012, 17:44. Просмотров 2067. Ответов 9
Метки нет (Все метки)

Здравствуйте, срочно нужна помощь специалистов в области С++
помогите с проектом...
вот суть задания.
Нужно разработать программу визуализации протекания трех физических процессов, организовать отображение каждого процесса с помощью отдельного потока на общей канве обьекта PaintBox.
Сделать єто нужно в C++ Builder используя классы TThread и Tcanvas.
вобшем на одной канве должны двигаться 3 фигуры, круг, кведрат и еще 1 круг.
1 круг двигается по осям х и у. по У с постоянной скоростью, а по У равномерно ускоряясь, при движении постоянно меняет цвет.
вторая фигура квадрат, тоже двигающийся по осям х и у, токо наоборот по х с постоянной скоростью, а по У равномерно ускоряясь.
и 3 круг, тоже двигающийся по осям, и при этом обертающийся вокруг центра... как колесо...
Эти потоки должны быть синхронизированы методом Synchronize и выполняться одновременно при нажатии кнопки на форме.
по оддельности эти фигуры я делать умею, но с потоками у меня не ладится... а сделать нужно..
надеюсь на вашу помощь, или полезные советы.
Заранее благодарен.
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
24.10.2012, 17:44
Ответы с готовыми решениями:

Основы моделирования физических процессов
Здравствуйте! Я магистрант физ-теха. В "экспериментальной" части магистерской работы стоит...

Модель физических процессов
Привет всем! Я создаю модель поведения молекул воды. Качество симуляции зависит от того, сколько...

Средства визуализации физических процессов
Всем привет. Подскажите пожалуйста готовые движки для работы с 3D моделями на java. Какие есть...

Математическое моделирование физических процессов
Составить компьютерную программу(PASCAL или СИ) для математического моделирования физических...

9
Эксперт С++
8232 / 5994 / 594
Регистрация: 10.12.2010
Сообщений: 27,793
Записей в блоге: 25
24.10.2012, 19:20 2
с помощью отдельного потока на общей канве обьекта PaintBox.
Думаю такое не возможно...

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

Другое дело если делать какие либо вычисления в потоке и только потом выводить их...

Добавлено через 6 минут
Более того методом Synchronize() потоки постоянно будут "ссорится" между собой при прорисовке.
0
0 / 0 / 0
Регистрация: 24.10.2012
Сообщений: 4
24.10.2012, 20:13  [ТС] 3
Канва разделяемый ресурс... а значит пока один поток рисует другие должны ждать, что как бы лишает смысла многопоточность.

Другое дело если делать какие либо вычисления в потоке и только потом выводить их...


можна с этого места поподробней?
как это реализовать?
0
Эксперт С++
8232 / 5994 / 594
Регистрация: 10.12.2010
Сообщений: 27,793
Записей в блоге: 25
24.10.2012, 20:14 4
можна с этого места поподробней?
как это реализовать?
Думаю такое не возможно...
0
0 / 0 / 0
Регистрация: 24.10.2012
Сообщений: 4
24.10.2012, 20:29  [ТС] 5
как говорит преподаватель, нет ничего невозможного...
видимо прийдется искать альтернативные пути реализации данной задачи.(
0
Эксперт С++
8232 / 5994 / 594
Регистрация: 10.12.2010
Сообщений: 27,793
Записей в блоге: 25
24.10.2012, 20:33 6
Расчеты координат можно в потоке делать, при прорисовке блокировать канву там кажется есть специальное свойство или метод,
но что выйдет не знаю такое не проделовал.
1
432 / 399 / 57
Регистрация: 06.02.2012
Сообщений: 1,375
25.10.2012, 04:49 7
Стандартный примерчик от борланд 6.0 многопоточного приложения. Там все есть, что вам нужно, переделайте под себя.
1
Вложения
Тип файла: rar Threads.rar (77.1 Кб, 37 просмотров)
0 / 0 / 0
Регистрация: 24.10.2012
Сообщений: 4
25.10.2012, 13:57  [ТС] 8
спасибо, в этой проге разобрался.
еще есть вопрос,
можете ли скинуть простенький пример, где фигура, или просто точка двигается по канве по рандомной траектории, но когда доходит до границ канвы, траектория движения меняется на противоположную, по простому, она отбивается от границы.

заранее спасибо.
0
Практикантроп
4565 / 2512 / 464
Регистрация: 23.09.2011
Сообщений: 5,403
25.10.2012, 18:32 9
Для "отбивается от границы" объект должен обладать свойством инерции; по другому: псевдослучайным образом изменяются (по таймеру) приращения координат (но не знак). А при встрече с границей знак соотв. приращения инвертируется (до следующей встречи...).
0
Эксперт С++
8232 / 5994 / 594
Регистрация: 10.12.2010
Сообщений: 27,793
Записей в блоге: 25
25.10.2012, 19:56 10
Угол падения равен углу отражения ...
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
25.10.2012, 19:56

Заказываю контрольные, курсовые, дипломные и любые другие студенческие работы здесь.

Параллельное программирование в задачах моделирования физических процессов
Добрый день, форум! Не подскажите занимался ли кто параллельным программированием задач...

Визуализация переходных процессов в цепях R-L и R-C
Подскажите как начать я в программировании не тютю может ссылки, формулы как решать надо диплом...

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

Проект Code Blocks, вставка GTK+: визуализация процессов вычислений
Не могу понять как реализовать. Имеется программа которая рассчитывает данные (она пользует...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
10
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2020, vBulletin Solutions, Inc.