|
Forums » .NET » .NET »
|
How to Draw Circle in C# windows Form |
Posted Date: 02 Oct 2008 Posted By:: Dnyaneshwar Bhamare Member Level: Silver Member Rank: 3729 Points: 1
Responses:
1
|
Hi I have one windows form having a circle on center of the form.I wants to draw a 200 circles around my centered circle and connect that 200 circles to centered circle through the line,without touching the any outer circle. So any one tell me how do i implement?
|
Responses
|
#302873 Author: karthik Member Level: Silver Member Rank: 0 Date: 02/Oct/2008 Rating:    Points: 6 | To draw circle use this code
//--start
using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Text; using System.Windows.Forms;
namespace circle { public partial class Form1 : Form { Graphics graphDrawingArea; Bitmap bmpDrawingArea; static int mainRadius = 10; static int smallRadius = 5; static bool isMax; static bool smallRadiusMax;
public Form1() { InitializeComponent(); }
private void Form1_Load(object sender, EventArgs e) { bmpDrawingArea = new Bitmap(Width, Height); graphDrawingArea = Graphics.FromImage(bmpDrawingArea); } void DrawCentralCircle(int CenterX, int CenterY, int Radius) { int start = CenterX - Radius; int end = CenterY - Radius; int diam = Radius * 2; bmpDrawingArea = new Bitmap(Width, Height); graphDrawingArea = Graphics.FromImage(bmpDrawingArea); graphDrawingArea.DrawEllipse(new Pen(Color.Blue),start, end, diam, diam); }
void DrawCornerCircle(int CenterX, int CenterY, int Radius) { int start = CenterX - Radius; int end = CenterY - Radius; int diam = Radius * 2; bmpDrawingArea = new Bitmap(Width, Height); graphDrawingArea = Graphics.FromImage(bmpDrawingArea); graphDrawingArea.DrawEllipse(new Pen(Color.Red), start, end, diam, diam); }
private void timer1_Tick(object sender, EventArgs e) { Graphics graph = Graphics.FromHwnd(this.Handle);
int centerX = ClientRectangle.Width / 2; int centerY = ClientRectangle.Height / 2;
if (isMax == true) mainRadius--; else mainRadius++;
if (mainRadius > (ClientRectangle.Height / 2)) isMax = true; if (mainRadius < 10) isMax = false;
if (smallRadiusMax == true) smallRadius--; else smallRadius++;
if (smallRadius > 240) smallRadiusMax = true; if (smallRadius < 5) smallRadiusMax = false;
// Central DrawCentralCircle(centerX, centerY, mainRadius); // Top-Left DrawCornerCircle(centerX / 2, centerY / 2, smallRadius); // Top-Right DrawCornerCircle(centerX + (centerX / 2), centerY / 2, smallRadius); // Bottom-Left DrawCornerCircle(centerX / 2, centerY + (centerY / 2), smallRadius); // BottomRight DrawCornerCircle(centerX + (centerX / 2), centerY + (centerY / 2), smallRadius);
graph.DrawImage(bmpDrawingArea, 0, 0);
}
} }
//--end
|
|
| Post Reply |
|
|
|
 | | This thread is locked for new responses. Please post your comments and questions as a separate thread. If required, refer to the URL of this page in your new post. |
|
|
|
|
 Follow us on Twitter: https://twitter.com/dotnetspider
|
|