ArcGIS Server的缓冲区分析

本文探讨了在使用ArcGIS Server进行缓冲区分析过程中遇到的问题,包括单位转换、自定义方法返回枚举变量、缓冲结果保存及字段值应用等方面,并分享了部分解决思路。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

这几天杂事很忙,然而在利用ArcGIS Server完成缓冲区分析时,遇到几个问题:
1、单位的转换问题
第一种渠道:通过pMap.MapUnits改变原地图的单位为欲设置的单位,使用更改后的值再做缓冲,按理说应该正确,但出错,看不到效果,原因还待查清。
        switch (Convert.ToInt32(HttpContext.Current.Session["unitsindex"]))
        {
            case 0:
                pUnitsEnum=ESRI.ArcGIS.esriSystem.esriUnits.esriMeters;
                break;
            case 1:
                pUnitsEnum=ESRI.ArcGIS.esriSystem.esriUnits.esriDecimalDegrees;
                break;
            case 2:
                pUnitsEnum=ESRI.ArcGIS.esriSystem.esriUnits.esriKilometers;
                break;
            case 3:
                pUnitsEnum=ESRI.ArcGIS.esriSystem.esriUnits.esriMiles;
                break;
        }
        double pFromValue = 0;
        pFromValue = Convert.ToDouble(HttpContext.Current.Session["bufferdistance"]);
        double dToValue = 0;
        IUnitConverter pUnitConverter = (IUnitConverter)mrl.ServerContextInfo.ServerContext.CreateObject("esriSystem.UnitConverter");
        dToValue = pUnitConverter.ConvertUnits(pFromValue,pUnitsEnum , pMap.MapUnits);
第二种渠道:转换值,实现正确效果;
2、使用自定义方法返回esriDecimalDegrees枚举变量的问题,不知怎么能够正确返回,做时出现不能返回的情况,有进一步弄清楚;
3、ArcGIS Server上做缓冲的结果的保存和使用问题;
4、使用表中的某一个字段值来做缓冲区生成的问题,有时间还得探讨完成。

对水系进行缓冲时的效果图



转载于:https://www.cnblogs.com/xypfs21/archive/2007/12/28/1017735.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值