重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
百度有提供api的,一般是按照api给的网址,在网址后加经纬度或者地区名,但是百度地图要申请秘钥的,这个需要自己去申请一个,免费的,类似的功能你可以参考下面的源码虽然是javascript的,但是java用起来差不多,毕竟你的地图肯定是在web页面显示的
铜川网站建设公司成都创新互联公司,铜川网站设计制作,有大型网站制作公司丰富经验。已为铜川上1000家提供企业网站建设服务。企业网站搭建\成都外贸网站制作要多少钱,请找那个售后服务好的铜川做网站的公司定做!
!DOCTYPE html
html
head
meta name="viewport" content="initial-scale=1.0, user-scalable=no" /
meta http-equiv="Content-Type" content="text/html; charset=utf-8" /
titleHello, World/title
style type="text/css"
html{height:100%}
body{height:100%;margin:0px;padding:0px}
#container{height:100%}
/style
script type="text/javascript" src=";ak=您的密钥"
//v2.0版本的引用方式:src=";ak=您的密钥"
//v1.4版本及以前版本的引用方式:src=";key=您的密钥callback=initialize"
/script
/head
body
div id="container"/div
script type="text/javascript"
var map = new BMap.Map("container"); // 创建地图实例
var point = new BMap.Point(116.404, 39.915); // 创建点坐标
map.centerAndZoom(point, 15); // 初始化地图,设置中心点坐标和地图级别
/script
/body
/html
小游戏地图一般都是各种图片的拼接,然后保存到2维数组里面
比如
//数值常量
public static final int EMPTY=0;//空地什么也没有
public static final int BRICK=1;//土墙
public static final int STONE=2;//石头
public static final int SEA=3;//海洋
public static final int GREENS=4;//草地
public static final int SNOW=5;//雪地
//对应的图片
.....
public static final Image IMG_STONE=new ImageIcon(MapValues.class.getResource("/resource/imgs/stone.png")).getImage();//石头图片
......
那么保存一副地图就可以用类似于下面的二维数组表示
002405100
145111123
132131001
使用的时候, 加载二维数组,然后把对应的图片显示在地图上就可以了.
不过这样做也存在一定的问题.
1:图片太多,对应的数字太多, 那么地图编辑起来很麻烦, 需要有强大的记忆力,和想象力
2:不能一边编辑,一边就显示出效果来, 出错后,排查麻烦. 效率太低
所以,我们还需要写点代码,做一个简单的地图编辑器,添加辅助线,擦除工具等, 这样的话, 编辑地图就非常方便了,所见即所得.并且一键可以保存为地图数据(二维数组)
学习swing的时候,写过一个简单的地图编辑器,效果图如下
为了熟悉不同的图形界面API, 游戏界面使用的不是swing,而是JavaFX
地图编辑器思路如下:
这个小地图是3x3的,我们用汉字对它进行描述:
石头 空白 雪地
空白 砖墙 空白
水面 空白 草地
这像什么? 像不像二维数组.! 所以我们可以使用二维数组来存储一副地图.
当然了使用汉字来描述地图, 还是太麻烦...
我们使用数字来存储更好.把数字和对应的图片做好一一对应的关系.比如0代表空白 1代表石头 ... 绘制地图的时候,循环二维数组,如果是1就在此处画石头,循环到0就什么也不画直接跳过..
拓展,如果还想有稍微立体点的效果, 就是比如有薄雾什么的, 那么你可以建立另外一个天气图层的二维数组, 这个数组就是绘制薄雾等天气的, 这个要最后绘制, 这样才能起到薄雾对下面地图的遮挡..
编辑地图的时候 ,先点击一个图片,表示等下需要绘制的图片是哪一个.然后在编辑地图的时候按下鼠标代表开始开始绘制, 然后鼠标拖动到哪里就绘制到哪里, 最后松开鼠标松开, 完成绘制
地图的保存: 二维数组可以直接把每个元素写入到文本文件里, 当然了也可以直接把整个二维数组对象都写入到文件里,使用的时候,直接读取还原即可