找回密码
 注册
LabVIEW+单片机学习套件全套教程资料下载[免费]LabVIEW论坛精华列表贴USB0816数据采集卡《LabVIEW宝典》
LabWindows/CVI论坛精华贴NET0816以太网数据采集卡RC0210远程设备授权系统 关闭关停锁定打开设备 户外分布式数据采集
NET1624低速高精度以太网数据采集卡WIFI0824SD无线WIFI网络数据采集卡脱机运行 SD存储 小尺寸微型 串口采集远程采集 安卓 手持移动采集 纪录仪
查看: 1914|回复: 19

解剖程序第一季——导弹飞行模拟

[复制链接]
发表于 2009-5-15 14:39:23 | 显示全部楼层 |阅读模式
这个是一个老外做的程序,里面疯狂的调用DLL文件,也有做游戏用的DLL文件,场面可谓是相当的壮观,惊天地泣鬼神的那种,希望广大的发烧友和忠实的开发爱好者认真消化吸收,但希望大家不要就草草的回答“谢谢”或者灌水之类的话,要说到点子上,不然不说也没有关系,自己消化,但是我还是希望大家积极的讨论,玩出自己的乐趣来,当作在开发游戏也行。。。欢迎大家积极献策。。。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册

×

评分

参与人数 3经验 +40 收起 理由
老头子 + 15 这个要顶
gigio + 15 学习咯。
fhinali + 10 非常好的例子。有助于Labview提高。

查看全部评分

发表于 2009-5-15 14:48:11 | 显示全部楼层
好东东,首先先鼓励和支持一下!赠送CPUVIEW图形化单片机编程软件系统带长期升级功能一份!并且将第三版本的PCB和原理图文件也一并发过去!兄弟请发一个邮箱到我的邮箱,我再将资料和软件发送过去!cpubbs@163.com

详细兄弟请查看:

cpubbs论坛的大学计划! 2008-03-26
http://www.cpubbs.com/bbs/viewthread.php?tid=54347&fromuid=19


为了支持一下这种行为,如果在讨论中能说出很多重要观点的朋友,也同样能获得!
回复 顶

使用道具 举报

发表于 2009-5-15 14:48:43 | 显示全部楼层
以后可以多举行这种活动,促进大家一同进步!
回复 顶

使用道具 举报

 楼主| 发表于 2009-5-15 15:42:19 | 显示全部楼层
是的,我希望能有更多有挑战的活动能够让大家能够觉得有乐趣,希望更多的人参与,而不要华而不实,因为做产品的话还是要懂得彻底点比较好,比如做界面就有很大的学问,里面是怎么实现的别人很有可能并不关系,界面和易操作性是最重要的。。。等这个程序揭破的差不多,准备搞一下WEB的远程发布,这个功能对于做的产品的工程师朋友来说可谓是巨大的福音!!!不过首先得把这个程序给吃透了,大家努力吧
回复 顶

使用道具 举报

 楼主| 发表于 2009-5-15 15:52:11 | 显示全部楼层
我希望管理员能能够更多的引导大家做FPGA或者ARM上的开发,这是一种趋势,结合LABVIEW,尤其是在高端的应用上,单片机本身没有什么东西,用C写写就好了,BUG也会少点,我用过51,PIC,AVR,总体觉得还是AVR比较好,主要是便宜,RAM够大,速度快,可以用操作系统(AVRX,或者UCOS II)写,非常方便,我做的以太网控制器就是用M128的,速度只比ARM7差一点
回复 顶

使用道具 举报

 楼主| 发表于 2009-5-15 15:55:28 | 显示全部楼层
我的邮箱chinafpga@yahoo.com,我看过老大的CPUVIEW,界面非常好,如果里面搞个自己的编译器就好多了,可以考虑GCC,开源的,积累经验,也能以后自己用在其他的场合,比如FPGA就是以个很有前景的领域
回复 顶

使用道具 举报

