Symbol 是对 Graphic 对象进行符号样式设置的接口,所有符号样式类都实现了 Symbol 接口。

1.PictureMarkerSymbol
PictureMarkerSymbol 是对于点或多点要素的 Graphic 对象进行样式设置的类,PictureMarkerSymbol 主要通
过图片的 url 或 Drawable 等方式来设置图片符号,对于 PictureMarkerSymbol 还可以设置图片符号的旋转角度和
位置偏移,具体用法如下:

//创建图片样式符合
PictureMarkerSymbol pic = new PictureMarkerSymbol(getResources().getDrawable(R.drawable.icon));
Point pt = new Point(113,32);//创建一个点对象
Graphic gp = new Graphic(pt,pic);设置样式
graphicsLayer.addGraphic(gp);添加到图层中

2.SimpleMarkerSymbol

SimpleMarkerSymbol 也是针对点状要素的 Graphic 对象进行样式设置的类,SimpleMarkerSymbol 与
PictureMarkerSymbol 类很相似,只不过一个渲染成矢量点,另一个通过图片来替换该点。使用 SimpleMarkerSymbol
可以设置点的样式,如点的大小,颜色和类型,用法如下:

Point point = new Point();//创建点对象
Point.setX(114);//设置x坐标
Point.setY(32);//设置y坐标
//设置点样式的颜色,大小和点类型
SimpleMarkerSymbol sms = new SimpleMarkerSymbol(Color.RED,25,STYLE.CIRCLE)
Graphic gp = new Graphic(point,sms);
graphicsLayer.addGraphic(gp);//添加到图层中显示

3. SimpleLineSymbol

SimpleLineSymbol 是针对线状要素的 Graphic 对象进行样式设置的类,通过它可以设置线状要素的样式,包
括线型、线颜色、线宽和线的透明度等,具体用法如下:

Polyline poly = new Polyline ();//创建多边形对象
poly.startPath(new Point(0,0));//添加初始点
poly.lineto(new Point(10,0));
poly.lineto(new Point(10,10));
SimpleLineSymbol sls = new SimpleLineSymbol(Color.RED,25, SimpleLineSymbol.SOLID);//线样式对象,
包括颜色、线宽和线型等参数
sfs.setAlpha(50);//设置透明度
Graphic gp = new Graphic(poly, sls);

graphicsLayer.addGraphic(gp);//添加到图层中

4.SimpleFillSymbol

SimpleFillSymbol 是对于面状要素的 Graphic 对象进行样式设置的类,通过它设置面状要素的填充颜色和透
明度,另外也可以为面状要素添加边界的样式设置,SimpleFillSymbol 用法非常简单,如下:

Polygon poly = new Polygon();//创建多边形对象
poly.startPath(new Point(0,0));//添加初始点
poly.lineto(new Point(10,0));
poly.lineto(new Point(10,10));
poly.lineto(new Point(0,0));//多边形是闭合的因此最后还要添加初始点的位置
SimpleFillSymbol sfs = new SimpleFillSymbol(Color.RED);//面样式对象
sfs.setAlpha(50);//设置透明度
Graphic gp = new Graphic(poly,sfs);
graphicsLayer.addGraphic(gp);//添加到图层中

5.TextSymbol

TextSymbol 也是针对点状要素的 Graphic 对象进行样式设置的类,它将点的位置替换成文字进行标绘显示,
通过 TextSymbol 可以设置文字的大小、颜色、内容和排列方式。标绘的文字排列方式有两种:横向排列和纵向排
列,默认横向居中显示。用法如下:

Point point = new Point();//创建点对象
Point.setX(114);//设置x坐标
Point.setY(32);//设置y坐标
//设置点样式的颜色,大小和文本内容
TextSymbol ts = new TextSymbol (12,”点样式”,Color.RED);
Graphic gp = new Graphic(point,ts);
graphicsLayer.addGraphic(gp);//添加到图层中显示

符号渲染之——Symbol篇总结到此,若有完善待后续。

