日韩无码专区无码一级三级片|91人人爱网站中日韩无码电影|厨房大战丰满熟妇|AV高清无码在线免费观看|另类AV日韩少妇熟女|中文日本大黄一级黄色片|色情在线视频免费|亚洲成人特黄a片|黄片wwwav色图欧美|欧亚乱色一区二区三区

RELATEED CONSULTING
相關(guān)咨詢(xún)
選擇下列產(chǎn)品馬上在線(xiàn)溝通
服務(wù)時(shí)間:8:30-17:00
你可能遇到了下面的問(wèn)題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營(yíng)銷(xiāo)解決方案
實(shí)體建模:C#畫(huà)圖的模式與縮放功能

在實(shí)體建模軟件中,經(jīng)常有設(shè)置并保存各種參考坐標(biāo)系的功能,方便建立模型。C#畫(huà)圖中也有這種類(lèi)似功能。不過(guò)沒(méi)有建模軟件那么強(qiáng)大。實(shí)體建模軟件中,可以獨(dú)立的設(shè)置并保存各種坐標(biāo)系,并隨時(shí)調(diào)用。而這里只能以嵌套的形式調(diào)用,當(dāng)返回到上一級(jí)狀態(tài)時(shí),跳過(guò)的狀態(tài)就不再保存了。

C#畫(huà)圖普通模式主要命令

 
 
 
 
  1. state = graphics.BeginContainer();  
  2. 建一個(gè)新繪圖狀態(tài)  
  3.  
  4. e.Graphics.EndContainer(state1);  
  5. 結(jié)束這個(gè)繪圖狀態(tài)  
  6.  
  7. Rectangle rect = new Rectangle(0,   
  8. 0, 100, 100);//示例圖形  
  9.  
  10. GraphicsContainer state1 =   
  11. e.Graphics.BeginContainer();  
  12. //建一個(gè)新繪圖坐標(biāo)state1  
  13.  
  14. e.Graphics.TranslateTransform(100, 100);  
  15. //移動(dòng)坐標(biāo)系到100,100,畫(huà)藍(lán)色矩形標(biāo)記  
  16. e.Graphics.DrawRectangle(Pens.Blue, rect);  
  17. GraphicsContainer state2 =   
  18. e.Graphics.BeginContainer();  
  19. //在此基礎(chǔ)上建一個(gè)繪圖坐標(biāo)state2  
  20.  
  21. e.Graphics.RotateTransform(45);//旋轉(zhuǎn)45度,  
  22. 畫(huà)紅色矩形標(biāo)記  
  23. e.Graphics.DrawRectangle(Pens.Red, rect);  
  24.  
  25. e.Graphics.TranslateTransform(100, 100);  
  26. e.Graphics.DrawRectangle(Pens.Black, rect);  
  27.  
  28. e.Graphics.EndContainer(state2);//退出坐標(biāo)系2,  
  29. 畫(huà)藍(lán)橢圓  
  30. e.Graphics.DrawEllipse(Pens.Blue, rect);  
  31.  
  32. e.Graphics.EndContainer(state1);//退出state1,  
  33. 畫(huà)紅橢圓  
  34. e.Graphics.DrawRectangle(Pens.Red, rect);  

 

建立狀態(tài)1

移動(dòng)到100,100,畫(huà)藍(lán)色矩形

建被嵌套的狀態(tài)2

移動(dòng)到200,0,畫(huà)紅色矩形

退出狀態(tài)2,畫(huà)藍(lán)色橢圓

退出狀態(tài)1,畫(huà)紅色矩形

狀態(tài)2是被嵌套的,如果直接退出狀態(tài)1畫(huà)紅色矩形,狀態(tài)2不再被保存。

graphics.BeginContainer()和EndGontainer是保存和返回當(dāng)前畫(huà)板狀態(tài),當(dāng)然,移動(dòng)只是一種改變畫(huà)板狀態(tài)的方式。

C#畫(huà)圖縮放功能主要命令:

 
 
 
 
  1. GraphicsContainercontainerState=  
  2. e.Graphics.BeginContainer(  
  3. destRect,srcRect,  
  4. GraphicsUnit.Pixel);  
  5. 多加兩個(gè)參數(shù),destRect和scrRect制定縮放大小  
  6. Pixel指定單位  
  7.  
  8. RectanglesrcRect=newRectangle(  
  9. 0,0,200,200);  
  10. RectangledestRect=newRectangle(  
  11. 200,200,100,100);  
  12.  
  13. //建一個(gè)比例縮放的畫(huà)圖板.  
  14. GraphicsContainercontainerState=  
  15. e.Graphics.BeginContainer(  
  16. destRect,srcRect,  
  17. GraphicsUnit.Pixel);  
  18.  
  19. //繪圖縮放綠矩形.  
  20. e.Graphics.FillRectangle(  
  21. newSolidBrush(Color.Red),0,0,100,100);  
  22.  
  23. //退出此繪圖板.  
  24. e.Graphics.EndContainer(containerState);  
  25.  
  26. //繪原始紅矩形.  
  27. e.Graphics.FillRectangle(  
  28. newSolidBrush(Color.Green),0,0,100,100);  

以上就介紹了C#畫(huà)圖的模式與縮放功能。


分享文章:實(shí)體建模:C#畫(huà)圖的模式與縮放功能
鏈接URL:http://www.5511xx.com/article/codppoe.html