Разработка приложений под КОМПАС в Delphi

Данная книга была написана в 2013 году. На сегодняшний день это моя самая популярная (среди читателей) книга. В ней освещены основные вопросы программирования под систему КОМПАС, как то: создание и оформление документов, построение чертежей, простановка размеров и условных обозначений на чертежах, создание и редактирование спецификаций, создание деталей и сборок. В книге подробно описано большое количество интерфейсов, представляемых системой КОМПАС, а также приводятся примеры работы с ними.
Ее можно бесплатно скачать с торрентов. Теперь выкладываю ее и здесь.

Оглавление

Введение
О чем эта книга?
Для кого эта книга?
Структура книги
Глава 1. Перед тем как начать
Интерфейс
Документация
Модули
Примеры
Глава 2. Подключение к КОМПАСу
Подключение к КОМПАСу
Завершение работы КОМПАСа
Метод GetParamStruct
Определение версии КОМПАСа
Глава 3. Создание чертежа
Параметры документа (ksDocumentParam)
Создание нового чертежа
Открытие чертежа
Закрытие и сохранение чертежа
Глава 4. Формат чертежа
Параметры оформления листа документа (ksSheetOptions)
Параметры стандартного листа (ksStandartSheet)
Пример
Параметры оформления листа документа (ksSheetPar)
Пример
Глава 5. Основная надпись
Строка или спецсимвол (ksTextItemParam)
Основная надпись (ksStamp)
Пример
Глава 6. Виды
Системы координат
Создание нового вида
Переключение между видами
Глава 7. Текстовая надпись
Простой текст
Наклонный, жирный и подчеркнутый шрифт
Верхнее и нижнее отклонения
Дробь
Подстрока и надстрока
Глава 8. Графические примитивы
Стили линий
Точка
Прямая
Отрезок
Окружность
Глава 9. Дуга окружности
Что мы будем строить
По трем точкам
По центру и углам
По центру и конечным точкам
Глава 10. Прямоугольник
Параметры прямоугольника (ksRectangleParam)
Построение прямоугольника
Глава 11. Правильный многоугольник
Параметры многоугольника (ksRegularPolygonParam)
Построение многоугольника
Глава 12. Эллипс
Параметры эллипса (ksEllipseParam)
Построение эллипса
Глава 13. Дуга эллипса
Параметры дуги эллипса (ksEllipseArcParam)
Построение дуги эллипса
Глава 14. Ломаная
Глава 15. Кривая Безье
Точка кривой Безье (ksBezierPointParam)
Построение кривой Безье
Глава 16. NURBS кривая
Глава 17. Симметрия
Постановка задачи
Создание группы объектов
Симметрия
Глава 18. Поворот
Постановка задачи
Поворот
Глава 19. Построение дуги окружности касательной к двум прямым
Постановка задачи
Интерфейс ksCON
Получение параметров сопрягающих дуг
Решение задачи
Глава 20. Построение прямой касательной к двум окружностям
Постановка задачи
Интерфейс ksTAN
Как получить координаты точек касания
Решение задачи
Глава 21. Построение перпендикуляра к отрезку
Постановка задачи
Метод ksPerpendicular
Решение задачи
Глава 22. Простой линейный размер
Строка (ksChar255)
Динамический массив (ksDynamicArray)
Параметры размерной надписи (ksDimTextParam)
Параметры отрисовки размера (ksDimDrawingParam)
Параметры привязки линейного размера (ksLDimSourceParam)
Параметры линейного размера (ksLDimParam)
Построение линейного размера
Пример 1. Простой горизонтальный размер
Пример 2. Горизонтальный размер с квалитетом и отклонениями
Пример 3. Горизонтальный размер со стрелками снаружи
Пример 4. Вертикальный размер
Пример 5. Вертикальный размер с обрывом
Пример 6. Произвольный линейный размер
Пример 7. Горизонтальный размер с выносной полкой
Глава 23. Линейный размер с обрывом
Параметры отрисовки размера с обрывом (ksBreakDimDrawing)
Параметры привязки линейного размера с обрывом (ksLBreakDimSource)
Параметры линейного размера с обрывом (ksLBreakDimParam)
Построение линейного размера с обрывом
Пример
Глава 24. Угловой размер
Параметры привязки углового размера (ksADimSourceParam)
Параметры углового размера (ksADimParam)
Построение углового размера
Пример
Глава 25. Угловой размер с обрывом
Параметры углового размера с обрывом (ksABreakDimParam)
Построение углового размера с обрывом
Пример
Глава 26. Диаметральный размер
Параметры отрисовки диаметрального и радиального размеров (ksRDimDrawingParam)
Параметры привязки диаметрального и радиального размеров (ksRDimSourceParam)
Параметры диаметрального размера (ksRDimParam)
Построение диаметрального размера
Пример
Глава 27. Радиальный размер
Построение радиального размера
Пример
Глава 28. Радиальный размер с изломом
Параметры отрисовки радиального размера с изломом (ksRBreakDrawingParam)
Параметры радиального размера с изломом (ksRBreakDimParam)
Построение радиального размера с изломом
Пример
Глава 29. Осевая линия
Параметры математической точки (ksMathPointParam)
Параметры осевой линии (ksAxisLineParam)
Построение осевой линии
Пример
Глава 30. Обозначение центра
Параметры обозначения центра (ksCentreParam)
Построение обозначения центра
Пример
Глава 31. Штриховка. Способ первый
Построение штриховки
Пример
Глава 32. Штриховка. Способ второй
Получение идентификатора замкнутого контура
Параметры штриховки (ksHatchParam)
Построение штриховки
Пример
Какой способ лучше
Глава 33. Заштриховывание двух и более непересекающихся областей
Постановка задачи
Решение задачи первым способом
Добавление объекта к группе объектов
Решение задачи вторым способом
Глава 34. Обозначение шероховатости
Параметры обозначения шероховатости (ksRoughPar)
Параметры выносной полки (ksShelfPar)
Параметры обозначения шероховатости (ksRoughParam)
Построение обозначения шероховатости
Пример 1. Построение обозначения шероховатости без выносной линии
Пример 2. Построение обозначения шероховатости с выносной линией
Глава 35. Обозначение неуказанной шероховатости
Параметры обозначения неуказанной шероховатости (ksSpecRoughParam)
Построение обозначения неуказанной шероховатости
Пример
Глава 36. Обозначение базы
Параметры обозначения базы (ksBaseParam)
Построение обозначения базы
Пример
Глава 37. Стрелка направления взгляда
Параметры стрелки направления взгляда (ksViewPointerParam)
Построение стрелки направления взгляда
Пример
Глава 38. Выносной элемент
Параметры выносного элемента (ksRemoteElementParam)
Построение выносного элемента
Пример
Глава 39. Линия разреза/сечения
Параметры линии разреза/сечения (ksCutLineParam)
Построение линии разреза/сечения
Пример 1. Простой разрез/сечение
Пример 2. Сложный разрез/сечение
Глава 40. Линия-выноска
Составная строка (ksTextLineParam)
Параметры линии-выноски (ksLeaderParam)
Построение линии-выноски
Пример 1. Простая линия-выноска
Пример 2. Линия-выноска со строкой под полкой
Пример 3. Линия-выноска с двумя «ножками»
Глава 41. Позиционная линия-выноска
Параметры позиционной линии-выноски (ksPosLeaderParam)
Построение позиционной линии-выноски
Пример 1. Простая позиционная линия-выноска
Пример 2. Позиционная линия-выноска с двумя строками
Глава 42. Линия-выноска для обозначения клеймения
Параметры линии-выноски для обозначения клеймения (ksBrandLeaderParam)
Построение линии-выноски для обозначения клеймения
Пример
Глава 43. Линия-выноска для обозначения маркировки
Параметры линии-выноски для обозначения маркировки (ksMarkerLeaderParam)
Построение линии-выноски для обозначения маркировки
Пример
Глава 44. Линия-выноска для обозначения изменения
Параметры линии-выноски для обозначения изменения (ksChangeLeaderParam)
Построение линии-выноски для обозначения изменения
Пример
Глава 45. Технические требования
Прямоугольная область (ksRectParam)
Вывод строки
Построение технических требований
Пример
Глава 46. Таблица
Построение таблицы
Пример
Глава 47. Обозначение допуска формы и расположения поверхностей
Параметры «ножки» обозначения допуска формы и расположения поверхностей (ksToleranceBranch)
Параметры обозначения допуска формы и расположения поверхностей (ksToleranceParam)
Построение обозначения допуска формы и расположения поверхностей
Пример
Глава 48. Спецификация
Документ-спецификация (ksSpcDocument)
Открытие существующей спецификации
Создание новой спецификации
Закрытие спецификации
Сохранение спецификации
Основная надпись
Многостраничная спецификация
Глава 49. Раздел и объекты спецификации
Интерфейс ksSpecification
Создание объекта и раздела спецификации
Пример
Глава 50. Редактирование объектов спецификации
Установить текст в определенной колонке
Заполнение отдельных колонок
Пример
Глава 51. Документ, содержащий 3D-модель (сборку)
Документ, содержащий 3D-модель или сборку (ksDocument3D)
Открытие существующей 3D модели (сборки)
Создание новой 3D-модели (сборки)
Закрытие 3D-модели (сборки)
Сохранение 3D-модели (сборки)
Управление отображением 3D-модели (сборки)
Глава 52. Иерархия интерфейсов в 3D
Документ (ksDocument3D)
3D-модель (ksPart)
Объект (ksEntity)
Объекты, создаваемые системой КОМПАС по умолчанию
Создание новых объектов
Объекты, порождаемые другими объектами
Общая картина
Глава 53. Эскиз
Параметры эскиза (ksSketchDefinition)
Пример
Глава 54. Операция выдавливания
Параметры выдавливания (ksBaseExtrusionDefinition)
Пример
Глава 55. Смещенная плоскость
Параметры смещенной плоскости (ksPlaneOffsetDefinition)
Пример
Глава 56. Операция «приклеивание выдавливанием»
Параметры операции «приклеивание выдавливанием» (ksBossExtrusionDefinition)
Пример
Глава 57. Операция «вырезание выдавливанием»
Параметры операции «вырезание выдавливанием» (ksCutExtrusionDefinition)
Пример
Глава 58. Операция «выдавливание вращением»
Параметры операции «выдавливание вращением» (ksBaseRotatedDefinition)
Пример
Глава 59. Ось на пересечении двух плоскостей
Параметры оси на пересечении двух плоскостей (ksAxis2PlanesDefinition)
Пример 1
Пример 2
Глава 60. Наклоненная плоскость
Параметры наклоненной плоскости (ksPlaneAngleDefinition)
Пример
Глава 61. Операция «приклеивание вращением»
Параметры операции «приклеивание вращением» (ksBossRotatedDefinition)
Пример
Глава 62. Операция «вырезание вращением»
Параметры операции «вырезание вращением» (ksCutRotatedDefinition)
Пример
Глава 63. Операция «выдавливание по сечениям»
Массив объектов (ksEntityCollection)
Параметры операции «выдавливание по сечениям» (ksBaseLoftDefinition)
Пример
Глава 64. Операция «приклеивание по сечениям»
Параметры операции «приклеивание по сечениям» (ksBossLoftDefinition)
Пример
Глава 65. Операция «вырезание по сечениям»
Параметры операции «вырезание по сечениям» (ksCutLoftDefinition)
Пример
Глава 66. Кинематическая операция выдавливания
Параметры кинематической операции выдавливания (ksBaseEvolutionDefinition)
Пример
Глава 67. Кинематическая операция приклеивания
Параметры кинематической операции приклеивания (ksBossEvolutionDefinition)
Пример
Глава 68. Кинематическая операция вырезания
Параметры кинематической операции вырезания (ksCutEvolutionDefinition)
Пример
Глава 69. Операция «сечение плоскостью»
Параметры операции «сечение плоскостью» (ksCutByPlaneDefinition)
Пример
Глава 70. Операция «сечение эскизом»
Параметры операции «сечение эскизом» (ksCutBySketchDefinition)
Пример
Глава 71. Скругление
Параметры скругления (ksFilletDefinition)
Пример 1
Пример 2
Глава 72. Фаска
Параметры фаски (ksChamferDefinition)
Пример
Глава 73. Уклон
Параметры уклона (ksInclineDefinition)
Пример
Глава 74. Ребро жесткости
Параметры ребра жесткости (ksRibDefinition)
Пример
Глава 75. Оболочка
Параметры оболочки (ksShellDefinition)
Пример
Глава 76. Зеркальное отображение детали относительно плоскости
Параметры зеркального отображения относительно плоскости (ksMirrorCopyAllDefinition)
Пример
Глава 77. Зеркальное отображение элементов детали относительно плоскости
Параметры зеркального отображения элементов детали относительно плоскости (ksMirrorCopyDefinition)
Пример
Глава 78. Копирование элементов детали по параллелограммной сетке
Параметры копирования элементов детали по параллелограммной сетке (ksMeshCopyDefinition)
Пример
Глава 79. Копирование элементов детали по концентрической сетке
Параметры копирования элементов детали по концентрической сетке (ksCircularCopyDefinition)
Пример
Глава 80. Копирование элементов детали вдоль кривой
Параметры копирования элементов детали вдоль кривой (ksCurveCopyDefinition)
Пример
Глава 81. Параметризованная 3D-модель
Переменная (ksVariable)
Массив внешних переменных (ksVariableCollection)
Пример
Глава 82. Добавление деталей в сборку
Добавление деталей в сборку
Пример
Глава 83. Управление расположением детали в сборке
Системы координат
Положение локальной системы координат (ksPlacement)
Пример 1. Перемещение детали
Пример 2. Вращение детали
Пример 3. Сборка
Глава 84. Сопряжение
Работа с сопряжениями
Пример