符号渲染篇——Symbol
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的更多相关文章
- Vue.js 2.0源码解析之前端渲染篇
一.前言 Vue.js框架是目前比较火的MVVM框架之一,简单易上手的学习曲线,友好的官方文档,配套的构建工具,让Vue.js在2016大放异彩,大有赶超React之势.前不久Vue.js 2.0正式 ...
- iOS富文本组件的实现—DTCoreText源码解析 渲染篇
本文转载至 http://blog.cnbang.net/tech/2729/ 上一篇介绍了DTCoreText怎样把HTML+CSS解析转换成NSAttributeString,本篇接着看看怎样把N ...
- 符号表(Symbol Tables)
小时候我们都翻过词典,现在接触过电脑的人大多数都会用文字处理软件(例如微软的word,附带拼写检查).拼写检查本身也是一个词典,只不过容量比较小.现实生活中有许多词典的应用: 拼写检查 数据库管理应用 ...
- 《Algorithms 4th Edition》读书笔记——3.1 符号表(Elementary Symbol Tables)-Ⅳ
3.1.4 无序链表中的顺序查找 符号表中使用的数据结构的一个简单选择是链表,每个结点存储一个键值对,如以下代码所示.get()的实现即为遍历链表,用equals()方法比较需被查找的键和每个节点中的 ...
- 《Algorithms 4th Edition》读书笔记——3.1 符号表(Elementary Symbol Tables)-Ⅲ
3.1.3 用例举例 在学习它的实现之前我们还是应该先看看如何使用它.相应的我们这里考察两个用例:一个用来跟踪算法在小规模输入下的行为测试用例和一个来寻找更高效的实现的性能测试用例. 3.1.3.1 ...
- 《Algorithms 4th Edition》读书笔记——3.1 符号表(Elementary Symbol Tables)-Ⅱ
3.1.2 有序的符号表 典型的应用程序中,键都是Comparable的对象,因此可以使用a.compare(b)来比较a和b两个键.许多符号表的实现都利用Comparable接口带来的键的有序性来更 ...
- 《Algorithms 4th Edition》读书笔记——3.1 符号表(Elementary Symbol Tables)-Ⅰ
3.1符号表 符号表最主要的目的就是将一个键和一个值联系起来.用例能够将一个键值对插入符号表并希望在之后能够从符号表的所有键值对中按照键值姐找到对应的值.要实现符号表,我们首先要定义其背后的数据结构, ...
- openresty 前端开发轻量级MVC框架封装二(渲染篇)
这一章主要介绍怎么使用模板,进行后端渲染,主要用到了lua-resty-template这个库,直接下载下来,放到lualib里面就行了,推荐第三方库,已经框架都放到lualib目录里面,lua目录放 ...
- Android性能优化之渲染篇
下面是渲染篇章的学习笔记,部分内容和前面的性能优化典范有重合,欢迎大家一起学习交流! 1)Why Rendering Performance Matters 现在有不少App为了达到很华丽的视觉效果, ...
随机推荐
- SQL扫描并执行文件夹里的sql脚本
场景:项目数据库操作全部使用存储过程实现.每天都会有很多存储过程更新/增加,人工对测试环境中存储过程更新,会有一定概率出现遗漏,也麻烦!所以,需要一个工具将文件夹中所有存 储过程执行一 ...
- c# 轻量级 ORM 框架 之 DBHelper 实现 (三)
周末了比较清闲,把自己的orm框架整理了下,开源了. 已经做出来的东西通常感觉有些简单,一些新手或许听到"框架"一类的词觉得有些"高深",简单来说orm就是把a ...
- 资源管理更新系统V2.0版的一些问题
1.在上传文件夹时现在只能传给吴缤进行上传,不够友好,也降低了上传速度, 办法:用C#写一个WINFORM程序,为用户提供上传功能,登录也使用JAVA提供的WEBSERVICE提供登录验证,然后选择一 ...
- 在android market发布个人免费应用的步骤
写了一段时间的android应用了,只是在自己手机上面安装. 上周申请了android developer,需要一次性25美元的程序开发注册费用.费用需要用google checkout,所以还要先申 ...
- [Angular2 Router] Programmatic Router Navigation via the Router API - Relative And Absolute Router Navigation
In this tutorial we are going to learn how to navigate programmatically (or imperatively) by using t ...
- 你真的了解javascript吗
原文地址:http://dmitry.baranovskiy.com/post/91403200 看了文章中五个小例子,写了写自己的理解 #demo1 if (!("a" in w ...
- 对javascript this的理解
对于this的理解,大部分时间都比较模糊,最近几天做了一些研究,记录一下 首先应该明白,this是执行上下文的一个属性,它的值取决于执行上下文,执行上下文和函数调用方式相关,定义一个function的 ...
- 使用redis做pv、uv、click统计
redis实时统计 设计思路: 1. 前端smarty插件(smarty_function_murl),将网站所有的连接生成一个urlid,后端根据获取的参数将需要的数据存入redis. 2.后端插件 ...
- 编写who命令:文件操作,缓冲区与联机帮助
最近阅读UULP(Understanding Unix/Linux Programming),按照书中介绍对Unix/Linux系统编程进行学习梳理,总结如下. 1. who命令能做什么 who命令用 ...
- 使用Thread类可以创建和控制线程
1.创建线程 static void Main(string[] args) { /* Thread类 * 创建控制线程 * 其构造函数接受ThreadStart和ParameterizedThrea ...