/**
* 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;
};