@Nick_Boyts , I have almost the solution, I have changed the values inside the loop but when I try to set them inside the parameter I got an error:
elements and values structure list:
What do I miss?
elementen = UnwrapElement(IN[0])
TransactionManager.Instance.EnsureInTransaction(doc)
#connectors controleren en unconnected pipes over houden
lengtes = []
for pipe in elementen:
for p in pipe:
lengtes.append([])
for i in p:
namen = GetName(i)
try:
conns = i.ConnectorManager.Connectors
except:
conns = i.MEPModel.ConnectorManager.Connectors
for conn in conns:
if conn.IsConnected and namen.Contains("Alupex"):
lengte = i.get_Parameter(RDB.BuiltInParameter.CURVE_ELEM_LENGTH).AsValueString()
lengtes[-1].append(int(lengte))
elif namen.Contains("Alupex"):
lengte = 1500
lengtes[-1].append(int(lengte))
else:
lengte = i.LookupParameter("Length").AsValueString()
lengtes[-1].append(int(lengte))
section_lengte = []
for l in lengtes:
s = 0
section_lengte.append([[sum(l)]])
i.LookupParameter("Section lengte").Set(section_lengte[s])
s +=1
#einde transactie
TransactionManager.Instance.TransactionTaskDone()
OUT = section_lengte