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

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? 3dtypes.h

?? JAVA3D游戲
?? H
字號:
    /*
    *
============================================================================
    *  Name     : 3DTypes.h
    *  Part of  : Example3D
    *  Created  : 12/14/2003 by Forum Nokia
    *  Description:
    *     This is the project specification file for Example3D.
    *     Initial content was generated by Series 60 AppWizard.
    *
    *  Version  : 1.0.0
    *  Copyright: Forum Nokia
    *
============================================================================
    */

#ifndef __3DTYPES_H__
#define __3DTYPES_H__


// INCLUDES
#include <e32std.h>

// CONSTANTS
// 23:9 fixed point math used trough all math in 3D-example
const TInt KShift = 9;

// sin & cos table size
const TInt KSinTableSize = 4096;


// 4x3 matrix for world rotations

class TMatrix
	{
	public:
		inline TMatrix() {};
		inline TMatrix( TInt aM00, TInt aM10, TInt aM20, TInt aM30,
						TInt aM01, TInt aM11, TInt aM21, TInt aM31,
						TInt aM02, TInt aM12, TInt aM22, TInt aM32 )
			{
			iM[ 0 ] = aM00; iM[ 1 ] = aM10;  iM[ 2 ] = aM20; iM[ 3 ] = aM30;
			iM[ 4 ] = aM01; iM[ 5 ] = aM11;  iM[ 6 ] = aM21; iM[ 7 ] = aM31;
			iM[ 8 ] = aM02; iM[ 9 ] = aM12;  iM[ 10] = aM22; iM[ 11] = aM32;
			}


		inline TInt& operator[]( TInt aIndex )
			{
			return iM[ aIndex ];
			}

		inline void operator=( TMatrix aM )
			{
			TInt* m = aM.iM;
			for( TInt i=0; i<12; i++ ) iM[ i ] = m[ i ];
			}

		inline void operator*=( TMatrix aM )
			{
			TInt t[ 12 ];
			TInt* m = aM.iM;

			TInt v1 = 1 << KShift;
			
			t[ 0 ] = iM[ 0 ] * m[ 0 ] + iM[ 1 ] * m[ 4 ] + iM[ 2 ] * m[ 8 ];
			t[ 1 ] = iM[ 0 ] * m[ 1 ] + iM[ 1 ] * m[ 5 ] + iM[ 2 ] * m[ 9 ];
			t[ 2 ] = iM[ 0 ] * m[ 2 ] + iM[ 1 ] * m[ 6 ] + iM[ 2 ] * m[ 10];
			t[ 3 ] = iM[ 0 ] * m[ 3 ] + iM[ 1 ] * m[ 7 ] + iM[ 2 ] * m[ 11] + iM[ 3 ] * v1;

			t[ 4 ] = iM[ 4 ] * m[ 0 ] + iM[ 5 ] * m[ 4 ] + iM[ 6 ] * m[ 8 ];
			t[ 5 ] = iM[ 4 ] * m[ 1 ] + iM[ 5 ] * m[ 5 ] + iM[ 6 ] * m[ 9 ];
			t[ 6 ] = iM[ 4 ] * m[ 2 ] + iM[ 5 ] * m[ 6 ] + iM[ 6 ] * m[ 10];
			t[ 7 ] = iM[ 4 ] * m[ 3 ] + iM[ 5 ] * m[ 7 ] + iM[ 6 ] * m[ 11] + iM[ 7 ] * v1;

			t[ 8 ] = iM[ 8 ] * m[ 0 ] + iM[ 9 ] * m[ 4 ] + iM[ 10] * m[ 8 ];
			t[ 9 ] = iM[ 8 ] * m[ 1 ] + iM[ 9 ] * m[ 5 ] + iM[ 10] * m[ 9 ];
			t[ 10] = iM[ 8 ] * m[ 2 ] + iM[ 9 ] * m[ 6 ] + iM[ 10] * m[ 10];
			t[ 11] = iM[ 8 ] * m[ 3 ] + iM[ 9 ] * m[ 7 ] + iM[ 10] * m[ 11] + iM[ 11] * v1;

			for( TInt i=0; i<12; i++ ) iM[ i ] = t[ i ] >> KShift;
			
			}
		TInt iM[ 12 ];
	};


// type of 3D-vertex
// some basic operators supported

