亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? xcamera.cpp

?? 類似于MatLab的東東,當(dāng)然肯定沒那么好,但基本的數(shù)學(xué)運(yùn)算還是有的
?? CPP
字號(hào):
#include "XCamera.h"
namespace XGeomLib
{
	/*
	將眼睛信息轉(zhuǎn)化成視圖矩陣。
	*/
	void XCamera::XEye::ToMatirx(XMatrix& matView)
	{
		XM_LookAt(matView,m_EyePos,m_EyeTarget,m_Up);
		return ;
	}
	XCamera::XEye::XEye():
	m_EyePos(0,0,0),m_EyeTarget(0,0,-1),m_Up(0,1,0)
	{
	}

	/**
	從一個(gè)Camera對(duì)象構(gòu)造出兩個(gè)矩陣。
	一個(gè)投影矩陣,
	一個(gè)視圖矩陣,
	*/
	void XCamera::ToMatrix(XMatrix& matView,XMatrix& matProject)
	{
		/*構(gòu)造視圖矩陣*/
		m_Eye.ToMatirx(matView);

		/*
		注意,這是個(gè)投影矩陣。可能有好幾種投影方式。
		平行投影和透視投影在本庫中被支持
		*/
		if(m_ProjectType == PT_PROJECT)
		{
			XM_Perspective(matProject,m_fFov,m_fAspect,m_fNear,m_fFar);
		}
		else if(m_ProjectType == PT_ORTHO)
		{
			XM_Ortho3D(matProject,m_fNear,m_fFar,m_ViewRect.m_top,m_ViewRect.m_bottom,m_ViewRect.m_left,m_ViewRect.m_right);
		}
		else
		{
			matProject.LoadIdentity();
		}
		return ;

	}

	/**
	從攝影機(jī)里構(gòu)造出一個(gè)視圖矩陣
	*/

	void XCamera::ToViewMatrix(XMatrix& matView)
	{
		m_Eye.ToMatirx(matView);
	}

	/**
	從一個(gè)攝影機(jī)里構(gòu)造出一個(gè)投影矩陣出來
	*/
	void XCamera::ToProjectMatrix(XMatrix& matProject)
	{

		/*
		注意,這是個(gè)投影矩陣。可能有好幾種投影方式。
		平行投影和透視投影在本庫中被支持
		*/
		if(m_ProjectType == PT_PROJECT)
		{
			XM_Perspective(matProject,m_fFov,m_fAspect,m_fNear,m_fFar);
		}
		else if(m_ProjectType == PT_ORTHO)
		{
			XM_Ortho3D(matProject,m_fNear,m_fFar,m_ViewRect.m_top,m_ViewRect.m_bottom,m_ViewRect.m_left,m_ViewRect.m_right);
		}
		else
		{
			matProject.LoadIdentity();
		}
		return ;

	}

	/*****************************************************************
	攝影機(jī)的俯仰和旋轉(zhuǎn)函數(shù)
	*****************************************************************/
	void XCamera::Yaw(float angle)
	{
             XVector vDir  = m_Eye.m_EyeTarget - m_Eye.m_EyePos;
             XVector newDir;
             float len = vDir.len();

             vDir.normalize();
             XMatrix matRot ;
             XM_Rotate(matRot,m_Eye.m_Up,angle);
             XMatrix_Mul(vDir,matRot,newDir);

             newDir = newDir * len;
	     m_Eye.m_EyeTarget = m_Eye.m_EyePos + newDir;

	}
	void XCamera::Pitch(float angle)
	{
		XVector vDir  = m_Eye.m_EyeTarget - m_Eye.m_EyePos;
		float len = vDir.len();
		vDir.normalize();
		XVector vLeft = vDir.cp(m_Eye.m_Up);

		XVector newDir;
		XVector newUp;

		XMatrix matRot;
		XM_Rotate(matRot,vLeft,angle);

		XMatrix_Mul(vDir,matRot,newDir);
		XMatrix_Mul(m_Eye.m_Up,matRot,newUp);
		m_Eye.m_Up = newUp;
                newDir = newDir * len;
		m_Eye.m_EyeTarget = m_Eye.m_EyePos + newDir;
	}

	void XCamera::Roll(float angle)
	{
		XVector vDir  = m_Eye.m_EyeTarget - m_Eye.m_EyePos;
		vDir.normalize();
		XVector vLeft = vDir.cp(m_Eye.m_Up);

		XVector newUp;

		XMatrix matRot;
		XM_Rotate(matRot,vDir,angle);

		XMatrix_Mul(m_Eye.m_Up,matRot,newUp);
		m_Eye.m_Up = newUp;
	}

