# Source: bemap-model/bemap-lineStyle.js

    /**
     * BeNomad BeMap JavaScript API - LineStyle
     */

    /**
     * @classdesc
     * Base class for LineStyle.
     * @public
     * @constructor
     * @param {Object} options See below the available values.
     * @param {bemap.Color} options.color Set the color of the line with a bemap.Color.
     * @param {int} options.width Set the width of the line in pixels.
     * @param {bemap.LineStyle.TYPE} options.type define the type of the line.
     */
    bemap.LineStyle = function(options) {
        var opts = options || {};

        /**
         * @type {Object}
         * @protected
         */
        this.native = null;

        /**
         * @type {Object}
         * @protected
         */
        this.color = opts.color ? opts.color : new bemap.Color();

        /**
         * @type {int}
         * @protected
         */
        this.width = opts.width ? opts.width : 3;

        /**
         * @type {String}
         * @protected
         */
        this.type = opts.type ? opts.type : bemap.LineStyle.TYPE.PLANE;
    };

    /**
     * List of available type for the line style.
     * @public
     * @enum bemap.LineStyle.TYPE
     */
    bemap.LineStyle.TYPE = {
        DASH: "dash",
        PLANE: "plane",
        DOT: "dot",
        DOT_DASH: "dot dash"
    };

    /**
     * Get the type of the line style.
     * @return {String} the type og the polyline.
     */
    bemap.LineStyle.prototype.getType = function() {
        return this.type;
    };

    /**
     * Return the bemap.Color which set the color of the line.
     * @return {bemap.Color} Return the Bemap.Color which set the color of the line.
     */
    bemap.LineStyle.prototype.getColor = function() {
        return this.color;
    };

    /**
     * Return the width of the line.
     * @return {int} Return the width of the line.
     */
    bemap.LineStyle.prototype.getWidth = function() {
        return this.width;
    };

    /**
     * Set the bemap.Color which set the color of the line.
     * @param {bemap.Color} Color the new bemap.Color to set.
     * @return {bemap.LineStyle} Return this.
     */
    bemap.LineStyle.prototype.setColor = function(color) {
        this.color = color;
        return this;
    };

    /**
     * Set the width of the line.
     * @param {double} width the new width of the line to set.
     * @return {bemap.LineStyle} Return this.
     */
    bemap.LineStyle.prototype.setWidth = function(width) {
        this.width = width;
        return this;
    };

    /**
     * Set the type of the polyline.
     * @param {String} type the new type to set.
     * @return {bemap.LineStyle} return this.
     */
    bemap.LineStyle.prototype.setType = function(type) {
        this.type = type;
        return this;
    };