ICollections

Помечено: 

В этой теме 2 ответа, 3 участника, последнее обновление  Dmitry_dronov 3 года/лет, 7 мес. назад.

Просмотр 3 сообщений - с 1 по 3 (из 3 всего)
  • Автор
    Сообщения
  • #1725 Score: 1

    Legantmar
    Хранитель
    459 pts

    для некоторых команд нужен не список, а ICollections
    добавлю на форум, чтобы проще было искать.

    clr.AddReference("System")
    from System.Collections.Generic import List
    Ids=List[ElementId]()

    добавление в ICollection происходит командой Add, а не append

    for i in IN[0]:
    	Ids.Add(UnwrapElement(i).Id)
    #1729 Score: 1

    Khasan Mamaev
    Хранитель
    181 pts

    Ids=List[ElementId]() – так задается пустое множество

    #1760 Score: 2

    Dmitry_dronov
    Модератор
    49 pts

    Есть еще один замечательный способ.
    Делаете ваш список стандартными методами питона.
    outlist.append(a)
    outlist.extend(b)
    outlist.pop(c)

    а затем конвертируете его в ай_лист с нужным параметром
    i_outlist = List[ElementId](outlist)

    import clr
    clr.AddReference('ProtoGeometry')
    from Autodesk.DesignScript.Geometry import *
    #Import ILIST method
    from System.Collections.Generic import *
    inlist1 = IN[0]
    inlist2 = IN[1]
    outlist = []
    for i in range(len(inlist1)):
    outlist.append(inlist1[i])
    i_outlist = List[int](outlist)
    for i in range(len(inlist2)):
    i_outlist.Add(inlist2[i])
    OUT = outlist,i_outlist
    

Просмотр 3 сообщений - с 1 по 3 (из 3 всего)

Для ответа в этой теме необходимо авторизоваться.