2013-07-25 65 views
1

我已閱讀:C#: How to draw very large controls in a scrollable, zoomable panel?如何繪製縮放圖片框沒有重繪新的點

在我的問題

,我使用的圖片框繪製圖表我(其實這是一個輪廓)在C#。我想提請圖片框可以放大像zedgraph(C#庫)當我滾動我的鼠標:

1

enter image description here

enter image description here

enter image description here

enter image description here

我的問題是:可以我沒有重新計算這個點並且像zedgraph一樣從頭開始繪製它呢?

+0

在某些時候,你將不得不反對這個。否則,你可以做的是確保在重繪時限制視口,從而節省一些CPU週期。 –

+0

所以基本上沒有辦法我可以放大它沒有重新計算n重新繪製我的所有點(在我的視口)? –

+0

你可以......它只是你放大得越多。它會變得模糊。這就是我所說的反鋸齒,這將平滑線條。否則,您可以將幾個縮放級別緩存到某個點,然後在用戶進一步縮放時開始重新繪製。 –

回答

0

我猜這取決於你的圖形/輪廓是什麼樣子。 但是,我認爲是的,您可以在全縮放時繪製整個輪廓,並在縮放和平移時更改寬度/比例/ x屬性以操控顯示。

+0

我想避免重新計算我的觀點,任何想法的過程? –

+0

@ Ardhian'koponk'Nugroho是啊所以澄清,我的意思是,如果你計算你的積分一次在「全縮放」,你應該能夠繼續使用,而無需再次重新計算你的積分。例如,您想要在800像素的框中顯示輪廓;那麼您可以在5000像素等全縮放下繪製輪廓......然後在放大和縮小時,只需將更多輪廓圖像放入800像素的框中即可。 –

+0

@ Ardhian'koponk'Nugroho你有任何代碼讓你的輪廓進入你的picturebox? –