Библиотека Рефераты Курсовые Дипломы Поиск
Библиотека Рефераты Курсовые Дипломы Поиск
сделать стартовой добавить в избранное
Кефирный гриб на сайте za4eti.ru

Компьютеры, Программирование Компьютеры, Программирование     Программное обеспечение Программное обеспечение

Один метод построения полигональных изображений

Пакеты с замком "зиплок" (гриппер), комплект 100 штук.
Быстрозакрывающиеся пакеты с замком "зиплок" предназначены для упаковки мелких предметов, фотографий, медицинских препаратов и
179 руб
Раздел: Гермоупаковка
Совок большой.
Длина 21,5 см. Расцветка в ассортименте, без возможности выбора.
22 руб
Раздел: Совки
Брелок LED "Лампочка" классическая.
Брелок работает в двух автоматических режимах и горит в разных цветовых гаммах. Материал: металл, акрил. Для работы нужны 3 батарейки
131 руб
Раздел: Металлические брелоки

Василий Терешков  Построение изображений трехмерных объектов при помощи компьютера – тема, которая издавна привлекала особое внимание программистов и разработчиков аппаратных средств. С появлением эффективных графических библиотек (Direc 3D, Ope GL и т.п.) и специализированных видеокарт интерес к математическим основам машинной графики снизился, поскольку у программистов исчезла необходимость самостоятельно создавать алгоритмы построения изображений. В этом одна из сторон печальной тенденции превращения программирования из искусства в ремесло. Все же немало есть и тех, кто захочет не только получить результат, но и узнать, что лежит между интерфейсом графической библиотеки и готовой картинкой на экране. Для них и предназначена эта статья, в которой мы постараемся изложить суть одного метода построения трехмерных изображений, быть может, не самого эффективного. Терминология Прежде поясним некоторые математические понятия, которыми будем пользоваться в дальнейшем. Мировая система координат – в нашем случае пространственная прямоугольная система координат (СК), две оси которой (X и Y) направлены по сторонам экрана монитора, а третья – от наблюдателя. Экранная система координат – СК в плоскости экрана, ее оси совпадают с осями X и Y мировой СК. Система координат модели – СК, относительно которой в файле заданы координаты всех вершин модели, изображение которой строится. Вектор – направленный отрезок, его положение будем задавать либо координатами начала и конца, либо их разностями (собственно координатами вектора). Длина (модуль) вектора рассчитывается как квадратный корень из суммы квадратов его координат – это следствие теоремы Пифагора. Скалярное произведение векторов – число p, определяемое следующим образом: или, где A и B - длины векторов A и B, x, y, z – их координаты, – угол между ними. Коллинеарные векторы – два или более вектора, лежащие на одной прямой или параллельных прямых. Компланарные векторы – три или более вектора, которые при отложении из одной точки оказываются лежащими в одной плоскости. Если векторы A, B, C компланарны, то вектор C можно разложить по векторам A и B, то есть C=aA bB, где a и b – некоторые коэффициенты. Нормаль к вектору – вектор единичной длины, перпендикулярный данному. На плоскости координаты нормали к вектору P(x; y) определяются по формулам: Определитель – алгебраическое выражение, записанное в особой форме. Мы будем использовать определители 3-го порядка: Существует мнемоническое правило вычисления определителей 3-го порядка – так называемое правило Саррюса, с которым можно ознакомиться в специальной литературе. Используемые данные и их представление Возможно, вы обратили внимание на слово «полигональный» в заголовке статьи. Поясним его смысл. «Полигон» в переводе на русский язык означает «многоугольник», а «полигональный» – «составленный из многоугольников». В применении к машинной графике это означает, что для построения изображения произвольного тела сначала создается его модель – сложный многогранник, все грани которого представляют собой многоугольники, как правило, простейшие, - треугольники.