发表于 2009-5-15 15:58:37 | 显示全部楼层
回复 顶

使用道具 举报

发表于 2009-5-15 16:10:01 | 显示全部楼层
回复 顶

使用道具 举报

发表于 2009-5-15 16:27:09 | 显示全部楼层
回复 顶

使用道具 举报

发表于 2009-5-16 09:53:36 | 显示全部楼层
文件损坏。下载解压不了哦。谢谢。重传一个咯。
回复 顶

使用道具 举报

发表于 2009-5-16 11:05:03 | 显示全部楼层
对OPEN GL还不懂,需要补充下。
  OpenGL被设计为只有输出的,所以它只提供渲染功能。核心API没有窗口系统、音频、打印、键盘/鼠标或其它输入设备的概念。虽然这一开始看起来像是一种限制,但它允许进行渲染的代码完全独立于他运行的操作系统,允许跨平台开发。然而,有些整合于原生窗口系统的东西需要允许和宿主系统交互。这通过下列附加API实现:
  * GLX - X11(包括透明的网络)
  * WGL - Microsoft Windows
  * AGL - Apple MacOS
  另外,GLUT库能够以可移植的方式提供基本的窗口功能。
OpenGL - 高性能图形算法行业标准
  OpenGL™ 是行业领域中最为广泛接纳的 2D/3D 图形 API, 其自诞生至今已催生了各种计算机平台及设备上的数千优秀应用程序。OpenGL™ 是独立于视窗操作系统或其它操作系统的,亦是网络透明的。在包含CAD、内容创作、能源、娱乐、游戏开发、制造业、制药业及虚拟现实等行业领域中,OpenGL™ 帮助程序员实现在 PC、工作站、超级计算机等硬件设备上的高性能、极具冲击力的高视觉表现力图形处理软件的开发。
  OpenGL(全写Open Graphics Library)是个定义了一个跨编程语言、跨平台的编程接口的规格,它用于三维图象(二维的亦可)。OpenGL是个专业的图形程序接口,是一个功能强大,调用方便的底层图形库。OpenGL的前身是SGI公司为其图形工作站开发的IRIS GL。IRIS GL是一个工业标准的3D图形软件接口,功能虽然强大但是移植性不好,于是SGI公司便在IRIS GL的基础上开发了OpenGL。OpenGL的英文全称是“Open Graphics Library”,顾名思义,OpenGL便是“开放的图形程序接口”。虽然DirectX在家用市场全面领先,但在专业高端绘图领域,OpenGL是不能被取代的主角。
  OpenGL是个与硬件无关的软件接口,可以在不同的平台如Windows 95、Windows NT、Unix、Linux、MacOS、OS/2之间进行移植。因此,支持OpenGL的软件具有很好的移植性,可以获得非常广泛的应用。由于OpenGL是图形的底层图形库,没有提供几何实体图元,不能直接用以描述场景。但是,通过一些转换程序,可以很方便地将AutoCAD、3DS/3DSMAX等3D图形设计软件制作的DXF和3DS模型文件转换成OpenGL的顶点数组。
  在OpenGL的基础上还有Open Inventor、Cosmo3D、Optimizer等多种高级图形库,适应不同应用。其中,Open Inventor应用最为广泛。该软件是基于OpenGL面向对象的工具包,提供创建交互式3D图形应用程序的对象和方法,提供了预定义的对象和用于交互的事件处理模块,创建和编辑3D场景的高级应用程序单元,有打印对象和用其它图形格式交换数据的能力。
  OpenGL的发展一直处于一种较为迟缓的态势,每次版本的提高新增的技术很少,大多只是对其中部分做出修改和完善。1992年7月,SGI公司发布了OpenGL的1.0版本,随后又与微软公司共同开发了Windows NT版本的OpenGL,从而使一些原来必须在高档图形工作站上运行的大型3D图形处理软件也可以在微机上运用。1995年OpenGL的1.1版本面市,该版本比1.0的性能有许多提高,并加入了一些新的功能。其中包括改进打印机支持,在增强元文件中包含OpenGL的调用,顶点数组的新特性,提高顶点位置、法线、颜色、色彩指数、纹理坐标、多边形边缘标识的传输速度,引入了新的纹理特性等等。OpenGL 1.5又新增了“OpenGL Shading Language”,该语言是“OpenGL 2.0”的底核,用于着色对象、顶点着色以及片断着色技术的扩展功能。
  OpenGL 2.0标准的主要制订者并非原来的SGI,而是逐渐在ARB中占据主动地位的3DLabs。2.0版本首先要做的是与旧版本之间的完整兼容性,同时在顶点与像素及内存管理上与DirectX共同合作以维持均势。OpenGL 2.0将由OpenGL 1.3的现有功能加上与之完全兼容的新功能所组成(如图一)。借此可以对在ARB停滞不前时代各家推出的各种纠缠不清的扩展指令集做一次彻底的精简。此外,硬件可编程能力的实现也提供了一个更好的方法以整合现有的扩展指令。
  目前,随着DirectX的不断发展和完善,OpenGL的优势逐渐丧失,至今虽然已有3Dlabs提倡开发的2.0版本面世,在其中加入了很多类似于DirectX中可编程单元的设计,但厂商的用户的认知程度并不高,未来的OpenGL发展前景迷茫。
