java+gis+flex技术总结1(浅谈FLEX空间编辑功能)

实现空间编辑,主要是为了手动的纠偏不在道路上的设备设施。

首先FLEX的右键功能是不能够实现开启空间编辑的功能,因为flex右键开启的时候,会导致键盘的输入法不能够切换成汉字,还有一系列的问题。

 

所以,后来我采用了左键弹出一个界面,界面上有开启空间编辑,和关闭空间编辑两个按钮。这两个按钮实际上对应的editor变量。

 

当开启编辑的时候 我们需要修改在图层添加GRAPHIC_ADD事件中代码

 if(Config.editor ==true){

  //添加图层事件
    event.graphic.addEventListener(MouseEvent.CLICK, function (e:MouseEvent):void{
     if(null!=historygraphic){
      historygraphic.filters=null;
     }

   //然后获取graphic对象

    selectedGraphic = Graphic(e.currentTarget);
     selectedGraphic.filters= [filters];
     historygraphic =selectedGraphic;
     var editTool:EditTool = new EditTool();
     editTool.map=map;     
     editTool.activate(EditTool.EDIT_VERTICES | EditTool.MOVE,[selectedGraphic]);
     editTool.addEventListener(EditEvent.VERTEX_ADD,editTool_vertexAddDeleteMoveHandler);
     editTool.addEventListener(EditEvent.VERTEX_DELETE,editTool_vertexAddDeleteMoveHandler);
     editTool.addEventListener(EditEvent.VERTEX_MOVE_STOP,editTool_vertexAddDeleteMoveHandler);
     editTool.addEventListener(EditEvent.GRAPHICS_MOVE_STOP,editTool_graphicsMoveHandler);

     然后创建编辑图层的工具。

function applyEdits(gr:Graphic):void
      {
        selectedGraphic=gr;

然后在这里面调用后台方法,

 FeatureLayer(gr.graphicsLayer).applyEdits(null, [ gr ], null);

}


     

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值