无痕客

落花无情,流水无痕……

  博客园 :: 首页 :: 博问 :: 闪存 :: 新随笔 :: 联系 :: 订阅 订阅 :: 管理 ::

  很久没更新自己的博客了,最近实在是忙,忙各式各样的文档编写,我发现写文档一定要静心,细心推敲文档内容的逻辑关系,投入时间把文档编写工作搞好,是很有必要的。现在人都很浮躁,我和组成员都有这毛病,文档编写被当做要应付的工作,导致编写过程反复多次,最后提交到领导手里,被领导批不行了。我发现文档模板收集很重要,真是处处留心皆学问。

      文档编写工作量总是被大家低估,导致长时间编写文档就相当于没啥工作要做,所以边上总有多个编程工作在催着你等着你。

      上面就是我前段时间的感受吧,我搞“Arcgis Flex API 地图标注保存与读取”就是实现将各类标注保存,下次可以读取修改。

      下面简单记录一下我的实现思路:

       初步技术路线:

       1、使用Flex的开源库as3corelib.swc,实现标注对象的序列化

       2、通过Flex调用WebService实现将序列化内容进行入库管理。

       3、通过Flex调用WebService获取序列化内容为Arcgis的Flex类对象(如MapPoint等)。

       实际中遇到的问题

       1)as3corelib.swc无法序列化Arcgis的复杂对象(一个类对象里面涵括多个对象,如Graphic)

        2)无法将序列化内容直接反序列化Arcgis的Flex对象

        3)SimpleLineSymbol类无法直接被序列化,报“缺Patten属性”

       针对遇到的问题,重新修订技术路线

       0、封装Arcgis的标注相关类为自己的标注类

       1、使用Flex的开源库as3corelib.swc,实现新标注类对象的序列化

       2、通过Flex调用WebService实现将序列化内容进行入库管理,按标注类型不同分别存放。

       3、通过Flex调用WebService获取序列化内容

       4、自己解析序列化内容为自己的标注类

        5、通过自己的标注类对象,构建Arcgis的Flex标注类对象。

        目前封装效果实现:只需公开四个方法,平均二到三行代码即可实现地图标注的保存与读取。

       关键封装代码截图如下:

       1)封装列表类:

     

        2)SymbolUtility.as代码截图

     

      不足之处:注记保存与读取部分有待与数据库用户相关联。

     应网友要求提供源代码:下载,仅供参考

       本博客声明:本人的技术探索过程中,得到了国信司南公司方面支持。今后,本人博客里的所有技术探索成果将归“无痕客”、“国信司南”和“博客园”三方共同所有,原创作品如需转载,请注明本博客声明。 

 

posted on 2011-01-14 16:12  无痕客  阅读(3407)  评论(3编辑  收藏  举报