Dynamo中對構件通過某一規律排序

啓用 Python 支持和加載 DesignScript 庫

import clr
clr.AddReference(‘ProtoGeometry’)
from Autodesk.DesignScript.Geometry import *

該節點的輸入內容將存儲爲 IN 變量中的一個列表。

dataEnteringNode = IN

將代碼放在該行下面

sortNums=IN[0]
elements=IN[1]

#通過(用於編碼的值,編碼模型,是否反轉從小到大或者從大到小)進行模型編碼
def sortElement(sortNums,elements,IsReverse):
l = len(sortNums)
j=0
for i in range(1,l):
temp = sortNums[i]
tempa=elements[i]
for j in range(i-1, -1, -1):
if temp < sortNums[j]: #如果第i個元素大於前i個元素中的第j個
sortNums[j+1] = sortNums[j] #則第j個元素先後移1位
elements[j+1]=elements[j]
sortNums[j] = temp #將i個元素賦值給空着的位置
elements[j]=tempa
else: #如果第i個元素小於等於前i個元素中的第j個則結束循環
break

if(IsReverse):
	elements=elements
else:
	aa=[]
	for i in range(len(elements)):
		aa.append(elements.pop())
	elements=aa
return elements

將輸出內容指定給 OUT 變量。

OUT = elements

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章