|  |  |  | 
|---|
|  |  |  | style: "normal" //设置地图风格为高端黑 | 
|---|
|  |  |  | } | 
|---|
|  |  |  | map.setMapStyle(mapStyle); | 
|---|
|  |  |  | var showZoom = 12; | 
|---|
|  |  |  | var showZoom = 13; | 
|---|
|  |  |  | if(arguments.length == 2) { | 
|---|
|  |  |  | map.centerAndZoom(new BMap.Point(arguments[0], arguments[1]), showZoom); | 
|---|
|  |  |  | } else if(arguments.length == 1) { | 
|---|
|  |  |  | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } | 
|---|
|  |  |  | })(); | 
|---|
|  |  |  | // 坐标适配器 | 
|---|
|  |  |  | moralMap.Bounds = function (baiduBounds) { | 
|---|
|  |  |  | if(!!baiduBounds){ | 
|---|
|  |  |  | this.northeastLng = baiduBounds.xl.lng;//东北角经度,大一点 | 
|---|
|  |  |  | this.northeastLat = baiduBounds.xl.lat;//东北角纬度,大一点 | 
|---|
|  |  |  | this.southwestLng = baiduBounds.Ol.lng;//西北角经度坐标,小一点 | 
|---|
|  |  |  | this.southwestLat = baiduBounds.Ol.lat;//西北角纬度坐标,小一点 | 
|---|
|  |  |  | }else{ | 
|---|
|  |  |  | this.northeastLng = null;//东北角经度,大一点 | 
|---|
|  |  |  | this.northeastLat = null;//东北角纬度,大一点 | 
|---|
|  |  |  | this.southwestLng = null;//西北角经度坐标,小一点 | 
|---|
|  |  |  | this.southwestLat = null;//西北角纬度坐标,小一点 | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } | 
|---|
|  |  |  | moralMap.getBounds = function() { | 
|---|
|  |  |  | return baiduMap.getBounds(); //即时bounds; | 
|---|
|  |  |  | return new moralMap.Bounds(baiduMap.getBounds()); //即时bounds; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | moralMap.getMaxBounds = function() { | 
|---|
|  |  |  | var key = "_" + moralMap.layer() + "_bounds"; | 
|---|
|  |  |  | return this[key]; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | moralMap.setMaxBounds = function(bounds) { | 
|---|
|  |  |  | moralMap.setMaxBounds = function(bs) { | 
|---|
|  |  |  | var key = "_" + moralMap.layer() + "_bounds"; | 
|---|
|  |  |  | var _bounds = this[key]; //累积数据 | 
|---|
|  |  |  | if(_bounds == undefined) { | 
|---|
|  |  |  | _bounds = {}; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | if(bounds == undefined) { | 
|---|
|  |  |  | bounds = baiduMap.getBounds(); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | var _bounds = !!this[key]?this[key]:new moralMap.Bounds(); //累积数据 | 
|---|
|  |  |  | //记录最大边界 | 
|---|
|  |  |  | _bounds["Fe"] = _bounds['Fe'] || bounds['Fe']; //东北角纬度,大一点 | 
|---|
|  |  |  | _bounds["Ge"] = _bounds['Ge'] || bounds['Ge']; //东北角经度,大一点 | 
|---|
|  |  |  | _bounds["Ke"] = _bounds['Ke'] || bounds['Ke']; //西北角纬度坐标,小一点 | 
|---|
|  |  |  | _bounds["Le"] = _bounds['Le'] || bounds['Le']; //西北角经度坐标,小一点 | 
|---|
|  |  |  | _bounds["Fe"] = bounds['Fe'] > _bounds["Fe"] ? bounds['Fe'] : _bounds["Fe"]; //东北角纬度,大一点 | 
|---|
|  |  |  | _bounds["Ge"] = bounds['Ge'] > _bounds["Ge"] ? bounds['Ge'] : _bounds["Ge"]; //东北角经度,大一点 | 
|---|
|  |  |  | _bounds["Ke"] = bounds['Ke'] < _bounds["Ke"] ? bounds['Ke'] : _bounds["Ke"]; //西北角纬度坐标,小一点 | 
|---|
|  |  |  | _bounds["Le"] = bounds['Le'] < _bounds["Le"] ? bounds['Le'] : _bounds["Le"]; //西北角经度坐标,小一点 | 
|---|
|  |  |  | _bounds.northeastLng = _bounds.northeastLng || bs.northeastLng; | 
|---|
|  |  |  | _bounds.northeastLat = _bounds.northeastLat || bs.northeastLat; | 
|---|
|  |  |  | _bounds.southwestLng = _bounds.southwestLng || bs.southwestLng; | 
|---|
|  |  |  | _bounds.southwestLat = _bounds.southwestLat || bs.southwestLat; | 
|---|
|  |  |  | _bounds.northeastLng = bs.northeastLng > _bounds.northeastLng ? bs.northeastLng: _bounds.northeastLng; | 
|---|
|  |  |  | _bounds.northeastLat = bs.northeastLat > _bounds.northeastLat ? bs.northeastLat: _bounds.northeastLat; | 
|---|
|  |  |  | _bounds.southwestLng = bs.southwestLng > _bounds.southwestLng ? bs.southwestLng: _bounds.southwestLng; | 
|---|
|  |  |  | _bounds.southwestLat = bs.southwestLat > _bounds.southwestLat ? bs.southwestLat: _bounds.southwestLat; | 
|---|
|  |  |  | this[key] = _bounds; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | moralMap.isOverBounds = function() { | 
|---|
|  |  |  | var isOver = false; | 
|---|
|  |  |  | var _bounds = moralMap.getMaxBounds(); //累计数据 | 
|---|
|  |  |  | var bounds = baiduMap.getBounds(); //实际数据 | 
|---|
|  |  |  | if(_bounds == null) { | 
|---|
|  |  |  | var bs = moralMap.getBounds(); //实际数据 | 
|---|
|  |  |  | if(!_bounds) { | 
|---|
|  |  |  | isOver = true; | 
|---|
|  |  |  | moralMap.setMaxBounds(bounds); | 
|---|
|  |  |  | moralMap.setMaxBounds(bs); | 
|---|
|  |  |  | } else { | 
|---|
|  |  |  | isOver = (bounds['Fe'] > _bounds["Fe"] || bounds['Ge'] > _bounds["Ge"] || bounds['Ke'] < _bounds["Ke"] || bounds['Le'] < _bounds["Le"]); | 
|---|
|  |  |  | moralMap.setMaxBounds(bounds); | 
|---|
|  |  |  | isOver = (bs.northeastLng > _bounds.northeastLng | 
|---|
|  |  |  | || bs.northeastLat > _bounds.northeastLat | 
|---|
|  |  |  | || bs.southwestLng > _bounds.southwestLng | 
|---|
|  |  |  | || bs.southwestLat > _bounds.southwestLat); | 
|---|
|  |  |  | if(isOver){ | 
|---|
|  |  |  | moralMap.setMaxBounds(bs); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | return isOver; | 
|---|
|  |  |  | 
|---|
|  |  |  | width: 110, // 信息窗口宽度 | 
|---|
|  |  |  | height: 80, // 信息窗口高度 | 
|---|
|  |  |  | title: getTitleOutHtml(), // 信息窗口标题 | 
|---|
|  |  |  | offset: new BMap.Size(-2, -21) //设置信息窗偏移 | 
|---|
|  |  |  | offset: new BMap.Size(-2,0) //设置信息窗偏移 | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | function getTitleOutHtml() { | 
|---|
|  |  |  | 
|---|
|  |  |  | width: option["online_width"], // 信息窗口宽度 | 
|---|
|  |  |  | height:option["online_height"], // 信息窗口高度 | 
|---|
|  |  |  | title: getTitleOutHtml(), // 信息窗口标题 | 
|---|
|  |  |  | offset: new BMap.Size(-2, -30) //设置信息窗偏移 | 
|---|
|  |  |  | offset: new BMap.Size(-2, -10) //设置信息窗偏移 | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | function getTitleOutHtml() { | 
|---|
|  |  |  | 
|---|
|  |  |  | return 18; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | moralMap.getHorizonMarkers = function(isShow) { | 
|---|
|  |  |  | var bounds = baiduMap.getBounds(); | 
|---|
|  |  |  | var bounds = moralMap.getBounds(); | 
|---|
|  |  |  | var oldMarkerList; | 
|---|
|  |  |  | var isShow = (isShow) ? baiduMap : null; | 
|---|
|  |  |  | if(moralMap.layer() == "equipments") { | 
|---|
|  |  |  | 
|---|
|  |  |  | if(typeof option == 'object') { | 
|---|
|  |  |  | var longitude = option['longitude']; | 
|---|
|  |  |  | var latitude = option['latitude']; | 
|---|
|  |  |  | if(longitude < bounds['Ge'] && longitude > bounds['Le'] && latitude < bounds['Fe'] && latitude > bounds['Ke']) { | 
|---|
|  |  |  | if(longitude < bounds.northeastLng && longitude > bounds.southwestLng && latitude < bounds.northeastLat && latitude > bounds.southwestLat) { | 
|---|
|  |  |  | markers.push(oldmarker); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } | 
|---|