В файле с информацией о модели должны быть каким-либо образом заданы координаты всех вершин (их число может достигать нескольких тысяч) и порядок их соединения. Если предполагается наложение текстур, то каждой вершине должны быть приписаны еще два числа – текстурные координаты u, v. Их смысл в следующем. Текстура представляет собой плоское растровое изображение, которое должно быть наложено на пространственную модель без разрывов. Это предполагает неравномерную деформацию текстуры – ее сжатие и растяжение. Но одновременно требуется, чтобы текстура не «сползла», то есть во всех вершинах модели оказались строго определенные точки растра. Эти точки и задаются координатами u, v в системе координат, связанной с текстурой. Хорошей механической аналогией может послужить кусок резины, натягиваемый на каркас и прикрепляемый булавками в вершинах каркаса. С технической точки зрения хранить все эти данные удобнее всего в двоичном файле, содержащем три массива: //Информация о вершинах s ruc Ver ex {   floa x; //координаты в СК модели   floa y;   floa z; } Ver ices; //Информация о гранях s ruc ria gle {   i i1; //номера вершин, составляющих грань, в массиве Ver ices   i i2;   i i3;   floa u1; //текстурные координаты вершин   floa v1;   floa u2;   floa v2;   floa u3;   floa v3; } ria gles; //Текстура (256 цветов) u sig ed char ex ure; Отдельно требуется указать ракурс, под которым будет видна модель. Наиболее удобным для пользователя было бы задание оси вращения в виде вектора и угла поворота вокруг нее. Однако значительно проще реализовать последовательные повороты по трем углам: вокруг оси X, вокруг оси Y’, в которую перешла ось Y при первом повороте, вокруг оси Z’’, в которую перешла ось Z’ при втором повороте. Алгоритм построения изображения Изображение модели строится по отдельным граням, а изображение грани – по отдельным точкам, для каждой из которых определяется цвет. При этом, во-первых, закрашены должны быть все точки внутренней области изображения, во-вторых, цвет точки должен рассчитываться только один раз, что накладывает некоторые ограничения на выбор алгоритма. Первым этапом построения изображения треугольной грани будет определение координат ее вершин в мировой СК и, в частности, их положения на экране, для чего требуется повернуть СК модели на заранее заданные углы (см. выше). Наиболее изящно такой поворот осуществляется умножением радиуса-вектора вершины на матрицу поворота. Мы же опишем его в терминах обычной координатной геометрии с применением формул поворота «плоской» (!) СК. Пусть x, y, z – начальные, а x’, y’, z’ - конечные координаты вершины, ТАУ – угол поворота, тогда эти формулы приобретают вид: вокруг оси X: вокруг оси Y: вокруг оси Z: Следует помнить, что наша задача требует осуществлять все три поворота последовательно и при каждом новом повороте использовать в качестве начальных координат те, что получены при предыдущем. Перейдем ко второму, не менее важному этапу. После того, как контур грани на экране определен, нужно найти все точки (пиксели), лежащие внутри него, иными словами, решить классическую задачу о принадлежности точки внутренней области треугольника.

Один из вариантов ее решения (найденный автором статьи) таков. Представим контур грани составленным из векторов, а не отрезков (см. рисунок 1). К каждому из них проведем нормаль. Знаки координат вектора нормали выберем так, чтобы он был направлен в сторону противоположной вершины. Тогда внутри треугольника будут находиться те и только те точки, для которых все три скалярных произведения вектора, проведенного из какой-либо вершины в эту точку, и нормали, проведенной из той же вершины, положительны. Например, на приведенном рисунке точка P лежит внутри треугольника, поскольку выполняются соотношения (здесь и далее заглавными латинскими буквами будем обозначать точки и векторы, а строчными – координаты):   Для каждой найденной таким образом точки нужно определить ее видимость. Для этого используем широко распространенный метод z-буфера. Буфер представляет собой массив вида floa ZBuffer; Каждой точке на экране (пикселю) соответствует один элемент массива, а его значение трактуется как «глубина» этой точки, иными словами, ее координата z в мировой СК. Перед выводом точки ее «глубина» сравнивается с текущим значением в массиве и, если оказывается меньше его, записывается на его место и точка выводится на экран. Таким образом, видимой среди всех точек с одинаковыми координатами x и y оказывается та, у которой координата z минимальна. Внимательный читатель заметит, что на предыдущем этапе задачу о взаимном расположении точки и треугольника мы решали в плоскости экрана и ни для одной из проверяемых точек координата z вообще неизвестна. Зато известны координаты z вершин треугольной грани, а кроме того, тот очевидный факт, что любая из точек (пусть это будет все та же точка P на рисунке вверху) лежит в плоскости грани. Следовательно, векторы A, C, XP (можно выбрать и другие тройки) компланарны и Эта система с неизвестными a, b, Zxp легко решается методом подстановки. Сложив Zx и Zxp, мы получим координату z точки P. Теперь, если мы убедились, что точка находится внутри треугольника и она не заслонена другими точками, можно приступить к последнему этапу – определению ее цвета исходя из текстурных координат вершин грани, то есть, по сути, отысканию текстурных координат этой точки. При наложении на грань текстура деформируется – растягивается или сжимается – но так, что при этой деформации прямые линии остаются прямыми. Такое преобразование плоскости называется аффинным и задается уравнениями вида x’ = ax by c; y’ = dx ey f. Приведенные уравнения справедливы для координат любой точки, в том числе и для вершин, а значит, если мы, например, хотим найти координату u точки P, то должны сначала определить a, b, c, решив систему уравнений Для решения таких систем часто применяют так называемое правило Крамера. Пусть F11 - определитель, полученный выписыванием коэффициентов перед неизвестными в правой части так, как они расположены в системе, а F12 - определитель, полученный из F11 заменой i-го столбца на столбец свободных членов (левая часть системы). Тогда i-е неизвестное рассчитывается по формуле Так находятся числа a, b, c и, аналогично, d, e, f, которые затем применяются для расчета текстурных координат точки P.

