摘要: 3D概念 在3D空间的每个位置都可以被欧几里德三维坐标系的一个三维坐标所表示。我们要强调一下在3D表示方面有不同的坐标体系。而这些体系之间的不同就是主轴的方向和旋转的正方向。现在主流的有两种体系,左手坐标系和右手坐标系。在下面的图中,我们看到两种体系—在左边我们看到的是左手坐标系;在右边我们看到的是右手坐标系。大拇指是X轴,食指是Y轴,而中指是Z轴。 Ogre使用的是右手坐标系。3D空间中的三个基本操作 位置变换(position),旋转变换(rotation)和缩放(scale)变换。一个场景绘图是如何被组织的 以树... 阅读全文
posted @ 2013-10-15 22:21 Tiu.G 阅读(282) 评论(0) 推荐(0) 编辑
摘要: 在使用Ogre3DSDK之前我们需要配置IDE1.新建一个空工程2.在工程里新建一个文件,命名为main.cpp3.添加一个main方法:intmain(void){return0;}4.在该文件开头部分包含上ExampleApplication.h文件:#include"Ogre\ExampleApplication.h"5.添加“你的OgreSDK路径\include\”到你的项目includepath(头文件路径)6.添加“你的OgreSDK路径\boost_1_42\”到你的项目includepath(头文件路径)7.添加“你的OgreSDK路径\boost_1_4 阅读全文
posted @ 2013-10-14 22:30 Tiu.G 阅读(255) 评论(0) 推荐(0) 编辑
摘要: 1.更改场景类的继承关系。将HelloWorld : public class cocos2d::CCLayer 更改为HellowWorld : public class cocos2d::CCLayerColor.2.更改初始化函数。将CC_BREAK_IF(! CCLayer::init())更改为 CC_BREAK_IF(!CCLayerColor::initWithColor(ccc4(255,255,255,255))); 阅读全文
posted @ 2013-05-07 10:46 Tiu.G 阅读(620) 评论(0) 推荐(0) 编辑
摘要: 在进行URL解析时,遇到这个函数,故百度之。本文转自百度百科。名称sscanf() - 从一个字符串中读进与指定格式相符的数据.函数原型:int sscanf( const char *, const char *, ...);int sscanf(const char *buffer,const char *format,[argument ]...);buffer存储的数据format格式控制字符串argument 选择性设定字符串sscanf会从buffer里读进数据,依照argument的设定将数据写回。头文件#include<stdio.h>返回值成功则返回参数数目,失败 阅读全文
posted @ 2013-04-16 22:17 Tiu.G 阅读(206) 评论(0) 推荐(0) 编辑
摘要: 题目要求:将字符串以词为单位进行翻转。如:"a bc def gh ij kml"变成"kml ij gh def bc a"。时间复杂度O(n),空间复杂度O(1)。思路:先将整个字符串按字母进行翻转,然后再逐个单词翻转。代码如下:#include<iostream>using namespace std;void wordturn(char *src, int len){ //按字母翻转 for(int i =0; i < len/2; i++){ char temp = src[i]; src[i] = src[len-i-1]; 阅读全文
posted @ 2013-04-03 22:26 Tiu.G 阅读(171) 评论(0) 推荐(0) 编辑
摘要: 题目要求:在一个有序数组里面找一对数(两个数),使他们相加等于另外一个数。如,{1,2,4,7,11,16}要求找出和为15的两个数,如果有多组数满足要求,输出其中一组。思路:因为数组已经有序,我们用二分法来寻找这对数。这个题目是二分法的一种应用。代码如下:#include <iostream>using namespace std;int *find_two_digits(int *array, int len, int goal){ int *pi = new int[2]; for(int i = 0 ; i < len; i++){ int low = 0; int 阅读全文
posted @ 2013-04-03 20:34 Tiu.G 阅读(188) 评论(0) 推荐(0) 编辑
摘要: 题目要求:把一个数组分成左边奇数右边偶数。要求效率尽量高。代码如下:#include <iostream>using namespace std;/*两数交换函数*/void swap(int &a,int &b){ int temp = a; a = b; b = temp;}/*划分函数*/void partition_odd_even(int a[], int count){ int low = 0;int high = count -1;while(low <= high){ while(a[low] % 2 == 1)low++; while(a[h 阅读全文
posted @ 2013-04-03 20:08 Tiu.G 阅读(491) 评论(0) 推荐(0) 编辑
摘要: 1.在一个有序数组里面找一对数(两个数),使他们相加等于另外一个数。如,{1,2,4,7,11,16}要求找出和为15的两个数,如果有多组数满足要求,输出其中一组。2.字符串单词翻转,如"a bc def gh ij kml"翻转后"kml ij gh def bc a"。要求时间复杂度O(n),空间复杂度O(1)。3.把一个数组划分成左边奇数右边偶数。将在algorithm分类中给出我的解法~ 阅读全文
posted @ 2013-04-03 19:29 Tiu.G 阅读(117) 评论(0) 推荐(0) 编辑
摘要: 填空题、选择题、改错题、分析题。分析题:1.有一个粗心的程序猿想要写一个程序来现实30个'-'号,不小心写成如下代码,要求你修改使之能正确实现功能。但是,你只能修改或增加其中的一个字符。程序代码如下:int n = 30;for(int i = 0; i < n; i--) printf("-"); 2.有三个单身的程序猿想要争夺一个心仪的女子,他们手中个有一把枪。但是每个人的枪法不一样,A命中目标的概率为30%,B命中目标的概率为50%,C则是百发百中。公平起见,射击顺序如下,A先,然后B,最后C。请问最后谁活下来的可能最大,谁的可能最小?请分析他们 阅读全文
posted @ 2013-03-26 23:44 Tiu.G 阅读(199) 评论(0) 推荐(0) 编辑
摘要: 字符串转化为整数需要注意以下几个问题: 1.检测非法输入; 2.空串、空指针; 3.判断数字的正负; 4.处理数字的上下溢出。(因为整数是有范围的。)#include <iostream>long long StrToIntCore(const char* digit,bool minus);enum Status{kValid = 0, kInvalid};int g_nStatus = kValid; //定义一个全局变量来标志是否遇到非法输入。int StrToInt(const char* str){g_nStatus = kInvalid;long long num = 阅读全文
posted @ 2013-03-26 10:37 Tiu.G 阅读(184) 评论(0) 推荐(0) 编辑