Высотная отметка с округлением до 10мм

Задали мне вчера вот такой вопрос: можно ли сделать высотную отметку с округлением высоты до 10мм? То есть, если значение отметки «+7.836» — выводить «+7.840», и т.д.:

Казалось бы, что сложного? Взять да добавить округление, как в размерном стиле с округлением до 10мм:

Но не всё так просто!
За дальнейшими исследованиями прошу под кат.

Вообще я, как конструктор, даже размерами с округлением пользуюсь с осторожностью, а отметки всегда ставлю точно, но оказалось, что для архитекторов и инженеров это округление — востребованная задача.

Проблема

Напомню, что для получения вида отметки с тремя знаками после точки используется вывод значения в метрах с округлением до трех знаков без подавления концевых нулей:

В семействе заголовка уровня такой же принцип округления используется в настройке единиц «Метки»:

Нам же нужно округление до 10мм — то есть до двух знаков. Если просто поменять округление — получим отметку «+7.84»:

Не совсем то!

Теоретически можно было бы сделать вывод отметок в миллиметрах, указать округление до 10мм, но отделять запятой тысячи. Для этого нужно добавить группировку в «Единицах проекта» и включить «Группирование цифр» в настройках единиц:

Но тогда будет неправильно выводиться отметка высоты менее 1 метра, «+0.150» превратится в «+150»:

В крайнем случае можно сделать пользовательское округление «до 0.005», тогда значения отметок будут равны 0.000, 0.005, 0.010 и т.д.
Но всё-таки попытаемся победить и сделать округление до 10мм.

Отметка уровня

Очевидно, что для нужного вида числа нужно оставить округление до двух знаков после запятой, но в конец поставить цифру «0».
В семействе уровня это делается легко, можно просто добавить в «Метку» суффикс «0»:
Вот получилось как надо:

Высотная отметка

Тут сложнее: её числовое значение настраивается не в семействе (там задаются только линии полки, стрелка и т.д.), а в самом стиле высотной отметки.
Первым делом сделаем округление до 0.01. Далее нужно как-то добавить «0» в конец числа.
В «Свойствах типа» высотной отметки есть «Суффикс альтернативных единиц», но он отображается только для этих «Альтернативных единиц».
«Суффикс» есть в «Свойствах экземпляра» — можно поставить там 0:
Но это придется делать для каждой отметки. Нехорошо!
Я уже был готов добавлять 0 внутрь самого семейства отметки, но в ходе дальнейших исследований меня привлекли мне настройки в свойствах типа, содержащие слова «префикс» и «суффикс». Сможем мы с ними каши сварить?
Во-первых, настройки «Указатель верха/низа». Эти настройки используются, когда высотная отметка устанавливается не «Фактическая», а «Верхняя/Нижняя»:
«Нижняя» отметка позволяет установить на плане отметку низа плиты, а «Указатель низа» напоминает, что это именно отметка низа. Можно указать «н» как в начале, так и в конце числа.
Но эти префиксы не используются, когда ставится обычная «Фактическая» отметка…
Далее наш взгляд привлекает еще одна настройка: «Указатель отметки в виде префикса/суффикса». Что за зверь? Не очень понятно, переключаем — ничего не меняется. Высокотехнологичным научным методом определяем, что эта настройка связана с параметром «Указатель фасада». Непонятно, кто его так перевел, но это и есть желанный префикс:
Записываем туда «0», указываем «Суффикс» — но опять не то, некрасиво!
Ревит отделяет суффикс пробелом, поэтому нужно дополнительно включить «Подавлять пробелы«:
Готово! Хитрость рук и никакого мошенничества.
Само собой, лучше предварительно создать новый тип высотной отметки, чтобы не изменить всё отметки в проекте, и задать для неё какой-то другой цвет для визуального выделения.
Вот так будет выглядеть окончательная настройка:
Я вряд ли буду пользоваться такими отметками, но кому-то точно пригодится. Добавлю в следующую версию шаблона. Успехов :)