0

我使用此代码

final JXMapKit jXMapKit1 = new JXMapKit();
        jXMapKit1.setDefaultProvider(DefaultProviders.OpenStreetMaps);
        jXMapKit1.setCenterPosition(new GeoPosition(45.41984, -3.33924));
        jXMapKit1.setZoom(3);

        final List<GeoPosition> region = new ArrayList<GeoPosition>();
        region.add(new GeoPosition(5.42031, 100.34389));
        region.add(new GeoPosition(5.41984, 100.33924));
        region.add(new GeoPosition(5.42300, 100.33456));
        TileFactoryInfo info = new TileFactoryInfo(
        0, //min level
        8, //max allowed level
        10, // max level
        256, //tile size
        true, true, // x/y orientation is normal
        "file://D:/Tiles", // base url
        "x","y","z" // url args for x, y &amp; z
        ) {
    public String getTileUrl(int x, int y, int zoom) {
        return this.baseURL +"/"+zoom+"/"+x+"/"+y+".png";
    }
};
        jXMapKit1.setTileFactory(new DefaultTileFactory(info));

我的瓷砖是用 maperitive 创建的。但是当我运行我的应用程序时,我遇到了这个错误

2013 年 6 月 6 日上午 8:10:05 org.jdesktop.swingx.mapviewer.DefaultTileFactory$TileRunner 运行严重:无法在 url 加载磁贴:file://D:/Tiles/1/255/256.png,重试java.net.UnknownHostException:D

我不明白为什么我有“D:/Tiles/1/ 255/256 .png”

4

1 回答 1

1

尝试

return this.baseURL +"/"+(10-zoom)+"/"+x+"/"+y+".png";

其中数字 10 是您的最高等级

来源:https ://today.java.net/pub/a/today/2007/11/13/mapping-mashups-with-jxmapviewer.html#using-a-custom-map-server

于 2014-05-19T18:38:13.630 回答