arcgis10.0地图服务发布(填坑)

时间:2024-05-20 10:40:38

由于之前都是采用arcgis10.3发布地图服,后来客户那边要远程发布一个地图,一看客户那边是arcgis10.0,本以为会跟10.3一样,当然了起本质是一样的,但是操作可不一样,然后我就百度了一篇文章发布,过程也很顺利,最后服务成功发布。用浏览器也可以访问到地图,等我把地址放进程序,地图特别大完全不是我想要的结果,然后接着开始删除——>发布,如此循环,但是就是不行,后来我用10.3又重新发布,在程序中可以正常调用。然后接着找问题,哎。。。最后再arcgis组找了一个搞了一天半,也没有解决,最后我用浏览器分别调用10.3和10.0发布的两张地图,经过仔细对比发现了问题。

   首先说明因为我再程序中要的级别是6-12,如下:

    //地图对象初始化
    function MapObjInit(id) {
    _mapObjArea = new esri.Map(id, {
           logo : false,
           autoResize : true,
           slider : false,
           extent : _mapInitExtent,
           maxZoom : 10,
           minZoom : 6,
           isKeyboardNavigation:true,
           isPan:true,
           isPanArrows:true
       });
    _mapObjArea.enableMapNavigation();// none  允许所有地图导航。 
    _mapObjArea.enablePan(); //none  允许使用鼠标移动地图。 
       $("#"+id).data("mapObj", _mapObjArea);
    }

所以我无论我在10.0还是10.3我都采用5-13级别来进行切片缓存。但是在10.0中需要手动是设置配置文件。两个服务如下:

arcgis10.0地图服务发布(填坑)




arcgis10.0地图服务发布(填坑)

上面两张图说明10.0无论级别怎么设置都是从0开始到你设置的级别个数 ,比如说我设置的是5-13,那就是0-8,而10.3无论你怎么设置都是0-20.那么问题来了我在程序中设置的级别是从6-12的,而10.0发布的只到8,问题就在这里,导致我的地图级别乱了,坑啊。。。。。

好了 ,下面介绍10.0发布地图服务切片方法:

第一步:

arcgis10.0地图服务发布(填坑)


第二步:点击上面箭头处,出现下图

arcgis10.0地图服务发布(填坑)

然后接着跟10.3差不多  如下图:

arcgis10.0地图服务发布(填坑)

直接下一步

arcgis10.0地图服务发布(填坑)

点击完成。

第三步:

arcgis10.0地图服务发布(填坑)

点击箭头处:当然也可以这样打开

arcgis10.0地图服务发布(填坑)

完了就会出现下图所示:

arcgis10.0地图服务发布(填坑)

第四步找到你要发布的地图,右击,点击服务属性,出现下图:

arcgis10.0地图服务发布(填坑)

这里讲重点介绍哈,如果你不采用缓存,直接确定就可以了,但是你要选择切片那就采用如下图:

arcgis10.0地图服务发布(填坑)

当然了如果你要选择0-20级别,那就直接点击加载分块方案,选择Arcgis Online/Being 地图/Google地图 这项  点击确定。最后再点击确定就ok了 不过这样切片会特别慢。注意是特别。当然了我采用的是5-13级。所以选择分块方案文件,自己去手动改文件。这个文件来自:arcgis10.0地图服务发布(填坑)

找到这个文件 ,重新命名一个名字,当你点击分块方案文件,确定后悔出现一个框,找到重新命名的这个文件,当然我对这个文件做了修改,只保留了5-13

arcgis10.0地图服务发布(填坑)

最后点击确定,后面的都默认 ,出现弹框点击ok,

重点是这样在缓存文件的存储地方,如下:

arcgis10.0地图服务发布(填坑)


这conf.xml中,出现还是从0-8级别来切片的,当然了只是LevelID的值发生了改变,其他值没有变,这样就会出现我上面说的问题,我的代码中级别是6-12,而最后却是0-8,这样地图就会出现显示大或小的问题。

解决方法就是在选择切块文件的时候不要删除5级别之前的,让它保留在0-13,进行切片。这样我用的6-12,就完全包含在0-13内了。坑不坑。