class TVertex
	{
	public:
		inline TVertex() {}
		inline TVertex( TInt aX, TInt aY, TInt aZ ) : iX( aX ), iY( aY ), iZ( aZ ) {}
		inline TVertex TVertex::operator-()
			{
			TVertex temp;
			temp.iX = -iX;
			temp.iY = -iY;
			temp.iZ = -iZ;
			return temp;
			}
		inline TVertex TVertex::operator-( const TVertex& aVertex )
			{
			TVertex temp = *this;
			temp.iX -= aVertex.iX;
			temp.iY -= aVertex.iY;
			temp.iZ -= aVertex.iZ;
			return temp;
			}
		inline TVertex TVertex::operator+( const TVertex& aVertex )
			{
			TVertex temp = *this;
			temp.iX += aVertex.iX;
			temp.iY += aVertex.iY;
			temp.iZ += aVertex.iZ;
			return temp;
			}
		inline void TVertex::operator+=( const TVertex& aVertex )
			{
			iX += aVertex.iX;
			iY += aVertex.iY;
			iZ += aVertex.iZ;
			}
		inline void TVertex::operator-=( const TVertex& aVertex )
			{
			iX -= aVertex.iX;
			iY -= aVertex.iY;
			iZ -= aVertex.iZ;
			}

		TBool TVertex::operator==( const TVertex& aVertex )
			{
			return ( ( iX == aVertex.iX ) && ( iY == aVertex.iY ) && ( iZ == aVertex.iZ ) );
			}

		inline void MulMatrix( TMatrix* aMatrix )
			{
			TInt* m = aMatrix->iM;

			TInt x = iX;
			TInt y = iY;
			TInt z = iZ;
			
			iX = ( ( x * m[ 0 ] + y * m[ 1 ] + z * m[ 2 ] ) >> KShift ) + m[ 3 ];
			iY = ( ( x * m[ 4 ] + y * m[ 5 ] + z * m[ 6 ] ) >> KShift ) + m[ 7 ];
			iZ = ( ( x * m[ 8 ] + y * m[ 9 ] + z * m[ 10 ] ) >> KShift ) + m[ 11 ];


			}

	public:
		TInt iX;
		TInt iY;
		TInt iZ;
	};


// type of clipping plane normal

class TPlaneNormal
	{
	public:
		inline TPlaneNormal() {}
		inline TPlaneNormal( const TVertex& aNormal, TInt aDistance )
			: iNormal( aNormal ), iDistance( aDistance )
			{}

	public:
		TVertex iNormal;
		TInt	iDistance;
	};



// view frustum type
// includes normals of maximum 6 clipping planes

class TFrustum
	{
	public:
		TInt		 iNumPlanes;
		TPlaneNormal iPlane[ 6 ];	// maximum of 6 clipping planes
	};

// triangle face type

class TFace
	{
	public:
		inline TFace() {}
		inline TFace( TInt aV1, TInt aV2, TInt aV3 )
			: iV1( aV1 ), iV2( aV2 ), iV3( aV3 )
			{
			}
		inline TFace( TInt aV1, TInt aV2, TInt aV3, 
					  TInt aTx1, TInt aTy1,
					  TInt aTx2, TInt aTy2,
					  TInt aTx3, TInt aTy3
					)
			: iV1( aV1 ), iV2( aV2 ), iV3( aV3 ),
			  iTx1( aTx1 ), iTy1( aTy1 ),
			  iTx2( aTx2 ), iTy2( aTy2 ),
			  iTx3( aTx3 ), iTy3( aTy3 )
			{
			}

	public:
		TInt iV1;	// vertex indexes
		TInt iV2;
		TInt iV3;

		TInt iTx1;	// texture coordinates
		TInt iTy1;
		TInt iTx2;
		TInt iTy2;
		TInt iTx3;
		TInt iTy3;


	};