回复 顶

使用道具 举报

发表于 2009-5-16 11:08:19 | 显示全部楼层
http://www.owlei.com/DancingWind/Frame/OpenGL%20Frame.htm

为了使用这个框架,你必须熟记以下四个函数,我们用它来完成OpenGL的逻辑:
* bool Initialize();
* 执行所有的初始化工作,如果成功函数返回true
*
* void Deinitialize();
* 执行所有的卸载工作
*
* void Update(DWORD milliseconds);
* 执行所有的更新操作,传入的参数为两次操作经过的时间,以毫秒为单位
*
* void Draw();
* 执行所有的绘制操作

我们从Initialize()函数说起


  
   

bool GL_Example::Initialize()                                        // 初始化OpenGL
{
/*****************************************************用户自定义的初始化过程*******************/
        glClearColor(0.0f, 0.0f, 0.0f, 0.5f);                                               
        glClearDepth(1.0f);                                                                                       
        glDepthFunc(GL_LEQUAL);                                                                               
        glEnable(GL_DEPTH_TEST);                                                                       
        glShadeModel(GL_SMOOTH);                                                                       
        glHint(GL_PERSPECTIVE_CORRECTION_HINT, GL_NICEST);                       
        ResizeDraw(true);                                        // 改变OpenGL窗口大小,直接调用子类的函数
/**********************************************************************************************/

        return true;                                        // 成功返回
}
回复 顶

使用道具 举报

 楼主| 发表于 2009-5-16 15:32:02 | 显示全部楼层
楼上说的很专业,我现在其实也不懂这些程序,但是我希望大家能够通过解剖这个程序,重里面找到一些有用的方法,做大程序的一些基本的技巧,好的编程风格,WINDOWS API和DLL的调用,读取计算机的一些信息,不一定要去不弄懂或搞得很透彻,关键是要找到一些开发的方法。
回复 顶

使用道具 举报

 楼主| 发表于 2009-5-16 16:11:42 | 显示全部楼层
gigio ,可以下载的,我试过了,提醒大家一下主程序在Interface里面的面,我试过有的WINDOws系统是不能运行的,现在也不知道是什么原因,跟你转的XP的版本有关好像。。。
回复 顶

使用道具 举报

发表于 2009-5-16 22:41:50 | 显示全部楼层
回复 顶

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|cpubbs论坛. ( 粤ICP备09171248号 )

GMT+8, 2026-9-29 14:50 , Processed in 0.071020 second(s), 12 queries , Gzip On, File On.

Powered by Discuz! X5.0

© 2001-2026 Discuz! Team.

快速回复 返回顶部 返回列表