Переименование общих параметров
При работе с шаблоном Autodesk Community 2017 многие столкнулись с интересным явлением: общие параметры как-то странно себя ведут:
Сейчас расскажу об этом явлении.
UPD: сделал табличку с сопоставлением параметров ADSK 2017 и Weandrevit:
Введение
Скажу сразу: переименовать общий параметр в текущем рабочем проекте невозможно (точнее можно, но это сломает весь файл)
Но можно сделать так, что имя того же параметра будет другим в новых проектах.
Если открыть файл общих параметров через Блокнот — в начале будет предупреждение «# Do not edit manually«.
Сломать файл действительно очень просто, но это нас не остановит! Наверняка многие пробовали переименовать параметр в этом файле вручную (безрезультатно).
Подготовим материалы
Создадим новый файл общих параметров и назовем его «Параметры Weandrevit», подключим к Revit и создадим там параметр «Рзм.Длина»:
Создадим семейство с этим общим параметром, также добавим другие параметры и формулы:
Сохраним семейство как «Семейство Weandrevit», создадим новый пустой проект, загрузим в него это семейство. В проекте создадим спецификацию, выведем в неё общий параметр «Рзм.Длина», также создадим какое-нибудь расчетные параметры:
Еще создадим марку и также выведем в неё параметр «Рзм.Длина», сохраним как «Марка Weandrevit», загрузим марку в проект и установим на семейство:
Сохраним как «Проект Weandrevit».
Затем откроем файл общих параметров в Блокноте и переименуем «Рзм.Длина» на «ADSK_Длина»:
Проделаем все те же действия: создадим новое семейство «Семейство ADSK», добавим туда параметр «ADSK_Длина», загрузим в проект, создадим спецификацию и марку, сохраним как «Проект на шаблоне ADSK»:
Эксперимент
Откроем «Семейство Weandrevit», там увидим параметр «Рзм.Длина» — имя не изменилось (в файле общих параметров имя уже новое, но семейство не обращает на это внимания).
Попытаемся добавить параметр «ADSK_Длина» — появляется ошибка:
Очевидно, что параметр получает имя при первом добавлении, которое жестко прописывается в семействе.
Дальше интереснее.
Загрузим «Семейство Weandrevit» в «Шаблон ADSK». Смотрим на семейство: «Рзм.Длина» заменен на «ADSK_Длина»! Проверяем спецификацию: параметр пришел в один столбец в «Семейством ADSK», марка тоже работает:
Закроем «Семейство Weandrevit» и откроем его на редактирование из этого проекта — удивительное дело! Мало того, что параметр переименован, так еще и формулы изменились:
Продолжаем экспериментировать: загрузим «Семейство ADSK» в «Шаблон Weandrevit». Произойдет обратное.
То же самое происходит со спецификациями и марками: при переносе из одного проекта в другой имена параметров будут изменяться, но семейства и спецификации продолжают работать, как ни в чем не бывало.
Интересно, что при копировании спецификации параметр в ней переименовывается, а «Заголовок» — остается прежним:
Очевидно, что информация о добавленном общем параметре и его имени жестко прописывается в проекте и изменяет все последующие загружаемые семейства.
Даже если удалить из файла все семейства, марки, спецификации, параметры проекта — параметр всё равно будет переименовываться при загрузке другого семейства в проект!
Вот небольшое кино:
Объяснение эксперимента
В Revit общие параметры хранятся в классе Definition — «Определении общего параметра». Бывает «ExternalDefinition»(определение, загружаемое из txt-файла) и «InternalDefinition» (хранящееся в проекте). При добавлении общего параметра (например в семейство) сначала создается ExternalDefinition, который конвертируется в InternalDefinition и сохраняется в файле семейства. Если еще раз попытаться добавить этот же параметр — Revit увидит, что этот параметр уже был добавлен (InternalDefinition уже присутствует) и выдаст ошибку:
И главное — определяет Revit это не по имени параметра, а по его GUID: ошибка будет выдана в случае, если у параметра совпадает GUID, а имя может отличаться. GUID — универсальный механизм по генерации уникального ключа, с крайне малой вероятностью независимой генерации двух одинаковых значений.
При загрузке семейства в проект происходит то же самое: Revit проверяет, есть ли в проекте InternalDefinition с этим же GUID, если нет — он добавляется в проект, если есть — используется тот, что уже есть в проекте. Можно сказать, что первый загруженный параметр «захватывает флаг» и хранится в проекте со своим именем и настройками.
Например, параметр «ADSK_Наименование» — это тот же параметр «Наименование», который был создан в старом шаблоне Autodesk Community. Поэтому, если вы загрузите семейство окна из шаблона ADSK АР 2017 в старый шаблон Community — «ADSK_Наименование» превратится в «Наименование».
Что еще можно сделать с определениями параметров?
Как мы уже увидели, определение параметра жестко записывается в проект, и удалить его через интерфейс нельзя.
Но доступ в нему можно получить через API, например, с помощью RevitLookup или через класс SharedParameterElement (доступен начиная с версии 2016).
У определения параметра даже есть ID: можно выбрать его в проекте через «Выбрать по коду» и удалить.
После этого параметр можно добавить с другим именем.
Значит, параметр все-таки можно переименовать? Нет!
В тот момент, когда мы нажмем Delete — этот параметр удалится из всех элементов, где он использовался — из семейств, марок, спецификаций, удалятся все связанные формулы.
Такую штуку можно проделать только в пустом шаблоне или если нам дейтсивтельно надо полностью вычистить случайно попавший параметр.
Зачем такие сложности?
Действительно, зачем придумывать какие-то переименования и путать людей?
Есть несколько причин:
- Для параметров шаблона Autodesk утверждена система именования с префиксом ADSK_, и вначале предлагалось генерировать все параметры с нуля. Но в этом случае все шаблон оказался быо полностью несовместимым со всеми старыми семействами (и наоборот). Использование переименования параметров позволяет решить эту проблему — семейства будут работать и в том, и в другом шаблоне;
- Помимо имени параметра в «Определении» также сохраняется «Описание» к параметру (всплывающая подсказка при наведении указателя мыши на параметр).
Но эта подсказка может со временем устареть, а поменять её также невозможно. Например, в параметре «КМ.ТипЭлемента» из старого шаблона приведена инструкция по его заполнению, но сейчас эта схема заполнения уже другая. Соответственно я изменил описание параметра в файле общих параметров, создал пустое семейство с этим параметром и загрузил его в пустой проект — заготовку для нового шаблона. При загрузке старых семейств в новый шаблон подсказка параметра будет обновлена. - Многим не нравится система именования, которую я придумал в своем шаблоне (типа «Рзм.Длина», «Орг.ТипЭлемента» и т.д.) — многие указывают в начале параметра префикс с аббревиатурой компании, кто-то не пользуется префиксами и т.д.
Теперь это не проблема — вы можете взять файл общих параметров, переименовать их по своему стандарту, создать пустое семейство со всеми этими параметрами и добавить в пустой проект. После этого, когда будете загружать в него семейства из других шаблонов — параметры в них будут сразу переименованы по вашему стандарту.
Этот механизм — важный шаг к использованию в масштабах страны одного набора общих параметров, так как до этого попытки стандартизации упирались в споры «нам нужно такое имя! — а нам нужно такое!».
Теперь основной идентификатор параметра — это его GUID.
Например, мне не нравится префикс ADSK_, так как он слишком длинный. В моем новом шаблоне «ADSK_Наименование», «ADSK_Масса» и т.д. переименованы на «О_Наименование», «О_Масса» и т.д.
Проблемы с файлом каталога типоразмеров
Если вы создадите проект на базе шаблона «ADSK АР 2017», скачаете библиотеку семейств для старого шаблона Community и попытаете загрузить семейство окна в свой проект — возникнет ошибка:
Открываем семейство окна — параметр «Наименование» на месте, в каталоге типоразмеров — тоже «Наименование»… Хотя мы уже знаем, в чем причина — при загрузке окна имя параметра заменяется на «ADSK_Наименование», а такого параметра в каталоге уже нет. Решается задача просто: надо подправить TXT-файл, изменить имена параметров на используемые в шаблоне:
Этот макрос позволяет увидеть список всех определений параметров, их ID и GUID в проекте:
public void ShowAllDefs() < Document doc = this.ActiveUIDocument.Document; FilteredElementCollector col = new FilteredElementCollector(doc) .OfClass(typeof(SharedParameterElement)); string names = «»; foreach (SharedParameterElement spe in col) < names += spe.Name + » «; names += spe.Id.IntegerValue.ToString(); names += spe.GuidValue.ToString() + «n»; >TaskDialog.Show(«IntsDefs», names); >
При помощи этого макроса можно, например, проконтролировать загрузку в проект «стороннего» семейства с другим набором параметров. UPD: также такой плагин есть в Bim-Starter + с возможностью удаления определений параметров.
Зная ID, можно удалить его через «Управление — Выбрать по ID».
Осторожно, при удалении «Определения» параметра могут сломаться все семейства и спецификации в файле, использующие этот параметр.
Всем привет! Тут мой блог об Autodesk Revit, а на самом деле — просто блокнот, куда я записываю свои идеи.
Надеюсь, что информация окажется полезной и интересной.
[Закреплено] Где скачать ФОП ADSK? И как предложить в него новый нужный параметр?
Мы разработали ФОП в 2016 году и продолжаем его поддерживать. Поскольку ФОП пользуются огромное число компаний и производителей оборудования, не разрешено самостоятельно создавать параметры с префиксом ADSK. Почему? Просто представьте, что каждый производитель насосов создаст свой параметр «ADSK_Мощность насоса». И в итоге, используя несколько производителей в одном проекте, мы получим несколько одинаковых, но разных по факту параметров. Как раз то, чего мы старались избежать, когда приняли решение создать общий ФОП.
Что же делать, если параметр нужен (подчеркну — нужен не только вам, но многим участникам рынка)? Писать нам. Писать ваши предложения в этой теме! Если такой параметр и правда нужен не только вам, мы добавим его в ФОП.
А если ваш параметр не нашел поддержки (не нужен другим участникам рынка) — вы не можете добавлять к нему префикс ADSK. Создавайте такой параметр со своим префиксом.
Файл общих параметров
Если в Revit отключены вкладки, например Системы – то исключаются из отображения параметры, которые с ними связаны!
Поэтому вы не сможете создать новый общий параметр для отключенной категории.
Была ли эта статья вам полезна?
Предыдущая: Справочник
Оглавление
База знаний
- Проектирование RT
- BIM-стандарт
- Форматы файлов
- Уровень проработки (LOD)
- Модели и связи
- Моделирование в Revit
- Контроль качества моделей
- Шаблон проекта
- Требования к шаблонам
- Требования к семействам
- Настройка спецификаций
- Спецификации ручные
- История версий
- Моделирование
- Горячие клавиши
- Контент
- Справочник
- Файл общих параметров
- Пакетная работа с семействами
- Совместная работа
- Локальный файл
- Передача заданий
- Проверка в Design Review
- Экспорт файлов
- Чертежи
- Изменения на листе
Миссия
Цель, которая нас заряжает — изменить строительную отрасль!
И начать мы хотим с эффективных BIM-технологийИнформация
- Проверка сертификата
- Акции и конкурсы
- Предложения и пожелания
Контакты
Условия
- Политика конфиденциальности
- Публичная оферта
- Оплата
Авторское право 2023 Anlax Technology. Все права защищены
- Есть практический опыт успешного применения BIM-технологий в проектировании, строительстве или эксплуатации?
- Являетесь экспертом в области BIM-технологий?
- Есть интересный опыт, контент или технология в сфере BIM?
- Ищеите возможность проподавать или поделиться своими знаниями с другими?
- Хотите партнерские условия?
Напишите нам, мы всегда готовы предложить отличные условия за Ваш опыт и материалы!
- Есть практический опыт успешного применения BIM-технологий в проектировании, строительстве или эксплуатации?
- Являетесь экспертом в области BIM-технологий?
- Есть интересный опыт, контент или технология в сфере BIM?
- Ищеите возможность проподавать или поделиться своими знаниями с другими?
- Хотите партнерские условия?
Напишите нам, мы всегда готовы предложить отличные условия за Ваш опыт и материалы!
Ищем креативного Маркетолога с желанием развиваться в направлении интернет маркетинга, используя современные технологии. В качестве ключевых обязанностей мы выделяем:
- SMM-маркетинг (Youtube, Linkedin, VK, Facebook и другие)
- SEO-оптимизация
- Контекстная реклама в Google и Yandex
- Проведение маркетинговых компаний (интеграции с партнерами, акции и розыгрыши)
- Разработка маркетинговых материалов (баннеры, презентации)
- Продвижение бренда
- Поиск и общение с клиентами
Главные требования – Ваше желание развиваться по описанным направлениям, быть честным, ответственным и работать на результат.
Мы предлагаем гибкие условия работы и оплаты, опираясь на Ваши пожелания и опыт.
Ищем креативного Маркетолога с желанием развиваться в направлении интернет маркетинга, используя современные технологии. В качестве ключевых обязанностей мы выделяем:
- SMM-маркетинг (Youtube, Linkedin, VK, Facebook и другие)
- SEO-оптимизация
- Контекстная реклама в Google и Yandex
- Проведение маркетинговых компаний (интеграции с партнерами, акции и розыгрыши)
- Разработка маркетинговых материалов (баннеры, презентации)
- Продвижение бренда
- Поиск и общение с клиентами
Главные требования – Ваше желание развиваться по описанным направлениям, быть честным, ответственным и работать на результат.
Мы предлагаем гибкие условия работы и оплаты, опираясь на Ваши пожелания и опыт.
Файл общих параметров adsk
Как создать свой параметр через ФОП в Revit?
Всем добрый день, на связи Лакутинова Екатерина
В данном видео уроке мы рассмотрим, как можно создать свой параметр (через ФОП) в семействе штампа и далее загрузить его в файл проекта.00:54 Как можно загрузить ФОП в файл проекта
2:00 Создание своих параметров в ФОП
3:00 Как созданные в ФОП параметры добавит в файл семейства
4:00 Как создать свой типоразмер текста для текста-метки
6:55 Почему в файле проекта появились знаки вопросов в местах текста-метки, но они никак не реагируют
7:15 Как добавить созданные параметры в файл проекта
8:00 Где необходимо поставить галочки, чтобы параметр был параметром экземпляра или параметром типа
10:25 Как поменять настройки параметра с параметра экземпляра на параметр типаФайл общих параметров (ФОП) от Autodesk
Файл общих параметров используется для хранения специального вида параметров Revit — «общих» параметров. Благодаря способу хранения (во внешнем текстовом файле), эти параметры можно добавить как в семейство модели, так и в проект, и в марку.
В ФОП параметры хранятся в виде текста с разделителями, запись ведётся автоматически при создании параметра в интерфейсе Revit. При этом самое важное — это уникальный идентификатор параметра — GUID.
Благодаря единому файлу общих параметров, проектировщики разных компаний и разные производители могут создавать семейства, которые будут работать в шаблонах Autodesk без доработок, правильно отображаться в спецификациях и в сводной модели в Navisworks.
Все шаблоны Autodesk используют параметры из ФОП Autodesk. Таким образом, использование единого ФОП от Autodesk разными проектными компаниями и производителями позволяет работать по единому стандарту и успешно обмениваться информацией и заданиями в рамках совместной работы над проектом.
Хотите научиться работать в Revit?
Подписывайте на рассылку о бесплатных Revit-видеоуроках!
(Достаточно подписаться ОДИН раз на любой из страниц architect-mos.ru )
- BIM-стандарт