ICollections

Помечено: 

Просмотр 3 сообщений - с 1 по 3 (из 3 всего)
  • Автор
    Сообщения
  • #1725 Score: 1
    Legantmar
    Хранитель
    474 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
    Модератор
    186 pts

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

    #1760 Score: 2
    Dmitry_dronov
    Модератор
    50 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 всего)
  • Для ответа в этой теме необходимо авторизоваться.