arcgis for flex 学习笔记(一)
初步认识
地图由图层、要素、样式等组成。地图上有N个图层,图层上有N个要素,每个要素可以存放点、线、面等,每个要素可以设置样式,如果显示图片、或文字均可以先创建一个mxml组件,然后设置到要素上。
面和线都是由点组成的。
添加点
1.首先初始化图层,GraphicsLayer。
2.获取坐标点,MapPoint。
3.创建要素,Graphic。
4.设置样式 Symbol。
5.添加要素至Layer,即是第一步创建的图层。
添加线
在添加点的基础上多了一个步骤。
获取到多个点,可以实例化一个线对象,将线添加到点中。
//构造线对象var pline:Polyline=new Polyline();//添加点数据到线pline.addPath(xydata);
其他步骤相同,xydata是一个MapPoint数组。
添加面
跟添加线的逻辑一样,面也是由n个点组成。核心代码如下:
var area:Polygon=new Polygon();area.addRing(xydataArea);
图层
图层按照先后添加顺序,好比html的zindex属性。最先添加的属性在下方。如果说,同时添加一个面和线,而线要做点击事件,那么线所处的图层应该在面之上。
高亮闪烁
创建一个symbolToggleEffect对象,设置其样式,在MouseOver事件中,开始动画,MouseOut事件中结束动画。
private static var symbolToggleEffect:SimpleFiltersToggleEffect; //高亮对象private static var filterMarker:GlowFilter=null; //高亮样式private static var simfilterArray:Array=[]; //过滤对象数组public static function DrawVehAreaOver(evt:MouseEvent):void{if (symbolToggleEffect)symbolToggleEffect.end();var targetGarphic:Graphic=evt.currentTarget as Graphic;//获取图层var layer:GraphicsLayer=GetAreaLayer();//找到缓冲区图层,存在则隐藏var currArea:Graphic=FindGraphicByAttr(layer, "AREAID", targetGarphic.attributes.USERID);if (currArea){currArea.visible=true;//开始高亮if (!symbolToggleEffect){if (!filterMarker){InitSyle();}symbolToggleEffect=new SimpleFiltersToggleEffect(currArea, null, simfilterArray, 500);}symbolToggleEffect.play();}}//昂是初始化private static function InitSyle():void{//高亮样式if (!filterMarker){var objselectedHouse:Object=RGlobal.MapUrlArrayList["FeatureStyles"].SelectHouse;filterMarker=new GlowFilter();filterMarker.color=objselectedHouse.fillcolor;filterMarker.blurX=20;filterMarker.blurY=20;filterMarker.alpha=objselectedHouse.fillopacity;filterMarker.strength=2;simfilterArray.push(filterMarker);}}/*线路要素 移出*/public static function DrawVehAreaOut(evt:MouseEvent):void{if (symbolToggleEffect)symbolToggleEffect.end();var targetGarphic:Graphic=evt.currentTarget as Graphic;//获取图层var layer:GraphicsLayer=GetAreaLayer();//找到缓冲区图层,存在则隐藏var currArea:Graphic=FindGraphicByAttr(layer, "AREAID", targetGarphic.attributes.USERID);if (currArea){currArea.visible=false;}}
转载于:https://www.cnblogs.com/codealone/p/3812677.html
arcgis for flex 学习笔记(一)相关推荐
- Flex学习笔记(零)
推荐Flex的初学者学习Adobe官方提供的Flex in a Weekvideo series, Flex 4.5.这一系列教程虽然是英文视频,但是Adobe很贴心地给出了pdf格式的视频内容和源代 ...
- Flash/Flex学习笔记(30):不用startDrag和stopDrag的对象拖动
对于从Sprite类继承来的对象,要实现拖放当然是Flash/Flex学习笔记(13):对象拖动(startDrag/stopDrag) 里讲的方法最方便,但是对于不是从Sprite类继承得来的对象, ...
- Flash/Flex学习笔记(51):3维旋转与透视变换(PerspectiveProjection)
Flash/Flex学习笔记(49):3D基础 里已经介绍了3D透视的基本原理,不过如果每次都要利用象该文中那样写一堆代码,估计很多人不喜欢,事实上AS3的DisplayObject类已经内置了z坐标 ...
- Flex学习笔记(1)——入门,HelloFlex
稍微有些资历的Web程序员想必都还记得Macromedia这个公司吧,想当初网页编程三剑客:Dreamweaver.Flash.Fireworks是多么的红火,可惜现在Macromedia已经是一个过 ...
- flex 学习笔记 皮肤(一)
flex 定义为组件定义皮肤有一下方式 : 一. 图形皮肤 如下所示: mx|Button{ upSkin:Embed(source="assets/btnup.png") ...
- ARCGIS地理信息系统学习笔记001--认识ARCGIS
1.认识ARCGIS 地理信息系统,应用于资源调查,环境污染监测,城市和区域 规划,等慢慢扩展到金融业,保险业,运输导航,医疗救护, 即时灾害救助等多个领域.地理信息系统的应用是 结合传统的地 ...
- ArcGIS For Flex学习之Mapping---Map Extent and Mouse Coordinates
效果图如下: 1 <?xml version="1.0" encoding="utf-8"?> 2 <s:Application xmlns: ...
- Flex 学习笔记之一:Flex 简介
Flex 是一个高效.免费的开源框架,可用于构建具有表现力的 Web 应用程序,这些应用程序利用 Adobe Flash Player和 Adobe AIR, 运行时跨浏览器.桌面和操作系统实现一致的 ...
- ArcGIS客户端开发学习笔记(五)——ArcGIS REST API基础
REST:表述性状态转移(REpresentational State Transfer)的简称,它定义了应该如何正确地使用Web标准. 目前我的水平还没到能够深入理解REST的地步,就连略懂皮毛都没 ...
- flex学习笔记--关于拖动
拖动--从startDrag开始直到flex里的DragManager 或者是NativeDragManager 但核心还是三个事件mouseDown,mouseUp,mouseMove 这几个事件的 ...
最新文章
- Linux启动nacos成功日志_Spring Cloud Alibaba基础教程:使用Nacos作为配置中心
- 机器学习实验中的编程技术(part3)--numpy
- Karrigell 入门教程
- Tomcat性能监控LambdaProbe
- cemtos7.2搭建samba
- oracle 10g for linux
- 高斯牛顿法 matlab代码实现
- 3个方法解决百度网盘限速 (2018-07-20)
- 百度地图json_R: 民政部官网市级行政地图的绘制
- Oracle数据库优化-列值大部分为null而谓词取非null值
- 重庆大学大数据与软件学院阿里云大数据实训总结报告
- 2022广东省安全员A证第三批(主要负责人)考试题库及答案
- 机器学习_深度学习毕设题目汇总——运动活动动作
- (B站必备)使用BiliBiliTool,全自动完成B 站任务神器!!!
- 【解决】mac移动硬盘只读错误,不丢失资料
- java中什么叫服务?
- 3DMax如何制作弧形椅子?
- [VCam和VSC]-VCam虚拟摄像头和 VSC虚拟声卡的使用方法
- php的ct表现,图文详解丨气胸的影像学表现
- 文本文件和二进制文件