欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

天地图web开发中查阅api的相关问题

程序员文章站 2022-07-01 20:31:22
...

越来越多的项目用到了天地图作为底图的二次开发,因此对其api进行了解和学习,在学习过程中发现api中有一些方法遗漏或者描述不准确的情况,以下是我在使用中发现的一些问题
一、控件类使用中的问题
控件类 Control.MapType的使用,该类是继承于Control的,可以通过Control设置控件的基本属性,例如位置信息,按照api,类型设置方法应该是

ctrl = new T.Control.MapType();
ctrl.setOptions({
	position: T_ANCHOR_BOTTOM_RIGHT

});
但是api中还有有个getPosition()方法,获取控件位置的方法,根据这个方法一般能猜到对应的setPosition方法,果然,通过setPosition(pos)方法也可以进行位置设置,pos为位置常量,例如:bottomright(右下角,注意该类方式必须小写),但是api中未进行说明。

二、地图类型设置问题
一般情况下,地图服务商都会提供地图默认类型设置方法,但是在天地图api中你会发现没有该方法,要想实现默认类型修改,必须单独加载一个所需的地图服务,例如实现默认加载卫星图,需要写一下一段代码

   var imageURL = "http://t0.tianditu.gov.cn/img_w/wmts?" +
            "SERVICE=WMTS&REQUEST=GetTile&VERSION=1.0.0&LAYER=img&STYLE=default&TILEMATRIXSET=w&FORMAT=tiles" +
            "&TILEMATRIX={z}&TILEROW={y}&TILECOL={x}&tk=您的**";
        //创建自定义图层对象
        lay = new T.TileLayer(imageURL, {minZoom: 1, maxZoom: 18});
        var config = {layers: [lay]};
        //初始化地图对象
        map = new T.Map("mapDiv", config);

这种方式虽然勉强可以实现功能,但总归对开发者来说比较别扭,毕竟这是一个地图的最基本的功能,可能是程序员开发的一种习惯或者是不饶的精神吧,通过浏览器控制台去查看map都有哪些方法,不调不知道,一调吓一跳,好多方法api都没提,当然也有上面说的设置地图类型的方法,而且超简单,见下面代码块。

//设置默认的混合图层
    map.setMapType(TMAP_HYBRID_MAP);

是不是超简单。
最后,由衷的感谢天地图开发人员提供的地图开放平台,希望天地图产品完善的越来越好,毕竟越来越多的开发者开始青睐你们啦。