Posts Tagged ‘OpenSceneGraph’

虚拟手术DEMO

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

  • 实现从影像设备上采集到DICOM格式的影像数据的功能。
  • 实现从采集到的DICOM格式中提取相关数据,转换为虚拟手术系统内部格式的功能。
  • 实现DICOM数据的2D显示功能,完成重采样、去噪点等图像学算法以提高图像质量。
  • 实现图像的2D和3D分割,完成区域生长、Snake算法等的研究,实现仅需要少量人工介入就能将病变组织自动提取的功能。
  • 实现了对感兴趣的组织进行标注和分离,并能够建立实时的3D立体模型。
  • 重点研究和实现了高质量的实时光线追踪算法的三维重建算法,在此基础之上,研究出了如何将该算法和常规的光栅渲染图形进行混合的方法。
  • 掌握了基于组织的三维立体切割方法。
  • 掌握了真三维立体显示的关键技术,使最终的成像不局限于显示器的平面2D环境,达到一种触手可及的感受,具有很强的立体效果和沉溺感。

目前用OSG来做我看已经到了一种无法收场的局面了, Read more

OSG——选取和拖拽

物体的选取和拖拽算是GUI里面用得比较多的部分,特别是三维的选取和拖拽更是比较麻烦。最近钻研了一下,参考了osgManipulator的拖拽部分和osgPick的选取部分,实现了选取和拖拽。程序使用的方法不一定是最好的。给大家分享分享。如果大家有更好的例子,不妨拿出来一起讨论,谢谢:)
注:VS2005工程,请自行更改头文件、库文件地址和源代码中示例模型所在地。
下载文件 点击下载此文件

OpenSceneGraph 笔记--C++/CLI写托管Scene类

最近学了C++/CLI,也写了一些小玩意儿体验了它的强大,昨天开始筹划将以前的弯管机的模拟程序用C++/CLI重写。
基本思路是将底层3D部分和上层GUI图形界面部分大体分离。最原始的做法是写一个C++的类,然后定义一些接口,然后用C++/CLI写一个Wrapper,然后用C#进行调用。这种做法其实不是很好,增加了很大的工作量,而且在写Wrapper的时候难免有很多重复性的赋值代码。 Read more

OpenSceneGraph 笔记--如何导出三角形数据2

今天写了一个导出三角形的类,可以导出一个Group的所有三角形数据(包括Group的所有child),主要用于碰撞检测.比如有一个Group"自行车",这个Group包含有子Group"前轮"和子Group"后轮",子对象通过MatrixTransform与父对象相连.那么这个类可以将Group"自行车"包括"前轮"和"后轮"的三角形数据都导出到一个vector里面,方面用于碰撞检测.
代码片段如下: Read more

OpenSceneGraph 笔记--如何导出三角形数据

在OpenSceneGraph开发中,为了方便会经常使用到一些不是三角形片的数据,比如四边形等数据。例如画一个管子用四边形带比用三角形片好计算得多。比如现在我们要画一个由两个平面组成的面,我可以这样做: Read more

OpenSceneGraph 笔记--世界如此之美好!

在用OpenSceneGraph之前我费尽心思成功的把3DS模型里面的层次关系导入到我的程序中,学到了不少的东西。昨天在研究OpenSceneGraph的3DS插件的时候发现插件并没有我想象当中那么完美,在调入文件的时候丢失了所有的层次结构,这令我很懊恼。在尝试了修改3DS插件以后,觉得要解决这个问题还需要重新写一个新的插件。当然,这会带来巨大的工作量,不合算。 Read more

OpenSceneGraph 笔记--窗体模式运行

1.使用osgViewer::Viewer代替原来的osgProducer::Viewer
2.先熟悉设计模式,比如最常用的Visitor设计模式。要不然看不懂程序不说,而且更写不出程序。
3.窗体模式运行参考Example osgWindows,在这个例子中重点在于: Read more

OpenSceneGraph找不到DLL入口点的解决

设置正确的环境变量,或者运行osgShell.bat

参考OpenSceneGraph的3ds插件学习lib3ds

今天看了看OpenSceneGraph的3DS读取插件,发现利用它学习lib3ds比较好,因为这个插件直接把3ds文件读成了一个树形结构,比lib3ds自带的player这个demo好多了。正在用lib3ds的朋友可以参考一下。

OpenSceneGraph编译指导

OpenSceneGraph是一个很大的开源工程,如果要自己编译的话要花一些功夫,而且开源的经常有一些依赖库的原因经常编译失败。开源还有一个问题就是文档有时候跟不上源代码,这个是最恼火的事情。通过好几天的摸索,反复阅读www.openscenegraph.org上面的相关文章,终于在VC++2005环境下面编译成功,现分享如下: Read more

12
Return top

BFBC2