arcgis api for flex 开发入门(四)Darw控件的使用
来源:互联网 发布:重庆生活频道 网络直播 编辑:程序博客网 时间:2024/04/19 12:12
arcgis api for flex 在客户端提供了强大的绘制功能,可以通过简单的调用来
完成复杂的绘制工作,达到很好的交互效果,提供完美的用户体验,感觉不出来
是在web上操作。
下面我们就一起来实现绘制功能。
首先,我们需要定义一个draw 控件,使用<esriraw>标签来完成创建工作,如
下面的代码
<esriraw id="drawToolbar" map="{myMap}"
graphicsLayer="{myGraphicsLayer}" />
<esriraw >标签的map属性要绑定要你需要绘制的map上。graphicsLayer属性要
绑定到一个graphicsLayer上,所有绘制的结果都会添加到graphicsLayer上,
graphicsLayer的创建可以参考第二讲的内容。
控件创建好了,我们下面就可以调用这个控件的函数来完成绘制任务。
和上一讲一样,我们创建一个controlbar 来响应这些绘制的操作。
<mx:ControlBar horiz paddingBottom="0" paddingTop="0">
<mx:Button label="点" click="drawToolbar.activate
(Draw.MAPPOINT)" />
<mx:Button label="线" click="drawToolbar.activate
(Draw.POLYLINE)" />
<mx:Button label="流线" click="drawToolbar.activate
(Draw.FREEHAND_POLYLINE)" />
<mx:Button label="矩形" click="drawToolbar.activate
(Draw.EXTENT)" />
<mx:Button label="多边形" click="drawToolbar.activate
(Draw.POLYGON)" />
<mx:Button label="流多边形" click="drawToolbar.activate
(Draw.FREEHAND_POLYGON) "/>
<mx:Button label="结束绘制" click="drawToolbar.deactivate
() "/>
</mx:ControlBar>
在button 的click 响应函数里,我们只需要调用draw控件的activate函数来激活
当前绘制工具就可以了。
当你不想绘制的时候,调用deactivate函数就ok了,释放掉当前选择的绘制工具。
完成复杂的绘制工作,达到很好的交互效果,提供完美的用户体验,感觉不出来
是在web上操作。
下面我们就一起来实现绘制功能。
首先,我们需要定义一个draw 控件,使用<esriraw>标签来完成创建工作,如
下面的代码
<esriraw id="drawToolbar" map="{myMap}"
graphicsLayer="{myGraphicsLayer}" />
<esriraw >标签的map属性要绑定要你需要绘制的map上。graphicsLayer属性要
绑定到一个graphicsLayer上,所有绘制的结果都会添加到graphicsLayer上,
graphicsLayer的创建可以参考第二讲的内容。
控件创建好了,我们下面就可以调用这个控件的函数来完成绘制任务。
和上一讲一样,我们创建一个controlbar 来响应这些绘制的操作。
<mx:ControlBar horiz paddingBottom="0" paddingTop="0">
<mx:Button label="点" click="drawToolbar.activate
(Draw.MAPPOINT)" />
<mx:Button label="线" click="drawToolbar.activate
(Draw.POLYLINE)" />
<mx:Button label="流线" click="drawToolbar.activate
(Draw.FREEHAND_POLYLINE)" />
<mx:Button label="矩形" click="drawToolbar.activate
(Draw.EXTENT)" />
<mx:Button label="多边形" click="drawToolbar.activate
(Draw.POLYGON)" />
<mx:Button label="流多边形" click="drawToolbar.activate
(Draw.FREEHAND_POLYGON) "/>
<mx:Button label="结束绘制" click="drawToolbar.deactivate
() "/>
</mx:ControlBar>
在button 的click 响应函数里,我们只需要调用draw控件的activate函数来激活
当前绘制工具就可以了。
当你不想绘制的时候,调用deactivate函数就ok了,释放掉当前选择的绘制工具。
完整代码:
<?xml version="1.0" encoding="utf-8"?><mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" xmlns:esri="http://www.esri.com/2008/ags" pageTitle="Using ArcGIS API for Flex to connect to a cached ArcGIS Online service" styleName="plain"> <esri:Draw id="drawToolbar" map="{myMap}" graphicsLayer="{myGraphicsLayer}" /> <esri:SpatialReference id="sr" wkid="4326"/> <mx:ControlBar horizontalGap="0" paddingBottom="0" paddingTop="0"> <mx:Button label="点" click="drawToolbar.activate(Draw.MAPPOINT)" /> <mx:Button label="线" click="drawToolbar.activate(Draw.POLYLINE)" /> <mx:Button label="流线" click="drawToolbar.activate(Draw.FREEHAND_POLYLINE)" /> <mx:Button label="矩形" click="drawToolbar.activate(Draw.EXTENT)" /> <mx:Button label="多边形" click="drawToolbar.activate(Draw.POLYGON)" /> <mx:Button label="流多边形" click="drawToolbar.activate(Draw.FREEHAND_POLYGON) "/> <mx:Button label="结束绘制" click="drawToolbar.deactivate() "/> </mx:ControlBar> <esri:Map crosshairVisible="true" id = "myMap"> <esri:extent> <esri:Extent id = "esriMapExtent" xmin="116" ymin="39.5" xmax="116.5" ymax="40.5"/> </esri:extent> <esri:ArcGISTiledMapServiceLayer url="http://server.arcgisonline.com/ArcGIS/rest/services/ESRI_StreetMap_World_2D/MapServer" /> <esri:GraphicsLayer id="myGraphicsLayer" spatialReference="{sr}"/> </esri:Map></mx:Application>
- arcgis api for flex 开发入门(四)Darw控件的使用
- arcgis api for flex 开发入门(四)Darw控件的使用
- arcgis api for flex 开发入门(三)地图浏览控件的使用
- arcgis api for flex 开发入门(三)地图浏览控件的使用
- arcgis api for flex 开发入门(七)Geometry service 的使用
- arcgis api for flex 开发入门(八)GP服务的使用
- arcgis api for flex 开发入门(九)webservices 的使用
- arcgis api for flex 开发入门(一)环境搭建
- arcgis api for flex 开发入门(五)查询
- arcgis api for flex 开发入门(一)环境搭建
- arcgis api for flex 开发入门(一)环境搭建
- arcgis api for flex 开发入门(五)查询
- arcgis api for flex 开发入门(六)identify
- ArcGIS API for Flex (使用ArcGIS API for Flex 创建一个新的地图项目)
- arcgis api for flex 高级主题(二) 自定义控件的开发
- arcgis api for flex 开发入门(二)map 的创建
- arcgis api for flex 开发入门(二)map 的创建
- ArcGIS.Server.9.3和ArcGIS API for Flex实现自己的Toc控件(三)
- POJ | 1065 Wooden Sticks | 贪心
- RIA Service部署IIS6 - WIN2003
- arcgis api for flex 开发入门(三)地图浏览控件的使用
- qt编译不识别tslib报找不到问题的解决
- hdu4180-RealPhobia
- arcgis api for flex 开发入门(四)Darw控件的使用
- 用Visual C++.NET进行GDI+编程
- arcgis api for flex 开发入门(五)查询
- HDU-3786找出直系亲属
- arcgis api for flex 开发入门(六)identify
- C++中利用虚函数实现多态
- POJ | 1323 Game Prediction | 贪心
- 优化算法入门系列文章目录(更新中):
- arcgis api for flex 开发入门(七)Geometry service 的使用