Логотип сайта поддержки пользователей САПРО сайте поддержки пользователей САПР Translate to:

Оглавление книги С.Зуева и Н.Полещука "САПР на базе AutoCAD. Как это делается"

Содержание:

Введение
Особенности книги
Для кого предназначена эта книга
Структура книги
Предупреждения
Об авторах
Часть 1. Разработка концепции САПР
Подготовка к разработке
Требуется ли техническое задание
Что нужно знать об авторских правах
Как собрать команду разработчиков
Как организовать работу над проектом
Хранение информации
Документирование работ
Планирование
Стандарты программирования
Как строить отношения с руководителями
Как нормировать разработку программных средств
Пример норм времени на разработку
Пример расчета трудозатрат
Как определить стоимость работы
Анализ и постановка задачи
Какие САПР существуют
Какая САПР нам нужна
Какие разделы проектов мы будем автоматизировать
Кто будет пользователем нашей системы
Какие версии Windows и AutoCAD мы будем использовать
Как узнать, что требуется пользователям для работы с AutoCAD
Анализ проектов
Общие данные по рабочим чертежам
Планы зданий
Трубопроводы и проводники
Схемы систем
Рабочее и монтажное проектирование
Генеральные планы и наружные сети
Топографические планы
Условные обозначения в топографии и на генпланах
Планы коммуникаций
Профили
Схемы, узлы, разрезы
Изучение специфики работы в AutoCAD
Классификация пользователей
"Чайники"
"Тетки"
"Обезьяна с гранатой"
"Нормальные пользователи"
"Профи"
"Ламеры"
"Крутые"
Как должна работать наша система
Просто, это как?
Удобно, это как?
Надежно, это как?
Чем наша система должна отличаться от других
Какие задачи должна решать наша система
Составление перечня общих задач
Составление перечня специальных задач
Как определить методы решения задач
Как придумать "имя собственное" для нашей системы
Превращение "нашей системы" в "ruCAD"
Логотип
Стадийность разработки
Техническое задание
Эскизный проект
Технический проект
Рабочий проект
Внедрение
Подготовка окончательного текста технического задания
Титульная часть
Информационная часть
Наименование
Область применения
Основание для разработки
Назначение разработки
Заказчик
Исполнитель
Технические требования к программному изделию
Требования к функциональным характеристикам
Требования к надежности
Условия эксплуатации
Требования к составу и параметрам технических средств
Требования к информационной и программной совместимости
Требования к маркировке и упаковке
Требования к транспортировке и хранению
Специальные требования
Технико-экономические показатели
Стадии и этапы разработки
Порядок контроля и приемки
Приложения
Подписи и согласования
Формирование базовых принципов
Как запускать AutoCAD
Как использовать шаблоны рисунков
Стандарты
О соответствии чертежей на бумаге стандартам СПДС
Форматы и размеры листа
Вид основной надписи
Начертание и размер надписей
Ширина линий
Избыточная детализация
Стандартизация приемов работы с AutoCAD
Стандарт приемов работы ruCAD для строительного проектирования
Основные термины
Единицы рисунка
Масштабы
Пространства листа и модели
Системы координат и их описание
Точка вставки
Направления осей
Размеры
Свойства объектов
Слои
Блоки
Именованные объекты
Подготовка к архивированию
Распределение изображений по файлам
Имена файлов
Система каталогов
Примеры обозначений
Свойства рисунка
Комментарии к рисункам
Комментарии к файлам и папкам
Системные переменные
Дополнительные комментарии к положениям стандарта
Масштаб рисунка
Управление шириной линий
Как учитывать работу в пространствах листа и модели
Нанесение размеров
Как сохранять и восстанавливать настройки ruCAD
Что хранить в настройках ruCAD
О специальных папках Windows
Где можно хранить настройки
Системный реестр
Домашний каталог пользователя
Общий каталог пользователей
Где мы будем хранить настройки
О временных файлах
Как сохранять и читать настройки
INI-файлы
Использование XML
Политика работы с пользователями в ruCAD
Как правильно организовать систему папок и документов
Корневой каталог системы
Соглашение об именах файлов
Каталоги AutoCAD
Каталог Bin
Каталог Temp
Каталог Source
Каталог Samples
Каталог All Users
Каталог Current User
Каталог Application Data
Регистрация каталогов
Какие программы потребуются для реализации базовых принципов
Программа-стартер
ARX-библиотека
COM-серверы
LISP-библиотеки
Миграция из ранних версий AutoCAD
Как осуществлять переход под Windows
Миграция приложений, написанных на AutoLISP
Миграция внешних приложений, работающих в DOS
Миграция библиотек блоков
Шрифты
Штриховки и типы линий
Файл acad.pgp
Меню
Базы данных
Как выполнять перекодировку рисунков
Файлы AutoCAD R10
Файлы AutoCAD R12
Что придумано Autodesk
Утилита Amethist CAD Converter
Какие изменения требуется вносить в программы
Как учитывать особенности локализованных версий AutoCAD
Как использовать Migration Assistance
Переход на работу под AutoCAD 2004
Учет особенностей AutoCAD 2004
Новинки AutoCAD 2004
О совместимости приложений
Не выбрасывайте старый AutoCAD
Какие программы требуется разработать нам
Итоги первой части
Часть 2. Адаптация AutoCAD без программирования
Использование блоков
Какие виды блоков требуется использовать
Блоки-чертежи
Блоки-изделия
Единичные блоки
Блоки-символы
Блоки-таблицы
Какие блоки нам не нужны
Как правильно создавать блоки
Как присваивать имена блокам
Как устанавливать цвет и слой примитивам, входящим в блок
Как назначать ширину, тип и вес линий
Как устанавливать точку вставки блока
Как правильно включать в блоки атрибуты
Как хранить блоки в каталогах ruCAD
Как формировать библиотеки блоков
Какие программы потребуются для работы с блоками
Использование штриховок и типов линий
Средства для работы со штриховками
Средства для работы с типами линий
Как создавать "лохматые" линии
Как создавать линии с текстовыми символами
Особенности использования специальных типов линий
Какие программы потребуются для работы с типами линий
Интерфейс пользователя для работы с AutoCAD
Что хорошо в стандартном интерфейсе AutoCAD
Командная строка
Меню
Панели инструментов
Центр управления
Tool Palettes в AutoCAD 2004
Что плохо в стандартном интерфейсе AutoCAD
Как мы будем писать главное меню ruCAD
Какое бы хотелось иметь меню
Типы файлов меню
Какие изменения будем вносить в стандартное меню
Как преодолеть недостатки каскадных меню
Почему мы отказываемся от слайдовых меню
Как управлять доступом к пунктам меню
Использование выражений языка DIESEL
Использование языка LISP для управления доступом
Как ставить "галочки" в меню
Как правильно использовать экранное меню
Как мы будем писать пункты меню ruCAD
Правила формирования тегов пунктов меню ruCAD
Правила формирования текстов пунктов меню ruCAD
Правила формирования макросов пунктов меню ruCAD
О сочетании MENUECHO и ^P
Синтаксис наших макросов
Как создавать панели инструментов
Синтаксис описания панелей инструментов
Как сохраняется конфигурация панелей инструментов
Как хранить значки для панелей инструментов
Как изготовить DLL-файл с пиктограммами
А где брать пиктограммы?
Как организовать ввод данных
Как создать иллюстрированное дерево меню
Какие программы потребуются для реализации интерфейса
Часть 3. Разработка инструментальных средств для прикладного программирования
Инструменты разработчика в AutoCAD
Краткий обзор инструментальных средств программирования
Сравнение AutoLISP и Visual LISP
Когда можно и нужно использовать VBA
Преимущества VBA
Недостатки VBA
Как мы будем использовать ObjectARX
Как мы будем использовать Delphi
Соглашения о кодировании
Как добиться единообразия внешнего вида программ
Имена функций
Вложенные функции
Имена команд AutoCAD
Использование комментариев
Как единообразно именовать файлы
Как вести дневники проекта
Как хранить данные
Редактор меню
Дополнительные инструменты
Приемы программирования на Visual LISP
Как окончательно перейти на Visual LISP
Обзор стилей программирования
"Инженерный" стиль
Особенности функции command
Имена команд
Использование GET-функций
Прерывание функции command
Незавершенная команда
Особенности функции vl-cmdf
Команда VBASTMT
"Программистский" стиль
"Объектный" стиль
Сравнение скорости работы
Почему бы окончательно не избавиться от command
Промежуточный диагноз
Использование объектной модели AutoCAD
Пример исследования объектной модели
Как использовать объектную модель
Особенности многодокументного режима
Словари
Реакторы
Как использовать библиотеки функций и "конечные" программы
Как использовать библиотеки сторонних авторов
Как организовать загрузку библиотек и программ
Советы по предотвращению ошибок
Ошибки этапа ввода данных
Контроль ввода
Опасайтесь двусмысленных предложений
Выбор объектов и создание наборов примитивов
Выбор одного примитива
Ошибки этапа обработки данных и рисования
Переменные и значения переменных
Зачем введена функция quote?
Контроль типов данных
Глобальные и локальные переменные
Откуда берется мусор и как с ним бороться
Ошибки вычислений
Что применять: =, eq или equal?
NOT и NULL
Ошибки вызова команд
Неправильный вызов команды TEXT
Забываем отключить объектную привязку
Структура программы
Варианты структуры программы
Вариант один вход - один выход
Вариант один вход - несколько выходов
Программы, использующие диалоговые окна
Использование диалоговых окон
Ненаучная классификация диалоговых окон
Вредные диалоги
Бесполезные диалоги
Умеренно полезные диалоги
Полезные диалоги
Незаменимые диалоги
Опасные диалоги
О выходе из диалогов
О цветовой гамме
Разработка диалогов с использованием DCL
Пример диалоговой функции
Управляющие конструкции
Функция cond
О лишних функциях (progn)
Циклическая обработка списков
Рекурсия
Расследование Петра Лоскутова
Выводы
Резюме авторов
Обработка ошибок
Ошибки прерывания
Функция *error*
Как писать функцию *error*
Функции начала и завершения приложения
Типовой обработчик ошибок ruCAD
Проблемы с откатом
Ошибки свойств
Ловушки для ошибок
Ловля блох в ActiveX
Отлов ошибок при отладке
Использование отладочных сообщений
Встроенные средства отладки Visual LISP
Как не стать параноиком
Создание приложений Visual LISP
Создание FAS-приложений
Создание VLX-приложений
Резюме
План программирования
Как установить очередность разработки программ и библиотек
Какие библиотеки будем создавать в первую очередь
Какие программы нам понадобятся в первую очередь
Как выполнять тестирование
Формирование каркаса ruCAD
Создание системы каталогов
Запись в реестр Windows
Создание временного ярлыка
Пробный запуск системы и ручная настройка профиля ruCAD
Создание временного файла acaddoc.lsp
Разработка временного меню для тестирования системы
Установка библиотеки DOSLib
Командный файл для регистрации COM-серверов
Разработка первоочередных библиотечных функций
Расположение компонентов системы
Установка свойств рисунка
Чтение свойств
Запись свойств
Особенности AutoCAD 2004
Как решить проблему-2004
Вспомогательные функции
Сохранение свойств в AutoCAD 2002
Основная функция для AutoCAD 2002
Работа со свойствами через ActiveX в AutoCAD 2002
Получение свойств постороннего файла
Работа с SummaryInfo в AutoCAD 2004
Кто виноват?
Что делать?
Использование свойств рисунка при инициализации системы
Командный реактор DWGPROPS
Обеспечение пропорций
Настройки системы на масштаб
Функции для работы с объектной моделью AutoCAD
Как получить объект
Безопасные манипуляции
Как сохранять и восстанавливать собственные данные в файле рисунка
Работа с меню
Вывод специальных меню
Загрузка и выгрузка фрагментных меню
Функции для управления доступом к меню
Кошмарная пятница
Как придется выкручиваться
Ввод данных
Традиционные функции ввода данных
Усовершенстованные функции ввода данных
Функции выбора примитивов
Резюме
Разработка библиотеки функций с использованием ObjectARX
Как установить ObjectARX
Как настроить Vicrosoft Visual C++ 6.0
Постановка задачи
Создание заготовки библиотеки с помощью ObjectARX AppWizard
Анализ полученного кода
Как устроен ARX
Как работает функция acrxEntryPoint
Как регистрируются функции для Visual LISP
Как используется буфер результатов
Работа с ARX-функциями в Visual LISP
Варианты работы с INI-файлами
Запуск приложений
Создание безопасной оболочки для окна сообщений
Разработка группы функций для вывода диалоговых окон
Любителям простоты
Разработка библиотечных функций с использованием Delphi
Какие библиотеки компонентов мы будем использовать
Краткое знакомство с COM-технологиями
Что такое автоматизация в COM
Как создать внутренний сервер автоматизации
Разработка первого COM-сервера
Изменения LISP-библиотеки
Другие COM-серверы в ruCAD
Заставка с сообщением для длительных операций
Диалог выбора из одинарного списка
Список из двух колонок с возможностью редактирования
Двухоконный список
Диалог с пометкой элементов списка
Диалог просмотра текстового файла
Визуальное редактирование координат
Диалог "Советы дня"
Выбор файла из виртуального дерева
Системные папки Windows
Системные папки в ruCAD
Диалоги в EXE-файлах
Зачем нужно так делать
Как запустить внешнее приложение в модальном режиме
Как передать параметры
Как получить результаты
Функция ввода строки
Резюме
Реализация работы с деревом меню
Минимальные сведения по XML
Как создаются XML-документы
Как работают программы обработки XML
Что должно делать наше приложение
Реализация приложения для просмотра
Разработка автономного приложения
Происхождение и назначение некоторых компонентов, влияющих на логику работы приложения
Исходный текст модуля
Разработка COM-сервера в виде DLL
Тестовое приложение для проверки COM-сервера
Напишем функции для вызова приложения из Visual LISP
Работа с XML-таблицами
Постановка задачи
XML-таблицы
Создание XML-таблицы
Программа редактирования XML-таблиц
LISP-функции для обработки таблиц
Разработка проводника по файловой системе
Чем нас не устраивают стандартные диалоги
Ограничение навигации
Предварительный просмотр DWG-файлов
Комментирование файлов и папок
Логика получения аннотрирующей функции
Просмотр и редактирование свойств DWG-файлов без AutoCAD
Разработка диалогового окна
Просмотр и редактирование расширенного набора свойств файлов не только в файловой системе NTFS
Создание COM-сервера
Формирование библиотеки функций для работы с файлами
Разработка классификатора слоев
Как реализовать классификатор слоев с использованием XML
Хранение классификатора в базе данных
Классификатор слоев в файловой системе
Какие дополнительные данные можно хранить в классификаторе
Работа с классификатором
Разработка программы
Запуск программы-классификатора
Формирование библиотеки функций для работы с классификатором
Работа с базами данных
Немного об ADO
Работа с базами данных из Visual LISP
Подробности технологии ADO
Нужно ли импортировать библиотеку типов
Функции для работы с ADO
Разработка конструктора строки соединения
Полный пример работы с БД
Применимость технологии работы с базами данных
Резюме
Разработка программы-стартера
Работа в стартере
Выбор рабочей всерсии AutoCAD
Запуск AutoCAD
Проблемы с файлом автозапуска
Реализация программы-стартера
Меню приложений
Рисование формата
Формирование окружения программы
Мастер рисования формата
Выбор размера листа
Выбор формы основной надписи
Формирование обозначения документа
Сохранение и восстановление данных многострочных граф основной надписи
Заполнение стадии проектирования и количества листов
Формирование набора подписей
Формирование наименования организации
Ввод граф для чертежей изделий
Завершение работы Мастера
Реализация COM-сервера
Разработка LISP-программы
Создание блоков основных надписей
Программа рисования формата
Включение программы в меню
Завершение разработки главной библиотеки
Ширина и вес линий
Функции для геометрических построений
Учет особенностей систем координат
Как преобразовывать координаты
Где трансформировать координаты
Результат работы функций рисования
Реализация координатных функций
Извлечение списка координат вершин
Как эффективно использовать блоки
Вставка блока
Многократная вставка блока
Различные способы вставки блоков
Единичная вставка блоков
Вставка блоков из файлов
Изменение ширины линий в блоке
Врезка блоков и текстов в линии
Рисование объектов
Создание отрезков
Создание полилиний
Создание текстов
Изменение веса линий
Создание кругов
Семейство функций для рисования трасс и линий
Программная работа с типами линий
Загрузка программ
Резюме
Итоги разработки библиотек
Часть 4. Разработка прикладных программ
Разработка набора инструментов для программистов
Редактирование меню
Переключатели режимов в меню
Массовые операции с файлами
Методика обработки списка файлов
Нормализация файлов
Объектный доступ к другому документу
Конвертирование файлов
Ну, тупые!
Как избежать переименования
Приведение текстового стиля для всех примитивов к определению
Обработка штриховок
Настройка оптимальных масштабов штриховок
Обработка блоков
Расстановка блоков
Запись списка блоков в файл
Переопределение указанного блока
Просмотр информации об объектах рисунка
Резюме
Программы общего назначения
Переключение компоновок
Быстрое стирание
Текстовая "лупа"
Быстрое рисование "такого же" объекта
Программы для быстрого штрихования
Псевдоштриховка блоком
Работа со слоями
Установка слоя по образцу
Отключение слоя
Включение всех слоев
Оставить видимыми указанные слои
Перелистывание слоев
Стирание слоя
Общие средства рисования
Рисование специальных линий
Врезка и привязки текстов к линиям
Рисование контуров
Рисование прямоугольников
Рисование тестов различными способами
Создание и выбор типовых текстов
Конструктор таблиц
Заполнение таблиц
Формирование специализированных программ из универсальных функций
Эффективные программы длиной в одну строку
Создание "специального" меню
Группы команд, использующих одну функцию
Вставка блоков различных видов
Рисование трасс
Рисование любых таблиц
Как научить пользователя добавлять свои команды
Примеры программ для архитектурно-строительной части
Рисование координационных осей
Рисование стен и перегородок
Рисование колонн и опор
Отверстия в стенах и перекрытиях
Рисование отверстий в стенах
Составление ведомости отверстий в стенах
Программы для "генпланистов" и топографов
Использование городской системы координат
Названия осей координат
Работа с координатами объектов
Ведомость координат
Несколько способов рисования откосов
Разбивка кромок
Рисование трасс
Рисование дорог
Несколько программ для сантехников
Профили
Технология рисования "аксонометрии"
Средства рисования аксонометрии в системе ruCAD
Узлы схем
Рисование линий схем
Пересечение линий
Выноски диаметров
Рисование элементов трубопроводов в три линии
Программирование рисования трубопроводов с детализацией
Организация ввода данных
Универсальная функция рисования элементов труб
Программы для рисования вентиляции
Резюме
Вывод чертежа на бумагу
Алгоритм печати
Шаг 1. Выбор компоновки
Шаг 2. Выбор устройства печати
Шаг 3. Выбор формата бумаги
Шаг 4. Выбор стиля печати
Шаг 5. Выбор зоны печати
Шаг 6. Формирование массива
Шаг 7. Печать
Реализация алгоритма печати
Как выполняется печать
Основная функция печати
Резюме
Несколько примеров расчетных программ
Расчеты объемов работ
Измерение расстояний
Определение площадей
Спецкалькуляторы различного назначения
Математика с числовыми текстами
Быстрая прикидка диаметров трубопроводов и воздуховодов
Особенности программирования расчетов
Где брать формулы?
Алгоритм определения диаметров трубопроводов
Резюме
Составление спецификаций оборудования
Что такое спецификация оборудования
Обзор методик работы со Спецификацией
Ручное составление
Использование текстовых процессоров
Рисование в AutoCAD
Использование электронных таблиц
Использование настольных СУБД
Автоматическое определение объемов работ
Организация банка данных по оборудованию, изделиям и материалам
Структура базы данных
Разработка программы
Формирование спецификации для конкретного объекта
Формирование рабочей спецификации
Пополнение и обслуживание банка данных
Вывод спецификации на бумагу
Рисование спецификации в AutoCAD
Подготовка форм
Общая схема работы
Резюме
Элементы документооборота
Что требуется исполнителю
Что требуется руководителю
Что же мы нечаянно сделали
Организация архива электронных калек
Организация архива типовых проектных решений
Архив топографических планшетов
Функции для работы с электронными архивами
Как записать кальки в архив
Как взять кальки их архива
Как использовать наборы калек
Работа с типовыми проектными решениями
Выбор и вставка типового проектного решения
Работа с DWF-файлами
Создание DWF
Просмотр DWF
Использование DWF
Как создать DWF на LISP
DWF или PDF?
Резюме
Интеграция САПР и ГИС
Возможности ГИС
Составные части ГИС
Инструментальные средства ГИС
Область применения ГИС на базе AutoCAD
Об электронных картах
Откуда берутся электронные карты?
У вас хорошая крыша?
Где брать исходные материалы?
Привязка к системе координат
Процесс создания электронной карты
Векторизация планшетов
Формирование сводных планов
Связь изображений с базами данных
Вариант пространственной информации в графическом файле
Вариант пространственной информации в базе данных
Как это сделано
Как хранить государственную тайну
Как создать собственную ГИС-систему
Резюме
Часть 5. Выпуск системы в свет
Создание справочной системы
Что уже сделано
HLP, CHM или HTML
Инструмент для создания справочной системы
Публикация в Интернете
Дополнительные справочники
DWF-справка
Растровые справочники
Резюме
Разработка инсталлятора
Коротко о безопасности
Как установить ruCAD вручную
Присядем "на дорожку" и подумаем
Кто должен устанавливать ruCAD
Куда копировать файлы
Что и куда писать в реестр
Разборки с AutoCAD
Не надо унывать!
Как делаются установочные комплекты
Подготовка к созданию дистрибутива
Уменьшение размеров приложений
Перекомпиляция приложений
Упаковка файлов
Упаковка DWG-файлов
Второй этап чистки
Установка даты и времени
Выбор инструмента
Работа с программой Inno Setup
Сценарий инсталляции
Как найти AutoCAD
Сборка установочного комплекта
Испытания установочного комплекта
Испытания в работе
Корректировка программ
Новая стратегия работы с пользователями
Корректировка сценария установки
Резюме
Подготовка к распространению
Особенности приложений для AutoCAD
Составление бизнес-плана
Цель вашего предприятия
Кому нужна ваша программа
Зачем нужна ваша программа
Что вы будете продавать
Сколько стоит ваша программа
Юридические вопросы
Авторские права
Регистрация программ
Сертификация и лицензирование
Юридическое лицо
Проверка собственных прав
Лицензионные соглашения
Подведем итоги
Особенности AutoCAD 2005
Новинки для разработчиков
Хорошие новости
Плохие новости
Что делать?
Резюме
Послесловие
Список литературы
Приложение. Описание прилагаемого компакт-диска




Copyright © Сайт поддержки пользователей САПР by Victor Tkachenko