Category of element

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

    Как в ноде питонскрипта, на вход коего подается элемент, определить категорию этого элемента?

    #2631 Score: 0
    Vladimir
    Участник
    13 pts

    Так тут это уже что-то вроде фака, у самых истоков форума выложено, если я правильно понял вопрос.

    #2633 Score: 0
    Vladimir
    Участник
    13 pts

    вы про это? ссыль

    #2634 Score: 1
    Legantmar
    Хранитель
    474 pts

    OUT = UnwrapElement(IN[0]).Category.Name

    #2635 Score: 0
    Nikolai
    Участник

    Чтобы не плодить тем, будьте добры, как я могу получить длину и ширину(размеры сторон, если их много) room/помещения

    #2636 Score: 0
    Khasan Mamaev
    Модератор
    186 pts

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

    #2637 Score: 0
    Nikolai
    Участник

    Khasan Mamaev, определенно нет, но я как предполагаю – выбрать нужный элемент, подключить к нему нод аля element.solid, а вот что делать дальше с геометрией этого помещения я не знаю, а возможно я совсем не прав, но хотелось бы все же узнать, если есть урок, где это есть, то буду рад и ему

    #2638 Score: 0
    Legantmar
    Хранитель
    474 pts

    можно вот так (пример для 2-х помещений):

    Скачать (Dynamo 0.8.2)

    #2639 Score: 0
    Nikolai
    Участник

    Legantmar, работает, но хочется узнать, может есть другие реализации? Ибо там жутко непонятный питон скрипт, разбираться разберусь, когда-нибудь, но може всё же есть др варианты? Мне вот интересно, Khasan Mamaev тот же вариант предложить хотел или нет

     

    #2649 Score: 0
    Nikolai
    Участник

    Не понимаю, почему не могу получить параметр у элеманта

    OUT = UnwrapElement(IN[0][0]).Parameter[“Параметр”].AsString()

    Предупреждение:IronPythonEvaluator.EvaluateIronPythonScript операция не выполнена.
    Traceback (most recent call last):
    File “<string>”, line 5, in <module>
    TypeError: expected BuiltInParameter, got str

    #2650 Score: 0
    Legantmar
    Хранитель
    474 pts
    #2651 Score: 0
    Nikolai
    Участник

    Legantmar, 16, сделал как там, выдает не число, а строчку “Autodesk.Revit..DB.Parameter”, что с этим делать?, а вышеприведенный мною вариант может работать?

    #2652 Score: 0
    Legantmar
    Хранитель
    474 pts

    если получаешь имя, то добавь в конце AsString(), если число, то AsDouble()

    p.s. мое мнение – все это в питоне работает через раз, лучше используй нод динамо GetParameterValueByName

    #2653 Score: 1
    Khasan Mamaev
    Модератор
    186 pts

    напиши так OUT = dir(UnwrapElement(IN[0][0]).Parameter[«Параметр»]) , будет выдан список из него выбери AsString или что то еще

    #2654 Score: 0
    Nikolai
    Участник

    import clr
    clr.AddReference(‘RevitAPI’)
    from Autodesk.Revit.DB import *
    from System.Collections.Generic import *
    import clr
    clr.AddReference(‘ProtoGeometry’)
    from Autodesk.DesignScript.Geometry import *
    r=UnwrapElement(IN[0])
    list=[]
    for i in r:
    f=i.GetParameters(“Длина”)
    list.append(f.AsDouble())
    OUT = list

    не желает распознавать AsDouble(), вроде все импортировал, но

    Предупреждение:IronPythonEvaluator.EvaluateIronPythonScript операция не выполнена.
    Traceback (most recent call last):
    File “<string>”, line 12, in <module>
    AttributeError: ‘List[Parameter]’ object has no attribute ‘AsDouble’

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