com.supermap.services.components.commontypes

类 Style

  • java.lang.Object
    • com.supermap.services.components.commontypes.Style
  • 所有已实现的接口:
    java.io.Serializable


    public class Style
    extends java.lang.Object
    implements java.io.Serializable
    

    风格类。

    该类用于定义点状符号、线状符号、填充符号风格及其相关属性。

    1. 对于各种几何对象,文本对象只能设置文本风格,不能设置几何风格。
    2. 该类的实例中只存储风格的 ID 值,具体的风格存储在相应的点状符号、线状符号、填充符号库中。
    3. 除CAD 数据集之外,其他类型数据集都不存储几何对象的风格信息。
    4. 填充模式分为普通填充模式和渐变填充模式。在普通填充模式下(当 fillGradientModeFillGradientMode.NONE 时),可以使用图片或矢量符号等进行填充,如果希望进行图片填充,需要在 SuperMap Deskpro 中将图片转换为符号再采用符号填充;在渐变填充模式下,有四种渐变类型可供选择:线性渐变填充(FillGradientMode.LINEAR)、辐射渐变填充(FillGradientMode.RADIAL)、圆锥渐变填充(FillGradientMode.CONICAL)和四角渐变填充(FillGradientMode.SQUARE)。
    另请参阅:
    序列化表格
    • 构造器概要

      构造器 
      构造器和说明
      Style()
      默认构造函数。
      Style(Style style)
      拷贝构造函数。
    • 方法概要

      方法 
      限定符和类型 方法和说明
      boolean equals(java.lang.Object obj)
      比较当前 Style 对象和另一个对象是否相等。
      int hashCode()
      生成哈希码。
      java.lang.String toString() 
      • 从类继承的方法 java.lang.Object

        clone, finalize, getClass, notify, notifyAll, wait, wait, wait
    • 字段详细资料

      • fillGradientAngle

        public double fillGradientAngle
        

        渐变填充的旋转角度。

        以度为单位,精确到0.1度,逆时针方向为正方向。

        有关各渐变填充风格类型的定义,请参见 FillGradientMode

        对于不同的渐变填充,其旋转的后的效果各异,但都是以最小外接矩形的中心为旋转中心,逆时针旋转的。

        1、线性渐变(Linear)

        当设置的角度为0-360度的任意角度时,经过起始点和终止点的线以最小外接矩形的中心为旋转中心逆时针旋转,渐变风格随之旋转,依然从线的起始端渐变到终止端的线性渐变。如下列举在特殊角度的渐变风格:

        (a)当渐变填充角度设置为0度或者360度的时候,那么渐变填充风格为由左到右从起始色到终止色的线性渐变,如图所示起始色为黄色,终止色为粉红色;

        (b)当渐变填充角度设置为180度时,渐变填充风格与(a)中描述的风格正好相反,即从右到左,从起始色到终止色线性渐变;

        (c)当渐变填充角度设置为90度时,渐变填充风格为由下到上,起始色到终止色的线性渐变;

        (d)当渐变填充角度设置为270度时,渐变填充风格与(c)中描述的风格正好相反,即从上到下,起始色到终止色线性渐变。

        2、辐射渐变(Radial)

        渐变填充角度设置为任何角度(不超出正常范围)时,将定义辐射渐变的圆形按照设置的角度进行旋转,由于圆是关于填充范围的最小外接矩形的中心点对称的,所以旋转之后的渐变填充的风格始终保持一样,即从中心点到填充范围的边界,从前景色到背景色的辐射渐变。

        3、圆锥渐变(Conical)

        当渐变角度设置为0-360度之间的任何角度,该圆锥的所有母线将发生旋转,以圆锥的中心点,即填充区域的最小外接矩形的中心为旋转中心,逆时针方向旋转。如图所示的例子中,旋转角度为90度,所有的母线都从起始位置(旋转角度为零的位置)开始旋转到指定角度,以经过起始点的母线为例,其从0度位置旋转到90度位置。

        4、四角渐变(Square)

        根据给定的渐变填充角度,将发生渐变的正方形以填充区域范围的中心为中心进行相应的旋转,所有正方形都是从初始位置即旋转角度为零的默认位置开始旋转。渐变依然是从内部的正方形到外部的正方形发生从起始色到终止色的渐变。

      • fillBackColor

        public Color fillBackColor
        

        填充符号的背景色。

        当填充模式为渐变填充时,该颜色为填充终止色。

      • fillBackOpaque

        public boolean fillBackOpaque
        

        当前填充背景是否不透明。

        如果当前填充背景是不透明的,则为 true,否则为 false。默认值为 False,代表透明。

      • fillGradientOffsetRatioX

        public double fillGradientOffsetRatioX
        

        渐变填充中心点相对于填充区域范围中心点的水平偏移百分比。

        设填充区域范围中心点的坐标为(x0, y0),填充中心点的坐标为(x, y),填充区域范围的宽度为 a,水平偏移百分比为 dx,则

        x=x0 + a*dx/100

        该百分比可以为负,当其为负时,填充中心点相对于填充区域范围中心点向 x 轴负方向偏移。

        该属性仅对辐射渐变、圆锥渐变和四角渐变填充有效,不适用于线性渐变填充。

      • fillGradientOffsetRatioY

        public double fillGradientOffsetRatioY
        

        填充中心点相对于填充区域范围中心点的垂直偏移百分比。

        设填充区域范围中心点的坐标为(x0, y0),填充中心点的坐标为(x, y),填充区域范围的高度为 b,垂直偏移百分比为 dy,则

        Y=y0 + b*dy/100

        该百分比可以为负,当其为负时,填充中心点相对于填充区域范围中心点向 y 轴负方向偏移。

        该属性仅对辐射渐变、圆锥渐变和四角渐变填充有效,线性渐变填充不适用。

      • fillForeColor

        public Color fillForeColor
        

        填充符号的前景色。

        当填充模式为渐变填充时,该颜色为渐变填充起始色。

      • fillGradientMode

        public FillGradientMode fillGradientMode
        

        渐变填充风格的渐变类型。

      • fillOpaqueRate

        public int fillOpaqueRate
        

        填充不透明度,合法值为 0——100 的数值。

        其中 0 表示完全透明;100 表示完全不透明。赋值小于 0 时按照 0 处理,大于 100 时按照 100 处理。 默认值为 100,表示完全不透明。

      • fillSymbolID

        public int fillSymbolID
        

        填充符号的编码,即在填充库中填充风格的 ID。

        此编码用于唯一标识各普通填充风格的填充符号。

      • lineColor

        public Color lineColor
        

        符号为线状符号时,表示边线的颜色;符号为点状符号时,表示点的颜色。

      • lineSymbolID

        public int lineSymbolID
        

        线状符号的编码,即线型库中线型的 ID。

        此编码用于唯一标识各普通填充风格的填充符号,默认值为0。

      • lineWidth

        public double lineWidth
        

        边线宽度。

        位为毫米,精度到0.1。默认值为1.0。

      • markerAngle

        public double markerAngle
        

        点状符号的旋转角度。

        以度为单位,精确到 0.1 度,逆时针方向为正方向。此角度可以作为普通填充风格中填充符号的旋转角度。默认值为0。

      • markerSize

        @Deprecated
        public double markerSize
        
        已过时。 

        点状符号的大小。

        单位为:mm。点状符号的大小跟点的显示大小是两个概念,这里设置的是点状符号的大小。

        从7.2.0开始废除,用markerWidth和markerHeight替代

      • markerWidth

        public double markerWidth
        

        点状符号的宽。

        单位为:mm。

      • markerHeight

        public double markerHeight
        

        点状符号的高。

        单位为:mm。

      • markerSymbolID

        public int markerSymbolID
        

        点状符号的编码,即符号库中点风格的 ID。

        此编码用于唯一标识各点状符号。

    • 构造器详细资料

      • Style

        public Style()
        

        默认构造函数。

      • Style

        public Style(Style style)
        

        拷贝构造函数。

        参数:
        style - 风格对象。
        抛出:
        java.lang.IllegalArgumentException - 当风格对象为 Null 时抛出异常。
    • 方法详细资料

      • hashCode

        public int hashCode()
        

        生成哈希码。

        覆盖:
        hashCode 在类中 java.lang.Object
        返回:
        哈希码。
      • equals

        public boolean equals(java.lang.Object obj)
        

        比较当前 Style 对象和另一个对象是否相等。

        覆盖:
        equals 在类中 java.lang.Object
        参数:
        obj - 与当前 Style 对象进行比较的对象。
        返回:
        如果两个对象相等,返回 true;否则返回 false。
      • toString

        public java.lang.String toString()
        
        覆盖:
        toString 在类中 java.lang.Object