ArcGIS Server发布本地瓦片

本文的适用情况:

假设已经拿到了打包好的瓦片数据并且拷贝到了服务器硬盘目录下,目的是利用arcgis server快速的发布地图服务,而不用再次切片或者构建缓存。

补充另注:千万注意如果arcgis已经汉化,下面图1中应该把第一层Layers文件夹名称修改为“图层”,不然它会又新建一个图层的文件夹然后又开始切片,那我们的目的就无从达到了。血和泪的教训,大家切切注意这一点!!!

背景介绍:

背景的话大家可以参考,有些地方大家不一定一样。具体我的项目背景是,从别人服务器上拷贝来了切片好的瓦片数据(数据格式如图1),解压后大概有15个G,因为太大了不能放在C盘,所以放在了D盘Data文件夹下。我们的想法就是直接使用这些数据,不再进行切片和增加缓存。

图1中第二层的Status.gdb文件夹可以直接删除。

ArcGIS Server发布本地瓦片_第1张图片 图1:文件夹结构

Arcgis server版本:10.1

Arcgis server默认缓存路径:C:\arcgisserver\directories\arcgiscache

Arcgis server manager路径:http://localhost:6080/arcgis/manager/login.html(服务器本地打开)

                                                        http://[IP-Adress]:6080/arcgis/manager/login.html(外部访问)

在本文中瓦片数据的路径:D:\Data\tile     图1所示即为tile文件夹的结构

 

解决的问题主要是以下两个:

1.更改缓存目录,防止占用C盘空间

2.直接利用已有的瓦片数据,防止二次切片浪费时间和机器资源

 

具体步骤:

准备工作:

查看数据文件夹路径,将Conf.xml提前拷贝出来到外面文件夹D:\Data\Conf.xml。

