load_elements_list
Загрузить заданный список элементами ARCHICAD по заданным условиям
Вызов:
ac_request("load_elements_list",int iListNum,string sElemTypeName,"MainFilter",int iMainFilterValue,string filterparametrname, string/double filterparametervalue,...);
Здесь:
iListNum - номер внутреннего списка элементов (от 0...9).
sElemTypeName - название типа элемента. Если нужно выбрать любые элементы - "ZombieElemType", если только колонны, то "ColumnType", стены - "WallType" и т.д.
"MainFilter" - сообщает, что мы задаем параметры для отфильтровывания элементов по типу доступности для редактирования, видимости и т.п. iMainFilterValue - обычно значение для видимых и редактируемых элементов - 3.
Далее идут названия параметров и их значения для дополнительного отбора.
Например "ID","Значение ID" - означает, что нужно выбрать элементы с ID="Значение ID" и т.д.
Фильтр "MainFilter" можно и не указывать. Это равносильно тому, что написать "MainFilter",0.
Т.е. при формировании списка в него попадут все подходящие элементы в проекте без учета основного критерия.
Значение фильтра собирается по формуле.
MainFilterValue=j1+2*j2+4*j3+8*j4+16*J5+32*j6+64*j7+128*j8+256*j9+512*j10+1024*j11+2048*j12+4096*j13+268435456*j14,
где каждое j может быть 0 или 1.
j1: только редактируемые.
j2: на видимом слое.
j3: на текущем этаже
j4: имеет представление в 3d окне
j5: в моем рабочем пространстве
j6: не подчиненные а только независимые элементы
j7: на активном чертеже
j8: отображается внутри обрезанной части базы данных чертежа
j9: указывает, передан ли данному элементу идентификатор изменения в параметре variationID
j10: имеются права доступа к элементу
j11: элемент виден в реновации
j12: дополнительный флаг; проверяет, переопределены ли атрибуты элемента текущим фильтром обновления
j13: дополнительный флаг; проверяет видимость элемента с учетом текущей настройки отображения структуры
j14: только из 2d окна