MapABC首页 > 地图 API > API类参考
左侧导航
MapABC地图API类参考
下面是类的定义说明,构造方法、属性、方法等:
MMap MEventControl MMapViews
MMapMode MGeometry MLatLng
MXY MMapOptions MStyle
MOverlay MPointOverlay MPolylineOverlay
MPolygonOverlay MCircleOverlay MRectOverlay
MRegularPolygonOverlay MCustomPointOverlay MDragablePointWithoutTip

MMap类

  地图类封装了Flash地图组件,对地图的操作都是通过它完成。仅仅创建一个MMap对象就可以在页面中显示地图,实现基本的地图功能。
构造方法返回顶部
构造方法 参数 说明
MMap(containerId, options) containerId:说明:装载地图组件的容器ID,例如<div>标签的ID。类型:String
options:说明:地图初始化时的参数。类型:MMapOptions

创建一个MMap对象,显示Flash地图。

MEventControl 继承 MMap


方法 类型 说明
EVENT_MAP_INITIALIZED String 静态属性,表示onMapInited事件
EVENT_MAP_ZOOMED String 静态属性,表示onMapZoomed事件
EVENT_MAP_MOVED String 静态属性,表示onMapMoved事件
EVENT_MAP_DBCLICK String 静态属性,表示onMapDoubleClick事件
EVENT_POINT_DRAWN String 静态属性,表示onPointdrawn事件
EVENT_POLYLINE_DRAWN String 静态属性,表示onPolylineDrawn事件
EVENT_RECT_DRAWN String 静态属性,表示onRectdrawn事件
EVENT_POLYGON_DRAWN String 静态属性,表示onPolygonDrawn事件
EVENT_CIRCLE_DRAWN String 静态属性,表示onCircleDrawn事件
EVENT_REGULARPOLYGON_DRAWN String 静态属性,表示onRegularpolygonDrawn事件
EVENT_GET_MAP_BOUNDS String 静态属性,表示onGetMapBoundCallback事件
EVENT_GET_COORD_MAP_TO_SCREEN String 静态属性,表示onGetXYByLonLatCallBack事件
EVENT_RADAR_INITIALIZED String 静态属性,表示onRadarInited事件
EVENT_RADAR_ANGLECHANGED String 静态属性,表示onRadarAngleChanged事件
EVENT_RADAR_POSCHANGED String 静态属性,表示onRadarPosChanged事件
EVENT_GEOMEtrY_CREATED String 静态属性,表示onGeometryCreated事件
EVENT_GEOMEtrY_CHANGED String 静态属性,表示onGeometryChanged事件
EVENT_GEOMEtrY_REMOVED String 静态属性,表示onGeometryRemoved事件
EVENT_EXPORT_MAP_DATA String 静态属性,表示onExportMapData事件
EVENT_POINT_CLICKED String 静态属性,表示onPressPoint事件
EVENT_POLYLINE_CLICKED String 静态属性,表示onPressLine事件
EVENT_POLYGON_CLICKED String 静态属性,表示onPressPolygon事件
EVENT_MAP_CLICK String 静态属性,表示onMapClick事件
EVENT_POPUP_MENU_CLICK String 静态属性,表示onPopupMenuClick事件

方法
地图操作API返回顶部
方法 返回类型 参数 说明
isInitialized() boolean 检查地图是否已经初始化完成.初始化完成true,未完成返回false
setZoomLevel(zoomLevel) boolean zoomLevel:类型为整数,范围为从3到17 设置地图zoom级别. 初始化完成true,未完成返回false
getZoomLevel() int 返回地图的zoom级别.返回值为地图当前的zoom值,范围为从3到17
setCenterByLatLng(lat, lng)

lat: 说明:中心的纬度,加密坐标

lat 类型:字符串

lng: 说明:中心的经度,加密坐标

lng 类型:字符串

设置地图的中心点。注意经度、纬度的顺序。
getCenterByLatLng() 地图的中心点
类型:MLatLng
返回地图的中心点
setZoomAndCenter(zoomLevel, center)

zoomLevel 说明:缩放级别

zoomLevel 类型:字符串

center 说明:中心点的坐标

center 类型:MLatLng

设置地图的缩放级别和中心点。
getMapBounds() 取地图的边界,本方法并不直接返回地图边界的结果,而是通过MMap.EVENT_GET_MAP_BOUNDS事件返回。
frameZoomIn() 进入拉框放大状态。点击右键菜单或者执行quitMouseDraw()方法后停止。
frameZoomOut() 进入拉框缩小状态。点击右键菜单或者执行quitMouseDraw()方法后停止
pan(dir,step,speed)

dir : 平移方向 "up"、"down"、"left"、"right"、表示上、下、左、右四个方向。

step : 移动的步长,每次移动的像素。

speed: 移动的速度。

移动地图。
measure() 进入测距状态。双击鼠标或点击右键菜单或者执行quitMouseDraw()方法后停止。
showNavigator(isShow)

isShow:说明:true为显示鹰眼,false为隐藏鹰眼

类型:Boolean

设置鹰眼的可见性,显示或隐藏鹰眼。鹰眼缺省是关闭的。
示例--显示鹰眼:mapObj.showNavigator(true)
setMapColor(flashColor)

flashColor:地图的底色值。

说明:值以JSON串的形式进行设定

ra 是红色成分的百分比(-100 到 100);

rb 是红色成分的偏移量(-255 到 255);

ga 是绿色成分的百分比(-100 到 100);

gb 是绿色成分的偏移量(-255 到 255);

ba 是蓝色成分的百分比(-100 到 100);

bb 是蓝色成分的偏移量(-255 到 255);

aa 是 Alpha 的百分比(-100 到 100);

ab 是 Alpha 的偏移量(-255 到 255)

更改地图的底色
setCompassScale(scale)

scale 说明:工具栏的大小比例,是一个表示百分比的数字。

类型:Number

范围:50-100

设置工具栏的大小比例。
示例--设置工具栏为原始尺寸的70%。 mapObj.setCompassScale(70);
addPopupMenuItem (itemName, itemId, isLine)

itemName:菜单项名称

itemId:菜单项ID,

itemId 说明:对FMP的右键菜单中增加自定义的菜单项

isLine:菜单增加分组横线

FMP右键菜单设置功能,增加一个右键菜单项
示例--mapObj.addPopupMenuItem(“点击拉框查询”,70);
removePopupMenuItem(itemId)

itemId:菜单项ID

说明:对FMP的右键菜单中删除自定义的菜单项

FMP右键菜单设置功能,删除一个右键菜单项
showFullScreenButton(isVisible)

isVisible:显示与隐藏状态值

说明:true,显示全屏按钮,false,隐藏全屏按钮

显示地图全屏显示按钮
示例--mapObj.showFullScreenButton(true);
addTrafficLandscapePointLayer(isVisible)

isVisible:显示与隐藏状态值

说明:true,显示,false,隐藏

显示实时交通图层
示例--mapObj.addTrafficLandscapePointLayer(true);
loadRealTimeTrafficButton()

装载实时交通按钮,显示实时交通
示例--mapObj.loadRealTimeTrafficButton();
unloadRealTimeTrafficButton()

装载实时交通按钮,显示实时交通
示例--mapObj.unloadRealTimeTrafficButton();

辅助API返回顶部
方法 返回类型 参数 说明
getCoordMapToScreen(lng, lat)

lng 说明:经度。

lng 类型:浮点数。
lat 说明:经度。

lat 类型:浮点数 。

地理坐标到屏幕坐标转换,本方法并不直接返回转换的结果,由MMap.EVENT_GET_COORD_MAP_TO_SCREEN事件返回。屏幕坐标的中心点为(128,128),X坐标向左递减,向右递增;Y坐标向上递减,向下递增。

事件API返回顶部
方法 返回类型 参数 说明
switchEvent
(eventName, status)

eventName 说明:事件名称。

eventName 类型:String
status 说明:true为允许触发该事件,false为禁止触发该事件。

status 类型:Boolean 。

设置是否允许触发某个事件。
示例--禁止鼠标双击事件。运行下面的代码后,地图组件不再触发鼠标双击事件。mapObj.switchEvent(MMap.EVENT_MAP_DBCLICK, false)
switchDefaultdB ClickProcessor(status)

status 说明:true为允许缺省双击处理,false为禁止双击处理。

类型:Boolean 。

设置是否允许缺省鼠标双击处理,缺省的鼠标双击处理操作是放大地图。

