加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

地图数据说明

发布时间:2020-12-15 06:58:59 所属栏目:百科 来源:网络整理
导读:地图文件下载? :http://www.huanhuan18.com/myWeb/soft/YFEditor.air? ? 或者 : http://www.huanhuan18.com/myWeb/soft/YFEditor/ ?exe形式 ::http://www.huanhuan18.com/myWeb/soft/YFEditor.exe 使用注意 : 假如 需要使用低像素图片 需要自己手动 去点

地图文件下载?

:http://www.huanhuan18.com/myWeb/soft/YFEditor.air?

? 或者 : http://www.huanhuan18.com/myWeb/soft/YFEditor/

?exe形式 ::http://www.huanhuan18.com/myWeb/soft/YFEditor.exe


使用注意 : 假如 需要使用低像素图片 需要自己手动 去点击 低像素按钮 来生成低像素地图??? 地图切片也是 一样 需要自己主动去触发? !这两个功能处理时间比较长? 使用时请耐心等待

数据文件说明: 网络地址:?

http://www.huanhuan18.com/myWeb/soft/map1.xml



<?xml version="1.0" encoding="utf-8"?>

<YFMapEditor>
? <map mapName="map1" url="images/bgMap/singleMap/map1.jpg" tileWidth="60" tileHeight="30" caculateWidth="3660" caculateHeight="1680" mapWidth="3660" mapHeight="1658" loadType="μ¥???t??" beginTileX="-1" beginTileY="-1" endTileX="60" endTileY="111" roadType="1" blockType="0" alphaRoadType="2" skipTypeDescription="大于等于3的节点类型">
??? <floor>0,3,2,0</floor>
??? <skipMaps/>
??? <buildings>
????? <building url="" buildX="330" buildY="330" imageX="330" imageY="15" roatationX="0" roatationY="0" roatationZ="0" deepIndex="0">
??????? <corner>10,10,100,100</corner>
????? </building>
????? <building url="" buildX="0" buildY="0" imageX="0" imageY="90" roatationX="0" roatationY="0" roatationZ="0" deepIndex="1">
??????? <corner>10,100</corner>
????? </building>
????? <building url="images/trees/2.png" buildX="210" buildY="195" imageX="210" imageY="195" roatationX="0" roatationY="0" roatationZ="0" deepIndex="2">
??????? <block>5,6,4,7,5,1,8,9,11,13,15,12,17,14,19,18,20,21,23,24,22,</block>
??????? <corner>182,464,41,182,370,356,424</corner>
????? </building>
??? </buildings>
? </map>

</YFMapEditor>













相关说明:




数据说明:

?mapName 是 地图的名称
url是地图地址
mapWidth mapHeight?? 是这个地图的实际宽高 ?
caculateWidth caculateHeight是这个地图的 计算宽高? 是我们在数据处理中要用到的宽高
beginTileX beginTileY? 第一个节点位置 ?

roadType=1 表示可走? blockType表示不可走? alphaRoadType=2表示消隐点.也就是人物在该点时需要半透明化
值大于等3的点表示地图跳转点用来跳转到其他地图中




?skipMap节点

?? ?secondInfo用来标识在同一地域间的跳转 假如两张地图之间进行跳转,则不需要考虑此属性
假如 在一张地图上进行传送跳转到该地图的另一传送点 则需要 此属性

type 值是指的是该类型 ?
里面<skipMap> 0,11</skipMap>? 的值指的是这点存在的位置? 用的是tile坐标



building? 节点:
url指的是 图片地址? buildX buildY指的是 该建筑的位置(flash坐标)??? imageX imageY(flash坐标) 是图片的位置,这也是我在写程序加载图片后所需要放置的位置???? corner里面的值指的是该建筑的四个控制点的位置(tile坐标),这个位置是相对的 相对 buildX? buildY的值 (计算时需要将cornenr内部的值转换为flash坐标 在与buildX? buildY相加得到全局的控制点flash坐标)

block 里面的值保存的是不可走的局部位置? 得到全局位置 也是要借助 buildX buildY值







?必备工具类:

package? utils.games.utils { ?? ?/** ?? ? * ... ?? ? * @author dreamnight?? http://huanhuan18.com/blog?? http://blog.csdn.net/hu36978 ?? ? * ?? ? */ ?? ?public class MapUtil ?? ?{ ?? ??? ??? ?import flash.geom.Point; ?? ??? ??? ? ?? ??? ??? ?import utils.games.display.GameObject; ?? ??? ?public function MapUtil() ?? ??? ?{ ?? ??? ??? ? ?? ??? ?} ?? ??? ? ?? ??? ? ?? ??? ? ?? ??? ?/* ?? ??? ? *在 getTilePoint函数 的基础上增加了 对gridlayer坐标位置的判断定位 ?? ??? ? * ?? ??? ? * */ ?? ??? ? ?? ??? ?public static function getTilePoint2(tileWidth:Number,tileHeight:Number,px:Number,py:Number,gridLayerX:Number=0,gridlayerY:Number=0):Point { ?? ??? ??? ? ?? ??? ??? ?//根据 gridlayer坐标 来算出像素相对坐标 ?? ??? ??? ?var realX:Number = px - gridLayerX; ?? ??? ??? ?var realY:Number = py - gridlayerY; ?? ??? ??? ? ?? ??? ??? ?return ?? ?MapUtil.getTilePoint(tileWidth,tileHeight,realX,realY); ?? ??? ??? ? ?? ??? ??? ?} ?? ??? ? ?? ??? ? ?? ??? ? ?? ??? ? ?? ??? ? ?? ??? ? ?? ??? ? ?? ??? ? ?? ??? ? ?? ??? ? ?? ??? ? ?? ??? ?/** ?? ??? ? * ?? ??? ? *?? //这里的 px 是相对于原点的像素坐标?? 这里的网格的原点坐标在(0,0)也就是gridLayer中的grid坐标在原点并且gridlayer的坐标也在原点 在以后的GridLayer中我只控制GridLayer所以这个方法实用性 是当Gridlayer的坐标在原点时成立 ?? ??? ? * ?? ??? ? * */ ?? ??? ?public static function getTilePoint(tileWidth:Number,py:Number):Point ?? ??? ?{ ?? ??? ??? ?/** ?? ??? ??? ? * 网格的x坐标 ?? ??? ??? ? * */ ?? ??? ??? ?var xtile:int = 0;?? ? ?? ??? ??? ?/** ?? ??? ??? ? * 网格的y坐标?? ? ?? ??? ??? ? * */ ?? ??? ??? ?var ytile:int = 0;?? ? ?? ? ?? ???????? var cx:int,cy:int; ?? ??? ??? ?/** ?? ??? ??? ? * 计算出当前X所在的以tileWidth为宽的矩形的中心的X坐标?? ? ?? ??? ??? ? * */ ?? ???????? cx = int(px / tileWidth) * tileWidth + tileWidth/2;?? ? ?? ??? ??? ?/** ?? ??? ??? ? * 计算出当前Y所在的以tileHeight为高的矩形的中心的Y坐标 ?? ??? ??? ? * */ ?? ???????? cy = int(py / tileHeight) * tileHeight + tileHeight / 2; ?? ??? ??? ? ?? ??? ??? ?//四个直线方程 ?? ??? ??? ?var line1:Number = py + (px - cx) *tileHeight? / tileWidth - cy + tileHeight * 0.5; //? 满足 >0条件 ?? ??? ??? ?var line2:Number = py + (cx - px) *tileHeight? / tileWidth - cy + tileHeight * 0.5;? //??? >0 ?? ??? ??? ?var line3:Number = py + (cx - px) * tileHeight / tileWidth - cy - tileHeight * 0.5;//?? <0 ?? ??? ??? ?var line4:Number = py + (px - cx) * tileHeight / tileWidth - cy - tileHeight * 0.5;//? <0 ?? ??? ??? ? ?? ? ?? ??????? //当点在矩形内 也就是 y 为偶数的 tile? ? ?? ??? ??? if ((line1>=0)&&(line2>=0)&&(line3<=0)&&(line4<=0)) { ?? ??? ??? ?? ? ?? ??? ??? ??? xtile = int(px / tileWidth); ?? ??? ??? ??? ytile = int(py / tileHeight) * 2; ?? ??? ??? ? ?? ??? ??? ?? ? ?? ??? ??? ?? ? ?? ??? ??? ? ?? ??? ??? ??? } ?? ??? ? ?? ??? ??? ?? ? ?? ??? ??? ??? //、当在棱形外 ?? ??? ??? ??? else { ?? ??? ??? ??? ?? ? ?? ??? ??? ??? ??? //对X进行定位? 当在左半边时 ?? ??? ??? ??? ?? ? ?? ??? ??? ??? ??? if ((px <= cx + tileWidth * 0.5) && (cx <= px)) { ?? ??? ??? ??? ??? ?? ? ?? ??? ??? ??? ??? ??? xtile = int(px / tileWidth); ?? ??? ??? ??? ??? ?? ? ?? ??? ??? ??? ??? ?? ? ?? ??? ??? ??? ??? ? ? ?? ??? ??? ??? ??? ??? } ?? ??? ??? ??? ??? ??? else { ?? ??? ??? ??? ??? ??? ??? //右半边 ?? ??? ??? ??? ??? ??? ?? ? ?? ??? ??? ??? ??? ??? ???? xtile = int(px / tileWidth) - 1; ?? ??? ??? ??? ??? ??? ??? ? ?? ??? ??? ??? ??? ??? ??? ? ?? ??? ??? ??? ??? ??? ??? ? ?? ??? ??? ??? ??? ? ?? ??? ??? ??? ??? ??? ?? ? ?? ??? ??? ??? ??? ??? ??? } ?? ??? ??? ??? ??? ??? ? ?? ??? ??? ??? ?//对 y? 进行定位? 当在上半部分时 ?? ??? ??? ??? ??? ?if ((cy <= py) && (py <= cy + tileHeight * 0.5)) { ?? ??? ??? ??? ??? ??? ? ?? ??? ??? ??? ??? ??? ?ytile = int(py / tileHeight) * 2 + 1; ?? ??? ??? ??? ??? ? ?? ??? ??? ??? ??? ??? ? ?? ??? ??? ??? ??? ??? ?}else { ?? ??? ??? ??? ??? ??? ??? ? ?? ??? ??? ??? ??? ??? ??? ?ytile = (int(py / tileHeight) - 1) * 2 +1; ?? ??? ??? ??? ??? ??? ??? ? ?? ??? ??? ??? ??? ? ?? ??? ??? ??? ??? ??? ??? ? ?? ??? ??? ??? ??? ??? ??? ?} ?? ??? ??? ??? ??? ??? ??? ? ?? ??? ??? ??? ??? } ?? ??? ?? ? ?? ??? ??? ? ?? ??? ?return new Point(xtile,ytile);?? ??? ?? ? ?? ??? ??? ??? ?? ? ?? ??? ??? ??? ?? ? ?? ??? ??? ??? ?? ? ?? ??? ?} ?? ??? ? ?? ??? ? ?? ??? ? ?? ??? ? ?? ??? ?/* ?? ??? ? * 得到左上角的flash坐标 也就是注册点 ?? ??? ? * */ ?? ??? ?public? static function getLeftTopPointByTile(tileWidth:int,tileHeight:int,tileX:int,tileY:int):Point { ?? ??? ??? ? ?? ??? ??? ? ?? ??? ?var point:Point = MapUtil.getTileCenterByTilePoint(tileWidth,tileX,tileY); ?? ??? ? ?? ??? ?var px:Number = point.x - tileWidth * 0.5; ?? ??? ?var py:Number = point.y - tileHeight * 0.5; ?? ??? ?return new Point(px,py); ?? ??? ??? ? ?? ??? ??? ?} ?? ??? ??? ? ?? ??? ??? ? ?? ??? ??? ? ?? ??? ??? ?public static function getLefTopPointByPixelPoint(tileW:Number,tileH:Number,py:Number):Point { ?? ??? ??? ??? ?var point:Point = MapUtil.getTileCenterByPixelPoint(tileW,tileH,px,py); ?? ??? ??? ??? ? ?? ??? ??? ??? ??? ?var myX:Number = point.x - tileW * 0.5; ?? ??? ??? ??? ??? ?var myY:Number = point.y - tileH * 0.5; ?? ??? ??? ??? ??? ?return new Point(myX,myY); ?? ??? ??? ??? ? ?? ??? ??? ??? ? ?? ??? ??? ??? ?} ?? ??? ? ?? ??? ? ?? ??? ? ?? ??? ? ?? ??? ?//根据 tile坐标得到 tile的中心flash坐标 ?? ??? ?public static function getTileCenterByTilePoint(tileW:Number,tx:int,ty:int):Point { ?? ??? ??? ? ?? ??? ??? ?var px:Number; ?? ??? ??? ?var py:Number; ?? ??? ??? ?py = 0.5 * tileH * ty + 0.5 * tileH; ?? ??? ??? ?//当 ty为偶数 ?? ??? ??? ?if (ty % 2 == 0) { ?? ??? ??? ??? ?px = tx * tileW + 0.5 * tileW; ?? ??? ??? ??? ? ?? ??? ??? ??? ?} ?? ??? ??? ??? ?else { ?? ??? ??? ??? ??? ? ?? ??? ??? ??? ??? ?px=tx * tileW +? tileW; ?? ??? ??? ??? ??? ? ?? ??? ??? ??? ??? ? ?? ??? ??? ??? ??? ?} ?? ??? ??? ? ?? ??? ??? ? ?? ??? ??? ?return new Point(px,py); ?? ??? ??? ?} ?? ??? ? ?? ??? ? ?? ??? ??? ? ?? ??? ??? ?//根据像素坐标<flash实际坐标> 得到 tile中心坐标 ?? ??? ??? ? ?? ??? ??? ?public static function getTileCenterByPixelPoint(tileW:Number,py:Number):Point { ?? ??? ??? ??? ? ?? ??? ??? ??? ?var point:Point = MapUtil.getTilePoint(tileW,py); ?? ??? ??? ??? ? ?? ??? ??? ??? ?return? MapUtil.getTileCenterByTilePoint(tileW,point.x,point.y); ?? ??? ??? ??? ? ?? ??? ??? ??? ? ?? ??? ??? ??? ? ?? ??? ??? ??? ?} ?? ??? ? /*?? ??? ??? ??? ?// cols是含有的列数? 索引 是从0开始 ?? ??? ??? ??? ?public static function getIndexByTilePoint(tileX:int,tileY:int,cols:int):int { ?? ??? ??? ??? ??? ? ?? ??? ??? ??? ??? ?var index:int=tileY*cols+tileX ?? ??? ??? ??? ??? ? ?? ??? ??? ??? ??? ?return index; ?? ??? ??? ??? ??? ? ?? ??? ??? ??? ??? ?}*/ ?? ??? ??? ??? ??? ? ?? ??? ??? ?/*?? ?public? static function getTilePointByIndex(index:int,columns:int):Point { ?? ??? ??? ??? ??? ??? ? ?? ??? ??? ??? ??? ??? ?var tileY:int = index/ columns; ?? ??? ??? ??? ??? ??? ?var tileX:int = index % columns ; ?? ??? ??? ??? ??? ??? ? ?? ??? ??? ??? ??? ??? ? ?? ??? ??? ??? ??? ??? ?return new Point(tileX,tileY); ?? ??? ??? ??? ??? ??? ? ?? ??? ??? ??? ??? ??? ? ?? ??? ??? ??? ??? ??? ? ?? ??? ??? ??? ??? ??? ?}*/ ?? ??? ??? ??? ??? ? ?? ??? ??? ??? ??? ? ?? ??? ??? ??? ??? ??? ?/** ?? ??? ??? ??? ??? ??? ? * 根据? tileX tileY来得到相应位置的 点 假如不存在的话就会返回null ?? ??? ??? ??? ??? ??? ? * ?? ??? ??? ??? ??? ??? ? * ?? ??? ??? ??? ??? ??? ? * @param?? ?array? 总点数组 长度 为 (endTileX-beginTileX+1)*(endTileY-beginTileY+1) ?? ??? ??? ??? ??? ??? ? * @param?? ?tileX ?? ??? ??? ??? ??? ??? ? * @param?? ?tileY ?? ??? ??? ??? ??? ??? ? */ ?? ??? ??? ??? ??? ??? ?public static function getArrayPointByTilePoint(array:Array,endTileX:int,endTleY:int,beginTileX:int=-1,beginTileY:int=-1):Point { ?? ??? ??? ??? ??? ??? ??? ? ?? ??? ??? ??? ??? ??? ??? ?//var column:int = endTileX - beginTileX + 1; ?? ??? ??? ??? ??? ??? ?//?? ?var row:int = endTleY - beginTileY + 1; ?? ??? ??? ??? ??? ??? ??? ? ?? ??? ??? ??? ??? ??? ??? ? ?? ??? ??? ??? ??? ??? ??? ? ?? ??? ??? ??? ??? ??? ??? ?var index:int = MapUtil.getTileIndex(tileX,tileY,endTileX,endTleY,beginTileX,beginTileY); ?? ??? ??? ??? ??? ??? ??? ?var point:Point = array[index]; ?? ??? ??? ??? ??? ??? ??? ?return point; ?? ??? ??? ??? ??? ??? ??? ? ?? ??? ??? ??? ??? ??? ??? ? ?? ??? ??? ??? ??? ??? ??? ?} ?? ??? ??? ??? ??? ? ?? ??? ??? ??? ??? ??? ? ?? ??? ??? ??? ??? ??? ?/** ?? ??? ??? ??? ??? ??? ? * 根据? px py来得到相应位置的 点 假如不存在的话就会返回null ?? ??? ??? ??? ??? ??? ? * ?? ??? ??? ??? ??? ??? ? * ?? ??? ??? ??? ??? ??? ? * @param?? ?array? 总点数组 长度 为 (endTileX-beginTileX+1)*(endTileY-beginTileY+1) ?? ??? ??? ??? ??? ??? ? * @param?? ?px? flash坐标 ?? ??? ??? ??? ??? ??? ? * @param?? ?py ?? ??? ??? ??? ??? ??? ? */ ?? ??? ??? ??? ??? ??? ??? ?public static function getArrayPointByFlashPoint(tileW:int,tileH:int,array:Array,px:int,py:int,beginTileX:int = -1,beginTileY:int = -1):Point { ?? ??? ??? ??? ??? ??? ??? ??? ?var tilePoint:Point = MapUtil.getTilePoint(tileW,py); ?? ??? ??? ??? ??? ??? ??? ??? ? ?? ??? ??? ??? ??? ??? ??? ??? ?return MapUtil.getArrayPointByTilePoint(array,tilePoint.x,tilePoint.y,beginTileY); ?? ??? ??? ??? ??? ??? ??? ??? ? ?? ??? ??? ??? ??? ??? ??? ??? ? ?? ??? ??? ??? ??? ??? ??? ??? ?} ?? ??? ??? ??? ??? ? ?? ??? ??? ??? ??? ? ?? ??? ??? ??? ??? ??? ??? ??? ?/** ?? ??? ??? ??? ??? ??? ??? ??? ? * 根据tileX tileY 得到在总数组中的索引 ?? ??? ??? ??? ??? ??? ??? ??? ? * @param?? ?tileX ?? ??? ??? ??? ??? ??? ??? ??? ? * @param?? ?tileY ?? ??? ??? ??? ??? ??? ??? ??? ? * @param?? ?endTileX ?? ??? ??? ??? ??? ??? ??? ??? ? * @param?? ?endTleY ?? ??? ??? ??? ??? ??? ??? ??? ? * @param?? ?beginTileX ?? ??? ??? ??? ??? ??? ??? ??? ? * @param?? ?beginTileY ?? ??? ??? ??? ??? ??? ??? ??? ? * @return ?? ??? ??? ??? ??? ??? ??? ??? ? */ ?? ??? ??? ??? ??? ??? ??? ??? ?public static function getTileIndex(tileX:int,beginTileY:int=-1):int { ?? ??? ??? ??? ??? ??? ??? ??? ??? ? ?? ??? ??? ??? ??? ??? ??? ??? ??? ?var column:int = endTileX - beginTileX + 1; ?? ??? ??? ??? ??? ??? ??? ??? ??? ?var index:int = tileX-beginTileX + (tileY-beginTileY) * column; ?? ??? ??? ??? ??? ??? ??? ??? ??? ? ?? ??? ??? ??? ??? ??? ??? ??? ??? ?return index; ?? ??? ??? ??? ??? ??? ??? ??? ??? ? ?? ??? ??? ??? ??? ??? ??? ??? ??? ? ?? ??? ??? ??? ??? ??? ??? ??? ??? ? ?? ??? ??? ??? ??? ??? ??? ??? ??? ?} ?? ??? ??? ??? ??? ? ?? ??? ??? ??? ??? ? ?? ??? ? ?? ??? ? ?? ??? ? ?? ??? ? ?? ??? ??? ??? ??? ??? ? ?? ??? ??? ??? ??? ??? ??? ? ?? ??? ??? ??? ??? ??? ??? ? ?? ??? ??? ??? ??? ??? ??? ? ?? ??? ??? ??? ??? ??? ??? ? ?? ??? ??? ??? ??? ??? ??? ? ?? ??? ??? ??? ??? ??? ??? ? ?? ??? ??? ??? ??? ??? ??? ? ?? ??? ??? ??? ??? ??? ??? ? ?? ??? ??? ??? ??? ??? ??? ? ?? ??? ??? ??? ??? ??? ??? ? ?? ??? ??? ??? ??? ??? ??? ? ?? ??? ??? ??? ?//tileX tileY 的本地与全局的转化 ?? ??? ??? ??? ? ?? ??? ??? ??? ?/* ?? ??? ??? ??? ? * 本地tile在Building的坐标 转化为在Buildding父容器中的坐标 ?? ??? ??? ??? ? * ?? ??? ??? ??? ? * ?? ??? ??? ??? ? * 注意 Buildding已经添加进全局做标中? ? ?? ??? ??? ??? ??? ??? ?也就是说?? 转化后的坐标 是 和building 的坐标? 在同一坐标系中 ?? ??? ??? ??? ??? ??? ? ?? ??? ??? ??? ??? ??? ?@param? buildingTilePoint 该值是在buiding 中的坐标值 ?? ??? ??? ??? ??? ??? ?@param? 参照对象???? 也就是? buildingTilePoint所属坐标系 ?? ??? ??? ??? ??? ??? ? ?? ??? ??? ??? ??? ??? ?最终返回的坐标是? 和 buiding 在同一坐标系 ?? ??? ??? ??? ? * ?? ??? ??? ??? ? * */ ?? ??? ?/*?? ??? ?public static function localToGlobalTile(buildingTilePoint:Point,buiding:GameObject):Point { ?? ??? ??? ??? ??? ? ?? ??? ??? ??? ??? ?var buildingPoint:Point = buiding.getTilePosition(); ?? ??? ??? ??? ??? ?var gx:int = buildingTilePoint.x + buildingPoint.x; ?? ??? ??? ??? ??? ?var gy:int = buildingTilePoint.y + buildingPoint.y; ?? ??? ??? ??? ??? ? ?? ??? ??? ??? ??? ?return new Point(gx,gy); ?? ??? ??? ??? ??? ? ?? ??? ??? ??? ??? ?}*/ ?? ??? ??? ??? ??? ? ?? ??? ??? ??? ??? ? ?? ??? ??? ??? ?/* ?? ??? ??? ??? ? * ?? ??? ??? ??? ? *? 全局tile坐标 转化为在Buildding中的坐标 ?? ??? ??? ??? ? * 注意 Buildding已经添加进全局做标中 ?? ??? ??? ??? ??? ? ?? ??? ??? ??? ?@globalPoint? 和buiding 的坐标?? 是在同一坐标系中 ?? ??? ??? ??? ?@buiding? 参照对象 ?? ??? ??? ??? ? ?? ??? ??? ??? ?最终返回的是globalPoint在buiding坐标系中的坐标 ?? ??? ??? ??? ? ?? ??? ??? ??? ? * */?? ? ?? ??? ??? ??? ? ?? ??? ?/*?? ??? ?public? static function globalToLocalTile(globalPoint:Point,buiding:GameObject):Point { ?? ??? ??? ??? ??? ? ?? ??? ??? ??? ??? ? ?? ??? ??? ??? ??? ?var buildingPoint:Point = buiding.getTilePosition(); ?? ??? ??? ??? ??? ?var gx:int = globalPoint.x - buildingPoint.x; ?? ??? ??? ??? ??? ?var gy:int = globalPoint.y - buildingPoint.y; ?? ??? ??? ??? ??? ? ?? ??? ??? ??? ??? ?return new Point(gx,gy); ?? ??? ??? ??? ??? ? ?? ??? ??? ??? ??? ?}*/ ?? ??? ??? ??? ? ?? ??? ??? ??? ? ?? ??? ??? ??? ? ?? ??? ??? ??? ? ?? ??? ??? ??? ? ?? ??? ??? ??? ??? ? ?? ??? ??? ??? ??? ? ?? ??? ??? ??? ??? ?/** ?? ??? ??? ??? ??? ? * 将数据拆成? Point对象 比如 ?? ??? ??? ??? ??? ? * @param?? ?str? str的形式是?? 1,4 这样的形式? ? ?? ??? ??? ??? ??? ? * @return ?? ??? ??? ??? ??? ? */ ?? ??? ??? ??? ? ?? ??? ??? ??? ??? ?public static function splitDataToPointArr(str:String):Vector.<Point> { ?? ??? ??? ??? ??? ??? ?/** ?? ??? ??? ??? ??? ??? ? * str字符串个数必须是偶数 ?? ??? ??? ??? ??? ??? ? */ ?? ??? ??? ??? ??? ??? ? ?? ??? ??? ??? ??? ??? ?var arr:Array = str.split(","); ?? ??? ??? ??? ??? ??? ?if (arr.length % 2 != 0) { ?? ??? ??? ??? ??? ??? ?//throw? new Error("MapUtil ::数据有误"); ?? ??? ??? ??? ??? ??? ?return new Vector.<Point>(); ?? ??? ??? ??? ??? ??? ?//return null; ?? ??? ??? ??? ??? ??? ?} ?? ??? ??? ??? ??? ??? ?var len:int = arr.length; ?? ??? ??? ??? ??? ??? ?var i:int = 0; ?? ??? ??? ??? ??? ??? ?var point:Point; ?? ??? ??? ??? ??? ??? ?var vecPoint:Vector.<Point> = new Vector.<Point>(); ?? ??? ??? ??? ??? ??? ?while (i != len ) { ?? ??? ??? ??? ??? ??? ??? ?point = new Point(); ?? ??? ??? ??? ??? ??? ??? ?point.x = arr[i]; ?? ??? ??? ??? ??? ??? ??? ?point.y =arr[i + 1]; ?? ??? ??? ??? ??? ??? ??? ?vecPoint.push(point); ?? ??? ??? ??? ??? ??? ??? ?i = i + 2; ?? ??? ??? ??? ??? ??? ??? ?} ?? ??? ??? ??? ??? ??? ? ?? ??? ??? ??? ??? ??? ? ?? ??? ??? ??? ??? ??? ?return vecPoint; ?? ??? ??? ??? ??? ??? ?} ?? ??? ??? ??? ??? ??? ? ?? ??? ??? ??? ??? ??? ? ?? ??? ??? ??? ??? ??? ? ?? ??? ??? ??? ??? ? ?? ??? ??? ??? ??? ? ?? ??? ??? ??? ??? ??? ??? ? ?? ??? ??? ??? ??? ??? ??? ? ?? ??? ??? ??? ??? ??? ??? ? ?? ??? ??? ??? ??? ??? ??? ? ?? ??? ??? ??? ??? ??? ??? ? ?? ??? ??? ??? ??? ??? ??? ? ?? ??? ? ?? ??? ?///end class ?? ??? ? ?? ?} }

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读