C#Windows窗体界面设计_攻击决策项目_01_系统架构
Author: binzhouweichao@163.com
Copyright (c) 2013, Liu Xiaojian@BIT, All Rights Reserved.
1. 窗体
共4个窗体
1.1 主窗体
主要是绘制雷点和目标点,运动轨迹等。还包括菜单栏、工具栏、状态栏等控制按钮。
1.2 欢迎界面子窗体
是主窗体的子窗体。用于显示欢迎界面,包含进入退出按钮。点击进入时显示主窗体,本身隐藏。点击退出时,控制父窗体退出,销毁所有资源。
1.3 参数设置子窗体
是主窗体的子窗体。用于配置雷区长宽、雷结点分布、雷结点的属性、探测及攻击范围等。
注:雷结点初步定为7个,中央结点(位于坐标系原点),及正六边形顶点(x轴有两个顶点)。只需定义结点的通信范围,即六边形据中央结点的长度,即可固定留个结点分布。
1.4 目标信息设置子窗体
是主窗体的子窗体。用于手动设置目标结点的初始位置、速度等。
注:设置一个时间放大倍数,以现实时间为基准,做时间的降速。
2. 数据属性
2.1 雷结点
除中央结点外,其余六个雷结点应包含下述属性:
坐标:PointF类型
权值:double类型,由具体理论决定。
2.2 目标结点
目标结点为动态数组,List<T>,每个元素T应包含:
当前坐标:PointF类型
当前速度:double
//当前方向:斜率,Δy/Δx,由相邻两个点做运算。
2.3 预测轨迹结点
//
3. 事件
3.1 欢迎界面子窗体事件
首先打开欢迎界面,整个程序只显示一次。也就是说,关闭此界面就可以直接销毁对象了。
两个事件:
一是点击进入弹出主窗体;
二是点击退出,关闭主窗体(销毁所有)。
另外,右上角关闭x禁用。
3.2 主窗体事件
主要为绘图Paint。
菜单栏参数设置弹出参数设置子窗体。
工具栏开始工具,使得目标点进入并绘制轨迹,运算开始。
状态栏刷新当前状态,包括:雷点数,目标是否探测到,决策后的雷点、方向、距离等。
工具栏暂停工具,使得轨迹暂停
菜单栏速度设置,在暂停生效后(或尚未开始运行前),弹出目标信息设置子窗体,设置目标的位置、速度等。
待续。。。。