绘图API返回顶部
方法 返回类型 参数 说明
addOverlay(overlay, sb)

overlay 说明:MOverlay对象的子类,例如MPointOverlay,表示一个点对象。

overlay 类型:MOverlay

sb 说明:是否调整视野。为true则画完Overlay时调整视野,使该Overlay位于地图的中心。缺省为false,不调整视野。目前只对MPointOverlay有效。

sb 类型:Boolean 。

在地图上添加一个MOverlay对象。
示例--创建一个点Overlay对象,然后加到地图上。
point = new MPointOverlay(newMLatLng("MRGYMVMLPH","KJONOWRELHL"), "测试点");
mapObj.addOverlay(point, true)
removeOverlay(overlay)

overlay 说明:MOverlay对象的子类,例如MPointOverlay,表示一个点对象。

类型:MOverlay

删除地图上的一个MOverlay对象。
示例--point是一个MPointOverlay对象,下面的代码删除point对象。 mapObj.removeOverlay(point)
drawPoints(points, sb)

points 说明:要添加的点数组。每个数组元素是一个MPointOverlay对象。

points 类型:数组 。

sb 说明:是否调整视野,true为调整视野;false为不调整视野。

sb 类型:Boolean 。

在地图上批量添加点,添加多个点时使用该方法能提高效率。
示例--下面的代码一次性添加4个点,添加完毕后自动调整视野。
var pointStyle1 = new MStyle();
pointStyle1.lineColor = 0xff0000;
pointStyle1.lineSize = 3;
pointStyle1.fillColor = 0xddaabb;
pointStyle1.fillOpacity = 50;
pointStyle1.labelColor = 0x00ff00;
pointStyle1.textContent = "<font color='#ff0000'>第一个点的文字描述</font><br>详细信息";
var point1 = new MPointOverlay(new MLatLng("KJONOWKMHLL,MRGYNMLHL"), "
第一个点", pointStyle1, "2001");
var pointStyle2 = new MStyle();
pointStyle2.lineColor = 0x3300ff;
pointStyle2.lineSize = 2;
pointStyle2.fillColor = 0xddaaff;
pointStyle2.fillOpacity = 60;
pointStyle2.labelColor = 0x553344;
pointStyle2.textContent = "<font color='#ff00aa'>第二个点的文字描述</font><br>详细信息";
var point2 = new MPointOverlay(new MLatLng("KJONOWOILHH,MRGYMXEHHL"), "
第二个点", pointStyle2, "2002");
var pointStyle3 = new MStyle();
pointStyle3.lineColor = 0xf0aaf0;
pointStyle3.lineSize = 5;
pointStyle3.fillColor = 0xddaa33;
pointStyle3.fillOpacity = 30;
pointStyle3.labelColor = 0xff0000;
pointStyle3.textContent = "<font color='#aaff00'>第三个点的文字描述</font><br>详细信息";
var point3 = new MPointOverlay(new MLatLng("KJONOWQMHLH,MRGYMVEHHL"), "
第三个点", pointStyle3, "2003");
var pointStyle4 = new MStyle();
pointStyle4.lineColor = 0x3366ff;
pointStyle4.lineSize = 4;
pointStyle4.fillColor = 0xddaa99;
pointStyle4.fillOpacity = 80;
pointStyle4.labelColor = 0x00ffaa;
pointStyle4.textContent = "<font color='#0000ff'>第四个点的文字描述</font><br>详细信息";
var point4 = new MPointOverlay(new MLatLng("KJONOWRELHL,MRGYMVMLPH"), "
第四个点", pointStyle4, "2004");
var points = new Array();
points.push(point1);
points.push(point2);
points.push(point3);
points.push(point4);
mapObj.drawPoints(points, true);
drawCustomPoints(customPoints, sb)

points 说明:要添加的点数组。每个数组元素是一个MCustomPointOverlay对象。

points 类型:数组。

sb 说明:是否调整视野,true为调整视野;false为不调整视野。

sb 类型:Boolean 。

在地图上批量添加自定义图标点,添加多个点时使用该方法能提高效率
drawBusLine(lineLngs,lineLats
,changeStationLngs, changeStationLats,
startPos, endPos, lineStyle, showDemo)

ineLngs 说明:线路节点经度字符串,每个经度值之间以“,”逗号相隔。

ineLngs 类型:String。

lineLats 说明:线路节点纬度字符串,每个纬度值之间以“,”逗号相隔。

lineLats 类型:String。

changeStationLngs 说明:换乘点的经度坐标字符串,每个经度值之间以“,”逗号相隔。

changeStationLngs 类型:Sting 。 changeStationLats 说明:换乘点的纬度坐标字符串,每个纬度值之间以“,”逗号相隔。

changeStationLats 类型:Sting 。

startPos 说明:起始点。

startPos 类型:MPointOverlay

endPos 说明:终止点。

endPos 类型:MPointOverlay

lineStyle 说明:可选,线路的样式。

lineStyle 类型:MStyle

showDemo 说明:可选,是否显示公交演示如果使用此参数,则lineStyle不可省略。

showDemo 类型:Boolean

showDemo 缺省时:false

在地图上画公 始点、终止点和中 间的换乘站点。
示例--下面的代码绘制了一条从大兴到中关村的公交线路,途中有两个换乘站。
var arrX = "lksfiiqlhuGMDJ,lksfiipmhmKEHJ,lksfiiolltOIDN,lksfiiqlotKIDN,lksfiivejsOIHF,lksfiivikuGELN,
lksfiisjmqOIDN, lksfiiseipOELF,lksfiisngmOELJ,lksfiitgimGMLJ,lksfiiuhiOEHJ,lksfiivmpnGEHJ,
lksfijpfgpGILN,lksfijrhnsOMHN,lksfijrfnuGILF,lksfijokpnKILJ,lksfijofhuOMLN,lksfijngisOIHN,
lksfijnepKEDF,lksfijnfouOMHJ,lksfijnfprOILJ,lksfijnelmKMHN,lksfiivglmOIHF,lksfiivkmoKIDF,
lksfiivhisKILJ,lksfiiumlpGIHN,lksfiiphjGILN,lksfiiphhqGMLN,lksfiiqgmuGIHN,lksfiiqmmpKMDF,
lksfiingpoKILJ, lksfihvnprKIHJ,lksfihunouOMDN,lksfihskmnKMLJ,lksfihsjmoOILN,lksfihrmjmKEHN,
lksfihrjjoKILF,lksfihrjhtGIDJ,lksfihrekqGEDJ, lksfihqknuKMLN,lksfihpnjuKMHF,lksfigvejoGELN,
lksfigsnmqOMHJ,lksfigsmitKMHF,lksfigsfjpKEDF,lksfigrjkrOILJ,lksfigregqOMHF ,lksfigpnkpGEHF,
lksfigonnqGMLJ,lksfignjjoKIHJ,lksfifvkmpGMHJ,lksfifufnrOEHJ,lksfiftjnpOMHN";
var arrY = "nskoknoijojKIHF,nskoljrmnqKIHF,nskomipmnqKEDJ,nskonevkgtjGIHJ,nskonmngoojOIDJ,
nskoofphmrmKEHJ, nskpfksfkmmOILN,nskphfumgtjKMHF,nskphmpimrmOMLN,nskpjmphpmmOMLJ,
nskpklpfltjGIHJ,nskplkrniqKMDJ, nskpllukmrmGMHN,nskpllwmkmmOMLN,nskplnslpmmOMHN,
nskplnpjlOMLJ,nskplnumgtjOELF,nskpmnngkmmKIHJ,
nskpnkrgoojKIHN,nskpogwnjojOILJ,nskpogwggtjGMLF,nskpokveoojGMLJ,nskpokunmrmGMDN,nskpolwhnqOMLJ,
nskponslnqKMHN,nskponslOMLJ,nskponqlpmmKILJ,nskqffnjKIHN,nskqfjqfpmmKELF,nskqflqnkmmGILJ,
nskqflqnnqOEDJ,nskqfluhKIHJ,nskqfluhjojKIHN,nskqfluhnqOIHN,nskqfmtfgtjGELF,nskqgfqnhrmKMDN,nskqgnogKIDJ,
nskqhiqhpmmOMDN,nskqhmvhiqOMLJ,nskqigrhnqKILN,nskqigsfnqKILF,nskqigrmjojOIHN,nskqigrmmrmGMHJ,
nskqikrniqOILN,nskqjhvlKIHF,nskqjmoiiqOILJ,nskqkgpmlOIHN,nskqleoepmmOMLN,nskqljqhpmmGIDN,
nskqlmvlhrmKILN,nskqmhqnhrmOMLF,nskqmlqglOMLJ,nskqngtfltjKIDN";
var changeStationLngs = "lksfijnfouOMHJ,lksfijnfprOILJ";
var changeStationLats = "nskpogwnjojOILJ,nskpogwggtjGMLF";
var startStyle = new MStyle();
startStyle.textContent="大兴";
var endStyle = new MStyle();
endStyle.textContent="中关村";
var lineStyle = new MStyle();
lineStyle.lineSize = 3;
lineStyle.lineColor = 0x0000ff;
var startPoint = new MPointOverlay(new MLatLng("lksfiiqlhuGMDJ,nskoknoijojKIHF"),
"起点", startStyle);
var endPoint = new MPointOverlay(new MLatLng("lksfiftjnpOMHN,nskqngtfltjKIDN"),
"终点", endStyle);
mapObj.drawBusLine(arrX, arrY, changeStationLngs, changeStationLats, startPoint,
endPoint, lineStyle);
drawDriveLine(lineLngs,lineLats,
startPos,endPos, lineStyle)

ineLngs 说明:线路节点经度字符串,每个经度值之间以“,”逗号相隔。

ineLngs 类型:String。

lineLats 说明:线路节点纬度字符串,每个纬度值之间以“,”逗号相隔。

lineLats 类型:String。

startPos 说明:起始点。

startPos 类型:MPointOverlay

endPos 说明:终止点。

endPos 类型:MPointOverlay

lineStyle 说明:可选,线路的样式。

lineStyle类型:MStyle

在地图上画驾车路线。
示例--下面的代码绘制了一条从大兴到中关村的驾车线路。
var arrX = "lksfiiqlhuGMDJ,lksfiipmhmKEHJ,lksfiiolltOIDN,lksfiiqlotKIDN,lksfiivejsOIHF,lksfiivikuGELN,
lksfiisjmqOIDN,lksfiiseipOELF,lksfiisngmOELJ,lksfiitgimGMLJ,lksfiiuhiOEHJ,lksfiivmpnGEHJ,lksfijpfgpGILN,
lksfijrhnsOMHN,lksfijrfnuGILF,lksfijokpnKILJ,lksfijofhuOMLN,lksfijngisOIHN,lksfijnepKEDF,lksfijnfouOMHJ,
lksfijnfprOILJ,lksfijnelmKMHN,lksfiivglmOIHF,lksfiivkmoKIDF,lksfiivhisKILJ,lksfiiumlpGIHN,lksfiiphjGILN,
lksfiiphhqGMLN,lksfiiqgmuGIHN,lksfiiqmmpKMDF,lksfiingpoKILJ,lksfihvnprKIHJ,lksfihunouOMDN,
lksfihskmnKMLJ,lksfihsjmoOILN,lksfihrmjmKEHN,lksfihrjjoKILF,lksfihrjhtGIDJ,lksfihrekqGEDJ,
lksfihqknuKMLN,lksfihpnjuKMHF,lksfigvejoGELN,lksfigsnmqOMHJ,lksfigs mitKMHF,lksfigsfjpKEDF,
lksfigrjkrOILJ,lksfigregqOMHF,lksfigpnkpGEHF,lksfigonnqGMLJ,lksfignjjoKIHJ,lksfifvkmpGMHJ,
lksfifufnrOEHJ,lksfiftjnpOMHN";
var arrY = "nskoknoijojKIHF,nskoljrmnqKIHF,nskomipmnqKEDJ,nskonevkgtjGIHJ,nskonmngoojOIDJ,
nskoofphmrmKEHJ,nskpfksfkmmOILN,nskphfumgtjKMHF,nskphmpimrmOMLN,
nskpjmphpmmOMLJ,nskpklpfltjGIHJ,nskplkrniqKMDJ,nskpllukmrmGMHN,nskpllwmkmmOMLN,
nskplnslpmmOMHN,nskplnpjlOMLJ,nskplnumgtjOELF,nskpmnngkmmKIHJ,nskpnkrgoojKIHN,
nskpogwnjojOILJ,nskpogwggtjGMLF,nskpokveoojGMLJ,nskpokunmrmGMDN,nskpolwhnqOMLJ,
nskponslnqKMHN,nskponslOMLJ,nskponqlpmmKILJ,nskqffnjKIHN,nskqfjqfpmmKELF,
nskqflqnkmmGILJ,nskqflqnnqOEDJ,nskqfluhKIHJ,nskqfluhjojKIHN,nskqfluhnqOIHN,nskqfmtfgtjGELF,
nskqgfqnhrmKMDN,nskqgnogKIDJ,nskqhiqhpmmOMDN,nskqhmvhiqOMLJ,nskqigrhnqKILN,
nskqigsfnqKILF,nskqigrmjojOIHN,nskqigrmmrmGMHJ,nskqikrniqOILN,nskqjhvlKIHF,nskqjmoiiqOILJ,
nskqkgpmlOIHN,nskqleoepmmOMLN,nskqljqhpmmGIDN,nskqlmvlhrmKILN,nskqmhqnhrmOMLF,
nskqmlqglOMLJ,nskqngtfltjKIDN";
var startStyle=new MStyle();
startStyle.textContent="大兴";
var endStyle=new MStyle();
endStyle.textContent="中关村";
var lineStyle=new MStyle();
lineStyle.lineSize=3;
lineStyle.lineColor=0x0000ff;
var startPoint = new MPointOverlay(new MLatLng("lksfiiqlhuGMDJ,nskoknoijojKIHF"), "起点", startStyle);
var endPoint = new MPointOverlay(new MLatLng("lksfiftjnpOMHN,nskqngtfltjKIDN"), "终点", endStyle);
mapObj.drawDriveLine(arrX, arrY, startPoint, endPoint, lineStyle);
removePointById(id)

id 说明:点的id

类型:String

根据Id删除在地图上绘制的点Overlay。
示例--删除id为1000的点。
mapObj.removePointById("1000");
removePolylineById(id)

id 说明:多折线的id

类型:String

根据Id删除在地图上绘制的多折线Overlay。
示例---删除id为1001的多折线。
mapObj.removePolylineById("1001");
removeRectById(id)

id 说明:矩形的id

类型:String

根据Id删除在地图上绘制的矩形Overlay。
示例--删除id为1002的矩形。
mapObj.removeRectById("1002");
removePolygonById(id)

id 说明:多边形的id

类型:String

根据Id删除在地图上绘制的多边形Overlay。
示例--删除id为1003的多边形。
mapObj.removePolygonById("1003");
removeCircleById(id)

id 说明:圆的id

类型:String

根据Id删除在地图上绘制的圆Overlay。
示例---删除id为1004的圆形。mapObj.removeCircleById("1004");
removeRegularPolygonById(id)

id 说明:正多边形的id

类型:String

根据Id删除在地图上绘制的正多边形Overlay。
示例--删除id为1005的正多边形。mapObj.removeCircleById("1005");
removeAllPointOverlays() 删除在地图上绘制的全部点Overlay。
removeAllPolylineOverlays() 删除在地图上绘制的全部多折线Overlay
removeAllPolygonOverlays() 删除在地图上绘制的全部多边形Overlay
removeAllRectOverlays() 删除在地图上绘制的全部矩形Overlay
removeAllCircleOverlays()  删除在地图上绘制的全部圆形Overlay
removeAllRegularPolygonOverlays() 删除在地图上绘制的全部正多边形Overlay
removeAllOverlays() 删除在地图上绘制的全部Overlay

鼠标绘图API返回顶部
方法 返回类型 参数 说明
beginDrawPointOnMap(style)

style 说明:点的样式。

类型:MStyle

进入鼠标绘图状态,允许用户用鼠标在地图上画点。点击右键菜单或者执行quitMouseDraw()方法后停止
beginDrawPolylineOnMap(style)

style 说明:多折线的样式。

类型:MStyle

进入鼠标绘图状态,允许用户用鼠标在地图上画多折线,每单击一次画多折线的一个节点。双击鼠标或点击右键菜单或者执行quitMouseDraw()方法后停止。
beginDrawRectOnMap(style)

style 说明:矩形的样式。

类型:MStyle

进入鼠标绘图状态,允许用户用鼠标在地图上画矩形,拖动绘制矩形。点击右键菜单或者执行quitMouseDraw()方法后停止。
beginDrawPolygonOnMap(style) style 说明:多边形的样式。类型:MStyle 进入鼠标绘图状态,允许用户用鼠标在地图上画多边形,每单击一次画多边形的一个节点。点击右键菜单或者执行quitMouseDraw()方法后停止。
beginDrawCircleOnMap(style)

style 说明:圆的样式。

类型:MStyle

进入鼠标绘图状态,允许用户用鼠标在地图上画圆,单击一次定位圆心,拖动半径画一个圆。双击鼠标或点击右键菜单或者执行quitMouseDraw()方法后停止。
beginDrawRegularPolygonOnMap
(style)

style 说明:正多边形的样式。

类型:MStyle

进入鼠标绘图状态,允许用户用鼠标在地图上画正多边形,单击一次定位圆心,拖动半径画一个正多边形。点击右键菜单或者执行quitMouseDraw()方法后停止
quitMouseDraw() 停止绘图事件,退出鼠标绘图状态

TIP控制API返回顶部
方法 返回类型 参数 说明
spreadTipById(overlayId)

overlayId 说明:overlay的Id。

类型:String

根据Id,向右展开Overlay的tip。
示例--展开Id为“1000”的点的tip。mapObj.spreadTipById("1000");
openTipById(overlayId)

overlayId 说明:overlay的Id。

类型:String

根据Id,向下打开Overlay的tip。
示例--展开Id为“1000”的点的tip。mapObj.openTipById("1000");

扩展应用API返回顶部
方法 返回类型 参数 说明
addRadar(angle, color, radius, fovea, closed, coordX, coordY, show)

angle 说明:雷达视野角度。

angle 类型:数字。

angle 范围:0到360度。

color 说明:雷达的视野颜色,RGB颜色格式。

color 类型:16进制整数。

color 范围:0x000000-0xffffff。

radius 说明:雷达的视野半径。

radius 类型:数字。

fovea 说明:雷达的视野夹角。

fovea 类型:数字。

fovea 范围:0到360度

closed 说明:是否关闭雷达。

closed 类型:Boolean。

coordX 说明:雷达的经度,加密坐标

coordX 类型:字符串

coordY 说明:雷达的纬度,加密坐标。

coordY 类型:字符串

show 说明:创建雷达后,是否显示(true显示,false为隐藏)。如果雷达用false隐藏了,可以调用showRadar(show)方法显示。

show 类型:Boolean

在地图上添加的雷达。
示例--下列代码创建一个雷达,并立即在地图上显示。mapObj.addCity8Radar(0, 0x0066FF, 50, 60, false, "KJONOWRELHL", "MRGYMVMLPH", true);
openRadar(open)

open 说明:控制参数(true为打开雷达,false为关闭雷达)。

类型:Boolean

打开或关闭的雷达
showRadar(show)

show 说明:控制参数(true为显示;false为不显示)。

类型:Boolean

设置是否显示雷达对象
setRadarPos(pos)

pos 说明:雷达的位置。

类型:MLatLng

设置雷达对象的位置
setRadarAngle(angle)

angle 说明:雷达对象的角度。

类型:数字

设置雷达对象的角度
setRadarFov(angle)

angle 说明:张开角度。

类型:数字

设置雷达对象视野的张开角度
setRadarRadius(radius)

radius 说明:视角的半径。

类型:数字

设置雷达对象视野的半径

地图编辑API返回顶部
方法 返回类型 参数 说明
setMapMode(mode)

mode 说明:地图状态。

类型:String。

范围:[MMapMode.EDIT,MMapMode.BROWSE]

设置地图状态。在“浏览”和“编辑”状态之间切换。
示例--下列代码设置地图为编辑状态。mapObj.setMapMode(MMapMode.EDIT);
addGeometry(geometryType, style)

geometryType 说明:几何对象类型。

geometryType 类型:String。

geometryType 范围:

[MGeometry.TYPE_POINT, MGeometry.TYPE_POLYLINE, MGeometry.TYPE_POLYGON] 。

style 说明:几何对象的样式。

style 类型:MStyle

在编辑地图状态下,添加几何对象。执行addGeometry后,用鼠标在地图上标点,或画多折线、多边形。
示例--运行下列代码后,在地图上画多折线。鼠标每点击一下,增加多折线一个节点,双击结束。
//定义缺省的多折线样式 var polylineStyle = new MStyle(); polylineStyle.lineColor = 0x0000ff;
polylineStyle.lineSize = 5; polylineStyle.lineOpacity = 60;
//进入添加多折线状态,在地图上点击一下,
mapObj.addGeometry(MGeometry.TYPE_POLYLINE, polylineStyle);
removeGeometryById(id, geometryType)

id 说明:几何对象的id。

id 类型:String

geometryType:说明:几何对象类型

geometryType 类型:String。

geometryType 范围:

[MGeometry.TYPE_POINT, MGeometry.TYPE_POLYLINE, MGeometry.TYPE_POLYGON]

根据id和类型删除几何对象的tip。
示例--下列代码删除id为“1012e9d8dbe-4bb1-2dc1-b633-32E888D5bedc”的点。
mapObj.removeGeometryById(“1012e9d8dbe-4bb1-2dc1-b633-32E888D5bedc”, MGeometry.TYPE_POINT);
openGeometryTipById(id, geometryType)

id 说明:几何对象的id。

id 类型:String。

geometryType 说明:几何对象类型。

geometryType 类型:String

geometryType 范围:

[MGeometry.TYPE_POINT, MGeometry.TYPE_POLYLINE, MGeometry.TYPE_POLYGON]

根据id和类型展开几何对象的tip。
示例--下列代码展开id为“1012e9d8dbe-4bb1-2dc1-b633-32E888D5bedc”点的tip。
mapObj.openGeometryTipById
(“1012e9d8dbe-4bb1-2dc1-b633-32E888D5bedc”, MGeometry.TYPE_POINT);
importMapData(data)

data 说明:导入的数据,是一个JSON字符串。

类型:String

把使用exportMapData方法导出的点、线、面数据导入到当前地图。导入的数据是JSON格式字符串,因此使用此功能时需要在页面里添加一些JSON工具,如prototype.js(1.5.1以后的版本)。注意:不要使用json.js,这个脚本与FMP有冲突
示例--运行下列代码后,在地图上导入了4个几何对象:2个点、一条多折线和一个多边形。
var data=new Array(); data.push({gType:"pp_mc",imageArray:{},
icoUrl:"components/point/DynamicPoint/01.jpg",contents:" ssssssssssss",titles:"zzzzzzzzz",coordY:"LQGXXPQNKLLLH",coordX:"JIOMSMHOKPHDHH",serialid:"1061"});
data.push({gType:"pp_mc",imageArray:{},
icoUrl:"http://www.mapabc.com/html/images/logo.png",contents:"
",titles:"测试",coordY:"LQGXXKKVPHLH",coordX:"JIOMSKOSONLLLH",serialid:"106O"});
data.push({gType:"section_mc",showTip:true,setTop:true,lineDashStyle:false,maxdisscroll:0,
coordY:["MHGOPKNVNHHHD","LQGXYPHWOLLLL","LQGXXTNQRLLDH","LQGXYRMPRLHHD"],
coordX:["JIOMSMJTQTLLHP","JIOMSLHQKUPLLL","JIOMSMIPKULLLL","JIOMSNMPKHHHL"],
serialid:"107Z",lineOpacity:100,line_size:1,lineColor:16739350,contents:" sssssss",titles:"zzz"}); data.push({gType:"polygon_mc",showTip:true,setTop:true,lineDashStyle:false,maxdisscroll:0,
coordY:["MHGOPNNQLHLP","LQGXYMKPHLLH","LQGXXPMRPLLHD","LQGXXOPVRHLHL","MHGOPNKTPLDLH",
"MHGOPRLRLHPLL"],coordX:["JIOMSOMQLLPHP","JIOMSNPVRNHHLP","JIOMSNMWPPHHHH",
"JIOMSOPOONLHLP","JIOMSPKPKRHHLL","JIOMSOQOIRHLDH"],serialid:"108U",
fillOpacity:100,fillColor:16777215,lineOpacity:100,line_size:1,lineColor:16739350,contents:" dsdsssssssssssssssssss",titles:"测试多边形"}); mapObj.importMapData(Object.toJSON(data)); // Object.toJSON是prototype.js中的方法
exportMapData() 把当前地图上所有的点、线、面几何对象数据导出。导出的数据是一个JSON字符串,由onExportMapData事件返回。
示例--下列代码触发onExportMapData。mapObj.exportMapData();
submitPictureURL(gtype,serialId,urls,descs)

gtype 说明:几何对象类型。

gtype 类型:String。

gtype 范围:

[MGeometry.TYPE_POINT, MGeometry.TYPE_POLYLINE, MGeometry.TYPE_POLYGON]

gtype 说明:对象唯一ID。

gtype 类型:String。

urls 说明:图片的URL地址

urls 类型:String

descs 说明:图片的描述

descs 类型:String

将图片的URL提供给MyMaps的编辑点,此方法只针MyMays的地图标注点有效

方法 参数 说明
onMapInited

event.type=”onMapInited” event.args=mapId,zoomLevel,centerLng,centerLat,upperLeftLng,
upperLeftLat,bottomRightLng,bottmRightLat

args的值是一个以“,”分隔的字符串,其中:

mapId:地图的Id

zoomLevel:地图当前的zoom值

centerLng:地图中心点的经度坐标

centerLat:地图中心点的纬度坐标

upperLeftLng:地图左上角经度

upperLeftLat:地图左上角纬度

bottomRightLng:地图右下角经度

bottmRightLat:地图右下角纬度

当地图初始化完成时触发。此时地图可以进行正常操作。
示例--"fmptest,10,JIOMSMJQQTHDHD,LQGWWOHNQHLDH,JINMWTLRIOLLDH,LQGSTLONNDLLL,
JIOMXTKNLQHHHD,MHGOWPIPOHDLH”
onMapZoomed

event.type=”onMapZoomed” event.args=mapId,zoomLevel,centerLng,centerLat,upperLeftLng,
upperLeftLat,bottomRightLng,bottmRightLat

args的值是一个以“,”分隔的字符串,其中:

mapId:地图的Id

zoomLevel:地图当前的zoom值

centerLng:地图中心点的经度坐标

centerLat:地图中心点的纬度坐标

upperLeftLng:地图左上角经度

upperLeftLat:地图左上角纬度

bottomRightLng:地图右下角经度

bottmRightLat:地图右下角纬度

当地图放大或缩小时触发。
示例--"fmptest,13,JIOMSSIQKSLHHH,LQGXPSINPLLLD,JIOMSLJTONLDLL,LQGWVSMWKHHHH,JIOMTOQWRMLLDP,LQGXTRMWRHDHL”
onMapMoved

event.type=”onMapMoved” event.args=mapId,zoomLevel,centerLng,centerLat,upperLeftLng,
upperLeftLat,bottomRightLng,bottmRightLat

args的值是一个以“,”分隔的字符串,其中:

mapId:地图的Id

zoomLevel:地图当前的zoom值

centerLng:地图中心点的经度坐标

centerLat:地图中心点的纬度坐标

upperLeftLng:地图左上角经度

upperLeftLat:地图左上角纬度

bottomRightLng:地图右下角经度

bottmRightLat:地图右下角纬度

当地图移动时触发。
示例--"fmptest,14,JIOMSOITMLDLD,LQGXSKHSDHLL,JIOMSKOQITDLLH,LQGXQKKNKHHHH,JIOMSRMWPNHHLL,LQGXTTOWKLHLL”
onMapDoubleClick

event.type=”onMapDoubleClick” event.args=mapId,zoomLevel,centerLng,centerLat,blockNo

args的值是一个以“,”分隔的字符串,其中:

mapId:地图的Id

zoomLevel:地图当前的zoom值

centerLng:地图中心点的经度坐标

centerLat:地图中心点的纬度坐标

blockNo:图块编号

当鼠标在地图上双击时发生。FMP缺省的双击事件的处理是放大操作。如果需要,可以在程序中调用switchDefaultdBClickProcessor方法允许或禁止缺省的双击事件处理。
示例--"fmptest,10,JINMRQIOMUHHDL,MHGOQNLVKPHLL,6015021012”
onPointdrawn

event.type=”onPointdrawn” event.args=mapId,zoomLevel,pointLng,pointLat,id args的值是一个以“,”分隔的字符串,其中:

mapId:地图的Id

zoomLevel:地图当前的zoom值

pointLng:点的经度坐标

pointLat:点的纬度坐标。

id:点的Id,引擎随机生成的一个guid

当用鼠标在地图上画点时触发。
示例--"fmptest,11,JINMPSPONULLHH,MHGORLQPDLPL, 85942788-19e9-bdb4-3b10-3B8A891492e9”
onPolylineDrawn

event.type=”onPolylineDrawn” event.args=mapId,zoomLevel,point1Lng,point1Lat,point2Lng,point2Lat,…… args的值是一个以“,”分隔的字符串,其中:

mapId:地图的Id

zoomLevel:地图当前的zoom值 point1Lng,point1Lat,point2Lng,point2Lat,……:一个坐标序列,表示多折线的每一个节点。节点坐标按照经度在前,纬度在后顺序排列。

id:多折线的Id,引擎随机生成的一个guid

当用鼠标在地图上画完一条多折线时触发。
示例--”fmptest,12,JIOMSLHNMTLHDL,LQGXVMOSQDHHL,JIOMSMKNRPHLHH,LQGXVQQTRHLLL,
JIOMSPJTKPHHL,LQGXVROSQLLDH,JIOMSSHNQQHHLH,LQGXVROSQLHHL,JIOMSSHNQQLLLH,
LQGXVROSQHLLD, 04ca9775-b93b-dfa8-a5ec-3B8C42CBee91”
onRectdrawn

event.type=”onRectdrawn” event.args=mapId,zoomLevel,point1Lng,point1Lat,point2Lng,point2Lat,id args的值是一个以“,”分隔的字符串,其中:

mapId:地图的Id

zoomLevel:地图当前的zoom值

point1Lng,point1Lat,point2Lng,point2Lat:表示矩形对角线上的两个顶点。每对坐标都是经度在前,纬度在后。 根据鼠标画矩形时的顺序,这两个点有可能为左上和右下或者右上和左下。

id:矩形的Id,引擎随机生成的一个guid

当用鼠标在地图上画完一个矩形时触发。
示例--”fmptest,10,JIOMRRHWLQHHLH,LQGVVNKTOHHHL,JIOMRRHWLQDHDH,LQGVVMKOLLLH,4958e121-58bb-c5c6-20f3-0E5621B133cd”
onPolygonDrawn

event.type=”onPolygonDrawn” event.args=mapId,zoomLevel,point1Lng,point1Lat,point2Lng,point2Lat,……,id args的值是一个以“,”分隔的字符串,其中:

mapId:地图的Id

zoomLevel:地图当前的zoom值 point1Lng,point1Lat,point2Lng,point2Lat,……:一个坐标序列,表示多边形的每一个顶点。节点坐标按照经度在前,纬度在后顺序排列。

id:多边形的Id,引擎随机生成的一个guid

当用鼠标在地图上画完一个多边形时触发。
示例--”fmptest,12,JIOMSPQOMMLLLL,LQGXPKINKHHLH,JIOMTKOPIRDHLL,LQGXPLISNDDLL,
JIOMTKJNNRLDDL,LQGWWLQOMHHLH,JIOMSPOUOTHLLL,LQGWWOHPJHHHH,
29716761-a735-d524-3137-3B8E9E7D993e”
onCircleDrawn

event.type=”onCircleDrawn” event.args=mapId,zoomLevel,point1Lng,point1Lat,point2Lng,point2Lat,dx,dy,id args的值是一个以“,”分隔的字符串,其中:

mapId:地图的Id

zoomLevel:地图当前的zoom值

point1Lng,point1Lat,point2Lng,point2Lat:两对坐标,第一对是圆心坐标,第二对是圆的外接矩形的一个顶点。 每对坐标都是经度在前,纬度在后。根据鼠标画圆形时的顺序,第二对坐标可能为外接矩形的任一个顶点。

dx,dy:圆的水平方向半径和垂直方向半径,如果是正圆,这两个值是相等的。半径的单位是“米”。

id:圆形的Id,引擎随机生成的一个guid

当用鼠标在地图上画完一个圆形时触发。
示例--”fmptest,12,gygLHDH,gygLLHH,gygDLHD,gygHLHL,
4908.37103240815,27580.3705630553,188cc0b6-91d3-7923-0292-3B915EE63983”
onRegularPolygonDrawn

event.type=”onRegularPolygonDrawn” event.args=mapId,zoomLevel,point1Lng,point1Lat,point2Lng,point2Lat,dx,dy,id args的值是一个以“,”分隔的字符串,其中:

mapId:地图的Id

zoomLevel:地图当前的zoom值

point1Lng,point1Lat,point2Lng,point2Lat:两对坐标,第一对是正多边形的圆心坐标, 第二对是画正多边形时鼠标拖动结束的位置,即正多边形的一个顶点。每对坐标都是经度在前,纬度在后。

dx,dy:正多边形的半径(即外接圆的半径),这两个值是相等的。半径的单位是“米”。

id:正多边形的Id,引擎随机生成的一个guid

当用鼠标在地图上画完一个正多边形时触发。
示例--”fmptest,12,gygLLLH,gygLLLH,gygLLDP,gygHLHL,
9103.55205810807,9103.55205810807572ae56b-89b0-1cab-69a1-3B9381B63f64”
onGetMapBoundCallback

event.type=”onGetMapBoundCallback”
event.args=mapId,zoomLevel,upperLeftLng,
upperLeftLat,bottomRightLng,bottmRightLat

args的值是一个以“,”分隔的字符串,其中:

mapId:地图的Id

zoomLevel:地图当前的zoom值

upperLeftLng:地图左上角经度

upperLeftLat:地图左上角纬度

bottomRightLng:地图右下角经度

bottmRightLat:地图右下角纬度

调用getMapBounds后触发的事件。在此事件中返回getMapBounds的结果。
示例--”fmptest,10,JINMWTLRIOLHLL,LQGSTLONNHHDH,JIOMXTKNLQLHLH,MHGOWPIPOHHHH”
onGetCoordNumCallback

event.type=”onGetCoordNumCallback” event.args=mapId,plainLng,plainLat args的值是一个以“,”分隔的字符串,其中:

mapId:地图的Id

lainLng:返回的明码经度

plainLat:返回的明码纬度

调用getMapBounds()后触发的事件。在此事件中返回getCoordEncToPlain的结果。
示例--”fmptest,116.392,39.916”
onGetCoordStrCallback

event.type=”onGetCoordStrCallback”

event.args= mapId,encLng,encLat

args的值是一个以“,”分隔的字符串,其中:

mapId:地图的Id

encLng:返回的加密经度

encLat:返回的加密纬度

调用getCoordPlainToEnc后触发的事件。在此事件中返回getCoordPlainToEnc的结果。
示例--”fmptest,JIOMSSQPLDL,LQGXQRDHLL”
onGetXYByLonLatCallBack

event.type=”onGetXYByLonLatCallBack”

event.args=mapId,scrX,scrY

args的值是一个以“,”分隔的字符串,其中:

mapId:地图的Id

scrX:返回的屏幕X坐标

scrY:是返回的屏幕Y坐标 注意,屏幕中心的坐标为(128,128)

调用getCoordMapToScreen后触发的事件。在此事件中返回getCoordMapToScreen的结果。
示例--”fmptest,160.95,-21.65”
onRadarInited

event.type=”onRadarInited”

event.args=mapId,object0,object1

args的值是一个以“,”分隔的字符串,其中:

mapId:地图的Id

object0,object1:用户定义的两个参数

调用MMap.addRadar添加雷达,雷达初始化完成后触发此事件
onRadarAngleChanged

event.type=”onRadarAngleChanged”

event.args=mapId,angle,object

args的值是一个以“,”分隔的字符串,其中:

mapId:地图的Id

angle:雷达视野旋转后的角度

object:用户定义的参数

当雷达视野旋转时触发此事件
onRadarPosChanged

event.type=”onRadarPosChanged”

event.args=mapId,lng,lat args的值是一个以“,”分隔的字符串,其中:

mapId:地图的Id

lng:移动后的经度

lat:移动后的纬度

当雷达位置移动时触发此事件
onGeometryCreated

event.type=”onGeometryCreated”

event.args=mapId,jsonString

args的值是一个以“,”分隔的字符串,其中:

mapId:地图的Id

jsonString:创建的几何对象的JSON字符串

在地图编辑状态下,当创建了一个几何对象时触发。绘制点时鼠标在地图上一点击就触发此事件,而多折线和多边形是绘制完毕,双击鼠标左键结束时触发。
示例--”fmptest,{"geometryData":{"serialid":"103ad037452-435f-6f8d-b36f-328D8562c0a7",
"coordX":"JIOMXRIOLMHLHH","coordY":"LQGWRNHQOLHDH","titles":"2","contents":"",
"notStyleContent":"","icoUrl":"http://localhost:8080/fmp/components/point/DynamicPoint/01.jpg",
"imageArray":{},"contentImageArray":{}},"geometryType":"point"}”
onGeometryChanged

event.type=”onGeometryChanged”

event.args=mapId,jsonString

args的值是一个以“,”分隔的字符串,其中:

mapId:地图的Id

jsonString:几何对象修改后的JSON字符串

在地图编辑状态下,当修改了一个几何对象时触发。修改包括移动点的位置、移动多折线或多边形节点的位置,以及修改它们的属性等。
示例--“onGeometryChanged args: fmptest,
{"geometryData":{"serialid":"103ad037452-435f-6f8d-b36f-328D8562c0a7",
"coordX":"JIOMSQITJMPPDH","coordY":"LQGXSQQWLHHHP","titles":"我的位置",
"contents":"","notStyleContent":"","icoUrl":"http://localhost:8080/fmp/components/point/DynamicPoint/01.jpg",
"imageArray":{},"contentImageArray":{}},"geometryType":"point"}”
onGeometryRemoved

event.type=”onGeometryRemoved”

event.args=mapId,jsonString

args的值是一个以“,”分隔的字符串,其中:

mapId:地图的Id

jsonString:删除的几何对象的JSON字符串

在地图编辑状态下,当删除了一个几何对象时触发。
示例--“fmptest,{"id":"103ad037452-435f-6f8d-b36f-328D8562c0a7","geometryType":"point"}”
onExportMapData

event.type=”onExportMapData”

event.args=mapId,jsonString

args的值是一个以“,”分隔的字符串,其中:

mapId:地图的Id

jsonString:整个地图的几何对象的JSON字符串

执行exportMapData方法时,通过此事件返回整个地图上几何对象数据的JSON字符串
示例--“fmptest,[{"coordX":"JIOMQSMURMLLHH","coordY":"LQGUSLJVNLHLD","contents":
"","icoUrl":"http://localhost:8080/fmp/components/point/DynamicPoint/01.jpg","imageArray":{},
"notStyleContent":"","serialid":"101153aede8-d539-399c-4944-3285FF8A28d8","titles":"点1",
"setTop":true,"gType":"pp_mc"},{"coordX":"JIOMTNQVQPLHPH","coordY":"LQGVSOMONLHHP",
"contents":"","icoUrl":"http://localhost:8080/fmp/components/point/DynamicPoint/01.jpg",
"imageArray":{},"notStyleContent":"","serialid":"1023bd22123-a593-5f68-9913-3285ED3Ba653","titles":"点2","setTop":true,"gType":"pp_mc"}]”
onPressPoint

event.type=”onPressPoint”

event.args=mapId,clickLng,clickLat,id

args的值是一个以“,”分隔的字符串,其中:

mapId:地图的Id

pclickLng,clickLat:鼠标点击位置的经度、纬度坐标

id:点对象的Id

点击一个点时触发
示例--“fmptest,8,JIPMRRKWQTDDDL,MIGPXKKNRHHDP,1000” 示例代码:
mapObj.addEventListener(MMap.EVENT_POINT_CLICKED, pointClicked);
function pointClicked(event)
{
output(event);
if (confirm("删除该点吗?"))
{
mapObj.removePointById(event.args.split(",")[4]);
}
}
运行后,当用鼠标在点上单击时,会提示是否删除该点,如果选择“确定”,该点被删除。
onPressLine

event.type=”onPressLine”

event.args=mapId,mapLevel,clickLng,clickLat,id

args的值是一个以“,”分隔的字符串,其中:

mapId:地图的Id

pclickLng,clickLat:鼠标点击位置的经度、纬度坐标

id:多折线对象的Id

点击一条多折线时触发
示例--“fmptest,8,JIPMRRKWQTDDDL,MIGPXKKNRHHDP,1001”
onMapClick

event.type=”onMapClick ” event.args=mapId,zoomLevel,centerLng,centerLat,blockNo

args的值是一个以“,”分隔的字符串,其中:

mapId:地图的Id

zoomLevel:地图当前的zoom值

centerLng:地图中心点的经度坐标

centerLat:地图中心点的纬度坐标

blockNo:图块编号

左键单击地图触发事件
示例--“fmptest,10,JIOMSSJOPMHHLD,LQGWPLKSRDHLD,5916536001”
onPressPolygon

event.type=”onPressPolygon”

event.args=mapId,clickLng,clickLat,id

args的值是一个以“,”分隔的字符串,其中:

mapId:地图的Id

pclickLng,clickLat:鼠标点击位置的经度、纬度坐标

id:多边形对象的Id

点击一个多边形时触发
示例--“fmptest,8,JIPMRRKWQTDDDL,MIGPXKKNRHHDP,1002”
onPopupMenuClick

event.type=”onPopupMenuClick” event.args=mapId,zoomLevel,centerLng,centerLat,upperLeftLng,upperLeftLat, bottomRightLng,bottmRightLat,clickLng,clickLat,menuid

args的值是一个以“,”分隔的字符串,其中:

mapId:地图的Id

zoomLevel:地图当前的zoom值

centerLng:地图中心点的经度坐标

centerLat:地图中心点的纬度坐标

upperLeftLng:地图左上角经度

upperLeftLat:地图左上角纬度

bottomRightLng:地图右下角经度

bottmRightLat:地图右下角纬度

clickLng:右击单击的经度坐标

clickLat:右击单击的纬度坐标

menuid:菜单项ID

右键菜单被单击时触发事件
示例--“fmptest,10,JIOMSOKUJULLDH,LQGVUTIRLLLLL,JINMWTLRIOLLPH,MHGOWPIPOHDLL,
JIOMXTKNLQHLHL,LQGSTLONNHLLH,JIOMXTKNLQHLHL,LQGSTLONNHLLH,menu1”
onMouseOverSimplePoint

event.type=”onPressPolygon”

event.args=mapId,id

args的值是一个以“,”分隔的字符串,其中:

mapId:地图的Id

id:点对象的Id

鼠标移入自定义点时触发的事件。
示例--“fmptest,8”

事件处理类MEventControl

  事件处理类是所有可以接收事件的类的父类。它封装了对事件的处理操作,由它接收从flash发出的事件,然后再派发到事件处理函数中。
构造方法返回顶部
构造方法 参数 说明
MEventControl() 一般不会直接调用MEventControl的构造函数,而是在其子类的构造方法中调用。调用MEventControl的构造方法后,其子类就具有了事件处理的能力

方法
地图操作API返回顶部
方法 返回类型 参数 说明
addEventListener(eventType, functionName, object)

注册成功返回true,失败返回false。

注册失败的原因可能有:已经存在同名同对象方法

eventType 说明:事件类型。

eventType 类型:String。

functionName 说明:事件函数的引用

functionName 类型:Object。

object 说明:方法所属的对象,如果缺省,则使用方法自身的引用。

object 类型:Object

添加(注册)事件处理函数,当eventType事件发生时,执行object对象的functionName方法。可以向一个事件注册多个事件处理函数,在事件发生时,事件处理函数按注册时的顺序执行
示例--下面的代码片段定义了一个函数,执行的操作为打开鹰眼。然后把这个函数注册到地图初始化完成事件上,当地图初始化完成事件发生时,执行该方法,结果为地图初始化完成后,显示鹰眼。
function mapInited(event) { mapObj.showNavigator(true); } mapObj.addEventListener(MMap.EVENT_MAP_INITIALIZED, mapInited);
removeEventListener(eventType, functionName, object)

卸载成功返回true,失败返回false。

卸载失败的原因可能有:函数列表中没有该函数

eventType 说明:事件类型。

eventType 类型:String。

functionName 说明:事件函数的引用functionName 类型:Object。

object 说明:方法所属的对象,必须与注册时使用的值相同。

object 类型:Object。

卸载(反注册)事件处理函数
示例--下面的代码片段卸载了一个初始化完成事件函数。 mapObj.removeEventListener(MMap.EVENT_MAP_INITIALIZED, mapInited);
removeAllEventListeners() 清空函数列表,卸载(反注册)全部事件处理函数
示例--下面的代码片段把mapObj的事件处理函数全部卸载。 mapObj.removeAllEventListeners();
dispatchMEvent(eventType, event)

eventType 说明:事件类型。

eventType 类型:String。

event 说明:事件参数,事件类型不同,参数也不同。

event 类型:Object

触发eventType类型的事件,执行监听该事件的方法
示例--下面的代码片段触发mapObj对象的鼠标双击事件,并传入相应的事件参数。
var event = new Object();
event.type = MMap.EVENT_MAP_DBCLICK;
event.args.zoom = 10;
event.args.center = new MLatLng("qqhrqjgojKHEJ", "oipgkglllgOLIJ");
mapObj.dispatchMEvent(MMap.EVENT_MAP_DBCLICK, event);

地图类型枚举类MMapViews

  地图类型枚举类用于设定地图类型。可选的地图类型有普通地图、航拍图、地图和航拍的混合图。 注意:FMP1.0只支持普通地图。
构造方法

属性返回顶部
方法 类型 说明
MAP String 静态属性,表示普通地图类型
SATELLITE String 静态属性,表示航拍地图类型
HYBRID String 静态属性,表示混合地图类型,即普通地图与航拍地图叠加

地图状态枚举类MMapMode

  地图状态枚举类用于设定地图的状态。可选的地图状态有浏览状态和编辑状态。 构造方法

属性返回顶部
方法 类型 说明
BROWSE String 静态属性,表示地图浏览状态
EDIT String 静态属性,表示地图编辑类型

  几何对象枚举类用于设置在地图编辑状态下添加的几何对象类型。可选的对象类型有点、多折线和多边形。
构造方法

方法 类型 说明
TYPE_POINT String 静态属性,表示地图浏览状态
EDIT String 静态属性,表示地图编辑类型

经纬度坐标类MLatLng

  包装一对经纬度坐标,用于标定一个位置。
构造方法返回顶部
var loc = new MLatLng("KJONOWRELHL, MRGYMVMLPH");
构造方法 参数 说明
MLatLng(latitude, longitude)

latitude 说明:纬度。

latitude 类型:String 。

longitude 说明:经度。

longitude 类型:String。

构造一个MLatLng对象。 注意:参数的顺序是纬度在前,经度在后,与Lat、Lng的顺序对应
示例--var loc = new MLatLng("MRGYMVMLPH","KJONOWRELHL");
MLatLng(coord)

coord 说明:表示经纬度的一个字符串,形式为"longitude,latitude",按习惯,经度在前,纬度在后,使用逗号分隔。

类型:String

构造一个MLatLng对象。 注意:此构造方法是为方便用户使用设置的,注意参数不同
示例--var loc = new MLatLng("KJONOWRELHL, MRGYMVMLPH");

方法 类型 说明
lat String 纬度
lng String 经度

经纬度坐标类MXY

  包装一对经纬度坐标,用于标定一个位置。
构造方法返回顶部
构造方法 参数 说明
MXY (x, y)

x:

说明: 经度

类型:String

y:

说明:纬度

类型:String

构造一个MXY对象。 注意:参数的顺序是经度在前,纬度在后,与x、y的顺序对应。
示例--var loc = new MXY ("KJONOWRELHL","MRGYMVMLPH");

方法 类型 说明
x String 经度
y String 纬度

地图选项类MMapOptions

  包装地图设置选项,初始化地图时使用。
构造方法返回顶部
构造方法 参数 说明
MMapOptions() 构造一个MMapOptions对象
示例--var mapOptions = new MMapOptions();
mapOptions.mapId = "fmptest";
mapOptions.zoomLevel = 10;
mapOptions.center = new MLatLng("nskoknoijojKIHF", "lksfiiqlhuGMDJ");
var mapObj = new MMap("mapObj", mapOptions);

方法 类型 说明
mapId String 地图的id
mapView MMapViews 地图类型
zoomLevel

int

范围:3-17

zoom值
center MLatLng 地图的中心
rotation

foalt

范围:0-360度

地图的旋转角度
miniMap

boolean

范围:true ,False

缺省:False

设置是否初始化显示鹰眼地图
fixOverlap

boolean

范围:True ,False

缺省:True

设置是否解决遮挡问题,当启用Mapabc全屏地图显示时,此值必须初始化为false
mapAdaptiveMode

int

范围:True ,False

缺省:0

设置地图自适应视野模式, 0为当前自动设置的级别,1为在自动设置级别的基础上加1,而-1为在自动设置级别的基础上减1

图形样式类MStyle

  包装点、线、面的样式属性。
构造方法返回顶部
构造方法 参数 说明
MStyle() 构造一个MStyle对象
示例--var pointStyle = new MStyle();
pointStyle.lineColor = 0xff0000;
pointStyle.lineSize = 3;
pointStyle.fillColor = 0xddaabb;
pointStyle.fillOpacity = 50;
pointStyle.textColor = 0x00ff00;
pointStyle.textContent = "银谷大厦";

方法 类型 说明
lineColor

16进制整数

范围: 0x000000-0xffffff

缺省: 0x000000,黑色

线条颜色,RGB颜色格式
lineOpacity

int

范围:0-100

缺省:100 百分之百不透明

线条的不透明度
lineSize

int

缺省:1

线条的宽度
lineDash

boolean

缺省:false 实线

线条是否为虚线
fillColor

16进制整数

范围: 0x000000-0xffffff

缺省: 0xffffff,白色

填充颜色,RGB颜色格式
fillOpacity

int

范围:0-100

缺省:100 百分之百不透明

填充的不透明度
sideCount

int

范围:大于等于3

缺省:8

正多边形的边数,只对正多边形适用
labelColor

16进制整数

范围: 0x000000-0xffffff

缺省: 0x000000,黑色

tips的label文字颜色,RGB颜色格式
textContent

String

缺省:"" 内容为空的字符串

tips的文本内容
canBeTop

Boolean

缺省:true

是否允许放在最上层,当鼠标移到对象上时,缺省情况该对象会置于最上层
showTip

Boolean

缺省:true

是否允许显示tip
carSpeed

foalt

范围: 1-100

缺省:5

设置公交、驾车路线演示时小车的速度。carSpeed数值越大,小车运行速度越快
labels

String

缺省:"" 内容为空的字符串

设置地图标点的labels属性
tipWidth

int

缺省:220

设置标点TIP的宽度
isShowLabels

Boolean

缺省:false

设置是否显示地图标点的labels信息
isLabelsBorder

Boolean

缺省:true

设置地图标点的labels是否有边框
isLabelsBackground

Boolean

缺省:true

设置地图标点的labels是否有背景色
borderColor

16进制整数

范围: 0x000000-0xffffff

缺省: 0x000000,黑色

设置地图标点的labels的边框色
backgroundColor

16进制整数

范围: 0x000000-0xffffff

缺省: 0x000000,黑色

设置地图标点的labels的背景色
textSize

int

范围: 1-100

缺省:5

设置地图标点的labels的文字大小
isLabelsFontBold

Boolean

缺省:false

设置地图标点的labels的文字是否加粗

  覆盖在地图表面,随地图移动而移动的所有对象都叫覆盖图(Overlay)。MOverlay是所有几何图形类的父类。它的子类有:MPointOverlay,MPolylineOverlay,MPolygonOverlay,MRectOverlay,MRegularPolygonOverlay,MCircleOverlay等。
继承
MEventControl->MOverlay
构造方法返回顶部
构造方法 参数 说明
MOverlay(id)

id 说明:覆盖图的Id,可选。如果没有指定,则按MOverlay实例的顺序编号。

类型:String

构造一个MOverlay对象,一般不直接创建MOverlay的实例,而是创建其子类的实例,在子类的初始化过程中调用MOverlay的构造函数
示例--var pointStyle = new MStyle();
pointStyle.lineColor = 0xff0000;
pointStyle.lineSize = 3;
pointStyle.fillColor = 0xddaabb;
pointStyle.fillOpacity = 50;
pointStyle.textColor = 0x00ff00;
pointStyle.textContent = "大兴";
var point = new MPointOverlay(new MLatLng("lksfiiqlhuGMDJ,nskoknoijojKIHF"), "出发点", pointStyle, "1000");

方法 类型 说明
TYPE_POINT String 静态属性,表示点
TYPE_POLYLINE String 静态属性,表示多折线
TYPE_RECT String 静态属性,表示多折线
TYPE_POLYGON String 静态属性,表示多边形
TYPE_CIRCLE String 静态属性,表示圆形
TYPE_REGULARPOLYGON String 静态属性,表示正多边形
type String MOverlay的类型 范围:TYPE_POINT、TYPE_POLYLINE、TYPE_RECT、TYPE_POLYGON、TYPE_CIRCLE、TYPE_REGULARPOLYGON

点类MPointOverlay

  在地图上显示为一个有位置的点,有自己的样式和tip,能够接收事件。
继承
MEventControl->MOverlay->MPointOverlay
构造方法返回顶部
构造方法 参数 说明
MPointOverlay(pos, label, style, id)

pos 说明:点的位置

pos 类型:MLatLng

label 说明:点的标注,即点在地图上显示的小标签内容。

label 类型:String

style 说明:点的样式,可选。

style 类型:MStyle

id 说明:可选。可以设置点的id,如果不设定,组件会自动生成。如果使用此参数,必须同时也使用style参数。

id 类型:String

构造一个MPointOverlay对象
示例--var polylineStyle = new MStyle();
polylineStyle.lineColor = 0xff0000;
polylineStyle.lineSize = 5;
var polyline = new MPolylineOverlay([new MLatLng("qqhrqjgojKHEJ", "oipgkglllgOLIJ"),
new MLatLng("qqhrqfhohODMF","oipgkgmgljOLIJ"),
new MLatLng("qqhrplmojOLMJ","oipgkgmihkGHIN")],polylineStyle, "1001");

方法 类型 说明
pos MLatLng 点的位置
label String 点的标注内容
style MStyle 点的样式

多折线类MPolylineOverlay

  在地图上显示为一条具有若干个节点的多折线,有自己的样式和tip,能够接收事件。
继承
MEventControl->MOverlay->MPolylineOverlay
构造方法返回顶部
构造方法 参数 说明
MPolylineOverlay(points, style, id)

points 说明:节点数组,每个数组元素是一个MLatLng对象。

points 类型:Array

style 说明:多折线的样式,可选。

style 类型:MStyle

id:说明:可选。可以设置多折线的id,如果不设定,组件会自动生成。如果使用此参数,必须同时也使用style参数。

id 类型:String

构造一个MPolylineOverlay对象
示例--var polygonStyle = new MStyle();
polygonStyle.lineColor = 0xff0000;
polygonStyle.lineSize = 3;
polygonStyle.fillColor = 0x00ff00;
polygonStyle.fillOpacity = 50;
var polygon = new MPolygonOverlay([new MLatLng("qqhrqjgojKHEJ", "oipgkglllgOLIJ"),
new MLatLng("qqhrqfhohODMF","oipgkgmgljOLIJ"),
new MLatLng("qqhrplmojOLMJ","oipgkgmihkGHIN")],polygonStyle, "1002");

方法 类型 说明
points Array 节点数组,每个数组元素是一个MLatLng对象
style MStyle 多折线的样式

多边形类MPolygonOverlay

  在地图上显示为一条具有若干个节点的多边形,有自己的样式和tip,能够接收事件。
继承
MEventControl->MOverlay->MPolygonOverlay
构造方法返回顶部
构造方法 参数 说明
MPolygonOverlay(points, style, id)

points 说明:节点数组,每个数组元素是一个MLatLng对象。

points 类型:Array

style 说明:多边形的样式,可选。

style 类型:MStyle

id 说明:可选。可以设置多边形的id,如果不设定,组件会自动生成。如果使用此参数,必须同时也使用style参数。

id 类型:String

构造一个MPolygonOverlay对象
示例--var polygonStyle = new MStyle();
polygonStyle.lineColor = 0xff0000;
polygonStyle.lineSize = 3;
polygonStyle.fillColor = 0x00ff00;
polygonStyle.fillOpacity = 50;
var polygon = new MPolygonOverlay([new MLatLng("qqhrqjgojKHEJ", "oipgkglllgOLIJ"), new MLatLng("qqhrqfhohODMF","oipgkgmgljOLIJ"), new MLatLng("qqhrplmojOLMJ","oipgkgmihkGHIN")],polygonStyle, "1002");

方法 类型 说明
points Array 节点数组,每个数组元素是一个MLatLng对象
style MStyle 多边形的样式

圆类MCircleOverlay

  在地图上显示为一个圆,有自己的样式和tip,能够接收事件。
继承
MEventControl->MOverlay->MCircleOverlay
构造方法返回顶部