Dynamo – Русский – только для чтения
Раздел для программистов и специалистов, использующих Dynamo
отмена
Отображаются результаты для 
Показать  только  | Вместо этого искать 
Вы имели в виду: 

Dynamo: Листы - Перемещение видов между листами

17 ОТВЕТ 17
РЕШЕНО
Ответить
Сообщение 1 из 18
Dronov.Dmitry
3006 просмотров, 17 ответов

Dynamo: Листы - Перемещение видов между листами

Собственно вопрос. 🙂 

Ревит не способен это сделать обычными средствами, интересно, можно ли это сделать с помощью динамо? 

Вот пример: 

Мне нужно перенести часть видов с листа на лист. 

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

 

Autodesk Revit 2014 - [Sheet АР-2 12-7 - Фасад Я-А. Разрезы В7 - В14 - ТРК_Ленина_Фасады.rvt].png.png

Теги (4)
17 ОТВЕТ 17
Сообщение 2 из 18
alexey.lobanov
в ответ: Dronov.Dmitry

Специальных нодов для этого нет. Поэтому придется погонять питончика.

 

Второй момент - это то, что нельзя переместить вьюпорт с одного листа на другой, но можно удалить вьюпорт со старого листа и создать на новом в той-же позиции с тем-же видом.

 

например, выделяем нужные вьюпорты, потом переключаемся на лист вставки и выполняем такой скрипт:

 


Alexey Lobanov / Алексей Лобанов
Revit Architecture Certified Professional | Autodesk Certified Instructor | Autodesk Expert Elite
PRORUBIM | YouTube channel | LinkedIn profile

Сообщение 3 из 18
Dronov.Dmitry
в ответ: alexey.lobanov

Спасибо.
Еще просьба: отакими штуками побаловаться:
https://github.com/
https://gitorious.org/
http://pastebin.com/
Сообщение 4 из 18
alexey.lobanov
в ответ: Dronov.Dmitry

всмысле?

зачем?


Alexey Lobanov / Алексей Лобанов
Revit Architecture Certified Professional | Autodesk Certified Instructor | Autodesk Expert Elite
PRORUBIM | YouTube channel | LinkedIn profile

Сообщение 5 из 18
Dronov.Dmitry
в ответ: alexey.lobanov

И я не совсем понял как это работает.
Вижу что селект модел элемент выделяет виды.
Но не вижу где выделяется лист на который нужно перенести эти виды.
Сообщение 6 из 18
alexey.lobanov
в ответ: Dronov.Dmitry

лист не выделяется...его надо сделать текущим перед запуском скрипта


Alexey Lobanov / Алексей Лобанов
Revit Architecture Certified Professional | Autodesk Certified Instructor | Autodesk Expert Elite
PRORUBIM | YouTube channel | LinkedIn profile

Сообщение 7 из 18
Dronov.Dmitry
в ответ: alexey.lobanov

ну это удобные штуки которые позволяют публиковать код. 

чтобы не приходилось его писать с картинки.

Сообщение 8 из 18
Dronov.Dmitry
в ответ: alexey.lobanov

ага. я понял.
попробую.
блин не знаю где питону+АПИ можно научится.
как баран на волшебство смотрю 🙂
Сообщение 9 из 18
Dronov.Dmitry
в ответ: Dronov.Dmitry

Вот код:   http://pastebin.com/aZdgUEcs

-

Работает спасибо.

Сообщение 10 из 18
Dronov.Dmitry
в ответ: Dronov.Dmitry

Еще вопрос по теме.... 

Что в скрипте нужно сделать чтобы название штампа переносилось на то же место относительно вида.. в моем случае по центру вверху... Оно улетает на стандартное место: слева внизу... 

a62b6d13aa.png

Сообщение 11 из 18
ans27
в ответ: Dronov.Dmitry

Расскажите, пожалуйста, поэтапно как работать со скриптом.

Как только не пробовал выдаёт:

"Warning: IronPythonEvaluator.EvaluateIronPythonScript operation failed.
Traceback (most recent call last): File "<string>", line 14, in <module> TypeError: iteration over non-sequence of type UnknownElement".

Сообщение 12 из 18
Dronov.Dmitry
в ответ: ans27
Сообщение 13 из 18
ans27
в ответ: Dronov.Dmitry

Спасибо. Заработало. Оказывается вместо нода Select Model Elements поставил Select Model Element.

Сообщение 14 из 18
Dronov.Dmitry
в ответ: ans27

Леш, в 0.7.6 пропал нод Element.Document 😞 

 

Dynamo.jpg

Сообщение 15 из 18
alexey.lobanov
в ответ: Dronov.Dmitry

Возможно вместо него сейчас Document.Current


Alexey Lobanov / Алексей Лобанов
Revit Architecture Certified Professional | Autodesk Certified Instructor | Autodesk Expert Elite
PRORUBIM | YouTube channel | LinkedIn profile

Сообщение 16 из 18
brichev
в ответ: alexey.lobanov

Добрый день. подскажите пожалуйста в чем может быть проблема и где искать пути решения. Версия Revit 2016 dynamo 1.0 . на версии 0.9 тоже не получаеться еще и вылетает. Пробовал на 2015 версии тоже не получилось

Сообщение 17 из 18
brichev
в ответ: brichev

Спасибо за подсказку Дмитрию. сейчас все работает надеюсь кому-нибудь пригодиться

 

import clr
clr.AddReference('RevitAPI')
from Autodesk.Revit.DB import *
 
clr.AddReference('RevitServices')
import RevitServices
from RevitServices.Transactions import TransactionManager

from RevitServices.Persistence import DocumentManager

from Autodesk.Revit.DB import *

doc = DocumentManager.Instance.CurrentDBDocument

TransactionManager.Instance.EnsureInTransaction(doc)

sheet = doc.ActiveView
 
for viewport in IN[1]:
        exVp = UnwrapElement(viewport)
        loc = exVp.GetBoxCenter()
        view = doc.GetElement(exVp.ViewId)
        doc.Delete(exVp.Id)
       
        newVp = Viewport.Create(doc,sheet.Id,view.Id,loc)
       
TransactionManager.Instance.TransactionTaskDone()

 

Сообщение 18 из 18
ДмитриевДС
в ответ: brichev


@brichev  написал (-а):

Спасибо за подсказку Дмитрию. сейчас все работает надеюсь кому-нибудь пригодиться


2018-06-14_17-44-16.png 


Подскажите, у вас этот скрипт работает в Ревит 2018 ?

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

Новая тема  

Autodesk Design & Make Report