Skip to content

渲染器工厂

渲染器工厂用于定义图层中要素的渲染规则。

G.simpleRenderer(options)

创建简单渲染器,所有要素使用统一符号。

ts
G.simpleRenderer(options?: SimpleRendererOptions): SimpleRenderer
参数类型描述
symbolobject统一使用的符号
colorstring颜色(简写,等效于创建对应符号)
widthnumber线宽(简写)
ts
// 通过符号参数
const r1 = G.simpleRenderer({
  symbol: G.fillSymbol({ color: '#3498db' }),
});

// 通过简写参数
const r2 = G.simpleRenderer({ color: '#3498db', width: 2 });

G.uniqueValueRenderer(options)

创建唯一值渲染器,根据字段值映射不同符号。

ts
G.uniqueValueRenderer(options: UniqueValueRendererOptions): UniqueValueRenderer
参数类型描述
fieldstring用于分类的字段名(必填)
uniqueValuesobject[]唯一值映射数组,每项包含 { value, symbol }
defaultSymbolobject默认符号(值不在列表中时使用)
ts
const r = G.uniqueValueRenderer({
  field: 'type',
  uniqueValues: [
    { value: 'A', symbol: G.fillSymbol({ color: '#f00' }) },
    { value: 'B', symbol: G.fillSymbol({ color: '#0f0' }) },
  ],
  defaultSymbol: G.fillSymbol({ color: '#ccc' }),
});

G.classBreaksRenderer(options)

创建分级渲染器,根据数值区间映射符号。

ts
G.classBreaksRenderer(options: ClassBreaksRendererOptions): ClassBreaksRenderer
参数类型描述
fieldstring用于分级的字段名(必填)
stopsobject[]分级数组,每项包含 { min, max, symbol }
defaultSymbolobject默认符号
ts
const r = G.classBreaksRenderer({
  field: 'population',
  stops: [
    { min: 0, max: 1000, symbol: G.fillSymbol({ color: '#fee' }) },
    { min: 1000, max: 10000, symbol: G.fillSymbol({ color: '#fdd' }) },
    { min: 10000, max: 100000, symbol: G.fillSymbol({ color: '#fcc' }) },
  ],
  defaultSymbol: G.fillSymbol({ color: '#fff' }),
});

G.renderer(type, options)

通用渲染器工厂。

ts
G.renderer(type: string, options?: object): Renderer
参数类型描述
typestring渲染器类型
optionsobject类型对应的选项
ts
// 等效于 G.simpleRenderer(...)
G.renderer('simple', { color: '#333' });

// 等效于 G.uniqueValueRenderer(...)
G.renderer('unique-value', { field: 'type', uniqueValues: [...], defaultSymbol: {} });

// 等效于 G.classBreaksRenderer(...)
G.renderer('class-breaks', { field: 'pop', stops: [...], defaultSymbol: {} });

支持的类型

type等效方法
'simple'G.simpleRenderer(options)
'unique-value'G.uniqueValueRenderer(options)
'class-breaks'G.classBreaksRenderer(options)

未知类型默认回退为 simple renderer。

四川省交通运输综合地理服务平台 地图开发框架