Извлечь линии маркировки, попавшие внутрь результирующего контура без учёта кромок

Материал из K3-Macro
Макро | Мебельные команды и функции | Мебельная панель | Прочитать свойства | Чтение параметров | Материал и толщина | Материал кромки | Форма углов | Форма прогибов сторон | Обрезка сторон | Параметры врезки | Параметры положения врезки | Секция раскрашивания врезки | Материал кромки на врезку | Форма панели | Информация о фрезеровке | Информация о пропиле | Поворот текстуры | Информация о фрезеровке по номеру (старая) | Информация о крепеже (первая линия) | Тип панели | Торцевая обработка | Информация о крепеже (несколько линий) | Извлечение контура | Отделка (старая) | Чтение параметров панельного длинномера | Параметры результирующей полилинии | Параметры результирующей полилинии без учета кромок | Элементы полилинии несквозных вырезов, попавшие внутрь результирующего контура без учёта кромок | Элементы полилинии несквозных вырезов, попавшие внутрь результирующего контура с учётом кромок | Линии маркировки, попавшие внутрь результирующего контура без учёта кромок | Линии маркировки, попавшие внутрь результирующего контура с учётом кромок | Информация о фрезеровке по ID (старая) | Прочитать информацию о линейках крепежа | Информация о фрезеровке по номеру | Информация о фрезеровке по ID | Комментарий к врезке | Отделка (до 18.02.2020) | Отделка | Комментарий к пропилу | Завершение работы с панелью

Операция возвращает элементы линий маркировки, попавших внутрь результирующего контура панели без учета кромок

Код операции <Command>: 35

Массив входных данных <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 — Функция проработала без ошибок

Макро | Мебельные команды и функции | Мебельная панель | Прочитать свойства | Чтение параметров | Материал и толщина | Материал кромки | Форма углов | Форма прогибов сторон | Обрезка сторон | Параметры врезки | Параметры положения врезки | Секция раскрашивания врезки | Материал кромки на врезку | Форма панели | Информация о фрезеровке | Информация о пропиле | Поворот текстуры | Информация о фрезеровке по номеру (старая) | Информация о крепеже (первая линия) | Тип панели | Торцевая обработка | Информация о крепеже (несколько линий) | Извлечение контура | Отделка (старая) | Чтение параметров панельного длинномера | Параметры результирующей полилинии | Параметры результирующей полилинии без учета кромок | Элементы полилинии несквозных вырезов, попавшие внутрь результирующего контура без учёта кромок | Элементы полилинии несквозных вырезов, попавшие внутрь результирующего контура с учётом кромок | Линии маркировки, попавшие внутрь результирующего контура без учёта кромок | Линии маркировки, попавшие внутрь результирующего контура с учётом кромок | Информация о фрезеровке по ID (старая) | Прочитать информацию о линейках крепежа | Информация о фрезеровке по номеру | Информация о фрезеровке по ID | Комментарий к врезке | Отделка (до 18.02.2020) | Отделка | Комментарий к пропилу | Завершение работы с панелью