首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > 编程 >

map分块加载的实现

2012-12-26 
地图分块加载的实现首先我们确定几个关键点:窗口大小:windowW:Number,windowH:Number 指的是可视区域的大

地图分块加载的实现

首先我们确定几个关键点:

窗口大小:windowW:Number,windowH:Number; 指的是可视区域的大小 我们可以把他想成客户端的分别率

单位地图大小: uintPicW:Number,uintPicH:Number; 指的是你切割的地图图片的单元大小。

当前地图坐标:position:point;这里大家就可以想成是你人物的当前所处坐标

?

清楚了上面的几个关键点,我们再来看下面的这个图:

map分块加载的实现

?

?

阴影区域就是可视区域 A、B、C、D就是切割的单元地图

?

我们可以很容易的求出窗口的4个点,所占的地图的索引:

x0 = position.x - windowW/2;

x1 = position.x + windowW/2;

y0 = position.y - windowH/2;

y1 = position.y + windowH/2;

?

mapIndexX0 = uint(x0/256);

mapIndexX1 = uint(x1/256);

mapIndexY0 = uint(y0/256);

mapIndexY1 = uint(y1/256);

?

明白了上面的这些 下面这个类 相信大家都能看明白

?

热点排行