`
Virgo_S
  • 浏览: 1150728 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

ArcGIS Server 导出地图图片(SOAP)

阅读更多
package com.esri.arcgis.sample;


import com.esri.arcgisws.EsriImageFormat;
import com.esri.arcgisws.EsriImageReturnType;
import com.esri.arcgisws.ImageDescription;
import com.esri.arcgisws.ImageDisplay;
import com.esri.arcgisws.ImageType;
import com.esri.arcgisws.MapDescription;
import com.esri.arcgisws.MapImage;
import com.esri.arcgisws.MapServerBindingStub;
import com.esri.arcgisws.MapServerInfo;


public class ExportMap {
	public static void main(String[] args) {
		  // TODO Auto-generated method stub
		//地图服务的地址
		  String endpoint = "http://localhost:8399/arcgis/services/HWBaseMap/MapServer";
		        
		        MapServerBindingStub mapserver;
		        try {
		           mapserver= new MapServerBindingStub(endpoint);
		          
		           MapServerInfo mapinfo = mapserver.getServerInfo(mapserver.getDefaultMapName());
		           MapDescription mapdesc = mapinfo.getDefaultMapDescription();
		         

		           //设置地图显示范围
//		           com.esri.arcgisws.MapArea ma=mapdesc.getMapArea();
//		           EnvelopeN envelopeN=(EnvelopeN) ma.getExtent();
//		           envelopeN.setXMin(800000.0);
//		           envelopeN.setXMax(1000000.0);
//		           envelopeN.setYMin(4000000.0);
//		           envelopeN.setYMax(4400000.0);
//		           ma.setExtent(envelopeN);
		                          
//		           MapLayerInfo[]layerInfos=mapinfo.getMapLayerInfos();
//		           MapLayerInfo[] newLayerInfos=new MapLayerInfo[layerInfos.length];
//		           for(int ii=0;ii<layerInfos.length;ii++){
//		                  newLayerInfos[ii]=layerInfos[ii];
//		           }

//		           LayerDescription[] newLayerDescriptions = new LayerDescription[newLayerInfos.length];
//		           LayerDescription[] layerDescriptions=mapinfo.getDefaultMapDescription().getLayerDescriptions();
		         
//		           for(int i=0;i<newLayerInfos.length;i++){
//		              newLayerDescriptions[i]=AGSUtil.getLayerDescription(newLayerInfos[i].getLayerID(),layerDescriptions);
//		              //    if(newLayerInfos[i].getName().equalsIgnoreCase("country")){
//		              //     newLayerDescriptions.setDefinitionExpression(sqlStr);
//		              //    }
//		          }
//		          mapinfo.getDefaultMapDescription().setLayerDescriptions(newLayerDescriptions);
		      
		          //设置输出图片格式
		          ImageType imgtype = new ImageType();
		          imgtype.setImageFormat(EsriImageFormat.esriImageGIF);
		          imgtype.setImageReturnType(EsriImageReturnType.esriImageReturnURL);
		 
		          ImageDisplay imgdisp = new ImageDisplay();
		          imgdisp.setImageHeight(600);
		          imgdisp.setImageWidth(800);
		          imgdisp.setImageDPI(96);
		 
		          ImageDescription imgdesc = new ImageDescription();
		          imgdesc.setImageDisplay(imgdisp);
		          imgdesc.setImageType(imgtype);
		 
		          System.out.println("imgdesc.getImageType(): "+imgdesc.getImageType().getImageFormat().getValue());
		          System.out.println("mapdesc.getName: "+mapdesc.getName());
		          System.out.println("mapserverName: "+mapserver.getDefaultMapName());
		          MapImage mapimg = mapserver.exportMapImage(mapdesc, imgdesc);
		          System.out.println("mapimg.getMapScale(): "+mapimg.getMapScale());
		          System.out.println("mapimg.getImageURL(): "+mapimg.getImageURL()); 
		   
		          //   System.out.println(((EnvelopeN)mapinfo.getExtent()).getXMax());
		          //   System.out.println(((EnvelopeN)mapinfo.getExtent()).getXMin());
		          //   System.out.println(((EnvelopeN)mapinfo.getExtent()).getYMax());
		          //   System.out.println(((EnvelopeN)mapinfo.getExtent()).getYMin());
		        }catch (Exception e) {
		           e.printStackTrace();
		           System.out.println("FFFFF");
		        }
		   }


}

分享到:
评论
2 楼 ABAB 2014-04-04  
1 楼 shenguoyang 2011-06-21  
很好的文章,最近也遇到这方面的问题。楼主的附件下载不了。可以的话给我发个E-MAIL:6448822@qq.com  先谢谢了。

相关推荐

    ArcGIS Server输出图片+自定义标签

    3. 请求地图图片:通过ArcGIS REST API或者SOAP API,向服务发送请求,包含地图的缩放级别、中心点等信息,服务器返回对应的地图切片。 自定义标签是地图可视化中增强信息表达的重要手段。在ArcGIS Server中,可以...

    arcgis server——webgis开发新手体验

    在ArcGIS Desktop或ArcGIS Pro中制作地图后,可以将其导出为服务定义文件(SD),然后在ArcGIS Server上发布为地图服务。发布过程中可以设置服务的属性,如切片、缓存、安全设置等。 6. **地理处理服务** 地理...

    arcgis Server Developers_Guide(arcgis server 开发指南).pdf

    ArcGIS Server不仅支持地图制作和空间数据分析,还提供了一系列工具和服务来帮助用户构建定制化的地理应用解决方案。 #### 2. ArcGIS Server的主要功能 - **地图服务**:提供地图数据供客户端应用调用。 - **地理...

    arcgis server +.net 属性查询

    2. **.NET编程接口**:使用ArcGIS Server .NET SDK,开发者可以创建客户端应用程序,通过SOAP或RESTful接口与服务器进行交互。.NET SDK提供了一系列类和方法,用于执行属性查询,例如`ServerObjectExtension`、`...

    ArcGIS Server最新教程

    ArcGIS Server 是由 ESRI 开发的一款企业级地理信息系统(GIS)平台,旨在为组织提供高性能的地图服务和地理信息处理能力。它不仅能够处理大规模的地理数据,还能为用户提供丰富的地图展示和空间分析功能,支持 Web...

    ArcGISServer9.2.rar_ArcGISServer9.2_doc

    在这个特定的压缩包文件"ArcGISServer9.2.rar"中,包含了标题为"ArcGISServer9.2_doc"的学习开发文档,文件格式为DOC,这是早期的Microsoft Word文档格式,便于阅读和打印。 ArcGIS Server 9.2版本是一个重要的里程...

    ArcGIS Server开发从入门到精通

    - 数据导入与导出:学习如何将数据导入到ArcGIS Server以及与其他系统进行数据交换。 - 数据编辑与质量管理:讲解如何确保数据的准确性和完整性。 4. **服务发布与管理** - 创建地图服务:掌握如何利用ArcMap或...

    ArcGIS 10.2全套下载,包括desktop server sde

    ArcGIS Server支持多种操作系统和数据库平台,提供RESTful和SOAP两种Web服务接口,增强了跨平台和跨应用的互操作性。 3. **SDE(Spatial Database Engine)**: SDE是Esri开发的空间数据库引擎,用于存储、管理和...

    ArcGIS Server 10

    ArcGIS Server 10 提供了丰富的REST API 和 SOAP API 接口,支持各种GIS服务的开发和集成。这些接口包括地图服务、要素服务、几何服务等,使得开发者可以通过简单的HTTP请求来获取和操作地理数据。 #### 6. Web ADF...

    flex arcgis 应用

    ArcGIS Server提供了多种开发接口,如ArcObjects API用于桌面和服务器端应用开发,Server ADF(Application Development Framework)用于构建自定义Web服务,以及REST和SOAP API,这两个是用于Web客户端和移动应用的...

    webGIS开发 arcgis serveryu。net 源码

    后端则处理数据和业务逻辑,通过SOAP或RESTful接口与ArcGIS Server通信。 4. 主要子文件功能: - ThemeMap:主题地图,用于创建具有不同视觉层次的地图,通过调整图层的透明度、颜色和样式来突出显示特定地理信息...

    ArcGIS开发心得

    5. **服务发布与共享**:ArcGIS Server允许将地图服务、地理处理服务等发布到网络,供多用户访问。开发者需要知道如何配置服务器、发布服务、管理服务权限,以及优化服务性能。 6. **集成与扩展**:ArcGIS支持与...

    ArcGis9.rar_arc_arcgis

    5. ArcGIS Server:通过将GIS服务发布到服务器,实现地图和分析的网络共享。开发者需要掌握如何配置和管理GIS服务,以及调用Web服务接口(如SOAP或REST)。 6. ArcGIS Engine和ArcGIS Desktop开发:这两者分别提供...

    C#的ArcGis二次开发程序

    通过ArcGIS Server的SOAP或REST接口,开发者可以创建Web服务,供其他应用程序调用。 8. **ArcGIS Engine和ArcGIS Desktop**:ArcGIS Engine是用于开发独立GIS应用程序的组件,而ArcGIS Desktop是GIS工作环境,如...

    ArcGIS JavaScript API开发—初级篇

    此API自ArcGIS Server 9.3版本起引入REST(Representational State Transfer)作为其主要通信机制,使得开发者能够更加轻松地与地图服务进行交互。 #### 二、REST简介 REST是一种用于构建网络应用程序的设计风格和...

    混淆java隐藏源码-ExportImageSOI:ArcGISServer对象拦截器和MemSQL

    SOAP 调用。 思考 。 拦截器的一个用例是基于基于单点登录的请求中的用户凭据来操纵层或数据字段的可见性。 与已发布的 MXD 相关联的 SOI 的另一个用例是拦截导出图像操作并对原始结果图像进行数字水印以用于版权...

Global site tag (gtag.js) - Google Analytics