Пользовательская система координат

Автор Тема: Пользовательская система координат  (Прочитано 3918 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн Алексей (IdeaSoft)Автор темы

  • ADN
  • *
  • Сообщений: 1188
  • Карма: 9
    • idea-soft.ru
  • Skype: makar_govorun
Есть несколько сотен файлов rvt с точетными объектами строительства. Всё модели расположены рядом с точкой x=0;y=0. По коорд. Z все нормально. Хочу сделать плагин, который установит для каждого файла пользовательский систему координат. Какими классами и методами revit API мне воспользоваться, что бы задать каждому файлу свою систему координат.
Ну или как альтернатива сдвинуть все модель на нужное мне смещение. И еще нужно повернуть систему координат на угол.
« Последнее редактирование: 20-09-2018, 21:55:37 от Александр Ривилис »

Оффлайн Александр Ривилис

  • Administrator
  • *****
  • Сообщений: 13830
  • Карма: 1784
  • Рыцарь ObjectARX
  • Skype: rivilis
Алексей (IdeaSoft),
Ты в очередной раз создал тему не в том разделе. Доколе? Или ты раздел Revit API не видишь, в котором уже создавал темы?
Тема перенесена.
Не забывайте про правильное Форматирование кода на форуме
Создание и добавление Autodesk Screencast видео в сообщение на форуме
Если Вы задали вопрос и на форуме появился правильный ответ, то не забудьте про кнопку Решение

Оффлайн Алексей (IdeaSoft)Автор темы

  • ADN
  • *
  • Сообщений: 1188
  • Карма: 9
    • idea-soft.ru
  • Skype: makar_govorun
Да раздел Ревит вижу. С телефона пишу. Не удобно. Вот и щёлкнул ни туда.
Извиняюсь.

Оффлайн Александр Ривилис

  • Administrator
  • *****
  • Сообщений: 13830
  • Карма: 1784
  • Рыцарь ObjectARX
  • Skype: rivilis
Ну или как альтернатива сдвинуть все модель на нужное мне смещение. И еще нужно повернуть систему координат на угол.
Может это и сделать? Только поворачивать не систему координат, а модель?
Для переноса можно воспользоваться методом:
Autodesk.Revit.DB.ElementTransformUtils.MoveElements
Для поворота: Autodesk.Revit.DB.ElementTransformUtils.RotateElements

Не забывайте про правильное Форматирование кода на форуме
Создание и добавление Autodesk Screencast видео в сообщение на форуме
Если Вы задали вопрос и на форуме появился правильный ответ, то не забудьте про кнопку Решение

Оффлайн Алексей (IdeaSoft)Автор темы

  • ADN
  • *
  • Сообщений: 1188
  • Карма: 9
    • idea-soft.ru
  • Skype: makar_govorun
Делаю  так:

Код - C# [Выбрать]
  1. var col = new FilteredElementCollector(doc);
  2. var FEC = new FilteredElementCollector(doc).OfClass(typeof(View));
  3. XYZ move = new XYZ(x,y, z);
  4. ICollection<ElementId> idColl = FEC.ToElementIds();
  5. ElementTransformUtils.MoveElements(doc, idColl, move);
                       
Не переносятся элементы вида. Может я что-то не так делаю?

Может нужно выбирать модель?  В проводнике проекта Revit есть элемент "Ф. 3D прозр."
Может нужно выбрать Элемент вида "{3D}"?
 

Оффлайн Александр Ривилис

  • Administrator
  • *****
  • Сообщений: 13830
  • Карма: 1784
  • Рыцарь ObjectARX
  • Skype: rivilis
Не переносятся элементы вида. Может я что-то не так делаю?
Думаю, что тебе нужно переносить элементы модели, а не вида.
Не забывайте про правильное Форматирование кода на форуме
Создание и добавление Autodesk Screencast видео в сообщение на форуме
Если Вы задали вопрос и на форуме появился правильный ответ, то не забудьте про кнопку Решение

Оффлайн Алексей (IdeaSoft)Автор темы

  • ADN
  • *
  • Сообщений: 1188
  • Карма: 9
    • idea-soft.ru
  • Skype: makar_govorun
Пока не пойму.
Наверное нужно вставить конструкцию транзакции

Код - C# [Выбрать]
  1.                 using (RVT_DB.Transaction tr = new RVT_DB.Transaction(doc))
  2.                 {
  3.                     tr.Start();
  4.                  ...
  5.                     tr.Commit();
  6.                 }

Оффлайн Александр Ривилис

  • Administrator
  • *****
  • Сообщений: 13830
  • Карма: 1784
  • Рыцарь ObjectARX
  • Skype: rivilis
Наверное нужно вставить конструкцию транзакции
Это 100%. И посмотри статью о выборе всех элементов в модели: http://thebuildingcoder.typepad.com/blog/2017/01/dynamic-scripts-model-elements-and-vertical-alignment.html#3
Не забывайте про правильное Форматирование кода на форуме
Создание и добавление Autodesk Screencast видео в сообщение на форуме
Если Вы задали вопрос и на форуме появился правильный ответ, то не забудьте про кнопку Решение

Оффлайн Алексей (IdeaSoft)Автор темы

  • ADN
  • *
  • Сообщений: 1188
  • Карма: 9
    • idea-soft.ru
  • Skype: makar_govorun
Спасибо за ссылку. Попробую.