#endif

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
亚洲6080在线| av一区二区三区在线| 一区二区三区欧美日| 国产亚洲精品资源在线26u| 欧美一区二区在线免费播放 | 成人动漫在线一区| 激情六月婷婷久久| 亚洲一级二级在线| 亚洲欧美色综合| 久久久久久亚洲综合| 欧美mv日韩mv国产网站| 欧美一级二级在线观看| 欧美电影一区二区三区| 高清av一区二区| 国产成人精品1024| 国产盗摄一区二区三区| 国产中文一区二区三区| 国产原创一区二区| 国产成人免费视频网站| 成人永久免费视频| 成人涩涩免费视频| av午夜一区麻豆| 99精品欧美一区| 日本亚洲三级在线| 久久国产免费看| 国产一级精品在线| 波多野结衣在线一区| 国产真实乱偷精品视频免| 国产99久久久国产精品潘金 | 3atv一区二区三区| 欧美一级在线视频| 精品国产人成亚洲区| wwwwww.欧美系列| 精品国产一区二区三区不卡 | 亚洲天堂av老司机| 一区二区成人在线| 日本不卡一二三| 国产乱子轮精品视频| 丁香婷婷综合网| 欧美午夜影院一区| 日韩一区二区在线看| 精品国产91久久久久久久妲己| 精品久久一区二区三区| 国产欧美日韩三级| 一区二区三区中文免费| 欧美无砖专区一中文字| 欧美电影一区二区三区| 国产精品美女视频| 日韩av网站在线观看| av一区二区久久| 日韩三级精品电影久久久| 国产精品高潮久久久久无| 日本中文一区二区三区| 99视频一区二区| 欧美精品一区二区精品网| 亚洲男帅同性gay1069| 国内久久婷婷综合| 欧美视频自拍偷拍| 国产女人18水真多18精品一级做| 亚洲成人中文在线| 成人免费视频网站在线观看| 91精品国产综合久久国产大片| 国产女人aaa级久久久级| 日本视频中文字幕一区二区三区| av亚洲精华国产精华| 久久人人爽爽爽人久久久| 亚洲一区二区精品久久av| 不卡一区中文字幕| 精品国产乱码久久久久久牛牛| 亚洲国产三级在线| eeuss鲁片一区二区三区在线观看| 欧美一级日韩一级| 亚洲成人av免费| 97久久精品人人澡人人爽| 久久蜜桃av一区二区天堂| 日韩成人午夜精品| 欧美色网一区二区| 亚洲视频中文字幕| 大白屁股一区二区视频| 亚洲精品一区二区三区福利| 偷窥国产亚洲免费视频 | 中文一区一区三区高中清不卡| 日韩精品成人一区二区三区| 欧美亚洲综合一区| 综合分类小说区另类春色亚洲小说欧美 | 一区二区三区在线高清| 成人污视频在线观看| 国产欧美日本一区二区三区| 国产原创一区二区| 久久午夜色播影院免费高清| 久久国产婷婷国产香蕉| 日韩欧美123| 蜜臀av性久久久久蜜臀aⅴ四虎| 欧美久久久久中文字幕| 亚洲一线二线三线视频| 日本道免费精品一区二区三区| 精品视频一区二区三区免费| 精品婷婷伊人一区三区三| 亚洲综合色噜噜狠狠| 91麻豆福利精品推荐| 亚洲免费高清视频在线| 色偷偷88欧美精品久久久| 亚洲高清中文字幕| 久久综合色天天久久综合图片| 国产精品影视网| 国产精品免费人成网站| 亚洲国产视频一区二区| 91网站视频在线观看| 亚洲日本一区二区| 一本一道久久a久久精品| 亚洲精品久久久久久国产精华液 | 精品视频免费在线| 亚洲午夜激情av| 欧美精品三级日韩久久| 日本欧美在线观看| 精品对白一区国产伦| 大美女一区二区三区| 亚洲欧洲国产专区| 欧洲激情一区二区| 天天色天天操综合| 欧美大白屁股肥臀xxxxxx| 韩国精品免费视频| 国产精品每日更新在线播放网址| 91麻豆自制传媒国产之光| 亚洲女爱视频在线| 3d动漫精品啪啪一区二区竹菊| 久久99精品久久久久婷婷| 日本一区二区三区在线观看| 91色婷婷久久久久合中文| 亚洲午夜影视影院在线观看| 日韩欧美国产电影| 成人福利在线看| 亚洲二区在线视频| 精品国产区一区| 91视频在线看| 麻豆精品视频在线观看免费| 久久久久九九视频| 色吧成人激情小说| 美腿丝袜亚洲三区| 中文字幕精品三区| 欧美日韩亚洲另类| 国产乱码精品1区2区3区| 亚洲丝袜自拍清纯另类| 日韩一区二区三区在线观看| 国产精品亚洲专一区二区三区| 亚洲特黄一级片| 精品久久久久久久久久久久包黑料| 成人影视亚洲图片在线| 亚洲成人动漫在线免费观看| 久久久不卡网国产精品二区| 日本久久电影网| 极品美女销魂一区二区三区| 亚洲另类春色国产| 久久久亚洲综合| 欧美日韩国产经典色站一区二区三区 | 亚洲电影在线播放| 国产色91在线| 宅男在线国产精品| av激情综合网| 狠狠色丁香久久婷婷综合丁香| 亚洲自拍偷拍麻豆| 国产亚洲精品aa| 91精品国产全国免费观看 | 久久久久久亚洲综合| 欧美日韩国产首页| av男人天堂一区| 国产一区二区伦理片| 日韩 欧美一区二区三区| 亚洲欧美偷拍三级| 国产亚洲自拍一区| 日韩精品一区二区三区中文精品| 91久久奴性调教| 成人一区二区视频| 麻豆精品在线看| 性感美女久久精品| 亚洲色图一区二区| 欧美激情一区在线| 久久久蜜桃精品| 日韩无一区二区| 在线成人免费观看| 91成人看片片| 99re8在线精品视频免费播放| 国产盗摄精品一区二区三区在线 | 五月综合激情日本mⅴ| 亚洲区小说区图片区qvod| 国产欧美日韩久久| 久久亚洲综合色| 日韩欧美国产午夜精品| 欧美精品日韩综合在线| 91成人在线精品| 在线亚洲一区观看| 懂色av一区二区在线播放| 国产成人在线免费| 国内成人免费视频| 极品销魂美女一区二区三区| 美女视频黄免费的久久| 日韩国产一二三区| 日韩精品乱码av一区二区| 三级欧美韩日大片在线看| 婷婷夜色潮精品综合在线|