1.打开两个配置文件(con.cdi和Conf.xml)大致查看信息,con.cdi文件描述的是瓦片的空间参考信息,Conf.xml文件描述的除空间参考信息外还有瓦片的详细信息。con.cdi文件部分如下代码段所示。




  -20037507.067161843
  -20080143.559868
  20037507.067161843
  20080143.559867892
  
    PROJCS["WGS_1984_Web_Mercator_Auxiliary_Sphere",GEOGCS["GCS_WGS_1984",DATUM["D_WGS_1984",SPHEROID["WGS_1984",6378137.0,298.257223563]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Mercator_Auxiliary_Sphere"],PARAMETER["False_Easting",0.0],PARAMETER["False_Northing",0.0],PARAMETER["Central_Meridian",0.0],PARAMETER["Standard_Parallel_1",0.0],PARAMETER["Auxiliary_Sphere_Type",0.0],UNIT["Meter",1.0],AUTHORITY["EPSG",3857]]
    -22041257.77387803
    -30241100
    144148035.89861274
    -100000
    10000
    -100000
    10000
    0.001
    0.001
    0.001
    true
    102100
    3857
  

Conf.xml文件部分如下代码段所示:




  
    
    
    
    
      -20037508.342787001
      20037508.342787001
    
    256
    256
    96
    96
    
      
        0
        591657527.591555
        156543.03392800014
      
      
      
        19
        1128.4971760000001
        0.29858214164761665
      
    
  
  
    JPEG
    75
    false
  
  
    esriMapCacheStorageModeExploded
    128
  

2.打开ArcMap软件,执行操作:Add Data(菜单栏File --> Add Data --> Add Data),在弹出的选项框中找到并选择D:\Data\data\Layers加载瓦片数据。若数据能够正常加载,说明没什么问题,如果不行的话,根据报错解决问题或者查看步骤一中的两个文件有没有问题。完成后移除所有图层。

3.步骤二没问题后,打开ArcCatalog找个文件夹创建一个空的shapefile,操作如下:File --> New --> Shapefile。在弹出的对话框中,Feature Type选择Polygon,点击Edit按钮修改空间参考(如图2所示),这里需要根据步骤一中con.xml文件的参考系统来选择坐标系统和投影系统,本项目中的参考系统选择如图3所示。完成后点击ok就创建了一个空的名为testtile的shapefile了。注意此时shapefile的文件名称即为之后发布服务的图层名称,大家根据项目需要填写名称。

ArcGIS Server发布本地瓦片_第2张图片 图2:完成输入后点击Edit
ArcGIS Server发布本地瓦片_第3张图片 图3:由参考信息选择该坐标系统

4.在ArcMap中同步骤二执行操作Add Data,找到并打开步骤三中创建的shapefile,打开后点击保存按钮,将其保存为.mxd文件。文件命名为tile(此处的名字就是之后发布的瓦片服务的名字,但是要注意这个名字一定要和自己数据文件夹的名字保持一致,这样才能找到自己的切片文件而不会再次进行切片。所以我建议在所有需要命名的地方全都使用数据文件夹的名字)。完成后不要移除图层或者关闭项目,一会还有用。

5.进入arcgis server manager进行设置(网址在文章最上面),点击菜单栏“站点”,选择“GIS服务器”、“目录”,点击“添加目录”,在弹出对话框中,名称随便起一个,“类型”修改为缓存,位置写数据文件的上级目录,在本项目中为D:\Data,点击添加按钮。如下图图4所示。

ArcGIS Server发布本地瓦片_第4张图片 图4:添加缓存目录

6.发布地图

在第四步ArcMap的基础上进行操作,发布地图服务,操作如下,点击菜单栏File --> Share As --> Service,在弹出对话框中选择"Publish a Service"后点击下一步,这是会弹出对话框如图5所示,默认选择下一步。

ArcGIS Server发布本地瓦片_第5张图片 图5:选择连接并填写服务名称

在如图6所示的弹出对话框中,默认使用root文件夹就可以,因为这里是发布服务到某个文件夹,而不是设置缓存的位置,所以这里选择root目录是不会占用太多C盘空间的。

ArcGIS Server发布本地瓦片_第6张图片 图6:选择发布服务到文件夹

在上图中点击continue后弹出Service Editor对话框,如图7所示,我们在此对话框中完成其他设置。

ArcGIS Server发布本地瓦片_第7张图片 图7:Service Editor对话框

在此对话框中我们点击左侧的Caching目录,对话框内容如图8所示,我们在此界面中设置缓存。

ArcGIS Server发布本地瓦片_第8张图片 图8:Caching界面

在Caching界面中,我们首先设置绘制服务的方式,从"Dynamically from the data"更改为"Using tiles from a cache",即从数据中动态绘制更改为直接使用缓存中的瓦片。然后"Tiling Scheme"就会变为可选了,我们此时将其从"ArcGIS Online/Bing Maps/Google Maps"更改为“A tiling scheme file”,即由这三家的更改为使用自己的切片方案。选择后会弹出一个"Load Tiling Scheme"的对话框要求我们选择自己的切片方案,这是我们选择之前提前拷贝出来的Conf.xml文件,在本项目中地址为D:\Data\Conf.xml。选择切片方案后可以发现下面的"Levels of Detail"界面变化了,说明这是加载了我们自己的切片方案。这时我们可以自由选择要发布的层级。然后修改最下方的瓦片创立方式,由"Build cache automatically when the service is publish"更改为“manually”,即由自动到手动,这一个地方非常关键,因为我们已有瓦片,如果再自动的话就会浪费资源,所以一定要选择手动。修改后的界面如图9所示。

ArcGIS Server发布本地瓦片_第9张图片 图9:修改后的界面

下一步进入左侧caching目录下的Advanced Settings子目录,界面如图10所示。

ArcGIS Server发布本地瓦片_第10张图片 图10:Caching Advanced Settings

在这里,我们修改Cache directory目录由原来的默认目录到我们再ArcGIS Manager中建立的缓存目录D:\Data,如图11所示。

ArcGIS Server发布本地瓦片_第11张图片 图11:修改缓存目录

在之后我们点击顶部的Analyze分析按钮,若分析未报错,则可以publish服务了。

你可能感兴趣的:(MD)