Форум программистов, компьютерный форум CyberForum.ru

C++

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 17, средняя оценка - 4.59
Accemt
0 / 0 / 0
Регистрация: 17.02.2009
Сообщений: 4
#1

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

17.02.2009, 12:25. Просмотров 2056. Ответов 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), то отображать значение не надо.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
17.02.2009, 12:25
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Компьютерная графика на VS C++ MFC. Срочно требуется помощь! (C++):

народ срочно нужна ваша помощь,не могу разобраться с прогой - C++
Сжать n мерный целочисленный массив,удалив из него все элементы,величина которых находится в интервале .Освободившиеся в конце массива...

У кого есть книга :"Интерактивная компьютерная графика" Вводный курс на базе Open GL со страницами 245-256? - C++
У кого есть книга :&quot;Интерактивная компьютерная графика&quot; Вводный курс на базе Open GL со страницами 245-256? они отсутствуют. ...

компьютерная графика - C++ Builder
нужно реализовать вот такое задание: Выдача на экран изображения с эффектами. В качестве изображения берется файл в графическом формате...

Компьютерная графика - C++ Builder
Не могу реализовать задачу, в которой нужно изобразить движение солнца по схеме: утро-восход, день - в зените (максимальная яркость), вечер...

Компьютерная графика на C++ Builder - C++ Builder
Вот с этим нужно что бы получилось ниже указанное, что бы внутри буквы была закраска только#include &lt;stdio.h&gt; #include &lt;conio.h&gt; ...

Компьютерная графика: смоделировать период жизни яблони от весны (цветение) до осени (сбор урожая) - C++ Builder
Здравствуйте, не могу реализовать задачу, в которой нужно смоделировать период жизни яблони от весны (цветение) до осени (сбор урожая)....

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

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

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

Компьютерная графика - Visual C++
Может кто-нибудь объяснит модели освящения подробно(а именно диффузную),и как её связать с методом Гуро. Добавлено через 4 минуты Я...

Как сделать преграды?[Компьютерная графика] - Visual C++
Может вопрос не по теме, но не знаю куда писать Как сделать преграды, то есть чтобы не выходить за пределы карты например? не пойму...

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

компьютерная графика - Turbo Pascal
1)изобразить вращение отрезка вокруг своего центра, совпадающего с центром экрана,против часовой стрелки. 2)дано n целых чисел.с...


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

Или воспользуйтесь поиском по форуму:
Yandex
Объявления
17.03.2009, 21:54
Ответ Создать тему
Опции темы

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