	void XCamera::Circle(float angle)
	{
             XVector vDir  = m_Eye.m_EyeTarget - m_Eye.m_EyePos;
             XVector newDir;
             float len = vDir.len();

             vDir.normalize();
             XMatrix matRot ;
             XM_Rotate(matRot,m_Eye.m_Up,angle);
             XMatrix_Mul(vDir,matRot,newDir);

             newDir = newDir * len;
	     m_Eye.m_EyePos = m_Eye.m_EyeTarget - newDir;
	}


	/*****************************************************************
	攝影機(jī)的位置改變。函數(shù)。
	*****************************************************************/
	void XCamera::Toward(float dist)
	{
		XVector vDir = m_Eye.m_EyeTarget - m_Eye.m_EyePos;
		vDir.normalize();
		vDir *= dist;

		m_Eye.m_EyePos.x += vDir.x;
		m_Eye.m_EyePos.y += vDir.y;
		m_Eye.m_EyePos.z += vDir.z;

		m_Eye.m_EyeTarget.x += vDir.x;
		m_Eye.m_EyeTarget.y += vDir.y;
		m_Eye.m_EyeTarget.z += vDir.z;

	}
	void XCamera::UpDown(float dist)
	{
		XVector vDir = m_Eye.m_Up;
		vDir *= dist;

		m_Eye.m_EyePos.x += vDir.x;
		m_Eye.m_EyePos.y += vDir.y;
		m_Eye.m_EyePos.z += vDir.z;

		m_Eye.m_EyeTarget.x += vDir.x;
		m_Eye.m_EyeTarget.y += vDir.y;
		m_Eye.m_EyeTarget.z += vDir.z;
	}
	void XCamera::Shift(float  dist)
	{

		//向右移動(dòng)為正
		XVector vDir  = m_Eye.m_EyeTarget - m_Eye.m_EyePos;
		XVector vLeft = vDir.cp(m_Eye.m_Up);
		vLeft.normalize();
		vLeft *= dist;

		m_Eye.m_EyePos.x += vLeft.x;
		m_Eye.m_EyePos.y += vLeft.y;
		m_Eye.m_EyePos.z += vLeft.z;

		m_Eye.m_EyeTarget.x += vLeft.x;
		m_Eye.m_EyeTarget.y += vLeft.y;
		m_Eye.m_EyeTarget.z += vLeft.z;	
	}


};

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧美综合亚洲图片综合区| 欧美久久一区二区| 精品美女被调教视频大全网站| 亚洲人成网站精品片在线观看| 国产91精品入口| 国产视频在线观看一区二区三区| 精品一区二区三区免费视频| 日韩欧美国产一区二区在线播放| 丝袜亚洲精品中文字幕一区| 欧美在线视频日韩| 国产成人鲁色资源国产91色综| 久久你懂得1024| 国产成人鲁色资源国产91色综| 五月激情六月综合| 精品日韩一区二区| 欧美丝袜丝交足nylons| 美女视频一区二区| 欧美精品一区二区三区一线天视频| 国产91精品在线观看| 欧美三级中文字| 亚洲高清免费在线| 欧美日韩国产bt| 九色综合狠狠综合久久| 亚欧色一区w666天堂| 欧美不卡123| 欧美一区二区在线不卡| 国产精品一区二区久久不卡| 亚洲色图欧美激情| 宅男在线国产精品| 白白色亚洲国产精品| 亚洲国产精品自拍| 亚洲精品国产一区二区三区四区在线| 欧美喷水一区二区| 在线观看不卡视频| 91免费观看视频在线| 美国毛片一区二区| 日本伊人色综合网| 中文字幕亚洲在| 亚洲一区在线电影| 美国三级日本三级久久99| 欧美精品一区二区三区视频| 91精品免费观看| 欧美美女bb生活片| 欧美精品vⅰdeose4hd| 欧美精品在线视频| 欧美日韩一区视频| 欧美日韩中文一区| 欧美精品一级二级| 欧美人与z0zoxxxx视频| 欧美日韩一区在线观看| 欧美日韩成人综合天天影院 | 日韩久久久久久| 欧美一区二区三区在| 91精品国产入口| 日韩免费性生活视频播放| 欧美一卡二卡在线观看| 精品久久久久av影院| 久久久三级国产网站| 国产亚洲成年网址在线观看| 欧美—级在线免费片| 91精品国产乱| 欧美成人vps| 国产人成亚洲第一网站在线播放| 欧美片网站yy| 日韩一区二区三区电影| 欧美在线观看视频一区二区 | 精品毛片乱码1区2区3区 | 亚洲区小说区图片区qvod| 亚洲综合视频网| 五月激情综合色| 精品一区二区三区视频在线观看| 国产精品系列在线播放| 99re这里只有精品视频首页| 国内欧美视频一区二区| 日韩成人一级片| 国产一区二区精品久久| 久久精品国产99国产| 日韩电影在线看| 国产麻豆日韩欧美久久| 色综合久久久久久久久| 国产98色在线|日韩| 色婷婷综合久色| 日韩一区二区三区精品视频| 亚洲国产成人一区二区三区| 一级中文字幕一区二区| 一区二区在线免费| 久久精品国产精品亚洲红杏| 成人精品一区二区三区中文字幕| 国产福利91精品一区| 色天使久久综合网天天| 欧美xfplay| 亚洲精品大片www| 国产在线视视频有精品| 91国偷自产一区二区开放时间 | 日韩视频在线观看一区二区| 亚洲国产精品成人综合| 亚洲第一会所有码转帖| 国产精品自拍在线| 欧美午夜在线观看| 国产欧美精品一区二区色综合| 亚洲欧美日韩国产另类专区| 久久精品国产久精国产| 色悠悠久久综合| 久久久久亚洲综合| 日韩中文字幕亚洲一区二区va在线 | 久久久天堂av| 天堂蜜桃一区二区三区| 99免费精品在线观看| 日韩欧美一区二区免费| 亚洲最大色网站| 成人av在线资源网站| 99国产欧美久久久精品| 久久综合九色综合欧美就去吻 | 亚洲一区在线观看免费观看电影高清 | 成人欧美一区二区三区在线播放| 美女视频网站黄色亚洲| 欧美三级电影在线看| 亚洲丝袜自拍清纯另类| 国产黄人亚洲片| 日韩一区二区三区电影在线观看| 亚洲综合在线观看视频| eeuss影院一区二区三区| 精品粉嫩aⅴ一区二区三区四区| 亚洲成a人v欧美综合天堂| 99国产精品久久久久久久久久| 国产亚洲精品aa午夜观看| 精品一区二区日韩| 日韩亚洲欧美综合| 日韩专区在线视频| 欧美日韩一本到| 亚洲国产色一区| 欧美在线观看视频在线| 亚洲丝袜精品丝袜在线| 99久久伊人久久99| 国产精品成人免费在线| 丝袜美腿亚洲一区| 欧美日韩国产美女| 亚洲成人激情社区| 欧美在线观看18| 亚洲午夜激情av| 精品视频1区2区| 午夜激情一区二区三区| 欧美日韩精品一区二区三区| 亚洲国产乱码最新视频| 欧美久久久一区| 男女性色大片免费观看一区二区 | 国产精品99久久不卡二区| 精品国偷自产国产一区| 九色综合狠狠综合久久| 久久久亚洲国产美女国产盗摄| 国产在线精品免费av| 久久精品亚洲精品国产欧美 | 久久久不卡影院| 国产成人在线视频免费播放| 国产精品第一页第二页第三页| hitomi一区二区三区精品| 亚洲男人的天堂在线观看| 欧美综合在线视频| 日韩不卡在线观看日韩不卡视频| 欧美一级日韩免费不卡| 国产在线精品一区在线观看麻豆| 国产日韩精品一区二区三区| 99视频热这里只有精品免费| 亚洲伊人色欲综合网| 91精品国产全国免费观看| 久久99精品久久久久婷婷| 久久久99精品免费观看| 97se亚洲国产综合自在线观| 亚洲国产一区视频| 精品少妇一区二区三区| 成人天堂资源www在线| 一区二区三区小说| 欧美一区二区三区免费在线看 | 日韩一卡二卡三卡国产欧美| 国产精品自在在线| 亚洲精品国产一区二区精华液| 在线播放中文一区| 国产精品中文字幕日韩精品| 亚洲色图欧洲色图| 欧美一级淫片007| 北条麻妃一区二区三区| 五月天视频一区| 国产片一区二区| 欧美日韩高清在线| 成人一区二区三区在线观看| 亚洲与欧洲av电影| 精品国产91久久久久久久妲己 | 日韩精品一区二区三区四区| 成人一道本在线| 视频在线观看国产精品| 国产欧美精品一区| 欧美乱熟臀69xxxxxx| 国产91高潮流白浆在线麻豆 | 国产成人免费视频| 午夜欧美一区二区三区在线播放| 欧美精品一区二区高清在线观看| 色呦呦网站一区| 国产黄色成人av| 免费成人在线影院| 亚洲一区在线电影|