当前位置: 首页 > 图文教程 > 网络编程 > Javascript > 斜45度寻路实现函数

Javascript
解决FLASH需要点击激活的代码
取得一定长度的内容,处理中文
写了几个类,希望对大家有用。
Javascript MD4
Code:findPosX 和 findPosY
关于base64加密/解密
Javascript SHA-1:Secure Hash Algorithm
关于arguments,callee,caller等的测试
URI、URL和URN之间的区别与联系
firefox中JS读取XML文件
FCK调用方法..
在 IE 中调用 javascript 打开 Excel 表
网页设计常用的一些技巧
优化JavaScript脚本的性能的几个注意事项
JS暴虐查找法
另类网页中添加运行效果
在window.setTimeout方法中传送对象
js版本A*寻路算法
用js重建星际争霸
在table中插入多行,能使用与insertAdjacentHTML相似的功能吗?

Javascript 中的 斜45度寻路实现函数


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-12   浏览: 325 ::
收藏到网摘: n/a

没事写个寻路的,很简单,有需要的朋友可以参考下。 没事写个寻路的,很简单
复制代码 代码如下:

function xy45(x1, y1) {//直角坐标转斜45度
var x0 =0;
var y0 =0;
var s=-Math.PI/4;
var o={};
o.x = int((x0+x1*Math.cos(s)+y1*Math.sin(s)))+dx;
o.y =-int((y0+x1*Math.sin(s)-y1*Math.cos(s)))/2+dy;
return o;
}
function rot45(x1, y1) {//斜45度转直角坐标
var x0 =0;
var y0 =0;
x1-=dx
y1-=dy
y1*=-2;
var s=-Math.PI/4;
var o={};
o.x = int((x0+x1*Math.cos(s)+y1*Math.sin(s))/dw);
o.y = int((y0+x1*Math.sin(s)-y1*Math.cos(s))/dw);
return o;
}

随便给个图,8方向,可改4方向