@extendz/extendz-openlayer
Version:
Extend UI Platform built on Angular Material
68 lines • 2.54 kB
JavaScript
/**
* Copyright 2018 the original author or authors
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
import * as ol from 'openlayers';
var PointTool = /** @class */ (function () {
function PointTool() {
}
/**
* 1. Define source
* 2. Define vector layer
* 3. Define mouse style
*/
PointTool.prototype.creatNewDraw = function (color) {
this.source = this.getSource();
this.vector = this.getVectorLayer(this.source, color);
this.mouseStyle = this.getMouseStyle(color);
return { draw: this.createDraw(this.source, this.mouseStyle, this.feature), style: this.mouseStyle, source: this.source };
};
PointTool.prototype.getSource = function () {
return new ol.source.Vector({ wrapX: true });
}; // End getSource ()
PointTool.prototype.getMouseStyle = function (color) {
return new ol.style.Style({
image: new ol.style.Circle({
fill: new ol.style.Fill({ color: color }),
stroke: new ol.style.Stroke({ color: color }),
radius: 5
})
});
}; // End getMouseStyle()
PointTool.prototype.getVectorLayer = function (source, color) {
return new ol.layer.Vector({
source: source,
style: new ol.style.Style({
image: new ol.style.Circle({
radius: 3,
fill: new ol.style.Fill({
color: color
})
})
})
});
}; // End getVectorLayer()
PointTool.prototype.createDraw = function (source, style, features) {
return new ol.interaction.Draw({
clickTolerance: 1000,
features: features,
type: 'Point',
source: source,
style: style,
});
}; // End createDraw()
return PointTool;
}()); // End class PointTool
export { PointTool };
//# sourceMappingURL=open-layer-point-tool.js.map