Извлечь элементы полилинии несквозных вырезов, попавшие внутрь результирующего контура без учёта кромок
Материал из K3-Macro
Операция возвращает элементы полилинии несквозных вырезов, попавших внутрь результирующего контура панели без учета кромок
Код операции <Command>
: 33
Массив входных данных <Array>
:
В зависимости от входных данных может возвращаться различная информация.
Запрос количества несквозных вырезов
<Array>[1]
- входной параметр = 0
<Array>[2]
- выходной параметр - количество несквозных вырезов, элементы контуров которых попадают внутрь контура панели
<Array>[3]
- выходной параметр - номера контуров несквозных вырезов
- Запрос количества непрерывных кусков из элементов в контуре несквозного выреза
<Array>[1]
- входной параметр - номер контура
<Array>[2]
- входной параметр = 0
<Array>[3]
- выходной параметр - количество непрерывных кусков из элементов в контуре<Array>[1]
, которых попадают внутрь контура панели
- Запрос количества элементов в одном непрерывном куске из элементов контура несквозного выреза
<Array>[1]
- входной параметр - номер контура
<Array>[2]
- входной параметр - номер непрерывного куска (начиная с единицы)
<Array>[3]
- входной параметр = 0
<Array>[4]
- выходной параметр - количество элементов в контуре, заданном<Array>[1]
, которые присутствуют в куске, заданном<Array>[2]
Запрос элементов в контура
<Array>[1]
- входной параметр - номер контура
<Array>[2]
- входной параметр - номер непрерывного куска контура (начиная с единицы)
<Array>[3]
- входной параметр - номер элемента непрерывного куска контура
<Array>[4]
- выходной параметр - тип элемента
- 1 - отрезок
- 2 - дуга
- 3 - сплайн
Если тип элемента - отрезок, то:
<Array>[5...10]
- выходной параметр - координаты (X, Y, Z) начала и конца элемента в ЛСК панели
Если тип элемента - дуга, то:
<Array>[5...13]
- выходной параметр - координаты (X, Y, Z) начала, середины и конца элемента в ЛСК панели
Если тип элемента сплайн, то:
<Array>[5]
- выходной параметр - количество точек аппроксимации сплайна
для i от 1 до <Array>[5]
<Array>[6+3*(i-1)]
- выходной параметр - X координата i-й точки аппроксимации элемента в ЛСК панели
<Array>[6+3*(i-1)+1]
- выходной параметр - Y координата i-й точки аппроксимации элемента в ЛСК панели
<Array>[6+3*(i-1)+2]
- выходной параметр - Z координата i-й точки аппроксимации элемента в ЛСК панели
необходимая длина массива <Array>
: должна быть 6+<Array>[5]
*3. Если длина массива меньше, то будут заполнены только существующие элементы массива
Возвращаемое значение:
- -1 - Ошибка (не инициализирована панель, не хватает размерности массива и пр.)
- 0 - Не существует указанного контура или элемента контура. Выходные данные использовать нельзя.
- 1 - Функция проработала без ошибок