Библиографический список. Программа построения треугольника Серпинского

Программа построения треугольника Серпинского

Программа для построения ветки папоротника

Program fr_paporotnik;

uses crt, graph;

const alfa=80;beta=2.1; k=0.3; k1=0.5; lmin=1;

var a,b,c,d,e,f,g,h:real; gd,gm:integer;

{*** рекурсивная процедура на основе метода IFS ***}

procedure step(x1,y1,x2,y2:real; nom:integer);

var x3,y3,x4,y4,x5,y5,x6,y6,x7,y7:real;

begin

if sqr(x1-x2)+sqr(y1-y2)>lmin then

begin

{координаты точек вычисляются по формулам}

x3:=(x2-x1)*a-(y2-y1)*b+x1; y3:=(x2-x1)*b+(y2-y1)*a+y1;

x4:=x1*c+x3*d; y4:=y1*c+y3*d;

x5:=x4*e+x3*f; y5:=y4*e+y3*f;

x6:=(x5-x4)*g-(y5-y4)*h+x4; y6:=(x5-x4)*h+(y5-y4)*g+y4;

x7:=(x5-x4)*g+(y5-y4)*h+x4; y7:=(x5-x4)*(-h)+(y5-y4)*g+y4;

line(round(x1),round(y1),round(x4),round(y4));

{рекурсивные вызовы для рисования фрагментов фрактала}

step(x4,y4,x3,y3,nom);

step(x4,y4,x6,y6,nom+1);

step(x4,y4,x7,y7,nom+1);

end;

end;

begin

gd:=Detect;

initgraph(gd,gm,'C:\BP\BGI');

setBkcolor(1);

{вычисление коэффициентов}

a:=cos(pi/alfa); b:=sin(pi/alfa);

c:=1-k; d:=k;

e:=1-k1; f:=k1;

g:=cos(pi/beta); h:=sin(pi/beta);

step(200,350,225,70,0); {рисование ветки папоротника}

readkey;

closegraph

end.

program fr_treug_serpinsky;

uses graph,crt;

const m=2500; { количество точек фрактала }

type koord=array[1..3] of integer;

var gd,gm: integer;

x,y: koord; { массивы координат }

{**** Процедура заполнения заданного треугольника точками ****}

procedure serpinsky(xs,ys:koord);

var x0,y0,xk,yk: real; n,k: integer;

begin

randomize;

x0:=(xs[1]+xs[2]+xs[3])/3; { координаты начальной точки }

y0:=(ys[1]+ys[2]+ys[3])/3;

for k:=1 to m do

begin

n:=random(3)+1; { случайная вершина }

xk:=(x0+xs[n])/2; { середина отрезка, соединяющего }

yk:=(y0+ys[n])/2; { начальную точку с вершиной }

putpixel(round(xk), round(yk), 12); { вывод точки }

x0:=xk; { новые координаты для начальной точки }

y0:=yk

end;

end;

begin

gd:=Detect;

initgraph(gd,gm,'C:\BP\BGI');

setcolor(10);

setviewport(20,20,500,250, true);

x[1]:=320; y[1]:=50; { координаты вершин треугольника }

x[2]:=150; y[2]:=200;

x[3]:=450; y[3]:=200;

serpinsky(x,y); { процедура вывода треугольника Серпинского }

readkey;

closegraph

end.


1. Бордман Т. 3DS Max 5: Учебный курс. СПб., Питер, 2004.

2. Боресков А.В. Графика трехмерной компьютерной игры на основе OpenGL. М.: ДИАЛОГ-МИФИ, 2004.

3. Голованов Н.Н. Геометрическое моделирование. М.: Изд-во физ.-мат. лит-ры, 2002.

4. Костельцев А.В. GTK+. Разработка переносимых графических интерфейсов. СПб.: БХВ-Петербург, 2002.

5. Костюкова Н.И. Введение в компьютерную графику: Методические рекомендации. Новосибирск: Сиб. университетское изд-во, 2003.

6. Литвиненко Н.Ю. Построение графиков в Excel: тонкости. М.: Солон-Пресс, 2003.

7. Мозговой М.В. Занимательное программирование: Самоучитель. СПб.: Питер, 2004.

8. Мураховский В.И. Компьютерная графика / Под ред. С.В.Симоновича. М.: АСТ-Пресс, 2002.

9. Никулин Е.А. Компьютерная геометрия и алгоритмы машинной графики. СПб.: БХВ-Петербург, 2003.

10. Пекарев Л. Самоучитель 3DS Max 5. Спб.: БХВ, 2003.

11. Петров М.Н., Молочков В.П.. Компьютерная графика. СПб., "Питер", 2004.

12. Порев В. Компьютерная графика. СПб.: БХВ-Петербург, 2002.

13. Симонович С., Евсеев Г., Алексеев А.. Специальная информатика. М.: АСТ-Пресс, 1999.

