RUSSIAN

САПР на базе AutoCAD

Book information

Publisher
БХВ-Петербург
Year
2004
ISBN
5941573448
Language
russian
Format
PDF
Filesize
17 MB (17899098 bytes)
Series
Мастер
Pages
1168\1167
Time added
2021-12-12 03:08:35

Description

В книге, основанной на собственном опыте авторов, их многочисленных ошибках и находках, раскрывается технология создания комплексной САПР, предназначенной для разработки различных чертежей — от идеи и концепции до выпуска продукта в свет. Разбирается, как и что можно и нужно делать без программирования, какие инструменты разработчика в системе AutoCAD (AutoLISP, Visual LISP, ObjectARX, VBA, Delphi) могут быть использованы, вырабатываются рациональные приемы программирования. Приводятся примеры прикладных программ различного назначения для конечных пользователей и для разработчиков САПР. Рассматриваются элементы документооборота и сочетания геоинформационных технологий с автоматизированным проектированием. Особое внимание уделяется нетрадиционным для AutoCAD технологиям — Delphi, COM-серверам, XML-меню. Основной упор сделан на то, чтобы показать, как это делается практически. Содержание Введение Особенности книги Для кого предназначена эта книга Структура книги Предупреждения Об авторах ЧАСТЬ I. РАЗРАБОТКА КОНЦЕПЦИИ САПР Глава 1. Подготовка к разработке Требуется ли техническое задание Что нужно знать об авторских правах Как собрать команду разработчиков Как организовать работу над проектом Хранение информации Документирование работ Планирование Программирование Как строить отношения с руководителями Как нормировать разработку программных средств Пример норм времени на разработку программ Пример расчета трудозатрат Как определить стоимость работы Глава 2. Анализ и постановка задачи Какие САПР существуют Какая САПР нам нужна Какие разделы проектов мы будем автоматизировать Кто будет пользователем нашей системы Какие версии Windows и AutoCAD мы будем использовать Как узнать, что требуется пользователям для работы с AutoCAD Анализ проектов Общие данные по рабочим чертежам Планы зданий Трубопроводы и проводники Схемы систем Рабочее и монтажное проектирование Генеральные планы и наружные сети Топографические планы Условные обозначения в топографии и на генпланах Планы коммуникаций Профили Схемы, узлы, разрезы Изучение специфики работы в AutoCAD Классификация пользователей "Чайники" "Тетки" "Обезьяна с гранатой" "Нормальные пользователи" "Профи" "Ламеры" "Крутые" Как должна работать наша система Просто, это как? Удобно, это как? Надежно, это как? Чем наша система должна отличаться от других Какие задачи должна решать наша система Составление перечня общих задач Составление перечня специальных задач Как превратить специальные задачи в общие Как определить методы решения задач Как придумать "имя собственное" для нашей системы Превращение "нашей системы" в "ruCAD" Логотип Стадийность разработки Техническое задание Эскизный проект Технический проект Рабочий проект Внедрение Подготовка окончательного текста технического задания Титульная часть Информационная часть Наименование Область применения Основание для разработки Назначение разработки Заказчик Исполнитель Технические требования к программному изделию Требования к функциональным характеристикам Требования к надежности Условия эксплуатации Требования к составу и параметрам технических средств Требования к информационной и программной совместимости Требования к маркировке и упаковке Требования к транспортированию и хранению Специальные требования Технико-экономические показатели Стадии и этапы разработки Порядок контроля и приемки Приложения Подписи и согласования Глава 3. Формирование базовых принципов Как запускать AutoCAD Как использовать шаблоны рисунков Стандарты О соответствии чертежей на бумаге стандартам СПДС Форматы и размеры листа Вид основной надписи Начертание и размер надписей Ширина линий Избыточная детализация Стандартизация приемов работы с AutoCAD Стандарт приемов работы ruCAD для строительного проектирования Дополнительные комментарии к положениям стандарта Масштаб рисунка Управление шириной линий Как учитывать работу в пространствах листа и модели Нанесение размеров Как сохранять и восстанавливать настройки ruCAD Что хранить в настройках ruCAD О специальных папках Windows Где можно хранить настройки Системный реестр Домашний каталог пользователя Общий каталог пользователей Где мы будем хранить настройки О временных файлах Как сохранять и читать настройки INI-файлы Использование XML Политика работы с пользователями в ruCAD Как организовать систему папок и документов Корневой каталог системы Соглашение об именах файлов Каталоги AutoCAD Каталог Bin Каталог Temp Каталог Source Каталог Samples Каталог All Users Каталог Current User Каталог Application Data Регистрация каталогов Какие программы потребуются для реализации базовых принципов Программа-стартер ARX-библиотека COM-серверы LISP-библиотеки Глава 4. Миграция из ранних версий AutoCAD Как осуществлять переход под Windows Миграция приложений, написанных на AutoLISP Миграция внешних приложений, работающих в DOS Миграция библиотек блоков Шрифты Штриховки и типы линий Файл acad.pgp Меню Базы данных Как выполнять перекодировку рисунков Файлы AutoCAD R10 Файлы AutoCAD R12 Что придумано Autodesk Утилита Amethist CAD Converter Какие изменения требуется вносить в программы Как учитывать особенности локализованных версий AutoCAD Как использовать Migration Assistance Переход на работу под AutoCAD 2004 Учет особенностей AutoCAD 2004 Новинки AutoCAD 2004 О совместимости приложений Не выбрасывайте старую систему AutoCAD Какие программы требуется разработать нам Глава 5. Итоги части I ЧАСТЬ II. АДАПТАЦИЯ AUTOCAD БЕЗ ПРОГРАММИРОВАНИЯ Глава 6. Использование блоков Какие виды блоков требуется использовать Блоки-чертежи Блоки-изделия Единичные блоки Блоки-символы Блоки-таблицы Какие блоки нам не нужны в системе Как правильно создавать блоки Как присваивать имена блокам Как устанавливать цвет и слой примитивам, входящим в блок Как назначать ширину, тип и вес линий Как устанавливать точку вставки блока Как правильно включать в блоки атрибуты Как хранить блоки в каталогах ruCAD Как формировать библиотеки блоков Какие программы потребуются для работы с блоками Глава 7. Использование штриховок и типов линий Средства для работы со штриховками Средства для работы с типами линий Как создавать "лохматые" линии Как создавать линии с текстовыми символами Особенности использования специальных типов линий Какие программы потребуются для работы с типами линий Глава 8. Интерфейс пользователя для работы с AutoCAD Что хорошо в стандартном интерфейсе AutoCAD Командная строка Меню Панели инструментов Центр управления Tool Palettes в AutoCAD 2004 Что плохо в стандартном интерфейсе AutoCAD Как мы будем писать главное меню ruCAD Какое хотелось бы иметь меню Типы файлов меню Какие изменения будем вносить в стандартное меню Как преодолеть недостатки каскадных меню Почему мы отказываемся от слайдовых меню Как управлять доступом к пунктам меню Использование выражений языка DIESEL Использование языка LISP для управления доступом Как ставить "галочки" в меню Как правильно использовать экранное меню Как мы будем писать пункты меню ruCAD Правила формирования тегов пунктов меню ruCAD Правила формирования текстов пунктов меню ruCAD Правила формирования макросов пунктов меню ruCAD О сочетании MENUECHO и ^P Синтаксис наших макросов Как создавать панели инструментов Синтаксис описаний панелей инструментов Как сохраняется конфигурация панелей инструментов Как хранить значки для панелей инструментов А где брать пиктограммы? Как организовать ввод данных Как создать иллюстрированное дерево меню Какие программы потребуются для реализации интерфейса ЧАСТЬ III. РАЗРАБОТКА ИНСТРУМЕНТАЛЬНЫХ СРЕДСТВ ДЛЯ ПРИКЛАДНОГО ПРОГРАММИРОВАНИЯ Глава 9. Инструменты разработчика в AutoCAD Краткий обзор инструментальных средств программирования Сравнение AutoLISP и Visual LISP Когда можно и нужно использовать VBA Преимущества VBA Недостатки VBA Как мы будем использовать ObjectARX Как мы будем использовать Delphi Соглашения о кодировании Как добиться единообразного внешнего вида программ Имена функций Вложенные функции Имена команд AutoCAD Использование комментариев Как единообразно именовать файлы Как вести дневники проекта Как хранить данные Редактор меню Дополнительные инструменты Глава 10. Приемы программирования на Visual LISP Как окончательно перейти на Visual LISP Обзор стилей программирования "Инженерный" стиль Особенности функции command "Программистский" стиль "Объектный" стиль Сравнение скорости работы Почему бы окончательно не избавиться от command Промежуточный диагноз Использование объектной модели AutoCAD Пример исследования объектной модели Как использовать объектную модель Особенности многодокументного режима Словари Реакторы Как использовать библиотеки функций и "конечные" программы Как использовать библиотеки сторонних авторов Как организовать загрузку библиотек и программ Советы по предотвращению ошибок Ошибки этапа ввода данных Контроль ввода Опасайтесь двусмысленных предложений Выбор объектов и создание наборов примитивов Выбор одного примитива Ошибки этапа обработки данных и рисования Переменные и значения переменных Зачем введена функция quote? Контроль типов данных Глобальные и локальные переменные Откуда берется мусор и как с ним бороться Ошибки вычислений Что применять: =, eq или equal? NOT и NULL Ошибки вызова команд Неправильный вызов команды TEXT Забываем отключить объектную привязку Структура программы Варианты структуры программы Вариант "один вход — один выход" Вариант "один вход — несколько выходов" Программы, использующие диалоговые окна Использование диалоговых окон Ненаучная классификация диалоговых окон О выходе из диалогов О цветовой гамме Разработка диалогов с использованием DCL Пример диалоговой функции Управляющие конструкции Функция cond О лишних функциях progn Циклическая обработка списков Рекурсия Расследование Петра Лоскутова Выводы Резюме авторов Обработка ошибок Ошибки прерывания Функция *error* Как писать функцию *error* Функции начала и завершения приложений Типовой обработчик ошибок ruCAD Проблемы с откатом Ошибки свойств Ловушки для ошибок "Ловля блох" в ActiveX Отлов ошибок при отладке Использование отладочных сообщений Встроенные средства отладки Visual LISP Как не стать параноиком Создание приложений Visual LISP Создание FAS-приложения Создание VLX-приложений Резюме Глава 11. План программирования Как установить очередность разработки программ и библиотек Какие библиотеки будем создавать в первую очередь Какие программы нам понадобятся в первую очередь Как выполнять тестирование Глава 12. Формирование каркаса ruCAD Создание системы каталогов Запись в реестр Windows Создание временного ярлыка Пробный запуск системы и ручная настройка профиля ruCAD Создание временного файла acaddoc.lsp Разработка временного меню для тестирования системы Установка библиотеки DOSLib Командный файл для регистрации COM-серверов Глава 13. Разработка первоочередных библиотечных функций Расположение компонентов системы Установка свойств рисунка Чтение свойств Запись свойств Особенности AutoCAD 2004 Как решить проблему версии 2004 Вспомогательные функции Сохранение свойств в AutoCAD 2002 Основная функция для AutoCAD 2002 Работа со свойствами через ActiveX в AutoCAD 2002 Получение свойств постороннего файла Работа с SummaryInfo в AutoCAD 2004  Кто виноват? Что делать? Использование свойств рисунка при инициализации системы Командный реактор DWGPROPS Обеспечение пропорций Настройки системы на масштаб Функции для работы с объектной моделью AutoCAD Как получить объект Безопасные манипуляции Как сохранять и восстанавливать собственные данные в файле рисунка Работа с меню Вывод специальных меню Загрузка и выгрузка фрагментных меню Функции для управления доступом к меню Кошмарная пятница Как придется выкручиваться Ввод данных Традиционные функции ввода данных Усовершенствованные функции ввода данных Функции выбора примитивов Резюме Глава 14. Разработка библиотеки функций с использованием ObjectARX Как установить ObjectARX 2002 Как настроить Microsoft Visual C++ 6.0 Постановка задачи Создание заготовки библиотеки с помощью ObjectARX AppWizard Анализ полученного кода Как устроен ARX Как работает функция acrxEntryPoint Как регистрируются функции для Visual LISP Как используется буфер результатов Работа с ARX-функциями в Visual LISP Варианты работы с INI-файлами Запуск приложений Создание безопасной оболочки для окна сообщений Разработка группы функций для вывода диалоговых окон Любителям простоты Глава 15. Разработка библиотечных функций с использованием Delphi Какие библиотеки компонентов мы будем использовать Краткое знакомство с COM-технологиями Что такое автоматизация в COM Как создать внутренний сервер автоматизации Разработка первого COM-сервера Изменения LISP-библиотеки Другие COM-серверы в ruCAD Заставка с сообщением для длительных операций Диалоговое окно выбора из одинарного списка Список из двух колонок с возможностью редактирования Двухоконный список Диалог с пометкой элементов списка Диалоговое окно просмотра текстового файла Визуальное редактирование координат полилинии Диалоговое окно "Советы дня" Выбор файла из виртуального дерева Системные папки Windows Системные папки ruCAD Диалоговые окна в EXE-файлах Зачем нужно так делать Как запустить внешнее приложение в модальном режиме Как передать параметры Как получить результаты Функция ввода строки Резюме Глава 16. Работа с XML Минимальные сведения по XML Как создаются XML-документы Как работают программы обработки XML Что должно делать наше приложение Реализация приложения для просмотра XML-меню Разработка автономного приложения Происхождение и назначение некоторых компонентов, влияющих на логику работы приложения Исходный текст модуля Разработка COM-сервера в виде DLL Тестовое приложение для проверки COM-сервера Напишем функции для вызова приложения из Visual LISP Работа с XML-таблицами Постановка задачи XML-таблицы Создание XML-таблицы Программа редактирования XML-таблиц LISP-функции для обработки таблиц Глава 17. Разработка диалогового окна выбора файлов Чем нас не устраивают стандартные диалоговые окна Ограничение навигации Предварительный просмотр DWG-файлов Комментирование файлов и папок Логика получения аннотирующей информации Просмотр и редактирование свойств DWG-файлов без AutoCAD Разработка диалогового окна Просмотр и редактирование расширенного набора свойств файлов не только в файловой системе NTFS Создание COM-сервера Формирование библиотеки функций для работы с файлами Глава 18. Разработка классификатора слоев Как реализовать классификатор слоев с использованием XML Хранение классификатора в базе данных Классификатор слоев в файловой системе Какие дополнительные данные можно хранить в классификаторе Работа с классификатором Разработка программы Запуск программы-классификатора Формирование библиотеки функций для работы с классификатором Глава 19. Работа с базами данных Немного об ADO Работа с базами данных из Visual LISP Подробности технологии ADO Нужно ли импортировать библиотеку типов Функции для работы с ADO Разработка конструктора строки соединения Полный пример работы с БД Применимость технологии работы с базами данных Резюме Глава 20. Разработка программы-стартера Работа в стартере Выбор рабочей версии AutoCAD Запуск AutoCAD Проблемы с файлом автозагрузки Реализация программы-стартера Меню приложений Глава 21. Рисование формата Формирование окружения программы Мастер рисования формата Выбор размера листа Выбор формы основной надписи Формирование обозначения документа Сохранение и восстановление данных многострочных граф основной надписи Заполнение стадии проектирования и количества листов Формирование набора подписей Формирование наименования организации Ввод граф для чертежей изделий Завершение работы Мастера Реализация COM-сервера Разработка LISP-программы Создание блоков основных надписей Программа рисования формата Включение программы в меню Глава 22. Завершение разработки главной библиотеки Ширина и вес линий Функции для геометрических построений Учет особенностей систем координат Как преобразовывать координаты Где трансформировать координаты Результат работы функций рисования Реализация координатных функций Извлечение списка координат вершин Как эффективно использовать блоки Вставка блока Многократная вставка блока Различные способы вставки блоков Единичная вставка блоков Вставка блоков из файлов Изменение ширины линий в блоке Врезка блоков и текстов в линии Рисование объектов Создание отрезков Создание полилиний Создание текстов Изменение веса линий Создание кругов Семейство функций для рисования трасс и линий Программная работа с типами линий Загрузка программ Резюме Глава 23. Итоги разработки библиотек ЧАСТЬ IV. РАЗРАБОТКА ПРИКЛАДНЫХ ПРОГРАММ Глава 24. Разработка набора инструментов для программистов Редактирование меню Переключатели режимов в меню Массовые операции с файлами Методика обработки списка файлов Нормализация файлов Объектный доступ к другому документу Конвертирование файлов Ну, тупые! Как избежать переименования Приведение текстового стиля для всех примитивов к определению Обработка штриховок Настройка оптимальных масштабов штриховок Обработка блоков Расстановка всех блоков Запись списка блоков в файл Переопределение указанного блока Просмотр информации об объектах рисунка Резюме Глава 25. Программы общего назначения Переключение компоновок Быстрое стирание Текстовая "лупа" Быстрое рисование "такого же" объекта Программы для быстрого штрихования Псевдоштриховка с помощью блока Работа со слоями Установка слоя по образцу Отключение слоя Включение всех слоев Оставить видимыми указанные слои Перелистывание слоев Стирание слоя Общие средства рисования Рисование специальных линий Врезка и привязки текстов к линиям Рисование контуров Рисование прямоугольников Рисование текстов различными способами Создание и выбор типовых текстов Конструктор таблиц Заполнение таблиц Глава 26. Формирование специализированных программ из универсальных функций Эффективные программы длиной в одну строку Создание "специального" меню Группы команд, использующих одну функцию Вставка блоков различных видов Рисование трасс Рисование любых таблиц Как научить пользователя добавлять свои команды Глава 27. Примеры программ для архитектурно-строительной части Рисование координационных осей Рисование стен и перегородок Рисование колонн и опор Отверстия в стенах и перекрытиях Рисование отверстий в стенах Составление ведомости отверстий в стенах Резюме Глава 28. Программы для "генпланистов" и топографов Использование городской системы координат Названия осей координат Работа с координатами объектов Ведомость координат Несколько способов рисования откосов Разбивка кромок Рисование трасс Рисование дорог Глава 29. Несколько программ для сантехников Профили Технология рисования "аксонометрии" Средства рисования аксонометрии в системе ruCAD Узлы схем Рисование линий схем Пересечение линий Выноски диаметров Рисование элементов трубопроводов в три линии Программирование рисования трубопроводов с детализацией Организация ввода данных Универсальная функция рисования элементов труб Программы для рисования вентиляции Резюме Глава 30. Вывод чертежа на бумагу Алгоритм печати Шаг 1. Выбор компоновки Шаг 2. Выбор устройства печати Шаг 3. Выбор формата бумаги Шаг 4. Выбор стиля печати Шаг 5. Выбор зоны печати Шаг 6. Формирование массива листов Шаг 7. Печать Реализация алгоритма печати Как выполняется печать Основная функция печати Резюме Глава 31. Несколько примеров расчетных программ Расчеты объемов работ Измерение расстояний Определение площадей Спецкалькуляторы различного назначения Математика с числовыми текстами Быстрый прикидочный расчет диаметров трубопроводов и воздуховодов Особенности программирования расчетов Где брать формулы? Алгоритм определения диаметров трубопроводов Резюме Глава 32. Спецификации оборудования Что такое спецификация оборудования Обзор методик работы со Спецификациями Ручное составление Использование текстовых процессоров Рисование в AutoCAD Использование электронных таблиц Использование настольных СУБД Специализированные программы Автоматическое определение объемов работ Организация банка данных по оборудованию, изделиям и материалам Структура базы данных Разработка программы Формирование спецификации для конкретного объекта Формирование рабочей спецификации Пополнение и обслуживание банка данных Вывод спецификации на бумагу Рисование спецификации в AutoCAD Подготовка форм Общая схема работы Резюме Глава 33. Элементы документооборота Что требуется исполнителю Что требуется руководителю Что мы уже нечаянно сделали Организация архива электронных калек Организация архива типовых проектных решений Архив топографических планшетов Функции для работы с электронными архивами Как записать кальки в архив Как взять кальки из архива Как использовать наборы калек Работа с типовыми проектными решениями Выбор и вставка типового проектного решения Работа с DWF-файлами Создание DWF Просмотр DWF Использование DWF Как создать DWF на LISP DWF или PDF? Резюме Глава 34. Интеграция САПР и ГИС Возможности ГИС Составные части ГИС Инструментальные средства ГИС Область применения ГИС на базе AutoCAD Об электронных картах Откуда берутся электронные карты? У вас хорошая крыша? Где брать исходные материалы Привязка к системе координат Процесс создания электронной карты Векторизация планшетов Формирование сводного плана Связь изображений с базами данных Вариант пространственной информации в графическом файле Вариант пространственной информации в базе данных Как это сделано Как хранить координаты в базе данных Как создать собственную ГИС-систему Резюме ЧАСТЬ V. ВЫПУСК СИСТЕМЫ В СВЕТ Глава 35. Создание справочной системы Что уже сделано HLP, CHM или HTML Инструмент для создания справок Публикация в Интернете Дополнительные справочники DWF-справка Растровые справочники Резюме Глава 36. Разработка инсталлятора Коротко о безопасности Как установить систему ruCAD вручную Присядем "на дорожку" и подумаем Кто должен устанавливать ruCAD Куда копировать файлы Что и куда писать в реестр Разборки с системой AutoCAD Не надо унывать! Как делаются установочные комплекты Подготовка к созданию дистрибутива Уменьшение размеров приложений Перекомпиляция приложений Упаковка файлов Упаковка DWG-файлов Второй этап чистки Установка даты и времени Выбор инструмента Работа с программой Inno Setup Сценарий инсталляции Как найти систему AutoCAD Сборка установочного комплекта Испытания установочного комплекта Испытания в работе Корректировка программ Новая стратегия работы с пользователями ruCAD Корректировка сценария установки Резюме Глава 37. Подготовка к распространению Особенности приложений для AutoCAD Составление бизнес-плана Цель вашего предприятия Кому нужна ваша программа Зачем нужна ваша программа Что вы будете продавать Сколько стоит ваша программа Юридические вопросы Авторские права Регистрация программ Сертификация и лицензирование Юридическое лицо Проверка собственных прав Лицензионные соглашения Подведем итоги Глава 38. Особенности AutoCAD 2005 Новинки для разработчиков Хорошие новости Плохие новости Что делать? Резюме Послесловие Сроки разработки Результаты разработки Параметры книги Приложение. Описание компакт-диска Как устанавливать Что будет установлено Что не входит в установочный комплект Источники информации Список литературы Ресурсы в Интернете Предметный указатель

Similar books