style~LineSymbol(options)

线符号。

Summary

Methods:
clone

克隆一个线符号对象。

getCapPtCount

获取线端点或连接处的样式为round时,构成round圆弧的点的数量

getColor

获取颜色值。

getDashPixelLength

获取虚线的片段长度

getDashRatio

获取虚线样式中:实线部分和虚线部分的比例。

getLineCap

获取线端头形状。

getLineJoin

获取连接处的形状。

getLineStyle

获取线型类型。

getMiterLimit

获取尖角的最大斜接距离。

getRenderMode

获取宽线渲染模式。

getWidth

获取线宽,单位是像素。

setCapPtCount

设置线端点或连接处的样式为round时,构成round圆弧的点的数量

setColor

设置线的颜色值。

setDashPixelLength

设置虚线的片段长度,像素单位,默认20

setDashRatio

设置虚线样式中:实线部分和虚线部分的比例,可以包括两段实线和两段虚线。

setLineCap

设置线端头的形状。

setLineJoin

设置线的连接处的形状。

setLineStyle

设置线型类型。

setMiterLimit

设置尖角的最大斜接距离,仅当线连接处样式为miter时,才起作用。

setRenderMode

设置宽线渲染模式。

setWidth

设置线的宽度,单位是像素。

Constructor

new LineSymbol(options)

构造函数。

Parameters:
Name Type Description
options Object

线符号对象的可选属性。

Name Type Description
color module:style~Color | Array

只支持纯色 线的颜色。当参数类型为Color时,线的颜色为纯色。当参数类型为数组时(如[0, new hmap.style.Color(255,
0, 0), 0.3, new hmap.style.Color(0, 255, 0), 0.5, new hmap.style.Color(0, 255, 255), 1.0, new hmap.style.Color(0, 0, 255)]),线的颜色为渐变色,其中数组中每
两个元素组成一组,依次为比例(第一组的比例为0,最后一组的比例为1,其余介于0和1之间,最多一位小数点)、颜色,分别代表线上的位置(从起点开始计算占线段总长的比
例),以及在该位置的颜色。

lineCap String

线端头的形状,包括'butt'(平头)、'square'(方头)、'round'(圆头),默认为'butt'。

lineJoin String

线连接处的形状。包括'bevel'(平角)、'miter'(尖角)、'round'(圆角),默认为'bevel'。

lineStyle String

线型,包括'solid'(实线)和'dash'(虚线),默认为'solid'(实线)。若设置虚线,可通过参数“dashRatio”来设置虚线样式。

dashRatio Array.<Number>

虚线样式,由4个元素组成的数组,依次描述一个虚线单元中线段、间距、线段、间距占虚线单元长度的比例。

dashPixelLength Number

一个虚线单元所占像素长度,默认20。

width Number

线的像素宽度,默认为1个像素。

miterLimit Number

线拐点尖角的最大斜接长度,只有当lineJoin为miter时才起作用,默认和线的宽度保持一致

Example
let lineSymbol = new hmap.style.LineSymbol({
     color:new hmap.style.Color(0,0,200,1),//线的颜色值
     lineCap:"square",//线端头形状"butt”、“square"、"round"
     lineJoin:"bevel",//线连接处形状"bevel"平角、 “miter"尖角、"round"圆角
     lineStyle:"solid",//线型,包括‘solid’和‘dash’两种,默认为实线
     width:5//线的像素宽度,默认为1个像素
});

Methods

clone() → {module:style~LineSymbol}

克隆一个线符号对象。

Returns:
module:style~LineSymbol -

线符号对象

Example
let newLineSymbol = lineSymbol.clone();

getCapPtCount() → {Number}

获取线端点或连接处的样式为round时,构成round圆弧的点的数量

Returns:
Number

getColor() → {module:style~Color}

获取颜色值。

Returns:
module:style~Color -

线的颜色对象

Example
let color = lineSymbol.getColor();

getDashPixelLength() → {Number}

获取虚线的片段长度

Returns:
Number

getDashRatio() → {Array.<Number>}

获取虚线样式中:实线部分和虚线部分的比例。

Returns:
Array.<Number> -

比例值

Example
let dashRatio = lineSymbol.getDashRatio();

getLineCap() → {String}

获取线端头形状。

Returns:
String -

"butt”、“square"、"round"三者之一。

Example
let lineCap = lineSymbol.getLineCap();

getLineJoin() → {String}

获取连接处的形状。

Returns:
String -

