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

Компьютерная графика на VS C++ MFC. Срочно требуется помощь!

17.02.2009, 12:25. Показов 2511. Ответов 3
Метки нет (Все метки)

Привет всем.
Я с 3 курса факультета информационных технологий НГУ.
Хочу попросить помощи в решении задач по курсу комп. графики. Задачи решаются на Visual C++ в виде MFC приложений в студиях 2005-2008. Желательно 2005.
Тут нужен человек, который действительно хорошо разбирается в графике..
Есть требования по срокам сдачи заданий. Все эти требования - обязательные. Это самый крутой и сложный курс за всего годы обучения в магистратуре.
Кто может, прошу помочь. Конечно, небесплатно...
Пока только одна задача. Требуется решить до 2 марта до 14:00. Потом будут ещё. Поставлять задачи могу весь год.
Очень жду тех, кто может помочь бедному студенту. Ещё раз говорю, если потребуется финансовое вознаграждение, будет и оно. Главное, вовремя решить.

Все, кто может, пишите здесь или в аську 664507, либо e-mail: accemt@gmail.com
Опишу подробнее задачу, требования, что и как.

Вот краткая формулировка первой задачи(во вложениях иллюстрации к ней):

Построить MFC приложение, реализующее массив "живых" и "мертвых" ячеек-шестигранников и их жизнь по алгоритму Конвея.
Имеется n строк, образующих соты. В четных строках m клеток, в нечетных – (m-1) клетка, где m > 1.

Для ячеек нумерация задается следующим образом:


Каждая ячейка находится в одном из 2-х возможных состояний:
• 0 - "мертвая", окрашивается в один цвет
• 1 - "живая", окрашивается в другой цвет
Ячейки отделены друг от друга линиями толщиной w ( w >= 0 ) пикселей (толщина линии измеряет-ся перпендикулярно направлению, см. ниже). Цвет линии должен отличаться от цветов ячеек.

Размер ячейки k ¬¬– длина ребра.
Изначально все клетки мертвые. Состояние ячейки может быть изменено пользователем. После того как пользователь выбрал живые ячейки, запускается алгоритм "Жизнь" Конвея.

"Жизнь Конвея" – пошаговый алгоритм пересчета состояния клеток (клеточный автомат). На каж-дом этапе (году) жизни клетки могут рождаться (мёртвые клетки становятся живыми) и умирать (живые клетки становятся мёртвыми), а также клетка может не измениться, то есть остаться мёрт-вой или живой, какой она была на предыдущем шаге. Какой будет клетка на следующем этапе, оп-ределяется для каждой клетки (в отдельности!) количеством живых соседей на предыдущем этапе и их "влиянием".
В предложенной задаче считается, что на каждую клетку в гексагональной упаковке влияют двенадцать соседей. Они влияют по-разному в зависимости от степени близости (1-ый и 2-ой по-рядок). Слева на рисунке, приведенном выше, для клетки, отмеченной звёздочкой, обозначены со-седи 1-ого порядка (помечены 1) и соседи 2-ого порядка (помечены 2).
Для определения состояния клетки на следующем шаге необходимо вычислить влияние со-седей на предыдущем этапе. Назовем эту величину IMPACT. Эта величина рассчитывается сле-дующим образом:
IMPACT = FST_IMPACT * FST_COUNT + SND_IMACT * SND_COUNT,
где FST_IMPACT – влияние одного соседа 1-го порядка, FST_COUNT – количество соседей перво-го порядка, SND_IMPACT – влияние одного соседа 2-го порядка, SND_COUNT – количество сосе-дей второго порядка. Состояние клетки меняется по следующим правилам:
• Клетка рождается на следующем этапе, если на предыдущем она была мёртвой и BIRTH_BEGIN ≤ IMPACT ≤ BIRTH_END.
• Клетка остаётся живой, есть её LIVE_BEGIN ≤ IMPACT ≤ LIVE_END.
• Если IMPACT < LIVE_BEGIN, то клетка погибает от одиночества.
• Если IMPACT > LIVE_END клетка погибает от перенаселённости.
• Все упомянутые в этом абзаце величины должны быть неотрицательными. При этом LIVE_BEGIN ≤ BIRTH_BEGIN ≤ BIRTH_END ≤ LIVE_END.
Замечание: Все соседи учитываются по старым состояниям (состояниям на предыдущем этапе!).
Пользователь должен иметь возможность изменять значения величин LIVE_BEGIN, LIVE_END, BIRTH_BEGIN, BIRTH_END, FST_IMACPT и SND_IMPACT. При изменении вы должны проверять выполнение вышеупомянутых ограничений и выдавать сообщение об ошибке, если они не выполняются.
Изначально значения должны быть установлены следующими: LIVE_BEGIN = 2.0, LIVE_END = 3.3, BIRTH_BEGIN = 2.3, BIRTH_END = 2.9, FST_ IMPACT = 1.0, SND_ IMPACT = 0.3.
Внимание: Сначала для всех клеток рассчитывается значение IMPACT, в соответствии с располо-жением живых клеток на текущем году жизни клеток, и только потом вычисляется расположение клеток на следующем году в жизни в соответствии с правилами, приведёнными выше.
Для управления просмотра этапов жизни клеток на Toolbar'e (и в меню) должны быть добавле-ны следующие кнопки:
1. Следующий шаг (Next) рассчитывает состояние клеток на следующем этапе.
2. Запустить итеративный процесс (Run) : при нажатие кнопка западает, редактирование кле-ток запрещается и 1 раз в секунду (должно быть реализовано через WM_TIMER (см. MSDN)) пересчитывается состояние клеток. Когда запущен Run, кнопка Next неактивна.
3. Включение/выключение режима показа значений IMPACT (Display impact values) (западаю-щая кнопка). В этом режиме внутри каждой ячейки отображается значение IMPACT. Целые значения отображать без дробной части (как 2, а не 2.0). Размер шрифта можно выбрать фиксированный. Если размер клеток слишком мал (размер ячейки, например, k < 5), то отображать значение не надо.
0

