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

Javascript
javascript 写类方式之九
javascript 写类方式之十
javascript 浏览器判断 绑定事件 arguments 转换数组 数组遍历
jquery BS,dialog控件自适应大小
javascript 面向对象思想 附源码
js 日期转换成中文格式的函数
JavaScript 对象、函数和继承
JavaScript 解析读取XML文档
javascript获取表格 td 中的内容
javascript xml为数据源的下拉框控件
jQuery 1.3 和 Validation 验证插件1.5.1
javascript 字符 Escape,encodeURI,encodeURIComponent
jquery text,radio,checkbox,select操作实现代码
JavaScript 继承的实现
JS 数组 移除 实现代码
javascript eval()应用实例 select
javascript 焦点的两个问题
JS 巧妙获取剪贴板数据 Excel数据的粘贴
Jquery 组合form元素为json格式,asp.net反序列化
window.onload 加载完毕的问题及解决方案(上)

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


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-12   浏览: 322 ::
收藏到网摘: 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方向