- 浏览: 1153681 次
- 性别:
- 来自: 北京
文章分类
最新评论
-
RebeccaZhong:
严重: StandardWrapper.Throwableco ...
三步发布java方式的rest服务 -
RebeccaZhong:
严重: StandardWrapper.Throwableco ...
三步发布java方式的rest服务 -
冷酷月光:
楼主。请教一下。arcgis for android 有提供地 ...
ArcGIS API For Android离线地图的实现 -
winney117:
请问如何GET已有网页上的指定内容?比如百度文库中的某一篇文章 ...
三步发布java方式的rest服务 -
zige1012:
您好,我想问问我想换个自己地图的切片,也有4层(L0-L3), ...
ArcGIS API For Android离线地图的实现
public class PointEdit { private WebContext webContext; public void AddPoint (MapEvent event){ try { //得到地图事件所对应的地图对象 WebMap webmap=webContext.getWebMap(); WebPoint webpoint=(WebPoint) event.getWebGeometry().toMapGeometry(webmap); AGSLocalMapResource mapResource = (AGSLocalMapResource) MapResourceClass.getMapResource(webContext, 1); IServerContext context = mapResource.getServerContext(); MapServer mapServer = mapResource.getLocalMapServer(); //IMap maps= mapServer.getMap(""); //ILayer firstLayer = maps.getLayer(Otid); //得到图层的空间编辑对象 IMap maps= mapServer.getMap(""); ILayer layer=maps.getLayer(0); IFeatureLayer fLayer = (IFeatureLayer) layer; IFeatureClass fc = fLayer.getFeatureClass(); IDataset ds1=new IDatasetProxy(fc); IWorkspace pWorkSpace = ds1.getWorkspace(); IWorkspaceEdit pWorkspaceEdit=new IWorkspaceEditProxy(pWorkSpace); //开始编辑 pWorkspaceEdit.startEditing(true); pWorkspaceEdit.startEditOperation(); //创建新的地图对象 IFeature pFeature=fc.createFeature(); //将web地图对象转成地图对象 Point p=(Point)context.createObject("esriGeometry.Point"); IPoint pt=(IPoint)context.createObject("esriGeometry.Point"); pt.setX(webpoint.getX()); pt.setY(webpoint.getY()); pt.setM(0); pt.setZ(0); p=(Point)pt; //地图对象赋值 pFeature.setShapeByRef(p); //字段赋值 pFeature.setValue(fc.findField("code"), 1); //保存对象 pFeature.store(); //停止编辑 pWorkspaceEdit.stopEditOperation(); pWorkspaceEdit.stopEditing(true); //刷新地图 mapServer.refreshServerObjects(); webContext.refresh(); } catch (Exception gise) { System.out.print("添加点" + gise.toString() + "\n"); gise.printStackTrace(); } } } 这是添加点的代码 using System; using System.Data; using System.Configuration; using System.Web; using System.Web.Security; using System.Web.UI; using System.Web.UI.WebControls; using System.Web.UI.WebControls.WebParts; using System.Web.UI.HtmlControls; using ESRI.ArcGIS.ADF.Web.UI.WebControls.Tools; using ESRI.ArcGIS.ADF.Web.UI.WebControls; using ESRI.ArcGIS.ADF.ArcGISServer; using ESRI.ArcGIS.Server; using ESRI.ArcGIS.Carto; using ESRI.ArcGIS.Geometry; using ESRI.ArcGIS.esriSystem; using ESRI.ArcGIS.Display; using System.Collections; using ESRI.ArcGIS.ADF.Web.DataSources.ArcGISServer; using ESRI.ArcGIS.Geodatabase; /// <summary> /// AddPointFeature 的摘要说明 /// </summary> public class AddPointFeature : IMapServerToolAction { public AddPointFeature() { // // TODO: 在此处添加构造函数逻辑 // } #region IMapServerToolAction 成员 void IMapServerToolAction.ServerAction(ToolEventArgs args) { //Step1: 取到地图点击画的那个点 ESRI.ArcGIS.ADF.Web.UI.WebControls.Map mapCtrl; mapCtrl = (ESRI.ArcGIS.ADF.Web.UI.WebControls.Map)args.Control; PointEventArgs pea = (PointEventArgs)args; System.Drawing.Point screen_point = pea.ScreenPoint; MapFunctionality mapFunc = (MapFunctionality)mapCtrl.GetFunctionality(0); MapResourceLocal mapResLocal = mapFunc.Resource as MapResourceLocal; IServerContext pSOC; IMapServer pMapServer; IMap pMap; pSOC = mapResLocal.ServerContextInfo.ServerContext; pMapServer = pSOC.ServerObject as IMapServer; IMapServerObjects pMapServerObjs = pMapServer as IMapServerObjects; pMap = pMapServerObjs.get_Map(pMapServer.DefaultMapName); ESRI.ArcGIS.ADF.ArcGISServer.MapDescription mapDesp = mapFunc.MapDescription; ESRI.ArcGIS.ADF.Web.Geometry.Point adf_map_point = ESRI.ArcGIS.ADF.Web.Geometry.Point.ToMapPoint(screen_point, mapCtrl.Extent, mapFunc.DisplaySettings.ImageDescriptor.Width, mapFunc.DisplaySettings.ImageDescriptor.Height); PointN ags_map_point = ESRI.ArcGIS.ADF.Web.DataSources.ArcGISServer.Converter.FromAdfPoint(adf_map_point); //Step2:插入点到Shp文件中去。要打开WS //第一个图层是点,第二个图层是线,第三个图层是面。这里就不判断,主要在于功能的实现 ILayer pLayer = pMap.get_Layer(0); IFeatureLayer pFeatureLyr = pLayer as IFeatureLayer; IFeatureClass pFeatCls = pFeatureLyr.FeatureClass; IDataset pDataset = pFeatCls as IDataset; IWorkspace pWS = pDataset.Workspace; IWorkspaceEdit pWorkspaceEdit = pWS as IWorkspaceEdit; pWorkspaceEdit.StartEditing(false); pWorkspaceEdit.StartEditOperation(); IFeatureBuffer pFeatureBuffer; IFeatureCursor pFeatureCuror; IFeature pFeature; IPoint pPoint; pFeatureBuffer = pFeatCls.CreateFeatureBuffer(); pFeatureCuror = pFeatCls.Insert(true); pFeature = pFeatureBuffer as IFeature; pPoint =(IPoint) pSOC.CreateObject("esriGeometry.Point"); pPoint.X = ags_map_point.X; pPoint.Y = ags_map_point.Y; IGeometry pPointGeo = pPoint as IGeometry; pFeature.Shape = pPointGeo; pFeatureCuror.InsertFeature(pFeatureBuffer); pWorkspaceEdit.StopEditOperation(); pWorkspaceEdit.StopEditing(true); mapCtrl.Refresh(); } #endregion } 添加线的代码 using System; using System.Data; using System.Configuration; using System.Web; using System.Web.Security; using System.Web.UI; using System.Web.UI.WebControls; using System.Web.UI.WebControls.WebParts; using System.Web.UI.HtmlControls; using ESRI.ArcGIS.ADF.Web.UI.WebControls.Tools; using ESRI.ArcGIS.ADF.Web.UI.WebControls; using ESRI.ArcGIS.ADF.ArcGISServer; using ESRI.ArcGIS.Server; using ESRI.ArcGIS.Carto; using ESRI.ArcGIS.Geometry; using ESRI.ArcGIS.esriSystem; using ESRI.ArcGIS.Display; using System.Collections; using ESRI.ArcGIS.ADF.Web.DataSources.ArcGISServer; using ESRI.ArcGIS.Geodatabase; /// <summary> /// AddPolylineFeature 的摘要说明 /// </summary> public class AddPolylineFeature : IMapServerToolAction { public AddPolylineFeature() { // // TODO: 在此处添加构造函数逻辑 // } #region IMapServerToolAction 成员 public void ServerAction(ToolEventArgs args) { //Step1:根据客户端定义的动作,将屏幕坐标点转换成地图坐标点 //并初始化一些常用的参数 ESRI.ArcGIS.ADF.Web.UI.WebControls.Map mapCtrl; mapCtrl = (ESRI.ArcGIS.ADF.Web.UI.WebControls.Map)args.Control; PolylineEventArgs peal = (PolylineEventArgs)args; System.Drawing.Point[] screen_points = peal.Vectors; MapFunctionality mapFunc = (MapFunctionality)mapCtrl.GetFunctionality(0); MapResourceLocal mapResLocal = mapFunc.Resource as MapResourceLocal; ESRI.ArcGIS.ADF.ArcGISServer.MapDescription mapDesc; mapDesc = mapFunc.MapDescription; IServerContext pSOC; IMapServer pMapServer; IMap pMap; pSOC = mapResLocal.ServerContextInfo.ServerContext; pMapServer = pSOC.ServerObject as IMapServer; IMapServerObjects pMapServerObjs = pMapServer as IMapServerObjects; pMap = pMapServerObjs.get_Map(pMapServer.DefaultMapName); IPointCollection pPointColl; pPointColl = (IPointCollection)pSOC.CreateObject("esriGeometry.Polyline"); for (int i = 0; i < screen_points.Length; i++) { IPoint pPoint; ESRI.ArcGIS.ADF.Web.Geometry.Point mappnt = ESRI.ArcGIS.ADF.Web.Geometry.Point.ToMapPoint(screen_points, mapCtrl.Extent, (int)mapCtrl.Width.Value, (int)mapCtrl.Height.Value); pPoint = (IPoint)pSOC.CreateObject("esriGeometry.Point"); pPoint.X = mappnt.X; pPoint.Y = mappnt.Y; object missingVal = System.Reflection.Missing.Value; pPointColl.AddPoint(pPoint, ref missingVal, ref missingVal); } IGeometry pPolylineGeo = pPointColl as IGeometry; //Step2:插入点到Shp文件中去。要打开WS //第一个图层是点(0),第二个图层是线(1),第三个图层是面(2)。这里就不判断,主要在于功能的实现 ILayer pLayer = pMap.get_Layer(1); IFeatureLayer pFeatureLyr = pLayer as IFeatureLayer; IFeatureClass pFeatCls = pFeatureLyr.FeatureClass; IDataset pDataset = pFeatCls as IDataset; IWorkspace pWS = pDataset.Workspace; IWorkspaceEdit pWorkspaceEdit = pWS as IWorkspaceEdit; pWorkspaceEdit.StartEditing(false); pWorkspaceEdit.StartEditOperation(); IFeatureBuffer pFeatureBuffer; IFeatureCursor pFeatureCuror; IFeature pFeature; pFeatureBuffer = pFeatCls.CreateFeatureBuffer(); pFeatureCuror = pFeatCls.Insert(true); pFeature = pFeatureBuffer as IFeature; pFeature.Shape = pPolylineGeo; pFeatureCuror.InsertFeature(pFeatureBuffer); pWorkspaceEdit.StopEditOperation(); pWorkspaceEdit.StopEditing(true); mapCtrl.Refresh(); } #endregion } 编辑面的代码 using System; using System.Data; using System.Configuration; using System.Web; using System.Web.Security; using System.Web.UI; using System.Web.UI.WebControls; using System.Web.UI.WebControls.WebParts; using System.Web.UI.HtmlControls; using ESRI.ArcGIS.ADF.Web.UI.WebControls.Tools; using ESRI.ArcGIS.ADF.Web.UI.WebControls; using ESRI.ArcGIS.ADF.ArcGISServer; using ESRI.ArcGIS.Server; using ESRI.ArcGIS.Carto; using ESRI.ArcGIS.Geometry; using ESRI.ArcGIS.esriSystem; using ESRI.ArcGIS.Display; using System.Collections; using ESRI.ArcGIS.ADF.Web.DataSources.ArcGISServer; using ESRI.ArcGIS.Geodatabase; /// <summary> /// AddPolygonFeature 的摘要说明 /// </summary> public class AddPolygonFeature : IMapServerToolAction { public AddPolygonFeature() { // // TODO: 在此处添加构造函数逻辑 // } #region IMapServerToolAction 成员 public void ServerAction(ToolEventArgs args) { //Step1:根据客户端定义的动作,将屏幕坐标点转换成地图坐标点 //并初始化一些常用的参数 ESRI.ArcGIS.ADF.Web.UI.WebControls.Map mapCtrl; mapCtrl = (ESRI.ArcGIS.ADF.Web.UI.WebControls.Map)args.Control; PolygonEventArgs peag = (PolygonEventArgs)args; System.Drawing.Point[] screen_points = peag.Vectors; MapFunctionality mapFunc = (MapFunctionality)mapCtrl.GetFunctionality(0); MapResourceLocal mapResLocal = mapFunc.Resource as MapResourceLocal; ESRI.ArcGIS.ADF.ArcGISServer.MapDescription mapDesc; mapDesc = mapFunc.MapDescription; IServerContext pSOC; IMapServer pMapServer; IMap pMap; pSOC = mapResLocal.ServerContextInfo.ServerContext; pMapServer = pSOC.ServerObject as IMapServer; IMapServerObjects pMapServerObjs = pMapServer as IMapServerObjects; pMap = pMapServerObjs.get_Map(pMapServer.DefaultMapName); IPointCollection pPointColl; pPointColl = (IPointCollection)pSOC.CreateObject("esriGeometry.Polygon"); for (int i = 0; i < screen_points.Length; i++) { IPoint pPoint; ESRI.ArcGIS.ADF.Web.Geometry.Point mappnt = ESRI.ArcGIS.ADF.Web.Geometry.Point.ToMapPoint(screen_points, mapCtrl.Extent, (int)mapCtrl.Width.Value, (int)mapCtrl.Height.Value); pPoint = (IPoint)pSOC.CreateObject("esriGeometry.Point"); pPoint.X = mappnt.X; pPoint.Y = mappnt.Y; object missingVal = System.Reflection.Missing.Value; pPointColl.AddPoint(pPoint, ref missingVal, ref missingVal); } IGeometry pPolylineGeo = pPointColl as IGeometry; //Step2:插入点到Shp文件中去。要打开WS //第一个图层是点(0),第二个图层是线(1),第三个图层是面(2)。这里就不判断,主要在于功能的实现 ILayer pLayer = pMap.get_Layer(2); IFeatureLayer pFeatureLyr = pLayer as IFeatureLayer; IFeatureClass pFeatCls = pFeatureLyr.FeatureClass; IDataset pDataset = pFeatCls as IDataset; IWorkspace pWS = pDataset.Workspace; IWorkspaceEdit pWorkspaceEdit = pWS as IWorkspaceEdit; pWorkspaceEdit.StartEditing(false); pWorkspaceEdit.StartEditOperation(); IFeatureBuffer pFeatureBuffer; IFeatureCursor pFeatureCuror; IFeature pFeature; pFeatureBuffer = pFeatCls.CreateFeatureBuffer(); pFeatureCuror = pFeatCls.Insert(true); pFeature = pFeatureBuffer as IFeature; pFeature.Shape = pPolylineGeo; pFeatureCuror.InsertFeature(pFeatureBuffer); pWorkspaceEdit.StopEditOperation(); pWorkspaceEdit.StopEditing(true); mapCtrl.Refresh(); } #endregion }
评论
1 楼
niwowl
2011-12-09
Threw an exception while working with the server The DCOM connection to the remote object has been disconnected
//保存对象
pFeature.store();
这句报的错,为什么啊!
//保存对象
pFeature.store();
这句报的错,为什么啊!
发表评论
-
ArcGIS Server 导出地图图片(SOAP)
2011-03-22 17:40 3649package com.esri.arcgis.sampl ... -
ArcGIS Server 集群的问题
2010-12-06 14:49 1821今天在服务器做了一个ArcGIS Server的集群部署加测试 ... -
Server For Flex API在线编辑移动图片符号
2010-11-18 21:57 2128当在点击事件中,用edit工具移动图片(Picture ... -
ArcGIS Server动态读取图层样式(Flex版)
2010-10-26 22:36 5260最近遇到很多人问这类的问题,在ArcGIS10的rest接口已 ... -
Web地图设计模式——ArcGIS Server
2010-06-07 12:54 3174Web地图通常包含底图(提供影像和位置信息)和功能性的专题图层 ... -
Arcgis Server+Asp.net(C#)的唯一值渲染
2010-05-27 23:55 3875#region "唯一值渲染" // ... -
Arcgis server的池化和非池化
2010-05-27 23:52 2026ServerObject的池化和非池 ... -
AO批量处理的经验之谈
2010-02-08 21:37 2433往Personal GDB或SDE GDB中写入要素记录是一件 ... -
任务管理器中arcsom.exe和arcsoc.exe的个数问题
2010-01-22 13:28 1805安装了ArcGIS Server的机器,当打开任务管理器的时候 ... -
ArcGIS空间查询算子
2010-01-20 19:19 25901. Intersect 定义:相交查询算子 ... -
ArcGIS Server的切图原理深入
2009-12-12 11:06 2714GoogleMap,VirtualEarth,YahooMap ... -
关于cache文件格式的选择:png8,png24,png32 or jpeg
2009-11-04 20:56 2557关于如何合理的选择缓存图片的格式: ... -
ArcGIS server 常见问题
2009-05-11 13:13 27472更多问题详见:http://www ... -
Attachment support is disabled解决方案
2009-03-08 21:47 6460Unable to find required classes ... -
Ajax Integration and Support in the ArcGIS Java We
2009-03-08 21:34 2031http://edndoc.esri.com/arcobjec ... -
Server Java开发--Born for SOA系列 整理中。。。
2009-02-16 10:36 2127Server Java开发--Born for SOA系列 前 ... -
空间查询及属性文本查询的代码
2009-02-10 13:05 5051package com.esri.adf.web; ... -
ArcGIS Server 专题图的实现
2009-02-09 14:48 7239测试完毕.地图服务是用ArcGis自带的USA.mxd.还留有 ... -
Server Java讲座--动态添加图层数据
2009-02-05 11:46 2352有的时候,特别是在做分析时,需要经常添加新的图层到当前的地图中 ... -
Server Java讲座---使用图片和TrueType字体进行标注
2009-02-05 11:41 1704直奔主题吧,接上个主题的讲座的内容,讲讲如何用图片进行标注。在 ...
相关推荐
总之,ArcGIS Server 10.3是一个功能强大的GIS服务器平台,通过ECP文件实现合法授权,为用户提供地图服务、地理处理服务和数据管理等功能,并在10.3版本中优化了性能、大数据处理和云部署。结合其他ArcGIS产品,它...
4. 支持多种数据格式:ArcGIS Server 10.4支持多种GIS数据格式,如Shapefile、GeoTIFF、CAD等,方便数据导入和导出。 5. Web GIS平台:与ArcGIS Online和Portal for ArcGIS无缝集成,构建全面的Web GIS解决方案。 ...
《基于ArcGIS的Python编程秘笈(第2版)》是一本深入探讨如何利用Python进行地理信息系统(GIS)开发的专业书籍。随着Python在GIS领域的广泛应用,掌握Python在ArcGIS中的运用已经成为许多GIS专业人员和爱好者的必备...
本项目基于ArcGIS Engine 10.1,实现了对SDE(Spatial Database Engine)数据库的连接以及一些核心功能,旨在提供类似ArcCatalog的操作体验。ArcCatalog是Esri公司出品的用于管理地理空间数据的桌面应用,而通过...
这可以通过编辑现有的 MXD 文件或者创建一个新的 MXD 文件来实现。具体步骤如下: 1. 打开 ArcMap 并加载所需的地理数据(例如 Shapefile)。 2. 对地图进行必要的编辑和样式设置,如调整图层顺序、设置符号等。 3....
ArcGIS Server的路径分析功能基于网络分析服务,能够提供实时的、基于Web的路径查找服务。在服务器端,你需要将`DHRoute.mxd`中的网络数据集发布为一个服务,然后在ArcGIS Server Manager中配置并启用这个服务。一旦...
**ArcGIS操作基于GIS文件格式** ArcGIS,全称Arc Geographic Information System,是Esri公司开发的一款强大的地理信息系统(GIS)软件,广泛应用于地理数据的处理、分析和展示。在ArcGIS中,地理信息通常以多种GIS...
3. **数据管理**:提供对多种数据格式的支持,包括Shapefile、Geodatabase、CAD、栅格数据等,并具备数据整合、编辑、版本控制等功能。 4. **安全性与权限管理**:具备强大的身份验证和授权机制,确保只有授权的...
2. 集成方式:通过WMS、WFS-T等接口,开源WebGIS可以消费ArcGIS Server提供的地图服务和地理信息服务,实现数据的读取、编辑和管理。 3. 自主配图切片:开源GIS可以创建自己的地图切片服务,与ArcGIS Server的动态...
1. **API概述**:Flex API是一个基于ActionScript 3.0的库,它包含了用于创建地图服务、图层、控件、工具以及与ArcGIS Server通信的类。它使得开发者能够轻松地在Adobe Flex环境中集成GIS功能。 2. **安装与配置**...
4. **数据创建与编辑**:支持数据输入、地理编码、读写Shapefile文件等。 5. **应用程序开发**:可以开发独立的GIS应用程序。 6. **控件开发**:支持开发自定义的GIS控件。 #### 三、开发方法探讨 ##### 3.1 开发...
5. 编辑功能:支持对地理数据进行添加、修改和删除操作。 6. 分析工具:包括缓冲区分析、网络分析、地形分析等高级GIS功能。 7. 三维地图:支持创建和显示三维地图,进行三维分析。 8. 打印和导出:可以将地图输出为...
由于 "arcgis105_16101.zip" 的具体内容未知,上述内容是基于ArcGIS 10.5的一般特性进行的阐述。实际解压后的文件可能会涉及到特定的更新、修补程序或特定用途的数据集,这些都需要根据文件内容来具体分析。
此外,通过ArcGIS的三维功能,可以构建立体地图,增强对地表特征的理解。 ArcGIS10还支持编程,通过使用ArcObjects SDK或集成开发环境(IDE),如Visual Studio,可以编写基于Java、JavaScript的自定义脚本或应用...
- **同步与管理**:与ArcGIS Server或Portal for ArcGIS无缝集成,实现数据的同步和管理。 - **定制应用**:支持基于模板快速创建定制化的移动应用,满足特定业务场景的需求。 - **高级分析工具**:集成了一系列高级...
用户可以通过ArcGIS Online或ArcGIS for Server来访问和操作这些基于SQLite的数据服务。 6. **性能优化**:尽管SQLite是轻量级的,但通过合理设计数据库结构(如索引创建、数据分区等)和优化查询语句,仍能提升其...
用户可以通过添加图层来扩展地图,例如添加Shapefile文件、Layer文件或栅格数据。ArcMap还提供了数据视图和版面视图,以支持不同的地图工作流程。 ArcGIS软件不仅仅是一个简单的制图工具,它还是一个强大的地理空间...
2. **ArcGIS Geoprocessing Service**:`arcpy` 可用于开发Web服务,将GIS处理功能发布到ArcGIS Server上,供其他应用或用户远程调用。 3. **Python Add-ins**:结合`arcpy` 和ArcGIS的Python Add-ins框架,可以开发...