怎么绘制一个圆形啊
有没有用C#写的绘制一个圆的算法啊~
或者资料
谢谢啦就还有100分了。。都给您
------解决方案--------------------对于程序员,任何可以用语言、表达式描述的算法,都可以变成程序。这是基本功。
没有所谓“会不会”的。只有北大菜鸟copy一族才见到代码心才落地。
你说不想写说对了。为你付出精力本身已经不值得,再说这个需求GDI/GDI+都有实现,本身也没有什么让人想自己再写一遍的动力。
------解决方案--------------------
你要的是不是这样的:
wpf例子,gdi+也差不多
[code=c#] 
   public partial class MainWindow : Window 
   { 
     public MainWindow() 
     { 
       InitializeComponent(); 
     } 
     private void Window_Loaded(object sender, RoutedEventArgs e) 
     { 
       //this.VisualEdgeMode = EdgeMode.Aliased; 
       CustomDrawing cd = new CustomDrawing(100, 100, 80); 
       canvas1.Children.Add(cd); 
     } 
   } 
   class CustomDrawing : UIElement 
   { 
     VisualCollection childs; 
     public CustomDrawing(double centerx, double centery, double radius) 
     { 
       childs = new VisualCollection(this); 
       DrawingVisual dv = new DrawingVisual(); 
       Pen p = new Pen(Brushes.Black,1); 
       p.Freeze(); 
       int points = (int)(radius * 2); 
       double per = 2 * Math.PI / points; 
       using (DrawingContext dc = dv.RenderOpen()) 
       { 
         for (int i = 0; i  < points; i++) 
         { 
           dc.DrawLine(p,  
             new Point(radius * Math.Cos(per * i) + centerx, radius * Math.Sin(per * i) + centery),  
             new Point(radius * Math.Cos(per * (i + 1)) + centerx, radius * Math.Sin(per * (i + 1)) + centery)); 
         } 
       } 
       childs.Add(dv); 
     } 
     protected override int VisualChildrenCount 
     { 
       get { return childs.Count; } 
     } 
     protected override Visual GetVisualChild(int index) 
     { 
       if (index  < 0 || index >= childs.Count) 
       { 
         throw new ArgumentOutOfRangeException(); 
       } 
       return childs[index]; 
     } 
   } 
 [/code]
不过这种做法得不偿失,还是直接调用api不但省事而且程序效率高。除非用directx这样的东西画圆才有必要自己计算顶点。