14. Слободецкий И. 3D Studio Max. Практический курс. М.: Компьютерная литература, 2004.

15. Соловьев М. Трехмерный мир 3D Studio Max 5.0. М.: Солон-Пресс, 2003.

16. Уокенбах Джон. Диаграммы в Excel. М.-Спб.-Киев: Диалектика, 2003.

17. Чекотовский Э.В. Графический анализ статистических данных в Microsoft Excel 2000. М.: "Диалектика", 2002.


С о д е р ж а н и е

П р е д и с л о в и е. 3

Лекция 1. Введение в компьютерную графику. 5

Основные направления компьютерной графики. 5

Деловая графика. 8

Лекция 2. Виды компьютерной графики. Программные средства
компьютерной графики
. 12

Виды компьютерной графики. 12

Классы программ для работы с растровой графикой. 16

Средства создания и обработки векторных изображений. 17

Средства создания фрактальных изображений. 18

Лекция 3. Основные понятия КГ.. 18

Разрешение изображения и его размер. 18

Понятие растра. 19

Методы растрирования. 20

Основы теории цвета. 21

Лекция 4. Цветовые модели и палитры. Цветовые профили. 23

Аддитивная цветовая модель RGB.. 23

Субтрактивная цветовая модель CMYK.. 26

Преобразование между моделями RGB и CMYK.. 27

Цветовая модель HSV.. 28

Другие цветовые модели. 29

Цветовые профили. 30

Лекция 5. Кодирование цвета. Палитра. 32

Кодирование цвета. 32

Индексные палитры.. 33

Фиксированная палитра. 34

Безопасная палитра. 35

Лекция 6. Визуализация изображений. Основные понятия. 35

Основные геометрические характеристики растра. 36

Методы улучшения растровых изображений: антиэлайзинг и дизеринг. 37

Лекция 7. Геометрическое моделирование. Системы координат.
Аффинные преобразования
. 41

Основные понятия геометрического моделирования. 41

Системы координат. 42

Аффинные преобразования. 44

Лекция 8. Геометрические модели плоских объектов. 47

Основные понятия. 47

Способы описания (модели) прямой линии. 48

Взаимное расположение графических элементов на плоскости. 50

Уравнения пучка прямых и биссектрисы угла. 51

Лекция 9. Кривые 2-го порядка. Сплайны. Кривые Безье. 52

Кривые второго порядка. 52

Сплайны. Кривые Безье. 55

Лекция 10. Многоугольники (полигоны). Тесты ориентации точки
относительно полигона
. 59

Понятие полигона. Геометрическая модель плоского полигона. 59

Свойства плоских многоугольников. 59

Тесты ориентации точки относительно полигона. 60

Лекция 11. Базовые растровые алгоритмы.. 63

Алгоритмы вывода прямой линии. 63

Инкрементные алгоритмы.. 64

Алгоритм вывода окружности. 65

Алгоритм вывода эллипса. 66

Лекция 12. Алгоритмы закрашивания. 67

Задача графического вывода фигур. 67

Алгоритмы закрашивания. 68

Алгоритмы заполнения, использующие математическое описание кон-
тура. 71

Лекция 13. Фрактальные алгоритмы.. 75

Понятие фрактала. 75

Алгоритмические фракталы.. 75

Геометрические фракталы.. 77

Площадные фракталы.. 78

Фракталы на основе метода IFS. 79

Применение методов фрактальной графики. 81

Лекция 14. Методы и алгоритмы трехмерной графики. Модели описа-
ния поверхностей
. 83

Аналитическая модель поверхности. 83

Векторная полигональная модель. 85

Воксельная модель. 86

Равномерная сетка. 87

Неравномерная сетка. Изолинии. 88

Моделирование объектов в системах КГ. 90

Лекция 15. Визуализация трехмерных изображений. 91

Проецирование трехмерных объектов на картинную плоскость. 91

Уровни визуализации. 94

Каркасная визуализация. 95

Показ с удалением невидимых точек. Классификация методов. 95

Лекция 16. Методы Гуро и Фонга для закрашивания поверхностей. Методы прямой и обратной трассировки лучей 100

Закрашивание поверхностей. 100

Метод Гуро. 103

Метод Фонга. 105

Методы трассировки лучей. 107

Лекция 17. Формирование изображений средствами современных
видеосистем. Графические интерфейсы и стандарты программирова-
ния графики
. 110

Принципы формирования изображения на экране. 110

Вертикальная развертка и двойная буферизация. 111

Архитектура современных видеосистем.. 112

Современные стандарты и интерфейсы программирования компью-
терной графики. 116

П р и л о ж е н и е 1. Наиболее распространенные форматы графических файлов. 120

П р и л о ж е н и е 2. Тексты программ для построения фрактальных изображений 123

Библиографический список. 129


Снижко Елена Александровна


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: