Files
kompas3d-mcp/docs/Kompas3D_SDK/guides/simple.md
T
mikhail e1337e4016 feat(sdk-docs): MD-база знаний SDK — в репозиторий; генератор и зеркало убраны
docs/Kompas3D_SDK/ становится каноническим источником справки КОМПАС SDK
и включается в репозиторий (2491 файл, ~14 МБ). HTML-зеркало
docs/KOMPAS_SDK_ru-RU/ (~1.4 ГБ, © АСКОН) и генератор
tools/build_kompas3d_sdk.py больше не нужны — регенерация не предполагается.

- .gitignore: MD-база разблокирована; зеркало остаётся проигнорированным
  (safety-net на случай повторной локальной выгрузки).
- CLAUDE.md / SKILL.md: убраны упоминания регенерации и зеркала.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-26 20:00:05 +03:00

5.0 KiB

title, type, api, domain, tags, sources
title type api domain tags sources
Элементарные тела guide
api7
3d
guide
api7
3d
simple
simple_bodies.html

*API интерфейсов. Версия 7 > Документ 3D *

Элементарные тела

Интерфейс IElementaryBody Интерфейс IElementaryBodies Интерфейс IBlockByPoints Интерфейс IBlockBySizes Интерфейс IConeByAngle Интерфейс IConeByHeight Интерфейс ICylinder Интерфейс ISphere

Пример простейшей программы в среде VC++, оформленной в виде библиотеки КОМПАС

#ifndef __LIBTOOL_H #include «libtool.h» #endif char * WINAPI LIBRARYNAME() { return "Самая простая библиотека"; } void WINAPI LIBRARYENTRY( unsigned int comm ) { Message("Строим отрезок!"); LineSeg( 10, 10, 100, 100, 1 ); // x1, y1, x2, y2, тип линии - основная } Функция LIBRARYENTRY является точкой входа в библиотеку при вызове из КОМПАС. Наличие этой функции обязательно, так как именно ей передает управление КОМПАС при обращении к библиотеке. В данном случае она обеспечивает выдачу сообщения и построение одного единственного объекта чертежа - отрезка. Все функции оформления библиотек должны быть объявлены в def файле как экспортные, например: EXPORTS LIBRARYID @1 LIBRARYENTRY @2 Функции

Общие сведения о библиотеках типа AddIn

Пример... Это обычная библиотека, но она регистрируется в реестре и загружается при запуске системы КОМПАС. Без регистрации в реестре библиотеки такого типа работают как стандартные прикладные библиотеки КОМПАС. Регистрация осуществляется в разделе HKEY_CURRENT_USER\Software\ASCON\KOMPAS-3D\AddIns или HKEY_LOCAL_MACHINE\Software\ASCON\KOMPAS-3D\AddIns. Для регистрации создается подраздел с уникальным именем (например, именем самой библиотеки). В этом разделе должны быть два значения: •Тип значения REG_SZ: "ProgID" - для ActiveX библиотек или "Path" - полный путь к файлу для простых библиотек. Если есть оба значения "ProgID" и "Path", то "Path" игнорируется. ActiveX библиотека должна быть зарегистрирована. •Тип значения REG_DWORD: "AutoConnect" - 1 - подключать библиотеку при запуске КОМПАС, 0 - не подключать. Если в реестре этого значения нет, то оно по умолчанию принимается равным 1. Существует два способа регистрации библиотеки в реестре: •при помощью функций DllRegisterServer. •вызов команды regsvr32.exe libname. Чтобы отменить регистрацию, необходимо использовать функцию DllUnregisterServer или вызвать команду regsvr32.exe \u libname. AddIn библиотеки работают в режиме "Меню". Сменить режим нельзя, так же как и отключить библиотеку.

Пример простейшей программы в среде VB, оформленной в виде ActiveX библиотеки КОМПАС

Dim iKompasObject As Object 'KompasObject Dim iDocument2D As Object 'ksDocument2D Public Function GetLibraryName() As String GetLibraryName = “Самая простая библиотека” End Function Public Sub ExternalRunCommand(ByVal command As Integer, ByVal mode As Integer, ByVal Kompas As Object) Set iKompasObject = Kompas If iKompasObject Is Nothing Then Exit Sub End If Set iDocument2D = iKompasObject.ActiveDocument2D If iDocument2D Is Nothing Then Exit Sub End If iKompasObject.ksMessage “Строим отрезок!” iDocument2D.ksLineSeg 10, 10, 100, 100, 1 ' x1, y1, x2, y2, тип линии - основная End Sub Функция ExternalRunCommand - аналог функции LibraryEntry. Ее наличие обязательно, так как именно ему передает управление КОМПАС при обращении к библиотеке. В данном случае она обеспечивает выдачу сообщения и построение одного единственного объекта чертежа - отрезка. Функции