GraphicsLayer和symbol
2015-09-23 11:21
295 查看
GraphicsLayer:继承自Layer,是图形数据集中展现的地方。GraphicsLayer是保留在内存中的一种图层(与 ArcMap、ArcGIS Engine、ArcGIS Server ADF程序中的相应概念类似),顾名思义是很多Graphic的集合,而所有与用户交互的内容通常都用Graphic来显示。比如多边形查询中用户画出的 多边形,属性/空间查询结果中的所有要素(Feature)等内容,都是Graphic。可以说,除了地图本身,基本上看到的所有与地理位置有关的东西都
可以用Graphic来表示。Graphic对象有3个重要的属性:Geometry,Symbol和Attributes。Geometry代表了一个 Graphic的几何形状(可疑是点、线、面任意一种)或地理位置,而Symbol则表示Graphic的呈现样子,比如颜色、效果,同时有了这两个属性 (缺一不可),Graphic就可以显示到地图上了。而Attributes是键值对集合,可在里面存储任意类型的对象,比如一个要素的属性信息。
以下是对graphics对象的描述:
![](http://img.blog.csdn.net/20151007132614251?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center)
以下是对symbol的描述:
(1)画点的symbol
![](http://img.blog.csdn.net/20151007133541486?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center)
(2)画线的symbol
![](http://img.blog.csdn.net/20151007133613949?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center)
(3)画多边形的symbol
![](http://img.blog.csdn.net/20151007133707872?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center)
以上可看出,symbol都是只能用在graphics layer上的
FeatureLayer:继承自GraphicsLayer,这也是ArcGIS API for Silverlight/WPF 中的亮点之一,通过它可以完成一些比较炫的功能。FeatureLayer继承自GraphicsLayer,它与后者的区别
是,GraphicsLayer中的Graphic都是人为创建出来的,而FeatureLayer中的Graphic都是从ArcGIS Server发布的服务中读取出来的,因此FeatureLayer比GraphicsLayer多了一个URL属性。这个URL通常指向一个
ArcGIS Server发布的MapService或FeatureService的子图层(对应一个FeatureClass)。FeatureLayer有了这 个URL后,就可以读取出该服务对应子图层里的所有要素内容,因此FeatureLayer里Graphic的Geometry属性会自动被 FeatureClass的Shape字段填充,而Graphic的Attributes字段则会根据要求,被FeatureClass中的属性信息所填
充。如果发布服务的服务器是ArcGIS Server 10版本,则Graphic的Symbol属性会自动被服务的DrawingInfo信息填充。另外,FeatureLayer是客户端API中对
FeatureService的唯一载体,这是它另一个非常重要的作用(也是主要作用)。
addGraphic()
GraphicsLayer
一个包含一个或多个图形要素的图层。地图可以包含一个或多个graphic图层。
1 构造函数
2 属性
3 配置方法
4 事件
可以用Graphic来表示。Graphic对象有3个重要的属性:Geometry,Symbol和Attributes。Geometry代表了一个 Graphic的几何形状(可疑是点、线、面任意一种)或地理位置,而Symbol则表示Graphic的呈现样子,比如颜色、效果,同时有了这两个属性 (缺一不可),Graphic就可以显示到地图上了。而Attributes是键值对集合,可在里面存储任意类型的对象,比如一个要素的属性信息。
以下是对graphics对象的描述:
以下是对symbol的描述:
(1)画点的symbol
(2)画线的symbol
(3)画多边形的symbol
以上可看出,symbol都是只能用在graphics layer上的
FeatureLayer:继承自GraphicsLayer,这也是ArcGIS API for Silverlight/WPF 中的亮点之一,通过它可以完成一些比较炫的功能。FeatureLayer继承自GraphicsLayer,它与后者的区别
是,GraphicsLayer中的Graphic都是人为创建出来的,而FeatureLayer中的Graphic都是从ArcGIS Server发布的服务中读取出来的,因此FeatureLayer比GraphicsLayer多了一个URL属性。这个URL通常指向一个
ArcGIS Server发布的MapService或FeatureService的子图层(对应一个FeatureClass)。FeatureLayer有了这 个URL后,就可以读取出该服务对应子图层里的所有要素内容,因此FeatureLayer里Graphic的Geometry属性会自动被 FeatureClass的Shape字段填充,而Graphic的Attributes字段则会根据要求,被FeatureClass中的属性信息所填
充。如果发布服务的服务器是ArcGIS Server 10版本,则Graphic的Symbol属性会自动被服务的DrawingInfo信息填充。另外,FeatureLayer是客户端API中对
FeatureService的唯一载体,这是它另一个非常重要的作用(也是主要作用)。
addGraphic()
GraphicsLayer
一个包含一个或多个图形要素的图层。地图可以包含一个或多个graphic图层。
1 构造函数
构造函数属性 | 描述 |
GraphicsLayer() | 创建一个新的GraphicsLayer对象。 |
属性 | 类型 | 描述 |
graphicProvider | Object | 用来显示的graphics集合。 |
initialExtent | Extent | 图层的初始范围。 |
numGraphics | int | [read-only] 获取该层的graphic图层的个数。 |
renderer | Renderer | 渲染允许动态拾取图形符号 - 例如基于属性或图位置形,或基于地图的比例尺,或其他因素。 |
spatialReference | SpatialReference | 图层的空间参考。 |
symbol | Symbol | 图层的默认符号。 |
symbolFunction | Function | [已过时 - 请使用 Renderers] 渲染允许动态拾取图形符号 - 例如基于属性或图位置形,或基于地图的比例尺,或其他因素。 |
units | String | 图层单位。 |
构造函数 | 返回 | 描述 |
add(graphic:Graphic) | String | 增加一个graphic。 |
clear() | void | 清除所有graphics. |
moveToTop(graphic:Graphic) | void | 将一个特定的graphic移到堆栈的顶部。 |
remove(graphic:Graphic) | void | 删除指定的graphic。 |
事件 | 描述 | ||
graphicAdd |
| ||
graphicClear |
| ||
graphicRemove |
|
相关文章推荐
- mac hadoop运行程序
- caffe错误锦集
- WPF MVVM下做发送短信小按钮
- 使用chrome开发程序,自动刷新开发目录
- EF 实体字段设置主键和自增
- 关于“短路逻辑”问题
- 四步完成asp网页设计流量统计
- 文件解压缩
- 线程池ThreadPoolExecutor
- 鸿图展业数码专营店
- Haar-like特征来龙去脉
- 队列的链表实现
- Android 内存管理之优化建议
- Quartz2D基础
- qml学习--------------利用Canvas绘制简单图形
- XE8-indy10中TIdTCPConnection.Connected函数的源码
- sql执行效率检测 mysql explain
- siglongjmp、sigsetjmp
- Tyvj 题目1088 treat(DP+记忆化搜索)
- An invalid form control with name='xxx' is not focusable