初步认识

  地图由图层、要素、样式等组成。地图上有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;
}
}

arcgis for flex 学习笔记(一)的更多相关文章

  1. CSS3伸缩布局Flex学习笔记

    如果需要使用伸缩布局首先得把display:flex;对于兼容还得加前缀display:-webkit-display:flex;等其他浏览器前缀,但我本机Chrome测试已经不需要加前缀了,其实这些 ...

  2. ArcGIS AddIN Sample学习笔记

    1.AddInEditorExtension 功能描述:编辑器扩展,实现在编辑要素,对编辑事件的监听,及对新创建的要素的处理 核心代码: void Events_OnStartEditing() { ...

  3. Flex学习笔记-皮肤

    1文件结构 MXML应用程序 index.mxml 皮肤文件 components.button.skin.btnSkin1.mxml  皮肤文件的组件随便引用了spark.components.Bu ...

  4. Flex学习笔记-时间触发器

    <?xml version="1.0" encoding="utf-8"?> <s:Application xmlns:fx="ht ...

  5. Flex学习笔记-Vgropu Hgroup 定义的组 表单程序。

    <?xml version="1.0" encoding="utf-8"?> <s:Application xmlns:fx="ht ...

  6. Flex学习笔记-自定义菜单的显示细节

    icon <?xml version="1.0" encoding="utf-8"?> <s:Application xmlns:fx=&qu ...

  7. Flex学习笔记--多层菜单按钮

    <?xml version="1.0" encoding="utf-8"?> <s:Application xmlns:fx="ht ...

  8. Flex学习笔记-使用MXML和一个AS事件监听器监听事件

    <?xml version="1.0" encoding="utf-8"?> <s:Application xmlns:fx="ht ...

  9. flex学习笔记 使用函数,显示实时更新的标签

    <?xml version="1.0" encoding="utf-8"?> <s:Application xmlns:fx="ht ...

随机推荐

  1. 常用js方法合集

    var Default = { init: function () { }, addCookie: function (name,data) { var expdate = new Date(); / ...

  2. oracle 游标例子

    CREATE OR REPLACE PROCEDURE PRC_WAP_ACTIVEUSERS(RETCODE OUT VARCHAR2) /***************************** ...

  3. 教你用Bootstrap开发漂亮的前端界面

    Bootstrap介绍: Bootstrap 是最受欢迎的 HTML.CSS 和 JS 框架,用于开发响应式布局.移动设备优先的 WEB 项目. Bootstrap的特点: 一.预处理脚本:虽然可以直 ...

  4. 《python机器学习—预测分析核心算法》:理解数据

    参见原书2.1-2.2节 新数据集就像一个包装好的礼物,它充满了承诺和希望! 但是直到你打开前,它都保持神秘! 一.基础问题的架构.术语,机器学习数据集的特性 通常,行代表实例,列代表属性特征 属性, ...

  5. ZooKeeper完全分布式安装与配置

    Apache ZooKeeper是一个为分布式应用所设计开源协调服务,其设计目是为了减轻分布式应用程序所承担的协调任务.可以为用户提供同步.配置管理.分组和命名服务. 1.环境说明 在三台装有cent ...

  6. mysql分布式技术

    所有的分布式技术 dobble zokkiper ngix

  7. Java生成C#可用Model包

    项目需要提供接口给.NET团队使用,为方便大伙,特地写一个从Java接口生成C#可用Model包的工具Class 主Class是一个Controller,可以随时进行生成 package com.fa ...

  8. js日期插件bootstrap-datetimepicker的使用

    js日期插件——bootstrap-datetimepicker的使用心得: 在大多说的web项目中,都有日期选择器的使用.如果自己写一个日期选择器的话,费时又费力,而且不一定能写出来_(:3 」∠) ...

  9. 并查集——poj2524(入门)

    传送门:Ubiquitous Religions 许多次WA,贴上错的代码随时警示 简单没多加修饰的并查集 [WA1] #include <iostream> #include <c ...

  10. 【WebService】——阶段小结

    [概念] WebService集中解决了远程调用.跨平台和跨语言的问题.如下图中,A应用与B应用之间的相互调用不再局限于平台(Linux或Windows).语言(Java和C#). [与xml] 提到 ...