随笔分类 - Windows图形/程序语言基础
探讨部分平台图形基础 程序语言基础 比较本质的一些东西
摘要:经历前两节课,想必大家能够编写一些基本的OpenGL小程序。但是对这个glBegin里的冬冬,还是心生困惑的。因此我将这里的基本类型给大家列下来。我们在画一个图元的时候,通常如下,比如Helloj2ee绘制的北斗七星图。 glBegin(g_geotype); glVertex2i(289, 190); // 绘制若干个点 glVertex2i(320, 128); glVertex2i(239, 67); glVertex2i(194, 101); glVertex2i(129, 83); ...
阅读全文
摘要:获取和安装了OpenGL之后,就可以写第一个OpenGL程序了。虽然Helloj2ee在获取和安装OpenGL非常顺利。但是实际中大家会遇到不同的问题。具体说来主要有以下两个问题。1、按照上一篇的步骤,VS运行OpenGL程序仍然找不到glut.dll和glut32.dll。这个问题主要是操作系统不一样。64位操作系统,需要将这两个dll安装到系统目录syswow64目录下。2、lib放置的问题。仍然是部分机器,会存在Program File以及Program Files(x86)目录,您的VS多半会在后一个目录,因此需要找到相应的VS2010安装目录的lib文件夹下。比如Helloj2ee的
阅读全文
摘要:为方便读者以及学生通过OpenGL掌握计算机图形学,Helloj2ee打算重操旧业。计算机图形学,可以采用很多图形软件包(GDI,GDI+,WPF,QT等)来实现。但是考虑到跨平台,以及简单易用,三维能力强悍等原因,Helloj2ee采用了OpenGL。做饭炒菜要用锅碗瓢盆,写计算机图形学程序需要一个优秀的C++编译器,并且该编译器安装了适当的OpenGL。Helloj2ee采用了VS2010+OpenGL。为了使用OpenGL,必须采用三个库及相关文件。OpenGL核心库,它提供OpenGL的基本函数。每个函数都以GL开头;OpenGL实用库(GL Utility Library),glu库
阅读全文
摘要:如果windows一直存在下去,窗口这个话题也许是永恒的……在我看来桌面上的一切都是窗口,桌面本身是窗口,开始菜单是窗口,桌面上永远置顶的播放器是个置顶的窗口,工具栏是个子窗口…….
本文和大家讨论的就是窗口,还算深入吧。古老的话题,但也是永恒的话题。
阅读全文
摘要:网上有很多关于WS_CLIPCHILDREN和WS_CLIPSIBLINGS的理解 我个人没有搞清楚 于是研究了研究 认为本文还是相当全面的
我是个喜欢瞎琢磨的人。尤其是这几天心情非常郁闷。于是开始琢磨了…….琢磨的问题就是WS_CLIPCHILDREN和WS_CLIPSIBLINGS两种窗口样式的理解。
阅读全文
摘要:木老师教笨笨课堂——系列讲座(从函数指针到委托)这是一个系列文章 相信从C,C++到C#这样走过来的人和我有着相同感受
程序世界里面经常干的一件事情是模块A给模块B输入若干个参数,然后经过处理再输出一个结果返回给模块A。一般情况下A只需要把应该输入的参数准备好,然后等着模块B完成剩下的工作。可是有些时候B无法完成所有的工作需要获得A的帮助或者在完成工作的过程中他需要告诉A“我完成到什么地步”。这种特殊情况似乎很少见,其实不然.....
阅读全文
摘要:木老师教笨笨课堂 从函数指针到委托。
阅读全文
摘要:先来回顾一下,我们说函数指针有一个重要的特性,它可以指向任何形参相同的函数。这样可以用统一的方式去调用不同的函数。(这个我还是希望笨笨同学好好思考一下,我想也是程序思想的精髓之一吧),就好比武功秘籍中九字真言一般。“统一的方式去调用不同的实现”,如果在面向对象里就是“多态”二字。C++语言里当然也有函数指针。面向对象的引入,出现了类、对象的概念。以前函数指针只是指向的一般的函数,或者说是全局函数。但是类的出现,有了方法。于是我们会想函数指针除了指向一般的全局函数,能否指向类的方法。这是很自然的想法,就好比我们在武侠中一次掉落悬崖,没有摔死,反而获得武功秘籍一般。于是在江湖行走,看到各大悬崖,都
阅读全文
摘要:二、C语言里的函数指针上一节里介绍了回调函数,模块A提供了该函数 然后模块A调用B B再返过来调用A提供的函数,再处理最后返回结果给A。晕了。还是画个图。一般调用情况:图2-1有回调函数的调用情况:图2-2这个过程既然清楚了,那么回调函数如何传给模块B,它和一般的参数不同,它是一个函数。在C语言里解决的方案是函数指针,所谓函数指针字面上也可以理解 即指向函数的指针。函数指针更详细的用法可以参见谭浩强老师编写的经典著作《C程序设计(第二版)》(好书啊)。比如上例中的MyBestChoice的函数声明是:Ticket* MyBestChoice(Ticket[] ticketArray,int c
阅读全文