STYLE

样式保存符号化和样式化的参数。可以在 CLASSLABEL .

这个对象出现在4.0中,目的是将逻辑与外观分开。最终的目的是让命名样式(not yet supported)可以通过 Mapfile 重新使用。这是定义对象外观的方法(a CLASS 或A LABEL

ANGLE [double|attribute|AUTO]

ANGLE.

  • 对于点,它指定符号围绕其中心的旋转。

  • GAP 元素。

    • 对于负的“gap”值,它指定装饰符号相对于线条方向的旋转。角度0表示符号的X轴沿直线方向。

    • 对于非负(或不存在)“间隙”值,它指定装饰符号围绕其中心的旋转。角度为0表示符号不旋转。

  • 对于多边形,它指定图案填充符号中线条的角度(0-水平线),或者指定用于在多边形填充中生成图案的符号的旋转(它不指定整个填充的旋转)。有关它与阴影线的使用,请参见中的示例7 symbology examples .

  • 在5.0版中引入了[attribute]来指定角度值要使用的属性。需要硬括号[]。例如,如果数据源有一个名为“myrotate”的属性,该属性保存每个要素的角度值,则阴影线的样式对象可能包含:

    STYLE
      SYMBOL 'hatch-test'
      COLOR 255 0 0
      ANGLE [MYROTATE]
      SIZE 4.0
      WIDTH 3.0
    END
    

    此功能的关联RFC文档是 MS RFC 19:样式和标签属性绑定 .

  • 这个 AUTO GEOMTRANSFORM 关键字。

angleitem[字符串]

现在必须使用角度[attribute]。

5.0 版后已移除.

抗锯齿[真假]

TrueType字体是否应消除锯齿。仅对gd(gif)渲染有用。默认值为假。对其他渲染器没有效果(不能关闭消除混叠)。

警告

在 MapServer 7.0中删除了GD支持。

backgroundcolor[r][g][b][十六进制字符串]-已弃用

用于不透明符号的颜色。

注解

可以改用多个'style`s:

STYLE
  BACKGROUNDCOLOR 0 0 0
  SYMBOL "foo"
  COLOR 255 0 0
END

可替换为:

STYLE
  COLOR 0 0 0
END
STYLE
  SYMBOL "foo"
  COLOR 255 0 0
END

6.2 版后已移除.

颜色[R][G][B][十六进制字符串][属性]

用于绘图功能的颜色。

  • ` r`、`g`和'b`应为整数[0..255]。要指定绿色,请使用以下内容:

    COLOR 0 255 0
    
  • hexadecimal string 可以是

    • RGB值:“rrggbb”。要指定洋红色,请使用以下选项:

      COLOR "#FF00FF"
      
    • rgba值(添加半透明):“rrggbbaa”。要指定半透明品红色,请使用以下选项:

      COLOR "#FF00FFCC"
      
  • 在5.0版中引入了[attribute]以指定用于颜色值的属性。需要硬括号[]。例如,如果数据集有一个名为“mypaint”的属性,该属性保存每个记录的颜色值,请使用:object for可能包含:

    COLOR [MYPAINT]
    

    如果未指定“color”,并且它不是“type``pixmap`”的 SYMBOL,则不会呈现该符号。

    此功能的关联RFC文档是 MS RFC 19:样式和标签属性绑定 .

颜色范围[R][G][B][R][G][B][十六进制字符串][十六进制字符串]

定义两种颜色以对应 DATARANGE 价值观。颜色映射到两个值之间的连续线性渐变。

核密度估计(动态热图) 有关将这些应用于栅格图层的详细信息,以及 MS RFC 6:连续特征值的颜色范围映射 用于处理向量层。

数据范围[整数双精度][整数双精度]

定义两个值:低值和高值,MapServer将映射到“color range”条目定义的颜色范围。值必须是整数或双精度。颜色映射到两个值之间的连续线性渐变.

核密度估计(动态热图) 有关将这些应用于栅格图层的详细信息,以及 MS RFC 6:连续特征值的颜色范围映射 用于处理向量层。

间隙[双]

` gap`指定“sizeUnits”层中装饰线条和多边形填充的“symbol”(中心到中心)之间的距离。对于多边形填充,“gap”指定x和y方向上“symbol”之间的距离。对于行,“symbol”的中心放在行上。从MapServer 5.0开始,这也适用于PixMap符号。

当符号的缩放生效时( LAYER)指定了'symbolscaledenom',而'gap`指定了地图比例1:`symbolscaledenom`处图层'sizeUnits'中的距离。

  • INITIALGAP 未指定,将放置第一个符号 GAP/ 2从生产线开始。

  • 对于线,负的“GAP”值将导致符号的X轴相对于线的切线对齐。

  • 对于线条,一个正的“间隙”值将符号的X轴与输出设备的X轴对齐。

  • GAP

  • 对于多边形,如果缺少小于或等于符号大小的“间隙”或“间隙”,则会使符号边缘到边缘呈现。

ANGLE.

6.0 新版功能: 移居 SYMBOL

注解

随着时间的推移,“gap”的行为并不稳定。它指定了符号之间的空间量,以及符号之间的空间量和中心到中心的距离。从6.2开始,“Gap”指定符号之间的中心距。

GEOMTRANSFORM [bbox|centroid|end|labelpnt|labelpoly|start|vertices|<expression>]

用于指示在应用实际样式之前将转换当前功能。在5.4版中介绍。

  • bbox:生成当前要素几何图形的边界框。

  • 质心:生成当前要素几何体的质心。

  • end::生成当前要素几何图形的最后一个点。当与“angle”auto一起使用时,例如,它可以用于在直线段上呈现箭头。

  • 烙印: LABEL 风格。在标签附加到的地理位置上绘制标记。只有当标签位于CC位置时,这才对应于标签文本的中心。

  • 唇形聚伞花序: LABEL 风格。生成一个覆盖标签的多边形加上一个1像素的填充。

  • 开始:生成当前要素几何图形的第一个点。当与“angle”auto一起使用时,例如,它可以用于在直线段上呈现箭头尾部。

  • 顶点:生成当前要素几何体的所有中间顶点(点)(不包括起点和终点)。当与“angle”auto一起使用时,标记的方向是由两个相邻线段形成的半角度。

  • <expression>:将给定表达式应用于几何体。支持的表达式:

    • (buffer([shape],dist)):使用“dist”像素作为缓冲距离缓冲几何体([shape])。对于多边形,负的“dist”将产生后退。

    • (generalize([shape],tolerance)):简化几何体([shape]),与FME的Thintopoint算法相当。有关详细信息,请参阅http://trac.osgeo.org/gdal/ticket/966。

    注解

    取决于地理位置。

    • (Simplify([shape],Tolerance)):使用标准Douglas-Peucker算法简化几何图形([shape])。

    • (simplifypt([shape],tolerance)):简化几何图形([shape]),确保结果是有效的几何图形,具有与输入相同的尺寸和组件数量。 tolerance 必须为非负。

    • (smooth sia([形状]、平滑度大小、平滑度迭代、预处理)):将使用sia算法平滑几何体([形状]

    示例(多边形数据集)-在多边形边界内绘制一条两像素宽的线5像素:

    STYLE
      OUTLINECOLOR 255 0 0
      WIDTH 2
      GEOMTRANSFORM (buffer([shape],-5))
    END
    

样式和图层geomtransform之间存在差异。图层级别将接收地面坐标(米、度等),样式级别将接收像素坐标。Simplify()等方法的参数必须与渲染工作流中该点形状的坐标使用相同的单位,即样式级别的像素和图层级别的地面单位。

LAYER NAME "my_layer"
    TYPE LINE
    STATUS DEFAULT
    DATA "lines.shp"
    GEOMTRANSFORM (simplify([shape], 10))  ## 10 ground units
    CLASS
        STYLE
            GEOMTRANSFORM (buffer([shape], 5)  ## 5 pixels
            WIDTH 2
            COLOR 255 0 0
        END
    END
END
初始间隙[双]

` initialGap`用于设置虚线的样式。

如果与“gap”一起使用,“initialgap”指定到样式行上第一个符号的距离。

如果与“pattern”一起使用,“initialgap”指定到虚线上第一个短划线的距离。

示例1-带圆圈的虚线:

STYLE
  COLOR 0 0 0
  WIDTH 4
  PATTERN 40 10 END
END
STYLE
  SYMBOL "circlef"
  COLOR 0 0 0
  SIZE 8
  INITIALGAP 20
  GAP 50
END

示例1-带虚线覆盖的虚线样式:

STYLE
  COLOR 0 0 0
  WIDTH 6
  PATTERN 40 10 END
END
STYLE
  COLOR 255 255 255
  WIDTH 4
  INITIALGAP 2
  PATTERN 36 14 END
END

6.2 新版功能.

LINECAP [butt|round|square]

round. 见 MapServer 的制图符号构造 解释和举例。

6.0 新版功能: 移居 SYMBOL

LINEJOIN [round|miter|bevel|none]

round. 见 MapServer 的制图符号构造 解释和举例。

6.0 新版功能: 移居 SYMBOL

LineJoinMaxSize[整数]

miter MapServer 的制图符号构造 解释和举例。

6.0 新版功能: 移居 SYMBOL

maxscaledenom

最小刻度 STYLE 画出来。比例作为实际比例分数的分母给出,例如,对于比例为1:24000的地图,使用24000。

5.4 新版功能.

参见

Map Scale

最大尺寸[双]

以像素为单位绘制符号的最大大小。默认值为500。从5.4版开始,该值也可以是十进制值(不仅是整数)。见 LAYER SYMBOLSCALEDENOM .

最大宽度[双]

用于绘制线条的最大宽度(像素)。默认值为32。从5.4版开始,该值也可以是十进制值(不仅是整数)。见 LAYER SYMBOLSCALEDENOM .

MINSCALEDENOM [double]

最大刻度 STYLE 画出来。比例作为实际比例分数的分母给出,例如,对于比例为1:24000的地图,使用24000。

5.4 新版功能.

参见

Map Scale

小尺寸[双]

用于绘制符号的最小像素大小。默认值为0。从5.4版开始,该值也可以是十进制值(不仅是整数)。见 LAYER SYMBOLSCALEDENOM .

最小宽度[双]

用于绘制线条的最小宽度(像素)。默认值为0。从5.4版开始,该值也可以是十进制值(不仅是整数)。见 LAYER SYMBOLSCALEDENOM .

偏移量[双属性][双属性]

SIZEUNITS. SIZEUNITS x, y.

当符号缩放生效时(为 LAYER)指定了'symbolscaledenom',则'offset'在地图比例1:`symbolscaledenom`的图层'sizeUnits'中提供偏移值。

如果“偏移量”为“20``40”,则在渲染之前,几何体20`sizeUnits'将向左移动,40`sizeUnits'将向下移动。

对于线条,“y`=`-99”的“offset”将生成一个线条几何图形,该几何图形垂直于原始线条几何图形移动“x”大小单位。沿直线方向看时,正值“x”会将直线向右移动。当沿直线方向看时,负的“x”会将直线向左移动。

对于行,“y`=`-999`”(在版本6.4中添加)的“offset”将生成与“x`` sizeUnits`宽的行的边框对应的多行几何图形。这只能用于渲染粗线的轮廓。

不透明度[整数属性]

不透明度以绘制当前样式(适用于5.2+, AGG 渲染细节 仅限,不适用于PixMap符号)

  • 在5.6版中引入了[attribute]以指定用于不透明度值的属性。

outlinecolor[r][g][b] [十六进制字符串][属性]

用于勾勒多边形和某些标记符号的颜色(“椭圆”、“矢量”、“多边形”和“TrueType”)。对线条无效。可以使用“width”指定轮廓的宽度。如果未指定“宽度”,将绘制一个像素的轮廓。

如果为“style”定义了“symbol”,则“outlinecolor”将用于为该“symbol”创建大纲(只有“ellipse”、“truetype”和“polygon”vector“符号将获得大纲)。如果没有为“style”定义“symbol”,多边形将得到一个轮廓。

  • ` r`、`g`和'b`应为整数[0..255]。要指定绿色,请使用以下内容:

    OUTLINECOLOR 0 255 0
    WIDTH 3.0
    
  • hexadecimal string 可以是

    • RGB值:“rrggbb”。要指定洋红色,请使用以下选项:

      OUTLINECOLOR "#FF00FF"
      
    • rgba值(添加半透明):“rrggbbaa”。要指定半透明品红色,请使用以下选项:

      OUTLINECOLOR "#FF00FFCC"
      
  • 在5.0版中引入了[attribute]以指定用于颜色值的属性。需要硬括号[]。例如,如果数据集有一个名为“mypaint”的属性,该属性保存每个记录的颜色值,请使用:object for可能包含:

    OUTLINECOLOR [MYPAINT]
    

    此功能的关联RFC文档是 MS RFC 19:样式和标签属性绑定 .

outlinewidth [双属性]

轮廓的宽度(像素)。默认值为0.0。轮廓的厚度不取决于比例。

5.4 新版功能.

图案[双开][双关][双开][双关]…结束

用于定义线条工作(线条、多边形轮廓、阴影线等)的短划线图案。数字(双精度)指定“sizeUnits”层中虚线和虚线图案间隙的长度。当符号缩放生效时(为 :ref:`layer`指定了'symbolscaledenom',数字在地图比例1:`symbolscaledenom`的图层'sizeUnits'中指定破折号和间隙的长度。

` linecap`、`linejoin`和'linejoinmaxsize`可用于控制虚线的外观。

要指定宽5个单位、长5个单位、间距5个单位的虚线,可以使用以下样式:

STYLE
  COLOR 0 0 0
  WIDTH 5.0
  LINECAP BUTT
  PATTERN 5.0 5.0 END
END

PATTERN SYMBOL TYPE LINECAP hatch fill section of the symbol construction document

6.0 新版功能: 移居 SYMBOL

polaroffset[双属性][双属性]

在极坐标中给出的偏移量。

第一个参数是图层“sizeUnits”(或图层属性的名称)中的双精度值,用于指定半径/距离。

第二个参数是指定角度(逆时针)的双精度值(或层属性的名称)。

当符号缩放生效时( LAYER)指定了'symbolscaledenom',而'polaroffset'在地图比例1:'symbolscaledenom`'处给出了图层'sizeUnits'中的距离。

“polaroffset”值为“20``40”时,会将几何图形移到20` sizeUnits`以外的位置,该位置沿着一条40度角的直线移动,该直线水平向右移动。

当“polaroffset”用于具有“connectiontype``uvraster`”( vector field)的层时,可以使用特殊属性“uv_length`、uv_length_2`uv_angle`和`uv_minus_angle`以方便指定箭头的头部和尾部。例子:

LAYER
  ...
  TYPE POINT
  CONNECTIONTYPE uvraster
  ...
  CLASS
    STYLE
      SYMBOL "arrowbody"
      ANGLE [uv_angle]
      SIZE [uv_length]
      WIDTH 3
      COLOR 100 255 0
    END
    STYLE
      SYMBOL "arrowhead"
      ANGLE [uv_angle]
      SIZE 10
      COLOR 255 0 0
      POLAROFFSET [uv_length_2] [uv_angle]
    END
    STYLE
      SYMBOL "arrowtail"
      ANGLE [uv_angle]
      SIZE 10
      COLOR 255 0 0
      POLAROFFSET [uv_length_2] [uv_minus_angle]
    END
  END #class
END #layer

rangeitem [属性]

指定将用于在“colorrange”项的高端和低端之间映射颜色的属性。颜色映射到两个值之间的连续线性渐变。

下面是一个将值0.0-1.0映射到红-绿的示例:

STYLE
    RANGEITEM "myAttr"
    COLORRANGE 255 0 0  0 255 0
    DATARANGE 0.0 1.0
END

参见相关的RFC文档 MS RFC 6:连续特征值的颜色范围映射 .

大小[双属性]

要使用的符号/图案的高度,以层“sizeUnits”为单位。默认值取决于 symbol``type。对于“pixmap”:pixmap的高度(以像素为单位);对于“ellipse”和“vector”:对于“hatch”:1.0,对于“truetype”:1.0,:ref:symbol` points`参数的最大Y值。

当符号缩放生效时(为 LAYER)指定了'symbolscaledenom',则'size'以层'sizeUnits'为单位给出要在地图缩放1:`symbolscaledenom`中使用的符号/图案的高度。

  • TYPE SIZE symbology examples .

  • 在5.0版中引入了[attribute]以指定用于大小值的属性。需要硬括号[]。例如,如果数据集有一个名为“myheight”的属性,该属性保存每个要素的大小值,则阴影线的样式对象可能包含:

    STYLE
      SYMBOL 'hatch-test'
      COLOR 255 0 0
      ANGLE 45
      SIZE [MYHEIGHT]
      WIDTH 3.0
    END
    

    此功能的关联RFC文档是 MS RFC 19:样式和标签属性绑定 .

  • 从5.4版开始,该值也可以是十进制值(不仅是整数)。

SYMBOL [integer|string|filename|url|attribute]

用于呈现功能的符号。

  • 整数是符号集中符号的索引,从1开始(第5个符号是符号编号5)。

  • 字符串是符号的名称(如使用 SYMBOL NAME 参数)。

  • 文件名指定包含符号的文件的路径。例如PNG文件。指定相对于包含 Mapfile 的目录的路径。

  • url指定包含pixmap符号的文件的地址。例如PNG文件。URL必须以“http”开头:

    SYMBOL "http://myserver.org/path/to/file.png"
    

    6.0 新版功能.

  • [属性]允许通过使用数据集中指定符号名称的属性(如 :ref:`symbol``name`参数中定义的)来单独呈现功能。需要硬括号[]。

    5.6 新版功能.

如果未指定“symbol”,则行为取决于功能的类型。

  • 对于点,将不呈现任何内容。

  • 对于线条,“symbol”仅在要使用符号设置线条样式时才相关,因此缺少“symbol”意味着您将使用相关的线条呈现参数(colorwidthpatternlinecap、…)获得指定的线条。

  • COLOR 参数。

参见

SYMBOL

宽度[双属性]

WIDTH SIZEUNITS.

当符号的缩放生效时( LAYER)指定了'symbolscaledenom','width'是指在地图比例1:symbolscaledenom'处图层'sizeUnits'中的线条粗细。

  • SYMBOLOUTLINECOLOR, WIDTH SYMBOL TYPE ellipsetruetype.

  • 对于行,`width`指定行的宽度。

  • 对于多边形,如果与“outlinecolor”一起使用,“width”指定多边形轮廓的厚度。

  • 作为一个符号 SYMBOL TYPE WIDTH symbology examples .

  • 在5.4版中添加了[attribute]以指定宽度值要使用的属性。需要硬括号[]。

  • 从5.4版开始,该值也可以是十进制值(不仅是整数)。