类名 common/base/symbol/FillSymbol.js
import { defaultValue } from '../../util'
import Symbol from './Symbol'
import SimpleLineSymbol from './SimpleLineSymbol'
import { SymbolType } from '../enum'

/**
 * 填充符号基类
 * @class FillSymbol
 * @moduleEX SymbolModule
 * @extends Symbol
 * @param {Object} options 构造参数
 * @param {SimpleLineSymbol} [options.outline = new SimpleLineSymbol()] 外边线样式
 */
class FillSymbol extends Symbol {
  constructor(options) {
    super(options)
    options = defaultValue(options, {})
    /**
     * 符号类型
     * @member {String} FillSymbol.prototype.type
     */
    this.type = SymbolType.simpleFill
    /**
     * 外边线样式类型
     * @member {SimpleLineSymbol} FillSymbol.prototype.outline
     */
    this.outline = this._decorate(
      'outline',
      options.outline,
      SimpleLineSymbol,
      SimpleLineSymbol.fromJSON
    )
  }

  /**
   * @function FillSymbol.prototype.toJSON
   * @description 将JS对象转换为JSON格式
   * @returns {Object} 符号的实例化JSON
   * @example
   * //将JS对象转换为JSON格式
   * let symbol = fillSymbol.toJSON();
   */
  toJSON() {
    const json = super.toJSON()
    json.type = this.type
    json.outline = this.outline.toJSON()
    return json
  }
}
export default FillSymbol
构造函数
成员变量
方法
事件