Pyslvs v0.9 大更新進度
- 加回自動旋轉鈕
- 自由移動支援多點
加回自動旋轉鈕
改良舊的 QThread,讓它掛在 main window 底下,不用因為面板關閉而刪除,執行上似乎有比以前順暢。
途中遇到修改動作會自動中斷。
自由移動支援多點
支援框選多個點拖移。
為避免此命令分散,造成復原功能困擾,包裝到一個巨集中。
這邊重寫一下公式,看以後是否有 CAD 互動的需求。
滑鼠滾輪平移檢視公式:
xOrigin(dragged)=xMouse(dragged)−(xMouse(pressed)−xOrigin(pressed))
yOrigin(dragged)=yMouse(dragged)−(yMouse(pressed)−yOrigin(pressed))
註:在 Widget 的座標系更改原點位置,以達成畫布平移。
拉動滑鼠同時拉動相對點的座標:
xpoint(dragged)=(xMouse(dragged)−xOrigin−(xMouse(pressed)−xOrigin)fzoom+xpoint(Origin)
ypoint(dragged)=(yMouse(dragged)−yOrigin−(yMouse(pressed)−yOrigin)fzoom+ypoint(Origin)
註:取得滑鼠移動增量套用縮放係數,加上該點原始座標,以獲得新的點座標。
Comments