Но этот эпизод не отрывок «кино», а довольно примитивный мультфильм, для создания которого использовано всего 4 различных кадра с четырьмя различными положениями Земли над лунным горизонтом (илл.13). Меняя эти кадры методом «наплыва» следующего изображения на предыдущее, режиссёры НАСА изобразили восход Земли. Илл.13. Весь же «фильм» о восходе Земли над лунным горизонтом смонтирован из четырёх снимков Но зачем потребовалась вся эта процедура с наплывом кадров друг на друга? Не проще ли было снять с соответствующей полки НАСА настоящую киноленту с примерным названием «Восход Земли над лунным горизонтом, снятый астронавтами А-11» и использовать из неё подходящий фрагмент? Скорее всего, не было у НАСА такой киноленты, а были только несколько кадров. Вот и пришлось лепить из них «фильм». А снять несколько кадров для такого мультфильма «Орбитеру» вполне под силу (илл.8). Непрерывный эпизод на 15 секунд Пропагандисты НАСА, по-видимому, понимали, что только мультфильмами от внимательного зрителя не отделаешься. Наверное, поэтому, в фильме [ф2] есть два любопытных и примерно равноценных эпизода восхода: один на 12 секунд, другой на 15 секунд (см. также ролики ив25, ив26). Илл.14. 15 секунд на «киноэпизод» о восходе Земли над лунным горизонтом На илл.14 показаны два стоп-кадра из 15-секундного эпизода

1. Методы и алгоритмы построения элементов систем статистического моделирования

2. Методы и алгоритмы построения элементов систем статистического моделирования

3. Построение изображения плоского контура детали с выполнением сопряжений

4. Изображение личности Наполеона Бонапарта в русской поэзии первой трети XIX в.

5. Практические задачи на вычисление эластичности, построения кривых спроса и предложения, оплата труда, издержки (Контрольная)

6. Нормальные Алгоритмы Маркова. Построение алгоритмов из алгоритмов.
7. Программная реализация алгоритма Дейкстры (построение цепей минимальной длины)
8. Принцип построения высокочастотной части антенно-волноводной системы, с поворотом вектора поляризации

9. Правила построения авиационных тарифов

10. Вычисление термодинамических функций индивидуального вещества H2, расчет константы равновесия реакции 2MgOконд+Сграф - 2Mgконд+СО2. Построение и анализ диаграммы состояния двухкомпонентной системы La—Sb

11. Принцип построения налога на добавленную стоимость

12. Структуры экономического дискурса во французском языке. Роль коннекторов в построении аргументации

13. Национальное самосознание - главный фактор в построении могущественной и процветающей России

14. Построение локальной компьютерной сети масштаба малого предприятия на основе сетевой ОС Linux

15. Построение сети передачи данных

16. Построение verilog-модели ber-тестера для проверки каналов связи телекоммуникационных систем

Лупа с креплением на голову и подсветкой (увеличение: 1,8-х - 4,8-х кратное).
Лупа с креплением на голову, обладающая регулировкой степени увеличения.
378 руб
Раздел: Лупы
Матрас в коляску "Lepre" Luna Lux.
Матрас в коляску Luna Lux - это матрас в коляску с использованием биококоса и натурального латекса. Благодаря кокосовому волокну и
839 руб
Раздел: Подголовники и подушечки
Набор "Скорая помощь".
Набор "Скорая помощь" будет прекрасным подарком для любого ребенка, отлично подойдет для сюжетно-ролевых игр. Выполнен в виде
797 руб
Раздел: Наборы доктора

17. Телекоммуникационные компьютерные сети: эволюция и основные принципы построения

18. Построение систем распознавания образов

19. Комплекс программ построения справочников по формальным языкам

20. Состав и функционирование ИС построенной по принципу "клиент-сервер" для численного обоснования решений

21. Построение функции предшествования по заданной КС-грамматике

22. Построение графика функции различными методами (самостоятельная работа учащихся)
23. Структура исчисления предикатов построение логического вывода
24. Решение задач на построение сечений в многогранниках методом следов

25. Принцип построения и опыт практической реализации экологических информационных систем

