Files
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

12 KiB

title, type, api, domain, tags, sources
title type api domain tags sources
Интерфейс коллекции проекций отображения модели (Интерфейсы ksViewProjectionCollection, IViewProjectionCollection) interface
api7
3d
interface
api7
3d
ksviewprojectioncollection
ksviewprojectioncollection.html

*API интерфейсов. Версия 5 > Документ-модель (Интерфейсы - ksDocument3D, IDocument3D ) *

Интерфейс коллекции проекций отображения модели (Интерфейсы ksViewProjectionCollection, IViewProjectionCollection)

Интерфейс массива проекций отображения модели в окне.

ksViewProjectionCollection - интерфейс Automation
IViewProjectionCollection - интерфейс COM
Типы предопределенных проекций отображения...
Описание:
К предопределенным проекциям можно добавлять пользовательские, индексы которых могут изменяться.
Примечание:
Получить этот интерфейс можно методом ksDocument3D::GetViewProjectionCollection, при этом он будет автоматически заполнен проекциями, заданными в данном документе.
Проекции отображения модели в окне (Интерфейсы ksViewProjection, IViewProjection)

Add - Добавить элемент в конец массива

Синтаксис Automation:

BOOL Add (LPDISPATCH projection);

Синтаксис COM:

BOOL Add (LPVIEWPROJECTION projection);
Входные параметры:
projection    - указатель на интерфейс ksViewProjection или IViewProjection.
Возвращаемое значение:
TRUE    - в случае успешного завершения,
FALSE    - в случае неудачи.

Примечание: Добавить в массив можно только проекцию с индексом vp_None. После добавления проекция становится текущей и ей присваивается новый индекс, равный ее индексу в массиве. После добавления проекции редактирование ее параметров невозможно.

AddUnfoldProjection - Добавить проекцию отображения - развертка

Синтаксис Automation:

LPDISPATCH AddUnfoldProjection( VARIANT place );
Возвращаемое значение:
- указатель на интерфейс проекции ksViewProjection.

Синтаксис COM:

LPVIEWPROJECTION AddUnfoldProjection( VARIANT * place );
Возвращаемое значение:
- указатель на интерфейс проекции IViewProjection.

DetachByBody - Отсоединить элемент по указателю на интерфейс

Синтаксис Automation:

BOOL DetachByBody (LPDISPATCH projection);

Синтаксис COM:

BOOL DetachByBody (LPVIEWPROJECTION projection);
Входные параметры:
projection    - указатель на интерфейс ksViewProjection или IViewProjection.
Возвращаемое значение:
TRUE    - в случае успешного завершения,
FALSE    - в случае неудачи.

Примечание: Отсоединить можно только пользовательскую проекцию, стандартные проекции не отсоединяются.

DetachByIndex - Отсоединить элемент по индексу

Синтаксис Automation:

BOOL DetachByIndex (long index);

Синтаксис COM:

BOOL DetachByIndex (long index);
Входной параметр:
index    - индекс проекции в массиве.
Возвращаемое значение:
TRUE    - в случае успешного завершения,
FALSE    - в случае неудачи.

Примечание: Отсоединить можно только пользовательскую проекцию, стандартные проекции не отсоединяются.

DetachByName - Отсоединить элемент по имени проекции

Синтаксис Automation:

BOOL DetachByName (BSTR name);

Синтаксис COM:

BOOL DetachByName (LPOLESTR name);
Возвращаемое значение:
TRUE    - в случае успешного завершения,
FALSE    - в случае неудачи.

Примечание: Отсоединить можно только пользовательскую проекцию, стандартные проекции не отсоединяются.

FindIt - Получить индекс элемента в массиве

Синтаксис Automation:

long FindIt (LPDISPATCH projection);

Синтаксис COM:

long FindIt (LPVIEWPROJECTION projection);
Возвращаемое значение:
индекс элемента    - если элемент найден в массиве,
-1    - если элемент не найден.
Входные параметры:
projection    - указатель на интерфейс ksViewProjection или IViewProjection.

First - Получить указатель на первый элемент массива

Синтаксис Automation:

LPDISPATCH First();

Синтаксис COM:

LPVIEWPROJECTION First();
Возвращаемое значение:
- указатель на интерфейс ksViewProjection или IViewProjection.

GetBaseUserOrientation - Получить текущую пользовательскую базовую ориентацию модели

Синтаксис Automation:

VARIANT GetBaseUserOrientation();

