- 博客(19)
- 资源 (5)
- 收藏
- 关注
原创 软连接与硬链接的区别
为test文件创建硬链接如下:shell-test:/u/nanaal/shell$ cp -l test test1shell-test:/u/nanaal/shell$ ln -l test test2shell-test:/u/nanaal/shell$ ls -litotal 124298659818 -rw-rw-r--. 3 nanaal nanaa
2017-04-19 20:13:55
7779
原创 关于工厂模式的一些反思
之前看了一些关于工厂模式和抽象工厂模式的资料,了解了工厂模式和抽象工厂模式的特点和区别。今天再回来看自己之前写的笔记,又开始迷惑了,下面把自己的一些迷惑和想法记录下来。1.什么地方会用到简单工厂模式?在很多开源库中都会出现跨平台的问题。假设有一个窗口模块(即为一个dll),该模块提供窗口的基本功能比如设置标题、设置窗口背景颜色等。在不同的平台里,创建窗口需要调用不同的API,比如w
2014-12-29 23:38:35
1398
1
原创 快速排序
1.算法描述快速排序是一种基于分治技术的排序算法。在一个给定的数列中,选择一个数作为分区的依据进行排序,使得数的左边都小于该数,数的右边都大于该数,然后将该数的左边和右边分别作为一个数列进行排序,一直重复以上操作,直到分区里只有一个数字为止。上面所说的是快速排序的基本特点,可以简单总结为:确定分区依据,左小右大(或左大右小),划分子区间,重复以上操作,直到子区间只有一个数字。在具体的实
2014-12-28 19:16:14
1259
原创 冒泡排序
1.算法描述冒泡算法和选择排序一样,也属于蛮力算法。简单描述为:在一个长度为n的数列中,相邻的数字之间两两比较,如果两个数字的大小排序不符合排序要求(降序或升序),则交换这两个数字的位置,依次比较,直到最后两个数字之间比较结束,这样最大的数字放到了列表的最后的位置,然后再从[0,n-2]个数中进行比较,第二大数字最后放到数列的倒数第二个位置...重复这样的操作n-1次,排序完成。简单记忆为:两
2014-12-21 16:53:53
1315
原创 选择排序
1.算法描述选择排序是一种蛮力法解决排序问题的算法。对其可简单描述为:对一个数列进行升序(降序)排列时,每次从剩余的序列中挑选出最小(最大)的数字,放到它的最终位置,以此类推,直到数列的所有数字都已经放到最终位置为止。可以简单的记忆为:选择最小(或最大),放到最终位置。2.实例使用选择排序法将下面数列按升序排序:8 3 4 2
2014-12-20 15:19:17
1015
1
原创 C++调用FFMpeg接口
1.首先下载FFMpegFFMpeg编译有些复杂,我就没有自己编译,在FFMpeg官网下载FFMpeg的dev和share两个版本。dev目录如下:里面有创建项目需要的头文件和lib文件,但是没有dll,创建一个新的项目,添加include和lib依赖引用,编译可以通过,但是运行的时候会出现缺少dll的错误提示。下载share版本,目录如下:
2014-12-09 20:43:58
6540
转载 FreeType的灰度图
FreeType生成的图是8bit灰度图,文字部分为白色,背景为黑色。这就有个麻烦,一般字体都是黑色,那好如果吧字体颜色取反,就黑色的变白的,白的变黑的了。可是呢,要加上颜色怎么办?这就是Freetype的文字是白色的原因,因为是8bit灰度图,因此不是黑色或白色地方,颜色就成了一个比例因子,只需要将其与想要设置的颜色相乘除以256即可,比如灰度图中某点的颜色是156,想要设置颜色是RGB(127
2014-12-03 21:21:27
1744
转载 使用FreeType实现矢量字体的粗体、斜体、描边、阴影效果(转载)
前言:Freetype是一个跨平台、开源的字体渲染器,网上很多文章介绍,本人就不啰嗦了。本文重点在于实现文章标题所属的各种效果,不是Freetype的基本使用方法介绍文档,所以对于Freetype不熟悉的同学们请先学习下Freetype的基本用法,才可以使用本文中所提及的方法。正文:用FreeType实现矢量字体的粗体、斜体、描边、阴影效果不是一件容易的事,本人认为皆因Fr
2014-12-03 21:18:22
5099
原创 工厂模式
工厂模式主要分三种:简单工厂模式、工厂方法模式和抽象工厂模式。简单工厂模式:1.一个工厂类;2.一个抽象产品类,多个具体子类;3.在工厂类中添加逻辑判断,根据条件生成不同的产品;4.每添加一种产品,就需要在工厂类中添加相应的逻辑判断和生成代码;工厂方法模式:1.一个抽象工厂类,多个具体工厂子类;2.一个抽象的产品类,多个具体产品子类3.一个具体工
2014-11-13 23:22:57
629
原创 模型的平移
在三维场景中经常会用到模型的平移、旋转和缩放功能。最近实现了模型的编辑功能,感觉之前学的矩阵运算和几何都快忘光了,幸好做了这个功能,又重新拾了起来,为了防止以后再忘记,特写一篇日记来记录一下。知识点1:变换矩阵在三维场景中一个点用x,y,z表示就可以了,但是必须使用4*4的矩阵才能完成模型的各种变换,所以模型的变换矩阵都是4*4的。知识点2:点或者向量要想获取点或者向量变换后的
2014-11-12 22:10:54
1455
原创 在linux下运行sfml example
这里以sfml自带的example OpenGL为例,讲一下如何在linux下运行sfml的程序。jias
2014-07-14 12:54:26
2218
转载 让linux CentOS6在同一个窗口打开文件夹(转载)
让 CentOS 5.3在同一窗口中打开文件夹CentOS默认的gnome nautilus打开文件夹时,总是另开一个新窗口显示,大部分都不会习惯吧?英文:勾选 Edit -> Preferences -> Behavior -> Always open in browser windows中文:先打开一个文件夹,编辑-->首选项-->行
2014-07-14 12:48:18
1421
转载 glew在linux环境下的编译
将glew源码放到linux环境下编译,弹出如下异常:/bin/sh^M:bad interpreter:没有这样的文件或目录在网上看到一篇博文http://blog.youkuaiyun.com/lichaoandy/article/details/5951231才知道,是乱码的问题导致的,原来是config/config.guess文件的格式是dos,但在linux系统环境下文件格式需要是
2014-07-14 12:47:24
3002
原创 SFGUI和OpenGL的深度测试
使用SFGUI和OpenGL时,发现一个问题,场景中什么也没有,不知道为什么。后来在网上找到了原因,原来是启用深度测试的问题。glEnable(GL_DEPTH_TEST); // Enable Depth TestingglDepthMask(GL_TRUE);glClearDepth(1);绘制半透明物体时,需注意:在绘制半透明物体时前,还需要利用glDepthMask
2014-05-16 12:31:10
791
原创 SFGUI的乱码和设置字体
一.SFGUI的乱码使用SFGUI时,设置Button或Label的Text时,最好使用宽字节(例如:Label::Ptr label1 = Label::Create(L "项目")),应为如果设置的字符串里有中文或者其他非英文的字符,会出现乱码。如果这样设置了发现还是乱码,那就需要检查SFGUI的字体是否支持中文了,SFGUI0.1.1版本默认字体不支持中文,需要在创建了SFGUI的W
2014-05-16 12:29:29
1531
原创 3DS Max的NodeTM和ObjectTM
1.方法介绍(1)Matrix3 GetNodeTM(TimeValue t, Interval* valid = NULL) 函数解释:This method returns the world space transformation matrix of the node at the specified time.这个方法返回节点在指定时间的世界变换矩阵。
2014-04-30 10:57:37
1333
原创 多项式(运行环境VS2008)
<br />Polynomial.h<br />class polynomial<br />{<br />public:<br /> polynomial();//默认构造函数<br /> polynomial(int,int);//重载构造函数<br /> ~polynomial();//析构函数<br /> int getCoefficient(int);<br /> int getIndex(int);<br /> void setPolynomial(int,int);//设置值<br /> pol
2010-12-05 14:27:00
710
libsndfile-1.0.25源码
2014-07-14
openal-0.0.8.tar.gz linux运行库
2014-07-14
glew-1.5.1源码
2014-07-14
SFGUI源码及example工程
2014-05-06
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人