SolidWorks專門論壇 SolidWorks forum

 找回密碼
 註冊
查看: 2743|回復: 5

如何用開發的方式實現鼠標移動帶動零件的旋轉?

[複製鏈接]
發表於 2018/5/28 17:08:39 | 顯示全部樓層 |閱讀模式
我想實現像sw中,用戶選中零件 然後拖動鼠標可以實現旋轉,現在沒有什麽思路,希望各位大佬給點指導。thanks!

本帖子中包含更多資源

您需要 登錄 才可以下載或查看,沒有賬號?註冊

x
發表於 2018/5/28 20:25:47 | 顯示全部樓層
使用者拖動鼠標讓零件旋轉是一個不斷變動的過程
也就是旋轉軸矢量不斷變化(不一定是定軸旋轉)
但是用程式拖動零件必須完整定義所有參數
除非轉一小段就重新定義旋轉中心和旋轉軸,不然很難做到鼠標拖曳的效果

我比較好奇這個問題是出自於什麼情境?
我單純裝配還沒想過有這樣的問題呢!!!

點評

您好,多謝回帖,我本來是要做一個繞一個基準軸旋轉一定的輸入角度,但是後來老闆說需要做成通過鼠標的移動來實現旋轉,我本來是想獲取用戶鼠標移動的位置,然後進行轉換在360°之内的數值達到目的,目前問題是無法  詳情 回復 發表於 2018/5/28 20:50
 樓主| 發表於 2018/5/28 20:50:32 | 顯示全部樓層
jbkndron 發表於 2018/5/28 20:25
使用者拖動鼠標讓零件旋轉是一個不斷變動的過程
也就是旋轉軸矢量不斷變化(不一定是定軸旋轉)
但是用程式拖 ...

您好,多謝回帖,我本來是要做一個繞一個基準軸旋轉一定的輸入角度,但是後來老闆說需要做成通過鼠標的移動來實現旋轉,我本來是想獲取用戶鼠標移動的位置,然後進行轉換在360°之内的數值達到目的,目前問題是無法獲取這個鼠標位置,之前通過建立標尺,通過用戶拖拉標尺來轉化角度,但是這種方法存在反應過慢的問題,且操作不方便。 所以現在問題就又變成了獲取用戶鼠標位置和建立實時的sw和VS的通訊。不知道這種方式是否可行,因爲技術問題,暫時還沒有嘗試

點評

這麼特別的目標我也沒試過,但要取得座標和移動點要用到事件觸發了 DMouseEvents_MouseMoveNotifyEventHandler Delegate (SolidWorks.Interop.sldworks) DMouseEvents_MouseLBtnDownNotifyEventHandler Delegate (So  詳情 回復 發表於 2018/5/28 21:02
發表於 2018/5/28 21:02:35 | 顯示全部樓層
BobSun 發表於 2018/5/28 20:50
您好,多謝回帖,我本來是要做一個繞一個基準軸旋轉一定的輸入角度,但是後來老闆說需要做成通過鼠標的移 ...

這麼特別的目標我也沒試過,但要取得座標和移動點要用到事件觸發了
DMouseEvents_MouseMoveNotifyEventHandler Delegate (SolidWorks.Interop.sldworks)
DMouseEvents_MouseLBtnDownNotifyEventHandler Delegate (SolidWorks.Interop.sldworks)
我目前想到的方向是用這兩個東西去拼出來,但我沒寫過SolidWorks的事件觸發,所以不確定可不可行
只要鼠標座標變動就會不斷觸發MouseMove事件,可以用來刷新座標,用來比較或計算增量

點評

thanks, i will try  詳情 回復 發表於 2018/5/28 21:47
 樓主| 發表於 2018/5/28 21:47:41 來自手機 | 顯示全部樓層
jbkndron 發表於 2018/5/28 21:02
這麼特別的目標我也沒試過,但要取得座標和移動點要用到事件觸發了
DMouseEvents_MouseMoveNotifyEventHan ...

thanks, i will try
發表於 2018/6/8 14:25:54 | 顯示全部樓層
組合件裡,對著要旋轉的零件,滑鼠右鍵按住拖動就可以做了
您需要登錄後才可以回帖 登錄 | 註冊

本版積分規則

論壇統計|手機版上論壇|論壇來自幾何科技 論壇架構版次 20240312

GMT+8, 2024/4/20 15:52 , Processed in 0.245911 second(s), 17 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2023 Discuz! Team.

快速回復 返回頂部 返回列表