符号渲染篇——Symbol的更多相关文章

  1. Vue.js 2.0源码解析之前端渲染篇

    一.前言 Vue.js框架是目前比较火的MVVM框架之一,简单易上手的学习曲线,友好的官方文档,配套的构建工具,让Vue.js在2016大放异彩,大有赶超React之势.前不久Vue.js 2.0正式 ...

  2. iOS富文本组件的实现—DTCoreText源码解析 渲染篇

    本文转载至 http://blog.cnbang.net/tech/2729/ 上一篇介绍了DTCoreText怎样把HTML+CSS解析转换成NSAttributeString,本篇接着看看怎样把N ...

  3. 符号表(Symbol Tables)

    小时候我们都翻过词典,现在接触过电脑的人大多数都会用文字处理软件(例如微软的word,附带拼写检查).拼写检查本身也是一个词典,只不过容量比较小.现实生活中有许多词典的应用: 拼写检查 数据库管理应用 ...

  4. 《Algorithms 4th Edition》读书笔记——3.1 符号表(Elementary Symbol Tables)-Ⅳ

    3.1.4 无序链表中的顺序查找 符号表中使用的数据结构的一个简单选择是链表,每个结点存储一个键值对,如以下代码所示.get()的实现即为遍历链表,用equals()方法比较需被查找的键和每个节点中的 ...

  5. 《Algorithms 4th Edition》读书笔记——3.1 符号表(Elementary Symbol Tables)-Ⅲ

    3.1.3 用例举例 在学习它的实现之前我们还是应该先看看如何使用它.相应的我们这里考察两个用例:一个用来跟踪算法在小规模输入下的行为测试用例和一个来寻找更高效的实现的性能测试用例. 3.1.3.1 ...

  6. 《Algorithms 4th Edition》读书笔记——3.1 符号表(Elementary Symbol Tables)-Ⅱ

    3.1.2 有序的符号表 典型的应用程序中,键都是Comparable的对象,因此可以使用a.compare(b)来比较a和b两个键.许多符号表的实现都利用Comparable接口带来的键的有序性来更 ...

  7. 《Algorithms 4th Edition》读书笔记——3.1 符号表(Elementary Symbol Tables)-Ⅰ

    3.1符号表 符号表最主要的目的就是将一个键和一个值联系起来.用例能够将一个键值对插入符号表并希望在之后能够从符号表的所有键值对中按照键值姐找到对应的值.要实现符号表,我们首先要定义其背后的数据结构, ...

  8. openresty 前端开发轻量级MVC框架封装二(渲染篇)

    这一章主要介绍怎么使用模板,进行后端渲染,主要用到了lua-resty-template这个库,直接下载下来,放到lualib里面就行了,推荐第三方库,已经框架都放到lualib目录里面,lua目录放 ...

  9. Android性能优化之渲染篇

    下面是渲染篇章的学习笔记,部分内容和前面的性能优化典范有重合,欢迎大家一起学习交流! 1)Why Rendering Performance Matters 现在有不少App为了达到很华丽的视觉效果, ...

随机推荐

  1. 终于可以发布Delphi下收点OSGI精髓皮毛而设计的插件框架WisdomPluginFramework

    这是一个Delphi实现的插件框架,我耗费了相当相当相当多的精力来设计她,虽然仅闪着点我微薄智慧的光芒,但我还是决定用Wisdom来命名她,也因它是我绝无仅有的,在完成1年多后回头来看仍能相当满意的作 ...

  2. Linux(Centos)配置OpenSSH无密码登陆<转>

    最近在搭建Hadoop环境需要设置无密码登陆,所谓无密码登陆其实是指通过证书认证的方式登陆,使用一种被称为"公私钥"认证的方式来进行ssh登录.   " 公私钥" ...

  3. 配置Outlook Anywhere2010

    防火墙只需要开放CAS的443端口,其他硬件防火墙也是如此,不需要开放其他额外端口(80也没有必要开通,如果都使用https的话) 1.CAS:服务器配置-申请证书(内部.外部CAS名称)2.CAS: ...

  4. System.Runtime.InteropServices.COMException (0x800706BA) 解决方法

    提示“操作失败:无法获取MAC地址.”错误的解决方法. .NET 获取 MAC地址可能会遇到   System.Runtime.InteropServices.COMException (0x8007 ...

  5. CheckBoxList 只能选2个选项

    // ////下面判断用户是否多选,每选择一次比较一次,看是否超过规定名额 //string ClickedItem = Request.Form["__EVENTTARGET"] ...

  6. MVC4数据注释与验证

    Using Validation Annotations Required必须项验证属性 [Required] public string FirstName { get; set; } [Requi ...

  7. 嵌入式设备上运行AllJoyn注意事项

    1. 交叉编译AllJoyn库.编译成功后的文件位于:alljoyn-3.3.0-src\build\linux\arm\debug\dist\目录下: 2. 程序要使用AllJoyn,必须要启动al ...

  8. iOS10 资料汇总:值得回看的 10 篇 iOS 热文

    本文精选了 iOS大全 9月份的10篇热门文章.其中有软件推荐.技术分享及iOS10.Xcode8新特性等. 注:以下文章,点击标题即可阅读 <兼容iOS 10 资料整理笔记> 本文整理i ...

  9. C. Om Nom and Candies 巧妙优化枚举,将复杂度控制在10e6

    C. Om Nom and Candies 无线超大背包问题 #include <iostream> #include <cstdio> #include <cstrin ...

  10. 使用sharepreferce记录数组数据

    使用sharepreferce记录数组数据 /** * * sharepreference纪录news数据 * * */ private static final String name=" ...