Помощь в написании контрольных, курсовых и дипломных работ здесь.

Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
17.02.2009, 12:25
Ответы с готовыми решениями:

Срочно требуется помощь! Непонятоно!
Есть код редиректа с асп-шной страницы на удаленный сервер: &lt;% Response.Redirect...

Компьютерная графика
извините за наглость,но вы могли бы помочь еще вот с этим необходимо получить Эллипсоид....

Компьютерная графика
Кто-нибудь может помочь? 1. Окружность радиуса r перемещается на экране справа налево, по...

Компьютерная графика
В графике я пока не силён но пытаюсь учиться)). Буду благодарен если поможете 1).Изобразить...

3
0 / 0 / 0
Регистрация: 17.02.2009
Сообщений: 4
17.02.2009, 12:37  [ТС] 2
Рисунки из задачи: что б было понятнее, что там к чему.

ОЧЕНЬ прошу помочь. Единственный предмет, который всё портит. Буду очень благодарен(и не только словами, если потребуется).
0
Миниатюры
Компьютерная графика на VS C++ MFC. Срочно требуется помощь!   Компьютерная графика на VS C++ MFC. Срочно требуется помощь!   Компьютерная графика на VS C++ MFC. Срочно требуется помощь!  

0 / 0 / 0
Регистрация: 17.02.2009
Сообщений: 4
16.03.2009, 12:03  [ТС] 3
Проблема ещё актуальна. Но задача уже другая, конечно. За ценой вопрос не станет.
Помогите, кто может.
Параметры те же:
E-mail: accemt@gmail.com
ICQ: 664507
0
0 / 0 / 0
Регистрация: 17.02.2009
Сообщений: 4
17.03.2009, 21:54  [ТС] 4
Вот условие второй задачи: http://oapmg.sscc.ru/course/Tasks/WClip/
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
17.03.2009, 21:54

компьютерная графика
по заданным значениям координат центра окружности и числа N , построить окружность максимального...

«компьютерная графика»
В окнах экрана 90х90 точек построить 4 пятиконечные звезды с размерами сторон а1,а2,а3,а4. Сам в...

Компьютерная графика
Есть две функцииvoid my_Line(int x1,int y1, int x2, int y2, int color)// Линия { int...

Компьютерная графика
Кто-нибудь делал что-нибудь такое (Вариант №2 Алгоритм Брезенхема для построения окружности. 1)...


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

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

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