学会状态机,事半功倍

关于状态机,请参考BOB大叔的敏捷软件开发一书。书上介绍了一个状态机编译器,SourceForge上有一个开源的更完整的版本:http://smc.sourceforge.net/

使用状态机可以完成很多事情,更多关于状态机的应用由于最近太忙了,就没法写了,多GOOGLE一下:)

如何在Form中使用方向键

其实很简单,之前我还用钩子函数来解决,其实根本没必要。重写Form的方法就可以了。

const int WM_SYSKEYDOWN=260;
const int WM_KEYDOWN=256;

protected override bool ProcessCmdKey(ref Message msg,Keys keyData)
{
if ((msg.Msg==WM_KEYDOWN)||(msg.Msg==WM_SYSKEYDOWN))
{
switch (keyData)
{
case Keys.Up:
MessageBox.Show("up");
break;
case Keys.Down:
MessageBox.Show("down");
break;
case Keys.Left:
MessageBox.Show("left");
break;
case Keys.Right:
MessageBox.Show("right");
break;
}
}
return true;
}

补充:经实验此法仅能提取到KEYDOWN信息,而KEYUP信息被“吃”了,所以有些需要KEYUP事件的东西就不能做了。

最终在CodeProject找到一个类来处理这个事情,很方便:http://www.codeproject.com/KB/cs/globalhook.aspx

英文求职方面的一个好网站

最近要写一个正式的中英文简历,中文还好办了,英文怎么弄了?GOOGLE了一下国内的,都是散的,这一把那一把,有些说的还是矛盾的。还好,用英语搜english resume就搜到了一个好网站,分享给大家:http://jobsearch.about.com/
这个网站很详细的介绍了找工作的方方面面,可以作为参考。

战地2142被网元毁了

好好的几个服务器,后来被裁减成了3个,两个步战都是48人不说了,不换边,经常被压着打。还超级不稳定,管理得一塌糊涂。好了,今天上去一看,CCNEC1-3最后三个服务器也倒下来,关了。

好吧,回归战地2,反正2142也打腻了。破网元。

虚拟手术DEMO

我用OSG做的虚拟手术的演示,虽然很粗糙,但也能够实现下面的功能了:

  • 实现从影像设备上采集到DICOM格式的影像数据的功能。
  • 实现从采集到的DICOM格式中提取相关数据,转换为虚拟手术系统内部格式的功能。
  • 实现DICOM数据的2D显示功能,完成重采样、去噪点等图像学算法以提高图像质量。
  • 实现图像的2D和3D分割,完成区域生长、Snake算法等的研究,实现仅需要少量人工介入就能将病变组织自动提取的功能。
  • 实现了对感兴趣的组织进行标注和分离,并能够建立实时的3D立体模型。
  • 重点研究和实现了高质量的实时光线追踪算法的三维重建算法,在此基础之上,研究出了如何将该算法和常规的光栅渲染图形进行混合的方法。
  • 掌握了基于组织的三维立体切割方法。
  • 掌握了真三维立体显示的关键技术,使最终的成像不局限于显示器的平面2D环境,达到一种触手可及的感受,具有很强的立体效果和沉溺感。
    目前用OSG来做我看已经到了一种无法收场的局面了,OSG缺乏文档和越来越臃肿的弊病始终让人很不爽。最近准备学OGRE,看其设计比较有特色,关键是他的文档很齐全,不至于像OSG一样让人摸不着头脑。

早期完整技术演示

后期手术模拟演示:

演示1

演示2