Commit ce548682 by hanjixin

分离代码

parent 6d106cc1
function initMask(DistrictExplorer) {
console.log(map.getLayers());
//创建一个实例
var districtExplorer = new DistrictExplorer({
map: map
});
console.log(map.getLayers());
var countryCode = 100000; //全国
districtExplorer.loadMultiAreaNodes([countryCode], function (
error,
areaNodes
) {
//.concat(areaCodes)
var cityNode = areaNodes[0],
areaNodes = areaNodes.slice(1);
var path = [];
//首先放置背景区域,这里是大陆的边界
path.push(getLongestRing(cityNode.getParentFeature()));
path.push.apply(path, boundsPath);
var polygon = new AMap.Polygon({
bubble: true,
lineJoin: 'round',
strokeColor: '#99ffff', //线颜色
strokeOpacity: 1, //线透明度
strokeWeight: 5, //线宽
fillColor: 'black', //填充色
fillOpacity: 0.65, //填充透明度
map: map,
zIndex: 1000,
path: path
});
});
}
function getAllRings(feature) {
var coords = feature.geometry.coordinates,
rings = [];
for (var i = 0, len = coords.length; i < len; i++) {
rings.push(coords[i][0]);
}
return rings;
}
function getLongestRing(feature) {
var rings = getAllRings(feature);
rings.sort(function (a, b) {
return b.length - a.length;
});
return rings[0];
}
function bounds2Path(bounds) {
var path = [];
for (var i = 0; i < bounds.length; i += 1) {
var subPath = [];
for (let index = 0; index < bounds[i].length; index++) {
let element = bounds[i][index];
subPath.push([element.lng, element.lat]);
}
path.push(subPath);
}
return path;
}
function findsubarea(res) {
let childrensDistrictList = res.districtList[0].districtList;
for (let index = 0; index < childrensDistrictList.length; index++) {
let adcode = childrensDistrictList[index].adcode;
district.search(adcode, function (status, result) {
// path.push.apply(path, )
var polygon2 = new AMap.Polygon({
bubble: true,
lineJoin: 'round',
strokeColor: '#99ffff', //线颜色
strokeOpacity: 1, //线透明度
strokeWeight: 2, //线宽
fillColor: 'black', //填充色
fillOpacity: 0, //填充透明度
map: map,
path: bounds2Path(result.districtList[0].boundaries)
});
});
}
}
function getCanvasLayer() {
//定义中国东南西北端点
var canvas = document.createElement('canvas');
canvas.width = canvas.height = 200;
var context = canvas.getContext('2d');
context.fillStyle = 'rgb(0,0,0)';
context.fillRect(0, 0, 200, 200);
var CanvasLayer = new AMap.CanvasLayer({
rejectMapMask: true,
opacity: 0.9,
zIndex: 8,
canvas: canvas,
bounds: new AMap.Bounds([pSW.lng, pSW.lat], [pNE.lng, pNE.lat]),
zooms: [3, 18]
});
return CanvasLayer
}
function GetParams() {
var url = location.search; //获取url中"?"符后的字串
var theRequest = new Object();
if (url.indexOf('?') != -1) {
var str = url.substr(1);
strs = str.split('&');
for (var i = 0; i < strs.length; i++) {
theRequest[strs[i].split('=')[0]] = decodeURI(
strs[i].split('=')[1]
);
}
}
return theRequest;
}
function setPersonalPoint(item) {
// console.log(map);
// const marker = new AMap.ElasticMarker({
// map: map,
// styles: [
// {
// icon: {
// img:
// 'https://upload.jianshu.io/users/upload_avatars/8613997/15e570d2-9dd0-4be4-b1c7-f0373ef1adc9.jpg?imageMogr2/auto-orient/strip|imageView2/1/w/96/h/96/format/webp',
// size: [366, 201],
// ancher: [183, 101],
// imageSize: [865, 1156],
// imageOffset: [45, 480],
// fitZoom: 17.5,
// scaleFactor: 2,
// maxScale: 2,
// minScale: 0.125
// }
// }
// ],
// zooms: [0, 20],
// // position: new AMap.LngLat(Number(item.lon), Number(item.lat)),
// position: {Q: 30.8307, R: 104.24599999999998, lng: 104.246, lat: 30.8307},
// zIndex: 100000,
// zoomStyleMapping: {
// 14: 0,
// 15: 0,
// 16: 0,
// 17: 0,
// 18: 0,
// 19: 0,
// 20: 0
// }
// });
// console.log(new AMap.LngLat(Number(item.lon), Number(item.lat)))
// marker.setMap(map)
// var circleMarker = new AMap.CircleMarker({
// center: new AMap.LngLat(Number(item.lon), Number(item.lat)),
// radius:5+Math.random()*10,//3D视图下,CircleMarker半径不要超过64px
// strokeColor:'white',
// strokeWeight:2,
// strokeOpacity:0.5,
// fillColor:'rgba(0,0,255,1)',
// fillOpacity:0.5,
// zIndex:10,
// bubble:true,
// cursor:'pointer',
// clickable: true
// })
var marker = new AMap.Marker({
map:map,
position: new AMap.LngLat(Number(item.lon), Number(item.lat)), //基点位置
icon:"https://a.amap.com/jsapi_demos/static/images/darkRed.png", //marker图标,直接传递地址url
offset:{x:-8,y:-34} //相对于基点的位置
});
Markers.push(marker)
// circleMarker.setMap(map)
}
\ No newline at end of file
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or sign in to comment