- •Глава 1. Введение в автоматизированное проектирование
- •1.1. Понятие проектирования
- •1.2. Принципы системного подхода
- •1.3. Уровни проектирования
- •1.4. Стадии проектирования
- •1.5. Модели и их параметры в сапр
- •1.6. Проектные процедуры
- •1.7. Жизненный цикл изделий
- •1.8. Структура сапр
- •1.9. Введение в cals-технологии
- •1.10. Этапы проектирования автоматизированных систем
- •Лекция 2. Техническое обеспечение сапр
- •2.1. Требования к техническому обеспечению сапр
- •2.2. Вычислительные системы для сапр
- •2.2.1. Процессоры эвм
- •2.2.2. Память эвм
- •2.2.3. Мониторы
- •2.2.4. Периферийные устройства
- •2.2.5. Шины компьютера
- •2.3. Типы вычислительных машин и систем
- •2.4. Персональный компьютер
- •2.5. Рабочие станции
- •2.6. Архитектуры серверов и суперкомпьютеров
- •2. В.Н. Дацюк, а.А. Букатов, а.И. Жегуло/ методическое пособие по курсу "Многопроцессорные системы и параллельное программирование". -http://rsusu1.Rnd.Runnet.Ru/tutor/method/m1/content.Html
- •2.7. Примеры серверов
- •2.8. Суперкомпьютеры XXI века
- •Лекция 3. Математическое обеспечение анализа проектных решений
- •3.1. Требования к математическим моделям и методам в сапр
- •3.2. Фазовые переменные, компонентные и топологические уравнения
- •3.3. Основные понятия теории графов
- •3.4. Представление топологических уравнений
- •3.5. Особенности эквивалентных схем механических объектов
- •3.6. Методы формирования математических моделей на макроуровне
- •3.7. Выбор методов анализа во временной области
- •3.8. Алгоритм численного интегрирования систем дифференциальных уравнений
- •3.9. Методы решения систем нелинейных алгебраических уравнений
- •3.10. Методы решения систем линейных алгебраических уравнений
- •1. Alglib User Guide. - http://alglib.Sources.Ru/linequations/general/lu.Php. - Проверено 15.12.2009. Лекция 4. Математическое обеспечение анализа проектных решений
- •4.1. Математические модели для анализа на микроуровне
- •4.2. Методы анализа на микроуровне
- •4.3. Метод конечных элементов для анализа механической прочности
- •4.4. Моделирование аналоговых устройств на функциональном уровне
- •4.5. Математические модели дискретных устройств
- •4.6. Методы логического моделирования
- •4.7. Системы массового обслуживания
- •4.8. Аналитические модели смо
- •4.9. Уравнения Колмогорова
- •4.10. Пример аналитической модели
- •4.11. Модель многоканальной смо с отказами
- •4.12. Принципы имитационного моделирования
- •4.13. Событийный метод моделирования
- •4.14. Краткое описание языка gpss
- •1. Томашевский в., Жданова е. Имитационное моделирование в среде gpss. — м.: Бестселлер, 2003.
- •4.15. Сети Петри
- •1. В.Э.Малышкин. Основы параллельных вычислений. -2003 цит сгга, http://www.Ssga.Ru/metodich/paral1/contents.Html
- •4.16. Анализ сетей Петри
- •1. В.Э.Малышкин. Основы параллельных вычислений. -2003 цит сгга, http://www.Ssga.Ru/metodich/paral1/contents.Html Лекция 5. Геометрическое моделирование и машинная графика
- •5.1. Типы геометрических моделей
- •5.2. Методы и алгоритмы компьютерной графики
- •5.3. Программы компьютерной графики
- •5.4. Построение геометрических моделей
- •5.5. Поверхностные модели
- •1. Семенов а.Б. Программирование графических процессоров с использованием Direct3d и hlsl. -http://www.Intuit.Ru/department/graphics/direct3dhlsl/6/1.Html
- •5.7. Графический процессор
- •1. Пахомов с. Революция в мире графических процессоров // КомпьютерПресс, № 12, 2006.
- •5.8. Шейдеры
- •5.9. Геометрические шейдеры
- •5.10. Унифицированный графический процессор
- •1. Пахомов с. Революция в мире графических процессоров // КомпьютерПресс, № 12, 2006.
- •5.11. Примеры графических процессоров
- •Лекция 6. Математическое обеспечение синтеза проектных решений
- •6.1. Критерии оптимальности
- •6.2. Задачи оптимизации с учетом допусков
- •6.3. Классификация методов математического программирования
- •6.4. Методы одномерной оптимизации
- •6.5. Методы безусловной оптимизации
- •6.6. Подходы к решению задач структурного синтеза
- •6.7. Морфологические таблицы
- •6.8. Альтернативные графы
- •Лекция 7.
- •7.1. Интеллектуальные системы
- •7.2. Планирование процессов и распределение ресурсов
- •7.3. Методы локальной оптимизации и поиска с запретами
- •7.4. Методы распространения ограничений
- •7.5. Эволюционные методы
- •7.6. Простой генетический алгоритм
- •7.7. Кроссовер
- •7.8. Метод комбинирования эвристик
- •1. Норенков и.П. Эвристики и их комбинации в генетических методах дискретной оптимизации// Информационные технологии, 1999, № 1.
- •7.9. Примеры применения генетических методов
- •Лекция 8. Автоматизированные системы в промышленности
- •8.1. Системы erp
- •8.2. Стандарт mrp II
- •8.3. Логистические системы
- •8.4. Системы scm
- •8.6. Производственная исполнительная система mes
- •8.7. Автоматизированное управление технологическими процессами
- •8.8. Программирование для станков с чпу
- •8.9. Системы scada
- •8.10. Типовой маршрут проектирования в mcad
- •8.11. Типы сапр в области машиностроения
- •8.12. Основные функции cad-систем
- •8.13. Основные функции cae-систем
- •8.14. Основные функции cam-систем
- •8.15. Графическое ядро
- •Лекция 9.
- •9.1. Структура cad/cam систем
- •9.2. Машиностроительные сапр верхнего уровня
- •9.3. Маршруты проектирования сбис
- •9.4. Схемотехническое проектирование
- •9.5. Модели логических схем цифровой рэа.
- •9.6. Конструкторское проектирование сбис
- •9.7. Проектирование печатных плат
- •9.8. Назначение языка vhdl
- •Лекция10. Методическое и программное обеспечение автоматизированных систем
- •10.1. Типы case-систем
- •10.2. Спецификации проектов программных систем
- •10.3. Методика idef0
- •10.4. Методика idef3
- •10.5. Методика idef1x
- •10.7. Методика проектирования информационных систем на основе uml
- •10.8. Программное обеспечение case-систем
- •10.9. Интегрированные среды разработки приложений
- •Лекция 11. Технологии информационной поддержки этапов жизненного цикла изделий
- •11.1. Обзор cals-стандартов
- •11.2. Структура стандартов step
- •11.4. Интегрированная логистическая поддержка
- •11.5. Интерактивные электронные технические руководства
- •11.6. Стандарт aecma s1000d
- •11.7. Электронная цифровая подпись
- •11.8. Стандарты управления качеством промышленной продукции
- •Лекция 12. Технологии информационной поддержки этапов жизненного цикла изделий
- •12.1. Программное обеспечение cals-технологий
- •12.2. Язык html
- •12.3. Язык xml
- •12.5. Форматирование Web-страниц
- •12.6. Доступ к xml-документам
- •12.7. Мультиагентные системы
- •12.8. Технология soap
- •12.9. Компонентно-ориентированные технологии
5.5. Поверхностные модели
Важной составной частью геометрических моделей является описание поверхностей. Если поверхности детали — плоские грани, то модель может быть выражена достаточно просто определенной информацией о гранях, ребрах, вершинах детали. При этом обычно используется метод конструктивной геометрии. Представление с помощью плоских граней имеет место и в случае более сложных поверхностей, если эти поверхности аппроксимировать множествами плоских участков — полигональными сетками. Тогда можно поверхностную модель задать одной из следующих форм:
модель есть список граней, каждая грань представлена упорядоченным списком вершин (циклом вершин); эта форма характеризуется значительной избыточностью, так как каждая вершина повторяется в нескольких списках.
модель есть список ребер, для каждого ребра заданы инцидентные вершины и грани.
Процесс построения 3D-изображения в виде полигональных сеток можно представить состоящим из трех этапов. На первом этапе поверхность преобразуется в множество многоугольников (полигонов). Далее выполняются геометрические преобразования и установки освещения. На заключительном третьем этапе, так называемом "рендеринг" (rendering), создается двумерное изображение из полученных на предыдущих этапах многоугольников.
Однако аппроксимация полигональными сетками при больших размерах ячеек сетки дает заметные искажения формы, а при малых размерах ячеек оказывается неэффективной по вычислительным затратам. Поэтому более популярны описания неплоских поверхностей кубическими уравнениями в форме Безье или B-сплайнов.
Знакомство с этими формами удобно выполнить, показав их применение для описания геометрических объектов первого уровня — пространственных кривых.
Примечание 1
Геометрическими объектами нулевого, первого и второго уровней называют соответственно точки, кривые, поверхности.
В подсистемах графики и геометрического моделирования используются параметрически задаваемые кубические кривые
(1)
где
.
Такими кривыми описывают сегменты
аппроксимируемой кривой, т.е.
аппроксимируемую кривую разбивают на
сегменты и каждый сегмент аппроксимируют
уравнениями (1).
Применение кубических кривых обеспечивает (соответствующим выбором четырех коэффициентов в каждом из трех уравнений) выполнение четырех условий сопряжения сегментов. В случае модели Безье этими условиями являются прохождение кривой сегмента через две заданные концевые точки и равенство в этих точках касательных векторов соседних сегментов. В случае B-сплайнов выполняются условия непрерывности касательного вектора и кривизны (т.е. первой и второй производных) в концевых точках сегментов. Использование сплайнов обеспечивает высокую степень "гладкости" кривой, хотя прохождение аппроксимирующей кривой через заданные точки здесь не обеспечивается. Применение полиномов выше третьей степени не рекомендуется, так как велика вероятность появления "волнистости".
В случае формы
Безье коэффициенты в (1) определяются,
во-первых, подстановкой в (1) значений
и
и
координат заданных концевых точек
и
соответственно,
во-вторых, подстановкой в выражения
производных
тех же значений
и
и
координат точек
и
,
задающих направления касательных
векторов (рис. 1). В результате для
формы Безье получаем
(2)
где
—
вектор-строка, матрица
представлена
в табл. 1,
—
вектор координат
точек
,
,
и
,
аналогично
,
—
векторы координат
,
тех
же точек.
Таблица 1
-1 |
3 |
-3 |
1 |
3 |
-6 |
3 |
0 |
-3 |
3 |
0 |
0 |
1 |
0 |
0 |
0 |
|
Рис. 1. Кривая Безье
В случае B-сплайнов
аппроксимируемая кривая делится на
участков,
выделяемых последовательными точками
.
Участок между парой соседних точек
и
аппроксимируется
B-сплайном, построенным с использованием
четырех точек
.
B-сплайн на участке
может
быть представлен выражениями, аналогичными
(2),
для которых матрица имеет иной вид и представлена в табл. 2, а векторы , , содержат соответствующие координаты точек .
Примечание 2
Покажем, что в
точках сопряжения для первой и второй
производных аппроксимирующего выражения
выполняются условия непрерывности, что
требуется по определению B-сплайна.
Обозначим участок аппроксимирующего
B-сплайна, соответствующий участку
исходной
кривой, через
.
Тогда для этого участка и координаты х
в точке сопряжения
имеем
и
Для участка
в
той же точке
имеем
и
т.е. равенство
производных в точке сопряжения на
соседних участках подтверждает
непрерывность касательного вектора и
кривизны. Естественно, что значение
координаты
точки
аппроксимирующей
кривой на участке
равно значению
,
подсчитанному для той же точки на участке
,
но значения координат узловых точек
и
аппроксимирующей
и аппроксимируемой кривых не совпадают.
Таблица 2
-1/6 |
1/2 |
-1/2 |
1/6 |
1/2 |
-1 |
1/2 |
0 |
-1/2 |
0 |
1/2 |
0 |
1/6 |
2/3 |
1/6 |
0 |
Аналогично можно получить выражения для форм Безье и B-сплайнов применительно к поверхностям с учетом того, что вместо (1) используются кубические зависимости от двух переменных.
5.6. DirectX
Microsoft DirectX — это графический интерфейс прикладного программирования (Application Programming Interface, API). До появления API каждый производитель графических процессоров использовал собственный механизм общения с приложением, и разработчикам приложений приходилось писать отдельный код для каждого графического процессора, который они хотели поддержать. Поэтому для каждого приложения указывалось, какие именно видеокарты оно поддерживает. Чтобы решить проблему совместимости разных прикладных программ с видеокартами, был выполнена унификация интерфейсов - разработан специальный графический API.
Исторически существует два типа API: Microsoft DirectX и OpenGL.
Стандарт DirectX включает API для звука, музыки, устройств ввода и т.д. За 3D-графику в DirectX отвечает API Direct3D, и когда говорят о видеокартах, то имеют в виду именно его (поэтому понятия DirectX и Direct3D взаимозаменяемы).
Примеры функций в Direct3D: масштабирование, перемещение и вращение объектов, представленных матрицами; мировое преобразование (трансформации координат объектов, заданных в локальных системах, в мировую систему координрат); проецирование (перспективное и ортогональное); инициализация и очистка z-буфера; переход в систему координат камеры и др.
Стандарт DirectX постоянно обновляется. В настоящее время большинство игр поддерживает DirectX 7.0, DirectX 8.0 и DirectX 9.0. Последняя версия DirectX — это DirectX 9.0с, а с выходом операционной системы Windows Vista появится и DirectX 10.
Каждая версия DirectX поддерживает определенные версии шейдеров - программ обработки вершин (Vertex Shader) и пикселов (Pixel Shader). Эти версии шейдеров называются Shader Model. К примеру, DirectX 8 поддерживает Pixel Shader от 1.0 до 1.3 и Vertex Shader 1.0, а DirectX 8.1 — Pixel Shader 1.4 и Vertex Shader 1.1.
В DirectX 9 поддерживаются Pixel Shader 2.0 и Vertex Shader 2.0, а в DirectX 9.0c — Pixel Shader 3.0.
Как уже отмечалось, первый графический процессор с поддержкой API DirectX 10 — это NVIDIA GeForce 8800.
Список литературы
