Разработка программного продукта "Разноцветные кубики" - Программирование, компьютеры и кибернетика курсовая работа

Разработка программного продукта "Разноцветные кубики" - Программирование, компьютеры и кибернетика курсовая работа




































Главная

Программирование, компьютеры и кибернетика
Разработка программного продукта "Разноцветные кубики"

Применение языка Delphi в качестве языка программирования для реализации игры "Разноцветные кубики". Методы заполнения квадратной матрицы. Разработка алгоритма решения задачи, структурная организация данных. Характеристика программного средства.


посмотреть текст работы


скачать работу можно здесь


полная информация о работе


весь список подобных работ


Нужна помощь с учёбой? Наши эксперты готовы помочь!
Нажимая на кнопку, вы соглашаетесь с
политикой обработки персональных данных

Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.
1. Общие сведения о программном средстве
1.1 Основное функциональное назначение программного средства
1.2 Полное наименование программного средства
1.3 Условное обозначение программного средства
1.4 Разработчики программного средства
2.3 Требования к программному средству
2.4 Требования к программной документации
2.6. Требования к эргономике и технической эстетике
3. Технические сведения программного средства
3.1 Общая архитектура программного средства
3.2 Реализация функционального назначения программного средства
3.3 Разработка алгоритма решения задачи
3.4. Структурная организация данных
4.1 Назначение и условия применения программного средства
4.2 Характеристика программного средства
4.4. Эксплуатация программного средства
Данный курсовой проект разработал студент группы 5П-08 по специальности Профессиональное обучение (по отраслям) профиля подготовки «Программное обеспечение вычислительной техники и автоматизированных систем» Брянского профессионально-педагогического колледжа.
Целью данного курсового проекта является разработка и создание программы «Разноцветные кубики».
Основное назначение программного продукта «Разноцветные кубики» развивать логическое мышление, позволяет отвлечься от работы.
Пояснительная записка состоит из 4 разделов, аннотации, введения, заключения, списка литературы и приложений. В приложение включены 4 графических схемы, листинг программы.
Тема моего курсового проекта «Разработка программного продукта «Разноцветные кубики»». Передо мной встали две проблемы: 1) методы заполнения квадратной матрицы; 2) выбор языка программирования для реализации игры. Над второй пришлось поработать. Был выбран язык программирования Delphi. Изучалась специальная литература, оказали помощь интернет-ресурсы по некоторым вопросам.
Объектом исследования является программирование на языке Delphi.
Предмет исследования - разработка программ-игр на языке программирования Delphi.
теоретическое обоснование и разработка программы «Разноцветные кубики».
v проанализировать содержание понятия «Разноцветные кубики»;
v проанализировать назначение и возможности Delphi;
v проанализировать пути решения проблем создания игр на языке Delphi;
v разработать программу игры «Разноцветные кубики».
Ш развитие и прикладное применение навыков программирования;
Ш получение навыков программирования в интегрированной среде программирования Delphi;
В соответствии с целью и гипотезой ставились и решались следующие задачи:
Написать программу «Разноцветные кубики», которая, во-первых, генерирует поле квадратов с некоторыми пустыми клетками; во-вторых, заполняется ли квадратная матрица.
1.1 Основное функциональное назначение программного средства
Данная программа предназначена для игры Разноцветные кубики. Для работы с ней нужно запустить файл «RubiksCube.exe».
1.2 Полное наименование программного средства
Данная программа предназначена для развития логического мышления, навыков работы с мышью.
В программе «Разноцветные кубики» использованы поля для игры белыми фигурами и черными, а также реализована возможность менять стороны расположения шашечных фигур.
Системные требования: 486 или совместимый процессор, 256 Mb RAM, ОС WindowsXP. Для работы программы требуется 128 Mb дискового пространства.
Для начала работы нужно запустить исполнимый файл «RubiksCube.exe».
1.3 Условное обозначение программного средства
Условное обозначение программного средства «Разноцветные кубики»
1.4 Разработчики программного средства
Курсовой проект на тему «Разноцветные кубики» разработан студентом Кожемяко Романом Викторовичем группы 5П-08 обучающийся в Брянском профессионально - педагогическом колледже.
Основанием для разработки программного продукта «Разноцветные кубики» является задание «Брянского профессионально-педагогического колледжа»
Программа «Разноцветные кубики» предназначена для развития логического мышления, закрепления навыков работы с манипулятором типа мышь.
2.3 Требования к программному средству
Требования к функциональным характеристикам:
Программное средство «Разноцветные кубики» применим к современным программным средствам, разработанным с использованием графического пользовательского интерфейса.
По функциональным признакам структура «Разноцветные кубики» подразделяется на следующие категории:
· Распределенная система управления
Требования к обеспечению надежного функционирования программы должно быть обеспеченно выполнением организационно-технических мероприятий, перечень которых приведен ниже:
1. обеспечить бесперебойное питание технических средств;
2. использование лицензионного программного обеспечения;
3. регулярным выполнением рекомендаций Министерства труда и социального развития РФ, изложенных в Постановлении от 23 июля 1998 г. «Об утверждении межотраслевых типовых норм времени на работы по сервисному обслуживанию ПЭВМ и оргтехники и сопровождению программных средств»;
4. регулярным выполнением требований ГОСТ 51188-78. испытание программных средств на наличие различных компьютерных вирусов. Защита информации.
Должна быть применена надежная защита для программного продукта «Разноцветные кубики»:
1. От несанкционированного доступа;
2. От проникновения в систему программного продукта компьютерных вирусов;
3. От разрушения или остановки работы программного обеспечения.
Программа будет прекрасно работать от плюс 15 до плюс 35 °C при относительной влажности 90% и атмосферном давлении 462 мм.рт.ст., поскольку такие условия приблизительно соответствуют условиям эксплуатации современных компьютеров непромышленного исполнения.
Минимальное количество персонала, требуемого для работы программы должно составлять не менее 1 единицы штата - конечный пользователь программы - оператор.
Конечный пользователь программы (оператор) должен обладать практическими работы с графическим пользовательским интерфейсом операционной системы.
Персонал должен быть аттестован на II квалификационную группу по электробезопасности (для работы с конторским оборудованием).
Персонал, не имеющий II квалификационной группы по электробезопасности, не имеет права находится рядом с ПЭВМ и конторскому оборудованию.
Требования к составу и параметрам технических средств:
В подразделе указывают необходимый состав технических средств с указанием их основных технических характеристик.
В состав технических средств должен входить IBM-совместимый персональный компьютер (ПЭВМ), включающий в себя:
1. процессор Pentium-1000 с тактовой частотой, ГГц - 8, не менее;
2. материнскую плату, ГГц - 5, не менее;
3. оперативную память объемом, Гб - 1, не менее;
4. жесткий диск объемом, ГБ - 20, не менее.
Требования к информационной и программной совместимости:
Исходный код программы был реализован на языке Borland Delphi 7. В качестве интегрированной среды разработки программы должна быть использована среда Borland Delphi 7.
Системные программные средства, используемые программой, должны быть представлены лицензионной локализованной версией операционной системы. Допускается использование пакета обновлений.
Требования к транспортированию и хранению:
Допускается транспортирование программного изделия в транспортной таре всеми видами транспорта (в том числе в отапливаемых герметизированных отсеках самолетов без ограничения расстояний). При перевозке в железнодорожных вагонах вид отправки - мелкий малотоннажный.
При транспортировании и хранении программного изделия должна быть предусмотрена защита от попадания пыли и атмосферных осадков. Не допускается кантование программного изделия. Климатические условия транспортирование приведены ниже:
· температура окружающего воздуха, от плюс 15 °С до плюс 30 °С;
· относительная влажность воздуха при 25 °С - 70%.
Программа обеспечивает взаимодействие пользователя (оператора) посредствам графического пользовательского интерфейса, разработанного согласно рекомендациям компании-производителя операционной системы.
2.4 Требования к программной документации:
Состав программной документации предусмотрен с ГОСТ 19.101-77;
Состав программной документации включает в себя:
1. руководство системного программиста;
3. ведомость эксплуатационных документов.
Программа и методика испытания соответствует требованию согласованного и утвержденного технического задания. Программная документация, входящая в предварительный перечень, соответствует требованиям ГОСТА 19.106-78.
Стадия "Формирование требований к программе «Разноцветные кубики» " включает в себя выполнение следующих этапов:
· Обследование объекта и обоснованность необходимости создания игры;
· Формирование требований заказчика к программному продукту;
· Оформление Отчета о выполненной работе, и Заявки на разработку игры.
На этапе "Обследование объекта и обоснование необходимости создания игры " в общем случае проводится:
· Оценка качества функционирования объекта;
· Выявление проблем, решение которых возможно средствами автоматизации;
· Оценка технико-экономической целесообразности создания игрового программного продукта.
На этапе "Формирование требований Заказчика к игре" проводится:
· Подготовка исходных данных для формирования требований к игре (характеристика объекта автоматизации, описание требований к системе, допустимые затраты на разработку, ввод в действие и эксплуатацию, эффект, ожидаемый от системы, условия создания и функционирования системы);
На этапе Оформление Отчета о выполненной работе, и заявки на разработку игры производится:
· Оформление Отчета о выполненных работах на данной стадии;
· Оформление Заявки на разработку «Разноцветные кубики» (тактико-технического задания) или другого заменяющего его документа с аналогичным содержанием.
Стадия Разработка концепции игры заключается в выполнении следующих этапов:
· Проведение необходимых научно-исследовательских работ;
· Разработка вариантов концепции и выбор варианта концепции к игре в соответствии с требованиями Заказчика.
На этапе "Разработка вариантов концепции и выбор варианта концепции игры в соответствии с требованиями Заказчика" в общем случае проводится:
· Разработка альтернативных вариантов концепции и планов их реализации;
· Оценка необходимых ресурсов на их реализацию и функционирование;
· Оценка преимуществ и недостатков каждого варианта;
· Определение порядка оценки качества и условий приемки системы;
Стадия "Техническое задание" заключается в единственном, но чрезвычайно ответственном этапе:
· Разработка и утверждение Технического задания на создание «Разноцветные кубики».
На этапе "Разработка и утверждение Технического задания на создание игры " проводится:
· Разработка, оформление, согласование и утверждение Технического задания на создание игрового продукта.
Стадия "Эскизный проект" состоит из следующих этапов:
· Разработка предварительных проектных решений;
· Разработка документации на «программный продукт.
На этапе "Разработка предварительных проектных решений по Системе и ее частям" определяются:
· Состав программных комплексов и отдельных задач;
· Состав комплекса технических средств;
· Функции и параметры основных программных средств и ресурсов.
· На этапе "Разработка документации на программу «Разноцветные кубики» " проводится:
· Разработка, оформление, согласование и утверждение документации в объеме, необходимом для описания полной совокупности принятых проектных решений, и достаточном для выполнения работ по созданию программы.
Стадия "Технический проект" состоит из следующих этапов:
· Разработка проектных решений по Системе и ее частям;
· Разработка документации на игру и ее части;
· Разработка и оформление документации на поставку изделий для комплектования программного продукта и технических требований (технических заданий) на их разработку;
На этапе "Разработка проектных решений по Системе и ее частям" производится разработка общих решений:
· По функционально-алгоритмической структуре Системы;
· По функциям персонала и организационной структуре;
· По структуре технических средств;
· По алгоритмам решения задач и применяемым языкам;
На этапе "Разработка документации на АСУТП и ее части" проводится:
· Разработка, оформление, согласование и утверждение документации в объеме, необходимом для описания полной совокупности принятых проектных решений и достаточном для дальнейшего выполнения работ по созданию игры.
На этапе "Разработка и оформление документации на поставку изделий для комплектования игры и технических требований (технических заданий) на их разработку" проводится:
· Подготовка и оформление документации на поставку изделий для комплектования;
· Определение технических требований или составление ТЗ на разработку несерийных изделий.
Стадия "Рабочий проект (Рабочая документация)" включает в себя следующие этапы:
· Разработка рабочей документации на программу и ее части;
· Разработка и конфигурация программного обеспечения.
На этапе "Разработка рабочей документации на игру и ее части" осуществляется:
· Разработка рабочей документации, содержащей все необходимые и достаточные сведения для обеспечения выполнения работ по вводу в действие и для её эксплуатации, а также для сохранения уровня эксплуатационных характеристик системы в соответствии с принятыми
· Оформление, согласование и утверждение рабочей документации на «Разноцветные кубики».
На этапе "Разработка и конфигурация программного обеспечения" проводится:
· Разработка прикладного программного обеспечения;
· Выбор, адаптация и привязка программных средств, разработка программной документации.
Стадия "Ввод в действие" состоит из следующих этапов:
Подготовка объекта автоматизации к вводу «Разноцветные кубики» в действие;
· Проведение Предварительных испытаний;
На этапе "Подготовка объекта автоматизации к вводу «Разноцветные кубики» в действие" проводятся работы по организационной подготовке объекта автоматизации к вводу в действие, в том числе:
· Реализация проектных решений по организационной структуре
· Обеспечение подразделений объекта управления инструктивно-методическими материалами.
На этапе "Подготовка персонала" проводится:
· Проверка его способности обеспечить функционирование программы.
На этапе "Пусконаладочные работы" проводится:
· Автономная наладка технических средств;
· Загрузка системного и прикладного программного обеспечения;
· Комплексная наладка всех средств системы.
На этапе "Проведение Предварительных испытаний" осуществляются:
· Испытания игры на работоспособность и соответствие Техническому заданию и в соответствии с Программой предварительных
· Устранение неисправностей и внесение изменений в документацию на игру в соответствии с Протоколом испытаний;
· Оформление Акта о приемке «Разноцветные кубики» в Опытную эксплуатацию.
На этапе "Проведение Приемочных испытаний" проводятся:
· Испытания на соответствие Техническому заданию и в соответствии с Программой приемочных испытаний;
· Анализ результатов испытаний «Разноцветные кубики» и устранение недостатков, выявленных при испытаниях;
· Оформление Протокола и Отчета по каждому объекту испытаний, определенному Программой испытаний;
2.6 Требования к эргономике и технической эстетике
Взаимодействие пользователя с прикладной программой обеспечивает, осуществлению визуального графического интерфейса (GUI). Интерфейс системы понятный и удобный, не перегружен графическими элементами и обеспечивает быстрое отображение экранных форм. Навигационные элементы выполнены в удобной для пользователя форме. Ввод-вывод данных системы, прием управляющих команд и отображение результатов их исполнения выполняются в интерактивном режиме. Интерфейс соответствует современным эргономическим требованиям и обеспечивает удобный доступ к основным функциям и операциям системы.
Интерфейс рассчитан на преимущественное использование манипулятора типа «мышь», то есть управление системой осуществляется с помощью набора экранных меню, кнопок, значков и т. п. элементов.
Все надписи экранных форм, а также сообщения, выдаваемые пользователю (кроме системных сообщений) на русском языке.
Система обеспечивать корректную обработку аварийных ситуаций, вызванных неверными действиями пользователей, неверным форматом или
недопустимыми значениями входных данных.
В указанных случаях система выдает пользователю соответствующие сообщения, после чего возвращается в рабочее состояние, предшествовавшее неверной (недопустимой) команде или некорректному вводу данных.
Экранные формы с проектированы с учетом требований унификации:
- все экранные формы пользовательского интерфейса выполнены в едином графическом дизайне, с одинаковым расположением основных элементов управления и навигации;
- для обозначения сходных операций использовались сходные графические значки, кнопки и другие управляющие (навигационные) элементы. Термины, используемые для обозначения типовых операций (добавление информационной сущности, редактирование поля данных), а также последовательности действий пользователя при их выполнении, были унифицированы;
- внешнее поведение сходных элементов интерфейса (реакция на наведение указателя «мыши», переключение фокуса, нажатие кнопки) реализовывались одинаково для однотипных элементов.
Система соответствует требованиям эргономики и профессиональной медицины при условии комплектования высококачественным оборудованием (ПЭВМ, монитор и прочее оборудование), имеющим необходимые сертификаты соответствия и безопасности Госстандарта.
3. Технические сведения программного средства
3.1 Общая архитектура программного средства
Общая архитектура программного продукта «Разноцветные кубики» представлена на Рисунке 1.
Для игры в разноцветные кубики представлен в 4х плоскостях и показаны 4 стороны кубика для управления поворотами используется посередине кубик в котором стороны которого мы поворачиваем для получения результата.
3.2 Реализация функционального назначения программного средства
Функциональное назначение программного средства «Разноцветные кубики» изображено в виде схемы на Рисунке 2.
3.3 Разработка алгоритма решения задачи
Алгоритм решения задачи представлен графически в виде блок-схемы
Берем кубик посередине и нажимаем на уголок той стороны которую хотим повернуть, смотрим результат и продолжаем до тех пор вращать стороны пока кубик не будет собран, т.е. каждая сторона будет одного цвета.
3.4 Структурная организация данных
Интерфейс программного средства представляет собой удобную среду для пользователя.
Эскиз графического интерфейса пользователя представлен на Рисунке 4 (Приложение 1).
4.1 Назначение и условия применения программного средства
Функциональным назначением программы «Разноцветные кубики» является развитие логического мышления.
Минимальные требования к ЭВМ для работы программы «Разноцветные кубики»
Таблица 1 - Минимальные требования к ЭВМ
клавиатура PS/2 - 1 мышь PS/2 - 1, USB - 2
Для использования программы необходимо выделить файл с именем «RubiksCube.exe» далее нажимаем правую кнопку мыши и выбираем открыть или копировать в нужную папку и сохраняем, открываем.
4.2 Характеристика программного средства
Данная программа предназначена для развития логического мышления, укрепления навыков работы с манипулятором мышь. Для работы с ней нужно запустить файл «RubiksCube.exe».
Игра в разноцветные кубики заключается в том чтобы, собрать кубик полностью, чтобы все стороны были одного цвета.
Первое знакомство с игрой разноцветные кубики оставляет только самые приятные впечатления. На мой взгляд, одно из главных достоинств программы продуманный интерфейс и оформление.
За этой простотой кроется масса удобств и изюминок программы. Интерфейс и команды управления программы продуманы настолько хорошо, что управлять ей можно в буквальном смысле, на интуиции.
Игра «Разноцветные кубики » загружается намного быстрее других аналогичных программ.
Инструкция по эксплуатации программы:
Загрузите игру и она уже будет готова к использованию;
Достаточно одних нажатий на уголки кубика посередине, чтобы произвести поворот.
4.4 Эксплуатация программного средства
Стадия эксплуатации программного средства охватывает процессы хранения, внедрения и сопровождения программного средства, а также транспортировки и применения программного изделия по своему назначению. Программа будет прекрасно работать от плюс 15 до плюс 35 °C при относительной влажности 70% и атмосферном давлении 462 мм.рт.ст., поскольку такие условия приблизительно соответствуют условиям эксплуатации современных компьютеров непромышленного исполнения.
При транспортировании и хранении программного изделия должна быть предусмотрена защита от попадания пыли и атмосферных осадков.
Минимальное количество персонала, требуемого для работы программы, должно составлять не менее 1 штатных единиц - конечный пользователь программы - оператор.
Конечный пользователь программы (оператор) должен обладать практическими навыками работы с графическим пользовательским интерфейсом операционной системы.
Персонал должен быть аттестован на II квалификационную группу по электробезопасности (для работы с конторским оборудованием).
Персонал, не имеющий II квалификационной группы по электробезопасности, не имеет права даже близко подходить к ПЭВМ и конторскому оборудованию.
В процессе выполнения курсового проекта был разработан программный продукт, имеющий название «Разноцветные кубики», и имеющий широкую специализацию в применении. Разработан интерфейс программы, алгоритм и программа согласно анализу технического задания. Кроме этого создана документация к разработанному программному продукту «Разноцветные кубики».
Получившаяся программа является приложением начального уровня и обладает возможностью дальнейшего усовершенствования. Например, добавление строк в меню, поменять оформление.
В процессе разработки программы «Разноцветные кубики» расширены навыки самостоятельной деятельности.
Программный продукт, разрабатывался для простых и сложных игровых последовательностей. Программа была протестирована на наличие ошибок, а также на совместимость с операционной системой Windows XP. И на основании его испытания был сделан вывод о том, что программа полностью отвечает техническим требованиям, которые имеются на сегодняшний день.
Задачи поставлены перед программистом были выполнены, и программный продукт может применяться пользователями на персональных компьютерах для игры.
Программа написана на языке программирования Borland Delphi 7, которая позволяет программисту свободно ориентироваться в программе, использовать ресурсы программы на сто процентов, и делать программы доступными как для начинающего пользователя так и для профессионалов.
программный delphi разноцветный кубик
1. Архангельский А.Я. Программирование в Delphi 5. -- М., БИНОМ, 2007.
2. Вендров А.М. Проектирование программного обеспечения экономических информационных систем. ? М.: Финансы и статистика, 2007.
3. Вендров А.М. Проектирование программного обеспечения, 2007. ?
4. Ван Тассел. Д. Стиль, разработка, эффективность, отладка и испыта ние программ. - М.: Мир, 2005
5. Гинкул Г.П. Игровой подход к приобретению знаний и его реализация в системе КАПРИЗ. Проблемы применения экспертных систем в народном хозяйстве. Тез. докл. респ. школы-семинара. Кишинев. 2009.
6. Дарахвелидзе П.Г., Марков Е.П. Delphi - среда визуального програм мирования. -СПб.:BHV-Санкт-Петербург, 2006.
7. Епанешников А., Епанешников В. Программирование в среде Delphi 2.0. Епанешников А., Епанешников В. Программирование в среде Delphi 2.0.
8. Жоголев. Е.А. Введение в технологию программирования (конспект лекций). - М.: "ДИАЛОГ-МГУ", 2008.
9. Минский М. Фреймы для представления знаний. -- М.: Мир, 2009.
10. Попов Э. В. Особенности разработки и использования экспертных систем// Искусственный интеллект. Кн. 1. Системы общения и экспертные системы. -- М.: Радио и связь, 2008.
11. Немнюгин С.А. Программирование на языке высокого уровня. ? М.: Просвещение, 2006.
12. Никифоров В.В. Основы разработки программных продуктов. ? М.: Просвещение, 2006.
13. Рудаков А.В. Технология разработки программных продуктов. ? М.: Академия, 2006.
14. Соммервил И. Инженерия программного обеспечения. ? М.: СПб.: Ки ев: Изд. Дом «Вильямс», 2007.
15. Соммервил И. Инженерия программного обеспечения. ? М.: СПб.: Киев: Изд. Дом «Вильямс», 2007.
16. Таунсенд К., Фохт Д. Проектирование и программная реализация экспертных систем на персональных ЭВМ. -- М.: Финансы и статистика, 2005.
17. Таунсенд К., Фохт Д. Проектирование и реализация экспертных систем на ПЭВМ. М., Финансы и статистика, 2007.
18. Хомоненко А. Гофман В. Delphi 7 в подлиннике. ? М.: Просвещение, 2006.
19. Фокс. Дж. Программное обеспечение и его разработка. - М.: Мир, 2005.
20. «Компьютерное проектирование программного обеспечения» / Издательство Московского университета, 2007.
21. Компьютерное проектирование программного обеспечения. - Изда тельство Московского университета, 2007.
22. «Объектно- ориентированное программирование» / Иванова Г.С., Ничушкина Т. Н., Пугачев Е. К.
23. «Программное обеспечение и его разработка» / Фокс. Дж../ М.: Мир / 2005 год.
24. «Разработка графических и мультемедийных приложений» / Жарков В.А.
25. «Стиль, разработка, эффективность, отладка и испытание программ» / Ван Тассел. Д. / М.: Мир /.
26. Учебное пособие. В 4-х частях. Ч.1. Описание среды. - М.:ДИАЛОГ-МИФИ, 2007.
27. Учебное пособие. В 4-х частях. Ч.2. Язык Object Pascal 9.0. - М.:ДИАЛОГ-МИФИ, 2007.
28. « Языки программирования» / О.Л. Голицына, Т. Л. Партыка, И. И. Попов / Издательство: Инфра-М, Форум / 2008 год / ISBN: 978-5-91134-171-8, 978-5-16-003200-9
Рисунок 1 - Архитектура программного продукта
Рисунок 2 - Функциональное назначение программы «Разноцветные кубики»
Рисунок 3 - Блок схема программы «Разноцветные кубики»
Рисунок 4- Графический интерфейс программы
uses Windows, Classes, OpenGL, Graphics, ComCtrls, SyncObjs, Commands, Forms,Controls;
Scene: TScene; // Привязка к сцене для отображения
Normal: TPoint3Di; // Нормаль к грани
SIndex: integer; // Индекс грани для выбора
property Color: integer read FIColor write SetColor;
procedure Translate(x, y, z:GLFloat);
procedure Rotated(A:GLFloat; N:TPoint3Di);
procedure Draw(reflection:boolean; mode: GLenum);
constructor Create(NI:integer; a:GLFloat);
// Нумерация граней 1-(+X), 2-(+Y), 3-(+Z), 4-(-Z), 5-(-Y), 6-(-Z)
procedure Translate(x, y, z:GLFloat);
procedure MakeViewPlanes(Owner:TScene);
procedure Rotated(A:GLFloat; N:TPoint3Di);
procedure RotateColorIndex(A:array of integer);
constructor Create(a:GLFloat; dx, dy, dz:GLFloat);
FIndex: integer; // Индекс нормали для грани 8 9 4
FCubes: array [1..9] of integer; // номера кубиков по спирали 7 6 5
function GetCube(index:integer):TCube;
property Index: integer read FIndex;
property Cubes[index:integer]:TCube read GetCube;
procedure Rotate(A, RotateFace:boolean);
constructor Create(aOwner:TRubiksCube; FaceIndex:integer; Cubes:array of integer);
FCubePlanes: array [1..9] of TCubePlane;
procedure SetViewCommands(L:TStatusBar);
procedure Rotated(A:GLFloat; Normal:TPoint3Di);
procedure Rotate(Plane, C:integer);
procedure RotateColorIndex(Plane, C:integer);
property ViewCommands: TStatusBar read FViewCommands write SetViewCommands;
procedure SetViewMatrix(PickX, PickY:integer);
function GetSelectPlane(X, Y:integer):integer;
procedure OnResize(Sender: TObject);
procedure OnMouseDown(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
constructor Create(aForm:TForm; StatusBar: TStatusBar);
const CSIZE = 0.2; // Половина ребра кубика
CINTERVAL = 0.45; // Расстояние между центрами кубика
CNormals: array [0..6] of TPoint3Di =
CVertices: array [1..8] of TPoint3Di =
CPoints: array [1..6] of array [1..4] of integer =
// Боковые грани по часовой стрелке
WPlanes: array [1..6] of array [1..4] of integer =
var PlaneColors: array [0..6] of GLColor =
procedure RotateColors(Plane, A:integer); forward;
procedure TimeProc(uTimerID, uMessage: UINT; data, dw1, dw2: DWORD) stdcall; forward;
constructor TPlane.Create(NI:integer; a:GLFloat);
CVertices[CPoints[NIndex][i+1]].x * a,
CVertices[CPoints[NIndex][i+1]].y * a,
CVertices[CPoints[NIndex][i+1]].z * a
if Scene <> nil then Scene.Remove(Self);
procedure TPlane.SetColor(V:integer);
procedure TPlane.Translate(x, y, z:GLFloat);
for i:= 0 to 3 do Points[i].Translate(x, y, z);
procedure TPlane.Rotated(A:GLFloat; N:TPoint3Di);
constructor TCube.Create(a:GLFloat; dx, dy, dz:GLFloat);
procedure TCube.Translate(x, y, z:GLFloat);
for i:= 1 to 6 do Planes[i].Translate(x, y, z);
procedure TCube.MakeViewPlanes(Owner:TScene);
for i:= 1 to 6 do Owner.Add(Planes[i]);
procedure TCube.Rotated(A:GLFloat; N:TPoint3Di);
for i:= 1 to 6 do Planes[i].Rotated(A, N);
// A - массив соответствия индексво цветов
// индексу i после преобразования соответствует индекс A[i]
procedure TCube.RotateColorIndex(A:array of integer);
for i:= 1 to 6 do Planes[i].Color:= A[Planes[i].Color];
function TCubePlane.GetCube(index:integer):TCube;
result:= FOwner.Cubes[FCubes[index]];
procedure TCubePlane.Rotated(A:GLFloat);
for i:= 1 to 9 do Cubes[i].Rotated(A, CNormals[Index]);
procedure TCubePlane.Rotate(A, RotateFace:boolean);
CI: array [boolean] of array [1..4*3] of integer =
((1, 2, 3, 3, 4, 5, 5, 6, 7, 7, 8, 1),
(7, 8, 1, 5, 6, 7, 3, 4, 5, 1, 2, 3));
t1:= Cubes[ CI[A][1] ].Planes[N].Color;
t2:= Cubes[ CI[A][2] ].Planes[N].Color;
t3:= Cubes[ CI[A][3] ].Planes[N].Color;
Cubes[ CI[A][kn+1] ].Planes[N].Color:= Cubes[ CI[A][kn+4] ].Planes[N1].Color;
Cubes[ CI[A][kn+2] ].Planes[N].Color:= Cubes[ CI[A][kn+5] ].Planes[N1].Color;
Cubes[ CI[A][kn+3] ].Planes[N].Color:= Cubes[ CI[A][kn+6] ].Planes[N1].Color;
Cubes[ CI[A][kn+1] ].Planes[N].Color:= t1;
Cubes[ CI[A][kn+2] ].Planes[N].Color:= t2;
Cubes[ CI[A][kn+3] ].Planes[N].Color:= t3;
// 7 5 3 1 - против часовой, 1 3 5 7 - по часовой
t1:= Cubes[ k ].Planes[FIndex].Color;
t2:= Cubes[ k+1 ].Planes[FIndex].Color;
if A then dec(kn, 2) else inc(kn, 2);
Cubes[ k ].Planes[FIndex].Color:= Cubes[ kn ].Planes[FIndex].Color;
Cubes[ k+1 ].Planes[FIndex].Color:= Cubes[ kn+1 ].Planes[FI
Разработка программного продукта "Разноцветные кубики" курсовая работа. Программирование, компьютеры и кибернетика.
Реферат На Тему Природные Системы
Отчет По Практике Организации Кузовного Ремонта
Доклад по теме Требования к организации ручного труда в детском саду
Производственная Практика Отчет Ип
Реферат На Тему Грамматические Ошибки
Функциональные Стили Реферат
План Эссе По Обществознанию Егэ 2022 Клише
Реферат: Сословные реформы XVIII века
Реферат по теме Основные психологические проблемы спортсменов
Сочинение О Коррупции Для Школьников
Сочинение На Тему Я Социальный Работник
Постановка На Кадастровый Учет Объекта Недвижимости Курсовая
Реферат: Технологія окремих харчових продуктів
Сравнительный анализ основных направлений денежно-кредитной политики Федеральной резервной системы США и Центрального банка России
Реферат: Представление об экономической теории. Ее место в ряду экономических наук. Скачать бесплатно и без регистрации
Курсовая работа по теме Особливості технологічного процесу виробництва кулінарних виробів з борошна
Написать Сочинение Рассуждение Что Такое Жестокость
Курсовая работа по теме Инфляция в России
Контрольная работа по теме Расчет показателей эконометрики
Сочинение по теме К генеалогии кавказских пленников
Внутренняя и внешняя среда международного маркетинга - Маркетинг, реклама и торговля курсовая работа
Федеральное государство в Германии - Государство и право курсовая работа
Адміністративне право: концептуальні підходи вчених дорадянського періоду - Государство и право реферат


Report Page