Files
kompas3d-mcp/docs/Kompas3D_SDK/interfaces/ilayers.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

4.3 KiB

title, type, api, domain, tags, sources
title type api domain tags sources
Интерфейс ILayers interface
api7
drawing
interface
api7
drawing
ilayers
ilayers.html

*API интерфейсов. Версия 7 > Документ 2D  > Виды и слои  > Интерфейс IDrawingObjects  > IDrawingObjects - свойства *

Интерфейс ILayers

Интерфейс коллекции слоев графического документа. Иерархия: IKompasAPIObject IKompasCollection IDrawingObjects ILayers Примечание: Интерфейс коллекции слоев можно получить от интерфейса вида с помощью свойства IView::Layers или у группы слоев с помощью свойства ILayerGroup::Layers.

Add - Создать слой (добавляет слой в коллекцию)

Синтаксис Automation:

LPDISPATCH Add();

Синтаксис COM:

HRESULT Add ([out, retval] ILayer** Layer);
Возвращаемое значение:
- Указатель на интерфейс слоя ILayer.

Примечание:

  1. Интерфейс слоя добавляется в коллекцию.
  2. Слой в документе будет создан после вызова метода IDrawingObject::Update.

Attach - Добавить существующий слой

Синтаксис Automation:

BOOL Attach (LPDISPATCH pVal);

Синтаксис COM:

HRESULT Attach ([in] ILayer * pVal, [out, retval] VARIANT_BOOL * Result);
Входные параметры:
pVal    - Указатель на интерфейс слоя ILayer.
Возвращаемое значение:
TRUE    - в случае успеха,
FALSE    - в случае неудачи.

Примечание:

  1. Интерфейс слоя добавляется в коллекцию.
  2. Метод работает только для коллекции слоев группы ILayerGroup, если она не является динамической.

Detach - Отсоединить слой

Тип данных: указатель на интерфейс слоя ILayer. Синтаксис Automation:

BOOL Detach (LPDISPATCH pVal);

Синтаксис COM:

HRESULT Detach ([in] ILayer * pVal, [out, retval] VARIANT_BOOL * Result);
Входные параметры:
pVal    - Указатель на интерфейс слоя ILayer.
Возвращаемое значение:
TRUE    - в случае успеха,
FALSE    - в случае неудачи.

Примечание:

  1. Интерфейс слоя отсоединяется от коллекции, слой при этом из документа не удаляется.
  2. Метод работает только для коллекции слоев группы ILayerGroup, если она не является динамической.

Layer - Слой, заданный по индексу

Тип данных: указатель на интерфейс слоя ILayer Синтаксис Automation:

Layer = iObject.Layer (Index)    Получить свойство (* )
Layer = iObject.GetLayer (Index)    Получить свойство (**)

Синтаксис COM:

iObject->get_Layer (Index, &Layer)    Получить свойство
Входные параметры:
index    - индекс слоя в коллекции; тип VARIANT.

Примечание:

  1. Свойство доступно только для чтения.
  2. В качестве индекса может использоваться индекс элемента в массиве, ссылка на слой, имя слоя.

LayerByNumber - Слой, заданный по номеру

Тип данных: указатель на интерфейс слоя ILayer Синтаксис Automation:

Layer = iObject.LayerByNumber (Number)    Получить свойство (* )
Layer = iObject.GetLayerByNumber (Number)    Получить свойство (**)

Синтаксис COM:

iObject->get_LayerByNumber (Number, &Layer)    Получить свойство
Входные параметры:
number    - номер слоя; тип long.

Примечание: Свойство доступно только для чтения.