2

我想创建应用程序以使用 GIS 形状文件(.shp)显示离线地图,任何人都知道如何使用形状文件在 android 中显示地图。

提前致谢

4

1 回答 1

1

如果您从 SD 卡加载数据,您可以使用 openmap,它有一个 SHapefile 类,并尝试将您的 shapefile 转换为图形层,我已经完成了。

static public GraphicsLayer SHPtoPOINT(String shpfile) {
    SpatialReference lSR = SpatialReference.create(26192);
    Envelope lEnvolope = getSHPEnvelope(shpfile);//to create an extent for your graphics       layer
    GraphicsLayer graphicLayer = new GraphicsLayer(lSR, lEnvolope);

    try {
        File file = new File(shpfile);
        ShapeFile shp = new ShapeFile(file);
        ESRIPointRecord e = (ESRIPointRecord) shp.getNextRecord();
        SimpleMarkerSymbol c_point = new SimpleMarkerSymbol(Color.BLACK, 1,
        STYLE.CIRCLE);
            while (e != null) {
            graphicLayer.addGraphic(new Graphic(new Point(e.getX(), e.getY()), c_point));
            e = (ESRIPointRecord) shp.getNextRecord();
            }
       shp.close();
       } catch (IOException e1) {
       e1.printStackTrace();
       }
      return graphicLayer;
    }

资源

编辑:

BBN Technologies 的 OpenMap TM 包是一个基于开源 JavaBeans TM 的程序员工具包。使用 OpenMap,您可以快速构建访问旧数据库和应用程序数据的应用程序和小程序。OpenMap 提供了允许用户查看和操作地理空间信息的方法。

链接到 OpenMap 信息。

于 2012-09-05T21:15:12.947 回答