26. Построение характеристик непрерывных САУ

27. Расчет тепловой схемы парогенератора ПГВ-1000 с построением диаграмм t-Q, тепловой и гидродинамический расчеты

28. Изучение построения робототехнических комплексов для нанесения лакокрасочных материалов в мебельной промышленности

29. Построение ГМССБ и развитие радиосвязи на морском флоте

30. Проблемы построения искусственного интеллекта

31. Комплексное исследование глобальных экологических проблем: от понятийного аппарата до модельных построений

32. ТИПЫ ОРГАНИЗАЦИЙ, ПОСТРОЕНИЕ ОРГАНИЗАЦИИ

Сумка складная "Mini maxi shopper" (baroque taupe).
В европейских странах люди давно отказались от одноразовых пластиковых пакетов ради сохранения окружающей среды. Так что абсолютно все
550 руб
Раздел: Хозяйственные
Изограф, 0,13 мм.
Чертежный прибор для черчения и рисования на бумаге, ватмане и чертежной пленке. Изограф имеет резервуар для чернил, который легко
1529 руб
Раздел: Циркули, чертежные инструменты
Корзина для игрушек (45x50 см).
Корзина с веселым и ярким дизайном станет отличным украшением интерьера детской. Ребенок с удовольствием сложит игрушки, ведь теперь для
364 руб
Раздел: Корзины, контейнеры для игрушек

33. Овладение методикой построения экономико-математических моделей, решение конкретных задач по стратегическому планированию и прогнозированию

34. Античная программа построения наук

35. Основы построения телекоммуникационных систем

36. Особенности построения текстов Ремона Кено

37. Мастерство в построении сюжета. (По одному из произведений русской драматургии XX века. — А.В.Вампилов. «Утиная охота».)

38. Геометрические построения
39. Построение линии пересечения 2-х конусов и цилиндра
40. Методика обучения математике как учебный предмет. Принципы построения курса математики в начальной школе.

41. Построение управления в современном предприятии

42. Новые требования к построению организаций будущего

43. Построения коллектива с акцентом на решение задач или на поддержание отношений в нем

44. Построенные навечно: основные элементы структуры успешной организации

45. Москва и Московская губерния в годы построения социализма

46. Основные черты построения налоговой системы Франции

47. Построение бетонной плотины

48. Родина, как семья народов: построение тематических циклов занятий для старших дошкольников и младших школьников

Конструктор "Автомастерская".
Конструктор «Автомастерская» от французской компании Djeco – это увлекательная игра на развитие воображения. Смешивая и подбирая различные
2789 руб
Раздел: Деревянные конструкторы
Мешок для обуви "Звездные войны", 33x42 см.
Мешок для обуви. 1 отделение. Размер: стандартный (33x42 см). Материал: полиэстер.
171 руб
Раздел: Сумки для обуви
Тетрадь на резинке "Study Up", А5, 120 листов, клетка, салатовая.
Тетрадь общая на резинке. Формат: А5. Количество листов: 120 в клетку. Бумага: офсет. Цвет обложки: салатовый.
360 руб
Раздел: Прочие

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

50. Речевые построения, выдающие ложь

51. Методологические подходы к построению и объяснению истории психологии: перспективы содержательного синтеза.

52. Кольцевая регуляция и уровни построения движений

53. К построению психофизической феноменологии в психиатрии (нейротрансмиттерная диссоциация и расстройства психики)

54. Цифровая первичная сеть - принципы построения и тенденции развития
55. К построению качественной регрессионной модели этнической идентичности
56. Построение новой железнодорожной линии

57. Построение эффективной системы управления персоналом организации

58. Построение дистанций соревнований

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

60. Философское введение в "Основы построения систем искусственного интеллекта"

61. Эволюция. Этничность. Культура или На пути к построению постнеклассической теории этноса

62. Банковская система. Особенности построения банковской системы в России

63. Бюджетная система России и принципы ее построения

64. Построение функции импорта Швеции

Каталка-трактор с педалями "Turbo-2" с полуприцепом.
Педальная каталка-трактор «Turbo-2» c полуприцепом приводится в движение при помощи цепного механизма. На мини-тракторе установлена
4846 руб
Раздел: Каталки
Набор "Юный конструктор № 1", 137 деталей.
Все детали выполнены из прочного и качественного пластика и соединяются между собой при помощи болтов. Из деталей ребёнок сможет собрать
434 руб
Раздел: Воздушный транспорт
Железная дорога с электровозом, со звуковыми эффектами.
Железная дорога с весёлым скоростным поездом придётся по душе любому мальчишке. В наборе рельсы, электровоз, дополнительные фигурки. При
750 руб
Раздел: На батарейках

