2014年3月17日

摄像机的几何模型

摘要: 一、欧式解析几何基础1.相关概念 点O以及三个互相垂直的单位向量i,j,k构成的四元组(O,i,j,k)定义一个正交坐标系F 右手坐标系是指i,j,k分别对应右手的手指:拇指向上,食指向前,中指向左 点P(x,y,z)定义为向量OP在i,j,k方向上的投影;P=(x,y,z)T称为P在F中的坐标向量 平面可以由平面上任一点和其法向量确定 平面方程可以写为:∏·P=0,其中∏=(a,b,c,-d)T,P=(x,y,z,1)T;∏和P为齐次坐标 二次曲面的通用表示:PTQP,其中Q是对应的系数矩阵2.刚体变换 有坐标系A和坐标系B,讨论的是点P在两个坐标系中表达式的转换方式 i.纯... 阅读全文
posted @ 2014-03-17 21:31 金融挨踢狗 阅读(756) 评论(0) 推荐(0)
2013年12月23日

几种坐标系的简介及关系

摘要: 定点坐标(对象坐标系)→MModelView→眼坐标系→MProjection→裁剪坐标系→ w分离→标准化设备坐标系→视口转换→窗口坐标系1.对象的坐标系(Object Coordinates)1.1 对象的本地坐标,感觉这里应该是用户坐标系(UCS)而非世界坐标系;1.2 几何变换操作(transformation),如:glRotate(),glTranslatef(),glScalef(),就是在此坐标系上进行的。2.眼坐标系(Eye Coordinates)2.1 Ze轴为视点指向原点,XeYe平面保持当前平面(即屏幕)的一个左手系坐标;2.2 OpenGL中用GL_MODELVIE 阅读全文
posted @ 2013-12-23 21:00 金融挨踢狗 阅读(2071) 评论(0) 推荐(0)
2013年12月17日

glRotate函数

摘要: void glRotate( GLdouble angle, GLdouble x, GLdouble y, GLdouble z )API说明:angle为旋转角度,单位为度;x,y,z是旋转轴的矢量。如果x,y,z轴是左手系,则旋转满足左手系;如果x,y,z轴是右手系,则旋转满足右手系。 阅读全文
posted @ 2013-12-17 20:22 金融挨踢狗 阅读(620) 评论(0) 推荐(0)
2013年9月11日

Mandelbrot和Julia

摘要: 概述mandelbrotjuliaMandelbrot对全体复数z,满足xn+1 =xn2 + z从x0 = 0起,|x|随n值增加不趋于无穷大,则z属于Mandelbrot集代码#include int g_width, g_height;/*********************************input: z = a + bi MaxIteration,迭代次数上限output: 灰度级n*********************************/int GrayLevel(double a, double b, int MaxIteratio... 阅读全文
posted @ 2013-09-11 15:48 金融挨踢狗 阅读(303) 评论(0) 推荐(0)
2013年9月4日

OpenGL(四)——有用的函数

摘要: 概述1. reshape 定义窗口和图像的映射关系,使在不以纵横比4:3调整窗口大小时,图像不会失真函数1. ReShape如果变更后的窗体的横纵比大于4/3,需要以高为基数,宽为高*4/3,并截取中间部分;横纵比小于4/3类推void reshape(GLsizei width, GLsizei height){ float w_aspect = 4.0 / 3.0; float aspect = ((float)width) / height; if (aspect <= w_aspect) { glViewport(0, (height - wid... 阅读全文
posted @ 2013-09-04 17:37 金融挨踢狗 阅读(178) 评论(0) 推荐(0)
2013年9月3日

OpenGL(三)——函数大全

摘要: 概述根据自己写的小程序对各个函数进行解释OpenGL函数1.颜色1.1 glShadeModel绘制指定两点间其他点颜色的过渡模式 没试1.2 glColor设置当前颜色;可以派生出很多其他函数 glColor3x 3表示接受3个参数,分别对应RGB的数值;x表示数据类型 glColor4x 4表示接受4个参数,分别对应RGB的数值和alpha(透明度) glColor 最后还可以带v,表示参数是一个数组指针1.3 glClear 将缓存清除为预先设置的值,参数表示清除的缓存的种类1.4 glBegin和glEnd可以理解为划定一组原语,根据glBegin的参数和原语间的坐标画出相... 阅读全文
posted @ 2013-09-03 23:07 金融挨踢狗 阅读(440) 评论(0) 推荐(0)
2013年9月2日

OpenGL(二)——函数库简述

摘要: 简述1. OpenGL用到的库分为OpenGL核心库、OpenGL实用库、OpenGL辅助库和OpenGL工具库(不是必须)2. OpenGL核心库 核心库包含有115个函数,函数名的前缀为gl 这部分函数用于常规的、核心的图形处理,由gl.dll来负责解释执行。由于许多函数可以接收不同数据类型的参数,因此派生出来的函数原形多达300多个 核心库中的函数主要可以分为以下几类函数:1)绘制基本几何图元的函数 如绘制图元的函数glBegin()、glEnd()、glNormal*()、glVertex*()2)矩阵操作、几何变换和投影变换的函数 如矩阵入栈函数glPushMatrix()、... 阅读全文
posted @ 2013-09-02 19:55 金融挨踢狗 阅读(386) 评论(0) 推荐(0)
2013年9月1日

OpenGL(一)——入门学习

摘要: 概要1. 为什么使用OpenGL2. 在VS2008上搭建环境3. 一个简单的例程OpenGL相较于DirectX的优越性1. 与C语言紧密结合 OpenGL命令最初就是用C语言函数来进行描述的,对于学习过C语言的人来讲,OpenGL是容易理解和学习的2. 强大的可移植性 OpenGL不仅用于 ... 阅读全文
posted @ 2013-09-01 20:49 金融挨踢狗 阅读(473) 评论(0) 推荐(0)