МегаПредмет

ПОЗНАВАТЕЛЬНОЕ

Сила воли ведет к действию, а позитивные действия формируют позитивное отношение


Как определить диапазон голоса - ваш вокал


Игровые автоматы с быстрым выводом


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


Целительная привычка


Как самому избавиться от обидчивости


Противоречивые взгляды на качества, присущие мужчинам


Тренинг уверенности в себе


Вкуснейший "Салат из свеклы с чесноком"


Натюрморт и его изобразительные возможности


Применение, как принимать мумие? Мумие для волос, лица, при переломах, при кровотечении и т.д.


Как научиться брать на себя ответственность


Зачем нужны границы в отношениях с детьми?


Световозвращающие элементы на детской одежде


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


Как слышать голос Бога


Классификация ожирения по ИМТ (ВОЗ)


Глава 3. Завет мужчины с женщиной


Оси и плоскости тела человека


Оси и плоскости тела человека - Тело человека состоит из определенных топографических частей и участков, в которых расположены органы, мышцы, сосуды, нервы и т.д.


Отёска стен и прирубка косяков Отёска стен и прирубка косяков - Когда на доме не достаёт окон и дверей, красивое высокое крыльцо ещё только в воображении, приходится подниматься с улицы в дом по трапу.


Дифференциальные уравнения второго порядка (модель рынка с прогнозируемыми ценами) Дифференциальные уравнения второго порядка (модель рынка с прогнозируемыми ценами) - В простых моделях рынка спрос и предложение обычно полагают зависящими только от текущей цены на товар.

Техническое задание для курсовой работы





Разработать программу объектно-ориентированного графического редактора, обеспечивающего выполнение следующих основных функций:

- выбор, размещение на экране и визуализация примитивов из заданного набора;

- синтез более сложных фигур с помощью теоретико-множественных операций (ТМО) как над примитивами, так и над ранее синтезированными фигурами;

- выделение любого объекта, выведенного на экран, и выполнение над ним любой последовательности геометрических преобразований из заданного набора в интерактивном режиме;

- выделение любого объекта на экране и его удаление.

Уровень сложности синтезируемых фигур по числу используемых для этого ТМО не должен ограничиваться. Не должно быть также ограничений на количество примитивов любого вида или сложных фигур, выводимых на экран. При выполнении ТМО объекты – операнды данной операции следует удалять из списка самостоятельных объектов, а их изображения – стирать с экрана.

Любые геометрические преобразования нужно выполнять в однородных координатах в матричной форме и применять ко всем видам объектов.

Геометрические преобразования над каким-либо объектом не должны приводить к стиранию изображения или другим искажениям остальных объектов.

Программа должна располагать общепринятыми элементами интерфейса: системным и контекстными меню, инструментальными панелями, другими элементами диалога, системой помощи и подсказок по всем основным функциям программы. Предусмотреть диалоговые средства для выбора цвета рисования.

Программа должна быть рассчитана на работу в операционной системе Windows 2000и выше.

В табл. 3.1 приведен перечень примитивов, их внешнего вида в исходном состоянии и обозначений.

 

 

Таблица 3.1

Примитивы Вид Обозначение
Кривая Безье   BZ
Кривая Эрмита   ER
Равнобедренный треугольник   Tgr
Прямоугольный треугольник   Tgp
Ромб   Romb
Параллелограмм   Prlg
Равнобедренная трапеция   Trp
Произвольный n-угольник, n <= 20   FPg
Правильный n-угольник, n <= 20   Pgn
Правильная n-конечная звезда, n <= 20 Zv
Стрелка 1 Str1
Стрелка 2 Str2
Стрелка 3   Str3
Флаг   Flag
Правильный крест     Kr
Уголок 1 Ugl1
Уголок 2   Ugl2
Уголок 3 Ugl3

 

Все приведенные в табл. 3.1 примитивы, кроме кривых, – закрашиваемые многоугольники.

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

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

В табл. 3.2 перечислены виды геометрических преобразований и их обозначения.

 

Таблица 3.2

Геометрические преобразования Обозначение
Поворот вокруг заданного центра на произвольный угол
Поворот вокруг заданного центра на угол 30о Rс30
Поворот вокруг центра фигуры на произвольный угол Rf
Поворот вокруг центра фигуры на угол 60о Rf60
Масштабирование по осиX относительно заданного центра Sxc
Масштабирование по осиX относительно центра фигуры Sxf
Масштабирование по оси Y относительно заданного центра Syc
Масштабирование по оси Y относительно центра фигуры Syf
Пропорциональное масштабирование относительно заданного центра Sxyc
Пропорциональное масштабирование относительно центра фигуры Sxyf
Зеркальное отражение относительно заданного центра SPc
Зеркальное отражение относительно центра фигуры SPf
Зеркальное отражение относительно вертикальной прямой SV
Зеркальное отражение относительно горизонтальной прямой SH
Зеркальное отражение относительно прямой общего положения SL

 

Под заданным центром подразумевается любая точка области вывода на экране, указанная с помощью мыши, которую в дальнейшем следует использовать как центр преобразования. До окончания преобразования центр нужно показывать каким-либо условным обозначением, например, в виде перекрестья.

В качестве центра правильных многоугольников и звезд следует использовать центр описанной окружности. За центр остальных фигур может быть взят центр прямоугольника, в который вписывается преобразуемый объект. Методика расчета центра фигуры должна быть разработана самостоятельно.

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

 

 

