OSG/osgEarth
文章平均质量分 94
whucv
C#、WCF、并行编程
三维建模与图形图像处理(OpenGL/OSG)、VC/MFC
superliuwhu@126.com
展开
-
OsgEarth编译
OSGEARTH安装OsgEarth是一个跨平台的库,可以使用版本号为2.6.2或更新版本的Cmake对其进行编译。如何在Windows上使用GIT下载OsgEarth源代码 2. 安装(1) 安装git1) http://code.google.com/p/msysgit/downloads/list 上下载Git-xxx.exe并安装(2)新建一文件夹,存放要放转载 2012-12-22 20:31:21 · 3663 阅读 · 0 评论 -
Archie OSG Step By Step④ MFC+OSG添加事件
本文以第三课MFC+OSG框架为基础进行讨论。参考CWorld《基于MFC(QT)的OSG的自定义事件》source下载链接首先找到资源视图,添加菜单,如果没有资源视图,选择“视图→其他窗口→资源视图”,添加菜单项替换场景\t(&R), 在菜单编辑器中修改ID为IDM_REPLACE_SCENE右击菜单项,选择添加事件处理程序添加编辑菜单单击属于一种事件原创 2013-01-01 22:45:07 · 2738 阅读 · 2 评论 -
Archie OSG Step By Step( 0) -OpenSceneGraph环境设置及第一个程序
OpenSceneGraph3.0.1for VS2010-X86-32bit平台OpenSceneGraph库下载(Binary版Debug和Release版都有)----------------------------------------------------------------------------------------------------一、下载库文件首先原创 2012-12-18 20:35:11 · 3064 阅读 · 0 评论 -
osg的数学基础
1、OSG节点平移原理物体的节点位置P(x,y,z,1),现调用函数osg::Matrix::translate(a, b,c)对其平移,节点的位置将会到达Pl(x+a,y+b,z+c,1)。那么存在一个矩阵M使得P*M=P1该矩阵为:通过P与M的乘积,就能得到P1的值。那么OSG中物体的平移其实就是物体的坐标与该M矩阵相乘的结果。2、OSG节点旋转原理原创 2014-12-20 22:33:43 · 1421 阅读 · 0 评论 -
矩阵变换、osg的回调、动画路径和Geometry
1、矩阵变换数学基础参照前一篇。首先,我们在构建对象的时候都是采用的局部坐标系,如下例创建了一个Node对象,几何图元为一个三角形,构造图元的过程中用到的坐标都在局部坐标系(或对象坐标系)osg::ref_ptr creatNode( ) { osg::ref_ptr geode = new osg::Geode; osg::ref_ptr geom =原创 2014-12-20 23:33:10 · 2322 阅读 · 0 评论 -
osg示例osgplanets分析
int main( int argc, char **argv ){ osgViewer::Viewer viewer; osg::ref_ptr keyswitchManipulator = new osgGA::KeySwitchMatrixManipulator; viewer.setCameraManipulator( keyswitchMan原创 2014-12-28 19:39:05 · 1787 阅读 · 0 评论 -
在wpf工程中使用osg技术
我主要想说的是使用的后台的c#代码来添加osg场景。需要实现:新建一个窗口Window1.xaml,然后在窗口中显示osg场景。这里比较困难的地方是wpf中使用的是c#,是一种托管代码;而osg的代码是使用c++编写,是一种非托管代码。如何将二者结合起来使用就是最关键的步骤。看网上说的可以使用C++/CLI可以实现c#和c++的混合编程,但由于一开始我就是写的wpf程序,不转载 2014-12-28 00:29:56 · 4236 阅读 · 0 评论 -
osgGA::KeySwitchMatrixManipulator按键选择切换操作器使用
osg::ref_ptr keyswitchManipulator = new osgGA::KeySwitchMatrixManipulator; keyswitchManipulator->addMatrixManipulator( '1', "Trackball", new osgGA::TrackballManipulator() ); keyswitchManipulator->原创 2014-12-28 19:26:53 · 3675 阅读 · 0 评论 -
三维引擎渲染循环
实时三维计算机图形没有使用失效矩形。当摄像机在三维场景中移动时,屏幕和视窗上的一切内容都会不断改变,因此再不能使用失效矩形法。计算机图形采用和电影相同的方式产生运动的错觉和互动性——对观众快速连续的显示一连串静止影像。要显示一连串静止影像,显然需要一个循环。在实时渲染应用中,此循环又称为渲染循环。最简单结构如下while(!quit){ //基于输入或预设的路径更原创 2014-12-11 22:19:16 · 1289 阅读 · 0 评论 -
Archie OSG Step By Step⑦MFC修改鼠标,制作半透明窗口,视口全屏以及添加背景音乐。
建立osgMFC项目VS2010新建一空项目osgMFC将osg示例Samples下的osgViewerMFC文件拷贝到当前项目的osgMFC文件下项目→添加现有项,把osgMFC文件夹下文件都添加到当前项目。并在使用共享DLL中使用MFC。然后配置osg的头文件和库文件目录,添加链接器输入。OpenThreadsd.lib osgd.lib osg原创 2013-01-12 18:24:53 · 5109 阅读 · 1 评论 -
Archie osgEarth Step By Step ⑤OsgEarth开发指南——使用osgearth API编程动态建立地图
一种是使用earth文件,前面已经说过,还可以您使用osgearth API的时候以编程方式动态建立一个地图。Osgearth也提供一个API供您动态创建地图。如果您的应用程序允许在运行时从不同层中选择一个层显示,那么这种方式就显得很有用。建立一个地图对象加入您认为合适的影像和高程地图建立将渲染地图对象的地图节点 向场景加入你的地图节点你可以在任何时候加入图层。但是,一旦向地图加入原创 2013-01-11 14:47:21 · 5257 阅读 · 5 评论 -
Archie osgEarth Step By Step④地图投影类型——墨卡托投影、高斯克吕格投影、UTM投影
地图投影地图投影实质可以理解为建立平面上的点(用平面直角坐标或极坐标表示)和地球表面上的点(用维度φ和经度λ表示)之间的函数关系,数学公式为x=f1(φ,λ)y=f2(φ,λ)投影变形将地球椭球面(或球面)上的点投影到平面上,必然会产生变形,也即由投影产生的长度变形、面积变形以及角度变形。投影变形μ(长度比)——地面上微分线段投影后长度ds‘与它固有长度ds之比值原创 2013-01-10 17:26:58 · 7177 阅读 · 0 评论 -
OSG+VS2010+windowsxp安装和编译
http://www.openscenegraph.org/projects/osg/wiki/Downloads进入下载页3.0.1版点击打开链接Microsoft Windows3.0.1forVS9 sp12008 x86 32bit点击打开链接------------------------------------------------原创 2012-12-15 22:44:54 · 2930 阅读 · 0 评论 -
Archie OSG Step By Step⑤ 显示位置及拾取
在第四课基础上继续。第四课src链接 参考《OSG三维渲染引擎编程指南》显示位置及拾取示例HUD和Camera可能冲突,还不懂怎么设置两个Camera,目前程序还有问题。学习之后再回来解决添加CPickHandler事件处理类,选择内联,公有继承osgGA::GUIEventHandler添加保护成员变量protected: //得到当前视图矩阵 osg:转载 2013-01-03 12:10:07 · 2354 阅读 · 0 评论 -
Archie OSG Step By Step③ OSG+VS2010+MFC单文档程序框架构建
注意工程类型应与下载的OSG库类型一样,我这里是Release版OSG库,生成Release版程序没问题,但是Debug版有错误,如需要生成Debug版程序,需要下载Debug版OSGbinary。OSGbinary版库(OpenSceneGraph3.0.1forVS2010-X86-32bi)下载OSGbinary版下载 (已经编译好的lib,不用自己编译,直接使用即可)需要自己增加两原创 2012-12-17 17:47:58 · 4048 阅读 · 5 评论 -
Archie OSGStep By Step① 绘制简单多边形
《OpenSceneGraph 三维渲染引擎编程指南》对于OSG各个模块进行了详细介绍,然而这种分散的介绍并不适合OSG初学者。《OpenSceneGraph快速入门指导》反而更加合适,然而讲解的并不透彻,也没有深入浅出。对于学习OSG,我同样建议最好有本参考OpenGL编程基础的书或是NeHe教程一类。我觉得OpenGL编程基础还算可以,虽然不如Nehe生动详细,但是这么200页的书,讲原创 2012-12-30 22:55:43 · 1842 阅读 · 0 评论 -
osgEarth Step By Step①我的第一个osgEarth程序
首先编译好你的OSG、OSGEarth和第三方插件等,这里有一个已经编译好的VS2010+OSGEarth,OsgEarth原文来自 http://bbs.osgchina.org/forum.php?mod=viewthread&tid=9555&extra=page%3D1OSG3.1.4和osgEarth2.3 VC10编译包下载地址:http://pan.baidu原创 2013-01-06 14:30:30 · 12021 阅读 · 0 评论 -
Archie osgEarth Step By Step③tif及geotiff文件格式简明分析
本文参考资料 链接-----------------------------------------------------------------------------简介TIF(TIFF)是可扩充标记的文件,为图像文件格式。 百度链接 endian翻译为“字节序”,又称端序,尾序。在计算机科学领域中,字节序是指存放多字节数据的字节(byte)的顺序,典型的原创 2013-01-08 11:06:11 · 4691 阅读 · 0 评论 -
Archie osgEarth Step By Step②Earth File分析
osgEarth Step By Step①在①中介绍了osgEarth 开发最简单的方式,在OSG中加载一个被称为Earth File的文件。这里对Earth File进行详细介绍有关osgearth请参考官方文档http://osgearth.org/wiki/Documentation官方链接什么是Earth FileosgEarth开发的一种方式是在osg中加载以.原创 2013-01-06 22:43:04 · 5580 阅读 · 0 评论 -
Archie OSG Step By Step⑥ 对象选取
⑤位置显示X,原理还不懂,先学习简单的这节,不用另外设置Camera。添加事件处理类CSelectHandler,勾选内联,公共继承自osgGA::GUIEventHandler,并添加cpp文件SelectHandler.cpp添加变量public: //得到鼠标位置 float _mx; float _my;修改构造函数CSelectH原创 2013-01-05 20:00:19 · 2170 阅读 · 1 评论 -
Stellarium:Compile with MSVC2012 and Qt5 (OpenGL)
翻译END 翻译This is the instruction for building Windows 64-bit version of Stellarium using Microsoft Visual Studio 2012 and Qt5 (VC 2012) with OpenGL.Contents [hide] 1 Install翻译 2014-12-29 21:57:01 · 1909 阅读 · 0 评论