日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

象棋棋盘设计思路

發(fā)布時間:2023/12/20 编程问答 33 豆豆
生活随笔 收集整理的這篇文章主要介紹了 象棋棋盘设计思路 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

我們組這次任務(wù)是利用C#設(shè)計象棋棋盤

我們初次使用軟件,以及利用其編程,不太熟練,于是我們從CSDN上找到有關(guān)我們這次象棋棋盤的一些方法幫助,我們根據(jù)幫助先做好了象棋棋盤,但老師要求的是固定一個點,然后根據(jù)這個固定的點位進行延申拓展出棋盤的樣子。我們通過修改達到了這一要求,之后再對代碼進行簡化等。

1.選擇背景:

2.進行數(shù)據(jù)計算:我們用A4紙畫出來并進行展示:

?

3.設(shè)計好代碼,供大家參考。

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;

namespace WindowsForms333App1
{
? ? public partial class WindowsForms333App1 : Form
? ? {
? ? ? ? public WindowsForms333App1()
? ? ? ? {
? ? ? ? ? ? InitializeComponent();
? ? ? ? }

? ? ? ? private void WindowsForms333App1_Paint(object sender, PaintEventArgs e)
? ? ? ? {
? ? ? ? ? ? Graphics g = e.Graphics;
? ? ? ? ? ? g.Clear(Color.Coral);
? ? ? ? ? ? Image img = Image.FromFile("bg.jpg");
? ? ? ? ? ? double x = 400;
? ? ? ? ? ? double h = 1.125 * x;
? ? ? ? ? ? g.DrawImage(img, 10, 10, 700, 700);//坐標(10,10) 寬度度:430
? ? ? ? ? ? g.DrawRectangle(new Pen(Color.Black, 3), new Rectangle(new Point(20, 20), new Size((int)(x + 10), (int)(h + 10))));
? ? ? ? ? ? Pen pen = new Pen(Color.Black, 1);
? ? ? ? ? ? for (int i = 0; i < 10; i++)
? ? ? ? ? ? {
? ? ? ? ? ? ? ? g.DrawLine(pen, new Point(25, 25 + (i * (int)(h / 9))), new Point((int)(x + 25), 25 + (i * (int)(h / 9))));
? ? ? ? ? ? }
? ? ? ? ? ? for (int j = 0; j < 9; j++)
? ? ? ? ? ? {
? ? ? ? ? ? ? ? g.DrawLine(pen, new Point(25 + (j * (int)(x / 8)), 25), new Point(25 + (j * (int)(x / 8)), 25 + (int)((h / 9) * 4)));
? ? ? ? ? ? }
? ? ? ? ? ? for (int j = 0; j < 9; j++)
? ? ? ? ? ? {
? ? ? ? ? ? ? ? g.DrawLine(pen, new Point(25 + (j * (int)(x/8)), 25 + (int)((h / 9) * 5)), new Point(25 + (j * (int)(x / 8)), ((int)(25 + h))));
? ? ? ? ? ? }
? ? ? ? ? ? g.DrawLine(pen, new Point(25 + (int)((x / 8) * 3), 25), new Point(25 + (int)((x / 8) * 5), 25 + (int)((h / 9) * 2)));
? ? ? ? ? ? g.DrawLine(pen, new Point(25 + (int)((x / 8) * 5), 25), new Point(25 + (int)((x / 8) * 3), 25 + (int)((h / 9) * 2)));
? ? ? ? ? ? g.DrawLine(pen, new Point(25 + (int)((x / 8) * 3), 25 + (int)((h / 9) * 7)), new Point(25 + (int)((x / 8) * 5), ((int)(25 + h))));
? ? ? ? ? ? g.DrawLine(pen, new Point(25 + (int)((x / 8) * 5), 25 + (int)((h / 9) * 7)), new Point(25 + (int)((x / 8) * 3), ((int)(25 + h))));
? ? ? ? ? ? Font font = new Font("黑體", (int)(x / 20));
? ? ? ? ? ? g.DrawString("楚 ?河", font, Brushes.Black, new Point(25 + (int)((x / 16)), 25 + (int)((h / 9) * 4 + 10)));
? ? ? ? ? ? g.DrawString("漢 ?界", font, Brushes.Black, new Point(25 + (int)((x / 8) * 5 + (x / 16)), 25 + (int)((h / 9) * 4 + 10)));
? ? ? ? ? ? //g.TranslateTransform(25 + (int)((x/8)*5+(x/16)), 25 + (int)((h/9)*4+10));
? ? ? ? ? ? //g.RotateTransform(180);
? ? ? ? ? ? //g.DrawString("漢 ?界", font, Brushes.Black, new Point(-25 - (int)((x/8)*1+(x/16)), -15 -(int)(h/45)));
? ? ? ? ? ? //g.ResetTransform();
? ? ? ? ? ? this.DrawAngle(g, pen, new Point(25, 25 + (int)(h / 9 * 3)), "right");
? ? ? ? ? ? this.DrawAngle(g, pen, new Point(25 + (2*(int)(x/8)), 25 + (int)(h/9*3)), "all");
? ? ? ? ? ? this.DrawAngle(g, pen, new Point(25+(int)x, 25 + (int)(h/9*3)), "left");
? ? ? ? ? ? this.DrawAngle(g, pen, new Point(25 + (4*(int)(x/8)), 25 + (int)(h/9*3)), "all");
? ? ? ? ? ? this.DrawAngle(g, pen, new Point(25 + (int)x, 25 + (int)(h/9*3)), "left");
? ? ? ? ? ? this.DrawAngle(g, pen, new Point(25 + (6*(int)(x/8)), 25 + (int)(h/9*3)), "all");
? ? ? ? ? ? this.DrawAngle(g, pen, new Point(25 + (int)x, 25 + (int)(h/9*3)), "left");
? ? ? ? ? ? this.DrawAngle(g, pen, new Point(25 + (1*(int)(x/8)), 25 + (int)(h / 9 * 2)), "all");
? ? ? ? ? ? this.DrawAngle(g, pen, new Point(25 + (7*(int)(x/8)), 25 + (int)(h / 9 * 2)), "all");

? ? ? ? ? ? this.DrawAngle(g, pen, new Point(25, 25 + (int)(h / 9 * 6)), "right");
? ? ? ? ? ? this.DrawAngle(g, pen, new Point(25 + (2 * (int)(x / 8)), 25 + (int)(h / 9 * 6)), "all");
? ? ? ? ? ? this.DrawAngle(g, pen, new Point(25 + (4 * (int)(x / 8)), 25 + (int)(h / 9 * 6)), "all");
? ? ? ? ? ? this.DrawAngle(g, pen, new Point(25 + (6 * (int)(x / 8)), 25 + (int)(h / 9 * 6)), "all");
? ? ? ? ? ? this.DrawAngle(g, pen, new Point(25 + (int)x, 25 + (int)(h / 9 * 6)), "left");
? ? ? ? ? ? this.DrawAngle(g, pen, new Point(25 + (1 * (int)(x / 8)), 25 + (int)(h / 9 * 7)), "all");
? ? ? ? ? ? this.DrawAngle(g, pen, new Point(25 + (7 * (int)(x / 8)), 25 + (int)(h / 9 * 7)), "all");
? ? ? ? ? ? g.Dispose();
? ? ? ? }
? ? ? ? ? ? private void DrawAngle(Graphics g, Pen pen, Point point, string str)
? ? ? ? ? ? {
? ? ? ? ? ? double x = 400;
? ? ? ? ? ? Point p1 = new Point(point.X + (int)x/80, point.Y + (int)x / 80);
? ? ? ? ? ? ? ? Point p2 = new Point(point.X - (int)x / 80, point.Y + (int)x / 80);
? ? ? ? ? ? ? ? Point p3 = new Point(point.X - (int)x / 80, point.Y - (int)x / 80);
? ? ? ? ? ? ? ? Point p4 = new Point(point.X + (int)x / 80, point.Y - (int)x / 80);
? ? ? ? ? ? ? ? if (str == "right" || str == "all")
? ? ? ? ? ? ? ? {
? ? ? ? ? ? ? ? ? ? //p1 ?p4
? ? ? ? ? ? ? ? ? ? g.DrawLine(pen, p1, new Point(p1.X + (int)x / 40, p1.Y));
? ? ? ? ? ? ? ? ? ? g.DrawLine(pen, p1, new Point(p1.X, p1.Y + (int)x / 40));
? ? ? ? ? ? ? ? ? ? g.DrawLine(pen, p4, new Point(p4.X + (int)x / 40, p4.Y));
? ? ? ? ? ? ? ? ? ? g.DrawLine(pen, p4, new Point(p4.X, p4.Y - (int)x / 40));
? ? ? ? ? ? ? ? }
? ? ? ? ? ? ? ? if (str == "left" || str == "all")
? ? ? ? ? ? ? ? {
? ? ? ? ? ? ? ? ? ? //p2 ?p3
? ? ? ? ? ? ? ? ? ? g.DrawLine(pen, p2, new Point(p2.X - (int)x / 40, p2.Y));
? ? ? ? ? ? ? ? ? ? g.DrawLine(pen, p2, new Point(p2.X, p2.Y + (int)x / 40));
? ? ? ? ? ? ? ? ? ? g.DrawLine(pen, p3, new Point(p3.X - (int)x / 40, p3.Y));
? ? ? ? ? ? ? ? ? ? g.DrawLine(pen, p3, new Point(p3.X, p3.Y - (int)x / 40));


? ? ? ? ? ? ? ? }
? ? ? ? ? ? }

? ? ? ? ?}
? ??
}

總結(jié)

以上是生活随笔為你收集整理的象棋棋盘设计思路的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。