2010-11-11 93 views
0

我有一個矩形類,有2個點,中心軸點和矩形的大小。比方說,我想用鼠標拖動矩形的底部,但保持它的頂部在同一個位置。找到中心位置和基於鼠標的新矩形大小的算法是什麼?在此先感謝:)通過鼠標調整大小

+0

您需要提供更多關於庫等的數據,這些數據用於創建窗口,繪圖等等。 – Kos 2010-11-11 20:55:26

+0

我不明白這對任何事物都有幫助嗎? – Matt 2010-11-11 23:14:51

回答

1

將底部(右側角)拖動時,將中心向同一方向移動一半,然後移動距離(在X和Y中任一個或兩個中)。

+0

打敗我吧:-P +1簡而言之,寫得很好的解釋。 – Bojangles 2010-11-11 20:43:42

0

我會假設一個圖形API在這裏,它是什麼?我還假設你已經研究出如何檢測鼠標點擊你的盒子邊緣,你是否確定了它的工作原理?他們只需要點擊它附近,然後他們拖動確切的角落或什麼?

我可以告訴你,當他們第一次點擊鼠標時,你將需要記錄鼠標的位置,並獲得與現在不同的位置。距離的一半,然後將其添加到原始中心。

EDIT

哦,對於新的尺寸,鼠標位置的其差值添加到原來的大小。所以如果鼠標向下移動(增加y)和向左移動(減少x),每個方向說10個單位,那麼可以使得十個單位更高,十個單位更窄,中心將會減少5個,剩下5個。

+0

它使用我的朋友創建的2D框架,但它使用OpenGL和SDL進行圖形處理。 – Matt 2010-11-11 20:47:33

0

更容易分辨鼠標移動的差異,並創建一個尺寸爲新的矩形。然後使用矩形類來檢查中心點。比抵消舊中心容易得多。

+0

沒有機會在計算上失敗,減少代碼評論,代碼將更容易閱讀。 – 2010-11-11 21:05:49

相關問題