Переименовать группу

Главная Форумы Python Помогите с питон кодом Переименовать группу

Просмотр 3 сообщений - с 1 по 3 (из 3 всего)
  • Автор
    Сообщения
  • #9254 Score: 0
    Valeriy
    Участник

    Здравствуйте! Начал изучать Python и Dynamo. Возник вопрос

    Вот код на питоне который создает группу. Мне нужно задать определенное имя(“MyName”) только что созданной группе. Подскажите пожалуйста как это можно сделать.

    import clr
    clr.AddReference('RevitAPI')
    from Autodesk.Revit.DB import *
    from Autodesk.Revit.DB import ElementTransformUtils, ElementId

    clr.AddReference("System")
    from System.Collections.Generic import List

    clr.AddReference("RevitNodes")
    import Revit
    clr.ImportExtensions(Revit.Elements)

    clr.AddReference("RevitServices")
    import RevitServices
    from RevitServices.Persistence import DocumentManager
    from RevitServices.Transactions import TransactionManager

    doc = DocumentManager.Instance.CurrentDBDocument

    Ids=List[ElementId]()
    for i in IN[0]:
    Ids.Add(UnwrapElement(i).Id)

    TransactionManager.Instance.EnsureInTransaction(doc)

    MyGroup = doc.Create.NewGroup(Ids)
    #MyGroup.Rename("MyName") # так не получиось

    TransactionManager.Instance.TransactionTaskDone()

    OUT=Ids

    #9255 Score: 0
    Анатолий
    Участник
    37 pts

    Попробуйте вот так

    import clr
    clr.AddReference('RevitAPI')
    from Autodesk.Revit.DB import *
    clr.AddReference("System")
    from System.Collections.Generic import List
    clr.AddReference("RevitServices")
    import RevitServices
    from RevitServices.Persistence import DocumentManager
    from RevitServices.Transactions import TransactionManager
    doc = DocumentManager.Instance.CurrentDBDocument
    Ids=List[ElementId]()
    for i in IN[0]:
    	Ids.Add(UnwrapElement(i).Id)
    newName = "Новая группа" #или newName = IN[1], где на вход подать имя
    TransactionManager.Instance.EnsureInTransaction(doc)
    MyGroup = doc.Create.NewGroup(Ids)
    MyGroup.GroupType.Name = newName
    TransactionManager.Instance.TransactionTaskDone()
    OUT = Ids
    #9256 Score: 0
    Valeriy
    Участник

    Анатолий! огромное спасибо за подсказку, все получилось

Просмотр 3 сообщений - с 1 по 3 (из 3 всего)
  • Для ответа в этой теме необходимо авторизоваться.