Feature、FeatureClass、FeatureLayer,这三者熟悉AO和AE的同仁,应该很清楚,这是三个必知必会的概念。Feature:单个地理要素,含有空间信息与属性信息:Feature=Geometry+Properties;FeatureClass:要素类或要素集合,同一类的要素集合,具有相同地理概化特征(空间图形类型相同),又具有相同的属性特征;FeatureLayer:FeatureClass的一个视图,就ArcGIS概念来类比,FeatureLayer ≈ FeatureClass + Zoom Level + Filter + Renderer(Symbology)+ Label + …
注意:本文的Graphic更接近ArcGIS Engine的Graphic而非ArcGIS JS API的Graphic,以后会建立Feature类,Feature = Geometry + Properties (即空间+属性)。而目前的Graphic用以描述图形,一个Graphic对应一个Symbol(当然具体应用时可复用);Feature则常用于,同一类要素组成FeatureClass,并通过设置Renderer来呈现为Feature-Layer
Symbol的理解
/**
- 符号基类
- @remarks
- 如按现实世界来抽取对象基类,下述属性不应放在基类
- 但考虑到Canvas的上下文设定,才决定抽取到基类
- /
Feature的理解
/**
- 矢量要素
- Graphic vs Feature:Graphic作为图形,可以一图形对应一渲染符号;而Feature作为矢量要素,常规应该根据图层设定的渲染方式Renderer来得到各个Feature的渲染符号,而非单一设置。
- Graphic = Geometry + Symbol
- Feature = Geometry + Properties
- ArcGIS AO/AE: Feature = Geometry + Properties
- ArcGIS JS API: Feature = Graphic = Geometry + Properties + Symbol
- /
Layer的理解
/** - 图层基类
- /
Graphic的理解
/** - 图形要素
- 区别与Feature,单纯的图形
- /