Синтаксис COM:

VARIANT GetBaseUserOrientation();
Возвращаемое значение:
- массив SafeAttray типа (VT_ARRAY    VT_R8).

Примечание:

  1. Элементы матрицы возвращаются в виде одномерного массива из 16 элементов. Матрица имеет размер 4х4.
  2. Метод позволяет получить матрицу, которая может использоваться для отображения вида спереди.
  3. По умолчанию используется единичная матрица без смещения.

GetByIndex - Получить указатель на элемент массива по индексу

Синтаксис Automation:

LPDISPATCH GetByIndex (long index);

Синтаксис COM:

LPVIEWPROJECTION GetByIndex (long index);
Входной параметр:
index    - индекс проекции в массиве.
Возвращаемое значение:
- указатель на интерфейс ksViewProjection или IViewProjection.

GetByName - Получить указатель на элемент массива по имени

Синтаксис Automation:

LPDISPATCH GetByName (BSTR name, BOOL testFullName, BOOL testIgnoreCase);

Синтаксис COM:

LPVIEWPROJECTION GetByName (LPOLESTR name, BOOL testFullName, BOOL testIgnoreCase);
Входные параметры:
name    - имя проекции,
testFullName    - признак полного имени: TRUE - name - полное имя, FALSE - имя name может быть частью полного имени,
testIgnoreCase    - признак игнорирования регистра символов: TRUE - игнорировать регистр, FALSE - учитывать регистр.
Возвращаемое значение:
- указатель на интерфейс ksViewProjection или IViewProjection.

GetCount - Получить количество проекций в массиве

Синтаксис Automation:

long GetCount();

Синтаксис COM:

long GetCount();
Возвращаемое значение:
- количество проекций в массиве.

Last - Получить указатель на последний элемент массива

Синтаксис Automation:

LPDISPATCH Last();

Синтаксис COM:

LPVIEWPROJECTION Last();
Возвращаемое значение:
- указатель на интерфейс ksViewProjection или IViewProjection.

NewViewProjection - Добавить новую проекцию

Синтаксис Automation:

LPDISPATCH NewViewProjection();

Синтаксис COM:

LPVIEWPROJECTION NewViewProjection();
Возвращаемое значение:
- указатель на интерфейс ksViewProjection или IViewProjection.

Примечание: Проекции присваивается индекс vp_None. Созданная проекция в массив не добавляется, для добавления в массив нужно использовать метод Add.

Next - Получить указатель на следующий элемент массива

Синтаксис Automation:

LPDISPATCH Next();

Синтаксис COM:

LPVIEWPROJECTION Next();
Возвращаемое значение:
- указатель на интерфейс ksViewProjection или IViewProjection.

Prev - Получить указатель на предыдущий элемент массива

Синтаксис Automation:

LPDISPATCH Prev();

Синтаксис COM:

LPVIEWPROJECTION Prev();
Возвращаемое значение:
- указатель на интерфейс ksViewProjection или IViewProjection.

Refresh - Обновить массив

Синтаксис Automation:

BOOL Refresh();

Синтаксис COM:

BOOL Refresh();
Возвращаемое значение:
TRUE    - в случае успешного завершения,
FALSE    - в случае неудачи.

Примечание: Метод перезаполняет массив проекциями, заданными в документе.

SetBaseUserOrientation - Установить пользовательскую базовую ориентацию модели

Синтаксис Automation:

BOOL SetBaseUserOrientation(VARIANT place);

Синтаксис COM:

BOOL SetBaseUserOrientation(VARIANT * place);
Входные параметры:
place    - массив SafeAttray типа (VT_ARRAY    VT_R8).

Примечание:

  1. Элементы матрицы возвращаются в виде одномерного массива из 16 элементов. Матрица имеет размер 4х4.
  2. Метод позволяет получить матрицу, которая может использоваться для отображения вида спереди.
  3. По умолчанию используется единичная матрица без смещения.

viewProjectionScheme - Текущая схема ориентаций модели

Тип данных: из перечисления ksViewProjectionScheme Синтаксис Automation:

viewProjectionScheme = Object.viewProjectionScheme    Получить свойство (* )
Object.viewProjectionScheme = viewProjectionScheme    Установить свойство (* )
viewProjectionScheme = Object.GetViewProjectionScheme()    Получить свойство(**)
Object.SetViewProjectionScheme( viewProjectionScheme )    Установить свойство (**)