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

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

?? ase.as

?? Papervision3d的源碼
?? AS
字號:
package org.papervision3d.objects.parsers {
	import flash.events.*;
	import flash.net.URLLoader;
	import flash.net.URLRequest;
	
	import org.papervision3d.Papervision3D;
	import org.papervision3d.core.geom.*;
	import org.papervision3d.core.geom.renderables.Triangle3D;
	import org.papervision3d.core.geom.renderables.Vertex3D;
	import org.papervision3d.core.math.NumberUV;
	import org.papervision3d.core.proto.*;
	import org.papervision3d.events.FileLoadEvent;	

	/**
	* The Ase class lets you load and parse ASE format objects exported from 3DS Max.
	* <p/>
	* Only the geometry and mapping of one mesh is currently parsed.
	* <p/>
	* For more complex objects, it is recommended to import Collada scenes with addCollada method.
	*/
	public class Ase extends TriangleMesh3D
	{
		/**
		* Whether or not the scene has been loaded.
		*/
		public var loaded :Boolean;
	
		/**
		* Default scaling value for constructor.
		*/
		static public var DEFAULT_SCALING  :Number = 1;
	
		/**
		* Internal scaling value.
		*/
		static public var INTERNAL_SCALING :Number = 50;
	
		// ___________________________________________________________________________________________________
		//                                                                                               N E W
		// NN  NN EEEEEE WW    WW
		// NNN NN EE     WW WW WW
		// NNNNNN EEEE   WWWWWWWW
		// NN NNN EE     WWW  WWW
		// NN  NN EEEEEE WW    WW
	
		/**
		* Creates a new Ase object that will load and parse a 3DS Max exported .ASE mesh.
		* <p/>
		* Only the geometry and mapping of one mesh is currently parsed.
		* <p/>
		* @param	material	A MaterialObject3D object that contains the material properties of the object.
		* <p/>
		* @param	filename	Filename of the .ASE object to parse.
		* <p/>
		* @param	scale		Scaling factor.
		* <p/>
		*/
		public function Ase( material:MaterialObject3D, filename:String, scale:Number=1 )
		{
			super( material, new Array(), new Array(), null );
	
			this._scaleAse = scale;
			this._filename = filename;
	
			this.loaded = false;
	
			loadAse( filename );
		}
	
	
		private function loadAse( filename:String ):void
		{
			_loaderAse = new URLLoader();
			_loaderAse.addEventListener( Event.COMPLETE, parseAse );
			_loaderAse.addEventListener( ProgressEvent.PROGRESS, progressHandler);
			_loaderAse.addEventListener( IOErrorEvent.IO_ERROR, ioErrorHandler);
	
	        var request:URLRequest = new URLRequest(filename);
	
			try
			{
	            _loaderAse.load(request);
			}
			catch(e:Error)
			{
				Papervision3D.log( "error in loading ase file" );
			}
		}
	
		// ___________________________________________________________________________________________________
		//                                                                                               A S E
		//   AA    SSSSS  EEEEEE
		//  AAAA  SS      EE
		// AA  AA  SSSS   EEEE
		// AAAAAA     SS  EE
		// AA  AA SSSSS   EEEEEE PARSER
	
		/**
		* Taken from w3d at http://blog.andre-michelle.com/2005/flash8-sourcecodes
		* By Andre Michelle, with much respect
		*/
	
		private function parseAse( e:Event ):void
		{
			var scale:Number = this._scaleAse;
			scale *= INTERNAL_SCALING;
	
			var vertices :Array = this.geometry.vertices = new Array();
			var faces    :Array = this.geometry.faces = new Array();
	
			var loader:URLLoader = URLLoader(e.target);
			var lines: Array = unescape(loader.data).split( '\r\n' );
	
			var line: String;
			var chunk: String;
			var content: String;
	
			var uvs:Array = new Array();
	
			var material :MaterialObject3D = this.material;
	
			while( lines.length )
			{
				line = String( lines.shift() );
	
				//-- clear white space from beginn
				line = line.substr( line.indexOf( '*' ) + 1 );
	
				//-- clear closing brackets
				if( line.indexOf( '}' ) >= 0 ) line = '';
	
				//-- get chunk description
				chunk = line.substr( 0, line.indexOf( ' ' ) );
	
				switch( chunk )
				{
					case 'MESH_VERTEX_LIST':
						try
						{
							while( ( content = String( lines.shift() ) ).indexOf( '}' ) < 0 )
							{
								content = content.split("*")[1];
	
								//content = content.split("    ").join("\t");
								var mvl: Array = content.split(  '\t' ); // separate here
	
								var x:Number = Number( mvl[1] ) * scale;
								var y:Number = Number( mvl[3] ) * scale;
								var z:Number = Number( mvl[2] ) * scale; // Swapped Y and Z
	
								vertices.push( new Vertex3D( x, y, z ) );
							}
						}
						catch(e:Error)
						{
							Papervision3D.log( "MESH_VERTEX_LIST error" );
						}
						break;
	
	
					case 'MESH_FACE_LIST':
						try
						{
							while( ( content = String( lines.shift() ) ).indexOf( '}' ) < 0 )
							{
								content = content.split("*")[1];
	
								var mfl: String = content.split('\t')[0]; // ignore: [MESH_SMOOTHING,MESH_MTLID]
								var drc: Array = mfl.split( ':' ); // separate here
	
								var con: String;
								con = drc[2];
								var a:Vertex3D = vertices[ int( con.substr( 0, con.lastIndexOf( ' ' ) ) ) ];
	
								con = drc[3];
								var b:Vertex3D = vertices[ int( con.substr( 0, con.lastIndexOf( ' ' ) ) ) ];
	
								con = drc[4];
								var c:Vertex3D = vertices[ int( con.substr( 0, con.lastIndexOf( ' ' ) ) ) ];
	
								// Swap b/c
								faces.push( new Triangle3D(this,[a, b, c], null, [new NumberUV(), new NumberUV(), new NumberUV()] ) );
							}
						}
						catch(e:Error)
						{
							Papervision3D.log( "MESH_FACE_LIST : " );
						}
						break;
	
					case 'MESH_TVERTLIST':
						try
						{
							while( ( content = String( lines.shift() ) ).indexOf( '}' ) < 0 )
							{
								content = content.split("*")[1];
	
								var mtvl: Array = content.split(  '\t' ); // separate here
								uvs.push( new NumberUV( parseFloat( mtvl[1] ), parseFloat( mtvl[2] ) ) );
							}
						}
						catch(e:Error)
						{
							Papervision3D.log( "MESH_TVERTLIST error" + e.message );
						}
						break;
	
	
					case 'MESH_TFACELIST':
						try
						{
							var num: int = 0;
	
							while( ( content = String( lines.shift() ) ).indexOf( '}' ) < 0 )
							{
	
								content = content.substr( content.indexOf( '*' ) + 1 );
								var mtfl: Array = content.split(  '\t' ); // separate here
	
								var faceUV:Array = faces[ num ].uv;
								faceUV[0] = uvs[ parseInt( mtfl[1] )];
								faceUV[1] = uvs[ parseInt( mtfl[2] )];
								faceUV[2] = uvs[ parseInt( mtfl[3] )];
								num++;
	
							}
						}
						catch(e:Error)
						{
							Papervision3D.log( "MESH_TFACELIST ERROR" + e.message );
						}
						break;
				}
			}
	
			
	
			// dispatch event
			var fileEvent:FileLoadEvent = new FileLoadEvent( FileLoadEvent.LOAD_COMPLETE, _filename );
			dispatchEvent( fileEvent );
	
			this.loaded = true;
			this.geometry.ready = true;
			Papervision3D.log( "Parsed ASE: " + this._filename + " [vertices:" + vertices.length + " faces:" + faces.length + "]" );
		}
	
		// ___________________________________________________________________________________________________
	
		private function ioErrorHandler(event:IOErrorEvent):void
		{
			var fileEvent:FileLoadEvent = new FileLoadEvent( FileLoadEvent.LOAD_ERROR, _filename );
			dispatchEvent( fileEvent );
			throw new Error("Ase: ioErrorHandler Error.");
		}
	
		private function progressHandler(event:ProgressEvent):void
		{
			Papervision3D.log("progressHandler loaded:" + event.bytesLoaded + " total: " + event.bytesTotal);
		}
	
		// ___________________________________________________________________________________________________
	
		private var _scaleAse  :Number;
	    private var _loaderAse :URLLoader;
		private var _filename  :String;
	
		//private var log:XrayLog = new XrayLog();
		}
}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产激情视频一区二区在线观看| 色就色 综合激情| 91麻豆产精品久久久久久| 精品视频一区二区不卡| 精品sm在线观看| 香蕉成人伊视频在线观看| 丁香五精品蜜臀久久久久99网站| 8x8x8国产精品| 亚洲日本在线天堂| 国产一区欧美一区| 欧美美女一区二区在线观看| 中文字幕中文在线不卡住| 国产精品亚洲人在线观看| 欧美高清视频在线高清观看mv色露露十八 | 亚洲一区二区不卡免费| 成人午夜精品一区二区三区| 26uuu亚洲综合色| 久久精品国产网站| 欧美一区二区三区四区久久| 午夜av一区二区| 色综合婷婷久久| 国产精品卡一卡二卡三| 国产精品影视在线观看| 精品成人一区二区| 国产又粗又猛又爽又黄91精品| 717成人午夜免费福利电影| 亚洲va欧美va人人爽午夜| 欧美午夜一区二区| 亚洲一级二级三级| 欧美色男人天堂| 亚洲va欧美va国产va天堂影院| 91高清在线观看| 依依成人综合视频| 欧洲国内综合视频| 亚洲国产精品一区二区www在线 | 国产成人午夜精品影院观看视频 | 免费看精品久久片| 6080国产精品一区二区| 日本人妖一区二区| 日韩一级大片在线观看| 久久99国产精品成人| 久久综合久久综合九色| 成人开心网精品视频| 中文字幕制服丝袜成人av| 成人av动漫网站| 亚洲狼人国产精品| 91精品欧美久久久久久动漫| 久久草av在线| 国产精品久久久久aaaa樱花| 色综合天天视频在线观看| 亚洲6080在线| 精品少妇一区二区三区日产乱码 | 精品国产免费一区二区三区四区| 久久精品二区亚洲w码| 日本一区二区三区免费乱视频| 成人午夜视频免费看| 亚洲欧美日韩人成在线播放| 日本久久精品电影| 亚洲高清免费视频| www久久精品| 91美女片黄在线| 免费成人在线网站| 中文字幕av一区二区三区| 欧美三级日韩在线| 国产成人高清视频| 亚洲一区二区三区自拍| 久久久亚洲国产美女国产盗摄| eeuss鲁片一区二区三区在线看| 夜夜爽夜夜爽精品视频| 欧美精品一区二区精品网| 91原创在线视频| 蜜桃av一区二区三区| 2020国产精品| 欧美日韩另类一区| 国产成人亚洲综合色影视| 亚洲国产中文字幕| 国产女人aaa级久久久级| 欧美午夜影院一区| 大白屁股一区二区视频| 日韩精品一二三区| 亚洲老妇xxxxxx| 国产片一区二区| 日韩一区二区三区四区 | 国产精品一二三四区| 性做久久久久久| 亚洲欧美另类久久久精品 | 国产精品国产自产拍在线| 日韩一区二区免费视频| 色94色欧美sute亚洲线路一ni| 精彩视频一区二区| 三级成人在线视频| 亚洲精品老司机| 亚洲欧美自拍偷拍| 国产网站一区二区| 精品国内片67194| 7777精品伊人久久久大香线蕉完整版 | 国产精品理论片在线观看| 欧美精品一区二区久久久| 在线91免费看| 欧美日韩视频在线第一区| 91女神在线视频| 成av人片一区二区| 国产suv一区二区三区88区| 精品影视av免费| 免费成人av资源网| 蜜臀精品久久久久久蜜臀 | 亚洲综合视频在线| 中文字幕亚洲一区二区av在线| 国产日本欧美一区二区| 日本一区二区免费在线| 国产亚洲精品福利| 国产精品无人区| 国产精品免费aⅴ片在线观看| 国产午夜精品久久| 欧美国产97人人爽人人喊| 国产午夜精品久久久久久久| 国产丝袜欧美中文另类| 国产欧美日韩视频一区二区| 国产亚洲一区二区三区在线观看 | 亚洲一级在线观看| 视频一区欧美日韩| 久久99精品视频| 国产成人免费视频网站 | 国产自产v一区二区三区c| 精品亚洲国内自在自线福利| 黑人巨大精品欧美一区| 国产福利一区二区| 91首页免费视频| 欧美午夜寂寞影院| 日韩一区二区三区三四区视频在线观看 | 色噜噜狠狠一区二区三区果冻| 日本韩国欧美一区| 欧美日韩精品电影| 欧美成人女星排名| 国产欧美精品区一区二区三区| 国产精品灌醉下药二区| 亚洲自拍另类综合| 乱中年女人伦av一区二区| 国产精品一区在线观看你懂的| 丰满亚洲少妇av| 在线观看视频一区二区 | 亚洲男人电影天堂| 日韩av电影天堂| 国产suv一区二区三区88区| 色婷婷综合久色| 91精品国产品国语在线不卡| 久久精品综合网| 亚洲综合激情小说| 精品一区二区三区在线视频| 91丝袜高跟美女视频| 日韩一区二区三区视频在线观看| 久久久精品天堂| 亚洲精品成人精品456| 裸体在线国模精品偷拍| 成人污视频在线观看| 欧美视频在线观看一区二区| 2023国产精华国产精品| 一区二区三区不卡视频| 国产综合色精品一区二区三区| 91蜜桃免费观看视频| 欧美一卡二卡在线| 亚洲视频网在线直播| 久久99精品国产麻豆婷婷洗澡| 99麻豆久久久国产精品免费| 日韩一区二区三区四区| 亚洲精品乱码久久久久久久久| 激情五月激情综合网| 欧美私模裸体表演在线观看| 亚洲国产精品黑人久久久| 天天操天天色综合| 99re这里只有精品6| 精品成人私密视频| 全国精品久久少妇| 在线观看视频欧美| 亚洲欧洲精品一区二区三区| 国产在线日韩欧美| 日韩欧美专区在线| 亚洲午夜激情av| 一本大道久久a久久综合| 国产三区在线成人av| 久久 天天综合| 欧美不卡在线视频| 日本vs亚洲vs韩国一区三区 | 久久精品综合网| 精品综合久久久久久8888| 91精品啪在线观看国产60岁| 亚洲福利一二三区| 欧美在线播放高清精品| 亚洲人123区| 99re热这里只有精品视频| 国产精品白丝在线| 不卡一区中文字幕| 亚洲欧美另类久久久精品| 91在线无精精品入口| 亚洲私人黄色宅男| 91小视频在线| 亚洲欧美日韩一区二区三区在线观看| 成人午夜激情片| 亚洲欧美国产77777| 91麻豆福利精品推荐|