3.3.Варианты индивидуальных заданий
для курсовой работы

Варианты индивидуальных заданий для общего технического задания для курсовой работы, изложенного в разд. 3.2., приведены в табл. 3.3. Кроме перечисленных в табл. 3.3, обязательным для всех вариантов примитивом является отрезок прямой, а обязательным видом геометрических преобразований – плоскопараллельное перемещение.

 

Таблица 3.3

Вариант Примитивы Геометрические преобразования ТМО
BZ, Tgr, Zv Rc, Sxf, SH Ç, Å
BZ, Prlg, FPg Rc, SPc, SH Å, ¤
ER, Ugl3, FPg Rf, Rf60, SPc È, Ç
BZ, Romb, Zv Rf, Sxc, Syc Å, ¤

Таблица 3.3 (Продолжение)

Вариант Примитивы Геометрические преобразования ТМО
BZ, Tgp, FPg Rc, Sxc, Syf È, Å
ER, Trp, Str1 Rf60, Syc, SL È, Ç
BZ, Str1, Str2 Rc, Rc30, Sxf Å, ¤
ER, Pgn, Ugl1 Rc, Sxyc, SPf Ç, Å
BZ, Tgr, FPg Rf, Sxyf, SH Ç, ¤
ER, Tgp, F1ag Rc, SPf, SV È, ¤
ER, Ugl2, Str3 Rf60, SPc, SH È, Å
BZ, Trp, FPg Rc30, Sxyf, SL Ç, ¤
ER, Kr, Str2 Rc, Sxc, Syc Ç, Å
BZ, Pgn, FPg Rf, SV, SH È, Ç
BZ, Zv, Str1 Rf, Sxyf, SPc È, ¤
ER, Romb, FPg Rf60, SH, SL Å, ¤
BZ, Pgn, Kr Rf, SV, Sxc È, Ç
BZ, Tgr, Str3 Rc30, SV, SL È, Å
ER, Tgp, Ugl2 Rc30, Sxf, Syf Å, Ç
BZ, Trp, Zv Syf, SPc, SV È, Ç
BZ, Ugl3, Str3 Rf60, Syf, SV Ç, ¤
ER, Prlg, Ugl1 Rc, Rc30, Sxyf Ç, ¤
BZ, Kr, Flag Rf, Rf60, Sxc Ç, Å
BZ, Tgr, Pgn Rc30, Sxc, SL Å, ¤
ER, FPg, Zv Rf, Syc, SPc È, Ç
ER, Trp, Flag Rf60, SPf, SH Ç, ¤
BZ, Romb, Str3 Rf60, Sxf, SH Ç, Å
ER, Prlg, Str2 Spf, Sxc, SL Å, ¤
ER, Tgp, Pgn Rc, SV, SH È, Ç
BZ, Romb, Flag Rc, Rf60, Syf È, Å
ER, Kr, Ugl1 Rc, Sxyc, Syf Å, Ç
ER, Tgp, Str3 Rc30, Sxyf, SPf Å, ¤
BZ, Flag, Kr Rc30, Sxyf, SL È, ¤
BZ, Pgn, Str1 Rc, SPc, SPf ¤,È
ER, Ugl1, Str2 Rf, Rf60, Sxyc È, Ç

 

 

Таблица 3.3 (Продолжение)

Вариант Примитивы Геометрические преобразования ТМО
ER, Ugl3, Zv Rf, SV, SPc È, ¤
BZ, Prlg, Ugl2 Rc, Rc30, Sxyf Ç, ¤
BZ, Ugl1, Ugl2 Rc, Syf, SPc Å, Ç
BZ, Romb, Kr Rf, SV, SL È, Ç
ER, Kr, Flag Rf, Rf60, Sxc È, ¤
BZ, Prlg, Ugl3 Rc, Sxc, Syf È, Å
BZ, Zv, Str1 Rf, Sxyf, SPc È, ¤
BZ, Kr, Str3 Rc30, SV, SL È, Å
ER, Ugl3, FPg Rf, Rf60, SPc È, Ç
BZ, Tgr, FPg Rf, Sxyf, SH Ç, ¤
ER, Flag, Str1 Rf60, Syc, SL È, ¤
BZ, Tgp, Ugl1 Rf, Sxc, Syf È, Å
BZ, Pgn, Kr Rc, SPc, SPf ¤,È
ER, Tgp, Pgn Rc, SV, SH È, Å
ER, Trp, Str1 Rf60, Syc, SL È, Ç
ER, Tgp, F1ag Rc, SPf, SV È, ¤
BZ, FPg, Ugl3 Syc, SPc, SH È, Ç
BZ, Ugl2, Str3 Rf30, Syf, Syc Ç, ¤
ER, Prlg, Str2 Spf, Sxc, SL Å, ¤
BZ, Pgn, Tgr Rc, SPc, SPf Å,È
ER, Romb, Str1 Rc, SPc, SPf ¤,È
BZ, Trp, Kr Rf, SV, Sxc È, Å
ER, Trp, Zv Rc, Sxyf, SPc È, Ç
ER, Tgp, Str3 Rc30, Sxyf, SPf Å, ¤
BZ, Kr, Flag Rf, Rf60, Sxc Ç, Å

 

 

Заданные наборы геометрических преобразований и ТМО должны быть применимы к любому объекту, выведенному на экран.

 

 





©2015 www.megapredmet.ru Все права принадлежат авторам размещенных материалов.