пятница, 12 декабря 2014 г.

[API Revit] - Перевод из футов в миллиметры

Значения геометрических параметров в API Revit выдаются в имперской системе измерений.
Для перевода единиц в метрическую систему пользуюсь методом ConvertFromInternalUnits класса UnitUtils.

Пример:

//Получение координаты Z точки вставки семейства

FamilyInstance LInstance = elem as FamilyInstance;
LocationPoint pt = LInstance.Location as LocationPoint;
string PtString =
UnitUtils.ConvertFromInternalUnits(pt.Point.Z, DisplayUnitType.DUT_MILLIMETERS).ToString();
TaskDialog.Show("Revit", PtString);


вторник, 9 декабря 2014 г.

[API Revit] - Не работает get_Parameter().Set()

Чтобы внести какое-либо изменение в модель требуется создать транзакцию. Очень доступно про транзакции описано в учебном курсе "Моя первая программа" для Autodesk Revit, урок 3.

Про регенерацию и транзакции есть выступление Бориса Шафиро на Autodesk University Russia 2014.

Наглядно результат использования транзакций можно посмотреть в видео Harry Mattison'а.


понедельник, 1 декабря 2014 г.

[API Revit] - Как определить в каком пространстве находится семейство

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

 FamilyInstance FInst = elem as FamilyInstance;
string SpaceName = FInst.Space.Name;
string SpaceId = FInst.Space.Id.IntegerValue.ToString();

среда, 26 ноября 2014 г.

[API Revit] RevitRubyShell

Наконец-то нашёл консоль для API Revit.
Автор - Håkon Clausen, на его странице есть ссылки на репозиторий в GitHub и на установщик.

вторник, 25 ноября 2014 г.

[API Revit] - Как получить встроенные наименования параметров элемента

Хочу показать на простом примере работу Revit Lookup.

1. Выбрать элемент
2. В Revit Lookup выбрать "Snoop Current Selection..."
3. В разделе "Element" выбрать "Parameters"
4. Если требуется получить встроенный параметр одного элемента, то в разделе "Parameter" выбрать "Definition"




пятница, 21 ноября 2014 г.

[API Revit] - Как определить, в каком помещении находится элемент

Встроенные параметры помещения для элемента:

ELEM_ROOM_NUMBER
ELEM_ROOM_NAME
ELEM_ROOM_ID

Пример:

{
String info = "Параметры помещения для элемента: \n\t";
foreach (Element elem in collection)
{
Parameter param = elem.get_Parameter(BuiltInParameter.ELEM_ROOM_NUMBER);
info += "\n\t Номер помещения: " + param.AsString();

param = elem.get_Parameter(BuiltInParameter.ELEM_ROOM_NAME);
info += "\n\t Имя помещения: " + param.AsString();

param = elem.get_Parameter(BuiltInParameter.ELEM_ROOM_ID);
info += "\n\t ID помещения:" + param.AsValueString();
}
TaskDialog.Show("Revit", info);
}

четверг, 20 ноября 2014 г.

[CodeToGo] Приложение для iOs - редактор исходных текстов

Дельная программа, пользуюсь для чтения в дороге примеров из SDK API Revit и Developer Guide PDF. В редакторе код программы почему-то воспринимается значительно лучше, чем в pdf. Не хватает только подсветки для классов Revit API.

среда, 19 ноября 2014 г.

[Revit] - Базовая точка при повороте элементов

Чтобы быстро перейти к заданию базовой точки для поворота элементов после вызова команды "Повернуть" нажать пробел.

Нашёл тут

UPD:

Побаловался немного.
Если зажать Ctrl при активной команде "Выровнять", то активизируется галка "Множественное выравнивание",
при команде "Обрезать/Удлинить один элемент" включается режим "Обрезать/Удлинить нескольких элементов",
при команде "Смещение", "Зеркало", "Поворот" управляет галкой "Копировать"




среда, 29 октября 2014 г.

воскресенье, 26 октября 2014 г.

[Revit] - Выравнивание осей

Выравнивание осей с помощью области видимости





четверг, 9 октября 2014 г.

[AutoCAD] Слетают настройки профиля при подгрузке CUI

Решение нашёл здесь

ПКМ на шестерёнку в правом нижнем углу Autocad, выбрать в выпадающем меню пункт "Сохранить текущее как..." и сохранить рабочее пространство под тем же именем.



воскресенье, 28 сентября 2014 г.

[Revit] Сжирает всю оперативную память

Столкнулся с проблемой на ноутбуке. Даже если работаю с маленьким файлом память очень быстро забивается под завязку. Решилось всё случайно - при просмотре свойств графики в Revit пишется, что используется видеокарта Intel, хотя в настройках переключаемой графики указал для Revit видеокарту Rаdeon. Выключил динамическое переключение видеокарт в настройках BIOS, задал карточку Radeon по умолчанию - всё в порядке :)

среда, 30 июля 2014 г.

[Revit] - Полезные ссылки

Семейство каркас несущий - назначение плоскостей - тут же написано, что означает параметр "Округление длины несущего каркаса"

[Revit 2014] - Танцы с бубном вокруг семейств стальных балок и раскосов предыдущих версий  здесь

Выключение вложенного семейства без использования параметров видимости


среда, 18 июня 2014 г.

Блокировка сайтов

Заблокировал на своей машине развлекательные и новостные сайты, чтобы не отвлекали от дела.

В файле "C:\Windows\System32\drivers\etc\hosts" прописал:

127.0.0.1 http://news.yandex.ru
127.0.0.1
127.0.0.1 www.yaplakal.com

и так далее.

При попытке зайти на новостной сайт выводится пустое окно.