![]() |
Главная Случайная страница Контакты | Мы поможем в написании вашей работы! | |
|
В восьмибитовом режиме каждому из 256 кодов поставлен в соответствие определенный оттенок. Часто бывает необходимо переопределить набор оттенков (стандартный набор неудобен).
Каждый оттенок задается тремя 6-битовыми значесниями, определяющими интенсивности красного, зеленого и синего.
Перезапись таблицы оттенков выполняется вызовом прерывания 10h с номером функции 1012h. В регистр BX нужно записать 0, в регистр CX записать 256, в пару регистров ES:DX - указатель на начало таблицы размером 3*256 байтов, где в каждой группе из трех байтов записаны (побайтно) значения интенсивностей красного, синего и зеленого (могут принимать значения только от 0 до 63).
Пример:
mov AX,DATASEG
mov ES,AX
mov DX, offset ColorTable
mov AX,1012
mov BX,0
mov CX,256
int 10h
ЗАКРАСКА МНОГОУГОЛЬНИКОВ
Проблема закраски многоугольников возникает в двух основных случаях:
- в двумерной графике - при рисовании многоугольников в графических редакторах;
- в трехмерной графике - при отображении на экране какой-либо плоской поверхности.
Наиболее эффективным (быстрым) способом закраски (заливки) многоугольника является построчный вывод изображения:
- если многоугольник невыпуклый, его разделяют на несколько треугольников или выпуклых многоугольников;
- определяют вершины выпуклого многоугольника, имеющие минимальную и максимальную координаты по Y (верхнюю и нижнюю вершины);
- сканируют многоугольник построчно, определяя начальную и конечную координаты по X, для чего (используя алгоритм Брезенхема) просчитывают координаты всех точек ребер многоугольника;
- используя массив начальных и конечных точек (XB[i],XE[i]), выводят многоугольник построчно в видеопамять.
На самом деле, таким способом можно строить не только выпуклые многоугольники. Важно только, чтобы любую строку пересекало ровно два ребра многоугольника.
При выводе трехмерной фигуры с плоскими гранями ее проекция на экран будет состоять из ряда многоугольников. Однако на экране видны не все грани фигуры - перед выводом на экран необходимо тем или иным способом удалить невидимые поверхности, для чего существуют специальные алгоритмы. Для каждой грани необходимо также вычислить интенсивность цвета (сумму интенсивностей отраженного и рассеянного света) в зависимости от расположения источников света.
При работе с кривыми поверхностями их также представляют в виде многоугольников (обычно - треугольников), однако таких элементов для достаточно точной аппроксимации нужно много и приходится использовать алгоритмы сглаживания, что сильно замедляет вычисления - на каждую точку поверхности приходится несколько математических операций. В настоящее время даже графические станции не позволяют в реальном времени изображать движение сложного объекта в реальном мире.
ПРИКЛАДНОЕ ПРОГРАММИРОВАНИЕ В ТЕХНИЧЕСКИХ СИСТЕМАХ
ЛЕКЦИЯ N 11
ИМИТАЦИОННОЕ МОДЕЛИРОВАНИЕ
1. Что такое модель?
Модель - это нечто, чем можно заменить физический объект в процессе эксперимента.
2. Зачем нужна модель?
Экспериментировать с физическим объектом может быть дорого, долго, неудобно или опасно.
3. Зачем нужно имитационное моделирование?
Когда задача имеет слишком большую размерность или не поддается решению в явном (аналитическом) виде по каким-то другим причинам, используют иммитационное моделирование.
Управление в современном мире становится все более трудным делом, поскольку организационная структура нашего общества усложняется. Эта сложность объясняется характером взаимоотношений между различными элементами наших организаций и физическими системами, с которыми они взаимодействуют. Хотя эта сложность существовала давно, мы только сейчас начинаем понимать ее значение. Теперь мы сознаем, что изменение одной из характеристик системы может легко привести к изменениям или создать потребность в изменениях в других частях системы. В связи с этим получила развитие методология системного анализа ("исследование операций", "теория управления"), которая была призвана помочь руководителям и инженерам изучать и осмысливать последствия таких изменений. В частности, с появлением электронных вычислительных машин одним из наиболее важных и полезных орудий анализа структуры сложных процессов и систем стало имитационное моделирование. Имитировать, значит "вообразить, постичь суть явления, не прибегая к экспериментам на реальном объекте".
По существу, каждая модель есть форма имитации. Имитационное моделирование является широким и недостаточно четко определенным понятием, имеющим очень большое значение для лиц, ответственных за проектирование и функционирование систем.
Подобно всем мощным средствам, существенно зависящим от искусства их применения, имитационное моделирование способно дать либо очень хорошие, либо очень плохие результаты. Оно может либо пролить свет на решение проблемы, либо ввести в заблуждение. Поэтому важно, чтобы руководитель или тот, кто принимает решения и будет пользоваться результатами моделирования, представлял себе
смысл вводимых допущений, сильные и слабые стороны метода, его
преимущества и тонкости. Подлинное умение пользоваться техникой
имитационного моделирования можно приобрести лишь на опыте.
Определение:
Имитационное моделирование есть процесс конструирования модели реальной системы и постановки экспериментов на этой модели с целью либо понять поведение системы, либо оценить (в рамках ограничений, накладываемых некоторым критерием или совокупностью критериев) различные стратегии, обеспечивающие функционирование данной системы.
Таким образом, процесс имитационного моделирования мы понимаем как процесс, включающий и конструирование модели, и аналитическое применение модели для изучения некоторой проблемы. Под моделью реальной системы мы понимаем представление группы объектов или идей в некоторой форме, отличной от их реального воплощения. Термин "реальный" используется в смысле "существующий или способный принять одну из форм существования". Системы, существующие еще только на бумаге или находящиеся в стадии планирования, могут моделироваться так же, как и действующие системы.
Согласно нашему определению, термин имитационное моделирование может также охватывать стохастические модели и эксперименты с использованием метода Монте-Карло. Иными словами, входы модели и функциональные соотношения между ними могут содержать, а могут и не содержать элемент случайности, подчиняющийся вероятностным законам. Более того, мы не ограничиваем наше определение имитационного моделирования лишь экспериментами, проводимыми с помощью машинных моделей. Много полезных видов имитационного моделирования может быть осуществлено всего лишь при помощи карандаша и листа бумаги.
Имитационное моделирование является экспериментальной и прикладной методологией, имеющей целью:
- описать поведение систем;
- построить теории и гипотезы, которые могут объяснить наблюдаемое поведение;
- использовать эти теории для предсказания будущего поведения системы, т.е. тех воздействий, которые могут быть вызваны изменениями в системе или изменениями способов ее функционирования.
В отличие от большинства технических методов, которые могут быть классифицированы в соответствии с научными дисциплинами, в которые они уходят своими корнями (например, с физикой или химией), имитационное моделирование применимо в любой отрасли науки.
Для моделирования системы нам необходимо поставить искусственный эксперимент, отражающий основные условия моделируемой ситуации. Для этого мы должны придумать способ имитации искусственной последовательности происходящих в системе событий.
Модель является представлением объекта, системы или понятия (идеи) в некоторой форме, отличной от формы их реального существования. Модель служит обычно средством, помогающим нам в объяснении, понимании или совершенствовании системы. Модель какого-либо объекта может быть или точной копией этого объекта (хотя и выполненной из другого материала и в другом масштабе), или отображать некоторые характерные свойства объекта в абстрактной форме.
Дата публикования: 2014-12-08; Прочитано: 290 | Нарушение авторского права страницы | Мы поможем в написании вашей работы!