ADN Club > Revit API
Событие - изменение значения параметра в семействе.
Александр Пекшев aka Modis:
--- Цитата: Александр Игнатович от 31-07-2018, 10:32:16 ---Кстати, для решения задачи еще потребуется где-то хранить прошлое значение, это может быть Extensible storage или параметр проекта/семейства, возможно невидимый.
Т.е., например, 1 апдейтер реагирует на добавление элементов с фильтром по определенным критериям, читаем текущее значение параметра, пишем в extensible storage, второй апдейтер по тому же фильтру реагирует на изменение элемента, в методе Execute сравниваем значение параметра со значением, сохраненным в сторадже и, если они не совпадают, обновляем значение в сторадже и делаем что-то полезное :-)
--- Конец цитаты ---
Ну мы не знаем, что хочет автор вопроса, поэтому нет смысла и гадать варианты реализации =)
Например, я делал подобную штуку и мне совершенно не важно было прошлое значение - я обрабатывал только текущее (новое). Все зависит от задачи
Александр Игнатович:
Это всё да, просто раз вопрос об изменении определенных значений, надо дать все направления, в какую сторону копать человеку
Александр Игнатович:
Кстати, как вариант еще, если не нужно менять ничего в модели, запрещать выполнение определенных операций и т.д. можно еще рассмотреть возможность подписки на событие DocumentChanged. Оно read-only, модель изменять нельзя. Из минусов оно, по сравнению с IUpdater выдает полный перечень измененных элементов на каждый чих, лично мне больше как раз нравится IUpdater с гибкими фильтрами
toxan:
Коллеги, голову сломал.
Нужно отследить в семействе обобщенной модели ЗНАЧЕНИЕ параметра отметки от уровня.
Не могу понять с какой стороны подкопаться.
Затык именно в том как получить значение параметра при его изменении.
Александр Игнатович:
А в чем проблема?
--- Код - C# [Выбрать] ---var value = elem.get_Parameter(BuiltInParameter.INSTANCE_FREE_HOST_OFFSET_PARAM).AsDouble();
При необходимости использовать UnitUtils для преобразования в метры, миллиметры или еще в какие единицы
Навигация
Перейти к полной версии