Pyslvs v0.9 大更新進度
- 輸入 (Inputs) 介面
- Version 0.9 Bata 計畫
輸入 (Inputs) 介面
製作了藉由自由度輸入變數至機構的 GUI,介面盡量設計得直覺一些。
Points 清單的更新模式是跟畫布 (Canvas) 同步的,無論是新增、刪除節點,還是選取、取消選取,Points 清單都會保持最新狀態,方便使用者設計時不再需要一直跳出視窗設定。
首先由 Points 清單選擇節點,接著選擇基準桿件與驅動桿件,例如圖中 link_1 和機架 ground 做相對運動,按下「Add to variable list」鈕加入到下方的變數清單。
由於自由度 (DOF) 的數學定義是能取決該機構節點位置的變數數量,因此 Variables 清單的長度不可大於自由度。
選取變數後,可以藉由右邊的轉盤增減量。
由於還有幾個部份還沒確定,因此還未將控制添加給 Solvespace API。
待決定事項
關於輸入 (Inputs) 介面功能的未決定事項,想在這裡列出來,看看是否靈光一現,能有兩全其美的規劃。
-
因為此介面是與機構 (Mechanism) 完全同步,是否改變機構外觀時就要更新變數的內容了呢?
-
正在規劃錄製 (Records) 清單的角色定位,至少能達成 Solvespace 中紀錄並繪製點座標的功能,但也因上述問題,不知是否處理已錄製的數據。
-
搭配下述新的版次管理,希望錄製 (Records) 清單能保存每個版本機構的路徑資料。
Version 0.9 Bata 計畫
當新的 PMKS 表示法和輸入功能建立好後,會封鎖還未完成的功能(例如輸出輸入與舊範例),釋出這兩個新系統的 Bata 版本。
而 Bata 版的推出是一系列的,釋出時將會標明測試哪部份的功能。
預計將分批測試以下項目(順序可變):
- PMKS 表示法和輸入功能
- 具有版次紀錄的檔案格式
- 大量機構範例
- 外部格式輸出
具有版次紀錄的檔案格式
- 新的檔案格式採用 SQL Database。
- 僅會紀錄機構變更內容。
- 設計一組符合 PMKS 表示法的索引值,讓 Pyslvs 可以更快更動機構內容。
- 「變更內容」搭配「索引值」,可以比較出機構差異,若要合併分支,需要設計差異疊加的判斷功能。
- Undo Redo 清單仍只會依順序重新建立機構,以免造成程式負擔。
大量機構範例
- 這部份想學習顏鴻森教授的「一般化」,嘗試將不同組合的運動鍊轉換後導入。
- 機構範例用 PMKS 網址參數就能紀錄了,可以較以前省下更多資源空間。
外部格式輸出
-
修正舊的 Solvespace 導出功能,會再向開發人員詢問問題。
-
導出格式:
- PMKS 網址(完成)
- 截圖用 Qt 轉檔或複製到剪貼簿(完成)
- Pyslvs 格式
- Solvespace 格式
- DXF 平面格式
Comments
comments powered by Disqus