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

2.8 KiB

title, type, api, tags, sources
title type api tags sources
ksGetDocVariableArray - Получить массив параметрических переменных графического документа или вставки фрагмента guide
api7
guide
api7
ksgetdocvariablearray
ksgetdocvariablearray.html

*API экспортных функций > Функции работы с графическим документом  > Функции работы с параметрическими переменными и связями  > Функции параметризации и ограничений *

ksGetDocVariableArray - Получить массив параметрических переменных графического документа или вставки фрагмента

Пример... Аналог данной функции при использовании Automation - метод ksDocument2D::ksGetDocVariableArray. Синтаксис:

reference ksGetDocVariableArray (reference p);
Входной параметр:
p    - указатель на документ или вставку фрагмента.
Возвращаемое значение:
указатель на динамический массив структур VariableParam    - в случае успеха,
0    - в случае неудачи.

ksGetDocVariableArray, ksSetDocVariableArray - пример использования

//получим указатель на текущий графический документ reference doc = ksGetCurrentDocument(1); // 0 - любой документ, // 1- только графический документ // 2 - только спецификацию if (doc) { char buf [250]; //получить массив внешних переменных документа reference arrayVar = ksGetDocVariableArray(doc); //указатель на документ //или вставку фрагмента for (int i=0, count = GetArrayCount(arrayVar); i < count; i) { VariableParam par; //получить текущую переменную GetArrayItem(arrayVar, i, &par, sizeof(VariableParam)); sprintf(buf, "имя = %s\nзначение = %f\nкомментарий = %s", par.name, par.value, par.note); Message(buf); par.value = 100; strcat(par.note, "!!!"); //заменить текущую переменную в массиве SetArrayItem(arrayVar, i, &par, sizeof(VariableParam)); } //заменить значения внешних переменных документа ksSetDocVariableArray (doc, // указатель на документ или вставку фрагмента arrayVar, // указатель на динамический массив VARIABLE_ARR 1); // комментарии менять } else Error ("Документ должен быть графическим");