表示连接处形状的字符串。

Example
let lineJoin = lineSymbol.getLineJoin();

getLineStyle() → {String}

获取线型类型。

Returns:
String -

表示线型的字符串。

Example
let lineStyle = lineSymbol.getLineStyle();

getMiterLimit() → {Number}

获取尖角的最大斜接距离。

Returns:
Number -

尖角的最大斜接距离。

Example
let miterLimit = lineSymbol.getMiterLimit();

getRenderMode() → {String|string|*}

获取宽线渲染模式。

Returns:
String | string | *

getWidth() → {Number}

获取线宽,单位是像素。

Returns:
Number -

线宽

Example
let width = lineSymbol.getWidth();

setCapPtCount(n) → {Number}

设置线端点或连接处的样式为round时,构成round圆弧的点的数量

Parameters:
Name Type Description
n Number

构成round圆弧的点的数量。值越大,圆弧越平滑,但是计算量和内存占用量越大,建议在表现和性能之间进行平衡。

Returns:
Number -

返回构成round圆弧的点的数量

setColor(color) → {module:style~Color}

设置线的颜色值。

Parameters:
Name Type Description
color module:style~Color

线的颜色值。

Returns:
module:style~Color -

返回修改后的颜色值。

Example
let color = new hmap.style.Color(255,0,0,1);
let lineColor = lineSymbol.setColor(color);

setDashPixelLength(length)

设置虚线的片段长度,像素单位,默认20

Parameters:
Name Type Description
length Number

setDashRatio(dashRatio) → {Array.<Number>}

设置虚线样式中:实线部分和虚线部分的比例,可以包括两段实线和两段虚线。

Parameters:
Name Type Description
dashRatio Array.<Number>

比例值,长度为4,依次代表实线、虚线、实线、虚线部分的占比,如果数组后两个元素均为0,则实线部分和虚线部分比例均依据数组前两个元素确定。

Throws:

当参数不是数组,或者数组长度不是4,或者数组元素存在非数字以及无穷大数字的情况下,抛出异常:"parameter dashRatio must be an Array of length four, and the array elements must be numbers that are not infinity"

Returns:
Array.<Number> -

线样式中实线和虚线部分的比例

Example
lineSymbol.setDashRatio([2,1,3,2]);

setLineCap(lineCap) → {String}

设置线端头的形状。

Parameters:
Name Type Description
lineCap String

线端头形状,合法值是butt、square、round之一。

Throws:

当参数不合法时,抛出异常:"lineCap should be 'square', or 'butt', or 'round'"。

Returns:
String -

返回修改后的线端头形状。

Example
let lineCap = lineSymbol.setLineCap("butt");

setLineJoin(lineJoin) → {String}

设置线的连接处的形状。

Parameters:
Name Type Description
lineJoin String

线连接处形状,合法值包括bevel(平角)、miter(尖角)、round(圆角)。

Throws:

当参数不合法时,抛出异常:"lineJoin should be 'bevel' or 'miter' or 'round'"。

Returns:
String -

返回设置值。

Example
let lineJoin = lineSymbol.setLineJoin("bevel");

setLineStyle(lineStyle) → {String}

设置线型类型。

Parameters:
Name Type Description
lineStyle String

线型,默认为实线solid。可供选择的线型有:dash(虚线)和solid(实线)。

Throws:

当参数不是dash和和solid时,抛出异常:"lineStyle should be 'dash' or 'solid'"。

Returns:
String -

返回修改后的线型类型。

Example
let lineStyle = lineSymbol.setLineStyle("dash");

setMiterLimit(miterLimit)

设置尖角的最大斜接距离,仅当线连接处样式为miter时,才起作用。

Parameters:
Name Type Description
miterLimit Number

尖角的最大斜接距离

Throws:

当参数不是数字,或者是无穷大的数字时,抛出异常:"miterLimit should be number that is not infinity"。

Example
let miterLimit = lineSymbol.setMiterLimit(12);

setRenderMode(mode) → {String}

设置宽线渲染模式。

Parameters:
Name Type Description
mode String

宽线的渲染模式,可以是both(两侧渲染)、left(左侧渲染)或right(右侧渲染)。

Returns:
String -

返回修改后的宽线的渲染模式。

setWidth(width) → {Number}

设置线的宽度,单位是像素。

Parameters:
Name Type Description
width Number

线的宽度。大于等于0。

Returns:
Number -

返回修改后的线宽值。

Example
let width = lineSymbol.setWidth(5);