diff --git a/examples/hue-saturation.js b/examples/hue-saturation.js
index d73afa88a6..5994978786 100644
--- a/examples/hue-saturation.js
+++ b/examples/hue-saturation.js
@@ -4,66 +4,77 @@ goog.require('ol.View2D');
goog.require('ol.layer.TileLayer');
goog.require('ol.proj');
goog.require('ol.source.BingMaps');
+goog.require('ol.webgl.SUPPORTED');
-var layer = new ol.layer.TileLayer({
- source: new ol.source.BingMaps({
- key: 'Ar33pRUvQOdESG8m_T15MUmNz__E1twPo42bFx9jvdDePhX0PNgAcEm44OVTS7tt',
- style: 'Aerial'
- })
-});
-
-var map = new ol.Map({
- layers: [layer],
- renderer: ol.RendererHint.WEBGL,
- target: 'map',
- view: new ol.View2D({
- center: ol.proj.transform([-9.375, 51.483333], 'EPSG:4326', 'EPSG:3857'),
- zoom: 15
- })
-});
-
-var increaseHue = document.getElementById('increase-hue');
-var resetHue = document.getElementById('reset-hue');
-var decreaseHue = document.getElementById('decrease-hue');
-
function setResetHueButtonHTML() {
resetHue.innerHTML = 'Hue (' + layer.getHue().toFixed(2) + ')';
}
-setResetHueButtonHTML();
-
-increaseHue.addEventListener('click', function() {
- layer.setHue(layer.getHue() + 0.25);
- setResetHueButtonHTML();
-}, false);
-resetHue.addEventListener('click', function() {
- layer.setHue(0);
- setResetHueButtonHTML();
-}, false);
-decreaseHue.addEventListener('click', function() {
- layer.setHue(layer.getHue() - 0.25);
- setResetHueButtonHTML();
-}, false);
-
-var increaseSaturation = document.getElementById('increase-saturation');
-var resetSaturation = document.getElementById('reset-saturation');
-var decreaseSaturation = document.getElementById('decrease-saturation');
function setResetSaturationButtonHTML() {
resetSaturation.innerHTML = 'Saturation (' +
layer.getSaturation().toFixed(2) + ')';
}
-setResetSaturationButtonHTML();
-increaseSaturation.addEventListener('click', function() {
- layer.setSaturation(layer.getSaturation() + 0.25);
+if (!ol.webgl.SUPPORTED) {
+ var info = document.getElementById('no-webgl');
+ /**
+ * display error message
+ */
+ info.style.display = '';
+} else {
+ var layer = new ol.layer.TileLayer({
+ source: new ol.source.BingMaps({
+ key: 'Ar33pRUvQOdESG8m_T15MUmNz__E1twPo42bFx9jvdDePhX0PNgAcEm44OVTS7tt',
+ style: 'Aerial'
+ })
+ });
+
+ var map = new ol.Map({
+ layers: [layer],
+ renderer: ol.RendererHint.WEBGL,
+ target: 'map',
+ view: new ol.View2D({
+ center: ol.proj.transform([-9.375, 51.483333], 'EPSG:4326', 'EPSG:3857'),
+ zoom: 15
+ })
+ });
+
+ var increaseHue = document.getElementById('increase-hue');
+ var resetHue = document.getElementById('reset-hue');
+ var decreaseHue = document.getElementById('decrease-hue');
+
+ setResetHueButtonHTML();
+
+ increaseHue.addEventListener('click', function() {
+ layer.setHue(layer.getHue() + 0.25);
+ setResetHueButtonHTML();
+ }, false);
+ resetHue.addEventListener('click', function() {
+ layer.setHue(0);
+ setResetHueButtonHTML();
+ }, false);
+ decreaseHue.addEventListener('click', function() {
+ layer.setHue(layer.getHue() - 0.25);
+ setResetHueButtonHTML();
+ }, false);
+
+ var increaseSaturation = document.getElementById('increase-saturation');
+ var resetSaturation = document.getElementById('reset-saturation');
+ var decreaseSaturation = document.getElementById('decrease-saturation');
+
setResetSaturationButtonHTML();
-}, false);
-resetSaturation.addEventListener('click', function() {
- layer.setSaturation(1);
- setResetSaturationButtonHTML();
-}, false);
-decreaseSaturation.addEventListener('click', function() {
- layer.setSaturation(Math.max(layer.getSaturation() - 0.25, 0));
- setResetSaturationButtonHTML();
-}, false);
+
+ increaseSaturation.addEventListener('click', function() {
+ layer.setSaturation(layer.getSaturation() + 0.25);
+ setResetSaturationButtonHTML();
+ }, false);
+ resetSaturation.addEventListener('click', function() {
+ layer.setSaturation(1);
+ setResetSaturationButtonHTML();
+ }, false);
+ decreaseSaturation.addEventListener('click', function() {
+ layer.setSaturation(Math.max(layer.getSaturation() - 0.25, 0));
+ setResetSaturationButtonHTML();
+ }, false);
+}
diff --git a/examples/side-by-side.html b/examples/side-by-side.html
index 5f72786bb4..e3ed360755 100644
--- a/examples/side-by-side.html
+++ b/examples/side-by-side.html
@@ -36,6 +36,9 @@
WebGL
+
+ This map requires a browser that supports
WebGL.
+
DOM
diff --git a/examples/side-by-side.js b/examples/side-by-side.js
index 763ac307e8..8c9adb9cae 100644
--- a/examples/side-by-side.js
+++ b/examples/side-by-side.js
@@ -3,6 +3,7 @@ goog.require('ol.RendererHint');
goog.require('ol.View2D');
goog.require('ol.layer.TileLayer');
goog.require('ol.source.MapQuestOpenAerial');
+goog.require('ol.webgl.SUPPORTED');
var domMap = new ol.Map({
@@ -19,14 +20,20 @@ var domMap = new ol.Map({
})
});
-
-var webglMap = new ol.Map({
- renderer: ol.RendererHint.WEBGL,
- target: 'webglMap'
-});
-webglMap.bindTo('layergroup', domMap);
-webglMap.bindTo('view', domMap);
-
+if (ol.webgl.SUPPORTED) {
+ var webglMap = new ol.Map({
+ renderer: ol.RendererHint.WEBGL,
+ target: 'webglMap'
+ });
+ webglMap.bindTo('layergroup', domMap);
+ webglMap.bindTo('view', domMap);
+} else {
+ var info = document.getElementById('no-webgl');
+ /**
+ * display error message
+ */
+ info.style.display = '';
+}
var canvasMap = new ol.Map({
renderer: ol.RendererHint.CANVAS,
diff --git a/examples/ten-thousand-points.html b/examples/ten-thousand-points.html
index b0cbb8184f..923bddcb19 100644
--- a/examples/ten-thousand-points.html
+++ b/examples/ten-thousand-points.html
@@ -31,6 +31,10 @@
+
+ This example requires a browser that supports
WebGL.
+
+
diff --git a/examples/ten-thousand-points.js b/examples/ten-thousand-points.js
index e2f1813fcd..a3cd6527d6 100644
--- a/examples/ten-thousand-points.js
+++ b/examples/ten-thousand-points.js
@@ -9,6 +9,7 @@ goog.require('ol.layer.TileLayer');
goog.require('ol.layer.VectorLayer2');
goog.require('ol.source.OSM');
goog.require('ol.source.VectorSource2');
+goog.require('ol.webgl.SUPPORTED');
// WARNING
@@ -16,53 +17,61 @@ goog.require('ol.source.VectorSource2');
// calls used here are internal and low-level and are not representative of the
// final API.
+if (!ol.webgl.SUPPORTED) {
+ var info = document.getElementById('no-webgl');
+ /**
+ * display error message
+ */
+ info.style.display = '';
+} else {
-var pointCollection = ol.geom2.PointCollection.createEmpty(101 * 101);
-var i, j, x, y;
-for (i = 0; i < 101; ++i) {
- for (j = 0; j < 101; ++j) {
- x = 20000000 * (i - 50) / 50;
- y = 20000000 * (j - 50) / 50;
- pointCollection.add([x, y]);
+ var pointCollection = ol.geom2.PointCollection.createEmpty(101 * 101);
+ var i, j, x, y;
+ for (i = 0; i < 101; ++i) {
+ for (j = 0; j < 101; ++j) {
+ x = 20000000 * (i - 50) / 50;
+ y = 20000000 * (j - 50) / 50;
+ pointCollection.add([x, y]);
+ }
}
-}
-var k = 1000000;
-var lineStringCollection = ol.geom2.LineStringCollection.pack([
- [[-20 * k, -20 * k], [20 * k, 20 * k]],
- [[-20 * k, 20 * k], [20 * k, -20 * k]],
- [[0 * k, 15 * k],
- [10 * k, 5 * k],
- [5 * k, 5 * k],
- [5 * k, -15 * k],
- [-5 * k, -15 * k],
- [-5 * k, 5 * k],
- [-10 * k, 5 * k],
- [0 * k, 15 * k]]
-]);
+ var k = 1000000;
+ var lineStringCollection = ol.geom2.LineStringCollection.pack([
+ [[-20 * k, -20 * k], [20 * k, 20 * k]],
+ [[-20 * k, 20 * k], [20 * k, -20 * k]],
+ [[0 * k, 15 * k],
+ [10 * k, 5 * k],
+ [5 * k, 5 * k],
+ [5 * k, -15 * k],
+ [-5 * k, -15 * k],
+ [-5 * k, 5 * k],
+ [-10 * k, 5 * k],
+ [0 * k, 15 * k]]
+ ]);
-var map = new ol.Map({
- controls: ol.control.defaults().extend([
- new ol.control.MousePosition({
- undefinedHTML: ' '
- })
- ]),
- layers: [
- new ol.layer.TileLayer({
- source: new ol.source.OSM()
- }),
- new ol.layer.VectorLayer2({
- source: new ol.source.VectorSource2({
- lineStringCollections: [lineStringCollection],
- projection: 'EPSG:3857',
- pointCollections: [pointCollection]
+ var map = new ol.Map({
+ controls: ol.control.defaults().extend([
+ new ol.control.MousePosition({
+ undefinedHTML: ' '
})
+ ]),
+ layers: [
+ new ol.layer.TileLayer({
+ source: new ol.source.OSM()
+ }),
+ new ol.layer.VectorLayer2({
+ source: new ol.source.VectorSource2({
+ lineStringCollections: [lineStringCollection],
+ projection: 'EPSG:3857',
+ pointCollections: [pointCollection]
+ })
+ })
+ ],
+ renderer: ol.RendererHint.WEBGL,
+ target: 'map',
+ view: new ol.View2D({
+ center: [0, 0],
+ zoom: 0
})
- ],
- renderer: ol.RendererHint.WEBGL,
- target: 'map',
- view: new ol.View2D({
- center: [0, 0],
- zoom: 0
- })
-});
+ });
+}