diff options
Diffstat (limited to 'misc/openlayers/examples/intersects.html')
-rw-r--r-- | misc/openlayers/examples/intersects.html | 193 |
1 files changed, 0 insertions, 193 deletions
diff --git a/misc/openlayers/examples/intersects.html b/misc/openlayers/examples/intersects.html deleted file mode 100644 index 31bdee0..0000000 --- a/misc/openlayers/examples/intersects.html +++ /dev/null @@ -1,193 +0,0 @@ -<!DOCTYPE html> -<html> - <head> - <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> - <meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=0"> - <meta name="apple-mobile-web-app-capable" content="yes"> - <title>Geometry Intersections</title> - <link rel="stylesheet" href="../theme/default/style.css" type="text/css"> - <!--[if lte IE 6]> - <link rel="stylesheet" href="../theme/default/ie6-style.css" type="text/css"> - <![endif]--> - <link rel="stylesheet" href="style.css" type="text/css"> - <style type="text/css"> - html, body { - margin: 0; - padding: 1em; - font: 0.9em Verdana, Arial, sans serif; - } - input, select, textarea { - font: 0.9em Verdana, Arial, sans-serif; - } - h2 { - margin-top: 0.75em; - font-size: 1.6em; - } - #leftcol { - position: absolute; - top: 0; - left: 1em; - padding: 0; - width: 455px; - } - #map { - width: 450px; - height: 225px; - border: 1px solid #ccc; - } - #input { - width: 450px; - } - #text { - font-size: 0.85em; - margin: 1em 0 1em 0; - width: 100%; - height: 10em; - } - #info { - position: relative; - padding: 2em 0; - margin-left: 470px; - } - #features { - font-size: 0.8em; - width: 100%; - height: 200px; - } - #intersections { - font-size: 0.8em; - width: 100%; - height: 200px; - } - p { - margin: 0; - padding: 0.75em 0 0.75em 0; - } - </style> - <script src="../lib/Firebug/firebug.js"></script> - <script src="../lib/OpenLayers.js"></script> - <script type="text/javascript"> - var map, vectors, geojson; - function init(){ - map = new OpenLayers.Map('map'); - vectors = new OpenLayers.Layer.Vector( - "Vector Layer", - {isBaseLayer: true} - ); - - map.addLayers([vectors]); - map.addControl(new OpenLayers.Control.MousePosition()); - - var panel = new OpenLayers.Control.EditingToolbar(vectors); - map.addControl(panel); - - geojson = new OpenLayers.Format.GeoJSON(); - - map.setCenter(new OpenLayers.LonLat(0, 0), 1); - } - - function serialize() { - var str = geojson.write(vectors.features, true); - document.getElementById('features').value = str; - } - - function deserialize() { - var element = document.getElementById('text'); - var features = geojson.read(element.value); - var bounds; - if(features) { - if(features.constructor != Array) { - features = [features]; - } - for(var i=0; i<features.length; ++i) { - if (!bounds) { - bounds = features[i].geometry.getBounds(); - } else { - bounds.extend(features[i].geometry.getBounds()); - } - - } - vectors.addFeatures(features); - map.zoomToExtent(bounds); - var plural = (features.length > 1) ? 's' : ''; - element.value = features.length + ' feature' + plural + ' added' - } else { - element.value = 'Bad input'; - } - } - - function intersect() { - var features = vectors.features; - var feat1, feat2, intersects12, intersects21; - var parts = []; - // reset attributes - for(var i=0; i<features.length; ++i) { - features[i].attributes.intersectsWith = []; - } - for(var i=0; i<features.length-1; ++i) { - feat1 = features[i]; - for(var j=i+1; j<features.length; ++j) { - feat2 = features[j]; - intersects12 = feat1.geometry.intersects(feat2.geometry); - if(intersects12) { - feat1.attributes.intersectsWith.push("f" + j); - parts.push("f" + i + " intersects f" + j + "\n"); - } - intersects21 = feat2.geometry.intersects(feat1.geometry); - if(intersects21) { - feat2.attributes.intersectsWith.push("f" + i); - parts.push("f" + j + " intersects f" + i + "\n"); - } - if(intersects12 != intersects21) { - parts.push("trouble with " + i + " and " + j + "\n"); - } - } - } - if(parts.length > 0) { - document.getElementById("intersections").value = parts.join(""); - } else { - document.getElementById("intersections").value = "no intersections"; - } - } - - // preload images - (function() { - var roots = ["draw_point", "draw_line", "draw_polygon", "pan"]; - var onImages = []; - var offImages = []; - for(var i=0; i<roots.length; ++i) { - onImages[i] = new Image(); - onImages[i].src = "../theme/default/img/" + roots[i] + "_on.png"; - offImages[i] = new Image(); - offImages[i].src = "../theme/default/img/" + roots[i] + "_on.png"; - } - })(); - - </script> - </head> - <body onload="init()"> - <div id="leftcol"> - <h1 id="title">OpenLayers Geometry Intersection Example</h1> - <div id="tags"> - intersection, geometry - </div> - <p id="shortdesc"> - Use of geometry.intersects method for testing geometry intersections. - </p> - <div id="map" class="smallmap"></div> - <div id="input"> - <textarea id="text"></textarea> - <input type="button" value="add feature" onclick="deserialize();" /> - <span id="selected"></span> - </div> - </div> - <div id="info"> - <p>Features</p> - <input type="button" value="refresh" onclick="serialize();"><br> - <textarea id="features"></textarea> - <p>Intersections</p> - <input type="button" value="intersect all" onclick="intersect();"><br> - <textarea id="intersections"></textarea> - </div> - </body> -</html> |