C#繪圖工具之Rotate

來源:互聯網
上載者:User

      中間的一段時間因為要為下個項目做準備,暫時放下了繪圖工具方面的學習,封裝了一個TCP的類。最近總算把手上的一些雜活弄完了,繼續研究GDI方面的知識。

      記得在繪圖工具之Redim那一講中有提到接下來是要說說Rotate功能的實現,那這一講就看看Rotate的效果。先看看吧。

     

      在旋轉功能的實現中有兩個知識點需要特別說明一下,一個是基於基點按照一定的角度旋轉後得到一個新點,這個完全是數學方面的知識,可以很容易的推匯出公式(x_new=x_old*cosa-y_old*sina,y_new=x_old*sina+y_old*cosa),自己寫個函數封裝一下就OK了。還有一個就是元素的旋轉,在GDI中提供的類中有一個GraphicsPath,其中有個Transform(Matrix)的方法,既然參數需要矩陣,我們就定義一個矩陣,Matrix.RotateAt(Angle,基點),感覺一切都很順理成章。旋轉中搞清楚了這兩個也就很容易實現了。

       接下來的一些任務就是如何?圓弧和圓,以及一些文本的繪製功能,這些還需要自己去研究和學習,當然了,如果大家想學習的話,看代碼是最好的辦法,可以Email給我,我把原始碼發給大家!!

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.