Сообщество программистов Autodesk в СНГ

ADN Club => Revit API => Тема начата: Bazinga от 05-07-2019, 15:05:59

Название: Вытащить элементы из спецификации
Отправлено: Bazinga от 05-07-2019, 15:05:59
Забрать данные из ячейки в спецификации можно забрать через
Код - C# [Выбрать]
  1. .GetCellText(nRow, nCol);
(Таблица сгруппирована)
Можно как то по ячейке/строке получиться элементы, которые сгруппировались без дополнительных параметров?
Название: Re: Вытащить элементы из спецификации
Отправлено: Александр Пекшев aka Modis от 05-07-2019, 15:12:13
По самой строке вы можете получить элементы только путем анализа данных в ячейках с параметрами элементов.
Чтобы получить все элементы, обработанные спецификацией, достаточно использовать FilteredElementCollector, подав ему вторым параметром спецификацию (спецификация - это тоже Вид)
Название: Re: Вытащить элементы из спецификации
Отправлено: Bazinga от 05-07-2019, 15:22:50
По самой строке вы можете получить элементы только путем анализа данных в ячейках с параметрами элементов.
по сути тот же  FilteredElementCollector, только с условиями.
Название: Re: Вытащить элементы из спецификации
Отправлено: Bazinga от 06-08-2019, 13:34:01
К спецификации применены фильтры, можно их каким-нибудь образом вытащить, чтобы потом применить к FilteredElementCollector?
Название: Re: Вытащить элементы из спецификации
Отправлено: Александр Пекшев aka Modis от 06-08-2019, 15:50:55
К спецификации применены фильтры, можно их каким-нибудь образом вытащить, чтобы потом применить к FilteredElementCollector?
Это тупиковый путь, так как в настройках спецификации можно создать поля с расчетными и объединенными параметрами и вы вряд-ли сможете их обработать. Ну и плюс фильтрация и сортировка.
К тому же поля можно скрыть, и вы не сможете получить значения в них, так как читать вы их можете только с самой спецификации, которую вы видите глазами. Ну и куча других мелких проблем точно будет.
Я бы даже не стал пытаться пойти этим путем.

Но по секрету скажу - существует способ найти в какой строке какой элемент
Название: Re: Вытащить элементы из спецификации
Отправлено: Bazinga от 07-08-2019, 08:32:34
Поделитесь?))))
Фильтр сразу убирает лишние элементы для спецификации.
Название: Re: Вытащить элементы из спецификации
Отправлено: Александр Пекшев aka Modis от 07-08-2019, 09:45:41
Поделитесь?))))

Могу поделиться только гифкой =)

Скажем так - это моя коммерческая тайна и в этот раз делится не хочу
Название: Re: Вытащить элементы из спецификации
Отправлено: Bazinga от 07-08-2019, 10:09:42
Александр Пекшев aka Modis, Видела ее у Джереми)))
Коммерческая тайна это хорошо))) Есть мысли как сделать, но не нравится такое решение самой)
Название: Re: Вытащить элементы из спецификации
Отправлено: Bazinga от 09-08-2019, 14:03:19
Можно как-то найти значение ячейки в скрытом столбце?
.IsHidden = false не помогает.
Название: Re: Вытащить элементы из спецификации
Отправлено: Александр Пекшев aka Modis от 09-08-2019, 14:11:36
Можно как-то найти значение ячейки в скрытом столбце?
К тому же поля можно скрыть, и вы не сможете получить значения в них, так как читать вы их можете только с самой спецификации, которую вы видите глазами
Название: Re: Вытащить элементы из спецификации
Отправлено: Bazinga от 09-08-2019, 14:19:36
Я разобралась. Переменная не на ту область памяти ссылалась =) Надо было заново его считывать =)