Pyslvs 編譯進度 - 演算法:
-
介面
-
程式
Pyslvs 編譯進度 - 演算法
介面
稍微改寫介面:
加入可以控制部份限制值的功能,並做好回傳結果的 dictionary 分類。
考慮之後,最後還是拿回進度條,做成流動的樣式(最大最小值設為 0 即可)。
除了現在的視窗外,之後還會加入第二個較小的清單窗格供使用者挑選,切換清單選擇項目時即可預覽,點選「合併」按鈕即可合併至畫布。
程式
測試不同組座標放入,發現超過當初預設的數目時,kernel 會報錯。
p = len(path) upperVal = Limits[0]+[360.0]*p lowerVal = Limits[1]+[0.0]*p Parm_num = p+9
這裡 p 代表座標的數量,upperVal 和 lowerVal 是限制值的組合(共 9 項)加上後面點座標的轉動可能性。
Parm_num 會帶入三種演算法的 nParm、D 位置,必須等於 upperVal 和 lowerVal 的長度。
比較好奇的是最後回傳的 fitnessParameter 長度會剛好等於 Parm_num,而且前 9 項是 Ax、Ay、Dx、Dy、L0、L1、L2、L3、L4 的答案,後面都是超過範圍的 float 數值,不知道代表含意。
預覽的部份比較複雜,因為當前的 Solvespace 解題 function 是針對左邊的表單寫的,若是拿來運算 3 個未知點的圖形,必須改寫帶入參數。
單機演算法解題的部份預計寒假初完成,釋出 Version 0.4.0,寒假進行中會加入平行運算,並同時完成其他項目。
Comments
comments powered by Disqus