설명 없음

王冬 5a0b4701f6 Merge branch 'fix_airspace_id' into 'master' 7 년 전
__tests__ fc399cbe9e 改成 typescript 代码,增加测试用例 7 년 전
.eslintrc fc399cbe9e 改成 typescript 代码,增加测试用例 7 년 전
.gitignore 2d448b34c1 增加 es5 编译支持 7 년 전
Common.ts fc399cbe9e 改成 typescript 代码,增加测试用例 7 년 전
README.md 08baa5a418 Update README.md 7 년 전
Utils.ts fc399cbe9e 改成 typescript 代码,增加测试用例 7 년 전
index.ts 19ea1807cd fix 7 년 전
package.json fc399cbe9e 改成 typescript 代码,增加测试用例 7 년 전
tsconfig.json fc399cbe9e 改成 typescript 代码,增加测试用例 7 년 전
yarn.lock fc399cbe9e 改成 typescript 代码,增加测试用例 7 년 전

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 {};
}