滑鼠互動事件:點兩個點形成一條線
通過滑鼠點兩個點,同時標記這兩個點,形成一條線。(只有一條線,並不是每次點兩個點都會新出現一條線)
這個版本是個初級版本,(後面我也實現了任意拖動乙個點,直線會相應發生變化,以及兩點在z軸上的變動,線也會同步更新)。**太多所以我也沒有貼上來,有需要了我會發出來!
double point1[3];double point2[3];double point3[3];double p[3];
double worldpointbegin[3];double worldpointend[3];
int *clickposbegin;int *clickposend;int *click;
class custommouseinteractorstyle : public vtkinteractorstyletrackballcamera
else if(i==1)
}
};vtkstandardnewmacro(custommouseinteractorstyle);
更新:這個是滑鼠拖動begin 和end 中的任意一點,直線隨即更新。可以看到其中有很多**是重複的,我在實際用的時候重複的做成函式呼叫,因為放這函式多了顯得亂,我就直接貼上來了。如果有問題,可以及時溝通!
其中:point1和point2始終是 begin和end 的滑鼠點的二維座標(後面轉化為3維),通過判斷point3與她們兩個的位置關係,判斷當前操作的點。
virtual void onmiddlebuttondown()
virtual void onmiddlebuttonup()
else if (beginorend == 2) //操作的是第二個點
else
}
VTK滑鼠選點
開啟點雲後用滑鼠選點並輸出選中點資訊 catch mouse events class mouseinteractorstyle public vtkinteractorstyletrackballcamera virtual void onleftbuttondown forward events...
MFC 滑鼠畫線總結
使用mfc滑鼠畫線,主要使用滑鼠左鍵單擊,滑鼠移動,滑鼠右鍵單擊等響應函式完成。在mfc畫線是主要要注意以下幾點 1 座標系問題 在滑鼠左鍵單擊的響應函式中獲取的滑鼠座標為裝置座標 螢幕座標 而畫線使moveto,lineto函式使用的是邏輯座標 客戶區座標 因此在獲取滑鼠單擊座標時需要進行座標系的...
例項107滑鼠畫線
控制項的mousedown事件處理過程青兩個引數,乙個是sender,乙個是mouseeventargs類的事件。mouseeventargs類是定義在system windows forms中的乙個類,它由同乙個命名空間下的eventargs繼承而來。mouseeventargs類的主要屬性有 g...