⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 dmhtools.as

📁 Flex3实现的掼蛋游戏
💻 AS
字号:
/*
==DMHTools 类
==功  能:自定义的一些静态方法以及静态属性
==设计者:DMH2002
==时  间:2007-10-04
===============================================*/
package com.dmh2002.util{
	import flash.display.Sprite;
	public class DMHTools {
		//时间常量
		public static  const millisecondsPerMinute:uint = 1000 * 60;
		public static  const millisecondsPerHour:uint = 1000 * 60 * 60;
		public static  const millisecondsPerDay:uint = 1000 * 60 * 60 * 24;
		//
		public function DMHTools() {
		}
		
		/*生成一个用于url防缓存的随机参数
		 * 随机数大小范围为0-10000
		 *返回一个 uint
		 */
		public static function randomUrlVariable():uint {
			return Math.round(Math.random() * 10000);
		} 
		//将字符日期转换成可强制转换的日期格式2007-05-05--2007/05/05
		public static function StringToDate(dateS:String):Date {
			dateS=dateS.replace("-","/");
			dateS=dateS.replace("-","/");
			var dateD:Date=new Date(dateS);
			return dateD;
		}
		//将日期格式化成字符型2007-05-05
		public static function DateToString(date:Date):String {
			var DateStringM:String=new String();
			var DateStringD:String=new String();
			if (date.getMonth()<9) {
				DateStringM="0"+(date.getMonth()+1);
			} else {
				DateStringM=String(date.getMonth()+1);
			}
			if (date.getDate()<10) {
				DateStringD="0"+(date.getDate());
			} else {
				DateStringD=String(date.getDate());
			}
			var dateD:String=date.getFullYear()+"-"+DateStringM + "-" + DateStringD;
			return dateD;
		}
		//将日期转换成字符,返回日期为08/09
		public static function DateToShortString(date:Date):String {
			var DateStringM:String=new String();
			var DateStringD:String=new String();
			if (date.getMonth()<9) {
				DateStringM="0"+(date.getMonth()+1);
			} else {
				DateStringM=String(date.getMonth()+1);
			}
			if (date.getDate()<10) {
				DateStringD="0"+(date.getDate());
			} else {
				DateStringD=String(date.getDate());
			}
			return DateStringM + "/" + DateStringD;
		}
		//中文+e文的总字符数
		public static function ChineseAndEnglishLength(str:String):uint {
			if (str == null) {
				return 0;
			} else {
				var n:uint=0;
				for (var i:uint=0; i < str.length; i++) {
					if (str.charCodeAt(i) > 255) {
						n+= 2;
					} else {
						n++;
					}
				}
				return n;
			}
		}
		/*
		*获取扩展文件名
		*返回一个扩展名 String
		*/
		public static function GetExtName(SourceName:String):String{
			var picExtName:String;
	        picExtName=SourceName.substr(SourceName.length-3,3);
	        picExtName=picExtName.toLowerCase();
			return picExtName
			}
		/*
		*通过给定的参数,String字符串,及最大字符数
		*返回一个新的字符串
		*/

		public static function ChineseAndEnglishLengthNewString(str:String,num:uint):String {
			var thisString:String=new String();
			if (str !== null) {
				var n:uint=0;
				var nString:uint=0;
				for (var i:uint=0; i < str.length; i++) {
					(str.charCodeAt(i)>255)?n+=2:n+=1;
					nString+=1
					;
					if (n>num) {
						break;
					}
				}
				if(n>=num){
				thisString=str.substr(0,nString)}else{
					thisString=str
					};
			}
			return thisString;
		}
		//生成随机数
		public static function RandomNum():uint {
			return Math.round(Math.random() * 10000);
		}
		//给定数量,生成从0开始至数量的随机自然数
		public static function RandomNums(Nums:uint):uint {
			return Math.floor(Math.random() * Nums);
		}
		//2位小数百分比
		public static function Round2(NumS:Number):Number {
			return Math.round(NumS * 10000) / 100;
		}
		//保留参数的小数位
		public static function RoundNum(NumS:Number,Num:uint):Number {
			var tmpNum:uint=Math.pow(10,Num)
			return Math.round(NumS *tmpNum) / tmpNum
		}
		//---------------------------------------------
		//画虚线的方法
		//---------------------------------------------
		public static function drawDashedLine(startPoint:*, destPoint:*, dashLength:Number, spaceLength:Number,lineStyle:*):Sprite {
			var mc:Sprite=new Sprite();
			mc.graphics.lineStyle(lineStyle.lineWeight,lineStyle.lineColor,lineStyle.lineAlpha,lineStyle.lineis);
			//
			var x:Number= destPoint.x-startPoint.x;
			var y:Number = destPoint.y-startPoint.y;
			
			var hyp:Number = Math.sqrt((x)*(x)+(y)*(y));
			var units:Number = hyp/(dashLength+spaceLength);
			var dashSpaceRatio:Number = dashLength/(dashLength+spaceLength);
			var dashX:Number = (x/units)*dashSpaceRatio;
			var spaceX:Number = (x/units)-dashX;
			var dashY:Number = (y/units)*dashSpaceRatio;
			var spaceY:Number = (y/units)-dashY;
			//trace(x,y,hyp,units,dashSpaceRatio,dashX,spaceX,dashY,spaceY)
			x=RoundNum(x,4)
			y=RoundNum(y,4)
			hyp=RoundNum(hyp,4)
			units = RoundNum(units,4)
			dashSpaceRatio = RoundNum(dashSpaceRatio,4)
			dashX = RoundNum(dashX,4)
			spaceX=RoundNum(spaceX,4)
			dashY= RoundNum(dashY,4)
			spaceY= RoundNum(spaceY,4)
			//trace(x,y,hyp,units,dashSpaceRatio,dashX,spaceX,dashY,spaceY)
			mc.graphics.moveTo(startPoint.x, startPoint.y);
			while (hyp>0) {
				startPoint.x += dashX;
				startPoint.y += dashY;
				hyp -= dashLength;
				if (hyp<0) {
					startPoint.x = destPoint.x;
					startPoint.y = destPoint.y;
				}
				mc.graphics.lineTo(startPoint.x,startPoint.y);
				startPoint.x += spaceX;
				startPoint.y += spaceY;
				mc.graphics.moveTo(startPoint.x,startPoint.y);
				hyp -= spaceLength;
			}
			mc.graphics.moveTo(destPoint.x, destPoint.y);
			mc.graphics.endFill();
			return mc
		}
		//
	}
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -