Первый урок, кстати, самый простой в этой книге. Может быть, задача переворачивания страницы трехмерной книги покажется вам банальной и даже скучной. Я думал точно так же, пока не предложил это задание десяти студентам университета в классе 3D анимации. Я дал им 30 минут на то, чтобы смоделировать лист бумаги и перевернуть его справа налево.
Некоторые студенты уже занимались трехмерной анимацией в свободное время, другие подрабатывали Веб-дизайном. Все они были хорошо знакомы с интерфейсом Мауа. Однако через полчаса никто из них не смог сконструировать изгибающуюся в процессе перелистывания страницу книги.
Лучшим результатом была выпуклая страница, которая проникала в корешок книги, поскольку ее кривизна не менялась во время переворачивания. Некоторые студенты пытались решить проблему с помощью Soft Body Dynamics (Динамики Мягкого Тела), один студент даже использовал Maya Cloth (Maya Ткани); они просто не смогли справиться с задачей, используя базовые приемы моделирования.
Поэтому, если вы все еще считаете этот урок простым, возьмите и сконструируйте страницу на вашем компьютере. И не переворачивайте страницу этой книги, пока не перевернете трехмерную страницу в Мауа.
Для выполнения этой задачи вам не нужно иметь дело со скучным и утомительным выделением и перемещением CV (контрольных вершин) кривых. Не потребуется также Soft Body Dynamics (Динамика Мягкого Тела). Существует несколько возможных решений этой задачи, как и любой другой, но только некоторые из них изящно просты. Для нахождения этого решения сделайте шаг назад. Не думайте о моделировании страницы, сконцентрируйтесь на ядре проблемы, которым является анимация, а не моделирование.
Эта анимация заключается в повороте страницы вокруг центральной оси книги, которая соединяет страницы между собой. Если вы начнете с использования, скажем, обычной NURBS-плоскости (сокр. от non-uniform, rational B-spline - неоднородный рациональный би-сплайн (геометрический примитив, широко используемый для описания кривых поверхностей) и попробуете повернуть ее вокруг оси, вам придется иметь дело с контрольными вершинами, для получения нужного изгиба страницы. Я не возражаю против такого способа. Однако знайте, что контрольные точки могут быть использованы только на завершающем этапе моделирования, и, как правило, для получения мелких изменений, но не в основных процедурах. Поэтому выполнение задачи необходимо начинать не с плоскости, а с кривых. Раз уж мы имеем дело с поворотом вокруг оси, давайте создадим 3 кривые, параллельные ей.
В мое намерение входило набросать очерк по теории искусства, в частности искусства фигурного изображения и специально фигурной живописи. Я выбрал примеры из итальянского Возрождения не только потому, что я близко знаком с искусством Италии, но также и потому, что Италия — единственная страна, где искусство фигурного изображения прошло через все стадии своего развития: от подсознательного до утонченного, от почти варварского до высоко интеллектуального и обратно к варварскому, только прикрытому потускневшей, превращенной в лохмотья одеждой минувшего великого века.
Я уже говорил, из чего складываются зрительные и законченные образы фигурной живописи. Чтобы проверить теорию, мы должны посмотреть — объясняет ли она что-либо, в противном случае она не имеет права на существование.
Было бы не лишним еще раз изложить ее. Вкратце она сводится к следующему: все виды искусства покоятся на идеальных или воображаемых представлениях, не существенно, каким путем выраженных, но выраженных так, чтобы непосредственно повышать нашу жизнеспособность. Вопрос, следовательно, в том, что именно в данном искусстве способствует повышению нашей жизнеспособности? Ответы будут столь же отличны друг от друга, как отличается сущность одного вида искусства от другого, как различны средства их выражения и воображаемые представления, составляющие содержание искусства.
LightWave - это мощная программа для 3D-моделирования, анимации и визуализации. Данный продукт может применяться в самых разнообразных областях: от создания высококачественных изображений для полиграфии до выполнения всевозможных спецэффектов в кино и телевидении. Используя широчайший набор инструментов моделирования и анимации, предоставляемых пакетом LightWave, можно в мельчайших подробностях воссоздать тонущий «Титаник» или оживить героя видеоигры. Непревзойденное фотографическое качество получаемых изображений многие считают промышленным стандартом.
Несмотря на то что LightWave - очень мощный программный продукт, он сравнительно прост в изучении и, кроме того, легко и быстро настраивается. Предусмотрены варианты конфигурации программы для начинающих и опытных пользователей. В главах 3-5 описывается Modeler (Редактор моделей), предназначенный для моделирования объектов; в главах 6-13 рассматривается Layout (Редактор сцены), который используется для создания анимации, настройки внешнего вида моделей, освещения, композиции и визуализации сцены. Тщательно подобранные примеры позволяют быстро освоить принципы работы одного из самых популярных программных продуктов трехмерного моделирования. Читайте внимательно, и, возможно, в один прекрасный день мы увидим на экране и вашу работу.
Во многих случаях искусство требует трансцендентных способов выражения. Оно имеет внутреннюю гармонию. Для лучшего понимания задач, возникающих в процессе создания компьютерной графики, нужно осознать, с чем вы работаете и к чему вы стремитесь.
Приступив к изучению Maya, вы начинаете знакомство с новым языком, с новым средством общения. Помните, что техника, которую вы получаете в руки, является лишь средством конечного выражения вашей фантазии. Поэтому насладитесь процессом работы.
Цифровые студии нанимают в первую очередь профессиональных художников, то есть людей, имеющих опыт в традиционных искусствах, например рисовании, живописи, фотографии или скульптуре. Соответственно, изучение компьютерной графики следует начать с обзора ключевых принципов искусства. Именно этому и посвящена данная глава. Всегда следует помнить, что компьютер, с которым вы работаете, — не более чем инструмент.
В последние десятилетия интерес к компьютерной графике значительно возрос. В немалой степени это является следствием появления на рынке мощных компьютеров по относительно низким ценам. Начиная с конца 90-х годов оборудование для создания анимации стало доступным для индивидуальных пользователей.
В результате многие художники добавили в сферу своих интересов компьютерную графику. Но перед тем как приступить к изучению конкретных инструментов, необходимо познакомиться с фундаментальными понятиями из этой области.
Термин компьютерная графика относится к любому изображению или набору изображений, полученных с помощью компьютера. Впрочем, данное словосочетание в этой книге будем применять в основном к трехмерным сценам, оставляя за кадром двумерные рисунки, получаемые в таких графических редакторах, как Photoshop или Paint. Большинство программ, предназначенных для производства двумерной графики, создают растровые изображения, то есть итоговый рисунок состоит из маленьких квадратиков, называемых пикселами. Приложения же для производства SD-графики создают векторные изображения, представляющие собой набор математических кривых. Это более мощный и действенный метод. Более подробную информацию о векторных и растровых изображениях вы получите чуть позднее.
Для пользователей, знакомых с такими приложениями, как Adobe Illustrator или Macromedia Flash, не является новостью тот факт, что эти программы также создают векторные изображения. В отличие от них, Maya и другие приложения для работы с SD-графикой умеют вычислять третье измерение, то есть добавлять сцене глубину. Объекты больше не рисуются на плоскости — они распределяются в пространстве. Это крайне усложняет работу художников и в корне отличается от того, с чем приходится сталкиваться при создании двумерных изображений.
Очевидно, что BGP-маршрутизаторы, находящиеся в одной АС, также должны обмениваться между собой маршрутной информацией. Это необходимо для согласованного отбора внешних маршрутов в соответствии с политикой данной АС и для передачи транзитных маршрутов через автономную систему. Такой обмен производится также по протоколу BGP, который в этом случае часто называется IBGP (Internal BGP), (соответственно, протокол обмена маршрутами между маршрутзаторами разных АС обозначается EBGP –External BGP).
Отличие IBGP от EBGP состоит в том, что при объявлении маршрута BGP-соседу, находящемуся в той же самой АС, маршрутизатор не должен добавлять в AS_PATH номер своей автономной системы. Действительно, если номер АС будет добавлен, и сосед анонсирует этот маршрут далее (опять с добавлением номера той же АС), то одна и та же АС будет перечислена AS_PATH дважды, что расценивается как цикл.
Это очевидное правило влечет за собой интересное следствие: чтобы не возникло циклов, маршрутизатор не может анонсировать по IBGP маршрут, полученный также по IBGP, поскольку нет способов определить зацикливание при объявлении BGP-маршрутов внутри одной АС.
Программа Project StudioCS Электрика предназначена для создания проектов внутреннего электрического освещения зданий. Она предоставляет возможность оформлять выпускать проектную документацию с использованием баз графических обозначений и параметров электрооборудования.
Программа способна рассчитывать мощности, токи и потери напряжения в электросетях, что заметно облегчает упрощает подбор характеристик питающего оборудования и кабелей. Она аАвтоматически формирует спецификацию оборудования, изделий и материалов.
Исходные данные для Project StudioCS Электрика: Исходными данными программы является подоснова здания, выполненная в среде AutoCAD.
Выходные данные:
лист плана здания с обозначениями установленного оборудования и трасс, выносными обозначениями и таблицами;
ведомость основных комплектов рабочих чертежей;
ведомость рабочих чертежей основного комплекта;
ведомость ссылочных и прилагаемых документов;
общие указания и спецификация оборудования, изделий и материалов.
Выходными данными являются: лист плана здания с обозначениями установленного оборудования и трасс, выносными обозначениями и таблицами; ведомость основных комплектов рабочих чертежей, ведомость рабочих чертежей основного комплекта, ведомость ссылочных и прилагаемых документов, общие указания и спецификация оборудования, изделий и материалов.
Основы проектирования систем искусственного интеллекта
Термин интеллект (intelligence) происходит от латинского intellectus — что означает ум, рассудок, разум; мыслительные способности человека. Соответственно искусственный интеллект (artificial intelligence) — ИИ (AI) обычно толкуется как свойство автоматических систем брать на себя отдельные функции интеллекта человека, например, выбирать и принимать оптимальные решения на основе ранее полученного опыта и рационального анализа внешних воздействий.
Мы, в нашем курсе, интеллектом будем называть способность мозга решать (интеллектуальные) задачи путем приобретения, запоминания и целенаправленного преобразования знаний в процессе обучения на опыте и адаптации к разнообразным обстоятельствам.
В этом определении под термином "знания" подразумевается не только ту информацию, которая поступает в мозг через органы чувств. Такого типа знания чрезвычайно важны, но недостаточны для интеллектуальной деятельности. Дело в том, что объекты окружающей нас среды обладают свойством не только воздействовать на органы чувств, но и находиться друг с другом в определенных отношениях. Ясно, что для того, чтобы осуществлять в окружающей среде интеллектуальную деятельность (или хотя бы просто существовать), необходимо иметь в системе знаний модель этого мира. В этой информационной модели окружающей среды реальные объекты, их свойства и отношения между ними не только отображаются и запоминаются, но и, как это отмечено в данном определении интеллекта, могут мысленно "целенаправленно преобразовываться". При этом существенно то, что формирование модели внешней среды происходит "в процессе обучения на опыте и адаптации к разнообразным обстоятельствам".
NetWare Peripheral Architecture (NWPA) - Расширение диспетчера носителей данных NetWare 4 (встроенная в операционную систему NetWare база данных, предназначенная для управления устройствами хранения данных и носителями данных).
NWPA обеспечивает широкую и гибкую поддержку драйверов для хост-адаптеров и устройств хранения данных.
NWPA разделяет драйверы поддержки NetWare на два класса: HAM и CDM. HAM управляет аппаратным обеспечением адаптера хоста. CDM управляет устройствами хранения данных и устройствами автоматической смены носителей, подключенными к хост-адаптеру.
При использовании соответствующих адаптеров и устройств вы можете загрузить файлы .HAM и .CDM вместо драйверов .DSK. Интегрированная архитектура HAM и CDM может обеспечить лучшую производительность, особенно при работе с накопителями CD-ROM и магнито-оптическими дисками.
Сначала краткое введение в этот туториал. Win32asm не очень популярный язык программирования, и есть только несколько (хороших) туториалов. Большинство туториалов сосредотачивается на программировании win32 (т.е. Win API, использование стандартных windows методов), а не программирование на самом ассемблере, используя коды операций, регистры и т.д. Хотя Вы можете найти это и в других туториалах, они обычно объясняют программирование под DOS. Они, конечно, помогут вам изучить ассемблер, но для программирования под windows, вам не нужно знать о DOS прерываниях и о функциях ввода\вывода в порты. В windows, есть функции Win API, которые вы можете использовать в своих программах, но об этом позже. Цель этого туториала состоит в том, чтобы объяснить, как программировать на ассемблере под win32.
Редактор P-CAD PCB может запускаться автономно и позволяет разместить модулл на выбранном монтажно—коммутационном поле и проводить ручную, полуавтоматическую и автоматическую трассировку проводников. Если P-CAD PCB вызывается из редактора P-CAD Schematic, то автоматически составляется список соединений схемы и на поле ПП переносятся изображения корпусов компонентов с указанием линий электрических соединений между их выводами. Эта операция называется упаковкой схемы на печатную плату. Затем вычерчивается контур ПП, на нем размещаются компоненты и, наконец, производится трассировка проводников. Применение шрифтов True Type позволяет использовать на схеме и ПП надписи на русском языке.
В настоящее время пользователю предлагается широчайший выбор различных менеджеров окон для X Window. Среди самых популярных можно отменить fvwm, fvwm2, kwm (Как менеджер, входящий в KDE), fvwm95, afterstep, icewm, qvwm, enligment, mwm.
При написании данного документа я не преследовал цели как-то сравнить между собой эти менеджеры окон или показать преимущества fvwm95 перед другими. Я решил просто описать возможности fvwm95, его основные черты и дать понятие: что такое менеджер окон вообще. Также здесь не дается никаких готовых примеров по настройке или каких-либо руководств. Информацию о том как все это сделать можно почерпнуть из документации к fvwm95, тем более, что большая ее часть переведена на русский язык. Тем не менее, я надеюсь, что данный труд заинтересует тех людей, которые стоят сейчас перед выбором менеджера окон и они посветят fvwm95 некоторую толику времени и внимания, которые он несомненно заслуживает.
Ада 83 это язык программирования, разработанный в соответствии с так называемыми стилмановскими требованиями, определенными МО США. Более того, эти требования определили язык с мощными выразительными возможностями, пригодный для широкого класса задач. Вследствие этого языку Ада присущи как свойства классических языков, подобных языку Паскаль, так и свойства, характерные для специализированных языков. Таким образом, этот язык является современным алгоритмическим языком с традиционными управляющими структурами и средствами определения типов и подпрограмм. Он также удовлетворяет требованию модульности; данные, типы и подпрограммы могут образовывать пакеты. Модульность понимается и в физическом смысле, что обеспечивается раздельной компиляцией модулей.
В дополнение к указанному язык обеспечивает программирование задач реального времени с возможностями моделирования параллельных задач и обработки исключений. Он пригоден также для системного программирования; это требует прецизионного управления представлением данных и доступа к зависимым от системы параметрам. Наконец, в языке определены пользовательский и машинный уровни ввода-вывода.
Заканчивается XX век. Невольно ожидаешь, что в новом веке жизнь тоже будет новой, не такой, как сейчас. Если есть желание что-то изменить, начать новую жизнь, то когда, как не на рубеже веков, самое лучшее время для этого. И еще тянет оглянутся назад, на прожитое, осмыслить так быстро промелькнувшие события.
Даже на фоне бурных последних десятилетий прогресс в вычислительной технике поражает своей стремительностью. 15 лет назад я работал в крупной программистской конторе, и несколько сот человек трудились вокруг и около вершины советской вычтехники - многопроцессорной ЭВМ "Эльбрус" с '8МБ' памяти и '~1' млн. операций в сек., занимавшей специально построенное здание. Колонны шкафов с аппаратурой, гудящие за стеклянными стенами дисководы, длинные ряды дисплеев были как верхушка айсберга. Охлажение, вентиляцию и электропитание обеспечивали цеха размером с небольшой заводик. Оживляла эту гору железа и проводов вполне рабочая многопользовательская ОС (Операционная Система) и инструментальная среда для разработки программ.
Автоматизация приложений Microsoft Office в примерах
Автоматизация - это одна из возможностей, предоставляемых технологией Microsoft COM (Component Object Model). Не вдаваясь в подробности реализации этой технологии, заметим, что она используется приложениями (называемыми COM-серверами) для предоставления доступа к их объектам, а также к свойствам и методам этих объектов другим приложениям (называемым COM-клиентами), каковыми могут быть и средства разработки. Например, текстовый процессор, будучи COM-сервером, может предоставлять другим приложениям доступ к документу, абзацу, закладке с помощью соответствующих объектов. Для именования (и опознания) COM-серверов обычно используются специальные строковые обозначения - программные идентификаторы (Programmatic Identifier, ProgID). Они нужны для того, чтобы операционная система могла с помощью этих идентификаторов определить, в каком именно каталоге (или на каком компьютере локальной сети, если используется тот или иной способ удаленного доступа к серверу) расположен исполняемый файл сервера автоматизации, и запустить его на выполнение. О том, какие именно программные идентификаторы применяются для того или иного приложения Microsoft Office, будет сказано в разделах, посвященных этим приложениям.