完成后的军棋棋盘
1.需要的不同颜色不同粗细的三种线条
var pen = new Pen(Color.Red); //3:
var pen3 = new Pen(Color.Red,3); //3:
var brush = new SolidBrush(Color.White); //3:
*白色线条用于绘制棋盘边界
2.确定一共12行5列的坐标点
double x0, y0,w,h;
double[,] x = new double[12, 5];
double[,] y = new double[12, 5];
x0 = 10 ;
y0 = 10 ;
w = 400 ;
h = w*1331/1000 ;
double w1 = w / 12.1;
double h1 = h / 16.6;
double x1 = 0.75*w1;
double x2 = 2.65*w1;
double y1 = 0.55*h1;
double y2 = 1.2*h1;
double y3 = 3.5*h1;
double r = w/20/3*2 ;
3.连线
graph.FillRectangle(brush, (float)x0, (float)y0, (float)w, (float)h);
for (int i = 0; i < 12; i++)
{
graph.DrawLine(pen, (float)x[i, 0], (float)y[i, 0], (float)x[i, 4], (float)y[i, 4]);
}
for (int i = 0; i < 5; i++)
{
graph.DrawLine(pen, (float)x[0, i], (float)y[0, i], (float)x[5, i], (float)y[5, i]);
graph.DrawLine(pen, (float)x[6, i], (float)y[6, i], (float)x[11, i], (float)y[11, i]);
}
graph.DrawLine(pen3, (float)x[1, 0], (float)y[1, 0], (float)x[10, 0], (float)y[10, 0]);
graph.DrawLine(pen, (float)x[5, 2], (float)y[5, 2], (float)x[6, 2], (float)y[6, 2]);
graph.DrawLine(pen3, (float)x[1, 4], (float)y[1, 4], (float)x[10, 4], (float)y[10, 4]);
graph.DrawLine(pen3, (float)x[1, 0], (float)y[1, 0], (float)x[1, 4], (float)y[1, 4]);
graph.DrawLine(pen3, (float)x[10, 0], (float)y[10, 0], (float)x[10, 4], (float)y[10, 4]);
graph.DrawLine(pen3, (float)x[5, 0], (float)y[5, 0], (float)x[5, 4], (float)y[5, 4]);
graph.DrawLine(pen3, (float)x[6, 0], (float)y[6, 0], (float)x[6, 4], (float)y[6, 4]);
graph.DrawLine(pen, (float)x[1, 0], (float)y[1, 0], (float)x[5, 4], (float)y[5, 4]);
graph.DrawLine(pen, (float)x[3, 0], (float)y[3, 0], (float)x[5, 2], (float)y[5, 2]);
graph.DrawLine(pen, (float)x[1, 2], (float)y[1, 2], (float)x[3, 4], (float)y[3, 4]);
graph.DrawLine(pen, (float)x[5, 0], (float)y[5, 0], (float)x[1, 4], (float)y[1, 4]);
graph.DrawLine(pen, (float)x[3, 0], (float)y[3, 0], (float)x[1, 2], (float)y[1, 2]);
graph.DrawLine(pen, (float)x[5, 2], (float)y[5, 2], (float)x[3, 4], (float)y[3, 4]);
graph.DrawLine(pen, (float)x[6, 0], (float)y[6, 0], (float)x[10, 4], (float)y[10, 4]);
graph.DrawLine(pen, (float)x[10, 0], (float)y[10, 0], (float)x[6, 4], (float)y[6, 4]);
graph.DrawLine(pen, (float)x[8, 0], (float)y[8, 0], (float)x[6, 2], (float)y[6, 2]);
graph.DrawLine(pen, (float)x[8, 0], (float)y[