Pyslvs v0.9 大更新進度

  • 使用者介面

  • 程式碼

Pyslvs v0.9 大更新進度

經過近一週的大幅度調整後,移除累贅的 module files,重寫了基本函式,大致上已經把底層表示式建好了,PMKS 的滑塊部份還未研究,因此先不加入。

以下將說明當前程式部份的達成部份。

使用者介面

大改版之前有換過圖示,Points 使用軸承圖示;Links 使用曲柄表示,之前從 Solvespace 借用的圖示改為較直覺的樣式。

介面更動後比較清爽了,只剩兩個表格操作:

Link 的部份跟過去的原點一樣,預設有一個 ground,無法修改或刪除。

以前的切換 Fix / Unfix 功能調整成會將 ground 加入此點。

這兩個表格其實是相輔相成的,改動其中一邊會造成包含的內容同時修正,因此在設計時可以先建立空點或空連桿,再接著連起來即可。

快速建法跟以前一樣使用拖拉模式,不過這部份要自動填入名稱,還未設計好。

為此有別重寫 Qt 的 Undo Redo command。由於只有兩個表格,因此這次設計較為周全。

下方的包含清單是使用拖拉的方式加入和移除,Link 的名稱一樣是自訂,是通過 String 類型的 isidentifier()方法辨認。

這次改換了新的表示式,因此趁機會將資料格式一舉調整,節省使用空間。

另外還順便拉了版本控制的說明介面:

程式碼

這次表示式的部份採用 PEP 484 的風格撰寫,因此 Python 必須升級到 3.5 版或以上。

重寫的部份,在邏輯方面加入了多行的程式註解,免得較細節的部份看不懂。

由於中心部份直接刪除重做,連接處仍然需要維修,例如 Panels 跟畫布和表格互動的部份。

PMKS 表示式的好處是更節省函式和物件的空間。

這次基礎建設改動了 69 個檔案,首要目標是先將舊功能加回,規劃新檔案格式後,再將幾個重要的 Examples 補齊。

看了相關資料後,發覺 fossil 格式包含的項目滿多的,可能要評估如何將 Points 表格的資料以何種方式存入 Database,fossil 的版次格式和 merge 方式也需要研究。


Comments

comments powered by Disqus