60 lines
1.2 KiB
JavaScript
60 lines
1.2 KiB
JavaScript
goog.provide('ol.Feature');
|
|
|
|
goog.require('ol.Object');
|
|
goog.require('ol.geom.Geometry');
|
|
|
|
|
|
|
|
/**
|
|
* @constructor
|
|
* @extends {ol.Object}
|
|
* @param {ol.geom.Geometry=} opt_geometry Geometry.
|
|
* @param {Object=} opt_values Attributes.
|
|
*/
|
|
ol.Feature = function(opt_geometry, opt_values) {
|
|
|
|
goog.base(this, opt_values);
|
|
|
|
/**
|
|
* @private
|
|
* @type {ol.geom.Geometry}
|
|
*/
|
|
this.geometry_ = goog.isDef(opt_geometry) ? opt_geometry : null;
|
|
|
|
};
|
|
goog.inherits(ol.Feature, ol.Object);
|
|
|
|
|
|
/**
|
|
* @return {Object} Attributes object.
|
|
*/
|
|
ol.Feature.prototype.getAttributes = function() {
|
|
// TODO: see https://github.com/openlayers/ol3/pull/217
|
|
// var keys = this.getKeys(),
|
|
// len = keys.length,
|
|
// attributes = {},
|
|
// i, key
|
|
// for (var i = 0; i < len; ++ i) {
|
|
// key = keys[i];
|
|
// attributes[key] = this.get(key);
|
|
// }
|
|
// return attributes;
|
|
return this;
|
|
};
|
|
|
|
|
|
/**
|
|
* @return {ol.geom.Geometry} The geometry (or null if none).
|
|
*/
|
|
ol.Feature.prototype.getGeometry = function() {
|
|
return this.geometry_;
|
|
};
|
|
|
|
|
|
/**
|
|
* @param {ol.geom.Geometry} geometry The geometry.
|
|
*/
|
|
ol.Feature.prototype.setGeometry = function(geometry) {
|
|
this.geometry_ = geometry;
|
|
};
|