html5-plus
Version:
html5 plus typescript DefinitelyTyped (alpha...)
144 lines (140 loc) • 5.24 kB
TypeScript
/**
* Typescript 声明文件
* @author westsky
* @description Html 5+ plus.maps
*/
declare namespace plus.maps{
//function
function openSysMap(dst:Point,des:string,src:Point):void;
//------------对象---------------------
/** 地图控件对象 */
class Map{
constructor(id:string,options?:MapOptions);
//方法
/**静态方法计算面积 */
static calculateArea(bounds:Bounds,successCallback?:AreaCalculateCallback,errorCallback?:ErrorCallback):void;
/**静态方法,计算距离 */
static calculateDistance(pointStart:Point,pointEnd?:Point,successCallback?:DistanceCalculateCallback,errorCallback?:ErrorCallback):void;
/**静态方法,坐标转换 */
static convertCoordinates(point:Point,options?:CoordinateConvertOptions,successCallback?:CoordinateConvertCallback,errorCallback?:ErrorCallback):void;
/**静态方法,地理编码;越详细的地址信息越容易转换,如XX路XX号XX大厦。 */
static geocode(address:string,options?:GeocodeOptions,successCallback?:GeocodeCallback,errorCallback?:ErrorCallback):void;
/**态方法,反向地理编码*/
static reverseGeocode(point:Point,options:GeocodeOptions,successCallback:GeocodeCallback,errorCallback:ErrorCallback):void;
/**关闭地图控件 */
close():void;
/**获取用户的当前位置信息 */
getUserLocation(callback:UserLocationCallback):boolean;
/**显示地图控件 */
show():void;
/**显示当前位置 */
showUserLocation(display:boolean):void;
/**resize: 重设地图控件大小 */
resize():void;
/**获取地图中心点位置 */
getCenter():Point;
}
/**地图对象的参数 */
class MapOptions{
center:Point;
zoom:number;
type:MapType;
traffic:boolean;
zoomControls:boolean;
position:string;
}
/**
* 地理编码转换的参数
*
*/
class GeocodeOptions{
coordType:string;
city:string;
}
/**地图坐标转换的参数 */
class CoordinateConvertOptions{
coordType:string;
/* “wgs84”:表示WGS-84坐标系; “gcj02”:表示国测局经纬度坐标系;
“bd09”:表示百度墨卡托坐标系; “bd09ll”:表示百度经纬度坐标系; 默认使用wgs84坐标系。*/
}
/**创建Point对象 */
class Point{
constructor(lng:number,lat:number);
//方法
/**设置坐标点的经度 */
setLng(lng:number):void;
/**获取坐标点的经度 */
getLng():number;
/**设置坐标的纬度 */
setLat(lat:number):void;
/**获取坐标的纬度 */
getLat():number;
/**判断两个坐标点是否相等 */
equals(pt:Point):boolean;
}
/**地理区域 */
class Bounds{
constructor(northease:Point,southwest:Point);
constructor(nelng:number,nelat:number,swlng:number,swlat:number);
//方法
/**设置地理区域的东北坐标点 */
setNorthEase(point:Point):void;
/**地理区域的东北坐标点 */
getNorthEase():Point;
/**设置地理区域的西南坐标点 */
setSouthWest(point:Point):void;
/**地理区域的西南坐标点 */
getSouthWest():Point;
/**判断制定的坐标是否在地理区域中 */
contains(point:Point):boolean;
/**判断两个地理区域是否相等 */
equals(bounds:Bounds):boolean;
/**获取地理区域的中心点坐标 */
getCenter():Point;
}
/**地图视图类型 */
class MapType{
MAPTYPE_NORMAL:number;
MAPTYPE_SATELLITE:number;
}
//--------回调接口--------------
/**地理编码转换成功的回调函数 */
interface GeocodeCallback{
(event:GeocodeCallbackEvent):void;
}
interface GeocodeCallbackEvent extends Event{
address:string;
coord:Point;
coordType:string;
}
/**坐标转换成功的回调函数 */
interface CoordinateConvertCallback{
(event:CoordinateConvertCallbackEvent):void;
}
interface CoordinateConvertCallbackEvent extends Event{
coord:Point;
coordType:string;
}
/**距离计算成功的回调函数 */
interface DistanceCalculateCallback{
(event:DistanceCalculateCallbackEvent):void;
}
interface DistanceCalculateCallbackEvent extends Event{
distance:number;
}
/**地理区域面积计算成功的回调函数 */
interface AreaCalculateCallback{
(event:AreaCalculateCallbackEvent):void;
}
interface AreaCalculateCallbackEvent extends Event{
area:number;
}
/**获取用户当前位置信息成功回调 */
interface UserLocationCallback{
(state:number,point:Point):void;
}
/**地图操作失败的回调函数 */
interface ErrorCallback{
(error: DOMException):void;
}
}