其实没有那么正式啦,我的需求分析目的非常的明确,就是把界面大致给勾勒出来,后面在类设计阶段就好理思路些。
熟悉Qt编程的都喜欢将QMainWindow作为主界面,当然,我也不例外了,在主界面上我会装上些部件:
菜单、工具栏、主视图、状态栏。
一 菜单:
这里面我想了想,还是有些东西的。我列出了4个功能菜单。
1 文件:
文件菜单还蛮重要的,首先就是可以保存用户输入的点,这样用户下一次可以选择打开之前输入的点文件,然后可以在这之上修改一下,或者直接使用,非常方便了,不然还要造点,估计比较麻烦。
1)打开:
可以打开点文件。
2)新建:
可以新建一个点文件。
3)保存:
将点保存在一个点文件中,这里应该有默认的位置和文件名。
4)关闭:
将当前的点文件关闭掉。
5)另存为:
可以将当前点不存在默认位置,自己指点位置。
6)退出:
就是退出程序。
2 点操作:
这个菜单项就是关于一些图形的操作了,由于凸壳算法中首先必须要知道点坐标,当然这里的点坐标都是整数了,那么点怎么来,肯定得用户自己输入,那么这个菜单项就给了用极大的发挥。
1)输入点:
我将输入点分为了单点输入和多点随机输入,单点输入,简单就是用户鼠标点一个输入一个,多点随机输入完全作者自创,用户可以在主视图区域内画个矩形,那么程序就可以在这个矩形区域内随机输入n个点,至于这个n值,就的配置文件里面的参数说了算了。
2)移动点:
用户可能输入了点感觉想要修改,那么绝对可以,我将移动点分为了单点移动和多点移动,单点移动,简单,就是指定点移动即可,多点移动需要用户先选择矩形区域