Files
openlayers/examples/raster.js
2015-07-21 17:12:06 -06:00

59 lines
1.1 KiB
JavaScript

goog.require('ol.Map');
goog.require('ol.View');
goog.require('ol.layer.Image');
goog.require('ol.layer.Tile');
goog.require('ol.source.BingMaps');
goog.require('ol.source.Raster');
function tgi(pixels) {
var pixel = pixels[0];
var r = pixel[0] / 255;
var g = pixel[1] / 255;
var b = pixel[2] / 255;
var index = (120 * (r - b) - (190 * (r - g))) / 2;
pixel[0] = index;
return pixels;
}
var threshold = 10;
function color(pixels) {
var pixel = pixels[0];
var index = pixel[0];
if (index > threshold) {
pixel[0] = 0;
pixel[1] = 255;
pixel[2] = 0;
pixel[3] = 255;
} else {
pixel[3] = 0;
}
return pixels;
}
var bing = new ol.source.BingMaps({
key: 'Ak-dzM4wZjSqTlzveKz5u0d4IQ4bRzVI309GxmkgSVr1ewS6iPSrOvOKhA-CJlm3',
imagerySet: 'Aerial'
});
var imagery = new ol.layer.Tile({
source: bing
});
var greenness = new ol.layer.Image({
source: new ol.source.Raster({
sources: [bing],
operations: [tgi, color]
})
});
var map = new ol.Map({
layers: [imagery, greenness],
target: 'map',
view: new ol.View({
center: [-9651695.964309687, 4937351.719788862],
zoom: 13,
minZoom: 12
})
});