Nincs leírás

邓国辉 0aaee4eb6c Merge branch 'add_free_draw' into 'master' 6 éve
__tests__ 71d8997be5 Unify lat lng 7 éve
lib 71d8997be5 Unify lat lng 7 éve
.eslintrc fc399cbe9e 改成 typescript 代码,增加测试用例 7 éve
.gitignore d2c4c6cc41 add lib 7 éve
Common.ts fc399cbe9e 改成 typescript 代码,增加测试用例 7 éve
README.md 08baa5a418 Update README.md 7 éve
Utils.ts 71d8997be5 Unify lat lng 7 éve
index.ts b265f12c80 添加判断,保证free_draw为true or false 6 éve
package.json 7d428d1230 fix dep 7 éve
tsconfig.json 3b4449d4ef move to react-native-amap-kit 7 éve
yarn.lock 3b4449d4ef move to react-native-amap-kit 7 éve

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