3.19晚讨论结果

Coordinator
Mar 20, 2012 at 6:37 AM

昨天晚上韩师兄很认真地给大家做了项目方面的介绍,在此表示感谢。经讨论有以下几点需求需要进一步地添加与完善:

  1. 异步操作的完善。(主要是体现在画图与计算方面的优化)
  2. 坐标系的添加。(添加的原因不用多说,这是这个项目中很基本的需求)
  3. 鼠标信息的添加。(鼠标信息添加后想要达到的效果是随着鼠标的移动,可以随时显示鼠标所在位置的坐标信息,从而起到良好的交互效果)
  4. 对染色体进行放大、缩小、旋转操作的添加。
  5. 处理数据文件时进度条的添加。(因为数据文件数据量相对较大的原因,进行文件处理时需要的时间较长,添加进度条也是为了达到更好的交互效果)
  6. 动态监测CPU的个数。(目的是当本程序跑在不同电脑上的时候,可以通过动态监测CPU的个数来设置线程的个数,从而达到最优的并行效果。PS:这个需求的优先级最低)

因为现在余留下的工作主要是在3D绘图与渲染等方面,有一些交互方式以及需求方面的问题还需要和韩老师进行一下沟通,沟通的时间暂定在本周三下午下课后。然后这两天大家的首要任务就是抓紧熟悉韩师兄已经写好的有关绘图方面的代码,不懂的地方还要麻烦师兄的解答,然后尽快完成工作的分配。

就先写这么多,希望大家充分利用这个论坛和QQ讨论组,多交流多讨论,加油!

Coordinator
Mar 20, 2012 at 6:39 AM

ok,能和大家一起协作做事情,很高兴。希望能做出来有意义的结果。

Coordinator
Mar 21, 2012 at 8:50 AM

好的。和美国方面的沟通由我来负责,我们尽可能的要把问题细化。因为对方可能很难有很具体的要求。或许我们还需要用原型的方法来沟通需求

Coordinator
Mar 21, 2012 at 11:34 AM
hanzhi wrote:

好的。和美国方面的沟通由我来负责,我们尽可能的要把问题细化。因为对方可能很难有很具体的要求。或许我们还需要用原型的方法来沟通需求

 

把我以前提得一些细节贴过来吧,有一定参考价值。
0.修正一个现有的bug,就是放大/ 缩小后,当前观察点在何处的问题,这也是一个策略问题。缩小还好办,可以保证当前的所观察平面
一定在事业中。但是放大后就不一样,因为当前观察范围放大后是不可能都在屏幕中放下的,这样该如何取舍?
 
1.完善坐标系统
  a. 要有横纵坐标,但又要注意不能显示的太密集,或者遮挡住数据图形。
  b.每个chrome的平面要有对应标注,以便将数据和所对应的chrome关联起来
  c.鼠标在平面上移动的时候,要能显示所指的某个平面上该横坐标下的纵坐标。即可以知道某chrome在某个区域内的分布。
这和“操作系统,也就是第三条”是相关的,如果确定鼠标所指的是哪个chrome需要仔细考虑。
2.完善背景系统
   a.平面的显示问题,目前用边框。不是太好看,但是如果填充,则会影像数据观察。有遮挡问题。
   b.横纵(x,y),z轴都没有画出来,也就无法画坐标,而且给人以迷茫的感觉。如果有的话,虽说没实际用处,但是有导向性,似乎舒服很多。
   c.整体空间背景也都是黑色,不舒服,但是如何设置呢?我初步设想应该在3维空间中画出来z平面,x,y轴。这样似乎好看一些,也即用matlab目前所画式样。
   d.目前camera(即观察点)所处位置也许可以调整,这样观察能够更清晰,最好能够动态调节,也就是平移和旋转。这又和“操作系统”联系起来。
3.完善操作系统
  a.打开文件后,在读取和解析过程中应该有进度条,因为时间较长,容易被误认为死机。这需要把目前的同步实现变成异步,线程结束之后需要给主窗口发消息。 wpf的消息机制我不太熟悉,需要大家去探索一下。
  b.观察窗口的缩放和平移最好也改为异步,和1中原因类似。 而且不改为异步,就无法实现用拖动的方式滚动观察窗口,因为会很“卡”。用户几乎没法操作。我尝试过所以知道。
  c.如1.c 所述,鼠标移动的时候应该显示所在点的坐标,数据样本。理论上双击某点,可以弹出落在该点的chrome样本数据列表。
  d.在实现了a,b的基础上,实现通过点击和拖动来达到放大和移动数据的功能。并且更新坐标。
  e.用户可以选择某个平面是显示还是隐藏,这样就可以解决平面遮挡问题。
  f.高亮用户选中的平面,这样让用户知道自己在对哪个平面(chrome)进行操作。