• 三.Editing


    功能需要Editor组件,FeatureLayer和GeometryService几个组件配合使用才能完成。

     Server主要有:GeometryServer,MapServer,FeatureServer,ImageServer。

     Editor它需要FeatureLayer的url是FeatureServer的服务才能进行编辑,  属性outFields的OBJECTID不可用,outFields展示的字段是表示可编辑的字段。

      Editor的编辑Template是FeatureServer的原本属性字段。

    toolbarVisible="true"                工具栏  (实现,增,删,改)

    toolbarCutVisible="true"           剪切按钮(剪开之后geometry分成几个部分,没有丢失)

    toolbarMergeVisible="true"       合并按钮(几个geometry部分合并成一块)

    toolbarReshapeVisible="true"    修正按钮(去掉部分边角)

    三个按钮都添加之后,工具栏就全了

    demo:

    <?xml version="1.0" encoding="utf-8"?>
    <s:Application xmlns:fx="http://ns.adobe.com/mxml/2009"
                   xmlns:s="library://ns.adobe.com/flex/spark"
                   xmlns:mx="library://ns.adobe.com/flex/mx"
                   xmlns:esri="http://www.esri.com/2008/ags"
                   initialize="application1_initializeHandler(event)"
                   pageTitle="Editor with all toolbar options">
        <!--
             This sample shows you how to use the editor component with a full toolbar.
        -->
    
        <fx:Style>
            @namespace esri "http://www.esri.com/2008/ags";
    
            esri|InfoWindow
            {
                background-color : #FFFFFF;
                border-thickness : 2;
            }
        </fx:Style>
    
        <fx:Script>
            <![CDATA[
                import com.esri.ags.components.supportClasses.CreateOptions;
                import com.esri.ags.tasks.GeometryService;
                import com.esri.ags.tools.DrawTool;
    
                import mx.events.FlexEvent;
    
                protected function application1_initializeHandler(event:FlexEvent):void
                {
                    myEditor.featureLayers = [ fireAreas ];
                    var myDrawTypePreferences:CreateOptions = new CreateOptions();
                    // change the defauls drawing tool from "point-to-point" to "freehand"
                    myDrawTypePreferences.polygonDrawTools = [ DrawTool.FREEHAND_POLYGON, DrawTool.POLYLINE, CreateOptions.AUTO_COMPLETE ];
                    myEditor.createOptions = myDrawTypePreferences;
                }
            ]]>
        </fx:Script>
    
        <mx:VBox width="100%" height="100%">
    
            <esri:Map id="myMap" wrapAround180="true">
                <esri:extent>
                    <esri:Extent id="sheepfire"
                                 xmin="-13144000" ymin="4033000" xmax="-13066000" ymax="4099000">
                        <esri:SpatialReference wkid="102100"/>
                    </esri:Extent>
                </esri:extent>
                <esri:ArcGISTiledMapServiceLayer url="http://server.arcgisonline.com/ArcGIS/rest/services/World_Topo_Map/MapServer"/>
                <esri:FeatureLayer id="fireAreas"
                                   mode="snapshot"
                                   outFields="*"
                                   url="http://sampleserver3.arcgisonline.com/ArcGIS/rest/services/Fire/Sheep/FeatureServer/2"/>
            </esri:Map>
            <esri:Editor id="myEditor"
                         width="100%"
                         geometryService="{new GeometryService('http://sampleserver3.arcgisonline.com/ArcGIS/rest/services/Geometry/GeometryServer')}"
                         map="{myMap}"
                         toolbarCutVisible="true"
                         toolbarMergeVisible="true"
                         toolbarReshapeVisible="true"
                         toolbarVisible="true"/>
            <s:Label width="100%" text="This feature layer has {fireAreas.numGraphics} ({fireAreas.selectedFeatures.length} selected) fire areas."/>
    
        </mx:VBox>
    </s:Application>
  • 相关阅读:
    [转]实习生需要懂的40大基本规矩
    [转]Linux下pppoe配合Drcom插件上网方法介绍......
    收藏一些图书
    [转]30个自我提升技巧
    [转]关于Gmail打不开的解决办法
    [转]李开复经典语录盘点:人生之路在于每次的选择
    [转]哈佛管理世界中智慧
    胡伟武校友在2011年中国科大本科生毕业典礼暨学位授予仪式上的讲话
    Dynamics4.0和Dynamics2011处理Email的方法
    JS实现简单的ToolTip功能
  • 原文地址:https://www.cnblogs.com/tiandi/p/2348020.html
Copyright © 2020-2023  润新知