65. Построение системы методов управления инвестиционными рисками лизинговой компании

66. Построение экономической модели c использованием симплекс-метода

67. Построение экономической модели c использованием симплекс-метода

68. Финансовая система: сущность, структура, принципы построения

69. Построение 3D-моделей циклических молекул в естественных переменных

70. Особенности построения гидродинамической модели залежи фундамента месторождения Дракон
71. Построение геологической модели и прогнозного разреза
72. Опыт автоматизированного построения границ марок угля с использованием экспертной системы

73. Особенности аналитических задач и построение рядов в правовой статистике

74. Особенности построения ICC-профилей при репродуцировании оригинала флексографским способом

75. Построение диаграмм и графиков на основе электронных таблицах Excel

76. Принципы построения составных сетей

77. Построение диаграмм

78. Построение циклических кодов

79. Изучение принципов построения оперативной памяти

80. Построение локальной вычислительной сети подразделения организации под управлением операционной системы Windows NT

Тетрадь на резинке "Study Up", В5, 120 листов, клетка, розовая.
Тетрадь общая на резинке. Формат: В5. Количество листов: 120 в клетку. Бумага: офсет. Цвет обложки: розовый.
442 руб
Раздел: Прочие
Пластиковое лото. Половинки. Комплект из трех игр.
Набор «Половинки» – это комплект из трёх развивающих игр. В него входит: 9 картонных двухсторонних карт с рисунками, 54 прозрачные
549 руб
Раздел: Лото детское
Рюкзак школьный "Олаф".
Рюкзак школьный отличается ярким дизайном и продуманной конструкцией. Ходить с ним в школу очень приятно. Красочный дизайн с
963 руб
Раздел: Без наполнения

81. Примеры построения АСУ-СВЯЗЬ

82. Построение 3D-моделей нециклических молекул в естественных переменных

83. Концепции построения ERP-систем на предприятии

84. Простейшие приемы построения анимации

85. Построение многооконных приложений для Windows

86. Использование пакета Cold Fusion для MS Windows при построении WWW - интерфейсов к базам данных
87. Технические решения построения городской операторской сети на базе технологии Optical Ethernet
88. Образы рассказчиков в «Декамероне» Боккаччо. Построение новеллы у Боккаччо

89. Построение кубического сплайна функции

90. Гипотетическое построение систем уравнений полевой теории стационарных явлений электромагнетизма

91. Принципы построения преобразователя параметров импеданса с интеллектуальными возможностями

92. Аксиоматическое построение основных уравнений теории реального электромагнитного поля

93. Процессный подход и его роль в построении эффективной компании

94. Построение, разработка версий, планирование расследований.

95. Три фактора построения успешных деловых взаимоотношений

96. Системный подход к построению основных терминов и понятий образования

Средство для чистки плит "Bagi Шуманит. Эконом", 270 грамм.
Средство для чистки плит эффективный препарат для удаления стойких и подгоревших жиров с плит, кастрюль, сковород, раковин,
343 руб
Раздел: Для кухонной техники
Аккумулятор портативный "Молочный заряд", белый.
Ваш смартфон постоянно разряжается в самый ответственный момент? Вы часто выезжаете на несколько дней за город или проводите много времени
432 руб
Раздел: Внешние аккумуляторы
Рюкзак "Мятный узор", 31х42х20 см.
Рюкзак молодежный, два отделения, боковые карманы из сетки, внутренний карман на молнии, внутренний карман-пенал для карандашей,
1945 руб
Раздел: Без наполнения

97. Значение цветовых решений в построении сильного бренда

98. Концепция построения системы управления Московского представительства компании КАМЕЙ

99. Основы построения тарифов имущественного страхования


Поиск Рефератов на сайте za4eti.ru Вы студент, и у Вас нет времени на выполнение письменных работ (рефератов, курсовых и дипломов)? Мы сможем Вам в этом помочь. Возможно, Вам подойдет что-то из ПЕРЕЧНЯ ПРЕДМЕТОВ И ДИСЦИПЛИН, ПО КОТОРЫМ ВЫПОЛНЯЮТСЯ РЕФЕРАТЫ, КУРСОВЫЕ И ДИПЛОМНЫЕ РАБОТЫ. 
Вы можете поискать нужную Вам работу в КОЛЛЕКЦИИ ГОТОВЫХ РЕФЕРАТОВ, КУРСОВЫХ И ДИПЛОМНЫХ РАБОТ, выполненных преподавателями московских ВУЗов за период более чем 10-летней работы. Эти работы Вы можете бесплатно СКАЧАТЬ.