Ei kuvausta

wd 5a17198539 增加 postinstall 7 vuotta sitten
.eslintrc 29eeb81b5a 完成航线宽度的新逻辑 7 vuotta sitten
.gitignore 2d448b34c1 增加 es5 编译支持 7 vuotta sitten
Common.js 7a52e94465 upgrade amap-shapes 7 vuotta sitten
README.md 08baa5a418 Update README.md 7 vuotta sitten
Utils.js 653a573c9b 修复秒是 60 没有进位的问题 7 vuotta sitten
index.js d7fac085bf 修复选真高含以下出错的bug 7 vuotta sitten
package.json 5a17198539 增加 postinstall 7 vuotta sitten
yarn.lock 2d448b34c1 增加 es5 编译支持 7 vuotta sitten

README.md

根据 plan-request 产生 amap 的图形

//获取selector
export function getShapesSelector(airspaceInfos, setStyle, currentAirspaceIndex) {
    currentAirspaceIndex = currentAirspaceIndex ? currentAirspaceIndex : () => -1;
    let circles = getCircleSelector(airspaceInfos, setStyle, currentAirspaceIndex);
    let lineAndMarkers = getLineAndMarkerSelector(airspaceInfos, setStyle, currentAirspaceIndex);
    let lines = getLineSelector(lineAndMarkers);
    let polygonAndMarkers = getPolygonAndMarkerSelector(airspaceInfos, setStyle, currentAirspaceIndex);
    let polygons = getPolygonSelector(polygonAndMarkers);
    let markers = getMarkerSelector(polygonAndMarkers, lineAndMarkers);
    let regionPoints = getRegionPointsSelector(circles, lineAndMarkers, polygonAndMarkers);
    return {
        markers,
        circles,
        lines,
        polygons,
        regionPoints
    }
}
//获取数组
export function getShapes(airspaceInfos, setStyle, currentAirspaceIndex) {
    currentAirspaceIndex = currentAirspaceIndex ? currentAirspaceIndex : () => -1;
    let circles = getCircles(airspaceInfos, setStyle, currentAirspaceIndex);
    let lineAndMarkers = getLinesAndMarkers(airspaceInfos, setStyle, currentAirspaceIndex);
    let lines = getLines(lineAndMarkers);
    let polygonAndMarkers = getPolygonsAndMarkers(airspaceInfos, setStyle, currentAirspaceIndex);
    let polygons = getPolygons(getPolygonsAndMarkers);
    let markers = getMarkers(polygonAndMarkers, lineAndMarkers);
    let regionPoints = getRegionPoints(circles, lineAndMarkers, polygonAndMarkers);
    return {
        markers,
        circles,
        lines,
        polygons,
        regionPoints
    }
}


//其中currentAirspaceIndex没有可以不传,setStyle为方法,需要为每个shape设置样式,实例如下:

function setStyle(shapeName) {
    if ('circle' === shapeName) {
        return {
            lineWidth:2,
            strokeColor:'#123',
            fillColor:'#123'
        }
    }
    if ('line' === shapeName) {
        return {
            lineWidth:2,
            strokeColor:'#123',
            imageName:'BA_oval'   //  marker's name
        }
    }
    if ('polygon' === shapeName) {
        return {
            lineWidth:2,
            strokeColor:'#123',
            fillColor:'#123',
            imageName:'BA_oval'  //  marker's name
        }
    }
    return {};
}