C# 绘图--金刚石

王朝c#·作者佚名  2006-01-09
窄屏简体版  字體: |||超大  

C# 绘图--金刚石

杨贺宏

//-------------------------------------

// DrawDiamond.cs by Flycrane

//-------------------------------------

using System;

using System.Drawing;

using System.Windows.Forms;

class DrawDiamond : Form

{

publicstaticvoidMain()

{

Application.Run( new DrawDiamond() );

}

public DrawDiamond()

{

Text= "金刚石图案-Flycrane";

BackColor= Color.Black;

ForeColor= Color.White;

ResizeRedraw= true;

Width= 400;

Height= 400;

}

protectedoverridevoid OnPaint(PaintEventArgs e)

{

Graphics myGraphics= e.Graphics;

Pen myPen= new Pen( ForeColor,2 );

float radius= (float) ( Width/2.2 );

constint partitionNum= 25;

float angleUnit= (float) ( 2*Math.PI/partitionNum );

float[] circleX= newfloat[partitionNum];

float[] circleY= newfloat[partitionNum];

// center of the circle.

float originX=ClientSize.Width/2;

float originY=ClientSize.Height/2;

//store coordinates of the nodes on the circle verge.

for ( int i=0;i<partitionNum;i++ )

{

circleX[i]= (float) ( radius*Math.Cos( i*angleUnit ) ) + originX;

circleY[i]= (float) ( radius*Math.Sin( i*angleUnit ) ) + originY;

}

//link nodes on the circle verge.

for ( int i=0;i<=partitionNum-2;i++ )

{

for ( int j=i+1;j<=partitionNum-1;j++ )

myGraphics.DrawLine( myPen,circleX[i],circleY[i],circleX[j],circleY[j] );

}

}

}

参考文献:

1. Charles Petzold. Programming Microsoft Windows With C#.Microsoft Press. 2002.

2. 陆润民. C语言绘图教程.清华大学出版社. 1996年4月第一版.

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
 
© 2005- 王朝網路 版權所有 導航