Compare commits
3 Commits
old-master
...
release-2.
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
db17be34f6 | ||
|
|
fd235bc091 | ||
|
|
b6fb16153c |
1
.gitignore
vendored
@@ -1 +0,0 @@
|
||||
/bin/plovr.jar
|
||||
49
api.json
@@ -1,49 +0,0 @@
|
||||
{
|
||||
"id": "api",
|
||||
|
||||
"output-file": "api.js",
|
||||
|
||||
"output-wrapper": [
|
||||
"// Copyright 2012 ...\n",
|
||||
"(function(){%output%})();"
|
||||
],
|
||||
|
||||
"inputs": "src/ol.export.js",
|
||||
"paths": [
|
||||
"src"
|
||||
],
|
||||
|
||||
"define": {
|
||||
// "goog.dom.ASSUME_STANDARDS_MODE": true,
|
||||
// "goog.userAgent.ASSUME_MOBILE_WEBKIT": true,
|
||||
"goog.DEBUG": false,
|
||||
"ol.API" : true
|
||||
},
|
||||
|
||||
"mode": "ADVANCED",
|
||||
"level": "VERBOSE",
|
||||
// "pretty-print": true,
|
||||
// "debug": true,
|
||||
|
||||
// "experimental-compiler-options": {
|
||||
// "generateExports": true
|
||||
// },
|
||||
|
||||
|
||||
"checks": {
|
||||
// acceptable values are "ERROR", "WARNING", and "OFF"
|
||||
"accessControls": "WARNING",
|
||||
"visibility": "WARNING",
|
||||
"checkTypes": "WARNING",
|
||||
"checkRegExp": "WARNING",
|
||||
"checkVars": "WARNING",
|
||||
"deprecated": "WARNING",
|
||||
"fileoverviewTags": "WARNING",
|
||||
"invalidCasts": "WARNING",
|
||||
"missingProperties": "WARNING",
|
||||
"nonStandardJsDocs": "WARNING",
|
||||
"undefinedVars": "WARNING"
|
||||
},
|
||||
|
||||
"jsdoc-html-output-path": "jsdoc"
|
||||
}
|
||||
127
art/arrows.svg
Normal file
@@ -0,0 +1,127 @@
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<!-- Created with Inkscape (http://www.inkscape.org/) -->
|
||||
<svg
|
||||
xmlns:dc="http://purl.org/dc/elements/1.1/"
|
||||
xmlns:cc="http://web.resource.org/cc/"
|
||||
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
|
||||
xmlns:svg="http://www.w3.org/2000/svg"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
xmlns:sodipodi="http://inkscape.sourceforge.net/DTD/sodipodi-0.dtd"
|
||||
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
|
||||
width="18.000000px"
|
||||
height="18.000000px"
|
||||
id="svg2"
|
||||
sodipodi:version="0.32"
|
||||
inkscape:version="0.42"
|
||||
sodipodi:docbase="/Users/phil/Documents/work/metacarta/2svn.openlayers.net/follower/code/b-edits-1/openlayers/assets/ui_elements"
|
||||
sodipodi:docname="pan_icons.svg"
|
||||
inkscape:export-filename="/Users/phil/Documents/work/metacarta/2svn.openlayers.net/follower/code/b-edits-1/openlayers/assets/ui_elements/zoom-minus-mini.png"
|
||||
inkscape:export-xdpi="90.000000"
|
||||
inkscape:export-ydpi="90.000000">
|
||||
<defs
|
||||
id="defs4" />
|
||||
<sodipodi:namedview
|
||||
id="base"
|
||||
pagecolor="#ffffff"
|
||||
bordercolor="#666666"
|
||||
borderopacity="1.0"
|
||||
inkscape:pageopacity="0.0"
|
||||
inkscape:pageshadow="2"
|
||||
inkscape:zoom="1.0000000"
|
||||
inkscape:cx="9.0000000"
|
||||
inkscape:cy="9.0000000"
|
||||
inkscape:document-units="px"
|
||||
inkscape:current-layer="layer1"
|
||||
inkscape:window-width="1226"
|
||||
inkscape:window-height="800"
|
||||
inkscape:window-x="42"
|
||||
inkscape:window-y="22" />
|
||||
<metadata
|
||||
id="metadata7">
|
||||
<rdf:RDF>
|
||||
<cc:Work
|
||||
rdf:about="">
|
||||
<dc:format>image/svg+xml</dc:format>
|
||||
<dc:type
|
||||
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
|
||||
</cc:Work>
|
||||
</rdf:RDF>
|
||||
</metadata>
|
||||
<g
|
||||
inkscape:label="background"
|
||||
inkscape:groupmode="layer"
|
||||
id="layer1">
|
||||
<g
|
||||
id="g2110">
|
||||
<path
|
||||
transform="matrix(0.000000,-1.003160,1.003160,0.000000,-2.844000e-2,18.02844)"
|
||||
d="M 17.971654 9.0000000 A 8.9716539 8.9716539 0 1 1 0.028346062,9.0000000 A 8.9716539 8.9716539 0 1 1 17.971654 9.0000000 z"
|
||||
sodipodi:ry="8.9716539"
|
||||
sodipodi:rx="8.9716539"
|
||||
sodipodi:cy="9.0000000"
|
||||
sodipodi:cx="9.0000000"
|
||||
id="path2059"
|
||||
style="fill:#00008b;fill-opacity:1.0000000;stroke:none;stroke-width:39.984146;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-dasharray:none;stroke-opacity:1.0000000"
|
||||
sodipodi:type="arc" />
|
||||
<rect
|
||||
transform="matrix(0.000000,-1.000000,1.000000,0.000000,0.000000,0.000000)"
|
||||
y="4.3599998e-06"
|
||||
x="-9.0000048"
|
||||
height="18.000000"
|
||||
width="9.0000000"
|
||||
id="rect2061"
|
||||
style="fill:#00008b;fill-opacity:1.0000000;stroke:none;stroke-width:39.984146;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-dasharray:none;stroke-opacity:1.0000000" />
|
||||
</g>
|
||||
</g>
|
||||
<g
|
||||
inkscape:groupmode="layer"
|
||||
id="layer4"
|
||||
inkscape:label="zoom"
|
||||
style="display:inline">
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-size:18.000000px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;text-align:start;line-height:125.00000%;writing-mode:lr-tb;text-anchor:start;fill:#ffffff;fill-opacity:1.0000000;stroke:#ffffff;stroke-width:1.0000000px;stroke-linecap:butt;stroke-linejoin:round;stroke-opacity:1.0000000;font-family:Helvetica"
|
||||
x="3.7485352"
|
||||
y="-3.4077148"
|
||||
id="text2114"
|
||||
sodipodi:linespacing="125.00000%"
|
||||
transform="scale(1.000000,-1.000000)"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan2118"
|
||||
x="3.7485352"
|
||||
y="-3.4077148">−</tspan></text>
|
||||
</g>
|
||||
<g
|
||||
inkscape:groupmode="layer"
|
||||
id="layer2"
|
||||
inkscape:label="overlay"
|
||||
style="display:none">
|
||||
<path
|
||||
style="font-size:12.000000px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:125.00000%;writing-mode:lr-tb;text-anchor:start;fill:#ffffff;fill-opacity:1.0000000;stroke:none;stroke-width:1.0000000px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000;font-family:Verdana"
|
||||
d="M 2.9678210,9.0332227 C 2.9678314,9.5015070 3.1752531,9.8938504 3.5900866,10.210254 C 3.6463464,10.254553 3.9451742,10.453889 4.4865710,10.808262 L 8.1568835,13.247754 C 8.2693886,13.323691 8.4240759,13.393300 8.6209460,13.456582 C 8.8107943,13.519862 9.0041535,13.551503 9.2010240,13.551504 C 9.5736843,13.551503 9.8936056,13.431269 10.160789,13.190801 C 10.427980,12.950332 10.561574,12.659238 10.561572,12.317520 C 10.561574,11.861896 10.322511,11.488536 9.8443836,11.197442 L 8.5998522,10.428575 L 14.548408,10.428575 C 15.026535,10.428577 15.406221,10.298849 15.687470,10.039395 C 15.968721,9.7799443 16.109345,9.4318977 16.109345,8.9952540 C 16.109345,8.5396330 15.961690,8.1915865 15.666377,7.9511133 C 15.364034,7.7106494 14.980831,7.5904152 14.516767,7.5904102 L 8.6314928,7.5904102 L 9.9920390,6.7076368 C 10.160793,6.5937365 10.290871,6.4481897 10.382274,6.2709962 C 10.466652,6.0874870 10.508840,5.8913153 10.508837,5.6824805 C 10.508840,5.3281127 10.378761,5.0338552 10.118602,4.7997070 C 9.8584498,4.5655745 9.5279814,4.4485043 9.1271961,4.4484962 C 8.7615757,4.4485043 8.4029823,4.5624104 8.0514147,4.7902149 L 3.9697741,7.5239649 C 3.6393151,7.7454540 3.4002529,7.9542820 3.2525866,8.1504493 C 3.0627532,8.3972503 2.9678314,8.6756875 2.9678210,8.9857618 L 2.9678210,9.0332227"
|
||||
id="text2082"
|
||||
sodipodi:nodetypes="csccsssscccssscccssssccscc" />
|
||||
</g>
|
||||
<g
|
||||
inkscape:groupmode="layer"
|
||||
id="layer3"
|
||||
inkscape:label="pan triangle"
|
||||
style="display:none">
|
||||
<path
|
||||
sodipodi:type="star"
|
||||
style="fill:#ffffff;fill-opacity:1.0000000;stroke:none;stroke-width:39.984146;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-dasharray:none;stroke-opacity:1.0000000"
|
||||
id="path2107"
|
||||
sodipodi:sides="3"
|
||||
sodipodi:cx="6.8031497"
|
||||
sodipodi:cy="5.1874018"
|
||||
sodipodi:r1="5.0880113"
|
||||
sodipodi:r2="2.5440056"
|
||||
sodipodi:arg1="1.0471976"
|
||||
sodipodi:arg2="2.0943951"
|
||||
inkscape:flatsided="false"
|
||||
inkscape:rounded="0.0000000"
|
||||
inkscape:randomized="0.0000000"
|
||||
d="M 9.3471551,9.5937489 L 5.5311469,7.3905753 L 1.7151384,5.1874015 L 5.5311469,2.9842283 L 9.3471555,0.78105489 L 9.3471553,5.1874018 L 9.3471551,9.5937489 z "
|
||||
transform="matrix(0.000000,-1.331000,1.331000,0.000000,2.038879,16.92102)" />
|
||||
</g>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 6.3 KiB |
128
art/layer-switcher-maximize.svg
Normal file
@@ -0,0 +1,128 @@
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<!-- Created with Inkscape (http://www.inkscape.org/) -->
|
||||
<svg
|
||||
xmlns:dc="http://purl.org/dc/elements/1.1/"
|
||||
xmlns:cc="http://web.resource.org/cc/"
|
||||
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
|
||||
xmlns:svg="http://www.w3.org/2000/svg"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
xmlns:sodipodi="http://inkscape.sourceforge.net/DTD/sodipodi-0.dtd"
|
||||
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
|
||||
width="18.000000px"
|
||||
height="18.000000px"
|
||||
id="svg2"
|
||||
sodipodi:version="0.32"
|
||||
inkscape:version="0.43"
|
||||
sodipodi:docbase="/home/sderle/projects/openlayers/layerswitcher/art"
|
||||
sodipodi:docname="layer-switcher-maximize.svg"
|
||||
inkscape:export-filename="/Users/phil/Documents/work/metacarta/2svn.openlayers.net/follower/code/b-edits-1/openlayers/assets/ui_elements/zoom-minus-mini.png"
|
||||
inkscape:export-xdpi="90.000000"
|
||||
inkscape:export-ydpi="90.000000">
|
||||
<defs
|
||||
id="defs4" />
|
||||
<sodipodi:namedview
|
||||
id="base"
|
||||
pagecolor="#ffffff"
|
||||
bordercolor="#666666"
|
||||
borderopacity="1.0"
|
||||
inkscape:pageopacity="0.0"
|
||||
inkscape:pageshadow="2"
|
||||
inkscape:zoom="16"
|
||||
inkscape:cx="9"
|
||||
inkscape:cy="9"
|
||||
inkscape:document-units="px"
|
||||
inkscape:current-layer="layer4"
|
||||
inkscape:window-width="1226"
|
||||
inkscape:window-height="800"
|
||||
inkscape:window-x="42"
|
||||
inkscape:window-y="25" />
|
||||
<metadata
|
||||
id="metadata7">
|
||||
<rdf:RDF>
|
||||
<cc:Work
|
||||
rdf:about="">
|
||||
<dc:format>image/svg+xml</dc:format>
|
||||
<dc:type
|
||||
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
|
||||
</cc:Work>
|
||||
</rdf:RDF>
|
||||
</metadata>
|
||||
<g
|
||||
inkscape:label="background"
|
||||
inkscape:groupmode="layer"
|
||||
id="layer1">
|
||||
<g
|
||||
id="g2110"
|
||||
transform="matrix(-7.849624e-17,1,-1,-7.849624e-17,18,0)">
|
||||
<path
|
||||
transform="matrix(0,-1.00316,1.00316,0,-2.844e-2,18.02844)"
|
||||
d="M 17.971654 9 A 8.9716539 8.9716539 0 1 1 0.028346062,9 A 8.9716539 8.9716539 0 1 1 17.971654 9 z"
|
||||
sodipodi:ry="8.9716539"
|
||||
sodipodi:rx="8.9716539"
|
||||
sodipodi:cy="9"
|
||||
sodipodi:cx="9"
|
||||
id="path2059"
|
||||
style="fill:#00008b;fill-opacity:1;stroke:none;stroke-width:39.98414612;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
|
||||
sodipodi:type="arc" />
|
||||
<rect
|
||||
transform="matrix(0,-1,1,0,0,0)"
|
||||
y="4.3599998e-06"
|
||||
x="-9.0000048"
|
||||
height="18"
|
||||
width="9"
|
||||
id="rect2061"
|
||||
style="fill:#00008b;fill-opacity:1;stroke:none;stroke-width:39.98414612;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
|
||||
</g>
|
||||
</g>
|
||||
<g
|
||||
inkscape:groupmode="layer"
|
||||
id="layer4"
|
||||
inkscape:label="zoom"
|
||||
style="display:inline">
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-size:18px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;text-align:start;line-height:125%;writing-mode:lr-tb;text-anchor:start;fill:#ffffff;fill-opacity:1;stroke:#ffffff;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:round;stroke-opacity:1;display:inline;font-family:Helvetica"
|
||||
x="1.5214844"
|
||||
y="-3.2949219"
|
||||
id="text2114"
|
||||
sodipodi:linespacing="125%"
|
||||
transform="scale(1,-1)"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan2118"
|
||||
x="1.5214844"
|
||||
y="-3.2949219">+</tspan></text>
|
||||
</g>
|
||||
<g
|
||||
inkscape:groupmode="layer"
|
||||
id="layer2"
|
||||
inkscape:label="overlay"
|
||||
style="display:none">
|
||||
<path
|
||||
style="font-size:12.000000px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:125.00000%;writing-mode:lr-tb;text-anchor:start;fill:#ffffff;fill-opacity:1.0000000;stroke:none;stroke-width:1.0000000px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000;font-family:Verdana"
|
||||
d="M 2.9678210,9.0332227 C 2.9678314,9.5015070 3.1752531,9.8938504 3.5900866,10.210254 C 3.6463464,10.254553 3.9451742,10.453889 4.4865710,10.808262 L 8.1568835,13.247754 C 8.2693886,13.323691 8.4240759,13.393300 8.6209460,13.456582 C 8.8107943,13.519862 9.0041535,13.551503 9.2010240,13.551504 C 9.5736843,13.551503 9.8936056,13.431269 10.160789,13.190801 C 10.427980,12.950332 10.561574,12.659238 10.561572,12.317520 C 10.561574,11.861896 10.322511,11.488536 9.8443836,11.197442 L 8.5998522,10.428575 L 14.548408,10.428575 C 15.026535,10.428577 15.406221,10.298849 15.687470,10.039395 C 15.968721,9.7799443 16.109345,9.4318977 16.109345,8.9952540 C 16.109345,8.5396330 15.961690,8.1915865 15.666377,7.9511133 C 15.364034,7.7106494 14.980831,7.5904152 14.516767,7.5904102 L 8.6314928,7.5904102 L 9.9920390,6.7076368 C 10.160793,6.5937365 10.290871,6.4481897 10.382274,6.2709962 C 10.466652,6.0874870 10.508840,5.8913153 10.508837,5.6824805 C 10.508840,5.3281127 10.378761,5.0338552 10.118602,4.7997070 C 9.8584498,4.5655745 9.5279814,4.4485043 9.1271961,4.4484962 C 8.7615757,4.4485043 8.4029823,4.5624104 8.0514147,4.7902149 L 3.9697741,7.5239649 C 3.6393151,7.7454540 3.4002529,7.9542820 3.2525866,8.1504493 C 3.0627532,8.3972503 2.9678314,8.6756875 2.9678210,8.9857618 L 2.9678210,9.0332227"
|
||||
id="text2082"
|
||||
sodipodi:nodetypes="csccsssscccssscccssssccscc" />
|
||||
</g>
|
||||
<g
|
||||
inkscape:groupmode="layer"
|
||||
id="layer3"
|
||||
inkscape:label="pan triangle"
|
||||
style="display:none">
|
||||
<path
|
||||
sodipodi:type="star"
|
||||
style="fill:#ffffff;fill-opacity:1.0000000;stroke:none;stroke-width:39.984146;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-dasharray:none;stroke-opacity:1.0000000"
|
||||
id="path2107"
|
||||
sodipodi:sides="3"
|
||||
sodipodi:cx="6.8031497"
|
||||
sodipodi:cy="5.1874018"
|
||||
sodipodi:r1="5.0880113"
|
||||
sodipodi:r2="2.5440056"
|
||||
sodipodi:arg1="1.0471976"
|
||||
sodipodi:arg2="2.0943951"
|
||||
inkscape:flatsided="false"
|
||||
inkscape:rounded="0.0000000"
|
||||
inkscape:randomized="0.0000000"
|
||||
d="M 9.3471551,9.5937489 L 5.5311469,7.3905753 L 1.7151384,5.1874015 L 5.5311469,2.9842283 L 9.3471555,0.78105489 L 9.3471553,5.1874018 L 9.3471551,9.5937489 z "
|
||||
transform="matrix(0.000000,-1.331000,1.331000,0.000000,2.038879,16.92102)" />
|
||||
</g>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 6.1 KiB |
142
art/layer-switcher-minimize.svg
Normal file
@@ -0,0 +1,142 @@
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<!-- Created with Inkscape (http://www.inkscape.org/) -->
|
||||
<svg
|
||||
xmlns:dc="http://purl.org/dc/elements/1.1/"
|
||||
xmlns:cc="http://web.resource.org/cc/"
|
||||
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
|
||||
xmlns:svg="http://www.w3.org/2000/svg"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
xmlns:sodipodi="http://inkscape.sourceforge.net/DTD/sodipodi-0.dtd"
|
||||
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
|
||||
inkscape:export-ydpi="90.000000"
|
||||
inkscape:export-xdpi="90.000000"
|
||||
inkscape:export-filename="/home/sderle/projects/openlayers/layerswitcher/img/layer-switcher-minimize.png"
|
||||
sodipodi:docname="layer-switcher-minimize.svg"
|
||||
sodipodi:docbase="/home/sderle/projects/openlayers/layerswitcher/art"
|
||||
inkscape:version="0.43"
|
||||
sodipodi:version="0.32"
|
||||
id="svg2"
|
||||
height="18.000000px"
|
||||
width="18.000000px">
|
||||
<defs
|
||||
id="defs4" />
|
||||
<sodipodi:namedview
|
||||
inkscape:window-y="26"
|
||||
inkscape:window-x="42"
|
||||
inkscape:window-height="800"
|
||||
inkscape:window-width="1226"
|
||||
inkscape:current-layer="layer1"
|
||||
inkscape:document-units="px"
|
||||
inkscape:cy="9.3025513"
|
||||
inkscape:cx="9"
|
||||
inkscape:zoom="16"
|
||||
inkscape:pageshadow="2"
|
||||
inkscape:pageopacity="0.0"
|
||||
borderopacity="1.0"
|
||||
bordercolor="#666666"
|
||||
pagecolor="#ffffff"
|
||||
id="base" />
|
||||
<metadata
|
||||
id="metadata7">
|
||||
<rdf:RDF>
|
||||
<cc:Work
|
||||
rdf:about="">
|
||||
<dc:format>image/svg+xml</dc:format>
|
||||
<dc:type
|
||||
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
|
||||
</cc:Work>
|
||||
</rdf:RDF>
|
||||
</metadata>
|
||||
<g
|
||||
style="display:inline"
|
||||
id="layer1"
|
||||
inkscape:groupmode="layer"
|
||||
inkscape:label="background">
|
||||
<rect
|
||||
style="fill:#00008b;fill-opacity:0;stroke:none;stroke-width:39.984146;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000"
|
||||
id="rect2061"
|
||||
width="18.014498"
|
||||
height="18.000000"
|
||||
x="-18.014502"
|
||||
y="4.3599998e-06"
|
||||
transform="matrix(0.000000,-1.000000,1.000000,0.000000,0.000000,0.000000)"
|
||||
inkscape:export-xdpi="90"
|
||||
inkscape:export-ydpi="90"
|
||||
inkscape:export-filename="/home/sderle/projects/openlayers/layerswitcher/art/layer-switcher-minimize.png" />
|
||||
</g>
|
||||
<g
|
||||
inkscape:label="graticule"
|
||||
id="layer5"
|
||||
inkscape:groupmode="layer">
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-size:18px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;text-align:start;line-height:125%;writing-mode:lr-tb;text-anchor:start;fill:#ffffff;fill-opacity:1;stroke:#ffffff;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:round;stroke-opacity:1;display:inline;font-family:Helvetica"
|
||||
x="5.2802601"
|
||||
y="-3.8032362"
|
||||
id="text1432"
|
||||
sodipodi:linespacing="125%"
|
||||
transform="scale(1,-1)"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan1434"
|
||||
x="5.2802601"
|
||||
y="-3.8032362">-</tspan></text>
|
||||
<rect
|
||||
style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#ffffff;stroke-width:0.99699599px;stroke-linecap:butt;stroke-linejoin:round;stroke-opacity:1"
|
||||
id="rect1438"
|
||||
width="13.003004"
|
||||
height="13.002999"
|
||||
x="2.498498"
|
||||
y="2.4984975" />
|
||||
</g>
|
||||
<g
|
||||
style="display:none"
|
||||
inkscape:label="zoom"
|
||||
id="layer4"
|
||||
inkscape:groupmode="layer">
|
||||
<text
|
||||
transform="scale(1.000000,-1.000000)"
|
||||
sodipodi:linespacing="125.00000%"
|
||||
id="text2114"
|
||||
y="-3.4077148"
|
||||
x="3.7485352"
|
||||
style="font-size:18.000000;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;fill:#ffffff;fill-opacity:1.0000000;stroke:#ffffff;stroke-width:1.0000000px;stroke-linecap:butt;stroke-linejoin:round;stroke-opacity:1.0000000;font-family:Helvetica;text-anchor:start;writing-mode:lr-tb"
|
||||
xml:space="preserve"><tspan
|
||||
y="-3.4077148"
|
||||
x="3.7485352"
|
||||
id="tspan2118"
|
||||
sodipodi:role="line">−</tspan></text>
|
||||
</g>
|
||||
<g
|
||||
style="display:none"
|
||||
inkscape:label="overlay"
|
||||
id="layer2"
|
||||
inkscape:groupmode="layer">
|
||||
<path
|
||||
sodipodi:nodetypes="csccsssscccssscccssssccscc"
|
||||
id="text2082"
|
||||
d="M 2.9678210,9.0332227 C 2.9678314,9.5015070 3.1752531,9.8938504 3.5900866,10.210254 C 3.6463464,10.254553 3.9451742,10.453889 4.4865710,10.808262 L 8.1568835,13.247754 C 8.2693886,13.323691 8.4240759,13.393300 8.6209460,13.456582 C 8.8107943,13.519862 9.0041535,13.551503 9.2010240,13.551504 C 9.5736843,13.551503 9.8936056,13.431269 10.160789,13.190801 C 10.427980,12.950332 10.561574,12.659238 10.561572,12.317520 C 10.561574,11.861896 10.322511,11.488536 9.8443836,11.197442 L 8.5998522,10.428575 L 14.548408,10.428575 C 15.026535,10.428577 15.406221,10.298849 15.687470,10.039395 C 15.968721,9.7799443 16.109345,9.4318977 16.109345,8.9952540 C 16.109345,8.5396330 15.961690,8.1915865 15.666377,7.9511133 C 15.364034,7.7106494 14.980831,7.5904152 14.516767,7.5904102 L 8.6314928,7.5904102 L 9.9920390,6.7076368 C 10.160793,6.5937365 10.290871,6.4481897 10.382274,6.2709962 C 10.466652,6.0874870 10.508840,5.8913153 10.508837,5.6824805 C 10.508840,5.3281127 10.378761,5.0338552 10.118602,4.7997070 C 9.8584498,4.5655745 9.5279814,4.4485043 9.1271961,4.4484962 C 8.7615757,4.4485043 8.4029823,4.5624104 8.0514147,4.7902149 L 3.9697741,7.5239649 C 3.6393151,7.7454540 3.4002529,7.9542820 3.2525866,8.1504493 C 3.0627532,8.3972503 2.9678314,8.6756875 2.9678210,8.9857618 L 2.9678210,9.0332227"
|
||||
style="font-size:12.000000;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;fill:#ffffff;fill-opacity:1.0000000;stroke:none;stroke-width:1.0000000px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000;font-family:Verdana;text-anchor:start;writing-mode:lr-tb" />
|
||||
</g>
|
||||
<g
|
||||
style="display:none"
|
||||
inkscape:label="pan triangle"
|
||||
id="layer3"
|
||||
inkscape:groupmode="layer">
|
||||
<path
|
||||
transform="matrix(0.000000,-1.331000,1.331000,0.000000,2.038879,16.92102)"
|
||||
d="M 9.3471551,9.5937489 L 5.5311469,7.3905753 L 1.7151384,5.1874015 L 5.5311469,2.9842283 L 9.3471555,0.78105489 L 9.3471553,5.1874018 L 9.3471551,9.5937489 z "
|
||||
inkscape:randomized="0.0000000"
|
||||
inkscape:rounded="0.0000000"
|
||||
inkscape:flatsided="false"
|
||||
sodipodi:arg2="2.0943951"
|
||||
sodipodi:arg1="1.0471976"
|
||||
sodipodi:r2="2.5440056"
|
||||
sodipodi:r1="5.0880113"
|
||||
sodipodi:cy="5.1874018"
|
||||
sodipodi:cx="6.8031497"
|
||||
sodipodi:sides="3"
|
||||
id="path2107"
|
||||
style="fill:#ffffff;fill-opacity:1.0000000;stroke:none;stroke-width:39.984146;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000"
|
||||
sodipodi:type="star" />
|
||||
</g>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 6.6 KiB |
25
art/marker.svg
Normal file
@@ -0,0 +1,25 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!-- Generator: Adobe Illustrator 12.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 51448) -->
|
||||
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd" [
|
||||
<!ENTITY ns_ai "http://ns.adobe.com/AdobeIllustrator/10.0/">
|
||||
<!ENTITY ns_svg "http://www.w3.org/2000/svg">
|
||||
]>
|
||||
<svg version="1.1" id="Layer_1" xmlns:i="&ns_ai;"
|
||||
xmlns="&ns_svg;" width="20.5" height="24.5" viewBox="0 0 20.5 24.5"
|
||||
overflow="visible" enable-background="new 0 0 20.5 24.5" xml:space="preserve">
|
||||
<g i:extraneous="self">
|
||||
<rect x="0.25" y="0.25" opacity="0" stroke="#000000" stroke-width="1" width="20" height="24"/>
|
||||
<g id="XMLID_2_">
|
||||
<g>
|
||||
<polygon fill="#FF0000" points="10.12,0.6 19.93,7.71 10.06,24.03 0.6,7.58 "/>
|
||||
</g>
|
||||
<g>
|
||||
<polyline fill="none" stroke="#000000" stroke-width="1" points="9.98,24.16 10.06,24.03 19.93,7.71 20.06,7.49 "/>
|
||||
<polyline fill="none" stroke="#000000" stroke-width="1" points="10.13,24.16 10.06,24.03 0.6,7.58 0.5,7.41 "/>
|
||||
<polyline fill="none" stroke="#000000" stroke-width="1" points="0.41,7.72 0.6,7.58 10.12,0.6 10.29,0.47 "/>
|
||||
<polyline fill="none" stroke="#000000" stroke-width="1" points="9.94,0.47 10.12,0.6 19.93,7.71 20.06,7.8 "/>
|
||||
</g>
|
||||
</g>
|
||||
<ellipse stroke="#000000" stroke-width="1" cx="10.125" cy="9.25" rx="1.5" ry="1.5"/>
|
||||
</g>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 1.4 KiB |
36
art/measuring-stick-off.svg
Normal file
@@ -0,0 +1,36 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!-- Generator: Adobe Illustrator 12.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 51448) -->
|
||||
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd" [
|
||||
<!ENTITY ns_extend "http://ns.adobe.com/Extensibility/1.0/">
|
||||
<!ENTITY ns_ai "http://ns.adobe.com/AdobeIllustrator/10.0/">
|
||||
<!ENTITY ns_graphs "http://ns.adobe.com/Graphs/1.0/">
|
||||
<!ENTITY ns_vars "http://ns.adobe.com/Variables/1.0/">
|
||||
<!ENTITY ns_imrep "http://ns.adobe.com/ImageReplacement/1.0/">
|
||||
<!ENTITY ns_sfw "http://ns.adobe.com/SaveForWeb/1.0/">
|
||||
<!ENTITY ns_custom "http://ns.adobe.com/GenericCustomNamespace/1.0/">
|
||||
<!ENTITY ns_adobe_xpath "http://ns.adobe.com/XPath/1.0/">
|
||||
<!ENTITY ns_svg "http://www.w3.org/2000/svg">
|
||||
<!ENTITY ns_xlink "http://www.w3.org/1999/xlink">
|
||||
]>
|
||||
<svg version="1.1" id="Layer_1" xmlns:x="&ns_extend;" xmlns:i="&ns_ai;" xmlns:graph="&ns_graphs;"
|
||||
xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="28.375" height="28" viewBox="0 0 28.375 28"
|
||||
overflow="visible" enable-background="new 0 0 28.375 28" xml:space="preserve">
|
||||
<g i:extraneous="self">
|
||||
<path fill="none" stroke="#00008B" stroke-width="1.5" d="M27.875,1.375"/>
|
||||
<path fill="none" stroke="#00008B" stroke-width="1.5" d="M0,1.375"/>
|
||||
<path fill="none" stroke="#FFFFFF" d="M0,27.475"/>
|
||||
<path fill="none" stroke="#00008B" stroke-width="1.5" d="M1,27.645"/>
|
||||
<path fill="none" stroke="#00008B" stroke-width="1.5" d="M1,0.544"/>
|
||||
<line fill="none" stroke="#00008B" x1="0.875" y1="27.5" x2="27.875" y2="27.475"/>
|
||||
<rect x="0.875" y="1.045" fill="#00008B" width="27.125" height="26"/>
|
||||
<line fill="none" stroke="#00008B" x1="27.875" y1="26.925" x2="27.875" y2="0.925"/>
|
||||
<line fill="none" stroke="#FFFFFF" x1="1.375" y1="0.5" x2="27.375" y2="0.5"/>
|
||||
<line fill="none" stroke="#FFFFFF" x1="0.875" y1="1" x2="0.875" y2="27"/>
|
||||
|
||||
<rect x="5.252" y="11.157" transform="matrix(0.7933 -0.6088 0.6088 0.7933 -5.1621 12.1086)" fill="#FFBF00" width="20" height="5"/>
|
||||
<line fill="#FFBF00" stroke="#000000" x1="8.376" y1="15.783" x2="10.717" y2="18.766"/>
|
||||
<line fill="#FFBF00" stroke="#000000" x1="11.946" y1="13.043" x2="14.288" y2="16.027"/>
|
||||
<line fill="#FFBF00" stroke="#000000" x1="15.342" y1="10.437" x2="17.684" y2="13.42"/>
|
||||
<line fill="#FFBF00" stroke="#000000" x1="18.69" y1="7.869" x2="21.03" y2="10.852"/>
|
||||
</g>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 2.3 KiB |
36
art/measuring-stick-on.svg
Normal file
@@ -0,0 +1,36 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!-- Generator: Adobe Illustrator 12.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 51448) -->
|
||||
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd" [
|
||||
<!ENTITY ns_extend "http://ns.adobe.com/Extensibility/1.0/">
|
||||
<!ENTITY ns_ai "http://ns.adobe.com/AdobeIllustrator/10.0/">
|
||||
<!ENTITY ns_graphs "http://ns.adobe.com/Graphs/1.0/">
|
||||
<!ENTITY ns_vars "http://ns.adobe.com/Variables/1.0/">
|
||||
<!ENTITY ns_imrep "http://ns.adobe.com/ImageReplacement/1.0/">
|
||||
<!ENTITY ns_sfw "http://ns.adobe.com/SaveForWeb/1.0/">
|
||||
<!ENTITY ns_custom "http://ns.adobe.com/GenericCustomNamespace/1.0/">
|
||||
<!ENTITY ns_adobe_xpath "http://ns.adobe.com/XPath/1.0/">
|
||||
<!ENTITY ns_svg "http://www.w3.org/2000/svg">
|
||||
<!ENTITY ns_xlink "http://www.w3.org/1999/xlink">
|
||||
]>
|
||||
<svg version="1.1" id="Layer_1" xmlns:x="&ns_extend;" xmlns:i="&ns_ai;" xmlns:graph="&ns_graphs;"
|
||||
xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="28.375" height="28" viewBox="0 0 28.375 28"
|
||||
overflow="visible" enable-background="new 0 0 28.375 28" xml:space="preserve">
|
||||
<g i:extraneous="self">
|
||||
<path fill="none" stroke="#00008B" stroke-width="1.5" d="M27.875,1.375"/>
|
||||
<path fill="none" stroke="#00008B" stroke-width="1.5" d="M0,1.375"/>
|
||||
<path fill="none" stroke="#FFFFFF" d="M0,27.475"/>
|
||||
<path fill="none" stroke="#00008B" stroke-width="1.5" d="M1,27.645"/>
|
||||
<path fill="none" stroke="#00008B" stroke-width="1.5" d="M1,0.544"/>
|
||||
<line fill="none" stroke="#FFFFFF" x1="0.875" y1="27.5" x2="27.875" y2="27.475"/>
|
||||
<rect x="0.875" y="1.045" fill="#ADD8E6" width="27.125" height="26"/>
|
||||
<line fill="none" stroke="#FFFFFF" x1="27.875" y1="26.925" x2="27.875" y2="0.925"/>
|
||||
<line fill="none" stroke="#00008B" x1="1.375" y1="0.5" x2="27.375" y2="0.5"/>
|
||||
<line fill="none" stroke="#00008B" x1="0.875" y1="1" x2="0.875" y2="27"/>
|
||||
|
||||
<rect x="4.252" y="12.157" transform="matrix(0.7933 -0.6088 0.6088 0.7933 -5.9776 11.7065)" fill="#FFBF00" width="20" height="5"/>
|
||||
<line fill="#FFBF00" stroke="#000000" x1="7.376" y1="16.783" x2="9.717" y2="19.766"/>
|
||||
<line fill="#FFBF00" stroke="#000000" x1="10.946" y1="14.043" x2="13.288" y2="17.027"/>
|
||||
<line fill="#FFBF00" stroke="#000000" x1="14.342" y1="11.437" x2="16.684" y2="14.42"/>
|
||||
<line fill="#FFBF00" stroke="#000000" x1="17.69" y1="8.869" x2="20.03" y2="11.852"/>
|
||||
</g>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 2.3 KiB |
44
art/panning-hand-off.svg
Normal file
@@ -0,0 +1,44 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!-- Generator: Adobe Illustrator 12.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 51448) -->
|
||||
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd" [
|
||||
<!ENTITY ns_extend "http://ns.adobe.com/Extensibility/1.0/">
|
||||
<!ENTITY ns_ai "http://ns.adobe.com/AdobeIllustrator/10.0/">
|
||||
<!ENTITY ns_graphs "http://ns.adobe.com/Graphs/1.0/">
|
||||
<!ENTITY ns_vars "http://ns.adobe.com/Variables/1.0/">
|
||||
<!ENTITY ns_imrep "http://ns.adobe.com/ImageReplacement/1.0/">
|
||||
<!ENTITY ns_sfw "http://ns.adobe.com/SaveForWeb/1.0/">
|
||||
<!ENTITY ns_custom "http://ns.adobe.com/GenericCustomNamespace/1.0/">
|
||||
<!ENTITY ns_adobe_xpath "http://ns.adobe.com/XPath/1.0/">
|
||||
<!ENTITY ns_svg "http://www.w3.org/2000/svg">
|
||||
<!ENTITY ns_xlink "http://www.w3.org/1999/xlink">
|
||||
]>
|
||||
<svg version="1.1" id="Layer_1" xmlns:x="&ns_extend;" xmlns:i="&ns_ai;" xmlns:graph="&ns_graphs;"
|
||||
xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="28.375" height="28" viewBox="0 0 28.375 28"
|
||||
overflow="visible" enable-background="new 0 0 28.375 28" xml:space="preserve">
|
||||
<g i:extraneous="self">
|
||||
<path fill="none" stroke="#00008B" stroke-width="1.5" d="M27.875,1.375"/>
|
||||
<path fill="none" stroke="#00008B" stroke-width="1.5" d="M0,1.375"/>
|
||||
<path fill="none" stroke="#FFFFFF" d="M0,27.475"/>
|
||||
<path fill="none" stroke="#00008B" stroke-width="1.5" d="M1,27.645"/>
|
||||
<path fill="none" stroke="#00008B" stroke-width="1.5" d="M1,0.544"/>
|
||||
<line fill="none" stroke="#00008B" x1="0.875" y1="27.5" x2="27.875" y2="27.475"/>
|
||||
<rect x="0.875" y="1.045" fill="#00008B" width="27.125" height="26"/>
|
||||
<line fill="none" stroke="#00008B" x1="27.875" y1="26.925" x2="27.875" y2="0.925"/>
|
||||
<line fill="none" stroke="#FFFFFF" x1="1.375" y1="0.5" x2="27.375" y2="0.5"/>
|
||||
<line fill="none" stroke="#FFFFFF" x1="0.875" y1="1" x2="0.875" y2="27"/>
|
||||
<path fill="#FFFFFF" stroke="#000000" d="M9.458,22.458c-0.473-0.168-1.02-1.269-1.363-1.695
|
||||
c-0.479-0.595-0.894-1.245-1.377-1.829c-0.733-0.887-1.356-1.729-1.854-2.764c-0.375-0.782-0.884-1.997-0.005-2.648
|
||||
c1.036-0.767,2.095-0.162,2.934,0.479c0.844,0.646,1.729,1.18,2.526,1.869c-0.372-0.305-0.548-0.986-0.778-1.421
|
||||
c-0.253-0.477-0.565-0.906-0.822-1.375c-0.359-0.657-0.767-1.201-1.21-1.823c-0.544-0.763-1.051-1.74-0.925-2.709
|
||||
c0.133-1.025,0.972-1.527,1.924-1.207c1.202,0.405,1.969,1.692,2.627,2.698c0.636,0.971,1.201,2.159,1.938,3.042
|
||||
c-0.222-0.209-0.148-0.508-0.155-0.782c-0.01-0.37-0.097-0.626-0.219-0.967c-0.162-0.455-0.219-0.972-0.24-1.45
|
||||
c-0.034-0.776-0.25-1.465-0.25-2.247c0-0.988-0.14-1.963,0.71-2.631c0.666-0.523,1.649-0.764,2.381-0.248
|
||||
c1.385,0.976,1.057,2.999,1.209,4.458c0.079,0.759,0.165,1.489,0.2,2.263c0.022,0.496,0.209,1.067,0.168,1.558
|
||||
c-0.146-0.269-0.113-0.749-0.127-1.057c-0.022-0.502-0.041-0.982-0.115-1.47c-0.114-0.743-0.188-1.564-0.25-2.324
|
||||
c-0.152-1.877,2.054-3.17,3.301-1.469c0.884,1.206,0.773,2.643,0.773,4.085c0,0.698-0.034,1.251-0.22,1.91
|
||||
c-0.13,0.459-0.293,1.222-0.239,1.638c0-0.902,0.334-1.697,0.334-2.588c0-0.678-0.272-2.099,0.581-2.334
|
||||
c1.065-0.294,2.008,0.875,2.428,1.66c0.458,0.855,0.555,1.901,0.409,2.882c-0.318,2.154-0.845,4.227-2.096,6.072
|
||||
c-0.268,0.396-0.485,0.838-0.79,1.22c-0.361,0.452-0.923,0.772-1.416,1.071c-0.381,0.232-0.764,0.53-1.176,0.604
|
||||
c-0.822,0.149-1.725,0.157-2.565,0.157c-1.29,0-2.564-0.068-3.832-0.251c-0.799-0.115-2.12,0.153-2.668-0.54"/>
|
||||
</g>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 3.3 KiB |
44
art/panning-hand-on.svg
Normal file
@@ -0,0 +1,44 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!-- Generator: Adobe Illustrator 12.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 51448) -->
|
||||
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd" [
|
||||
<!ENTITY ns_extend "http://ns.adobe.com/Extensibility/1.0/">
|
||||
<!ENTITY ns_ai "http://ns.adobe.com/AdobeIllustrator/10.0/">
|
||||
<!ENTITY ns_graphs "http://ns.adobe.com/Graphs/1.0/">
|
||||
<!ENTITY ns_vars "http://ns.adobe.com/Variables/1.0/">
|
||||
<!ENTITY ns_imrep "http://ns.adobe.com/ImageReplacement/1.0/">
|
||||
<!ENTITY ns_sfw "http://ns.adobe.com/SaveForWeb/1.0/">
|
||||
<!ENTITY ns_custom "http://ns.adobe.com/GenericCustomNamespace/1.0/">
|
||||
<!ENTITY ns_adobe_xpath "http://ns.adobe.com/XPath/1.0/">
|
||||
<!ENTITY ns_svg "http://www.w3.org/2000/svg">
|
||||
<!ENTITY ns_xlink "http://www.w3.org/1999/xlink">
|
||||
]>
|
||||
<svg version="1.1" id="Layer_1" xmlns:x="&ns_extend;" xmlns:i="&ns_ai;" xmlns:graph="&ns_graphs;"
|
||||
xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="28.375" height="28" viewBox="0 0 28.375 28"
|
||||
overflow="visible" enable-background="new 0 0 28.375 28" xml:space="preserve">
|
||||
<g i:extraneous="self">
|
||||
<path fill="none" stroke="#00008B" stroke-width="1.5" d="M27.875,1.375"/>
|
||||
<path fill="none" stroke="#00008B" stroke-width="1.5" d="M0,1.375"/>
|
||||
<path fill="none" stroke="#FFFFFF" d="M0,27.475"/>
|
||||
<path fill="none" stroke="#00008B" stroke-width="1.5" d="M1,27.645"/>
|
||||
<path fill="none" stroke="#00008B" stroke-width="1.5" d="M1,0.544"/>
|
||||
<line fill="none" stroke="#FFFFFF" x1="0.875" y1="27.5" x2="27.875" y2="27.475"/>
|
||||
<rect x="0.875" y="1.045" fill="#ADD8E6" width="27.125" height="26"/>
|
||||
<line fill="none" stroke="#FFFFFF" x1="27.875" y1="26.925" x2="27.875" y2="0.925"/>
|
||||
<line fill="none" stroke="#00008B" x1="1.375" y1="0.5" x2="27.375" y2="0.5"/>
|
||||
<line fill="none" stroke="#00008B" x1="0.875" y1="1" x2="0.875" y2="27"/>
|
||||
<path fill="#FFFFFF" stroke="#000000" d="M8.458,23.458c-0.473-0.168-1.02-1.269-1.363-1.695
|
||||
c-0.479-0.595-0.894-1.245-1.377-1.829c-0.733-0.887-1.356-1.729-1.854-2.764c-0.375-0.782-0.884-1.997-0.005-2.648
|
||||
c1.036-0.767,2.095-0.161,2.934,0.479c0.844,0.646,1.729,1.18,2.526,1.869c-0.372-0.305-0.548-0.986-0.778-1.421
|
||||
c-0.253-0.477-0.565-0.906-0.822-1.375c-0.359-0.657-0.767-1.201-1.21-1.823c-0.544-0.763-1.051-1.74-0.925-2.709
|
||||
c0.133-1.025,0.972-1.527,1.924-1.207c1.202,0.405,1.969,1.692,2.627,2.698c0.636,0.971,1.201,2.159,1.938,3.042
|
||||
c-0.222-0.21-0.148-0.509-0.155-0.783c-0.01-0.37-0.097-0.626-0.219-0.967c-0.162-0.455-0.219-0.972-0.24-1.45
|
||||
c-0.034-0.776-0.25-1.465-0.25-2.247c0-0.988-0.14-1.963,0.71-2.631c0.666-0.523,1.649-0.764,2.381-0.248
|
||||
c1.385,0.976,1.057,2.999,1.209,4.458c0.079,0.759,0.165,1.489,0.2,2.263c0.022,0.496,0.209,1.068,0.168,1.558
|
||||
c-0.146-0.27-0.113-0.75-0.127-1.058c-0.022-0.502-0.041-0.982-0.115-1.47c-0.114-0.743-0.188-1.564-0.25-2.324
|
||||
c-0.152-1.877,2.054-3.17,3.301-1.469c0.884,1.206,0.773,2.643,0.773,4.085c0,0.698-0.034,1.251-0.22,1.91
|
||||
c-0.13,0.459-0.293,1.222-0.239,1.639c0-0.902,0.334-1.697,0.334-2.589c0-0.678-0.272-2.099,0.581-2.334
|
||||
c1.065-0.294,2.008,0.875,2.428,1.66c0.458,0.855,0.555,1.901,0.409,2.883c-0.318,2.153-0.845,4.227-2.096,6.071
|
||||
c-0.268,0.396-0.485,0.838-0.79,1.22c-0.361,0.452-0.923,0.772-1.416,1.071c-0.381,0.232-0.764,0.53-1.176,0.604
|
||||
c-0.822,0.149-1.725,0.157-2.565,0.157c-1.29,0-2.564-0.068-3.832-0.251c-0.799-0.115-2.12,0.153-2.668-0.54"/>
|
||||
</g>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 3.3 KiB |
71
art/slider.svg
Normal file
@@ -0,0 +1,71 @@
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<!-- Created with Inkscape (http://www.inkscape.org/) -->
|
||||
<svg
|
||||
xmlns:dc="http://purl.org/dc/elements/1.1/"
|
||||
xmlns:cc="http://web.resource.org/cc/"
|
||||
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
|
||||
xmlns:svg="http://www.w3.org/2000/svg"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
xmlns:sodipodi="http://inkscape.sourceforge.net/DTD/sodipodi-0.dtd"
|
||||
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
|
||||
width="210mm"
|
||||
height="297mm"
|
||||
id="svg2"
|
||||
sodipodi:version="0.32"
|
||||
inkscape:version="0.41.1"
|
||||
sodipodi:docbase="/afs/metacarta.com/user/sderle/public_html/ol.zoombar/art"
|
||||
sodipodi:docname="slider.svg"
|
||||
inkscape:export-filename="/afs/metacarta.com/user/sderle/public_html/ol.zoombar/img/slider.png"
|
||||
inkscape:export-xdpi="90.000000"
|
||||
inkscape:export-ydpi="90.000000">
|
||||
<defs
|
||||
id="defs3" />
|
||||
<sodipodi:namedview
|
||||
id="base"
|
||||
pagecolor="#ffffff"
|
||||
bordercolor="#666666"
|
||||
borderopacity="1.0"
|
||||
inkscape:pageopacity="0.0"
|
||||
inkscape:pageshadow="2"
|
||||
inkscape:zoom="39.870978"
|
||||
inkscape:cx="140.00732"
|
||||
inkscape:cy="695.49796"
|
||||
inkscape:document-units="px"
|
||||
inkscape:current-layer="layer1"
|
||||
showgrid="true"
|
||||
inkscape:window-width="1010"
|
||||
inkscape:window-height="538"
|
||||
inkscape:window-x="20"
|
||||
inkscape:window-y="107" />
|
||||
<metadata
|
||||
id="metadata4">
|
||||
<rdf:RDF
|
||||
id="RDF5">
|
||||
<cc:Work
|
||||
rdf:about=""
|
||||
id="Work6">
|
||||
<dc:format
|
||||
id="format7">image/svg+xml</dc:format>
|
||||
<dc:type
|
||||
id="type9"
|
||||
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
|
||||
</cc:Work>
|
||||
</rdf:RDF>
|
||||
</metadata>
|
||||
<g
|
||||
inkscape:label="Layer 1"
|
||||
inkscape:groupmode="layer"
|
||||
id="layer1">
|
||||
<rect
|
||||
style="fill:#00008b;fill-opacity:1.0000000;stroke:#000080;stroke-width:4.9999957;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000"
|
||||
id="rect1291"
|
||||
x="132.50000"
|
||||
y="354.86218"
|
||||
width="15.014628"
|
||||
height="4.0040474" />
|
||||
<path
|
||||
style="fill:none;fill-opacity:0.75000000;fill-rule:evenodd;stroke:#ffffff;stroke-width:2.0000000;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000"
|
||||
d="M 134.08880,356.89603 L 146.00000,356.87002"
|
||||
id="path2052" />
|
||||
</g>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 2.4 KiB |
193
art/zoom-world.svg
Normal file
@@ -0,0 +1,193 @@
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<!-- Created with Inkscape (http://www.inkscape.org/) -->
|
||||
<svg
|
||||
xmlns:xml="http://www.w3.org/XML/1998/namespace"
|
||||
xmlns:dc="http://purl.org/dc/elements/1.1/"
|
||||
xmlns:cc="http://web.resource.org/cc/"
|
||||
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
|
||||
xmlns:svg="http://www.w3.org/2000/svg"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
xmlns:sodipodi="http://inkscape.sourceforge.net/DTD/sodipodi-0.dtd"
|
||||
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
|
||||
inkscape:export-ydpi="90.000000"
|
||||
inkscape:export-xdpi="90.000000"
|
||||
inkscape:export-filename="/Users/phil/Documents/work/metacarta/2svn.openlayers.net/follower/code/b-edits-1/openlayers/assets/ui_elements/zoom-minus-mini.png"
|
||||
sodipodi:docname="zoom-world.svg"
|
||||
sodipodi:docbase="/afs/metacarta.com/user/sderle/OL/openlayers/assets/ui_elements"
|
||||
inkscape:version="0.41.1"
|
||||
sodipodi:version="0.32"
|
||||
id="svg2"
|
||||
height="18.000000px"
|
||||
width="18.000000px">
|
||||
<defs
|
||||
id="defs4" />
|
||||
<sodipodi:namedview
|
||||
inkscape:window-y="26"
|
||||
inkscape:window-x="42"
|
||||
inkscape:window-height="800"
|
||||
inkscape:window-width="1226"
|
||||
inkscape:current-layer="layer5"
|
||||
inkscape:document-units="px"
|
||||
inkscape:cy="9.3025513"
|
||||
inkscape:cx="9.0000000"
|
||||
inkscape:zoom="1.0000000"
|
||||
inkscape:pageshadow="2"
|
||||
inkscape:pageopacity="0.0"
|
||||
borderopacity="1.0"
|
||||
bordercolor="#666666"
|
||||
pagecolor="#ffffff"
|
||||
id="base" />
|
||||
<metadata
|
||||
id="metadata7">
|
||||
<rdf:RDF
|
||||
id="RDF1295">
|
||||
<cc:Work
|
||||
id="Work1297"
|
||||
rdf:about="">
|
||||
<dc:format
|
||||
id="format1299">image/svg+xml</dc:format>
|
||||
<dc:type
|
||||
id="type1301"
|
||||
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
|
||||
</cc:Work>
|
||||
</rdf:RDF>
|
||||
</metadata>
|
||||
<g
|
||||
style="display:inline"
|
||||
id="layer1"
|
||||
inkscape:groupmode="layer"
|
||||
inkscape:label="background">
|
||||
<rect
|
||||
style="fill:#00008b;fill-opacity:1.0000000;stroke:none;stroke-width:39.984146;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000"
|
||||
id="rect2061"
|
||||
width="18.014498"
|
||||
height="18.000000"
|
||||
x="-18.014502"
|
||||
y="4.3599998e-06"
|
||||
transform="matrix(0.000000,-1.000000,1.000000,0.000000,0.000000,0.000000)" />
|
||||
</g>
|
||||
<g
|
||||
inkscape:label="graticule"
|
||||
id="layer5"
|
||||
inkscape:groupmode="layer">
|
||||
<g
|
||||
transform="translate(0.000000,-4.419417e-2)"
|
||||
id="g2876">
|
||||
<path
|
||||
transform="matrix(1.155321,0.000000,0.000000,1.155321,-2.292065,-1.751761)"
|
||||
d="M 16.869573 9.3188362 A 7.0579743 7.0579743 0 1 1 2.7536244,9.3188362 A 7.0579743 7.0579743 0 1 1 16.869573 9.3188362 z"
|
||||
sodipodi:ry="7.0579743"
|
||||
sodipodi:rx="7.0579743"
|
||||
sodipodi:cy="9.3188362"
|
||||
sodipodi:cx="9.8115988"
|
||||
id="path1321"
|
||||
style="fill:none;fill-opacity:1.0000000;stroke:#ffffff;stroke-width:0.50000000;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000"
|
||||
sodipodi:type="arc" />
|
||||
<path
|
||||
sodipodi:nodetypes="cc"
|
||||
id="path2086"
|
||||
d="M 8.1145142,1.1289949 C 15.315267,9.5238831 8.3963197,17.101449 8.3963197,17.057255"
|
||||
style="fill:none;fill-opacity:0.75000000;fill-rule:evenodd;stroke:#ffffff;stroke-width:0.50000000;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" />
|
||||
<path
|
||||
sodipodi:nodetypes="cc"
|
||||
id="path2846"
|
||||
d="M 11.588885,1.3666059 C 18.922222,9.5405232 11.605526,16.764536 11.605526,16.764536"
|
||||
style="fill:none;fill-opacity:0.75000000;fill-rule:evenodd;stroke:#ffffff;stroke-width:0.50000000;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" />
|
||||
<path
|
||||
sodipodi:nodetypes="cc"
|
||||
id="path2848"
|
||||
d="M 5.2258471,2.0593951 C 11.080923,9.7405585 5.3432210,16.278941 5.3432210,16.278941"
|
||||
style="fill:none;fill-opacity:0.75000000;fill-rule:evenodd;stroke:#ffffff;stroke-width:0.50000000;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" />
|
||||
<path
|
||||
sodipodi:nodetypes="cc"
|
||||
id="path2850"
|
||||
d="M 2.7388198,3.7571959 C 6.3686281,9.1817837 2.9127331,14.361601 2.9127331,14.361601"
|
||||
style="fill:none;fill-opacity:0.75000000;fill-rule:evenodd;stroke:#ffffff;stroke-width:0.50000000;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" />
|
||||
</g>
|
||||
<g
|
||||
transform="matrix(-6.269315e-2,0.998033,-0.998033,-6.269315e-2,18.62352,0.612232)"
|
||||
id="g2883">
|
||||
<path
|
||||
transform="matrix(1.155321,0.000000,0.000000,1.155321,-2.292065,-1.751761)"
|
||||
d="M 16.869573 9.3188362 A 7.0579743 7.0579743 0 1 1 2.7536244,9.3188362 A 7.0579743 7.0579743 0 1 1 16.869573 9.3188362 z"
|
||||
sodipodi:ry="7.0579743"
|
||||
sodipodi:rx="7.0579743"
|
||||
sodipodi:cy="9.3188362"
|
||||
sodipodi:cx="9.8115988"
|
||||
id="path2885"
|
||||
style="fill:none;fill-opacity:1.0000000;stroke:#ffffff;stroke-width:0.50000000;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000"
|
||||
sodipodi:type="arc" />
|
||||
<path
|
||||
sodipodi:nodetypes="cc"
|
||||
id="path2887"
|
||||
d="M 8.1145142,1.1289949 C 15.315267,9.5238831 8.3963197,17.101449 8.3963197,17.057255"
|
||||
style="fill:none;fill-opacity:0.75000000;fill-rule:evenodd;stroke:#ffffff;stroke-width:0.50000000;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" />
|
||||
<path
|
||||
sodipodi:nodetypes="cc"
|
||||
id="path2889"
|
||||
d="M 11.588885,1.3666059 C 18.922222,9.5405232 11.605526,16.764536 11.605526,16.764536"
|
||||
style="fill:none;fill-opacity:0.75000000;fill-rule:evenodd;stroke:#ffffff;stroke-width:0.50000000;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" />
|
||||
<path
|
||||
sodipodi:nodetypes="cc"
|
||||
id="path2891"
|
||||
d="M 5.2258471,2.0593951 C 11.080923,9.7405585 5.3432210,16.278941 5.3432210,16.278941"
|
||||
style="fill:none;fill-opacity:0.75000000;fill-rule:evenodd;stroke:#ffffff;stroke-width:0.50000000;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" />
|
||||
<path
|
||||
sodipodi:nodetypes="cc"
|
||||
id="path2893"
|
||||
d="M 2.7388198,3.7571959 C 6.3686281,9.1817837 2.9127331,14.361601 2.9127331,14.361601"
|
||||
style="fill:none;fill-opacity:0.75000000;fill-rule:evenodd;stroke:#ffffff;stroke-width:0.50000000;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" />
|
||||
</g>
|
||||
</g>
|
||||
<g
|
||||
style="display:none"
|
||||
inkscape:label="zoom"
|
||||
id="layer4"
|
||||
inkscape:groupmode="layer">
|
||||
<text
|
||||
transform="scale(1.000000,-1.000000)"
|
||||
sodipodi:linespacing="125.00000%"
|
||||
id="text2114"
|
||||
y="-3.4077148"
|
||||
x="3.7485352"
|
||||
style="font-size:18.000000;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;fill:#ffffff;fill-opacity:1.0000000;stroke:#ffffff;stroke-width:1.0000000px;stroke-linecap:butt;stroke-linejoin:round;stroke-opacity:1.0000000;font-family:Helvetica;text-anchor:start;writing-mode:lr-tb"
|
||||
xml:space="preserve"><tspan
|
||||
y="-3.4077148"
|
||||
x="3.7485352"
|
||||
id="tspan2118"
|
||||
sodipodi:role="line">−</tspan></text>
|
||||
</g>
|
||||
<g
|
||||
style="display:none"
|
||||
inkscape:label="overlay"
|
||||
id="layer2"
|
||||
inkscape:groupmode="layer">
|
||||
<path
|
||||
sodipodi:nodetypes="csccsssscccssscccssssccscc"
|
||||
id="text2082"
|
||||
d="M 2.9678210,9.0332227 C 2.9678314,9.5015070 3.1752531,9.8938504 3.5900866,10.210254 C 3.6463464,10.254553 3.9451742,10.453889 4.4865710,10.808262 L 8.1568835,13.247754 C 8.2693886,13.323691 8.4240759,13.393300 8.6209460,13.456582 C 8.8107943,13.519862 9.0041535,13.551503 9.2010240,13.551504 C 9.5736843,13.551503 9.8936056,13.431269 10.160789,13.190801 C 10.427980,12.950332 10.561574,12.659238 10.561572,12.317520 C 10.561574,11.861896 10.322511,11.488536 9.8443836,11.197442 L 8.5998522,10.428575 L 14.548408,10.428575 C 15.026535,10.428577 15.406221,10.298849 15.687470,10.039395 C 15.968721,9.7799443 16.109345,9.4318977 16.109345,8.9952540 C 16.109345,8.5396330 15.961690,8.1915865 15.666377,7.9511133 C 15.364034,7.7106494 14.980831,7.5904152 14.516767,7.5904102 L 8.6314928,7.5904102 L 9.9920390,6.7076368 C 10.160793,6.5937365 10.290871,6.4481897 10.382274,6.2709962 C 10.466652,6.0874870 10.508840,5.8913153 10.508837,5.6824805 C 10.508840,5.3281127 10.378761,5.0338552 10.118602,4.7997070 C 9.8584498,4.5655745 9.5279814,4.4485043 9.1271961,4.4484962 C 8.7615757,4.4485043 8.4029823,4.5624104 8.0514147,4.7902149 L 3.9697741,7.5239649 C 3.6393151,7.7454540 3.4002529,7.9542820 3.2525866,8.1504493 C 3.0627532,8.3972503 2.9678314,8.6756875 2.9678210,8.9857618 L 2.9678210,9.0332227"
|
||||
style="font-size:12.000000;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;fill:#ffffff;fill-opacity:1.0000000;stroke:none;stroke-width:1.0000000px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000;font-family:Verdana;text-anchor:start;writing-mode:lr-tb" />
|
||||
</g>
|
||||
<g
|
||||
style="display:none"
|
||||
inkscape:label="pan triangle"
|
||||
id="layer3"
|
||||
inkscape:groupmode="layer">
|
||||
<path
|
||||
transform="matrix(0.000000,-1.331000,1.331000,0.000000,2.038879,16.92102)"
|
||||
d="M 9.3471551,9.5937489 L 5.5311469,7.3905753 L 1.7151384,5.1874015 L 5.5311469,2.9842283 L 9.3471555,0.78105489 L 9.3471553,5.1874018 L 9.3471551,9.5937489 z "
|
||||
inkscape:randomized="0.0000000"
|
||||
inkscape:rounded="0.0000000"
|
||||
inkscape:flatsided="false"
|
||||
sodipodi:arg2="2.0943951"
|
||||
sodipodi:arg1="1.0471976"
|
||||
sodipodi:r2="2.5440056"
|
||||
sodipodi:r1="5.0880113"
|
||||
sodipodi:cy="5.1874018"
|
||||
sodipodi:cx="6.8031497"
|
||||
sodipodi:sides="3"
|
||||
id="path2107"
|
||||
style="fill:#ffffff;fill-opacity:1.0000000;stroke:none;stroke-width:39.984146;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000"
|
||||
sodipodi:type="star" />
|
||||
</g>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 10 KiB |
73
art/zoombar.svg
Normal file
@@ -0,0 +1,73 @@
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<!-- Created with Inkscape (http://www.inkscape.org/) -->
|
||||
<svg
|
||||
xmlns:dc="http://purl.org/dc/elements/1.1/"
|
||||
xmlns:cc="http://web.resource.org/cc/"
|
||||
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
|
||||
xmlns:svg="http://www.w3.org/2000/svg"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
xmlns:sodipodi="http://inkscape.sourceforge.net/DTD/sodipodi-0.dtd"
|
||||
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
|
||||
width="18"
|
||||
height="18"
|
||||
id="svg2"
|
||||
sodipodi:version="0.32"
|
||||
inkscape:version="0.43"
|
||||
version="1.0"
|
||||
inkscape:export-filename="C:\Documents and Settings\crschmidt\Desktop\zoombar.png"
|
||||
inkscape:export-xdpi="90"
|
||||
inkscape:export-ydpi="90"
|
||||
sodipodi:docbase="C:\Documents and Settings\crschmidt\Desktop"
|
||||
sodipodi:docname="zoombar.svg">
|
||||
<defs
|
||||
id="defs4" />
|
||||
<sodipodi:namedview
|
||||
id="base"
|
||||
pagecolor="#ffffff"
|
||||
bordercolor="#666666"
|
||||
borderopacity="1.0"
|
||||
inkscape:pageopacity="0.0"
|
||||
inkscape:pageshadow="2"
|
||||
inkscape:zoom="1"
|
||||
inkscape:cx="-117.50597"
|
||||
inkscape:cy="65.94562"
|
||||
inkscape:document-units="px"
|
||||
inkscape:current-layer="layer1"
|
||||
showguides="false"
|
||||
showgrid="false"
|
||||
inkscape:window-width="1024"
|
||||
inkscape:window-height="721"
|
||||
inkscape:window-x="-4"
|
||||
inkscape:window-y="-4" />
|
||||
<metadata
|
||||
id="metadata7">
|
||||
<rdf:RDF>
|
||||
<cc:Work
|
||||
rdf:about="">
|
||||
<dc:format>image/svg+xml</dc:format>
|
||||
<dc:type
|
||||
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
|
||||
</cc:Work>
|
||||
</rdf:RDF>
|
||||
</metadata>
|
||||
<g
|
||||
inkscape:label="Layer 1"
|
||||
inkscape:groupmode="layer"
|
||||
id="layer1">
|
||||
<rect
|
||||
style="opacity:0.5;fill:#808080;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1.00000012;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
|
||||
id="rect1307"
|
||||
width="16.999998"
|
||||
height="10.000004"
|
||||
x="-125.51302"
|
||||
y="-52.420002" />
|
||||
<path
|
||||
style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:0.99999958;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:0.50196078"
|
||||
d="M -125.54176,-52.415494 L -125.54176,-42.415495"
|
||||
id="path8297" />
|
||||
<path
|
||||
style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:0.99999982;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:0.50196078"
|
||||
d="M -108.48157,-52.418044 L -108.48157,-42.418046"
|
||||
id="path12667" />
|
||||
</g>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 2.6 KiB |
56
authors.txt
@@ -1,56 +0,0 @@
|
||||
OpenLayers contributors:
|
||||
|
||||
Antoine Abt
|
||||
Mike Adair
|
||||
Jeff Adams
|
||||
Seb Benthall
|
||||
Bruno Binet
|
||||
Stéphane Brunner
|
||||
Howard Butler
|
||||
Bertil Chaupis
|
||||
John Cole
|
||||
Tim Coulter
|
||||
Robert Coup
|
||||
Jeff Dege
|
||||
Roald de Wit
|
||||
Schuyler Erle
|
||||
Christian López Espínola
|
||||
John Frank
|
||||
Sean Gilles
|
||||
Pierre Giraud
|
||||
Ivan Grcic
|
||||
Andreas Hocevar
|
||||
Marc Jansen
|
||||
Ian Johnson
|
||||
Frédéric Junod
|
||||
Eric Lemoine
|
||||
Philip Lindsay
|
||||
Martijn van Oosterhout
|
||||
David Overstrom
|
||||
Corey Puffault
|
||||
Peter William Robins
|
||||
Gregers Rygg
|
||||
Tim Schaub
|
||||
Christopher Schmidt
|
||||
Cameron Shorter
|
||||
Pedro Simonetti
|
||||
Paul Spencer
|
||||
Paul Smith
|
||||
Glen Stampoultzis
|
||||
James Stembridge
|
||||
Erik Uzureau
|
||||
Bart van den Eijnden
|
||||
Ivan Willig
|
||||
Thomas Wood
|
||||
Bill Woodall
|
||||
Steve Woodbridge
|
||||
David Zwarg
|
||||
|
||||
Some portions of OpenLayers are used under the Apache 2.0 license, available
|
||||
in doc/licenses/APACHE-2.0.txt.
|
||||
|
||||
Some portions of OpenLayers are used under the MIT license, availabie in
|
||||
doc/licenses/MIT-LICENSE.txt.
|
||||
|
||||
Some portions of OpenLayers are Copyright 2001 Robert Penner, and are used
|
||||
under the BSD license, available in doc/licenses/BSD-LICENSE.txt
|
||||
@@ -1,51 +0,0 @@
|
||||
# Build Utilities
|
||||
|
||||
This directory contains utilities used for building OpenLayers applications,
|
||||
generating the API docs, and building hosted versions of the library.
|
||||
|
||||
## Dependencies
|
||||
|
||||
OpenLayers is built using [Closure Compiler][closure]. The [plovr][plovr] build
|
||||
tool simplifies building with Closure Compiler and comes with a built-in version
|
||||
of the Closure Library and Compiler. Both the Compiler and plovr require Java
|
||||
version 1.6 or above. This directory includes a bash/batch script for driving
|
||||
plovr. For pulling down plovr and accessing it in a cross-platform way,
|
||||
[Ant][ant] is used.
|
||||
|
||||
The instructions below assume that you have added the `ol` bash/batch script to
|
||||
your path (type `ol` and see usage docs to confirm this is set up).
|
||||
|
||||
[closure]: https://developers.google.com/closure/compiler/
|
||||
[plovr]: http://plovr.com/
|
||||
[ant]: http://ant.apache.org/
|
||||
|
||||
## Building an Application
|
||||
|
||||
To compile an application together with OpenLayers, you will provide a build
|
||||
configuration file for the compiler. See the `demo` folder for example
|
||||
configuration files (e.g. `map.json`).
|
||||
|
||||
Compile your application with the `build` command:
|
||||
|
||||
ol build path/to/config.json
|
||||
|
||||
Substitute the path to your build configuration file above.
|
||||
|
||||
## Building the API Docs
|
||||
|
||||
From within the root of the OpenLayers directory, use the `doc` command to build
|
||||
the API docs:
|
||||
|
||||
ol doc
|
||||
|
||||
This will generate documentation in the `jsdoc` directory.
|
||||
|
||||
## Building the Hosted Library
|
||||
|
||||
To compile the full OpenLayers api, use the `build` command from the root of the
|
||||
OpenLayers directory:
|
||||
|
||||
ol build
|
||||
|
||||
This will generate an `api.js` script in the same directory. (This is equivalent to `ol build path/to/ol/api.json`.)
|
||||
|
||||
@@ -1,65 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<project name="ol" default="usage">
|
||||
|
||||
<description>
|
||||
OpenLayers Dev Utilities
|
||||
</description>
|
||||
|
||||
<property name="ol.home" location=".."/>
|
||||
<property name="plovr.jar" location="${ol.home}/bin/plovr.jar"/>
|
||||
<property name="main.json" location="${ol.home}/main.json"/>
|
||||
<property name="build.json" location="${ol.home}/api.json"/>
|
||||
|
||||
<target name="usage">
|
||||
<echo>
|
||||
Available commands:
|
||||
|
||||
serve - Run the library server
|
||||
build - Builds a minified version of the library or an application
|
||||
doc - Generate the reference docs
|
||||
</echo>
|
||||
</target>
|
||||
|
||||
<condition property="plovr.exists">
|
||||
<available file="${plovr.jar}" type="file"/>
|
||||
</condition>
|
||||
|
||||
<target name="deps" unless="plovr.exists">
|
||||
<get src="http://plovr.googlecode.com/files/plovr-4b3caf2b7d84.jar"
|
||||
dest="${plovr.jar}"/>
|
||||
</target>
|
||||
|
||||
<target name="serve" depends="deps">
|
||||
<java jar="${plovr.jar}" fork="true">
|
||||
<arg value="serve"/>
|
||||
<arg value="${main.json}"/>
|
||||
</java>
|
||||
</target>
|
||||
|
||||
<target name="checkpath">
|
||||
<condition property="build.json.set">
|
||||
<isset property="build.json"/>
|
||||
</condition>
|
||||
<fail message="Missing build config." unless="build.json.set"/>
|
||||
<property name="build.json.fullpath" location="${build.json}"/>
|
||||
<condition property="build.json.exists">
|
||||
<available file="${build.json.fullpath}" type="file"/>
|
||||
</condition>
|
||||
</target>
|
||||
|
||||
<target name="build" depends="deps, checkpath">
|
||||
<fail message="Build config '${build.json.fullpath}' doesn't exist." unless="build.json.exists"/>
|
||||
<java jar="${plovr.jar}" fork="true">
|
||||
<arg value="build"/>
|
||||
<arg value="${build.json}"/>
|
||||
</java>
|
||||
</target>
|
||||
|
||||
<target name="doc" depends="deps">
|
||||
<java jar="${plovr.jar}" fork="true">
|
||||
<arg value="jsdoc"/>
|
||||
<arg value="${main.json}"/>
|
||||
</java>
|
||||
</target>
|
||||
|
||||
</project>
|
||||
44
bin/ol
@@ -1,44 +0,0 @@
|
||||
#!/bin/bash
|
||||
|
||||
ant -version &> /dev/null
|
||||
if [ $? -ne 0 ]; then
|
||||
echo 'Requires Apache Ant (see http://ant.apache.org/)'
|
||||
exit 1
|
||||
fi
|
||||
|
||||
NAME=$(basename -- "$0")
|
||||
|
||||
# find ol home
|
||||
if [ -z "$0" ]; then
|
||||
# as a last recourse, use the present working directory
|
||||
OL_HOME=$(pwd)
|
||||
else
|
||||
# save original working directory
|
||||
ORIG_PWD="$(pwd -P)"
|
||||
|
||||
# get the absolute path of the executable
|
||||
SELF_PATH=$(
|
||||
cd -P -- "$(dirname -- "$0")" \
|
||||
&& pwd -P
|
||||
) && SELF_PATH=$SELF_PATH/$(basename -- "$0")
|
||||
|
||||
# resolve symlinks
|
||||
while [ -h "$SELF_PATH" ]; do
|
||||
DIR=$(dirname -- "$SELF_PATH")
|
||||
SYM=$(readlink -- "$SELF_PATH")
|
||||
SELF_PATH=$(cd -- "$DIR" && cd -- $(dirname -- "$SYM") && pwd)/$(basename -- "$SYM")
|
||||
done
|
||||
|
||||
OL_HOME=$(dirname -- "$(dirname -- "$SELF_PATH")")
|
||||
|
||||
# restore original working directory
|
||||
cd "$ORIG_PWD"
|
||||
|
||||
fi
|
||||
|
||||
ANT_ARGS=""
|
||||
if [ $# -gt 1 ]; then
|
||||
ANT_ARGS=-Dbuild.json="$2"
|
||||
fi
|
||||
|
||||
ant -e -f "$OL_HOME/bin/build.xml" -Dbasedir=. -Dol.home="$OL_HOME" $1 $ANT_ARGS
|
||||
21
bin/ol.cmd
@@ -1,21 +0,0 @@
|
||||
@echo off
|
||||
|
||||
:: Check for ant on the path
|
||||
call ant -version >NUL 2>NUL || (
|
||||
echo Requires Apache Ant ^(see http://ant.apache.org/^)
|
||||
exit /b 1
|
||||
)
|
||||
|
||||
:: Find the full path of OL_HOME
|
||||
pushd "%~dp0.."
|
||||
set OL_HOME="%cd%"
|
||||
popd
|
||||
|
||||
:: Run the command
|
||||
set COMMAND="%~1"
|
||||
if "%~1" == "" set COMMAND="usage"
|
||||
|
||||
set ANT_ARGS=
|
||||
if "%~2" == "" set ANT_ARGS="-Dbuild.json=%~2"
|
||||
|
||||
ant -e -f %OL_HOME%\bin\build.xml -Dol.home=%OL_HOME% -Dbasedir=. %COMMAND% %ANT_ARGS%
|
||||
14
build/README.txt
Normal file
@@ -0,0 +1,14 @@
|
||||
|
||||
## HowTo: Build & deploy "Shrunk" Single File Library version of OpenLayers ##
|
||||
|
||||
* Build:
|
||||
|
||||
cd build
|
||||
./build.sh
|
||||
cd ..
|
||||
|
||||
* Upload the result to the server: e.g.
|
||||
|
||||
scp build/OpenLayers.js openlayers@openlayers.org:openlayers.org/htdocs/code/
|
||||
|
||||
|
||||
27
build/build.py
Executable file
@@ -0,0 +1,27 @@
|
||||
#!/usr/bin/env python
|
||||
|
||||
import sys
|
||||
sys.path.append("../tools")
|
||||
|
||||
import jsmin, mergejs
|
||||
|
||||
sourceDirectory = "../lib"
|
||||
configFilename = "library.cfg"
|
||||
outputFilename = "OpenLayers.js"
|
||||
|
||||
if len(sys.argv) > 1:
|
||||
configFilename = sys.argv[1] + ".cfg"
|
||||
if len(sys.argv) > 2:
|
||||
outputFilename = sys.argv[2]
|
||||
|
||||
print "Merging libraries."
|
||||
merged = mergejs.run(sourceDirectory, None, configFilename)
|
||||
print "Compressing."
|
||||
minimized = jsmin.jsmin(merged)
|
||||
print "Adding license file."
|
||||
minimized = file("license.txt").read() + minimized
|
||||
|
||||
print "Writing to %s." % outputFilename
|
||||
file(outputFilename, "w").write(minimized)
|
||||
|
||||
print "Done."
|
||||
25
build/buildUncompressed.py
Normal file
@@ -0,0 +1,25 @@
|
||||
#!/usr/bin/env python
|
||||
|
||||
import sys
|
||||
sys.path.append("../tools")
|
||||
|
||||
import jsmin, mergejs
|
||||
|
||||
sourceDirectory = "../lib"
|
||||
configFilename = "library.cfg"
|
||||
outputFilename = "OpenLayers.js"
|
||||
|
||||
if len(sys.argv) > 1:
|
||||
configFilename = sys.argv[1] + ".cfg"
|
||||
if len(sys.argv) > 2:
|
||||
outputFilename = sys.argv[2]
|
||||
|
||||
print "Merging libraries."
|
||||
merged = mergejs.run(sourceDirectory, None, configFilename)
|
||||
print "Adding license file."
|
||||
merged = file("license.txt").read() + merged
|
||||
|
||||
print "Writing to %s." % outputFilename
|
||||
file(outputFilename, "w").write(merged)
|
||||
|
||||
print "Done."
|
||||
12
build/full.cfg
Normal file
@@ -0,0 +1,12 @@
|
||||
[first]
|
||||
OpenLayers/SingleFile.js
|
||||
OpenLayers.js
|
||||
OpenLayers/BaseTypes.js
|
||||
OpenLayers/Util.js
|
||||
Rico/Corner.js
|
||||
|
||||
[last]
|
||||
|
||||
[include]
|
||||
|
||||
[exclude]
|
||||
47
build/library.cfg
Normal file
@@ -0,0 +1,47 @@
|
||||
[first]
|
||||
OpenLayers/SingleFile.js
|
||||
OpenLayers.js
|
||||
OpenLayers/BaseTypes.js
|
||||
OpenLayers/Util.js
|
||||
Rico/Corner.js
|
||||
|
||||
[last]
|
||||
|
||||
[include]
|
||||
|
||||
[exclude]
|
||||
OpenLayers/Format/GeoRSS.js
|
||||
OpenLayers/Format/GML.js
|
||||
OpenLayers/Format/WKT.js
|
||||
OpenLayers/Format/KML.js
|
||||
OpenLayers/Format/WFS.js
|
||||
OpenLayers/Format.js
|
||||
OpenLayers/Handler/Path.js
|
||||
OpenLayers/Handler/Point.js
|
||||
OpenLayers/Handler/Polygon.js
|
||||
OpenLayers/Handler/Select.js
|
||||
OpenLayers/Geometry/Collection.js
|
||||
OpenLayers/Geometry/Curve.js
|
||||
OpenLayers/Geometry/LinearRing.js
|
||||
OpenLayers/Geometry/LineString.js
|
||||
OpenLayers/Geometry/MultiLineString.js
|
||||
OpenLayers/Geometry/MultiPoint.js
|
||||
OpenLayers/Geometry/MultiPolygon.js
|
||||
OpenLayers/Geometry/Point.js
|
||||
OpenLayers/Geometry/Polygon.js
|
||||
OpenLayers/Geometry/Rectangle.js
|
||||
OpenLayers/Geometry/Surface.js
|
||||
OpenLayers/Geometry.js
|
||||
OpenLayers/Layer/GML.js
|
||||
OpenLayers/Layer/Vector.js
|
||||
OpenLayers/Control/DrawFeature.js
|
||||
OpenLayers/Control/EditingToolbar.js
|
||||
OpenLayers/Control/SelectFeature.js
|
||||
OpenLayers/Feature/Vector.js
|
||||
OpenLayers/Renderer
|
||||
OpenLayers/Renderer/Elements.js
|
||||
OpenLayers/Renderer/SVG.js
|
||||
OpenLayers/Renderer/VML.js
|
||||
OpenLayers/Renderer.js
|
||||
|
||||
|
||||
45
build/license.txt
Normal file
@@ -0,0 +1,45 @@
|
||||
/*
|
||||
|
||||
OpenLayers.js -- OpenLayers Map Viewer Library
|
||||
|
||||
Copyright 2005-2006 MetaCarta, Inc., released under a modified BSD license.
|
||||
Please see http://svn.openlayers.org/trunk/openlayers/release-license.txt
|
||||
for the full text of the license.
|
||||
|
||||
Includes compressed code under the following licenses:
|
||||
|
||||
(For uncompressed versions of the code used please see the
|
||||
OpenLayers SVN repository: <http://openlayers.org/>)
|
||||
|
||||
*/
|
||||
|
||||
/* Contains portions of Prototype.js:
|
||||
*
|
||||
* Prototype JavaScript framework, version 1.4.0
|
||||
* (c) 2005 Sam Stephenson <sam@conio.net>
|
||||
*
|
||||
* Prototype is freely distributable under the terms of an MIT-style license.
|
||||
* For details, see the Prototype web site: http://prototype.conio.net/
|
||||
*
|
||||
/*--------------------------------------------------------------------------*/
|
||||
|
||||
/**
|
||||
*
|
||||
* Contains portions of Rico <http://openrico.org/>
|
||||
*
|
||||
* Copyright 2005 Sabre Airline Solutions
|
||||
*
|
||||
* 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.
|
||||
*
|
||||
**/
|
||||
|
||||
20
build/lite.cfg
Normal file
@@ -0,0 +1,20 @@
|
||||
[first]
|
||||
OpenLayers/SingleFile.js
|
||||
OpenLayers.js
|
||||
OpenLayers/BaseTypes.js
|
||||
OpenLayers/Util.js
|
||||
|
||||
[last]
|
||||
|
||||
[include]
|
||||
OpenLayers/Events.js
|
||||
OpenLayers/Map.js
|
||||
OpenLayers/Layer.js
|
||||
OpenLayers/Layer/Grid.js
|
||||
OpenLayers/Layer/HTTPRequest.js
|
||||
OpenLayers/Layer/WMS.js
|
||||
OpenLayers/Layer/WMS/Untiled.js
|
||||
OpenLayers/Tile.js
|
||||
OpenLayers/Tile/Image.js
|
||||
|
||||
[exclude]
|
||||
177
css/ol.css
@@ -1,177 +0,0 @@
|
||||
.ol-renderer-webgl-canvas { width:100%; height:100%; }
|
||||
|
||||
.olTile {
|
||||
-webkit-transition: opacity 0.2s linear;
|
||||
-moz-transition: opacity 0.2s linear;
|
||||
-o-transition: opacity 0.2s linear;
|
||||
transition: opacity 0.2s linear;
|
||||
}
|
||||
|
||||
/**
|
||||
* arrow implementation from http://cssarrowplease.com/ for ol-popup
|
||||
*/
|
||||
|
||||
.ol-popup {
|
||||
position: absolute;
|
||||
background: #88b7d5;
|
||||
border: 4px solid #c2e1f5;
|
||||
}
|
||||
|
||||
/**
|
||||
* FIXME
|
||||
*/
|
||||
.ol-popup-close {
|
||||
background: url("img/close.gif") no-repeat;
|
||||
cursor: pointer;
|
||||
position: absolute;
|
||||
width: 17px;
|
||||
height: 17px;
|
||||
right: 0;
|
||||
}
|
||||
.ol-popup-top {}
|
||||
.ol-popup-top:after, .ol-popup-top:before {
|
||||
bottom: 100%;
|
||||
border: solid transparent;
|
||||
content: " ";
|
||||
height: 0;
|
||||
width: 0;
|
||||
position: absolute;
|
||||
pointer-events: none;
|
||||
}
|
||||
.ol-popup-top:after {
|
||||
border-bottom-color: #88b7d5;
|
||||
border-width: 30px;
|
||||
left: 50%;
|
||||
margin-left: -30px;
|
||||
}
|
||||
.ol-popup-top:before {
|
||||
border-bottom-color: #c2e1f5;
|
||||
border-width: 36px;
|
||||
left: 50%;
|
||||
margin-left: -36px;
|
||||
}
|
||||
.ol-popup-bottom {}
|
||||
.ol-popup-bottom:after, .ol-popup-bottom:before {
|
||||
top: 100%;
|
||||
border: solid transparent;
|
||||
content: " ";
|
||||
height: 0;
|
||||
width: 0;
|
||||
position: absolute;
|
||||
pointer-events: none;
|
||||
}
|
||||
.ol-popup-bottom:after {
|
||||
border-top-color: #88b7d5;
|
||||
border-width: 30px;
|
||||
left: 50%;
|
||||
margin-left: -30px;
|
||||
}
|
||||
.ol-popup-bottom:before {
|
||||
border-top-color: #c2e1f5;
|
||||
border-width: 36px;
|
||||
left: 50%;
|
||||
margin-left: -36px;
|
||||
}
|
||||
.ol-popup-right {}
|
||||
.ol-popup-right:after, .ol-popup-right:before {
|
||||
left: 100%;
|
||||
border: solid transparent;
|
||||
content: " ";
|
||||
height: 0;
|
||||
width: 0;
|
||||
position: absolute;
|
||||
pointer-events: none;
|
||||
}
|
||||
.ol-popup-right:after {
|
||||
border-left-color: #88b7d5;
|
||||
border-width: 30px;
|
||||
top: 50%;
|
||||
margin-top: -30px;
|
||||
}
|
||||
.ol-popup-right:before {
|
||||
border-left-color: #c2e1f5;
|
||||
border-width: 36px;
|
||||
top: 50%;
|
||||
margin-top: -36px;
|
||||
}
|
||||
.ol-popup-left {}
|
||||
.ol-popup-left:after, .ol-popup-left:before {
|
||||
right: 100%;
|
||||
border: solid transparent;
|
||||
content: " ";
|
||||
height: 0;
|
||||
width: 0;
|
||||
position: absolute;
|
||||
pointer-events: none;
|
||||
}
|
||||
.ol-popup-left:after {
|
||||
border-right-color: #88b7d5;
|
||||
border-width: 30px;
|
||||
top: 50%;
|
||||
margin-top: -30px;
|
||||
}
|
||||
.ol-popup-left:before {
|
||||
border-right-color: #c2e1f5;
|
||||
border-width: 36px;
|
||||
top: 50%;
|
||||
margin-top: -36px;
|
||||
}
|
||||
|
||||
.ol-control-zoom {
|
||||
position: absolute;
|
||||
top: 8px;
|
||||
left: 8px;
|
||||
background: rgba(255,255,255,0.4);
|
||||
border-radius: 4px;
|
||||
padding: 2px;
|
||||
}
|
||||
.ol-control-zoom a {
|
||||
display: block;
|
||||
margin: 1px;
|
||||
padding: 0;
|
||||
color: white;
|
||||
font-size: 18px;
|
||||
font-family: 'Lucida Grande', Verdana, Geneva, Lucida, Arial, Helvetica, sans-serif;
|
||||
font-weight: bold;
|
||||
text-decoration: none;
|
||||
text-align: center;
|
||||
height: 22px;
|
||||
width:22px;
|
||||
line-height: 19px;
|
||||
background: #130085; /* fallback for IE - IE6 requires background shorthand*/
|
||||
background: rgba(0, 60, 136, 0.5);
|
||||
filter: alpha(opacity=80);
|
||||
}
|
||||
.ol-control-zoom a:hover {
|
||||
background: #130085; /* fallback for IE */
|
||||
background: rgba(0, 60, 136, 0.7);
|
||||
filter: alpha(opacity=100);
|
||||
}
|
||||
@media only screen and (max-width: 600px) {
|
||||
.ol-control-zoom a:hover {
|
||||
background: rgba(0, 60, 136, 0.5);
|
||||
}
|
||||
}
|
||||
.ol-control-zoom-in {
|
||||
border-radius: 4px 4px 0 0;
|
||||
}
|
||||
.ol-control-zoom-out {
|
||||
border-radius: 0 0 4px 4px;
|
||||
}
|
||||
.ol-control-attribution {
|
||||
position: absolute;
|
||||
font-size: 10px;
|
||||
text-align: right;
|
||||
color: #eeeeee;
|
||||
bottom: 0;
|
||||
right: 0;
|
||||
background: #130085; /* fallback for IE - IE6 requires background shorthand*/
|
||||
background: rgba(0, 60, 136, 0.3);
|
||||
filter: alpha(opacity=30);
|
||||
font-family: 'Lucida Grande', Verdana, Geneva, Lucida, Arial, Helvetica, sans-serif;
|
||||
padding: 2px 4px;
|
||||
}
|
||||
.ol-control-attribution a {
|
||||
color: white;
|
||||
text-decoration: none;
|
||||
}
|
||||
@@ -1,26 +0,0 @@
|
||||
<!doctype html>
|
||||
<html>
|
||||
<head>
|
||||
<meta charset="utf-8"/>
|
||||
<title>OL3 Hello World</title>
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0"/>
|
||||
<link rel="stylesheet" href="../css/ol.css" type="text/css">
|
||||
<script src="../api.js"></script>
|
||||
<style type="text/css" media="screen">
|
||||
html, body, #map { width: 100%; height: 100%; border: 0; margin:0; }
|
||||
</style>
|
||||
<script type="text/javascript" charset="utf-8">
|
||||
var map;
|
||||
function init() {
|
||||
map = ol.map()
|
||||
.renderTo('map')
|
||||
.layers([ol.layer.osm()])
|
||||
.center([45, 5])
|
||||
.zoom(10);
|
||||
}
|
||||
</script>
|
||||
</head>
|
||||
<body onload="init()">
|
||||
<div id="map"></div>
|
||||
</body>
|
||||
</html>
|
||||
@@ -1,15 +0,0 @@
|
||||
<!doctype html>
|
||||
<html>
|
||||
<head>
|
||||
<meta charset="utf-8"/>
|
||||
<title>OL3 Hello World</title>
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0"/>
|
||||
<script src="hello-compiled.js"></script>
|
||||
<style type="text/css" media="screen">
|
||||
html, body, #map { width: 100%; height: 100%; border: 0; margin:0; }
|
||||
</style>
|
||||
</head>
|
||||
<body onload="init()">
|
||||
<div id="map"></div>
|
||||
</body>
|
||||
</html>
|
||||
@@ -1,42 +0,0 @@
|
||||
{
|
||||
"id": "hello",
|
||||
|
||||
"output-file": "hello-compiled.js",
|
||||
|
||||
"inputs": [
|
||||
"hello.js",
|
||||
"../src/ol.js"
|
||||
],
|
||||
"paths": [
|
||||
"../src"
|
||||
],
|
||||
|
||||
"define": {
|
||||
// "goog.dom.ASSUME_STANDARDS_MODE": true,
|
||||
"goog.DEBUG": false
|
||||
},
|
||||
|
||||
"mode": "ADVANCED",
|
||||
"level": "VERBOSE",
|
||||
// "pretty-print": true,
|
||||
// "debug": true,
|
||||
|
||||
// "experimental-compiler-options": {
|
||||
// "generateExports": true
|
||||
// },
|
||||
|
||||
"checks": {
|
||||
// acceptable values are "ERROR", "WARNING", and "OFF"
|
||||
"accessControls": "WARNING",
|
||||
"visibility": "WARNING",
|
||||
"checkTypes": "WARNING",
|
||||
"checkRegExp": "WARNING",
|
||||
"checkVars": "WARNING",
|
||||
"deprecated": "WARNING",
|
||||
"fileoverviewTags": "WARNING",
|
||||
"invalidCasts": "WARNING",
|
||||
"missingProperties": "WARNING",
|
||||
"nonStandardJsDocs": "WARNING",
|
||||
"undefinedVars": "WARNING"
|
||||
}
|
||||
}
|
||||
@@ -1,42 +0,0 @@
|
||||
{
|
||||
"id": "hello-epi",
|
||||
|
||||
"output-file": "hello-epi-compiled.js",
|
||||
|
||||
"inputs": [
|
||||
"hello-epi.js"
|
||||
],
|
||||
"paths": [
|
||||
"../src"
|
||||
],
|
||||
|
||||
"define": {
|
||||
// "goog.dom.ASSUME_STANDARDS_MODE": true,
|
||||
"goog.DEBUG": false
|
||||
},
|
||||
|
||||
"mode": "ADVANCED",
|
||||
"level": "VERBOSE",
|
||||
// "pretty-print": true,
|
||||
// "debug": true,
|
||||
|
||||
// "experimental-compiler-options": {
|
||||
// "generateExports": true
|
||||
// },
|
||||
|
||||
|
||||
"checks": {
|
||||
// acceptable values are "ERROR", "WARNING", and "OFF"
|
||||
"accessControls": "WARNING",
|
||||
"visibility": "WARNING",
|
||||
"checkTypes": "WARNING",
|
||||
"checkRegExp": "WARNING",
|
||||
"checkVars": "WARNING",
|
||||
"deprecated": "WARNING",
|
||||
"fileoverviewTags": "WARNING",
|
||||
"invalidCasts": "WARNING",
|
||||
"missingProperties": "WARNING",
|
||||
"nonStandardJsDocs": "WARNING",
|
||||
"undefinedVars": "WARNING"
|
||||
}
|
||||
}
|
||||
@@ -1,16 +0,0 @@
|
||||
/* This is a code which is going to be compiled together with the library */
|
||||
|
||||
goog.require('ol.Map');
|
||||
goog.require('ol.layer.OSM');
|
||||
goog.require('ol.Loc');
|
||||
|
||||
goog.require('goog.dom');
|
||||
|
||||
function init() {
|
||||
var map = new ol.Map();
|
||||
map.setContainer(goog.dom.getElement('map'));
|
||||
map.setLayers( [ new ol.layer.OSM() ] );
|
||||
map.setCenter( new ol.Loc(45, 5));
|
||||
map.setZoom(10);
|
||||
}
|
||||
window['init'] = init;
|
||||
@@ -1,10 +0,0 @@
|
||||
/* This is a code which is going to be compiled together with the library */
|
||||
|
||||
function init() {
|
||||
var map = ol.map()
|
||||
.renderTo('map')
|
||||
.layers([ol.layer.osm()])
|
||||
.center([45, 5])
|
||||
.zoom(10);
|
||||
}
|
||||
window['init'] = init;
|
||||
@@ -1,7 +0,0 @@
|
||||
/**
|
||||
Adds the plovr generated script to the document.
|
||||
*/
|
||||
(function() {
|
||||
var url = "http://" + window.location.hostname + ":9810/compile?id=ol";
|
||||
document.write("<script type='text/javascript' src='" + url + "'></script>");
|
||||
})();
|
||||
@@ -1,17 +0,0 @@
|
||||
<!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
<title>OL3 Map</title>
|
||||
<script type="text/javascript" src="loader.js"></script>
|
||||
<link rel="stylesheet" href="../css/ol.css" type="text/css">
|
||||
<style type="text/css">
|
||||
#map {
|
||||
width: 512px; height: 350px;
|
||||
}
|
||||
</style>
|
||||
</head>
|
||||
<body>
|
||||
</body>
|
||||
<div id="map"></div>
|
||||
<script type="text/javascript" src="map.js"></script>
|
||||
</html>
|
||||
@@ -1,6 +0,0 @@
|
||||
var map = ol.map({
|
||||
renderTo: 'map',
|
||||
layers: [ol.layer.osm()],
|
||||
center: [0, 0],
|
||||
zoom: 1
|
||||
});
|
||||
@@ -1,39 +0,0 @@
|
||||
/**
|
||||
* Build configuration for the map.js example. Use following syntax:
|
||||
*
|
||||
* ol build map.json
|
||||
*
|
||||
* The output will be named map-compiled.js.
|
||||
*/
|
||||
|
||||
{
|
||||
"id": "hello",
|
||||
|
||||
"output-file": "map-compiled.js",
|
||||
|
||||
"inputs": ["../src/ol.js", "map.js"],
|
||||
|
||||
"paths": ["../src"],
|
||||
|
||||
"define": {
|
||||
"goog.DEBUG": false
|
||||
},
|
||||
|
||||
"mode": "ADVANCED",
|
||||
"level": "VERBOSE",
|
||||
|
||||
// acceptable values are "ERROR", "WARNING", and "OFF"
|
||||
"checks": {
|
||||
"accessControls": "WARNING",
|
||||
"visibility": "WARNING",
|
||||
"checkTypes": "WARNING",
|
||||
"checkRegExp": "WARNING",
|
||||
"checkVars": "WARNING",
|
||||
"deprecated": "WARNING",
|
||||
"fileoverviewTags": "WARNING",
|
||||
"invalidCasts": "WARNING",
|
||||
"missingProperties": "WARNING",
|
||||
"nonStandardJsDocs": "WARNING",
|
||||
"undefinedVars": "WARNING"
|
||||
}
|
||||
}
|
||||
24
doc/authors.txt
Normal file
@@ -0,0 +1,24 @@
|
||||
OpenLayers contributors:
|
||||
Howard Butler
|
||||
Bertil Chaupis
|
||||
Jeff Dege
|
||||
Schuyler Erle
|
||||
Christian López Espínola
|
||||
John Frank
|
||||
Sean Gilles
|
||||
Pierre Giraud
|
||||
Andreas Hocevar
|
||||
Philip Lindsay
|
||||
Corey Puffault
|
||||
Tim Schaub
|
||||
Christopher Schmidt
|
||||
Cameron Shorter
|
||||
Paul Spencer
|
||||
James Stembridge
|
||||
Erik Uzureau
|
||||
Bill Woodall
|
||||
Steve Woodbridge
|
||||
|
||||
|
||||
OpenLayers is graciously supported by MetaCarta, Inc.
|
||||
<http://www.metacarta.com>.
|
||||
49
doc/customization
Normal file
@@ -0,0 +1,49 @@
|
||||
Customizing OpenLayers
|
||||
======================
|
||||
|
||||
OpenLayers is designed to fit many needs -- fitting in alongside all kinds of
|
||||
various applications which are currently in use.
|
||||
|
||||
Currently, OpenLayers supports a 'theme' option when creating a map. This
|
||||
theme option allows you to specify the location of a CSS theme which should
|
||||
be included.
|
||||
|
||||
A default theme is available as an example in the theme/ directory: the setup
|
||||
is:
|
||||
|
||||
* theme/
|
||||
* theme/default/
|
||||
* theme/default/style.css
|
||||
* theme/default/img/
|
||||
|
||||
Currently, the OpenLayers code does not support class names, and therefore,
|
||||
it is not possible to control many aspects of OpenLayers code with CSS
|
||||
classes. However, with this framework in place, we expect to invest time
|
||||
to make existing features and new features use the CSS theming framework
|
||||
where apropriate.
|
||||
|
||||
|
||||
Class Naming
|
||||
============
|
||||
Elements should have class names which are descriptive of the Javascript
|
||||
class from which they come. For example, the main layer switcher element
|
||||
in the OpenLayers.Control.LayerSwitcher would be classed:
|
||||
|
||||
olControlLayerSwitcher
|
||||
|
||||
This would allow users to add to their style.css class in their theme,
|
||||
changing, for example:
|
||||
|
||||
::
|
||||
|
||||
.olControlLayerSwitcher input {
|
||||
width:10px;
|
||||
}
|
||||
|
||||
Sub elements of a particular control can add to the class name:
|
||||
|
||||
::
|
||||
|
||||
.olControlLayerSwitcherBaseLabel {
|
||||
color: red;
|
||||
}
|
||||
3
doc/readme.txt
Normal file
@@ -0,0 +1,3 @@
|
||||
Automatically generated OpenLayers API documentation is online:
|
||||
|
||||
http://dev.openlayers.org/docs/overview-tree.html
|
||||
33
examples/GMLParser.html
Normal file
@@ -0,0 +1,33 @@
|
||||
<html xmlns="http://www.w3.org/1999/xhtml">
|
||||
<head>
|
||||
<style type="text/css">
|
||||
#map {
|
||||
width: 800px;
|
||||
height: 475px;
|
||||
border: 1px solid black;
|
||||
}
|
||||
</style>
|
||||
<script src="../lib/OpenLayers.js"></script>
|
||||
<script type="text/javascript">
|
||||
function parseData(req) {
|
||||
g = new OpenLayers.Format.GML();
|
||||
html = ""
|
||||
features = g.read(req.responseText);
|
||||
for(var feat in features) {
|
||||
html += "Feature: Geometry: "+ features[feat].geometry+",";
|
||||
html += "<ul>";
|
||||
for (var j in features[feat].attributes) {
|
||||
html += "<li>"+j+":"+features[feat].attributes[j]+"</li>";
|
||||
}
|
||||
html += "</ul>"
|
||||
}
|
||||
document.body.innerHTML = html;
|
||||
}
|
||||
function load() {
|
||||
OpenLayers.loadURL("gml/owls.xml", "", null, parseData);
|
||||
}
|
||||
</script>
|
||||
</head>
|
||||
<body onload="load()">
|
||||
</body>
|
||||
</html>
|
||||
33
examples/KMLParser.html
Normal file
@@ -0,0 +1,33 @@
|
||||
<html xmlns="http://www.w3.org/1999/xhtml">
|
||||
<head>
|
||||
<style type="text/css">
|
||||
#map {
|
||||
width: 800px;
|
||||
height: 475px;
|
||||
border: 1px solid black;
|
||||
}
|
||||
</style>
|
||||
<script src="../lib/OpenLayers.js"></script>
|
||||
<script type="text/javascript">
|
||||
function parseData(req) {
|
||||
g = new OpenLayers.Format.KML();
|
||||
html = ""
|
||||
features = g.read(req.responseText);
|
||||
for(var feat in features) {
|
||||
html += "Feature: Geometry: "+ features[feat].geometry+",";
|
||||
html += "<ul>";
|
||||
for (var j in features[feat].attributes) {
|
||||
html += "<li>"+j+":"+features[feat].attributes[j]+"</li>";
|
||||
}
|
||||
html += "</ul>"
|
||||
}
|
||||
document.body.innerHTML = html;
|
||||
}
|
||||
function load() {
|
||||
OpenLayers.loadURL("kml/mc-search.kml", "", null, parseData);
|
||||
}
|
||||
</script>
|
||||
</head>
|
||||
<body onload="load()">
|
||||
</body>
|
||||
</html>
|
||||
83
examples/baseLayers.html
Normal file
@@ -0,0 +1,83 @@
|
||||
<html xmlns="http://www.w3.org/1999/xhtml">
|
||||
<head>
|
||||
<style type="text/css">
|
||||
#map {
|
||||
width: 100%;
|
||||
height: 512px;
|
||||
border: 1px solid black;
|
||||
background-color: blue;
|
||||
}
|
||||
</style>
|
||||
|
||||
<!-- this gmaps key generated for http://openlayers.org/dev/ -->
|
||||
<script src='http://maps.google.com/maps?file=api&v=2&key=ABQIAAAA9XNhd8q0UdwNC7YSO4YZghSPUCi5aRYVveCcVYxzezM4iaj_gxQ9t-UajFL70jfcpquH5l1IJ-Zyyw'></script>
|
||||
<!-- Localhost key -->
|
||||
<!-- <script src='http://maps.google.com/maps?file=api&v=2&key=ABQIAAAAjpkAC9ePGem0lIq5XcMiuhT2yXp_ZAY8_ufC3CFXhHIE1NvwkxTS6gjckBmeABOGXIUiOiZObZESPg'></script>-->
|
||||
<script type="text/javascript" src="http://clients.multimap.com/API/maps/1.1/metacarta_04"></script>
|
||||
<script src='http://dev.virtualearth.net/mapcontrol/v3/mapcontrol.js'></script>
|
||||
<script src="http://api.maps.yahoo.com/ajaxymap?v=3.0&appid=euzuro-openlayers"></script>
|
||||
<script src="../lib/OpenLayers.js"></script>
|
||||
<script type="text/javascript">
|
||||
<!--
|
||||
var lon = 5;
|
||||
var lat = 40;
|
||||
var zoom = 5;
|
||||
var map, markers;
|
||||
var barcelona = new OpenLayers.LonLat(2.13134765625,
|
||||
41.37062534198901);
|
||||
var madrid = new OpenLayers.LonLat(-3.6968994140625,
|
||||
40.428314208984375);
|
||||
|
||||
function init(){
|
||||
map = new OpenLayers.Map( 'map' );
|
||||
|
||||
var wms = new OpenLayers.Layer.WMS( "OpenLayers WMS",
|
||||
"http://labs.metacarta.com/wms/vmap0",
|
||||
{layers: 'basic'} );
|
||||
var google = new OpenLayers.Layer.Google( "Google Hybrid" , {type: G_HYBRID_MAP });
|
||||
var ve = new OpenLayers.Layer.VirtualEarth( "VE");
|
||||
var yahoo = new OpenLayers.Layer.Yahoo( "Yahoo");
|
||||
var mm = new OpenLayers.Layer.MultiMap( "MultiMap");
|
||||
|
||||
|
||||
map.addLayers([wms, google, ve, yahoo, mm]);
|
||||
|
||||
markers = new OpenLayers.Layer.Markers("markers");
|
||||
map.addLayer(markers);
|
||||
|
||||
map.setCenter(new OpenLayers.LonLat(lon, lat), zoom);
|
||||
map.addControl( new OpenLayers.Control.LayerSwitcher() );
|
||||
map.addControl( new OpenLayers.Control.MousePosition() );
|
||||
|
||||
}
|
||||
|
||||
function add() {
|
||||
var url = 'http://boston.openguides.org/markers/AQUA.png';
|
||||
var sz = new OpenLayers.Size(10, 17);
|
||||
var calculateOffset = function(size) {
|
||||
return new OpenLayers.Pixel(-(size.w/2), -size.h);
|
||||
};
|
||||
var icon = new OpenLayers.Icon(url, sz, null, calculateOffset);
|
||||
marker = new OpenLayers.Marker(barcelona, icon);
|
||||
markers.addMarker(marker);
|
||||
|
||||
marker = new OpenLayers.Marker(madrid, icon.clone());
|
||||
markers.addMarker(marker);
|
||||
|
||||
}
|
||||
|
||||
function remove() {
|
||||
markers.removeMarker(marker);
|
||||
}
|
||||
|
||||
// -->
|
||||
|
||||
</script>
|
||||
</head>
|
||||
<body onload="init()">
|
||||
<h1>OpenLayers With WMS, Google, VE Example</h1>
|
||||
<div id="map"></div>
|
||||
<div style="background-color:green" onclick="add()"> click to add a marker to the map</div>
|
||||
<div style="background-color:red" onclick="remove()"> click to remove the marker from the map</div>
|
||||
</body>
|
||||
</html>
|
||||
49
examples/boxes.html
Normal file
@@ -0,0 +1,49 @@
|
||||
<html xmlns="http://www.w3.org/1999/xhtml">
|
||||
<head>
|
||||
<style type="text/css">
|
||||
#map {
|
||||
width: 512px;
|
||||
height: 512px;
|
||||
border: 1px solid black;
|
||||
}
|
||||
</style>
|
||||
<script src="../lib/OpenLayers.js"></script>
|
||||
<script type="text/javascript">
|
||||
<!--
|
||||
box_extents = [
|
||||
[-10, 50, 5, 60],
|
||||
[-75, 41, -71, 44],
|
||||
[-122.6, 37.6, -122.3, 37.9],
|
||||
[10, 10, 20, 20]
|
||||
];
|
||||
|
||||
function init(){
|
||||
var map = new OpenLayers.Map('map');
|
||||
|
||||
var ol_wms = new OpenLayers.Layer.WMS( "OpenLayers WMS",
|
||||
"http://labs.metacarta.com/wms/vmap0?", {layers: 'basic'} );
|
||||
|
||||
var boxes = new OpenLayers.Layer.Boxes( "Boxes" );
|
||||
|
||||
for (var i = 0; i < box_extents.length; i++) {
|
||||
ext = box_extents[i];
|
||||
bounds = new OpenLayers.Bounds(ext[0], ext[1], ext[2], ext[3]);
|
||||
box = new OpenLayers.Marker.Box(bounds);
|
||||
box.events.register("click", box, function (e) {
|
||||
this.setBorder("yellow");
|
||||
});
|
||||
boxes.addMarker(box);
|
||||
}
|
||||
|
||||
map.addLayers([ol_wms, boxes]);
|
||||
map.addControl(new OpenLayers.Control.LayerSwitcher());
|
||||
map.zoomToMaxExtent();
|
||||
}
|
||||
// -->
|
||||
</script>
|
||||
</head>
|
||||
<body onload="init()">
|
||||
<h1>OpenLayers Example</h1>
|
||||
<div id="map"></div>
|
||||
</body>
|
||||
</html>
|
||||
613
examples/canvas.html
Normal file
@@ -0,0 +1,613 @@
|
||||
<html xmlns="http://www.w3.org/1999/xhtml">
|
||||
<head>
|
||||
<style type="text/css">
|
||||
#map {
|
||||
width: 512px;
|
||||
height: 512px;
|
||||
border: 1px solid black;
|
||||
}
|
||||
</style>
|
||||
<script src='http://maps.google.com/maps?file=api&v=2&key=ABQIAAAA9XNhd8q0UdwNC7YSO4YZghSPUCi5aRYVveCcVYxzezM4iaj_gxQ9t-UajFL70jfcpquH5l1IJ-Zyyw'></script>
|
||||
<script src="../lib/OpenLayers.js"></script>
|
||||
<script type="text/javascript">
|
||||
<!--
|
||||
var map, canvas;
|
||||
var click;
|
||||
function init(){
|
||||
map = new OpenLayers.Map('map');
|
||||
|
||||
var ol_wms = new OpenLayers.Layer.WMS( "OpenLayers WMS",
|
||||
"http://labs.metacarta.com/wms/vmap0?", {layers: 'basic'});
|
||||
var g = new OpenLayers.Layer.Google("Google");
|
||||
canvas = new OpenLayers.Layer.Canvas("Canvas Layer");
|
||||
map.addLayers([ol_wms, g,canvas]);
|
||||
map.addControl(new OpenLayers.Control.LayerSwitcher());
|
||||
// map.setCenter(new OpenLayers.LonLat(0, 0), 0);
|
||||
map.zoomToMaxExtent();
|
||||
canvas.drawLine(new OpenLayers.LonLat(-71,42), new OpenLayers.LonLat(0,0));
|
||||
canvas.setStrokeColor("red");
|
||||
canvas.setStrokeWidth(5);
|
||||
canvas.setAlpha(.5);
|
||||
map.events.register("click", map, function(e) {
|
||||
if (click) {
|
||||
canvas.drawLine(click, this.getLonLatFromPixel(e.xy));
|
||||
click = null;
|
||||
OpenLayers.Util.getElement('status').innerHTML = "";
|
||||
}
|
||||
else {
|
||||
click = this.getLonLatFromPixel(e.xy);
|
||||
OpenLayers.Util.getElement('status').innerHTML = "Point 1 stored: "+click+". <a href='#' onclick='click=null;return false'>Reset</a>";
|
||||
}
|
||||
});
|
||||
}
|
||||
function drawIt() {
|
||||
canvas.drawLine(
|
||||
new OpenLayers.LonLat(parseFloat(OpenLayers.Util.getElement('lon1').value), parseFloat(OpenLayers.Util.getElement('lat1').value)),
|
||||
new OpenLayers.LonLat(parseFloat(OpenLayers.Util.getElement('lon2').value), parseFloat(OpenLayers.Util.getElement('lat2').value))
|
||||
);
|
||||
}
|
||||
// -->
|
||||
</script>
|
||||
</head>
|
||||
<body onload="init()">
|
||||
<h1>OpenLayers Example</h1>
|
||||
<div style="float:right">
|
||||
<br />
|
||||
Start Lon: <input type="text" id="lon1" />
|
||||
Start Lat: <input type="text" id="lat1" /><br />
|
||||
End Lon: <input type="text" id="lon2" />
|
||||
End Lat: <input type="text" id="lat2" /><br />
|
||||
<input type="submit" value="Add line" onclick="drawIt()" />
|
||||
<div id="status"></div>
|
||||
<center>
|
||||
<table border="1" cellpadding="0" cellspacing="1">
|
||||
<tbody>
|
||||
<tr>
|
||||
<td bgcolor="#000000">
|
||||
<font size="-3">
|
||||
<a href="#" onclick="canvas.setStrokeColor('#000000');return false"> </a>
|
||||
</font>
|
||||
</td>
|
||||
<td bgcolor="#000033">
|
||||
<font size="-3">
|
||||
<a href="#" onclick="canvas.setStrokeColor('#000033');return false"> </a>
|
||||
</font>
|
||||
</td>
|
||||
<td bgcolor="#000066">
|
||||
<font size="-3">
|
||||
<a href="#" onclick="canvas.setStrokeColor('#000066');return false"> </a>
|
||||
</font>
|
||||
</td>
|
||||
<td bgcolor="#000099">
|
||||
<font size="-3">
|
||||
<a href="#" onclick="canvas.setStrokeColor('#000099');return false"> </a>
|
||||
</font>
|
||||
</td>
|
||||
<td bgcolor="#0000cc">
|
||||
<font size="-3">
|
||||
<a href="#" onclick="canvas.setStrokeColor('#0000CC');return false"> </a>
|
||||
</font>
|
||||
</td>
|
||||
<td bgcolor="#0000ff">
|
||||
<font size="-3">
|
||||
<a href="#" onclick="canvas.setStrokeColor('#0000FF');return false"> </a>
|
||||
</font>
|
||||
</td>
|
||||
<td bgcolor="#330000">
|
||||
<font size="-3">
|
||||
<a href="#" onclick="canvas.setStrokeColor('#330000');return false"> </a>
|
||||
</font>
|
||||
</td>
|
||||
<td bgcolor="#330033">
|
||||
<font size="-3">
|
||||
<a href="#" onclick="canvas.setStrokeColor('#330033');return false"> </a>
|
||||
</font>
|
||||
</td>
|
||||
<td bgcolor="#330066">
|
||||
<font size="-3">
|
||||
<a href="#" onclick="canvas.setStrokeColor('#330066');return false"> </a>
|
||||
</font>
|
||||
</td>
|
||||
<td bgcolor="#330099">
|
||||
<font size="-3">
|
||||
<a href="#" onclick="canvas.setStrokeColor('#330099');return false"> </a>
|
||||
</font>
|
||||
</td>
|
||||
<td bgcolor="#3300cc">
|
||||
<font size="-3">
|
||||
<a href="#" onclick="canvas.setStrokeColor('#3300CC');return false"> </a>
|
||||
</font>
|
||||
</td>
|
||||
<td bgcolor="#3300ff">
|
||||
<font size="-3">
|
||||
<a href="#" onclick="canvas.setStrokeColor('#3300FF');return false"> </a>
|
||||
</font>
|
||||
</td>
|
||||
<td bgcolor="#660000">
|
||||
<font size="-3">
|
||||
<a href="#" onclick="canvas.setStrokeColor('#660000');return false"> </a>
|
||||
</font>
|
||||
</td>
|
||||
<td bgcolor="#660033">
|
||||
<font size="-3">
|
||||
<a href="#" onclick="canvas.setStrokeColor('#660033');return false"> </a>
|
||||
</font>
|
||||
</td>
|
||||
<td bgcolor="#660066">
|
||||
<font size="-3">
|
||||
<a href="#" onclick="canvas.setStrokeColor('#660066');return false"> </a>
|
||||
</font>
|
||||
</td>
|
||||
<td bgcolor="#660099">
|
||||
<font size="-3">
|
||||
<a href="#" onclick="canvas.setStrokeColor('#660099');return false"> </a>
|
||||
</font>
|
||||
</td>
|
||||
<td bgcolor="#6600cc">
|
||||
<font size="-3">
|
||||
<a href="#" onclick="canvas.setStrokeColor('#6600CC');return false"> </a>
|
||||
</font>
|
||||
</td>
|
||||
<td bgcolor="#6600ff">
|
||||
<font size="-3">
|
||||
<a href="#" onclick="canvas.setStrokeColor('#6600FF');return false"> </a>
|
||||
</font>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td bgcolor="#990000">
|
||||
<font size="-3">
|
||||
<a href="#" onclick="canvas.setStrokeColor('#990000');return false"> </a>
|
||||
</font>
|
||||
</td>
|
||||
<td bgcolor="#990033">
|
||||
<font size="-3">
|
||||
<a href="#" onclick="canvas.setStrokeColor('#990033');return false"> </a>
|
||||
</font>
|
||||
</td>
|
||||
<td bgcolor="#990066">
|
||||
<font size="-3">
|
||||
<a href="#" onclick="canvas.setStrokeColor('#990066');return false"> </a>
|
||||
</font>
|
||||
</td>
|
||||
<td bgcolor="#990099">
|
||||
<font size="-3">
|
||||
<a href="#" onclick="canvas.setStrokeColor('#990099');return false"> </a>
|
||||
</font>
|
||||
</td>
|
||||
<td bgcolor="#9900cc">
|
||||
<font size="-3">
|
||||
<a href="#" onclick="canvas.setStrokeColor('#9900CC');return false"> </a>
|
||||
</font>
|
||||
</td>
|
||||
<td bgcolor="#9900ff">
|
||||
<font size="-3">
|
||||
<a href="#" onclick="canvas.setStrokeColor('#9900FF');return false"> </a>
|
||||
</font>
|
||||
</td>
|
||||
<td bgcolor="#cc0000">
|
||||
<font size="-3">
|
||||
<a href="#" onclick="canvas.setStrokeColor('#CC0000');return false"> </a>
|
||||
</font>
|
||||
</td>
|
||||
<td bgcolor="#cc0033">
|
||||
<font size="-3">
|
||||
<a href="#" onclick="canvas.setStrokeColor('#CC0033');return false"> </a>
|
||||
</font>
|
||||
</td>
|
||||
<td bgcolor="#cc0066">
|
||||
<font size="-3">
|
||||
<a href="#" onclick="canvas.setStrokeColor('#CC0066');return false"> </a>
|
||||
</font>
|
||||
</td>
|
||||
<td bgcolor="#cc0099">
|
||||
<font size="-3">
|
||||
<a href="#" onclick="canvas.setStrokeColor('#CC0099');return false"> </a>
|
||||
</font>
|
||||
</td>
|
||||
<td bgcolor="#cc00cc">
|
||||
<font size="-3">
|
||||
<a href="#" onclick="canvas.setStrokeColor('#CC00CC');return false"> </a>
|
||||
</font>
|
||||
</td>
|
||||
<td bgcolor="#cc00ff">
|
||||
<font size="-3">
|
||||
<a href="#" onclick="canvas.setStrokeColor('#CC00FF');return false"> </a>
|
||||
</font>
|
||||
</td>
|
||||
<td bgcolor="#ff0000">
|
||||
<font size="-3">
|
||||
<a href="#" onclick="canvas.setStrokeColor('#FF0000');return false"> </a>
|
||||
</font>
|
||||
</td>
|
||||
<td bgcolor="#ff0033">
|
||||
<font size="-3">
|
||||
<a href="#" onclick="canvas.setStrokeColor('#FF0033');return false"> </a>
|
||||
</font>
|
||||
</td>
|
||||
<td bgcolor="#ff0066">
|
||||
<font size="-3">
|
||||
<a href="#" onclick="canvas.setStrokeColor('#FF0066');return false"> </a>
|
||||
</font>
|
||||
</td>
|
||||
<td bgcolor="#ff0099">
|
||||
<font size="-3">
|
||||
<a href="#" onclick="canvas.setStrokeColor('#FF0099');return false"> </a>
|
||||
</font>
|
||||
</td>
|
||||
<td bgcolor="#ff00cc">
|
||||
<font size="-3">
|
||||
<a href="#" onclick="canvas.setStrokeColor('#FF00CC');return false"> </a>
|
||||
</font>
|
||||
</td>
|
||||
<td bgcolor="#ff00ff">
|
||||
<font size="-3">
|
||||
<a href="#" onclick="canvas.setStrokeColor('#FF00FF');return false"> </a>
|
||||
</font>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td bgcolor="#003300">
|
||||
<font size="-3">
|
||||
<a href="#" onclick="canvas.setStrokeColor('#003300');return false"> </a>
|
||||
</font>
|
||||
</td>
|
||||
<td bgcolor="#003333">
|
||||
<font size="-3">
|
||||
<a href="#" onclick="canvas.setStrokeColor('#003333');return false"> </a>
|
||||
</font>
|
||||
</td>
|
||||
<td bgcolor="#003366">
|
||||
<font size="-3">
|
||||
<a href="#" onclick="canvas.setStrokeColor('#003366');return false"> </a>
|
||||
</font>
|
||||
</td>
|
||||
<td bgcolor="#003399">
|
||||
<font size="-3">
|
||||
<a href="#" onclick="canvas.setStrokeColor('#003399');return false"> </a>
|
||||
</font>
|
||||
</td>
|
||||
<td bgcolor="#0033cc">
|
||||
<font size="-3">
|
||||
<a href="#" onclick="canvas.setStrokeColor('#0033CC');return false"> </a>
|
||||
</font>
|
||||
</td>
|
||||
<td bgcolor="#0033ff">
|
||||
<font size="-3">
|
||||
<a href="#" onclick="canvas.setStrokeColor('#0033FF');return false"> </a>
|
||||
</font>
|
||||
</td>
|
||||
<td bgcolor="#333300">
|
||||
<font size="-3">
|
||||
<a href="#" onclick="canvas.setStrokeColor('#333300');return false"> </a>
|
||||
</font>
|
||||
</td>
|
||||
<td bgcolor="#333333">
|
||||
<font size="-3">
|
||||
<a href="#" onclick="canvas.setStrokeColor('#333333');return false"> </a>
|
||||
</font>
|
||||
</td>
|
||||
<td bgcolor="#333366">
|
||||
<font size="-3">
|
||||
<a href="#" onclick="canvas.setStrokeColor('#333366');return false"> </a>
|
||||
</font>
|
||||
</td>
|
||||
<td bgcolor="#333399">
|
||||
<font size="-3">
|
||||
<a href="#" onclick="canvas.setStrokeColor('#333399');return false"> </a>
|
||||
</font>
|
||||
</td>
|
||||
<td bgcolor="#3333cc">
|
||||
<font size="-3">
|
||||
<a href="#" onclick="canvas.setStrokeColor('#3333CC');return false"> </a>
|
||||
</font>
|
||||
</td>
|
||||
<td bgcolor="#3333ff">
|
||||
<font size="-3">
|
||||
<a href="#" onclick="canvas.setStrokeColor('#3333FF');return false"> </a>
|
||||
</font>
|
||||
</td>
|
||||
<td bgcolor="#663300">
|
||||
<font size="-3">
|
||||
<a href="#" onclick="canvas.setStrokeColor('#663300');return false"> </a>
|
||||
</font>
|
||||
</td>
|
||||
<td bgcolor="#663333">
|
||||
<font size="-3">
|
||||
<a href="#" onclick="canvas.setStrokeColor('#663333');return false"> </a>
|
||||
</font>
|
||||
</td>
|
||||
<td bgcolor="#663366">
|
||||
<font size="-3">
|
||||
<a href="#" onclick="canvas.setStrokeColor('#663366');return false"> </a>
|
||||
</font>
|
||||
</td>
|
||||
<td bgcolor="#663399">
|
||||
<font size="-3">
|
||||
<a href="#" onclick="canvas.setStrokeColor('#663399');return false"> </a>
|
||||
</font>
|
||||
</td>
|
||||
<td bgcolor="#6633cc">
|
||||
<font size="-3">
|
||||
<a href="#" onclick="canvas.setStrokeColor('#6633CC');return false"> </a>
|
||||
</font>
|
||||
</td>
|
||||
<td bgcolor="#6633ff">
|
||||
<font size="-3">
|
||||
<a href="#" onclick="canvas.setStrokeColor('#6633FF');return false"> </a>
|
||||
</font>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td bgcolor="#993300">
|
||||
<font size="-3">
|
||||
<a href="#" onclick="canvas.setStrokeColor('#993300');return false"> </a>
|
||||
</font>
|
||||
</td>
|
||||
<td bgcolor="#993333">
|
||||
<font size="-3">
|
||||
<a href="#" onclick="canvas.setStrokeColor('#993333');return false"> </a>
|
||||
</font>
|
||||
</td>
|
||||
<td bgcolor="#993366">
|
||||
<font size="-3">
|
||||
<a href="#" onclick="canvas.setStrokeColor('#993366');return false"> </a>
|
||||
</font>
|
||||
</td>
|
||||
<td bgcolor="#993399">
|
||||
<font size="-3">
|
||||
<a href="#" onclick="canvas.setStrokeColor('#993399');return false"> </a>
|
||||
</font>
|
||||
</td>
|
||||
<td bgcolor="#9933cc">
|
||||
<font size="-3">
|
||||
<a href="#" onclick="canvas.setStrokeColor('#9933CC');return false"> </a>
|
||||
</font>
|
||||
</td>
|
||||
<td bgcolor="#9933ff">
|
||||
<font size="-3">
|
||||
<a href="#" onclick="canvas.setStrokeColor('#9933FF');return false"> </a>
|
||||
</font>
|
||||
</td>
|
||||
<td bgcolor="#cc3300">
|
||||
<font size="-3">
|
||||
<a href="#" onclick="canvas.setStrokeColor('#CC3300');return false"> </a>
|
||||
</font>
|
||||
</td>
|
||||
<td bgcolor="#cc3333">
|
||||
<font size="-3">
|
||||
<a href="#" onclick="canvas.setStrokeColor('#CC3333');return false"> </a>
|
||||
</font>
|
||||
</td>
|
||||
<td bgcolor="#cc33cc">
|
||||
<font size="-3">
|
||||
<a href="#" onclick="canvas.setStrokeColor('#CC33CC');return false"> </a>
|
||||
</font>
|
||||
</td>
|
||||
<td bgcolor="#cc33ff">
|
||||
<font size="-3">
|
||||
<a href="#" onclick="canvas.setStrokeColor('#CC33FF');return false"> </a>
|
||||
</font>
|
||||
</td>
|
||||
<td bgcolor="#ff3300">
|
||||
<font size="-3">
|
||||
<a href="#" onclick="canvas.setStrokeColor('#FF3300');return false"> </a>
|
||||
</font>
|
||||
</td>
|
||||
<td bgcolor="#ff3333">
|
||||
<font size="-3">
|
||||
<a href="#" onclick="canvas.setStrokeColor('#FF3333');return false"> </a>
|
||||
</font>
|
||||
</td>
|
||||
<td bgcolor="#ff3366">
|
||||
<font size="-3">
|
||||
<a href="#" onclick="canvas.setStrokeColor('#FF3366');return false"> </a>
|
||||
</font>
|
||||
</td>
|
||||
<td bgcolor="#ff3399">
|
||||
<font size="-3">
|
||||
<a href="#" onclick="canvas.setStrokeColor('#FF3399');return false"> </a>
|
||||
</font>
|
||||
</td>
|
||||
<td bgcolor="#ff33cc">
|
||||
<font size="-3">
|
||||
<a href="#" onclick="canvas.setStrokeColor('#FF33CC');return false"> </a>
|
||||
</font>
|
||||
</td>
|
||||
<td bgcolor="#ff33ff">
|
||||
<font size="-3">
|
||||
<a href="#" onclick="canvas.setStrokeColor('#FF33FF');return false"> </a>
|
||||
</font>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td bgcolor="#006600">
|
||||
<font size="-3">
|
||||
<a href="#" onclick="canvas.setStrokeColor('#006600');return false"> </a>
|
||||
</font>
|
||||
</td>
|
||||
<td bgcolor="#006633">
|
||||
<font size="-3">
|
||||
<a href="#" onclick="canvas.setStrokeColor('#006633');return false"> </a>
|
||||
</font>
|
||||
</td>
|
||||
<td bgcolor="#006666">
|
||||
<font size="-3">
|
||||
<a href="#" onclick="canvas.setStrokeColor('#006666');return false"> </a>
|
||||
</font>
|
||||
</td>
|
||||
<td bgcolor="#006699">
|
||||
<font size="-3">
|
||||
<a href="#" onclick="canvas.setStrokeColor('#006699');return false"> </a>
|
||||
</font>
|
||||
</td>
|
||||
<td bgcolor="#0066cc">
|
||||
<font size="-3">
|
||||
<a href="#" onclick="canvas.setStrokeColor('#0066CC');return false"> </a>
|
||||
</font>
|
||||
</td>
|
||||
<td bgcolor="#336699">
|
||||
<font size="-3">
|
||||
<a href="#" onclick="canvas.setStrokeColor('#336699');return false"> </a>
|
||||
</font>
|
||||
</td>
|
||||
<td bgcolor="#3366cc">
|
||||
<font size="-3">
|
||||
<a href="#" onclick="canvas.setStrokeColor('#3366CC');return false"> </a>
|
||||
</font>
|
||||
</td>
|
||||
<td bgcolor="#3366ff">
|
||||
<font size="-3">
|
||||
<a href="#" onclick="canvas.setStrokeColor('#3366FF');return false"> </a>
|
||||
</font>
|
||||
</td>
|
||||
<td bgcolor="#666600">
|
||||
<font size="-3">
|
||||
<a href="#" onclick="canvas.setStrokeColor('#666600');return false"> </a>
|
||||
</font>
|
||||
</td>
|
||||
<td bgcolor="#666633">
|
||||
<font size="-3">
|
||||
<a href="#" onclick="canvas.setStrokeColor('#666633');return false"> </a>
|
||||
</font>
|
||||
</td>
|
||||
<td bgcolor="#666666">
|
||||
<font size="-3">
|
||||
<a href="#" onclick="canvas.setStrokeColor('#666666');return false"> </a>
|
||||
</font>
|
||||
</td>
|
||||
<td bgcolor="#666699">
|
||||
<font size="-3">
|
||||
<a href="#" onclick="canvas.setStrokeColor('#666699');return false"> </a>
|
||||
</font>
|
||||
</td>
|
||||
<td bgcolor="#6666cc">
|
||||
<font size="-3">
|
||||
<a href="#" onclick="canvas.setStrokeColor('#6666CC');return false"> </a>
|
||||
</font>
|
||||
</td>
|
||||
<td bgcolor="#6666ff">
|
||||
<font size="-3">
|
||||
<a href="#" onclick="canvas.setStrokeColor('#6666FF');return false"> </a>
|
||||
</font>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td bgcolor="#996600">
|
||||
<font size="-3">
|
||||
<a href="#" onclick="canvas.setStrokeColor('#996600');return false"> </a>
|
||||
</font>
|
||||
</td>
|
||||
<td bgcolor="#996633">
|
||||
<font size="-3">
|
||||
<a href="#" onclick="canvas.setStrokeColor('#996633');return false"> </a>
|
||||
</font>
|
||||
</td>
|
||||
<td bgcolor="#9966ff">
|
||||
<font size="-3">
|
||||
<a href="#" onclick="canvas.setStrokeColor('#9966FF');return false"> </a>
|
||||
</font>
|
||||
</td>
|
||||
<td bgcolor="#cc6600">
|
||||
<font size="-3">
|
||||
<a href="#" onclick="canvas.setStrokeColor('#CC6600');return false"> </a>
|
||||
</font>
|
||||
</td>
|
||||
<td bgcolor="#cc6633">
|
||||
<font size="-3">
|
||||
<a href="#" onclick="canvas.setStrokeColor('#CC6633');return false"> </a>
|
||||
</font>
|
||||
</td>
|
||||
<td bgcolor="#cc6666">
|
||||
<font size="-3">
|
||||
<a href="#" onclick="canvas.setStrokeColor('#CC6666');return false"> </a>
|
||||
</font>
|
||||
</td>
|
||||
<td bgcolor="#cc6699">
|
||||
<font size="-3">
|
||||
<a href="#" onclick="canvas.setStrokeColor('#CC6699');return false"> </a>
|
||||
</font>
|
||||
</td>
|
||||
<td bgcolor="#cc66cc">
|
||||
<font size="-3">
|
||||
<a href="#" onclick="canvas.setStrokeColor('#CC66CC');return false"> </a>
|
||||
</font>
|
||||
</td>
|
||||
<td bgcolor="#cc66ff">
|
||||
<font size="-3">
|
||||
<a href="#" onclick="canvas.setStrokeColor('#CC66FF');return false"> </a>
|
||||
</font>
|
||||
</td>
|
||||
<td bgcolor="#ff6600">
|
||||
<font size="-3">
|
||||
<a href="#" onclick="canvas.setStrokeColor('#FF6600');return false"> </a>
|
||||
</font>
|
||||
</td>
|
||||
<td bgcolor="#ff6633">
|
||||
<font size="-3">
|
||||
<a href="#" onclick="canvas.setStrokeColor('#FF6633');return false"> </a>
|
||||
</font>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td bgcolor="#009900">
|
||||
<font size="-3">
|
||||
<a href="#" onclick="canvas.setStrokeColor('#009900');return false"> </a>
|
||||
</font>
|
||||
</td>
|
||||
<td bgcolor="#009933">
|
||||
<font size="-3">
|
||||
<a href="#" onclick="canvas.setStrokeColor('#009933');return false"> </a>
|
||||
</font>
|
||||
</td>
|
||||
<td bgcolor="#009966">
|
||||
<font size="-3">
|
||||
<a href="#" onclick="canvas.setStrokeColor('#009966');return false"> </a>
|
||||
</font>
|
||||
</td>
|
||||
<td bgcolor="#009999">
|
||||
<font size="-3">
|
||||
<a href="#" onclick="canvas.setStrokeColor('#009999');return false"> </a>
|
||||
</font>
|
||||
</td>
|
||||
<td bgcolor="#0099cc">
|
||||
<font size="-3">
|
||||
<a href="#" onclick="canvas.setStrokeColor('#0099CC');return false"> </a>
|
||||
</font>
|
||||
</td>
|
||||
<td bgcolor="#0099ff">
|
||||
<font size="-3">
|
||||
<a href="#" onclick="canvas.setStrokeColor('#0099FF');return false"> </a>
|
||||
</font>
|
||||
</td>
|
||||
<td bgcolor="#339900">
|
||||
<font size="-3">
|
||||
<a href="#" onclick="canvas.setStrokeColor('#339900');return false"> </a>
|
||||
</font>
|
||||
</td>
|
||||
<td bgcolor="#339933">
|
||||
<font size="-3">
|
||||
<a href="#" onclick="canvas.setStrokeColor('#339933');return false"> </a>
|
||||
</font>
|
||||
</td>
|
||||
<td bgcolor="#339966">
|
||||
<font size="-3">
|
||||
<a href="#" onclick="canvas.setStrokeColor('#339966');return false"> </a>
|
||||
</font>
|
||||
</td>
|
||||
<td bgcolor="#339999">
|
||||
<font size="-3">
|
||||
<a href="#" onclick="canvas.setStrokeColor('#339999');return false"> </a>
|
||||
</font>
|
||||
</td>
|
||||
<td bgcolor="#3399cc">
|
||||
<font size="-3">
|
||||
<a href="#" onclick="canvas.setStrokeColor('#3399CC');return false"> </a>
|
||||
</font>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
</div>
|
||||
<div id="map"></div>
|
||||
</body>
|
||||
</html>
|
||||
40
examples/ciesin.html
Normal file
@@ -0,0 +1,40 @@
|
||||
<html xmlns="http://www.w3.org/1999/xhtml">
|
||||
<head>
|
||||
<style type="text/css">
|
||||
#map {
|
||||
width: 512px;
|
||||
height: 512px;
|
||||
border: 1px solid black;
|
||||
}
|
||||
</style>
|
||||
<script src="../lib/OpenLayers.js"></script>
|
||||
<script type="text/javascript">
|
||||
<!--
|
||||
function init(){
|
||||
var map = new OpenLayers.Map('map');
|
||||
|
||||
var ol_wms = new OpenLayers.Layer.WMS( "OpenLayers WMS",
|
||||
"http://labs.metacarta.com/wms/vmap0?", {layers: 'basic'} );
|
||||
|
||||
var jpl_wms = new OpenLayers.Layer.WMS( "Population Density 2000",
|
||||
"http://beta.sedac.ciesin.columbia.edu/mapserver/wms/gpw2000",
|
||||
{layers: "gpw"});
|
||||
var cie_wms = new OpenLayers.Layer.WMS( "Human Footprint",
|
||||
"http://beta.sedac.ciesin.columbia.edu/mapserver/wms/hfoot",
|
||||
{layers: "hfoot"});
|
||||
|
||||
jpl_wms.setVisibility(false);
|
||||
|
||||
map.addLayers([ol_wms, jpl_wms, cie_wms]);
|
||||
map.addControl(new OpenLayers.Control.LayerSwitcher());
|
||||
// map.setCenter(new OpenLayers.LonLat(0, 0), 0);
|
||||
map.zoomToMaxExtent();
|
||||
}
|
||||
// -->
|
||||
</script>
|
||||
</head>
|
||||
<body onload="init()">
|
||||
<h1>OpenLayers Example</h1>
|
||||
<div id="map"></div>
|
||||
</body>
|
||||
</html>
|
||||
42
examples/click.html
Normal file
@@ -0,0 +1,42 @@
|
||||
<html xmlns="http://www.w3.org/1999/xhtml">
|
||||
<head>
|
||||
<style type="text/css">
|
||||
#map {
|
||||
width: 512px;
|
||||
height: 512px;
|
||||
border: 1px solid black;
|
||||
}
|
||||
</style>
|
||||
<script src="../lib/OpenLayers.js"></script>
|
||||
<script type="text/javascript">
|
||||
<!--
|
||||
function init(){
|
||||
var map = new OpenLayers.Map('map');
|
||||
|
||||
var ol_wms = new OpenLayers.Layer.WMS( "OpenLayers WMS",
|
||||
"http://labs.metacarta.com/wms/vmap0?", {layers: 'basic'} );
|
||||
|
||||
var jpl_wms = new OpenLayers.Layer.WMS( "NASA Global Mosaic",
|
||||
"http://wms.jpl.nasa.gov/wms.cgi",
|
||||
{layers: "modis,global_mosaic"});
|
||||
|
||||
jpl_wms.setVisibility(false);
|
||||
|
||||
map.addLayers([ol_wms, jpl_wms]);
|
||||
map.addControl(new OpenLayers.Control.LayerSwitcher());
|
||||
// map.setCenter(new OpenLayers.LonLat(0, 0), 0);
|
||||
map.zoomToMaxExtent();
|
||||
map.events.register("click", map, function(e) {
|
||||
var lonlat = map.getLonLatFromViewPortPx(e.xy);
|
||||
alert("You clicked near " + lonlat.lat + " N, " +
|
||||
+ lonlat.lon + " E");
|
||||
});
|
||||
}
|
||||
// -->
|
||||
</script>
|
||||
</head>
|
||||
<body onload="init()">
|
||||
<h1>OpenLayers Example</h1>
|
||||
<div id="map"></div>
|
||||
</body>
|
||||
</html>
|
||||
53
examples/controls.html
Normal file
@@ -0,0 +1,53 @@
|
||||
<html xmlns="http://www.w3.org/1999/xhtml">
|
||||
<head>
|
||||
<style type="text/css">
|
||||
#map {
|
||||
width: 512px;
|
||||
height: 512px;
|
||||
border: 1px solid black;
|
||||
}
|
||||
</style>
|
||||
<script src="../lib/OpenLayers.js"></script>
|
||||
<script type="text/javascript">
|
||||
<!--
|
||||
function init(){
|
||||
var map = new OpenLayers.Map('map', { controls: [] });
|
||||
|
||||
map.addControl(new OpenLayers.Control.PanZoomBar());
|
||||
map.addControl(new OpenLayers.Control.MouseToolbar());
|
||||
map.addControl(new OpenLayers.Control.LayerSwitcher({'ascending':false}));
|
||||
map.addControl(new OpenLayers.Control.Permalink());
|
||||
map.addControl(new OpenLayers.Control.Permalink('permalink'));
|
||||
map.addControl(new OpenLayers.Control.MousePosition());
|
||||
map.addControl(new OpenLayers.Control.OverviewMap());
|
||||
map.addControl(new OpenLayers.Control.KeyboardDefaults());
|
||||
|
||||
var ol_wms = new OpenLayers.Layer.WMS( "OpenLayers WMS",
|
||||
"http://labs.metacarta.com/wms/vmap0",
|
||||
{layers: 'basic'} );
|
||||
|
||||
var jpl_wms = new OpenLayers.Layer.WMS( "NASA Global Mosaic",
|
||||
"http://wms.jpl.nasa.gov/wms.cgi",
|
||||
{layers: "modis,global_mosaic"});
|
||||
|
||||
var dm_wms = new OpenLayers.Layer.WMS( "DM Solutions Demo",
|
||||
"http://www2.dmsolutions.ca/cgi-bin/mswms_gmap",
|
||||
{layers: "bathymetry,land_fn,park,drain_fn,drainage," +
|
||||
"prov_bound,fedlimit,rail,road,popplace",
|
||||
transparent: "true", format: "image/png" });
|
||||
|
||||
jpl_wms.setVisibility(false);
|
||||
dm_wms.setVisibility(false);
|
||||
|
||||
map.addLayers([ol_wms, jpl_wms, dm_wms]);
|
||||
if (!map.getCenter()) map.zoomToMaxExtent();
|
||||
}
|
||||
// -->
|
||||
</script>
|
||||
</head>
|
||||
<body onload="init()">
|
||||
<h1>OpenLayers Example</h1>
|
||||
<a style="float:right" href="" id="permalink">Permalink</a>
|
||||
<div id="map"></div>
|
||||
</body>
|
||||
</html>
|
||||
49
examples/custom-control.html
Normal file
@@ -0,0 +1,49 @@
|
||||
<html xmlns="http://www.w3.org/1999/xhtml">
|
||||
<head>
|
||||
<style type="text/css">
|
||||
#map {
|
||||
width: 800px;
|
||||
height: 475px;
|
||||
border: 1px solid black;
|
||||
}
|
||||
</style>
|
||||
<script src="../lib/OpenLayers.js"></script>
|
||||
<script type="text/javascript">
|
||||
<!--
|
||||
var lon = 5;
|
||||
var lat = 40;
|
||||
var zoom = 5;
|
||||
var map, layer;
|
||||
|
||||
function init(){
|
||||
map = new OpenLayers.Map( $('map') );
|
||||
layer = new OpenLayers.Layer.WMS( "OpenLayers WMS",
|
||||
"http://labs.metacarta.com/wms/vmap0", {layers: 'basic'} );
|
||||
|
||||
var control = new OpenLayers.Control();
|
||||
OpenLayers.Util.extend(control, {
|
||||
draw: function () {
|
||||
// this Handler.Box will intercept the shift-mousedown
|
||||
// before Control.MouseDefault gets to see it
|
||||
this.box = new OpenLayers.Handler.Box( control,
|
||||
{"done": this.notice},
|
||||
{keyMask: OpenLayers.Handler.MOD_SHIFT});
|
||||
this.box.activate();
|
||||
},
|
||||
|
||||
notice: function (bounds) {
|
||||
alert(bounds);
|
||||
}
|
||||
});
|
||||
|
||||
map.addLayer(layer);
|
||||
map.addControl(control);
|
||||
map.setCenter(new OpenLayers.LonLat(lon, lat), zoom);
|
||||
}
|
||||
// -->
|
||||
</script>
|
||||
</head>
|
||||
<body onload="init()">
|
||||
<div id="map"></div>
|
||||
</body>
|
||||
</html>
|
||||
53
examples/custom-style.html
Normal file
@@ -0,0 +1,53 @@
|
||||
<html xmlns="http://www.w3.org/1999/xhtml">
|
||||
<head>
|
||||
<link rel="stylesheet" href="../theme/default/style.css" type="text/css" />
|
||||
<style type="text/css">
|
||||
#map {
|
||||
width: 500px;
|
||||
height: 350px;
|
||||
border: 1px solid gray;
|
||||
}
|
||||
p {
|
||||
width: 500px;
|
||||
}
|
||||
div.olControlMousePosition {
|
||||
font-family: Verdana;
|
||||
font-size: 0.5em;
|
||||
color: red;
|
||||
}
|
||||
</style>
|
||||
<script src="../lib/OpenLayers.js"></script>
|
||||
<script type="text/javascript">
|
||||
<!--
|
||||
var lon = 5;
|
||||
var lat = 40;
|
||||
var zoom = 5;
|
||||
var map, layer;
|
||||
|
||||
function init(){
|
||||
var options = {theme: null};
|
||||
map = new OpenLayers.Map('map', options);
|
||||
layer = new OpenLayers.Layer.WMS( "OpenLayers WMS",
|
||||
"http://labs.metacarta.com/wms/vmap0", {layers: 'basic'} );
|
||||
|
||||
map.addControl(new OpenLayers.Control.MousePosition());
|
||||
map.addLayer(layer);
|
||||
map.setCenter(new OpenLayers.LonLat(lon, lat), zoom);
|
||||
}
|
||||
// -->
|
||||
</script>
|
||||
</head>
|
||||
<body onload="init()">
|
||||
<div id="map"></div>
|
||||
<p>If you care to modify the style of any OpenLayers element, include
|
||||
the default stylesheet as a link and declare any style modifications
|
||||
below that link. These style declarations can be in other linked
|
||||
stylesheets or in style tags. In addition, construct your map with
|
||||
options that include {theme: null}. This will disable the default
|
||||
method of loading the stylesheet and allow you to declare style rules
|
||||
in your own linked stylesheets or style tags.</p>
|
||||
<p>This example shows how to declare the font family, size, and color
|
||||
for the mouse position. Note that only the style keys that you want to
|
||||
modify (change from the default) need to be specified.</p>
|
||||
</body>
|
||||
</html>
|
||||
17
examples/doubleSetCenter.html
Normal file
@@ -0,0 +1,17 @@
|
||||
<html>
|
||||
<head>
|
||||
<script src="../lib/OpenLayers.js"></script>
|
||||
</head>
|
||||
<body>
|
||||
<div style="width:100%; height:100%" id="map"></div>
|
||||
<script defer="defer" type="text/javascript">
|
||||
var map = new OpenLayers.Map('map');
|
||||
var wms = new OpenLayers.Layer.WMS( "OpenLayers WMS",
|
||||
"http://labs.metacarta.com/wms/vmap0", {layers: 'basic'} );
|
||||
map.addLayer(wms);
|
||||
map.setCenter(new OpenLayers.LonLat(100,10));
|
||||
map.setCenter(new OpenLayers.LonLat(1,1));
|
||||
</script>
|
||||
</body>
|
||||
</html>
|
||||
|
||||
96
examples/draw-feature.html
Normal file
@@ -0,0 +1,96 @@
|
||||
<html xmlns="http://www.w3.org/1999/xhtml">
|
||||
<head>
|
||||
<style type="text/css">
|
||||
#map {
|
||||
width: 512px;
|
||||
height: 350px;
|
||||
border: 1px solid gray;
|
||||
}
|
||||
#controlToggle li {
|
||||
list-style: none;
|
||||
}
|
||||
p {
|
||||
width: 512px;
|
||||
}
|
||||
</style>
|
||||
<script src="../lib/OpenLayers.js"></script>
|
||||
<script type="text/javascript">
|
||||
<!--
|
||||
var map, drawControls;
|
||||
OpenLayers.Util.onImageLoadErrorColor = "transparent";
|
||||
function init(){
|
||||
map = new OpenLayers.Map('map');
|
||||
|
||||
var wmsLayer = new OpenLayers.Layer.WMS( "OpenLayers WMS",
|
||||
"http://labs.metacarta.com/wms/vmap0?", {layers: 'basic'});
|
||||
|
||||
var pointLayer = new OpenLayers.Layer.Vector("Point Layer");
|
||||
var lineLayer = new OpenLayers.Layer.Vector("Line Layer");
|
||||
var polygonLayer = new OpenLayers.Layer.Vector("Polygon Layer");
|
||||
|
||||
map.addLayers([wmsLayer, pointLayer, lineLayer, polygonLayer]);
|
||||
map.addControl(new OpenLayers.Control.LayerSwitcher());
|
||||
map.addControl(new OpenLayers.Control.MousePosition());
|
||||
|
||||
var options = {handlerOptions: {freehand: true}};
|
||||
drawControls = {
|
||||
point: new OpenLayers.Control.DrawFeature(pointLayer,
|
||||
OpenLayers.Handler.Point),
|
||||
line: new OpenLayers.Control.DrawFeature(lineLayer,
|
||||
OpenLayers.Handler.Path, options),
|
||||
polygon: new OpenLayers.Control.DrawFeature(polygonLayer,
|
||||
OpenLayers.Handler.Polygon, options)
|
||||
};
|
||||
|
||||
for(var key in drawControls) {
|
||||
map.addControl(drawControls[key]);
|
||||
}
|
||||
|
||||
map.setCenter(new OpenLayers.LonLat(0, 0), 3);
|
||||
|
||||
document.getElementById('noneToggle').checked = true;
|
||||
}
|
||||
|
||||
function toggleControl(element) {
|
||||
for(key in drawControls) {
|
||||
var control = drawControls[key];
|
||||
if(element.value == key && element.checked) {
|
||||
control.activate();
|
||||
} else {
|
||||
control.deactivate();
|
||||
}
|
||||
}
|
||||
}
|
||||
// -->
|
||||
</script>
|
||||
</head>
|
||||
<body onload="init()">
|
||||
<h1>OpenLayers Draw Feature Example</h1>
|
||||
<div id="map"></div>
|
||||
<ul id="controlToggle">
|
||||
<li>
|
||||
<input type="radio" name="type" value="none" id="noneToggle"
|
||||
onclick="toggleControl(this);" checked="checked" />
|
||||
<label for="noneToggle">navigate</label>
|
||||
</li>
|
||||
<li>
|
||||
<input type="radio" name="type" value="point" id="pointToggle" onclick="toggleControl(this);" />
|
||||
<label for="pointToggle">draw point</label>
|
||||
</li>
|
||||
<li>
|
||||
<input type="radio" name="type" value="line" id="lineToggle" onclick="toggleControl(this);" />
|
||||
<label for="lineToggle">draw line</label>
|
||||
</li>
|
||||
<li>
|
||||
<input type="radio" name="type" value="polygon" id="polygonToggle" onclick="toggleControl(this);" />
|
||||
<label for="polygonToggle">draw polygon</label>
|
||||
</li>
|
||||
</ul>
|
||||
<p>Feature digitizing is in freehand mode by default. In freehand mode, the mouse is treated as a pen.
|
||||
Drawing begins on mouse down, continues with every mouse move, and ends with mouse up.</p>
|
||||
<p>To turn freehand mode off, hold down the shift key while digitizing. With freehand mode off, one
|
||||
vertex is added with each click and double-clicks finish drawing. Freehand mode can be toggled on and off
|
||||
at any time while drawing.</p>
|
||||
|
||||
</body>
|
||||
</html>
|
||||
40
examples/editingtoolbar.html
Normal file
@@ -0,0 +1,40 @@
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml">
|
||||
<head>
|
||||
<style type="text/css">
|
||||
#map {
|
||||
width: 800px;
|
||||
height: 475px;
|
||||
border: 1px solid black;
|
||||
}
|
||||
</style>
|
||||
<script src="../lib/OpenLayers.js"></script>
|
||||
<script src="../lib/Firebug/debug.js"></script>
|
||||
<script type="text/javascript">
|
||||
<!--
|
||||
var lon = 5;
|
||||
var lat = 40;
|
||||
var zoom = 5;
|
||||
var map, layer;
|
||||
|
||||
function init(){
|
||||
map = new OpenLayers.Map( 'map', { controls: [] } );
|
||||
layer = new OpenLayers.Layer.WMS( "OpenLayers WMS",
|
||||
"http://labs.metacarta.com/wms/vmap0", {layers: 'basic'} );
|
||||
map.addLayer(layer);
|
||||
|
||||
vlayer = new OpenLayers.Layer.Vector( "Editable" );
|
||||
map.addLayer(vlayer);
|
||||
map.addControl(new OpenLayers.Control.PanZoomBar());
|
||||
map.addControl(new OpenLayers.Control.EditingToolbar(vlayer));
|
||||
|
||||
map.setCenter(new OpenLayers.LonLat(lon, lat), zoom);
|
||||
}
|
||||
// -->
|
||||
</script>
|
||||
</head>
|
||||
<body onload="init()">
|
||||
<div id="panel"></div>
|
||||
<div id="map"></div>
|
||||
</body>
|
||||
</html>
|
||||
51
examples/example.html
Normal file
@@ -0,0 +1,51 @@
|
||||
<html xmlns="http://www.w3.org/1999/xhtml">
|
||||
<head>
|
||||
<style type="text/css">
|
||||
#map {
|
||||
width: 512px;
|
||||
height: 512px;
|
||||
border: 1px solid black;
|
||||
}
|
||||
</style>
|
||||
<script src="../lib/OpenLayers.js"></script>
|
||||
<script type="text/javascript">
|
||||
<!--
|
||||
function init(){
|
||||
var map = new OpenLayers.Map('map');
|
||||
|
||||
var options = {
|
||||
resolutions: [1.40625,0.703125,0.3515625,0.17578125,0.087890625,0.0439453125,0.02197265625,0.010986328125,0.0054931640625,0.00274658203125,0.00137329101]
|
||||
};
|
||||
|
||||
var ol_wms = new OpenLayers.Layer.WMS( "OpenLayers WMS",
|
||||
"http://labs.metacarta.com/wms/vmap0?", {layers: 'basic'},
|
||||
options);
|
||||
|
||||
var options2 = {
|
||||
resolutions: [0.17578125,0.087890625,0.0439453125,0.02197265625,0.010986328125,0.0054931640625,0.00274658203125,0.00137329101]
|
||||
};
|
||||
var jpl_wms = new OpenLayers.Layer.WMS( "NASA Global Mosaic",
|
||||
"http://wms.jpl.nasa.gov/wms.cgi",
|
||||
{layers: "modis,global_mosaic"}, options2);
|
||||
|
||||
var dm_wms = new OpenLayers.Layer.WMS( "DM Solutions Demo",
|
||||
"http://www2.dmsolutions.ca/cgi-bin/mswms_gmap",
|
||||
{layers: "bathymetry,land_fn,park,drain_fn,drainage," +
|
||||
"prov_bound,fedlimit,rail,road,popplace",
|
||||
transparent: "true", format: "image/png"},
|
||||
{minResolution: 0.17578125,
|
||||
maxResolution: 0.703125});
|
||||
|
||||
map.addLayers([ol_wms, jpl_wms, dm_wms]);
|
||||
map.addControl(new OpenLayers.Control.LayerSwitcher());
|
||||
// map.setCenter(new OpenLayers.LonLat(0, 0), 0);
|
||||
map.zoomToMaxExtent();
|
||||
}
|
||||
// -->
|
||||
</script>
|
||||
</head>
|
||||
<body onload="init()">
|
||||
<h1>OpenLayers Example</h1>
|
||||
<div id="map"></div>
|
||||
</body>
|
||||
</html>
|
||||
49
examples/freemap.html
Normal file
@@ -0,0 +1,49 @@
|
||||
<html xmlns="http://www.w3.org/1999/xhtml">
|
||||
<head>
|
||||
|
||||
<style type="text/css">
|
||||
body {
|
||||
border: 0px;
|
||||
margin: 0px;
|
||||
padding: 0px;
|
||||
}
|
||||
#map {
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
border: 0px;
|
||||
padding: 0px;
|
||||
}
|
||||
</style>
|
||||
|
||||
<script src="../lib/OpenLayers.js"></script>
|
||||
<script type="text/javascript">
|
||||
<!--
|
||||
var lat = 900863;
|
||||
var lon = 235829;
|
||||
var zoom = 6;
|
||||
var map, layer;
|
||||
|
||||
function init(){
|
||||
map = new OpenLayers.Map( 'map' );
|
||||
var basemap = new OpenLayers.Layer.WMS( "Boston",
|
||||
"http://boston.freemap.in/cgi-bin/mapserv?",
|
||||
{map: '/www/freemap.in/boston/map/gmaps.map', layers: 'border,water,roads,rapid_transit,buildings', format: 'png', 'transparent': 'off'},
|
||||
// These are the important parts for creating a non-epsg:4326
|
||||
// map: Maxextent is the boundary of the map/tile loading area,
|
||||
// maxResolution is the units/pixel at the highest zoom, and
|
||||
// projection is the projection to be used in WMS/WFS Requests.
|
||||
{maxExtent: new OpenLayers.Bounds(33861, 717605, 330846, 1019656), maxResolution: 296985/1024, projection:"EPSG:2805" } );
|
||||
|
||||
map.addLayer(basemap);
|
||||
|
||||
map.setCenter(new OpenLayers.LonLat(lon, lat), zoom);
|
||||
map.addControl(new OpenLayers.Control.LayerSwitcher());
|
||||
}
|
||||
// -->
|
||||
</script>
|
||||
</head>
|
||||
|
||||
<body onload="init()">
|
||||
<div id="map"></div>
|
||||
</body>
|
||||
</html>
|
||||
40
examples/fullScreen.html
Normal file
@@ -0,0 +1,40 @@
|
||||
<html xmlns="http://www.w3.org/1999/xhtml">
|
||||
<head>
|
||||
<style type="text/css">
|
||||
#map {
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
border: 1px solid black;
|
||||
}
|
||||
</style>
|
||||
<script src="../lib/OpenLayers.js"></script>
|
||||
<script type="text/javascript">
|
||||
<!--
|
||||
function init(){
|
||||
var map = new OpenLayers.Map('map');
|
||||
|
||||
var ol_wms = new OpenLayers.Layer.WMS( "OpenLayers WMS",
|
||||
"http://labs.metacarta.com:80/wms/vmap0?", {layers: 'basic'});
|
||||
|
||||
var jpl_wms = new OpenLayers.Layer.WMS( "NASA Global Mosaic",
|
||||
"http://wms.jpl.nasa.gov/wms.cgi",
|
||||
{layers: "modis,global_mosaic"});
|
||||
|
||||
var dm_wms = new OpenLayers.Layer.WMS( "DM Solutions Demo",
|
||||
"http://www2.dmsolutions.ca/cgi-bin/mswms_gmap",
|
||||
{layers: "bathymetry,land_fn,park,drain_fn,drainage," +
|
||||
"prov_bound,fedlimit,rail,road,popplace",
|
||||
transparent: "true", format: "image/png" });
|
||||
|
||||
map.addLayers([ol_wms, jpl_wms, dm_wms]);
|
||||
map.addControl(new OpenLayers.Control.LayerSwitcher());
|
||||
// map.setCenter(new OpenLayers.LonLat(0, 0), 0);
|
||||
map.zoomToMaxExtent();
|
||||
}
|
||||
// -->
|
||||
</script>
|
||||
</head>
|
||||
<body onload="init()">
|
||||
<div id="map"></div>
|
||||
</body>
|
||||
</html>
|
||||
50
examples/georss-serialize.html
Normal file
@@ -0,0 +1,50 @@
|
||||
<html xmlns="http://www.w3.org/1999/xhtml">
|
||||
<head>
|
||||
<style type="text/css">
|
||||
#map {
|
||||
width: 512px;
|
||||
height: 350px;
|
||||
border: 1px solid gray;
|
||||
}
|
||||
</style>
|
||||
<script src="../lib/OpenLayers.js"></script>
|
||||
<script type="text/javascript">
|
||||
<!--
|
||||
var map, drawControl, g;
|
||||
function serialize(feature) {
|
||||
feature.attributes = {};
|
||||
var name = prompt("Title for feature?");
|
||||
feature.attributes['title'] = name;
|
||||
s = new XMLSerializer();
|
||||
var data = g.write(feature.layer.features);
|
||||
$("gml").value = s.serializeToString(data);
|
||||
}
|
||||
function init(){
|
||||
g = new OpenLayers.Format.GeoRSS();
|
||||
map = new OpenLayers.Map('map');
|
||||
|
||||
var wmsLayer = new OpenLayers.Layer.WMS( "OpenLayers WMS",
|
||||
"http://labs.metacarta.com/wms/vmap0?", {layers: 'basic'});
|
||||
|
||||
var pointLayer = new OpenLayers.Layer.Vector("Point Layer");
|
||||
pointLayer.onFeatureInsert = serialize;
|
||||
|
||||
map.addLayers([wmsLayer, pointLayer]);
|
||||
map.addControl(new OpenLayers.Control.EditingToolbar(pointLayer));
|
||||
map.addControl(new OpenLayers.Control.MousePosition());
|
||||
|
||||
|
||||
map.setCenter(new OpenLayers.LonLat(0, 0), 3);
|
||||
}
|
||||
|
||||
// -->
|
||||
</script>
|
||||
</head>
|
||||
<body onload="init()">
|
||||
<h1>OpenLayers Draw Point Example</h1>
|
||||
<div style="float:right">
|
||||
<textarea id="gml" cols="80" rows="30"></textarea>
|
||||
</div>
|
||||
<div id="map"></div>
|
||||
</body>
|
||||
</html>
|
||||
43
examples/georss.html
Normal file
@@ -0,0 +1,43 @@
|
||||
<html xmlns="http://www.w3.org/1999/xhtml">
|
||||
<head>
|
||||
<style type="text/css">
|
||||
#map {
|
||||
width: 800px;
|
||||
height: 400px;
|
||||
border: 1px solid black;
|
||||
}
|
||||
</style>
|
||||
<script src="../lib/OpenLayers.js"></script>
|
||||
<script type="text/javascript">
|
||||
<!--
|
||||
var map, layer;
|
||||
|
||||
OpenLayers.ProxyHost = "/proxy/?url=";
|
||||
function init(){
|
||||
map = new OpenLayers.Map('map', {maxResolution:'auto'});
|
||||
layer = new OpenLayers.Layer.WMS( "OpenLayers WMS",
|
||||
"http://labs.metacarta.com/wms/vmap0", {layers: 'basic'} );
|
||||
map.addLayer(layer);
|
||||
map.setCenter(new OpenLayers.LonLat(0, 0), 0);
|
||||
map.addControl(new OpenLayers.Control.LayerSwitcher());
|
||||
}
|
||||
function addUrl() {
|
||||
var urlObj = OpenLayers.Util.getElement('url');
|
||||
var value = urlObj.value;
|
||||
var parts = value.split("/");
|
||||
var newl = new OpenLayers.Layer.GeoRSS( parts[parts.length-1], value);
|
||||
map.addLayer(newl);
|
||||
urlObj.value = "";
|
||||
}
|
||||
// -->
|
||||
</script>
|
||||
</head>
|
||||
<body onload="init()">
|
||||
<h1>GeoRSS in OpenLayers</h1>
|
||||
<p style="font-size:.9em;">This demo uses the OpenLayers GeoRSS parser, which supports GeoRSS Simple and W3C GeoRSS. Only points are currently supported. <a href="http://trac.openlayers.org/wiki/HowToDownload">Get the code!</a></p>
|
||||
<form onsubmit="return false;">
|
||||
GeoRSS URL: <input type="text" id="url" size="50" /><input type="submit" onclick="addUrl(); return false;" value="Load Feed" onsubmit="addUrl(); return false;" />
|
||||
</form>
|
||||
<div id="map"></div>
|
||||
</body>
|
||||
</html>
|
||||
378
examples/georss.xml
Normal file
@@ -0,0 +1,378 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet type="text/css" href="/css/rss.css" ?>
|
||||
|
||||
<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
|
||||
xmlns="http://purl.org/rss/1.0/"
|
||||
xmlns:dc="http://purl.org/dc/elements/1.1/"
|
||||
xmlns:georss="http://www.georss.org/georss">
|
||||
<docs>This is an RSS file. Copy the URL into your aggregator of choice. If you don't know what this means and want to learn more, please see: <span>http://platial.typepad.com/news/2006/04/really_simple_t.html</span> for more info.</docs><channel rdf:about="http://platial.com">
|
||||
<link>http://platial.com</link>
|
||||
<title>Crschmidt's Places At Platial</title>
|
||||
<description></description>
|
||||
<items>
|
||||
<rdf:Seq>
|
||||
<rdf:li resource="http://platial.com/place/90306"/>
|
||||
<rdf:li resource="http://platial.com/place/67230"/>
|
||||
<rdf:li resource="http://platial.com/place/65645"/>
|
||||
<rdf:li resource="http://platial.com/place/62200"/>
|
||||
<rdf:li resource="http://platial.com/place/28232"/>
|
||||
<rdf:li resource="http://platial.com/place/43666"/>
|
||||
<rdf:li resource="http://platial.com/place/28394"/>
|
||||
<rdf:li resource="http://platial.com/place/28251"/>
|
||||
<rdf:li resource="http://platial.com/place/28392"/>
|
||||
<rdf:li resource="http://platial.com/place/28391"/>
|
||||
<rdf:li resource="http://platial.com/place/28231"/>
|
||||
<rdf:li resource="http://platial.com/place/28393"/>
|
||||
<rdf:li resource="http://platial.com/place/31685"/>
|
||||
<rdf:li resource="http://platial.com/place/28596"/>
|
||||
<rdf:li resource="http://platial.com/place/28595"/>
|
||||
<rdf:li resource="http://platial.com/place/28594"/>
|
||||
<rdf:li resource="http://platial.com/place/28593"/>
|
||||
<rdf:li resource="http://platial.com/place/28592"/>
|
||||
<rdf:li resource="http://platial.com/place/28591"/>
|
||||
<rdf:li resource="http://platial.com/place/28590"/>
|
||||
<rdf:li resource="http://platial.com/place/28589"/>
|
||||
<rdf:li resource="http://platial.com/place/28588"/>
|
||||
<rdf:li resource="http://platial.com/place/28587"/>
|
||||
<rdf:li resource="http://platial.com/place/28586"/>
|
||||
<rdf:li resource="http://platial.com/place/28585"/>
|
||||
<rdf:li resource="http://platial.com/place/28584"/>
|
||||
<rdf:li resource="http://platial.com/place/28583"/>
|
||||
<rdf:li resource="http://platial.com/place/28582"/>
|
||||
<rdf:li resource="http://platial.com/place/28581"/>
|
||||
<rdf:li resource="http://platial.com/place/28580"/>
|
||||
<rdf:li resource="http://platial.com/place/28579"/>
|
||||
<rdf:li resource="http://platial.com/place/28578"/>
|
||||
<rdf:li resource="http://platial.com/place/28577"/>
|
||||
<rdf:li resource="http://platial.com/place/28576"/>
|
||||
<rdf:li resource="http://platial.com/place/28575"/>
|
||||
<rdf:li resource="http://platial.com/place/28574"/>
|
||||
<rdf:li resource="http://platial.com/place/28573"/>
|
||||
<rdf:li resource="http://platial.com/place/28572"/>
|
||||
<rdf:li resource="http://platial.com/place/28571"/>
|
||||
<rdf:li resource="http://platial.com/place/28570"/>
|
||||
</rdf:Seq>
|
||||
</items>
|
||||
</channel>
|
||||
<item rdf:about="http://platial.com/place/90306">
|
||||
<link>http://platial.com/place/90306</link>
|
||||
<title>Knitting Room</title>
|
||||
<description><![CDATA[This little shop is jammed full. Yarn, yarn everywhere. They make the most of every possible nook and cranny. I like this place also because they have a lot of different kinds of knitting needles in all different sizes. Also, the people who work here are younger and hipper than in the other stores I go to. I reccomend buying supplies here and then knitting your way through a good documentary at the Capitol Theater across the street.<br/>Address: 2 lake St, Arlington, MA <br/>Tags: knitting, yarn, pins and needles, handspun, hand dyed, novelty yarn, fancy, simple, young, hip, friendly, needles, addy, cute hats<br /><br /><a href="http://platial.com/place/90306">Map this on Platial</a><br /> <a href="http://platial.com/place_grab/90306">Grab this on Platial</a> ]]></description>
|
||||
<georss:point>42.405696 -71.142197</georss:point>
|
||||
<dc:creator>crschmidt</dc:creator>
|
||||
<dc:date>2006-06-08T17:35:01.942452+00:00</dc:date>
|
||||
</item>
|
||||
<item rdf:about="http://platial.com/place/67230">
|
||||
<link>http://platial.com/place/67230</link>
|
||||
<title>Knitting Room</title>
|
||||
<description><![CDATA[This little shop is jammed full. Yarn, yarn everywhere. They make the most of every possible nook and cranny. I like this place also because they have a lot of different kinds of knitting needles in all different sizes. Also, the people who work here are younger and hipper than in the other stores I go to. I reccomend buying supplies here and then knitting your way through a good documentary at the Capitol Theater across the street.<br/>Address: 2 lake St, Arlington, MA <br/>Tags: knitting, yarn, pins and needles, handspun, hand dyed, novelty yarn, fancy, simple, young, hip, friendly, needles, addy, cute hats<br /><br /><a href="http://platial.com/place/67230">Map this on Platial</a><br /> <a href="http://platial.com/place_grab/67230">Grab this on Platial</a> ]]></description>
|
||||
<georss:point>42.405524 -71.142273</georss:point>
|
||||
<dc:creator>crschmidt</dc:creator>
|
||||
<dc:date>2006-04-24T11:35:26.733857+00:00</dc:date>
|
||||
</item>
|
||||
<item rdf:about="http://platial.com/place/65645">
|
||||
<link>http://platial.com/place/65645</link>
|
||||
<title>â ¢¢â¢Â£ËøÅ</title>
|
||||
<description><![CDATA[ijeª£âµËËî<br/>Address: 151 Erie St., Cambridge, MA<br/>Tags: platial graffiti<br /><br /><a href="http://platial.com/place/65645">Map this on Platial</a><br /> <a href="http://platial.com/place_grab/65645">Grab this on Platial</a> ]]></description>
|
||||
<georss:point>42.352455 -71.110210</georss:point>
|
||||
<dc:creator>crschmidt</dc:creator>
|
||||
<dc:date>2006-04-20T08:56:12.696224+00:00</dc:date>
|
||||
</item>
|
||||
<item rdf:about="http://platial.com/place/62200">
|
||||
<link>http://platial.com/place/62200</link>
|
||||
<title>Allen Hall</title>
|
||||
<description><![CDATA[My dorm at UIUC.<br/>Address: 1301 W Gregory Dr, Urbana, IL<br/>Tags: dorm, uiuc, college<br/><a href="http://platial.com/place/62200"><img src="http://platial.comhttp://static.flickr.com/4/8576450_0d59cc2531_s.jpg"/></a><br/><br /><br /><a href="http://platial.com/place/62200">Map this on Platial</a><br /> <a href="http://platial.com/place_grab/62200">Grab this on Platial</a> ]]></description>
|
||||
<georss:point>40.104172 -88.220623</georss:point>
|
||||
<dc:creator>crschmidt</dc:creator>
|
||||
<dc:date>2006-04-14T08:01:01.872873+00:00</dc:date>
|
||||
</item>
|
||||
<item rdf:about="http://platial.com/place/28232">
|
||||
<link>http://platial.com/place/28232</link>
|
||||
<title>Bagby Hot Springs, OR</title>
|
||||
<description><![CDATA[Hot spring, temperature: 136 degress F, 58 degress C. However, the area around the springs are not exactly well looked upon by people who know the place.
|
||||
|
||||
<br/>Tags: 20s, rosalie, romance, childhood, hike, camping, soak, relax, beautiful, hot springs, bathhouse, favorite, popular, crowded, organized, honeymoon tub, plumbing made from hollowed out trees, hot springs, mt hood, notorious car break in spot, rash, bacteria<br /><br /><a href="http://platial.com/place/28232">Map this on Platial</a><br /> <a href="http://platial.com/place_grab/28232">Grab this on Platial</a> ]]></description>
|
||||
<georss:point>44.936000 -122.173000</georss:point>
|
||||
<dc:creator>crschmidt</dc:creator>
|
||||
<dc:date>2006-01-03T23:10:18.553063+00:00</dc:date>
|
||||
</item>
|
||||
<item rdf:about="http://platial.com/place/43666">
|
||||
<link>http://platial.com/place/43666</link>
|
||||
<title>Shooting Location for "The Field of Dreams" Film</title>
|
||||
<description><![CDATA[1989's Field of Dreams was a Best Picture Academy Award nominee, and the baseball field in the cornfield still stands today, and has become quite a tourist destination. Games are occasionally played at the field, re-enacting professional baseball at the turn of the 20th Century.<br/>Address: Dyersville, Iowa<br/>Tags: iowa, baseball, movie locations, field of dreams, kevin costner, costner, dyersville, kinsella, james earl jones, chicago black sox, shoeless joe, joe jackson, famous farms, film, movie, cinema, shooting location<br /><br /><a href="http://platial.com/place/43666">Map this on Platial</a><br /> <a href="http://platial.com/place_grab/43666">Grab this on Platial</a> ]]></description>
|
||||
<georss:point>42.481213 -91.111679</georss:point>
|
||||
<dc:creator>echinodermata</dc:creator>
|
||||
<dc:date>2006-03-23T11:40:17.654061+00:00</dc:date>
|
||||
</item>
|
||||
<item rdf:about="http://platial.com/place/28394">
|
||||
<link>http://platial.com/place/28394</link>
|
||||
<title>Moffetts (Bonneville) Hot Springs, WA</title>
|
||||
<description><![CDATA[Hot spring, temperature: 97 degress F, 36 degress C<br/>Tags: soak, hot springs, relax, nature<br /><br /><a href="http://platial.com/place/28394">Map this on Platial</a><br /> <a href="http://platial.com/place_grab/28394">Grab this on Platial</a> ]]></description>
|
||||
<georss:point>45.658000 -121.962000</georss:point>
|
||||
<dc:creator>crschmidt</dc:creator>
|
||||
<dc:date>2006-01-03T23:16:27.329816+00:00</dc:date>
|
||||
</item>
|
||||
<item rdf:about="http://platial.com/place/28251">
|
||||
<link>http://platial.com/place/28251</link>
|
||||
<title>Austin Hot Springs, OR</title>
|
||||
<description><![CDATA[Hot spring, temperature: 186 degress F, 86 degress C<br/>Tags: soak, hot springs, relax, nature, popular, crowded<br /><br /><a href="http://platial.com/place/28251">Map this on Platial</a><br /> <a href="http://platial.com/place_grab/28251">Grab this on Platial</a> ]]></description>
|
||||
<georss:point>45.021000 -122.009000</georss:point>
|
||||
<dc:creator>crschmidt</dc:creator>
|
||||
<dc:date>2006-01-03T23:11:04.489886+00:00</dc:date>
|
||||
</item>
|
||||
<item rdf:about="http://platial.com/place/28392">
|
||||
<link>http://platial.com/place/28392</link>
|
||||
<title>Rock Creek Hot Springs, WA</title>
|
||||
<description><![CDATA[Hot spring, temperature: Hot degress F, Hot degress C<br/>Tags: soak, hot springs, relax, nature<br /><br /><a href="http://platial.com/place/28392">Map this on Platial</a><br /> <a href="http://platial.com/place_grab/28392">Grab this on Platial</a> ]]></description>
|
||||
<georss:point>45.723000 -121.927000</georss:point>
|
||||
<dc:creator>crschmidt</dc:creator>
|
||||
<dc:date>2006-01-03T23:16:22.636855+00:00</dc:date>
|
||||
</item>
|
||||
<item rdf:about="http://platial.com/place/28391">
|
||||
<link>http://platial.com/place/28391</link>
|
||||
<title>St. Martins (Wind River) Hot Springs, WA</title>
|
||||
<description><![CDATA[Hot spring, temperature: 120 degress F, 49 degress C<br/>Tags: hot springs, soak, relax, nature, wonderful<br /><br /><a href="http://platial.com/place/28391">Map this on Platial</a><br /> <a href="http://platial.com/place_grab/28391">Grab this on Platial</a> ]]></description>
|
||||
<georss:point>45.728000 -121.800000</georss:point>
|
||||
<dc:creator>crschmidt</dc:creator>
|
||||
<dc:date>2006-01-03T23:16:20.383244+00:00</dc:date>
|
||||
</item>
|
||||
<item rdf:about="http://platial.com/place/28231">
|
||||
<link>http://platial.com/place/28231</link>
|
||||
<title>Breitenbush Hot Springs, OR</title>
|
||||
<description><![CDATA[Hot spring, temperature: 198 degress F, 92 degress C<br/>Tags: hot springs, resort, relax, nature, beautiful, http:www.breitenbush.com, soaking<br /><br /><a href="http://platial.com/place/28231">Map this on Platial</a><br /> <a href="http://platial.com/place_grab/28231">Grab this on Platial</a> ]]></description>
|
||||
<georss:point>44.782000 -121.975000</georss:point>
|
||||
<dc:creator>crschmidt</dc:creator>
|
||||
<dc:date>2006-01-03T23:10:16.529195+00:00</dc:date>
|
||||
</item>
|
||||
<item rdf:about="http://platial.com/place/28393">
|
||||
<link>http://platial.com/place/28393</link>
|
||||
<title>Collins Hot Springs, WA</title>
|
||||
<description><![CDATA[Hot spring, temperature: 122 degress F, 50 degress C<br/>Tags: portland, nice, hot springs, soak<br /><br /><a href="http://platial.com/place/28393">Map this on Platial</a><br /> <a href="http://platial.com/place_grab/28393">Grab this on Platial</a> ]]></description>
|
||||
<georss:point>45.701000 -121.728000</georss:point>
|
||||
<dc:creator>crschmidt</dc:creator>
|
||||
<dc:date>2006-01-03T23:16:24.648745+00:00</dc:date>
|
||||
</item>
|
||||
<item rdf:about="http://platial.com/place/31685">
|
||||
<link>http://platial.com/place/31685</link>
|
||||
<title>Darwin's Ltd.</title>
|
||||
<description><![CDATA[Nice little coffee shop/cafe, free Wifi, close enough to walk from Harvard Square.<br/>Address: 148 Mount Auburn St, Cambridge, MA<br/>Tags: coffee, beer, sandwiches, freewifi<br/><a href="http://platial.com/place/31685"><img src="http://platial.comhttp://static.flickr.com/38/84885937_74fd3d1025_s.jpg"/></a><br/><br /><br /><a href="http://platial.com/place/31685">Map this on Platial</a><br /> <a href="http://platial.com/place_grab/31685">Grab this on Platial</a> ]]></description>
|
||||
<georss:point>42.373974 -71.125053</georss:point>
|
||||
<dc:creator>crschmidt</dc:creator>
|
||||
<dc:date>2006-01-10T09:24:08.152985+00:00</dc:date>
|
||||
</item>
|
||||
<item rdf:about="http://platial.com/place/28596">
|
||||
<link>http://platial.com/place/28596</link>
|
||||
<title>Huckleberry Hot Springs, WY</title>
|
||||
<description><![CDATA[Hot spring, temperature: Boiling degress F, Boiling degress C<br /><br /><a href="http://platial.com/place/28596">Map this on Platial</a><br /> <a href="http://platial.com/place_grab/28596">Grab this on Platial</a> ]]></description>
|
||||
<georss:point>44.115000 -110.684000</georss:point>
|
||||
<dc:creator>crschmidt</dc:creator>
|
||||
<dc:date>2006-01-03T23:24:32.283094+00:00</dc:date>
|
||||
</item>
|
||||
<item rdf:about="http://platial.com/place/28595">
|
||||
<link>http://platial.com/place/28595</link>
|
||||
<title>South Entrance Hot Springs, WY</title>
|
||||
<description><![CDATA[Hot spring, temperature: 156 degress F, 69 degress C<br/><a href="http://platial.com/place/28595"><img src="http://platial.comhttp://static.flickr.com/52/130989872_f1457f68b5_s.jpg"/></a><br/><br /><br /><a href="http://platial.com/place/28595">Map this on Platial</a><br /> <a href="http://platial.com/place_grab/28595">Grab this on Platial</a> ]]></description>
|
||||
<georss:point>44.142000 -110.656000</georss:point>
|
||||
<dc:creator>crschmidt</dc:creator>
|
||||
<dc:date>2006-01-03T23:24:30.279497+00:00</dc:date>
|
||||
</item>
|
||||
<item rdf:about="http://platial.com/place/28594">
|
||||
<link>http://platial.com/place/28594</link>
|
||||
<title>Crawfish Creek Hot Springs, WY</title>
|
||||
<description><![CDATA[Hot spring, temperature: 136 degress F, 58 degress C<br/><a href="http://platial.com/place/28594"><img src="http://platial.comhttp://static.flickr.com/52/128312256_d6a879924c_s.jpg"/></a><br/><br /><br /><a href="http://platial.com/place/28594">Map this on Platial</a><br /> <a href="http://platial.com/place_grab/28594">Grab this on Platial</a> ]]></description>
|
||||
<georss:point>44.157000 -110.699000</georss:point>
|
||||
<dc:creator>crschmidt</dc:creator>
|
||||
<dc:date>2006-01-03T23:24:28.280271+00:00</dc:date>
|
||||
</item>
|
||||
<item rdf:about="http://platial.com/place/28593">
|
||||
<link>http://platial.com/place/28593</link>
|
||||
<title>Crawfish Creek Hot Springs, WY</title>
|
||||
<description><![CDATA[Hot spring, temperature: 138 degress F, 59 degress C<br /><br /><a href="http://platial.com/place/28593">Map this on Platial</a><br /> <a href="http://platial.com/place_grab/28593">Grab this on Platial</a> ]]></description>
|
||||
<georss:point>44.165000 -110.723000</georss:point>
|
||||
<dc:creator>crschmidt</dc:creator>
|
||||
<dc:date>2006-01-03T23:24:20.364077+00:00</dc:date>
|
||||
</item>
|
||||
<item rdf:about="http://platial.com/place/28592">
|
||||
<link>http://platial.com/place/28592</link>
|
||||
<title>Snake Hot Springs, WY</title>
|
||||
<description><![CDATA[Hot spring, temperature: 136 degress F, 58 degress C<br /><br /><a href="http://platial.com/place/28592">Map this on Platial</a><br /> <a href="http://platial.com/place_grab/28592">Grab this on Platial</a> ]]></description>
|
||||
<georss:point>44.169000 -110.583000</georss:point>
|
||||
<dc:creator>crschmidt</dc:creator>
|
||||
<dc:date>2006-01-03T23:24:12.234974+00:00</dc:date>
|
||||
</item>
|
||||
<item rdf:about="http://platial.com/place/28591">
|
||||
<link>http://platial.com/place/28591</link>
|
||||
<title>Hot Springs, WY</title>
|
||||
<description><![CDATA[Hot spring, temperature: 142 degress F, 61 degress C<br /><br /><a href="http://platial.com/place/28591">Map this on Platial</a><br /> <a href="http://platial.com/place_grab/28591">Grab this on Platial</a> ]]></description>
|
||||
<georss:point>44.187000 -110.726000</georss:point>
|
||||
<dc:creator>crschmidt</dc:creator>
|
||||
<dc:date>2006-01-03T23:24:10.027857+00:00</dc:date>
|
||||
</item>
|
||||
<item rdf:about="http://platial.com/place/28590">
|
||||
<link>http://platial.com/place/28590</link>
|
||||
<title>Hot Springs on Upper Snake River, WY</title>
|
||||
<description><![CDATA[Hot spring, temperature: 167 degress F, 75 degress C<br /><br /><a href="http://platial.com/place/28590">Map this on Platial</a><br /> <a href="http://platial.com/place_grab/28590">Grab this on Platial</a> ]]></description>
|
||||
<georss:point>44.204000 -110.486000</georss:point>
|
||||
<dc:creator>crschmidt</dc:creator>
|
||||
<dc:date>2006-01-03T23:24:07.79658+00:00</dc:date>
|
||||
</item>
|
||||
<item rdf:about="http://platial.com/place/28589">
|
||||
<link>http://platial.com/place/28589</link>
|
||||
<title>Hot Springs on lewis Lake, WY</title>
|
||||
<description><![CDATA[Hot spring, temperature: 154 degress F, 68 degress C<br /><br /><a href="http://platial.com/place/28589">Map this on Platial</a><br /> <a href="http://platial.com/place_grab/28589">Grab this on Platial</a> ]]></description>
|
||||
<georss:point>44.276000 -110.636000</georss:point>
|
||||
<dc:creator>crschmidt</dc:creator>
|
||||
<dc:date>2006-01-03T23:24:05.683418+00:00</dc:date>
|
||||
</item>
|
||||
<item rdf:about="http://platial.com/place/28588">
|
||||
<link>http://platial.com/place/28588</link>
|
||||
<title>Rustic Geyser, WY</title>
|
||||
<description><![CDATA[Hot spring, temperature: 199 degress F, 93 degress C<br /><br /><a href="http://platial.com/place/28588">Map this on Platial</a><br /> <a href="http://platial.com/place_grab/28588">Grab this on Platial</a> ]]></description>
|
||||
<georss:point>44.282000 -110.506000</georss:point>
|
||||
<dc:creator>crschmidt</dc:creator>
|
||||
<dc:date>2006-01-03T23:24:03.66329+00:00</dc:date>
|
||||
</item>
|
||||
<item rdf:about="http://platial.com/place/28587">
|
||||
<link>http://platial.com/place/28587</link>
|
||||
<title>Bechler River Hot Springs, WY</title>
|
||||
<description><![CDATA[Hot spring, temperature: 194 degress F, 90 degress C<br /><br /><a href="http://platial.com/place/28587">Map this on Platial</a><br /> <a href="http://platial.com/place_grab/28587">Grab this on Platial</a> ]]></description>
|
||||
<georss:point>44.285000 -110.900000</georss:point>
|
||||
<dc:creator>crschmidt</dc:creator>
|
||||
<dc:date>2006-01-03T23:24:01.611442+00:00</dc:date>
|
||||
</item>
|
||||
<item rdf:about="http://platial.com/place/28586">
|
||||
<link>http://platial.com/place/28586</link>
|
||||
<title>Hot Springs, WY</title>
|
||||
<description><![CDATA[Hot spring, temperature: Boiling degress F, 201 degress C<br /><br /><a href="http://platial.com/place/28586">Map this on Platial</a><br /> <a href="http://platial.com/place_grab/28586">Grab this on Platial</a> ]]></description>
|
||||
<georss:point>44.290000 -110.504000</georss:point>
|
||||
<dc:creator>crschmidt</dc:creator>
|
||||
<dc:date>2006-01-03T23:23:59.658699+00:00</dc:date>
|
||||
</item>
|
||||
<item rdf:about="http://platial.com/place/28585">
|
||||
<link>http://platial.com/place/28585</link>
|
||||
<title>Heart Lake Geyser Basin, WY</title>
|
||||
<description><![CDATA[Hot spring, temperature: Middle Group degress F, 174 degress C<br /><br /><a href="http://platial.com/place/28585">Map this on Platial</a><br /> <a href="http://platial.com/place_grab/28585">Grab this on Platial</a> ]]></description>
|
||||
<georss:point>44.299000 -110.517000</georss:point>
|
||||
<dc:creator>crschmidt</dc:creator>
|
||||
<dc:date>2006-01-03T23:23:57.181801+00:00</dc:date>
|
||||
</item>
|
||||
<item rdf:about="http://platial.com/place/28584">
|
||||
<link>http://platial.com/place/28584</link>
|
||||
<title>Hot Springs, WY</title>
|
||||
<description><![CDATA[Hot spring, temperature: Boiling degress F, 201 degress C<br /><br /><a href="http://platial.com/place/28584">Map this on Platial</a><br /> <a href="http://platial.com/place_grab/28584">Grab this on Platial</a> ]]></description>
|
||||
<georss:point>44.307000 -110.526000</georss:point>
|
||||
<dc:creator>crschmidt</dc:creator>
|
||||
<dc:date>2006-01-03T23:23:55.240485+00:00</dc:date>
|
||||
</item>
|
||||
<item rdf:about="http://platial.com/place/28583">
|
||||
<link>http://platial.com/place/28583</link>
|
||||
<title>Hot Springs on lewis Lake, WY</title>
|
||||
<description><![CDATA[Hot spring, temperature: 199 degress F, 93 degress C<br /><br /><a href="http://platial.com/place/28583">Map this on Platial</a><br /> <a href="http://platial.com/place_grab/28583">Grab this on Platial</a> ]]></description>
|
||||
<georss:point>44.309000 -110.654000</georss:point>
|
||||
<dc:creator>crschmidt</dc:creator>
|
||||
<dc:date>2006-01-03T23:23:53.22295+00:00</dc:date>
|
||||
</item>
|
||||
<item rdf:about="http://platial.com/place/28582">
|
||||
<link>http://platial.com/place/28582</link>
|
||||
<title>Shoshone Geyser Basin, WY</title>
|
||||
<description><![CDATA[Hot spring, temperature: 203 degress F, 95 degress C<br /><br /><a href="http://platial.com/place/28582">Map this on Platial</a><br /> <a href="http://platial.com/place_grab/28582">Grab this on Platial</a> ]]></description>
|
||||
<georss:point>44.354000 -110.800000</georss:point>
|
||||
<dc:creator>crschmidt</dc:creator>
|
||||
<dc:date>2006-01-03T23:23:51.179049+00:00</dc:date>
|
||||
</item>
|
||||
<item rdf:about="http://platial.com/place/28581">
|
||||
<link>http://platial.com/place/28581</link>
|
||||
<title>Hot Springs on Continental Divide, WY</title>
|
||||
<description><![CDATA[Hot spring, temperature: 189 degress F, 87 degress C<br /><br /><a href="http://platial.com/place/28581">Map this on Platial</a><br /> <a href="http://platial.com/place_grab/28581">Grab this on Platial</a> ]]></description>
|
||||
<georss:point>44.401000 -110.936000</georss:point>
|
||||
<dc:creator>crschmidt</dc:creator>
|
||||
<dc:date>2006-01-03T23:23:49.077176+00:00</dc:date>
|
||||
</item>
|
||||
<item rdf:about="http://platial.com/place/28580">
|
||||
<link>http://platial.com/place/28580</link>
|
||||
<title>Hot Springs on Upper Firehole River, WY</title>
|
||||
<description><![CDATA[Hot spring, temperature: Hot degress F, Hot degress C<br /><br /><a href="http://platial.com/place/28580">Map this on Platial</a><br /> <a href="http://platial.com/place_grab/28580">Grab this on Platial</a> ]]></description>
|
||||
<georss:point>44.404000 -110.824000</georss:point>
|
||||
<dc:creator>crschmidt</dc:creator>
|
||||
<dc:date>2006-01-03T23:23:47.054664+00:00</dc:date>
|
||||
</item>
|
||||
<item rdf:about="http://platial.com/place/28579">
|
||||
<link>http://platial.com/place/28579</link>
|
||||
<title>Summit Lake Hot Springs, WY</title>
|
||||
<description><![CDATA[Hot spring, temperature: 162 degress F, 72 degress C<br /><br /><a href="http://platial.com/place/28579">Map this on Platial</a><br /> <a href="http://platial.com/place_grab/28579">Grab this on Platial</a> ]]></description>
|
||||
<georss:point>44.410000 -110.953000</georss:point>
|
||||
<dc:creator>crschmidt</dc:creator>
|
||||
<dc:date>2006-01-03T23:23:45.039394+00:00</dc:date>
|
||||
</item>
|
||||
<item rdf:about="http://platial.com/place/28578">
|
||||
<link>http://platial.com/place/28578</link>
|
||||
<title>Lone Star Geyser Basin, WY</title>
|
||||
<description><![CDATA[Hot spring, temperature: Footbridge degress F, 183 degress C<br /><br /><a href="http://platial.com/place/28578">Map this on Platial</a><br /> <a href="http://platial.com/place_grab/28578">Grab this on Platial</a> ]]></description>
|
||||
<georss:point>44.414000 -110.817000</georss:point>
|
||||
<dc:creator>crschmidt</dc:creator>
|
||||
<dc:date>2006-01-03T23:23:42.938808+00:00</dc:date>
|
||||
</item>
|
||||
<item rdf:about="http://platial.com/place/28577">
|
||||
<link>http://platial.com/place/28577</link>
|
||||
<title>West. Thumb Geyser Basin, WY</title>
|
||||
<description><![CDATA[Hot spring, temperature: 203 degress F, 95 degress C<br /><br /><a href="http://platial.com/place/28577">Map this on Platial</a><br /> <a href="http://platial.com/place_grab/28577">Grab this on Platial</a> ]]></description>
|
||||
<georss:point>44.417000 -110.570000</georss:point>
|
||||
<dc:creator>crschmidt</dc:creator>
|
||||
<dc:date>2006-01-03T23:23:40.90238+00:00</dc:date>
|
||||
</item>
|
||||
<item rdf:about="http://platial.com/place/28576">
|
||||
<link>http://platial.com/place/28576</link>
|
||||
<title>Lone Star Geyser, WY</title>
|
||||
<description><![CDATA[Hot spring, temperature: 199 degress F, 93 degress C<br /><br /><a href="http://platial.com/place/28576">Map this on Platial</a><br /> <a href="http://platial.com/place_grab/28576">Grab this on Platial</a> ]]></description>
|
||||
<georss:point>44.418000 -110.805000</georss:point>
|
||||
<dc:creator>crschmidt</dc:creator>
|
||||
<dc:date>2006-01-03T23:23:38.844625+00:00</dc:date>
|
||||
</item>
|
||||
<item rdf:about="http://platial.com/place/28575">
|
||||
<link>http://platial.com/place/28575</link>
|
||||
<title>Smoke Jumper Hot Springs, WY</title>
|
||||
<description><![CDATA[Hot spring, temperature: 198 degress F, 92 degress C<br /><br /><a href="http://platial.com/place/28575">Map this on Platial</a><br /> <a href="http://platial.com/place_grab/28575">Grab this on Platial</a> ]]></description>
|
||||
<georss:point>44.421000 -110.952000</georss:point>
|
||||
<dc:creator>crschmidt</dc:creator>
|
||||
<dc:date>2006-01-03T23:23:36.818513+00:00</dc:date>
|
||||
</item>
|
||||
<item rdf:about="http://platial.com/place/28574">
|
||||
<link>http://platial.com/place/28574</link>
|
||||
<title>West. Thumb Geyser Basin, WY</title>
|
||||
<description><![CDATA[Hot spring, temperature: 196 degress F, 91 degress C<br /><br /><a href="http://platial.com/place/28574">Map this on Platial</a><br /> <a href="http://platial.com/place_grab/28574">Grab this on Platial</a> ]]></description>
|
||||
<georss:point>44.422000 -110.574000</georss:point>
|
||||
<dc:creator>crschmidt</dc:creator>
|
||||
<dc:date>2006-01-03T23:23:34.767729+00:00</dc:date>
|
||||
</item>
|
||||
<item rdf:about="http://platial.com/place/28573">
|
||||
<link>http://platial.com/place/28573</link>
|
||||
<title>Potts Hot Spring Basin, WY</title>
|
||||
<description><![CDATA[Hot spring, temperature: 203 degress F, 95 degress C<br /><br /><a href="http://platial.com/place/28573">Map this on Platial</a><br /> <a href="http://platial.com/place_grab/28573">Grab this on Platial</a> ]]></description>
|
||||
<georss:point>44.433000 -110.581000</georss:point>
|
||||
<dc:creator>crschmidt</dc:creator>
|
||||
<dc:date>2006-01-03T23:23:32.749915+00:00</dc:date>
|
||||
</item>
|
||||
<item rdf:about="http://platial.com/place/28572">
|
||||
<link>http://platial.com/place/28572</link>
|
||||
<title>Hot Springs, WY</title>
|
||||
<description><![CDATA[Hot spring, temperature: Hot degress F, Hot degress C<br /><br /><a href="http://platial.com/place/28572">Map this on Platial</a><br /> <a href="http://platial.com/place_grab/28572">Grab this on Platial</a> ]]></description>
|
||||
<georss:point>44.433000 -110.813000</georss:point>
|
||||
<dc:creator>crschmidt</dc:creator>
|
||||
<dc:date>2006-01-03T23:23:30.829745+00:00</dc:date>
|
||||
</item>
|
||||
<item rdf:about="http://platial.com/place/28571">
|
||||
<link>http://platial.com/place/28571</link>
|
||||
<title>Hot Springs on Continental Divide, WY</title>
|
||||
<description><![CDATA[Hot spring, temperature: Hot degress F, Hot degress C<br /><br /><a href="http://platial.com/place/28571">Map this on Platial</a><br /> <a href="http://platial.com/place_grab/28571">Grab this on Platial</a> ]]></description>
|
||||
<georss:point>44.438000 -110.977000</georss:point>
|
||||
<dc:creator>crschmidt</dc:creator>
|
||||
<dc:date>2006-01-03T23:23:28.730401+00:00</dc:date>
|
||||
</item>
|
||||
<item rdf:about="http://platial.com/place/28570">
|
||||
<link>http://platial.com/place/28570</link>
|
||||
<title>SouthEastern Group, WY</title>
|
||||
<description><![CDATA[Hot spring, temperature: 198 degress F, 92 degress C<br /><br /><a href="http://platial.com/place/28570">Map this on Platial</a><br /> <a href="http://platial.com/place_grab/28570">Grab this on Platial</a> ]]></description>
|
||||
<georss:point>44.459000 -110.817000</georss:point>
|
||||
<dc:creator>crschmidt</dc:creator>
|
||||
<dc:date>2006-01-03T23:23:26.706763+00:00</dc:date>
|
||||
</item>
|
||||
</rdf:RDF>
|
||||
47
examples/getfeatureinfo.html
Normal file
@@ -0,0 +1,47 @@
|
||||
<html>
|
||||
<head>
|
||||
<script src="../lib/OpenLayers.js"></script>
|
||||
<style type="text/css">
|
||||
ul, li { padding-left: 0px; margin-left: 0px; }
|
||||
</style>
|
||||
<title>World Map Query</title>
|
||||
</head>
|
||||
<body>
|
||||
<a id='permalink' href="">Permalink</a><br />
|
||||
<div style="float:right;width:28%">
|
||||
<h1 style="font-size:1.3em;">CIA Factbook</h1>
|
||||
<p style='font-size:.8em;'>Click a country to see statistics about the country below.</p>
|
||||
<div id="nodeList">
|
||||
</div>
|
||||
</div>
|
||||
<div id="map" style="width:70%; height:90%"></div>
|
||||
<script defer="defer" type="text/javascript">
|
||||
OpenLayers.ProxyHost = "/dev/examples/proxy.cgi?url=";
|
||||
var map = new OpenLayers.Map('map', {'maxResolution':'auto'});
|
||||
|
||||
var wms = new OpenLayers.Layer.WMS( "OpenLayers WMS",
|
||||
"http://world.freemap.in/cgi-bin/mapserv?map=/www/freemap.in/world/map/factbook.map", {'layers': 'factbook'} );
|
||||
map.addLayer(wms);
|
||||
map.addControl(new OpenLayers.Control.Permalink('permalink'));
|
||||
map.zoomToMaxExtent();
|
||||
map.events.register('click', map, function (e) {
|
||||
OpenLayers.Util.getElement('nodeList').innerHTML = "Loading... please wait...";
|
||||
var url = wms.getFullRequestString({
|
||||
REQUEST: "GetFeatureInfo",
|
||||
EXCEPTIONS: "application/vnd.ogc.se_xml",
|
||||
BBOX: wms.map.getExtent().toBBOX(),
|
||||
X: e.xy.x,
|
||||
Y: e.xy.y,
|
||||
INFO_FORMAT: 'text/html',
|
||||
QUERY_LAYERS: wms.params.LAYERS,
|
||||
WIDTH: wms.map.size.w,
|
||||
HEIGHT: wms.map.size.h});
|
||||
OpenLayers.loadURL(url, '', this, setHTML);
|
||||
Event.stop(e);
|
||||
});
|
||||
function setHTML(response) {
|
||||
OpenLayers.Util.getElement('nodeList').innerHTML = response.responseText;
|
||||
}
|
||||
</script>
|
||||
</body>
|
||||
</html>
|
||||
32
examples/gml-layer.html
Normal file
@@ -0,0 +1,32 @@
|
||||
<html xmlns="http://www.w3.org/1999/xhtml">
|
||||
<head>
|
||||
<style type="text/css">
|
||||
#map {
|
||||
width: 800px;
|
||||
height: 475px;
|
||||
border: 1px solid black;
|
||||
}
|
||||
</style>
|
||||
<script src="../lib/OpenLayers.js"></script>
|
||||
<script type="text/javascript">
|
||||
<!--
|
||||
var lon = 5;
|
||||
var lat = 40;
|
||||
var zoom = 5;
|
||||
var map, layer;
|
||||
|
||||
function init(){
|
||||
map = new OpenLayers.Map( $('map') );
|
||||
layer = new OpenLayers.Layer.WMS( "OpenLayers WMS",
|
||||
"http://labs.metacarta.com/wms/vmap0", {layers: 'basic'} );
|
||||
map.addLayer(layer);
|
||||
map.zoomToExtent(new OpenLayers.Bounds(-3.922119,44.335327,4.866943,49.553833));
|
||||
map.addLayer(new OpenLayers.Layer.GML("GML", "gml/polygon.xml"));
|
||||
}
|
||||
// -->
|
||||
</script>
|
||||
</head>
|
||||
<body onload="init()">
|
||||
<div id="map"></div>
|
||||
</body>
|
||||
</html>
|
||||
86
examples/gml-serialize.html
Normal file
@@ -0,0 +1,86 @@
|
||||
<html xmlns="http://www.w3.org/1999/xhtml">
|
||||
<head>
|
||||
<style type="text/css">
|
||||
#map {
|
||||
width: 512px;
|
||||
height: 350px;
|
||||
border: 1px solid gray;
|
||||
}
|
||||
</style>
|
||||
<script src="../lib/OpenLayers.js"></script>
|
||||
<script type="text/javascript">
|
||||
<!--
|
||||
var map, drawControl, g;
|
||||
function serialize(feature) {
|
||||
feature.attributes = {};
|
||||
var name = prompt("Name for feature?");
|
||||
feature.attributes['name'] = name;
|
||||
s = new XMLSerializer();
|
||||
var data = g.write(feature.layer.features);
|
||||
$("gml").value = s.serializeToString(data);
|
||||
}
|
||||
function init(){
|
||||
g = new OpenLayers.Format.GML();
|
||||
map = new OpenLayers.Map('map');
|
||||
|
||||
var wmsLayer = new OpenLayers.Layer.WMS( "OpenLayers WMS",
|
||||
"http://labs.metacarta.com/wms/vmap0?", {layers: 'basic'});
|
||||
|
||||
var pointLayer = new OpenLayers.Layer.Vector("Point Layer");
|
||||
pointLayer.onFeatureInsert = serialize;
|
||||
|
||||
map.addLayers([wmsLayer, pointLayer]);
|
||||
map.addControl(new OpenLayers.Control.LayerSwitcher());
|
||||
map.addControl(new OpenLayers.Control.MousePosition());
|
||||
|
||||
drawControls = {
|
||||
point: new OpenLayers.Control.DrawFeature(pointLayer,
|
||||
OpenLayers.Handler.Point),
|
||||
line: new OpenLayers.Control.DrawFeature(pointLayer,
|
||||
OpenLayers.Handler.Path)
|
||||
};
|
||||
|
||||
for(var key in drawControls) {
|
||||
map.addControl(drawControls[key]);
|
||||
}
|
||||
|
||||
map.setCenter(new OpenLayers.LonLat(0, 0), 3);
|
||||
}
|
||||
|
||||
function toggleControl(element) {
|
||||
for(key in drawControls) {
|
||||
var control = drawControls[key];
|
||||
if(element.value == key && element.checked) {
|
||||
control.activate();
|
||||
} else {
|
||||
control.deactivate();
|
||||
}
|
||||
}
|
||||
}
|
||||
// -->
|
||||
</script>
|
||||
</head>
|
||||
<body onload="init()">
|
||||
<h1>OpenLayers Draw Point Example</h1>
|
||||
<div style="float:right">
|
||||
<ul id="controlToggle">
|
||||
<li>
|
||||
<input type="radio" name="type" value="none" id="noneToggle"
|
||||
onclick="toggleControl(this);" checked="checked" />
|
||||
<label for="noneToggle">navigate</label>
|
||||
</li>
|
||||
<li>
|
||||
<input type="radio" name="type" value="point" id="pointToggle" onclick="toggleControl(this);" />
|
||||
<label for="pointToggle">draw point</label>
|
||||
</li>
|
||||
<li>
|
||||
<input type="radio" name="type" value="line" id="lineToggle" onclick="toggleControl(this);" />
|
||||
<label for="lineToggle">draw line</label>
|
||||
</li>
|
||||
</ul>
|
||||
<p>Check the box to draw points. Uncheck to navigate normally.</p>
|
||||
<textarea id="gml" cols="80" rows="30"></textarea>
|
||||
</div>
|
||||
<div id="map"></div>
|
||||
</body>
|
||||
</html>
|
||||
42
examples/gml/line.xml
Normal file
@@ -0,0 +1,42 @@
|
||||
<?xml version="1.0" encoding="ISO-8859-1"?>
|
||||
<wfs:FeatureCollection xmlns:ms="http://mapserver.gis.umn.edu/mapserver" xmlns:wfs="http://www.opengis.net/wfs" xmlns:gml="http://www.opengis.net/gml" xmlns:ogc="http://www.opengis.net/ogc" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.opengis.net/wfs http://schemas.opengis.net/wfs/1.0.0/WFS-basic.xsd http://mapserver.gis.umn.edu/mapserver http://aneto.oco/cgi-bin/worldwfs?SERVICE=WFS&VERSION=1.0.0&REQUEST=DescribeFeatureType&TYPENAME=line&OUTPUTFORMAT=XMLSCHEMA">
|
||||
<gml:boundedBy>
|
||||
<gml:Box srsName="EPSG:4326">
|
||||
<gml:coordinates>-3.924027,46.037889 2.193186,47.897181</gml:coordinates>
|
||||
</gml:Box>
|
||||
</gml:boundedBy>
|
||||
<gml:featureMember>
|
||||
<ms:line fid="1">
|
||||
<gml:boundedBy>
|
||||
<gml:Box srsName="EPSG:4326">
|
||||
<gml:coordinates>-0.631235,46.037889 2.193186,46.704963</gml:coordinates>
|
||||
</gml:Box>
|
||||
</gml:boundedBy>
|
||||
<ms:msGeometry>
|
||||
<gml:LineString srsName="EPSG:4326">
|
||||
<gml:coordinates>-0.631235,46.307557 -0.262215,46.577225 0.106805,46.477874 0.220349,46.293364 0.475824,46.406909 0.887424,46.350136 1.029354,46.563032 1.213864,46.648191 1.526112,46.421102 1.795780,46.066275 2.108028,46.037889 2.178993,46.250785 2.193186,46.492067 2.193186,46.492067 2.051255,46.704963 2.051255,46.704963 </gml:coordinates>
|
||||
</gml:LineString>
|
||||
</ms:msGeometry>
|
||||
<ms:ogc_fid>1</ms:ogc_fid>
|
||||
<ms:name/>
|
||||
<ms:id>0</ms:id>
|
||||
</ms:line>
|
||||
</gml:featureMember>
|
||||
<gml:featureMember>
|
||||
<ms:line fid="2">
|
||||
<gml:boundedBy>
|
||||
<gml:Box srsName="EPSG:4326">
|
||||
<gml:coordinates>-3.924027,46.279171 -1.127992,47.897181</gml:coordinates>
|
||||
</gml:Box>
|
||||
</gml:boundedBy>
|
||||
<ms:msGeometry>
|
||||
<gml:LineString srsName="EPSG:4326">
|
||||
<gml:coordinates>-1.127992,46.279171 -1.369275,46.364329 -1.624750,46.406909 -1.866032,46.492067 -1.993770,46.704963 -2.178280,46.846894 -1.979577,47.059790 -2.164087,47.144948 -2.135700,47.215914 -2.093121,47.357844 -2.277631,47.258493 -2.391176,47.301072 -2.490527,47.315265 -2.476334,47.443003 -2.575686,47.599127 -2.703423,47.542354 -2.873740,47.471389 -3.285339,47.670092 -3.597587,47.769443 -3.824676,47.840409 -3.924027,47.897181 </gml:coordinates>
|
||||
</gml:LineString>
|
||||
</ms:msGeometry>
|
||||
<ms:ogc_fid>2</ms:ogc_fid>
|
||||
<ms:name/>
|
||||
<ms:id>0</ms:id>
|
||||
</ms:line>
|
||||
</gml:featureMember>
|
||||
</wfs:FeatureCollection>
|
||||
70
examples/gml/multipoint.xml
Normal file
@@ -0,0 +1,70 @@
|
||||
<?xml version="1.0" encoding="ISO-8859-1"?>
|
||||
<wfs:FeatureCollection xmlns:ms="http://mapserver.gis.umn.edu/mapserver" xmlns:wfs="http://www.opengis.net/wfs" xmlns:gml="http://www.opengis.net/gml" xmlns:ogc="http://www.opengis.net/ogc" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.opengis.net/wfs http://schemas.opengis.net/wfs/1.0.0/WFS-basic.xsd http://mapserver.gis.umn.edu/mapserver http://aneto.oco/cgi-bin/worldwfs?SERVICE=WFS&VERSION=1.0.0&REQUEST=DescribeFeatureType&TYPENAME=multipoint&OUTPUTFORMAT=XMLSCHEMA">
|
||||
<gml:boundedBy>
|
||||
<gml:Box srsName="EPSG:4326">
|
||||
<gml:coordinates>0.490018,45.001795 3.016384,45.839186</gml:coordinates>
|
||||
</gml:Box>
|
||||
</gml:boundedBy>
|
||||
<gml:featureMember>
|
||||
<ms:multipoint fid="1">
|
||||
<gml:boundedBy>
|
||||
<gml:Box srsName="EPSG:4326">
|
||||
<gml:coordinates>0.930003,45.001795 3.016384,45.541131</gml:coordinates>
|
||||
</gml:Box>
|
||||
</gml:boundedBy>
|
||||
<ms:msGeometry>
|
||||
<gml:MultiPoint srsName="EPSG:4326">
|
||||
<gml:pointMember>
|
||||
<gml:Point>
|
||||
<gml:coordinates>2.079641,45.001795</gml:coordinates>
|
||||
</gml:Point>
|
||||
</gml:pointMember>
|
||||
<gml:pointMember>
|
||||
<gml:Point>
|
||||
<gml:coordinates>2.718330,45.541131</gml:coordinates>
|
||||
</gml:Point>
|
||||
</gml:pointMember>
|
||||
<gml:pointMember>
|
||||
<gml:Point>
|
||||
<gml:coordinates>3.016384,45.143725</gml:coordinates>
|
||||
</gml:Point>
|
||||
</gml:pointMember>
|
||||
<gml:pointMember>
|
||||
<gml:Point>
|
||||
<gml:coordinates>0.930003,45.001795</gml:coordinates>
|
||||
</gml:Point>
|
||||
</gml:pointMember>
|
||||
</gml:MultiPoint>
|
||||
</ms:msGeometry>
|
||||
<ms:ogc_fid>1</ms:ogc_fid>
|
||||
<ms:name>4 points</ms:name>
|
||||
<ms:id>1</ms:id>
|
||||
</ms:multipoint>
|
||||
</gml:featureMember>
|
||||
<gml:featureMember>
|
||||
<ms:multipoint fid="2">
|
||||
<gml:boundedBy>
|
||||
<gml:Box srsName="EPSG:4326">
|
||||
<gml:coordinates>0.490018,45.654676 1.157092,45.839186</gml:coordinates>
|
||||
</gml:Box>
|
||||
</gml:boundedBy>
|
||||
<ms:msGeometry>
|
||||
<gml:MultiPoint srsName="EPSG:4326">
|
||||
<gml:pointMember>
|
||||
<gml:Point>
|
||||
<gml:coordinates>0.490018,45.654676</gml:coordinates>
|
||||
</gml:Point>
|
||||
</gml:pointMember>
|
||||
<gml:pointMember>
|
||||
<gml:Point>
|
||||
<gml:coordinates>1.157092,45.839186</gml:coordinates>
|
||||
</gml:Point>
|
||||
</gml:pointMember>
|
||||
</gml:MultiPoint>
|
||||
</ms:msGeometry>
|
||||
<ms:ogc_fid>2</ms:ogc_fid>
|
||||
<ms:name>2 points</ms:name>
|
||||
<ms:id>2</ms:id>
|
||||
</ms:multipoint>
|
||||
</gml:featureMember>
|
||||
</wfs:FeatureCollection>
|
||||
106
examples/gml/multipolygon.xml
Normal file
@@ -0,0 +1,106 @@
|
||||
<?xml version="1.0" encoding="ISO-8859-1"?>
|
||||
<wfs:FeatureCollection xmlns:ms="http://mapserver.gis.umn.edu/mapserver" xmlns:wfs="http://www.opengis.net/wfs" xmlns:gml="http://www.opengis.net/gml" xmlns:ogc="http://www.opengis.net/ogc" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.opengis.net/wfs http://schemas.opengis.net/wfs/1.0.0/WFS-basic.xsd http://mapserver.gis.umn.edu/mapserver http://aneto.oco/cgi-bin/worldwfs?SERVICE=WFS&VERSION=1.0.0&REQUEST=DescribeFeatureType&TYPENAME=multipolygon&OUTPUTFORMAT=XMLSCHEMA">
|
||||
<gml:boundedBy>
|
||||
<gml:Box srsName="EPSG:4326">
|
||||
<gml:coordinates>-1.738295,46.307557 3.754424,47.244300</gml:coordinates>
|
||||
</gml:Box>
|
||||
</gml:boundedBy>
|
||||
<gml:featureMember>
|
||||
<ms:multipolygon fid="1">
|
||||
<gml:boundedBy>
|
||||
<gml:Box srsName="EPSG:4326">
|
||||
<gml:coordinates>-1.738295,46.605612 1.767394,47.244300</gml:coordinates>
|
||||
</gml:Box>
|
||||
</gml:boundedBy>
|
||||
<ms:msGeometry>
|
||||
<gml:MultiPolygon srsName="EPSG:4326">
|
||||
<gml:polygonMember>
|
||||
<gml:Polygon>
|
||||
<gml:outerBoundaryIs>
|
||||
<gml:LinearRing>
|
||||
<gml:coordinates>1.313216,46.690770 1.000968,46.861087 0.887424,47.059790 1.142899,47.244300 1.355795,47.244300 1.554498,47.017211 1.710622,47.059790 1.767394,46.747542 1.313216,46.690770 1.313216,46.690770 </gml:coordinates>
|
||||
</gml:LinearRing>
|
||||
</gml:outerBoundaryIs>
|
||||
</gml:Polygon>
|
||||
</gml:polygonMember>
|
||||
<gml:polygonMember>
|
||||
<gml:Polygon>
|
||||
<gml:outerBoundaryIs>
|
||||
<gml:LinearRing>
|
||||
<gml:coordinates>0.731300,46.605612 -0.191250,46.704963 -0.191250,46.846894 0.177770,46.988824 0.447438,46.960438 0.589369,46.804315 0.688721,46.832701 0.731300,46.605612 0.731300,46.605612 </gml:coordinates>
|
||||
</gml:LinearRing>
|
||||
</gml:outerBoundaryIs>
|
||||
</gml:Polygon>
|
||||
</gml:polygonMember>
|
||||
<gml:polygonMember>
|
||||
<gml:Polygon>
|
||||
<gml:outerBoundaryIs>
|
||||
<gml:LinearRing>
|
||||
<gml:coordinates>-1.610557,46.733349 -1.184765,46.704963 -1.198958,46.704963 -0.943483,46.619805 -0.915096,46.818508 -0.659621,46.775928 -0.688007,47.017211 -0.943483,47.003018 -1.127992,47.088176 -1.397661,47.102369 -1.624750,47.073983 -1.738295,46.917859 -1.610557,46.733349 </gml:coordinates>
|
||||
</gml:LinearRing>
|
||||
</gml:outerBoundaryIs>
|
||||
</gml:Polygon>
|
||||
</gml:polygonMember>
|
||||
</gml:MultiPolygon>
|
||||
</ms:msGeometry>
|
||||
<ms:ogc_fid>1</ms:ogc_fid>
|
||||
<ms:name>My first Multipolygon</ms:name>
|
||||
<ms:id>0</ms:id>
|
||||
</ms:multipolygon>
|
||||
</gml:featureMember>
|
||||
<gml:featureMember>
|
||||
<ms:multipolygon fid="2">
|
||||
<gml:boundedBy>
|
||||
<gml:Box srsName="EPSG:4326">
|
||||
<gml:coordinates>2.789295,46.392716 3.754424,46.903666</gml:coordinates>
|
||||
</gml:Box>
|
||||
</gml:boundedBy>
|
||||
<ms:msGeometry>
|
||||
<gml:Polygon srsName="EPSG:4326">
|
||||
<gml:outerBoundaryIs>
|
||||
<gml:LinearRing>
|
||||
<gml:coordinates>2.959612,46.392716 2.789295,46.775928 3.172508,46.903666 3.498949,46.903666 3.498949,46.662384 3.754424,46.563032 2.959612,46.392716 </gml:coordinates>
|
||||
</gml:LinearRing>
|
||||
</gml:outerBoundaryIs>
|
||||
</gml:Polygon>
|
||||
</ms:msGeometry>
|
||||
<ms:ogc_fid>2</ms:ogc_fid>
|
||||
<ms:name>My second Multipolygon</ms:name>
|
||||
<ms:id>0</ms:id>
|
||||
</ms:multipolygon>
|
||||
</gml:featureMember>
|
||||
<gml:featureMember>
|
||||
<ms:multipolygon fid="3">
|
||||
<gml:boundedBy>
|
||||
<gml:Box srsName="EPSG:4326">
|
||||
<gml:coordinates>2.207379,46.307557 2.803488,47.045597</gml:coordinates>
|
||||
</gml:Box>
|
||||
</gml:boundedBy>
|
||||
<ms:msGeometry>
|
||||
<gml:MultiPolygon srsName="EPSG:4326">
|
||||
<gml:polygonMember>
|
||||
<gml:Polygon>
|
||||
<gml:outerBoundaryIs>
|
||||
<gml:LinearRing>
|
||||
<gml:coordinates>2.292538,46.804315 2.207379,47.017211 2.391889,47.045597 2.562206,46.832701 2.292538,46.804315 </gml:coordinates>
|
||||
</gml:LinearRing>
|
||||
</gml:outerBoundaryIs>
|
||||
</gml:Polygon>
|
||||
</gml:polygonMember>
|
||||
<gml:polygonMember>
|
||||
<gml:Polygon>
|
||||
<gml:outerBoundaryIs>
|
||||
<gml:LinearRing>
|
||||
<gml:coordinates>2.789295,46.307557 2.789295,46.307557 2.803488,46.506260 2.618978,46.676577 2.349310,46.633998 2.448661,46.392716 2.789295,46.307557 </gml:coordinates>
|
||||
</gml:LinearRing>
|
||||
</gml:outerBoundaryIs>
|
||||
</gml:Polygon>
|
||||
</gml:polygonMember>
|
||||
</gml:MultiPolygon>
|
||||
</ms:msGeometry>
|
||||
<ms:ogc_fid>3</ms:ogc_fid>
|
||||
<ms:name>My third Multipolygon</ms:name>
|
||||
<ms:id>0</ms:id>
|
||||
</ms:multipolygon>
|
||||
</gml:featureMember>
|
||||
</wfs:FeatureCollection>
|
||||
156
examples/gml/owls.xml
Normal file
@@ -0,0 +1,156 @@
|
||||
<?xml version='1.0' encoding="ISO-8859-1" ?>
|
||||
<wfs:FeatureCollection
|
||||
xmlns:bsc="http://www.bsc-eoc.org/bsc"
|
||||
xmlns:wfs="http://www.opengis.net/wfs"
|
||||
xmlns:gml="http://www.opengis.net/gml"
|
||||
xmlns:ogc="http://www.opengis.net/ogc"
|
||||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||
xsi:schemaLocation="http://www.opengis.net/wfs http://schemas.opengeospatial.net//wfs/1.0.0/WFS-basic.xsd
|
||||
http://www.bsc-eoc.org/bsc http://www.bsc-eoc.org/cgi-bin/bsc_ows.asp?SERVICE=WFS&VERSION=1.0.0&REQUEST=DescribeFeatureType&TYPENAME=OWLS&OUTPUTFORMAT=XMLSCHEMA">
|
||||
<gml:boundedBy>
|
||||
<gml:Box srsName="EPSG:4326">
|
||||
<gml:coordinates>-89.817223,45.005555 -74.755001,51.701388</gml:coordinates>
|
||||
</gml:Box>
|
||||
</gml:boundedBy>
|
||||
<gml:featureMember><bsc:OWLS>
|
||||
<gml:boundedBy>
|
||||
<gml:Box srsName="EPSG:4326">
|
||||
<gml:coordinates>-79.771668,45.891110 -79.771668,45.891110</gml:coordinates>
|
||||
</gml:Box>
|
||||
</gml:boundedBy>
|
||||
<bsc:msGeometry>
|
||||
<gml:Point srsName="EPSG:4326">
|
||||
<gml:coordinates>-79.771668,45.891110</gml:coordinates>
|
||||
</gml:Point>
|
||||
</bsc:msGeometry>
|
||||
</bsc:OWLS>
|
||||
</gml:featureMember>
|
||||
<gml:featureMember>
|
||||
<bsc:OWLS>
|
||||
<gml:boundedBy>
|
||||
<gml:Box srsName="EPSG:4326">
|
||||
<gml:coordinates>-83.755834,46.365277 -83.755834,46.365277</gml:coordinates>
|
||||
</gml:Box>
|
||||
</gml:boundedBy>
|
||||
<bsc:owlname>owl</bsc:owlname>
|
||||
<bsc:msGeometry>
|
||||
<gml:Point srsName="EPSG:4326">
|
||||
<gml:coordinates>-83.755834,46.365277</gml:coordinates>
|
||||
</gml:Point>
|
||||
</bsc:msGeometry>
|
||||
</bsc:OWLS>
|
||||
</gml:featureMember>
|
||||
<gml:featureMember>
|
||||
<bsc:OWLS>
|
||||
<gml:boundedBy>
|
||||
<gml:Box srsName="EPSG:4326">
|
||||
<gml:coordinates>-83.808612,46.175277 -83.808612,46.175277</gml:coordinates>
|
||||
</gml:Box>
|
||||
</gml:boundedBy>
|
||||
<bsc:msGeometry>
|
||||
<gml:Point srsName="EPSG:4326">
|
||||
<gml:coordinates>-83.808612,46.175277</gml:coordinates>
|
||||
</gml:Point>
|
||||
</bsc:msGeometry>
|
||||
</bsc:OWLS>
|
||||
</gml:featureMember>
|
||||
<gml:featureMember>
|
||||
<bsc:OWLS>
|
||||
<gml:boundedBy>
|
||||
<gml:Box srsName="EPSG:4326">
|
||||
<gml:coordinates>-84.111112,46.309166 -84.111112,46.309166</gml:coordinates>
|
||||
</gml:Box>
|
||||
</gml:boundedBy>
|
||||
<bsc:msGeometry>
|
||||
<gml:Point srsName="EPSG:4326">
|
||||
<gml:coordinates>-84.111112,46.309166</gml:coordinates>
|
||||
</gml:Point>
|
||||
</bsc:msGeometry>
|
||||
</bsc:OWLS>
|
||||
</gml:featureMember>
|
||||
<gml:featureMember>
|
||||
<bsc:OWLS>
|
||||
<gml:boundedBy>
|
||||
<gml:Box srsName="EPSG:4326">
|
||||
<gml:coordinates>-83.678612,46.821110 -83.678612,46.821110</gml:coordinates>
|
||||
</gml:Box>
|
||||
</gml:boundedBy>
|
||||
<bsc:msGeometry>
|
||||
<gml:Point srsName="EPSG:4326">
|
||||
<gml:coordinates>-83.678612,46.821110</gml:coordinates>
|
||||
</gml:Point>
|
||||
</bsc:msGeometry>
|
||||
</bsc:OWLS>
|
||||
</gml:featureMember>
|
||||
<gml:featureMember>
|
||||
<bsc:OWLS>
|
||||
<gml:boundedBy>
|
||||
<gml:Box srsName="EPSG:4326">
|
||||
<gml:coordinates>-83.664445,46.518888 -83.664445,46.518888</gml:coordinates>
|
||||
</gml:Box>
|
||||
</gml:boundedBy>
|
||||
<bsc:msGeometry>
|
||||
<gml:Point srsName="EPSG:4326">
|
||||
<gml:coordinates>-83.664445,46.518888</gml:coordinates>
|
||||
</gml:Point>
|
||||
</bsc:msGeometry>
|
||||
</bsc:OWLS>
|
||||
</gml:featureMember>
|
||||
<gml:featureMember>
|
||||
<bsc:OWLS>
|
||||
<gml:boundedBy>
|
||||
<gml:Box srsName="EPSG:4326">
|
||||
<gml:coordinates>-80.613334,46.730277 -80.613334,46.730277</gml:coordinates>
|
||||
</gml:Box>
|
||||
</gml:boundedBy>
|
||||
<bsc:msGeometry>
|
||||
<gml:Point srsName="EPSG:4326">
|
||||
<gml:coordinates>-80.613334,46.730277</gml:coordinates>
|
||||
</gml:Point>
|
||||
</bsc:msGeometry>
|
||||
</bsc:OWLS>
|
||||
</gml:featureMember>
|
||||
<gml:featureMember>
|
||||
<bsc:OWLS>
|
||||
<gml:boundedBy>
|
||||
<gml:Box srsName="EPSG:4326">
|
||||
<gml:coordinates>-79.676946,45.428054 -79.676946,45.428054</gml:coordinates>
|
||||
</gml:Box>
|
||||
</gml:boundedBy>
|
||||
<bsc:msGeometry>
|
||||
<gml:Point srsName="EPSG:4326">
|
||||
<gml:coordinates>-79.676946,45.428054</gml:coordinates>
|
||||
</gml:Point>
|
||||
</bsc:msGeometry>
|
||||
</bsc:OWLS>
|
||||
</gml:featureMember>
|
||||
<gml:featureMember>
|
||||
<bsc:OWLS>
|
||||
<gml:boundedBy>
|
||||
<gml:Box srsName="EPSG:4326">
|
||||
<gml:coordinates>-83.853056,46.236944 -83.853056,46.236944</gml:coordinates>
|
||||
</gml:Box>
|
||||
</gml:boundedBy>
|
||||
<bsc:msGeometry>
|
||||
<gml:Point srsName="EPSG:4326">
|
||||
<gml:coordinates>-83.853056,46.236944</gml:coordinates>
|
||||
</gml:Point>
|
||||
</bsc:msGeometry>
|
||||
</bsc:OWLS>
|
||||
</gml:featureMember>
|
||||
<gml:featureMember>
|
||||
<bsc:OWLS>
|
||||
<gml:boundedBy>
|
||||
<gml:Box srsName="EPSG:4326">
|
||||
<gml:coordinates>-82.289167,45.896388 -82.289167,45.896388</gml:coordinates>
|
||||
</gml:Box>
|
||||
</gml:boundedBy>
|
||||
<bsc:msGeometry>
|
||||
<gml:Point srsName="EPSG:4326">
|
||||
<gml:coordinates>-82.289167,45.896388</gml:coordinates>
|
||||
</gml:Point>
|
||||
</bsc:msGeometry>
|
||||
</bsc:OWLS>
|
||||
</gml:featureMember>
|
||||
</wfs:FeatureCollection>
|
||||
|
||||
42
examples/gml/point.xml
Normal file
@@ -0,0 +1,42 @@
|
||||
<?xml version="1.0" encoding="ISO-8859-1"?>
|
||||
<wfs:FeatureCollection xmlns:ms="http://mapserver.gis.umn.edu/mapserver" xmlns:wfs="http://www.opengis.net/wfs" xmlns:gml="http://www.opengis.net/gml" xmlns:ogc="http://www.opengis.net/ogc" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.opengis.net/wfs http://schemas.opengis.net/wfs/1.0.0/WFS-basic.xsd http://mapserver.gis.umn.edu/mapserver http://aneto.oco/cgi-bin/worldwfs?SERVICE=WFS&VERSION=1.0.0&REQUEST=DescribeFeatureType&TYPENAME=point&OUTPUTFORMAT=XMLSCHEMA">
|
||||
<gml:boundedBy>
|
||||
<gml:Box srsName="EPSG:4326">
|
||||
<gml:coordinates>-0.608315,44.857522 -0.021418,45.477577</gml:coordinates>
|
||||
</gml:Box>
|
||||
</gml:boundedBy>
|
||||
<gml:featureMember>
|
||||
<ms:point fid="1">
|
||||
<gml:boundedBy>
|
||||
<gml:Box srsName="EPSG:4326">
|
||||
<gml:coordinates>-0.608315,44.857522 -0.608315,44.857522</gml:coordinates>
|
||||
</gml:Box>
|
||||
</gml:boundedBy>
|
||||
<ms:msGeometry>
|
||||
<gml:Point srsName="EPSG:4326">
|
||||
<gml:coordinates>-0.608315,44.857522</gml:coordinates>
|
||||
</gml:Point>
|
||||
</ms:msGeometry>
|
||||
<ms:ogc_fid>1</ms:ogc_fid>
|
||||
<ms:name>Bordeaux</ms:name>
|
||||
<ms:id>124</ms:id>
|
||||
</ms:point>
|
||||
</gml:featureMember>
|
||||
<gml:featureMember>
|
||||
<ms:point fid="2">
|
||||
<gml:boundedBy>
|
||||
<gml:Box srsName="EPSG:4326">
|
||||
<gml:coordinates>-0.021418,45.477577 -0.021418,45.477577</gml:coordinates>
|
||||
</gml:Box>
|
||||
</gml:boundedBy>
|
||||
<ms:msGeometry>
|
||||
<gml:Point srsName="EPSG:4326">
|
||||
<gml:coordinates>-0.021418,45.477577</gml:coordinates>
|
||||
</gml:Point>
|
||||
</ms:msGeometry>
|
||||
<ms:ogc_fid>2</ms:ogc_fid>
|
||||
<ms:name>Barbezieux</ms:name>
|
||||
<ms:id>0</ms:id>
|
||||
</ms:point>
|
||||
</gml:featureMember>
|
||||
</wfs:FeatureCollection>
|
||||
89
examples/gml/polygon.xml
Normal file
@@ -0,0 +1,89 @@
|
||||
<?xml version="1.0" encoding="ISO-8859-1"?>
|
||||
<wfs:FeatureCollection xmlns:ms="http://mapserver.gis.umn.edu/mapserver" xmlns:wfs="http://www.opengis.net/wfs" xmlns:gml="http://www.opengis.net/gml" xmlns:ogc="http://www.opengis.net/ogc" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.opengis.net/wfs http://schemas.opengis.net/wfs/1.0.0/WFS-basic.xsd http://mapserver.gis.umn.edu/mapserver http://aneto.oco/cgi-bin/worldwfs?SERVICE=WFS&VERSION=1.0.0&REQUEST=DescribeFeatureType&TYPENAME=polygon&OUTPUTFORMAT=XMLSCHEMA">
|
||||
<gml:boundedBy>
|
||||
<gml:Box srsName="EPSG:4326">
|
||||
<gml:coordinates>-0.768746,47.003018 3.002191,47.925567</gml:coordinates>
|
||||
</gml:Box>
|
||||
</gml:boundedBy>
|
||||
<gml:featureMember>
|
||||
<ms:polygon fid="1">
|
||||
<gml:boundedBy>
|
||||
<gml:Box srsName="EPSG:4326">
|
||||
<gml:coordinates>-0.768746,47.003018 0.532597,47.925567</gml:coordinates>
|
||||
</gml:Box>
|
||||
</gml:boundedBy>
|
||||
<ms:msGeometry>
|
||||
<gml:MultiPolygon srsName="EPSG:4326">
|
||||
<gml:polygonMember>
|
||||
<gml:Polygon>
|
||||
<gml:outerBoundaryIs>
|
||||
<gml:LinearRing>
|
||||
<gml:coordinates>-0.318987,47.003018 -0.768746,47.358268 -0.574463,47.684285 -0.347374,47.854602 -0.006740,47.925567 0.135191,47.726864 0.149384,47.599127 0.419052,47.670092 0.532597,47.428810 0.305508,47.443003 0.475824,47.144948 0.064225,47.201721 -0.318987,47.003018 </gml:coordinates>
|
||||
</gml:LinearRing>
|
||||
</gml:outerBoundaryIs>
|
||||
<gml:innerBoundaryIs>
|
||||
<gml:LinearRing>
|
||||
<gml:coordinates>-0.035126,47.485582 -0.035126,47.485582 -0.049319,47.641706 -0.233829,47.655899 -0.375760,47.457196 -0.276408,47.286879 -0.035126,47.485582 </gml:coordinates>
|
||||
</gml:LinearRing>
|
||||
</gml:innerBoundaryIs>
|
||||
</gml:Polygon>
|
||||
</gml:polygonMember>
|
||||
</gml:MultiPolygon>
|
||||
</ms:msGeometry>
|
||||
<ms:ogc_fid>1</ms:ogc_fid>
|
||||
<ms:name>My Polygon with hole</ms:name>
|
||||
<ms:id>0</ms:id>
|
||||
</ms:polygon>
|
||||
</gml:featureMember>
|
||||
<gml:featureMember>
|
||||
<ms:polygon fid="2">
|
||||
<gml:boundedBy>
|
||||
<gml:Box srsName="EPSG:4326">
|
||||
<gml:coordinates>1.511919,47.088176 3.002191,47.882988</gml:coordinates>
|
||||
</gml:Box>
|
||||
</gml:boundedBy>
|
||||
<ms:msGeometry>
|
||||
<gml:Polygon srsName="EPSG:4326">
|
||||
<gml:outerBoundaryIs>
|
||||
<gml:LinearRing>
|
||||
<gml:coordinates>1.625463,47.357844 1.511919,47.741057 1.880938,47.882988 2.420275,47.797830 2.789295,47.485582 3.002191,47.457196 2.874453,47.088176 2.178993,47.343651 1.625463,47.357844 </gml:coordinates>
|
||||
</gml:LinearRing>
|
||||
</gml:outerBoundaryIs>
|
||||
</gml:Polygon>
|
||||
</ms:msGeometry>
|
||||
<ms:ogc_fid>2</ms:ogc_fid>
|
||||
<ms:name>My simple Polygon</ms:name>
|
||||
<ms:id>0</ms:id>
|
||||
</ms:polygon>
|
||||
</gml:featureMember>
|
||||
<gml:featureMember>
|
||||
<ms:polygon fid="3">
|
||||
<gml:boundedBy>
|
||||
<gml:Box srsName="EPSG:4326">
|
||||
<gml:coordinates>0.000000,45.000000 2.000000,47.000000</gml:coordinates>
|
||||
</gml:Box>
|
||||
</gml:boundedBy>
|
||||
<ms:msGeometry>
|
||||
<gml:MultiPolygon srsName="EPSG:4326">
|
||||
<gml:polygonMember>
|
||||
<gml:Polygon>
|
||||
<gml:outerBoundaryIs>
|
||||
<gml:LinearRing>
|
||||
<gml:coordinates>0.000000,45.000000 2.000000,45.000000 2.000000,47.000000 0.000000,47.000000 0.000000,45.000000 </gml:coordinates>
|
||||
</gml:LinearRing>
|
||||
</gml:outerBoundaryIs>
|
||||
<gml:innerBoundaryIs>
|
||||
<gml:LinearRing>
|
||||
<gml:coordinates>0.500000,45.500000 1.500000,45.500000 1.500000,46.500000 0.500000,46.500000 0.500000,45.500000 </gml:coordinates>
|
||||
</gml:LinearRing>
|
||||
</gml:innerBoundaryIs>
|
||||
</gml:Polygon>
|
||||
</gml:polygonMember>
|
||||
</gml:MultiPolygon>
|
||||
</ms:msGeometry>
|
||||
<ms:ogc_fid>3</ms:ogc_fid>
|
||||
<ms:name>my polygon with hole</ms:name>
|
||||
<ms:id>3</ms:id>
|
||||
</ms:polygon>
|
||||
</gml:featureMember>
|
||||
</wfs:FeatureCollection>
|
||||
83
examples/google.html
Normal file
@@ -0,0 +1,83 @@
|
||||
<html xmlns="http://www.w3.org/1999/xhtml">
|
||||
<head>
|
||||
<style type="text/css">
|
||||
#map {
|
||||
width: 100%;
|
||||
height: 512px;
|
||||
border: 1px solid black;
|
||||
background-color: red;
|
||||
}
|
||||
</style>
|
||||
|
||||
<!-- this gmaps key generated for http://openlayers.org/dev/ -->
|
||||
<script src='http://maps.google.com/maps?file=api&v=2&key=ABQIAAAAjpkAC9ePGem0lIq5XcMiuhR_wWLPFku8Ix9i2SXYRVK3e45q1BQUd_beF8dtzKET_EteAjPdGDwqpQ'></script>
|
||||
<!-- Localhost key -->
|
||||
<!-- <script src='http://maps.google.com/maps?file=api&v=2&key=ABQIAAAAjpkAC9ePGem0lIq5XcMiuhT2yXp_ZAY8_ufC3CFXhHIE1NvwkxTS6gjckBmeABOGXIUiOiZObZESPg'></script>-->
|
||||
<script src="../lib/OpenLayers.js"></script>
|
||||
<script type="text/javascript">
|
||||
<!--
|
||||
var lon = 5;
|
||||
var lat = 40;
|
||||
var zoom = 17;
|
||||
var map, layer;
|
||||
|
||||
function init(){
|
||||
map = new OpenLayers.Map( 'map' ,
|
||||
{ controls: [new OpenLayers.Control.MouseDefaults()] , 'numZoomLevels':20});
|
||||
|
||||
var satellite = new OpenLayers.Layer.Google( "Google Satellite" , {type: G_SATELLITE_MAP, 'maxZoomLevel':18} );
|
||||
|
||||
|
||||
map.addLayers([satellite]);
|
||||
layer = new OpenLayers.Layer.WMS( "OpenLayers WMS",
|
||||
"http://labs.metacarta.com/wms/vmap0", {layers: 'basic', 'transparent':true},
|
||||
{isBaseLayer: false} );
|
||||
layer.setVisibility(false);
|
||||
layer = new OpenLayers.Layer.WMS( "OpenLayers WMS",
|
||||
"http://labs.metacarta.com/wms/vmap0", {layers: 'basic', 'transparent':true},
|
||||
{isBaseLayer: false} );
|
||||
layer.setVisibility(false);
|
||||
map.addLayer(layer);
|
||||
var twms = new OpenLayers.Layer.WMS( "World Map",
|
||||
"http://world.freemap.in/cgi-bin/mapserv?",
|
||||
{map: '/www/freemap.in/world/map/factbooktrans.map', transparent:'true',
|
||||
layers: 'factbook', 'format':'png'} );
|
||||
map.addLayer(twms);
|
||||
markers = new OpenLayers.Layer.Markers("markers");
|
||||
map.addLayer(markers);
|
||||
|
||||
map.setCenter(new OpenLayers.LonLat(10.205188,48.857593), 5);
|
||||
map.addControl( new OpenLayers.Control.LayerSwitcher() );
|
||||
map.addControl( new OpenLayers.Control.PanZoomBar() );
|
||||
|
||||
}
|
||||
|
||||
function add() {
|
||||
|
||||
var url = 'http://boston.openguides.org/markers/AQUA.png';
|
||||
var sz = new OpenLayers.Size(10, 17);
|
||||
var calculateOffset = function(size) {
|
||||
return new OpenLayers.Pixel(-(size.w/2), -size.h);
|
||||
};
|
||||
var icon = new OpenLayers.Icon(url, sz, null, calculateOffset);
|
||||
var barcelona = new OpenLayers.LonLat(2.13134765625,
|
||||
41.37062534198901);
|
||||
marker = new OpenLayers.Marker(barcelona, icon);
|
||||
markers.addMarker(marker);
|
||||
}
|
||||
|
||||
function remove() {
|
||||
markers.removeMarker(marker);
|
||||
}
|
||||
|
||||
// -->
|
||||
|
||||
</script>
|
||||
</head>
|
||||
<body onload="init()">
|
||||
<h1>OpenLayers With Google Layer Example</h1>
|
||||
<div id="map"></div>
|
||||
<div style="background-color:green" onclick="add()"> click to add a marker to the map</div>
|
||||
<div style="background-color:red" onclick="remove()"> click to remove the marker from the map</div>
|
||||
</body>
|
||||
</html>
|
||||
49
examples/gutter.html
Normal file
@@ -0,0 +1,49 @@
|
||||
<html>
|
||||
<head>
|
||||
<style type="text/css">
|
||||
#map {
|
||||
width: 500px;
|
||||
height: 300px;
|
||||
border: 1px solid gray;
|
||||
}
|
||||
p.caption {
|
||||
width: 500px;
|
||||
}
|
||||
</style>
|
||||
<script src="../lib/OpenLayers.js"></script>
|
||||
<script type="text/javascript">
|
||||
<!--
|
||||
OpenLayers.IMAGE_RELOAD_ATTEMPTS = 2;
|
||||
var map;
|
||||
window.onload = function() {
|
||||
options = {maxExtent: new OpenLayers.Bounds(-73.5295, 41.2318,
|
||||
-69.9097, 42.8883),
|
||||
maxResolution: 0.0003}
|
||||
map = new OpenLayers.Map('map', options);
|
||||
var roads15 = new OpenLayers.Layer.WMS( "Roads (15px gutter)",
|
||||
"http://boston.freemap.in/cgi-bin/mapserv?map=/www/freemap.in/boston/map/gmaps.map&",
|
||||
{layers: 'roads_200_40'},
|
||||
{gutter: 15});
|
||||
var roads = new OpenLayers.Layer.WMS( "Roads (no gutter)",
|
||||
"http://boston.freemap.in/cgi-bin/mapserv?map=/www/freemap.in/boston/map/gmaps.map&",
|
||||
{layers: 'roads_200_40'});
|
||||
map.addLayers([roads, roads15]);
|
||||
map.addControl(new OpenLayers.Control.LayerSwitcher());
|
||||
map.setCenter(new OpenLayers.LonLat(-71.848, 42.2), 0);
|
||||
}
|
||||
// -->
|
||||
</script>
|
||||
</head>
|
||||
<body>
|
||||
<h1>OpenLayers Gutter Example</h1>
|
||||
<div id="map"></div>
|
||||
<p class="caption">
|
||||
When you render tiles with certain types of symbols, there are artifacts
|
||||
at tile edges that make symbology not look continuous. In the center of
|
||||
the above map (when it first loads), the large orange road is split
|
||||
vertically by a tile. Open the layer switcher and change to the layer
|
||||
with a 15 pixel gutter to see how the symbology looks nicer.
|
||||
</p>
|
||||
|
||||
</body>
|
||||
</html>
|
||||
51
examples/image-layer.html
Normal file
@@ -0,0 +1,51 @@
|
||||
<html xmlns="http://www.w3.org/1999/xhtml">
|
||||
<head>
|
||||
<style type="text/css">
|
||||
p {
|
||||
width: 512px;
|
||||
}
|
||||
#map {
|
||||
width: 512px;
|
||||
height: 256px;
|
||||
border: 1px solid gray;
|
||||
}
|
||||
</style>
|
||||
<script src="../lib/OpenLayers.js"></script>
|
||||
<script type="text/javascript">
|
||||
<!--
|
||||
function init(){
|
||||
var map = new OpenLayers.Map('map');
|
||||
|
||||
var options = {maxResolution: 'auto', numZoomLevels: 3};
|
||||
|
||||
var graphic = new OpenLayers.Layer.Image(
|
||||
'City Lights',
|
||||
'http://earthtrends.wri.org/images/maps/4_m_citylights_lg.gif',
|
||||
new OpenLayers.Bounds(-180, -88.759, 180, 88.759),
|
||||
new OpenLayers.Size(580, 288),
|
||||
options);
|
||||
|
||||
var jpl_wms = new OpenLayers.Layer.WMS( "NASA Global Mosaic",
|
||||
"http://wms.jpl.nasa.gov/wms.cgi",
|
||||
{layers: "modis,global_mosaic"}, options);
|
||||
|
||||
map.addLayers([graphic, jpl_wms]);
|
||||
map.addControl(new OpenLayers.Control.LayerSwitcher());
|
||||
map.zoomToMaxExtent();
|
||||
}
|
||||
// -->
|
||||
</script>
|
||||
</head>
|
||||
<body onload="init()">
|
||||
<h1>OpenLayers Image Layer Example</h1>
|
||||
<div id="map"></div>
|
||||
<p>
|
||||
The "City Lights" layer above is created from a single web accessible
|
||||
image. If you construct it without any resolution related options,
|
||||
the layer will be given a single resolution based on the extent/size.
|
||||
Otherwise, it behaves much like a regular layer. This is primarily
|
||||
intended to be used in an overview map - where another layer type
|
||||
might not make a good overview.
|
||||
</p>
|
||||
</body>
|
||||
</html>
|
||||
39
examples/kamap.html
Normal file
@@ -0,0 +1,39 @@
|
||||
<html xmlns="http://www.w3.org/1999/xhtml">
|
||||
<head>
|
||||
<style type="text/css">
|
||||
#map {
|
||||
width: 800px;
|
||||
height: 475px;
|
||||
border: 1px solid black;
|
||||
}
|
||||
</style>
|
||||
<script src="../lib/OpenLayers.js"></script>
|
||||
<script type="text/javascript">
|
||||
<!--
|
||||
function init(){
|
||||
var map = new OpenLayers.Map('map');
|
||||
|
||||
var ol_wms = new OpenLayers.Layer.WMS( "World Map",
|
||||
"http://labs.metacarta.com/wms/vmap0?",
|
||||
{layers: 'basic'} );
|
||||
|
||||
var jpl_wms = new OpenLayers.Layer.KaMap( "Satellite",
|
||||
"http://www.openlayers.org/world/index.php", {g: "satellite", map: "world"});
|
||||
var dm_wms = new OpenLayers.Layer.WMS( "Canada",
|
||||
"http://www2.dmsolutions.ca/cgi-bin/mswms_gmap",
|
||||
{layers: "bathymetry,land_fn,park,drain_fn,drainage," +
|
||||
"prov_bound,fedlimit,rail,road,popplace",
|
||||
transparent: "true", format: "image/png" });
|
||||
|
||||
map.addLayers([ol_wms, jpl_wms, dm_wms]);
|
||||
map.addControl(new OpenLayers.Control.LayerSwitcher());
|
||||
map.zoomToMaxExtent();
|
||||
}
|
||||
// -->
|
||||
</script>
|
||||
</head>
|
||||
<body onload="init()">
|
||||
<h1>OpenLayers Example</h1>
|
||||
<div id="map"></div>
|
||||
</body>
|
||||
</html>
|
||||
508
examples/kamap.txt
Normal file
@@ -0,0 +1,508 @@
|
||||
<?php
|
||||
/*
|
||||
|
||||
This is a PHP file to be used as a backend for a ka-Map layer. It requires
|
||||
PHP with Mapscript and libgd modules installed. The top of the file
|
||||
is a configuration section: please edit the variables in this configuration
|
||||
section to meet your needs, then rename this file to tile.php or something
|
||||
similar and put it in a web accessible directory. More information
|
||||
on the OpenLayers ka-Map layer is available from:
|
||||
|
||||
http://trac.openlayers.org/wiki/OpenLayers.Layer.KaMap
|
||||
|
||||
*/
|
||||
/**********************************************************************
|
||||
*
|
||||
* $Id: tile.php,v 1.33 2006/02/07 03:19:55 pspencer Exp $
|
||||
*
|
||||
* purpose: a simple phpmapscript-based tile renderer that implements
|
||||
* rudimentary caching for reasonable efficiency. Note the
|
||||
* cache never shrinks in this version so your disk could
|
||||
* easily fill up!
|
||||
*
|
||||
* author: Paul Spencer (pspencer@dmsolutions.ca)
|
||||
*
|
||||
* modifications by Daniel Morissette (dmorissette@dmsolutions.ca)
|
||||
*
|
||||
* Modified by Christopher Schmidt for OpenLayers redistribution.
|
||||
*
|
||||
**********************************************************************
|
||||
*
|
||||
* Copyright (c) 2005, DM Solutions Group Inc.
|
||||
*
|
||||
* Permission is hereby granted, free of charge, to any person obtaining a
|
||||
* copy of this software and associated documentation files (the "Software"),
|
||||
* to deal in the Software without restriction, including without limitation
|
||||
* the rights to use, copy, modify, merge, publish, distribute, sublicense,
|
||||
* and/or sell copies of the Software, and to permit persons to whom the
|
||||
* Software is furnished to do so, subject to the following conditions:
|
||||
*
|
||||
* The above copyright notice and this permission notice shall be included
|
||||
* in all copies or substantial portions of the Software.
|
||||
*
|
||||
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
|
||||
* THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||
* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
|
||||
* FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
|
||||
* DEALINGS IN THE SOFTWARE.
|
||||
*
|
||||
**********************************************************************/
|
||||
|
||||
|
||||
/******************************************************************************
|
||||
* basic system configuration
|
||||
*
|
||||
* kaMap! uses PHP/MapScript and the PHP GD extension to
|
||||
* render tiles, and uses PHP/MapScript to generate initialization parameters
|
||||
* a legend, and a keymap from the selected map file.
|
||||
*
|
||||
* Make sure to set the correct module names for your PHP extensions.
|
||||
*
|
||||
* WINDOWS USERS: you will likely need to use php_gd2.dll instead of php_gd.dll
|
||||
*/
|
||||
$szPHPMapScriptModule = 'php_mapscript.'.PHP_SHLIB_SUFFIX;
|
||||
$szPHPGDModule = 'php_gd.'.PHP_SHLIB_SUFFIX;
|
||||
|
||||
/******************************************************************************
|
||||
* tile generation parameters
|
||||
*
|
||||
* kaMap! generates tiles to load in the client application by first rendering
|
||||
* larger areas from the map file and then slicing them up into smaller tiles.
|
||||
* This approach reduces the overhead of loading PHP/MapScript and PHP GD and
|
||||
* drawing the map file. These larger areas are referred to as metaTiles in
|
||||
* the code. You can set the size of both the small tiles and the metaTiles
|
||||
* here. A reasonable size for the small tiles seems to be 200 pixels square.
|
||||
* Smaller tiles seem to cause problems in client browsers by causing too many
|
||||
* images to be created and thus slowing performance of live dragging. Larger
|
||||
* tiles take longer to download to the client and are inefficient.
|
||||
*
|
||||
* The number of smaller tiles that form a metaTile can also be configured.
|
||||
* This parameter allows tuning of the tile generator to ensure optimal
|
||||
* performance and for label placement. MapServer will produce labels only
|
||||
* within a rendered area. If the area is too small then features may be
|
||||
* labelled multiple times. If the area is too large, it may exceed MapServer,s
|
||||
* maximum map size (by default 2000x2000) or be too resource-intensive on the
|
||||
* server, ultimately reducing performance.
|
||||
*/
|
||||
$tileWidth = 256;
|
||||
$tileHeight = 256;
|
||||
$metaWidth = 5;
|
||||
$metaHeight = 5;
|
||||
/* $metaBuffer = Buffer size in pixels to add around metatiles to avoid
|
||||
* rendering issues along the edge of the map image
|
||||
*/
|
||||
$metaBuffer = 10;
|
||||
|
||||
/******************************************************************************
|
||||
* in-image debugging information - tile location, outlines etc.
|
||||
* to use this, you need to remove images from your cache first. This also
|
||||
* affects the meta tiles - if debug is on, they are not deleted.
|
||||
*/
|
||||
$bDebug = false;
|
||||
|
||||
/******************************************************************************
|
||||
* aszMapFiles - an array of map files available to the application. How this
|
||||
* is used is determined by the application. Each map file is entered into
|
||||
* this array as a key->value pair.
|
||||
*
|
||||
* The key is the name to be used by the tile caching system to store cached
|
||||
* tiles within the base cache directory. This key should be a single word
|
||||
* that uniquely identifies the map.
|
||||
*
|
||||
* The value associated with each key is an array of three values. The first
|
||||
* value is a human-readable name to be presented to the user (should the
|
||||
* application choose to do so) and the second value is the path to the map
|
||||
* file. It is assumed that the map file is fully configured for use with
|
||||
* MapServer/MapScript as no error checking or setting of values is done. The
|
||||
* third value is an array of scale values for zooming.
|
||||
*/
|
||||
|
||||
$aszMapFiles = array(
|
||||
"world" => array( "World", "/path/to/your/mapfile",
|
||||
array( 10000 ), # in openlayers, the scale array doesn't matter.
|
||||
"PNG24")
|
||||
|
||||
/* Add more elements to this array to offer multiple mapfiles */
|
||||
|
||||
);
|
||||
|
||||
/******************************************************************************
|
||||
* figure out which map file to use and set up the necessary variables for
|
||||
* the rest of the code to use. This does need to be done on every page load
|
||||
* unfortunately.
|
||||
*
|
||||
* szMap should be set to the default map file to use but can change if
|
||||
* this script is called with map=<mapname>.
|
||||
*/
|
||||
$szMap = 'world';
|
||||
|
||||
/******************************************************************************
|
||||
* kaMap! caching
|
||||
*
|
||||
* this is the directory within which kaMap! will create its tile cache. The
|
||||
* directory does NOT have to be web-accessible, but it must be writable by the
|
||||
* web-server-user and allow creation of both directories AND files.
|
||||
*
|
||||
* the tile caching system will create a separate subdirectory within the base
|
||||
* cache directory for each map file. Within the cache directory for each map
|
||||
* file, directories will be created for each group of layers. Within the group
|
||||
* directories, directories will be created at each of the configured scales
|
||||
* for the application (see mapfile configuration above.)
|
||||
*/
|
||||
$szBaseCacheDir = "/var/cache/kamap/";
|
||||
|
||||
/***** END OF CONFIGURABLE STUFF - unless you know what you are doing *****/
|
||||
/***** *****/
|
||||
/***** *****/
|
||||
/***** *****/
|
||||
/***** END OF CONFIGURABLE STUFF - unless you know what you are doing *****/
|
||||
|
||||
if (isset($_REQUEST['map']) && isset($aszMapFiles[$_REQUEST['map']]))
|
||||
{
|
||||
$szMap = $_REQUEST['map'];
|
||||
}
|
||||
|
||||
$szMapCacheDir = $szBaseCacheDir.$szMap."/";
|
||||
$szMapName = $aszMapFiles[$szMap][0];
|
||||
$szMapFile = $aszMapFiles[$szMap][1];
|
||||
$anScales = $aszMapFiles[$szMap][2];
|
||||
setOutputFormat($aszMapFiles[$szMap][3]);
|
||||
/******************************************************************************
|
||||
* output format of the map and resulting tiles
|
||||
*
|
||||
* The output format used with MapServer can greatly affect appearance and
|
||||
* performance. It is recommended to use an 8 bit format such as PNG
|
||||
*
|
||||
* NOTE: the tile caching code in tile.php is not configurable here. It
|
||||
* currently assumes that it is outputting 8bit PNG files. If you change to
|
||||
* PNG24 here then you will need to update tile.php to use the gd function
|
||||
* imagecreatetruecolor. If you change the output format to jpeg then
|
||||
* you would need to change imagepng() to imagejpeg(). A nice enhancement
|
||||
* would be to make that fully configurable from here.
|
||||
*/
|
||||
function setOutputFormat($szFormat)
|
||||
{
|
||||
switch($szFormat) {
|
||||
case "PNG24":
|
||||
$GLOBALS['szMapImageFormat'] = 'PNG24'; //mapscript format name
|
||||
$GLOBALS['szMapImageCreateFunction'] = "imagecreatefrompng"; // appropriate GD function
|
||||
$GLOBALS['szImageExtension'] = '.png'; //file extension
|
||||
$GLOBALS['szImageCreateFunction'] = "imagecreatetruecolor"; //or imagecreatetruecolor if PNG24 ...
|
||||
$GLOBALS['szImageOutputFunction'] = "imagepng"; //or imagegif, imagejpeg ...
|
||||
$GLOBALS['szImageHeader'] = 'image/png'; //the content-type of the image
|
||||
break;
|
||||
case "GIF":
|
||||
$GLOBALS['szMapImageFormat'] = 'GIF'; //mapscript format name
|
||||
$GLOBALS['szMapImageCreateFunction'] = "imagecreatefromgif"; // appropriate GD function
|
||||
$GLOBALS['szImageExtension'] = '.gif'; //file extension
|
||||
$GLOBALS['szImageCreateFunction'] = "imagecreate"; //or imagecreatetruecolor if PNG24 ...
|
||||
$GLOBALS['szImageOutputFunction'] = "imagegif"; //or imagegif, imagejpeg ...
|
||||
$GLOBALS['szImageHeader'] = 'image/gif'; //the content-type of the image
|
||||
break;
|
||||
case "JPEG":
|
||||
$GLOBALS['szMapImageFormat'] = 'JPEG'; //mapscript format name
|
||||
$GLOBALS['szMapImageCreateFunction'] = "imagecreatefromjpeg"; // appropriate GD function
|
||||
$GLOBALS['szImageExtension'] = '.jpg'; //file extension
|
||||
$GLOBALS['szImageCreateFunction'] = "imagecreatetruecolor"; //or imagecreatetruecolor if PNG24 ...
|
||||
$GLOBALS['szImageOutputFunction'] = "imagejpeg"; //or imagegif, imagejpeg ...
|
||||
$GLOBALS['szImageHeader'] = 'image/jpeg'; //the content-type of the image
|
||||
break;
|
||||
case "PNG":
|
||||
$GLOBALS['szMapImageFormat'] = 'PNG'; //mapscript format name
|
||||
$GLOBALS['szMapImageCreateFunction'] = "imagecreatefrompng"; // appropriate GD function
|
||||
$GLOBALS['szImageExtension'] = '.png'; //file extension
|
||||
$GLOBALS['szImageCreateFunction'] = "imagecreate"; //or imagecreatetruecolor if PNG24 ...
|
||||
$GLOBALS['szImageOutputFunction'] = "imagepng"; //or imagegif, imagejpeg ...
|
||||
$GLOBALS['szImageHeader'] = 'image/png'; //the content-type of the image
|
||||
break;
|
||||
case "DITHERED":
|
||||
case "PNG8":
|
||||
$GLOBALS['szMapImageFormat'] = 'dithered';
|
||||
$GLOBALS['szMapImageCreateFunction'] = "imagecreatefrompng";
|
||||
$GLOBALS['szImageExtension'] = '.png';
|
||||
$GLOBALS['szImageCreateFunction'] = "imagecreate";
|
||||
$GLOBALS['szImageOutputFunction'] = "imagepng";
|
||||
$GLOBALS['szImageHeader'] = 'image/png';
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* create all directories in a directory tree - found on the php web site
|
||||
* under the mkdir function ...
|
||||
*/
|
||||
function makeDirs($strPath, $mode = 0775)
|
||||
{
|
||||
return is_dir($strPath) or ( makeDirs(dirname($strPath), $mode) and mkdir($strPath, $mode) );
|
||||
}
|
||||
|
||||
/**
|
||||
* This function replaces all special characters in the given string.
|
||||
*
|
||||
* @param szString string - The string to convert.
|
||||
*
|
||||
* @return string converted
|
||||
*/
|
||||
function normalizeString($szString)
|
||||
{
|
||||
// Normalize string by replacing all special characters
|
||||
// e.g. "http://my.host.com/cgi-bin/mywms?"
|
||||
// becomes "http___my_host_com_cgi_bin_mywms_"
|
||||
return preg_replace("/(\W)/", "_", $szString);
|
||||
}
|
||||
|
||||
/* bug 1253 - root permissions required to delete cached files */
|
||||
$orig_umask = umask(0);
|
||||
|
||||
/* create the main cache directory if necessary */
|
||||
if (!@is_dir($szMapCacheDir))
|
||||
makeDirs($szMapCacheDir);
|
||||
|
||||
/* get the various request parameters
|
||||
* also need to make sure inputs are clean, especially those used to
|
||||
* build paths and filenames
|
||||
*/
|
||||
/*
|
||||
* the tile renderer accepts several parameters and returns a tile image from
|
||||
* the cache, creating the tile only if necessary.
|
||||
*
|
||||
* all requests include the pixel location of the request at a certain scale
|
||||
* and this script figures out the geographic location of the tile from the
|
||||
* scale assuming that 0,0 in pixels is 0,0 in geographic units
|
||||
*
|
||||
* Request parameters are:
|
||||
*
|
||||
* map: the name of the map to use. This is handled by config.php.
|
||||
*
|
||||
* t: top pixel position
|
||||
* l: left pixel position
|
||||
* s: scale
|
||||
* g: (optional) comma-delimited list of group names to draw
|
||||
* layers: (optional) comma-delimited list of layers to draw
|
||||
* force: optional. If set, force redraw of the meta tile. This was added to
|
||||
* help with invalid images sometimes being generated.
|
||||
* tileid: (optional) can be used instead of t+l to specify the tile coord.,
|
||||
* useful in regenerating the cache
|
||||
*/
|
||||
|
||||
$top = isset( $_REQUEST['t'] ) ? intval($_REQUEST['t']) : 0;
|
||||
$left = isset( $_REQUEST['l'] ) ? intval($_REQUEST['l']) : 0;
|
||||
$scale = isset( $_REQUEST['s'] ) ? $_REQUEST['s'] : $anScales[0];
|
||||
$bForce = isset($_REQUEST['force'])? true : false;
|
||||
$groups = isset( $_REQUEST['g'] ) ? $_REQUEST['g'] : "";
|
||||
$layers = isset( $_REQUEST['layers'] ) ? $_REQUEST['layers'] : "";
|
||||
|
||||
// dynamic imageformat ----------------------------------------------
|
||||
//use the function in config.php to set the output format
|
||||
if (isset($_REQUEST['i']))
|
||||
setOutputFormat( $_REQUEST['i'] );
|
||||
//----------------------------------------------------------------
|
||||
|
||||
/* tileid=t#####l#### can be used instead of t+l parameters. Useful in
|
||||
* regenerating the cache for instance.
|
||||
*/
|
||||
if (isset( $_REQUEST['tileid']) &&
|
||||
preg_match("/t(-?\d+)l(-?\d+)/", $_REQUEST['tileid'], $aMatch) )
|
||||
{
|
||||
$top = intval($aMatch[1]);
|
||||
$left = intval($aMatch[2]);
|
||||
}
|
||||
|
||||
/* Calculate the metatile's top-left corner coordinates.
|
||||
* Include the $metaBuffer around the metatile to account for various
|
||||
* rendering issues happening around the edge of a map
|
||||
*/
|
||||
$metaLeft = floor( ($left)/($tileWidth*$metaWidth) ) * $tileWidth * $metaWidth;
|
||||
$metaTop = floor( ($top)/($tileHeight*$metaHeight) ) * $tileHeight *$metaHeight;
|
||||
$szMetaTileId = "t".$metaTop."l".$metaLeft;
|
||||
$metaLeft -= $metaBuffer;
|
||||
$metaTop -= $metaBuffer;
|
||||
|
||||
/* caching is done by scale value, then groups and layers and finally metatile
|
||||
* and tile id. Create a new directory if necessary
|
||||
*/
|
||||
$szGroupDir = $groups != "" ? normalizeString($groups) : "def";
|
||||
$szLayerDir = $layers != "" ? normalizeString($layers) : "def";
|
||||
|
||||
$szCacheDir = $szMapCacheDir."/".$scale."/".$szGroupDir."/".$szLayerDir."/".$szMetaTileId;
|
||||
if (!@is_dir($szCacheDir))
|
||||
makeDirs($szCacheDir);
|
||||
|
||||
/* resolve cache hit - clear the os stat cache if necessary */
|
||||
$szTileId = "t".$top."l".$left;
|
||||
$szCacheFile = $szCacheDir."/".$szTileId.$szImageExtension;
|
||||
clearstatcache();
|
||||
|
||||
$szMetaDir = $szCacheDir."/meta";
|
||||
if (!@is_Dir($szMetaDir))
|
||||
makeDirs($szMetaDir);
|
||||
|
||||
/* simple locking in case there are several requests for the same meta
|
||||
tile at the same time - only draw it once to help with performance */
|
||||
$szLockFile = $szMetaDir."/lock_".$metaTop."_".$metaLeft;
|
||||
$fpLockFile = fopen($szLockFile, "a+");
|
||||
clearstatcache();
|
||||
if (!file_exists($szCacheFile) || $bForce)
|
||||
{
|
||||
flock($fpLockFile, LOCK_EX);
|
||||
fwrite($fpLockFile, ".");
|
||||
|
||||
//check once more to see if the cache file was created while waiting for
|
||||
//the lock
|
||||
clearstatcache();
|
||||
if (!file_exists($szCacheFile) || $bForce)
|
||||
{
|
||||
if (!extension_loaded('MapScript'))
|
||||
{
|
||||
dl( $szPHPMapScriptModule );
|
||||
}
|
||||
if (!extension_loaded('gd'))
|
||||
{
|
||||
dl( $szPHPGDModule);
|
||||
}
|
||||
|
||||
if (!@is_Dir($szMetaDir))
|
||||
makeDirs($szMetaDir);
|
||||
|
||||
$oMap = ms_newMapObj($szMapFile);
|
||||
|
||||
/* Metatile width/height include 2x the metaBuffer value */
|
||||
$oMap->set('width', $tileWidth * $metaWidth + 2*$metaBuffer);
|
||||
$oMap->set('height', $tileHeight * $metaHeight + 2*$metaBuffer);
|
||||
|
||||
/* Tell MapServer to not render labels inside the metaBuffer area
|
||||
* (new in 4.6)
|
||||
* TODO: Until MapServer bugs 1353/1355 are resolved, we need to
|
||||
* pass a negative value for "labelcache_map_edge_buffer"
|
||||
*/
|
||||
$oMap->setMetadata("labelcache_map_edge_buffer", -$metaBuffer);
|
||||
|
||||
$inchesPerUnit = array(1, 12, 63360.0, 39.3701, 39370.1, 4374754);
|
||||
$geoWidth = $scale/($oMap->resolution*$inchesPerUnit[$oMap->units]);
|
||||
$geoHeight = $scale/($oMap->resolution*$inchesPerUnit[$oMap->units]);
|
||||
|
||||
/* draw the metatile */
|
||||
$minx = $metaLeft * $geoWidth;
|
||||
$maxx = $minx + $geoWidth * $oMap->width;
|
||||
$maxy = -1 * $metaTop * $geoHeight;
|
||||
$miny = $maxy - $geoHeight * $oMap->height;
|
||||
|
||||
$nLayers = $oMap->numlayers;
|
||||
$oMap->setExtent($minx,$miny,$maxx,$maxy);
|
||||
$oMap->selectOutputFormat( $szMapImageFormat );
|
||||
$aszLayers = array();
|
||||
if ($groups || $layers)
|
||||
{
|
||||
/* Draw only specified layers instead of default from mapfile*/
|
||||
if ($layers)
|
||||
{
|
||||
$aszLayers = explode(",", $layers);
|
||||
}
|
||||
|
||||
if ($groups)
|
||||
{
|
||||
$aszGroups = explode(",", $groups);
|
||||
}
|
||||
|
||||
for($i=0;$i<$nLayers;$i++)
|
||||
{
|
||||
$oLayer = $oMap->getLayer($i);
|
||||
if (($aszGroups && in_array($oLayer->group,$aszGroups)) ||
|
||||
($aszLayers && in_array($oLayer->name,$aszLayers)) ||
|
||||
($aszGroups && $oLayer->group == '' &&
|
||||
in_array( "__base__", $aszGroups)))
|
||||
{
|
||||
$oLayer->set("status", MS_ON );
|
||||
}
|
||||
else
|
||||
{
|
||||
$oLayer->set("status", MS_OFF );
|
||||
}
|
||||
}
|
||||
//need transparency if groups or layers are used
|
||||
$oMap->outputformat->set("transparent", MS_ON );
|
||||
}
|
||||
else
|
||||
{
|
||||
$oMap->outputformat->set("transparent", MS_OFF );
|
||||
}
|
||||
|
||||
|
||||
$szMetaImg = $szMetaDir."/t".$metaTop."l".$metaLeft.$szImageExtension;
|
||||
$oImg = $oMap->draw();
|
||||
$oImg->saveImage($szMetaImg);
|
||||
$oImg->free();
|
||||
eval("\$oGDImg = ".$szMapImageCreateFunction."('".$szMetaImg."');");
|
||||
if ($bDebug)
|
||||
{
|
||||
$blue = imagecolorallocate($oGDImg, 0, 0, 255);
|
||||
imagerectangle($oGDImg, 0, 0, $tileWidth * $metaWidth - 1, $tileHeight * $metaHeight - 1, $blue );
|
||||
}
|
||||
for($i=0;$i<$metaWidth;$i++)
|
||||
{
|
||||
for ($j=0;$j<$metaHeight;$j++)
|
||||
{
|
||||
eval("\$oTile = ".$szImageCreateFunction."( ".$tileWidth.",".$tileHeight." );");
|
||||
// Allocate BG color for the tile (in case the metatile has transparent BG)
|
||||
$nTransparent = imagecolorallocate($oTile, $oMap->imagecolor->red, $oMap->imagecolor->green, $oMap->imagecolor->blue);
|
||||
//if ($oMap->outputformat->transparent == MS_ON)
|
||||
//{
|
||||
imagecolortransparent( $oTile,$nTransparent);
|
||||
//}
|
||||
$tileTop = $j*$tileHeight + $metaBuffer;
|
||||
$tileLeft = $i*$tileWidth + $metaBuffer;
|
||||
imagecopy( $oTile, $oGDImg, 0, 0, $tileLeft, $tileTop, $tileWidth, $tileHeight );
|
||||
/* debugging stuff */
|
||||
if ($bDebug)
|
||||
{
|
||||
$black = imagecolorallocate($oTile, 1, 1, 1);
|
||||
$green = imagecolorallocate($oTile, 0, 128, 0 );
|
||||
$red = imagecolorallocate($oTile, 255, 0, 0);
|
||||
imagerectangle( $oTile, 1, 1, $tileWidth-2, $tileHeight-2, $green );
|
||||
imageline( $oTile, 0, $tileHeight/2, $tileWidth-1, $tileHeight/2, $red);
|
||||
imageline( $oTile, $tileWidth/2, 0, $tileWidth/2, $tileHeight-1, $red);
|
||||
imagestring ( $oTile, 3, 10, 10, ($metaLeft+$tileLeft)." x ".($metaTop+$tileTop), $black );
|
||||
imagestring ( $oTile, 3, 10, 30, ($minx+$i*$geoWidth)." x ".($maxy - $j*$geoHeight), $black );
|
||||
}
|
||||
$szTileImg = $szCacheDir."/t".($metaTop+$tileTop)."l".($metaLeft+$tileLeft).$szImageExtension;
|
||||
eval("$szImageOutputFunction( \$oTile, '".$szTileImg."' );");
|
||||
imagedestroy($oTile);
|
||||
$oTile = null;
|
||||
}
|
||||
}
|
||||
if ($oGDImg != null)
|
||||
{
|
||||
imagedestroy($oGDImg);
|
||||
$oGDImg = null;
|
||||
}
|
||||
if (!$bDebug)
|
||||
{
|
||||
unlink( $szMetaImg );
|
||||
}
|
||||
}
|
||||
//release the exclusive lock
|
||||
flock($fpLockFile, LOCK_UN );
|
||||
}
|
||||
|
||||
//acquire shared lock for reading to prevent a problem that could occur
|
||||
//if a tile exists but is only partially generated.
|
||||
flock($fpLockFile, LOCK_SH);
|
||||
|
||||
$h = fopen($szCacheFile, "r");
|
||||
header("Content-Type: ".$szImageHeader);
|
||||
header("Content-Length: " . filesize($szCacheFile));
|
||||
header("Expires: " . date( "D, d M Y H:i:s GMT", time() + 31536000 ));
|
||||
header("Cache-Control: max-age=31536000, must-revalidate" );
|
||||
fpassthru($h);
|
||||
fclose($h);
|
||||
|
||||
//release lock
|
||||
fclose($fpLockFile);
|
||||
|
||||
/* bug 1253 - root permissions required to delete cached files */
|
||||
umask($orig_umask);
|
||||
|
||||
exit;
|
||||
?>
|
||||
32
examples/kml-layer-linestring.html
Normal file
@@ -0,0 +1,32 @@
|
||||
<html xmlns="http://www.w3.org/1999/xhtml">
|
||||
<head>
|
||||
<style type="text/css">
|
||||
#map {
|
||||
width: 800px;
|
||||
height: 475px;
|
||||
border: 1px solid black;
|
||||
}
|
||||
</style>
|
||||
<script src="../lib/OpenLayers.js"></script>
|
||||
<script type="text/javascript">
|
||||
<!--
|
||||
var lon = 5;
|
||||
var lat = 40;
|
||||
var zoom = 5;
|
||||
var map, layer;
|
||||
|
||||
function init(){
|
||||
map = new OpenLayers.Map( $('map') );
|
||||
layer = new OpenLayers.Layer.WMS( "OpenLayers WMS",
|
||||
"http://labs.metacarta.com/wms/vmap0", {layers: 'basic'} );
|
||||
map.addLayer(layer);
|
||||
map.addLayer(new OpenLayers.Layer.GML("KML", "kml/lines.kml", {format: OpenLayers.Format.KML}));
|
||||
map.zoomToExtent(new OpenLayers.Bounds(-112.292744,36.068477,-112.22408,36.109246));
|
||||
}
|
||||
// -->
|
||||
</script>
|
||||
</head>
|
||||
<body onload="init()">
|
||||
<div id="map"></div>
|
||||
</body>
|
||||
</html>
|
||||
32
examples/kml-layer.html
Normal file
@@ -0,0 +1,32 @@
|
||||
<html xmlns="http://www.w3.org/1999/xhtml">
|
||||
<head>
|
||||
<style type="text/css">
|
||||
#map {
|
||||
width: 800px;
|
||||
height: 475px;
|
||||
border: 1px solid black;
|
||||
}
|
||||
</style>
|
||||
<script src="../lib/OpenLayers.js"></script>
|
||||
<script type="text/javascript">
|
||||
<!--
|
||||
var lon = 5;
|
||||
var lat = 40;
|
||||
var zoom = 5;
|
||||
var map, layer;
|
||||
|
||||
function init(){
|
||||
map = new OpenLayers.Map( $('map') );
|
||||
layer = new OpenLayers.Layer.WMS( "OpenLayers WMS",
|
||||
"http://labs.metacarta.com/wms/vmap0", {layers: 'basic'} );
|
||||
map.addLayer(layer);
|
||||
map.addLayer(new OpenLayers.Layer.GML("KML", "kml/mc-search.kml", {format: OpenLayers.Format.KML}));
|
||||
map.zoomToMaxExtent();
|
||||
}
|
||||
// -->
|
||||
</script>
|
||||
</head>
|
||||
<body onload="init()">
|
||||
<div id="map"></div>
|
||||
</body>
|
||||
</html>
|
||||
267
examples/kml/lines.kml
Normal file
@@ -0,0 +1,267 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<kml xmlns="http://earth.google.com/kml/2.0">
|
||||
<Document>
|
||||
<name>KML Samples</name>
|
||||
<open>1</open>
|
||||
<description>Unleash your creativity with the help of these examples!</description>
|
||||
<Style id="downArrowIcon">
|
||||
<IconStyle>
|
||||
<Icon>
|
||||
<href>http://maps.google.com/mapfiles/kml/pal4/icon28.png</href>
|
||||
</Icon>
|
||||
</IconStyle>
|
||||
</Style>
|
||||
<Style id="globeIcon">
|
||||
<IconStyle>
|
||||
<Icon>
|
||||
<href>http://maps.google.com/mapfiles/kml/pal3/icon19.png</href>
|
||||
</Icon>
|
||||
</IconStyle>
|
||||
<LineStyle>
|
||||
<width>2</width>
|
||||
</LineStyle>
|
||||
</Style>
|
||||
<Style id="transPurpleLineGreenPoly">
|
||||
<LineStyle>
|
||||
<color>7fff00ff</color>
|
||||
<width>4</width>
|
||||
</LineStyle>
|
||||
<PolyStyle>
|
||||
<color>7f00ff00</color>
|
||||
</PolyStyle>
|
||||
</Style>
|
||||
<Style id="yellowLineGreenPoly">
|
||||
<LineStyle>
|
||||
<color>7f00ffff</color>
|
||||
<width>4</width>
|
||||
</LineStyle>
|
||||
<PolyStyle>
|
||||
<color>7f00ff00</color>
|
||||
</PolyStyle>
|
||||
</Style>
|
||||
<Style id="thickBlackLine">
|
||||
<LineStyle>
|
||||
<color>87000000</color>
|
||||
<width>10</width>
|
||||
</LineStyle>
|
||||
</Style>
|
||||
<Style id="redLineBluePoly">
|
||||
<LineStyle>
|
||||
<color>ff0000ff</color>
|
||||
</LineStyle>
|
||||
<PolyStyle>
|
||||
<color>ffff0000</color>
|
||||
</PolyStyle>
|
||||
</Style>
|
||||
<Style id="blueLineRedPoly">
|
||||
<LineStyle>
|
||||
<color>ffff0000</color>
|
||||
</LineStyle>
|
||||
<PolyStyle>
|
||||
<color>ff0000ff</color>
|
||||
</PolyStyle>
|
||||
</Style>
|
||||
<Style id="transRedPoly">
|
||||
<LineStyle>
|
||||
<width>1.5</width>
|
||||
</LineStyle>
|
||||
<PolyStyle>
|
||||
<color>7d0000ff</color>
|
||||
</PolyStyle>
|
||||
</Style>
|
||||
<Style id="transBluePoly">
|
||||
<LineStyle>
|
||||
<width>1.5</width>
|
||||
</LineStyle>
|
||||
<PolyStyle>
|
||||
<color>7dff0000</color>
|
||||
</PolyStyle>
|
||||
</Style>
|
||||
<Style id="transGreenPoly">
|
||||
<LineStyle>
|
||||
<width>1.5</width>
|
||||
</LineStyle>
|
||||
<PolyStyle>
|
||||
<color>7d00ff00</color>
|
||||
</PolyStyle>
|
||||
</Style>
|
||||
<Style id="transYellowPoly">
|
||||
<LineStyle>
|
||||
<width>1.5</width>
|
||||
</LineStyle>
|
||||
<PolyStyle>
|
||||
<color>7d00ffff</color>
|
||||
</PolyStyle>
|
||||
</Style>
|
||||
<Style id="noDrivingDirections">
|
||||
<BalloonStyle>
|
||||
<text><![CDATA[
|
||||
<b>$[name]</b>
|
||||
<br /><br />
|
||||
$[description]
|
||||
]]></text>
|
||||
</BalloonStyle>
|
||||
</Style>
|
||||
<Folder>
|
||||
<name>Paths</name>
|
||||
<visibility>0</visibility>
|
||||
<description>Examples of paths. Note that the tessellate tag is by default
|
||||
set to 0. If you want to create tessellated lines, they must be authored
|
||||
(or edited) directly in KML.</description>
|
||||
<Placemark>
|
||||
<name>Tessellated</name>
|
||||
<visibility>0</visibility>
|
||||
<description><![CDATA[If the <tessellate> tag has a value of 1, the line will contour to the underlying terrain]]></description>
|
||||
<LookAt>
|
||||
<longitude>-112.0822680013139</longitude>
|
||||
<latitude>36.09825589333556</latitude>
|
||||
<altitude>0</altitude>
|
||||
<range>2889.145007690472</range>
|
||||
<tilt>62.04855796276328</tilt>
|
||||
<heading>103.8120432044965</heading>
|
||||
</LookAt>
|
||||
<LineString>
|
||||
<tessellate>1</tessellate>
|
||||
<coordinates> -112.0814237830345,36.10677870477137,0
|
||||
-112.0870267752693,36.0905099328766,0 </coordinates>
|
||||
</LineString>
|
||||
</Placemark>
|
||||
<Placemark>
|
||||
<name>Untessellated</name>
|
||||
<visibility>0</visibility>
|
||||
<description><![CDATA[If the <tessellate> tag has a value of 0, the line follow a simple straight-line path from point to point]]></description>
|
||||
<LookAt>
|
||||
<longitude>-112.0822680013139</longitude>
|
||||
<latitude>36.09825589333556</latitude>
|
||||
<altitude>0</altitude>
|
||||
<range>2889.145007690472</range>
|
||||
<tilt>62.04855796276328</tilt>
|
||||
<heading>103.8120432044965</heading>
|
||||
</LookAt>
|
||||
<LineString>
|
||||
<tessellate>0</tessellate>
|
||||
<coordinates> -112.080622229595,36.10673460007995,0
|
||||
-112.085242575315,36.09049598612422,0 </coordinates>
|
||||
</LineString>
|
||||
</Placemark>
|
||||
<Placemark>
|
||||
<name>Absolute</name>
|
||||
<visibility>0</visibility>
|
||||
<description>Transparent purple line</description>
|
||||
<LookAt>
|
||||
<longitude>-112.2719329043177</longitude>
|
||||
<latitude>36.08890633450894</latitude>
|
||||
<altitude>0</altitude>
|
||||
<range>2569.386744398339</range>
|
||||
<tilt>44.60763714063257</tilt>
|
||||
<heading>-106.8161545998597</heading>
|
||||
</LookAt>
|
||||
<styleUrl>#transPurpleLineGreenPoly</styleUrl>
|
||||
<LineString>
|
||||
<tessellate>1</tessellate>
|
||||
<altitudeMode>absolute</altitudeMode>
|
||||
<coordinates> -112.265654928602,36.09447672602546,2357
|
||||
-112.2660384528238,36.09342608838671,2357
|
||||
-112.2668139013453,36.09251058776881,2357
|
||||
-112.2677826834445,36.09189827357996,2357
|
||||
-112.2688557510952,36.0913137941187,2357
|
||||
-112.2694810717219,36.0903677207521,2357
|
||||
-112.2695268555611,36.08932171487285,2357
|
||||
-112.2690144567276,36.08850916060472,2357
|
||||
-112.2681528815339,36.08753813597956,2357
|
||||
-112.2670588176031,36.08682685262568,2357
|
||||
-112.2657374587321,36.08646312301303,2357 </coordinates>
|
||||
</LineString>
|
||||
</Placemark>
|
||||
<Placemark>
|
||||
<name>Absolute Extruded</name>
|
||||
<visibility>0</visibility>
|
||||
<description>Transparent green wall with yellow outlines</description>
|
||||
<LookAt>
|
||||
<longitude>-112.2643334742529</longitude>
|
||||
<latitude>36.08563154742419</latitude>
|
||||
<altitude>0</altitude>
|
||||
<range>4451.842204068102</range>
|
||||
<tilt>44.61038665812578</tilt>
|
||||
<heading>-125.7518698668815</heading>
|
||||
</LookAt>
|
||||
<styleUrl>#yellowLineGreenPoly</styleUrl>
|
||||
<LineString>
|
||||
<extrude>1</extrude>
|
||||
<tessellate>1</tessellate>
|
||||
<altitudeMode>absolute</altitudeMode>
|
||||
<coordinates> -112.2550785337791,36.07954952145647,2357
|
||||
-112.2549277039738,36.08117083492122,2357
|
||||
-112.2552505069063,36.08260761307279,2357
|
||||
-112.2564540158376,36.08395660588506,2357
|
||||
-112.2580238976449,36.08511401044813,2357
|
||||
-112.2595218489022,36.08584355239394,2357
|
||||
-112.2608216347552,36.08612634548589,2357
|
||||
-112.262073428656,36.08626019085147,2357
|
||||
-112.2633204928495,36.08621519860091,2357
|
||||
-112.2644963846444,36.08627897945274,2357
|
||||
-112.2656969554589,36.08649599090644,2357 </coordinates>
|
||||
</LineString>
|
||||
</Placemark>
|
||||
<Placemark>
|
||||
<name>Relative</name>
|
||||
<visibility>0</visibility>
|
||||
<description>Black line (10 pixels wide), height tracks terrain</description>
|
||||
<LookAt>
|
||||
<longitude>-112.2580438551384</longitude>
|
||||
<latitude>36.1072674824385</latitude>
|
||||
<altitude>0</altitude>
|
||||
<range>2927.61105910266</range>
|
||||
<tilt>44.61324882043339</tilt>
|
||||
<heading>4.947421249553717</heading>
|
||||
</LookAt>
|
||||
<styleUrl>#thickBlackLine</styleUrl>
|
||||
<LineString>
|
||||
<tessellate>1</tessellate>
|
||||
<altitudeMode>relativeToGround</altitudeMode>
|
||||
<coordinates> -112.2532845153347,36.09886943729116,645
|
||||
-112.2540466121145,36.09919570465255,645
|
||||
-112.254734666947,36.09984998366178,645
|
||||
-112.255493345654,36.10051310621746,645
|
||||
-112.2563157098468,36.10108441943419,645
|
||||
-112.2568033076439,36.10159722088088,645
|
||||
-112.257494011321,36.10204323542867,645
|
||||
-112.2584106072308,36.10229131995655,645
|
||||
-112.2596588987972,36.10240001286358,645
|
||||
-112.2610581199487,36.10213176873407,645
|
||||
-112.2626285262793,36.10157011437219,645 </coordinates>
|
||||
</LineString>
|
||||
</Placemark>
|
||||
<Placemark>
|
||||
<name>Relative Extruded</name>
|
||||
<visibility>0</visibility>
|
||||
<description>Opaque blue walls with red outline, height tracks terrain</description>
|
||||
<LookAt>
|
||||
<longitude>-112.2683594333433</longitude>
|
||||
<latitude>36.09884362144909</latitude>
|
||||
<altitude>0</altitude>
|
||||
<range>2184.193522571467</range>
|
||||
<tilt>44.60855445139561</tilt>
|
||||
<heading>-72.24271551768405</heading>
|
||||
</LookAt>
|
||||
<styleUrl>#redLineBluePoly</styleUrl>
|
||||
<LineString>
|
||||
<extrude>1</extrude>
|
||||
<tessellate>1</tessellate>
|
||||
<altitudeMode>relativeToGround</altitudeMode>
|
||||
<coordinates> -112.2656634181359,36.09445214722695,630
|
||||
-112.2652238941097,36.09520916122063,630
|
||||
-112.2645079986395,36.09580763864907,630
|
||||
-112.2638827428817,36.09628572284063,630
|
||||
-112.2635746835406,36.09679275951239,630
|
||||
-112.2635711822407,36.09740038871899,630
|
||||
-112.2640296531825,36.09804913435539,630
|
||||
-112.264327720538,36.09880337400301,630
|
||||
-112.2642436562271,36.09963644790288,630
|
||||
-112.2639148687042,36.10055381117246,630
|
||||
-112.2626894973474,36.10149062823369,630 </coordinates>
|
||||
</LineString>
|
||||
</Placemark>
|
||||
</Folder>
|
||||
</Document>
|
||||
</kml>
|
||||
332
examples/kml/mc-search.kml
Normal file
@@ -0,0 +1,332 @@
|
||||
<?xml version="1.0" encoding="iso-8859-1"?>
|
||||
<kml xmlns="http://earth.google.com/kml/2.0">
|
||||
<Document>
|
||||
<!--MetaCarta GTS v3.7.0, KML Search API v1.0.0-->
|
||||
<name><![CDATA[MetaCarta: ]]></name>
|
||||
<description><![CDATA[Labeling <b>28</b> locations. Of 27,281,538 total documents, <b>~26,900,000</b> documents match <i><no keywords></i> in this region.]]></description>
|
||||
<visibility>1</visibility>
|
||||
<LookAt>
|
||||
<longitude>-82.575000</longitude>
|
||||
<latitude>27.498610</latitude>
|
||||
<range>6000000.0</range>
|
||||
<tilt>0.0</tilt>
|
||||
<heading>0.0</heading>
|
||||
</LookAt>
|
||||
<Style id="rel1.0">
|
||||
<IconStyle>
|
||||
<Icon>
|
||||
<href>http://developers.metacarta.com/img/symbols/mc1.0.png</href>
|
||||
</Icon>
|
||||
</IconStyle>
|
||||
</Style>
|
||||
<Style id="rel0.9">
|
||||
<IconStyle>
|
||||
<Icon>
|
||||
<href>http://developers.metacarta.com/img/symbols/mc0.9.png</href>
|
||||
</Icon>
|
||||
</IconStyle>
|
||||
</Style>
|
||||
<Style id="rel0.8">
|
||||
<IconStyle>
|
||||
<Icon>
|
||||
<href>http://developers.metacarta.com/img/symbols/mc0.8.png</href>
|
||||
</Icon>
|
||||
</IconStyle>
|
||||
</Style>
|
||||
<Style id="rel0.7">
|
||||
<IconStyle>
|
||||
<Icon>
|
||||
<href>http://developers.metacarta.com/img/symbols/mc0.7.png</href>
|
||||
</Icon>
|
||||
</IconStyle>
|
||||
</Style>
|
||||
<Style id="rel0.6">
|
||||
<IconStyle>
|
||||
<Icon>
|
||||
<href>http://developers.metacarta.com/img/symbols/mc0.6.png</href>
|
||||
</Icon>
|
||||
</IconStyle>
|
||||
</Style>
|
||||
<Style id="rel0.5">
|
||||
<IconStyle>
|
||||
<Icon>
|
||||
<href>http://developers.metacarta.com/img/symbols/mc0.5.png</href>
|
||||
</Icon>
|
||||
</IconStyle>
|
||||
</Style>
|
||||
<Style id="rel0.4">
|
||||
<IconStyle>
|
||||
<Icon>
|
||||
<href>http://developers.metacarta.com/img/symbols/mc0.4.png</href>
|
||||
</Icon>
|
||||
</IconStyle>
|
||||
</Style>
|
||||
<Style id="rel0.3">
|
||||
<IconStyle>
|
||||
<Icon>
|
||||
<href>http://developers.metacarta.com/img/symbols/mc0.3.png</href>
|
||||
</Icon>
|
||||
</IconStyle>
|
||||
</Style>
|
||||
<Style id="rel0.2">
|
||||
<IconStyle>
|
||||
<Icon>
|
||||
<href>http://developers.metacarta.com/img/symbols/mc0.2.png</href>
|
||||
</Icon>
|
||||
</IconStyle>
|
||||
</Style>
|
||||
<Style id="rel0.1">
|
||||
<IconStyle>
|
||||
<Icon>
|
||||
<href>http://developers.metacarta.com/img/symbols/mc0.1.png</href>
|
||||
</Icon>
|
||||
</IconStyle>
|
||||
</Style>
|
||||
<Style id="rel0.0">
|
||||
<IconStyle>
|
||||
<Icon>
|
||||
<href>http://developers.metacarta.com/img/symbols/mc0.0.png</href>
|
||||
</Icon>
|
||||
</IconStyle>
|
||||
</Style>
|
||||
|
||||
<Placemark>
|
||||
<!-- OGM5MmVhYTI3MTRkNzY2NDQ5YzgzMjBkYzQ3M2Q1YzYsaWJlcnVzLm1ldGFjYXJ0YS5jb206MTYwNzBfMTE2MzYyMjk0MV8xMTcyNjg1ODk5XzAwOjE4OjhiOjM4OjM2OjQ3LDE2NjI2ODQ=, 0.959452 -->
|
||||
<name><![CDATA[Bradenton]]></name>
|
||||
<description><![CDATA[<a href="http://www.fhp.state.fl.us/html/TroopF/Bradenton.html">FHP: Troop F Bradenton District</a><br>FHP: Troop F <font color="red">Bradenton</font> District Bradento<br>FHP: Troop F Bradenton District Bradenton District The Bradenton District is located at Troop F Headquarters and includes all of Manatee County. The Bradenton District ...<br><br>]]></description>
|
||||
<styleUrl>#rel1.0</styleUrl>
|
||||
<Point>
|
||||
<coordinates>-82.575000, 27.498610</coordinates>
|
||||
</Point>
|
||||
</Placemark><Placemark>
|
||||
<!-- N2M0OTk4NzMxMWFjOGQ1MzgwY2NmNzBlOWIzODg3OGYsdW1icm86MTYxMzlfMTE2OTg0MDM4MV8xMTY5ODQ1MDQ5XzAwOjE4OjhiOjNhOjcwOmZkLDE4NTQzNw==, 0.959452 -->
|
||||
<name><![CDATA[Pezinok]]></name>
|
||||
<description><![CDATA[<a href="http://en.wikipedia.org/wiki/Pezinok"> Pezinok</a><br><font color="red">Pezinok</font> Coor titl<br>Pezinok Coor title dm4616N1716Etype:cityregion:SK Infobox Slovak town image_coat_of_arms subject_name Pezinok slovak_region Bratislava Region slovak_district ...<br><br>]]></description>
|
||||
<styleUrl>#rel1.0</styleUrl>
|
||||
<Point>
|
||||
<coordinates>17.266666, 48.283333</coordinates>
|
||||
</Point>
|
||||
</Placemark><Placemark>
|
||||
<!-- MzE1OWQ0MTUwNTUzOGQxODBiNGYwZjU3MThmYzMwY2IsanVsaWEubWV0YWNhcnRhLmNvbToxNjAzNl8xMTYzNjM0MjI4XzExNjU5Nzk3MTVfMDA6MTg6OGI6MzU6MDA6ZGMsNzQ3MzQ2, 0.959452 -->
|
||||
<name><![CDATA[Purcellville]]></name>
|
||||
<description><![CDATA[<a href="http://www.loudoun.gov:80/compplan/purcellville.htm">Purcellville Urban Growth Area Management Plan</a><br><font color="red">Purcellville</font> Urban Growth Are<br>Purcellville Urban Growth Area Management Plan Skip Navigation Purcellville Urban Growth Area Management Plan Welcome to the Purcellville Urban Growth Area Management ...<br><br>]]></description>
|
||||
<styleUrl>#rel1.0</styleUrl>
|
||||
<Point>
|
||||
<coordinates>-77.715000, 39.136670</coordinates>
|
||||
</Point>
|
||||
</Placemark><Placemark>
|
||||
<!-- N2UxY2EwYzY0YzBhMTAzNTg1NWFkY2YzZWU2NjdhZWIsa3VwYS5tZXRhY2FydGEuY29tOjE2MDAxXzExNjM2NjM1MjRfMTE2NzM0NjY3NF8wMDoxODo4YjozODozNjo3OSw5MzY1NDI=, 0.958984 -->
|
||||
<name><![CDATA[Calaveras County]]></name>
|
||||
<description><![CDATA[<a href="http://www.co.calaveras.ca.us:80/departments/pub_health/PHD_WNV.html">Calaveras County Public Health</a><br><font color="red">Calaveras County</font> Public Healt<br>Calaveras County Public Health County of Calaveras Public Health Department West Nile Virus (WNV) WNV is a disease that is spread to ...<br><br>]]></description>
|
||||
<styleUrl>#rel1.0</styleUrl>
|
||||
<Point>
|
||||
<coordinates>-120.583330, 38.166670</coordinates>
|
||||
</Point>
|
||||
</Placemark><Placemark>
|
||||
<!-- ZWFhZDJkYTk0MmNlMWU4Yzc1OWViODIyYzU5ZGE4ZDcsdW1icm86MTYxNDFfMTE2OTg0ODM4M18xMTY5ODUxMDgxXzAwOjE4OjhiOjNhOjcwOmZkLDUxNTIw, 0.958964 -->
|
||||
<name><![CDATA[Kolkata]]></name>
|
||||
<description><![CDATA[<a href="http://en.wikipedia.org/wiki/Kolkata_Film_Festival"> Kolkata Film Festival</a><br><font color="red">Kolkata</font> Film Festiva<br>Kolkata Film Festival '''Kolkata Film Festival''' is an annual international film festival held in Kolkata in the Indian state of West Bengal ...<br><br>]]></description>
|
||||
<styleUrl>#rel1.0</styleUrl>
|
||||
<Point>
|
||||
<coordinates>88.369722, 22.569722</coordinates>
|
||||
</Point>
|
||||
</Placemark><Placemark>
|
||||
<!-- ZDhiYjJhNTZlNmM1ZGU4YjAzOWZiNTc5NzAxM2RlNWYsaWJlcnVzLm1ldGFjYXJ0YS5jb206MTYwNzJfMTE2MzY4NTU2MV8xMTcyNjg1OTAyXzAwOjE4OjhiOjM4OjM2OjQ3LDk2NTMxOA==, 0.958964
|
||||
ZDEwNjIwYTdjMjc2MmM4MDQ3NWNjYTY0ZWVjZDI4MjAsaWJlcnVzLm1ldGFjYXJ0YS5jb206MTYwNzBfMTE2MzYyMjk0MV8xMTcyNjg1ODk5XzAwOjE4OjhiOjM4OjM2OjQ3LDMwNTU0OQ==, 0.958475
|
||||
YmVjMjRjZTYxZDJhYjMyYTE3MjY0YzNkNTg4ODMyYzIsa3VwYS5tZXRhY2FydGEuY29tOjE2MDAwXzExNjM2MzI4MDhfMTE2NzM0NjY3Ml8wMDoxODo4YjozODozNjo3OSw4ODg2Mw==, 0.958475 -->
|
||||
<name><![CDATA[South Yorkshire]]></name>
|
||||
<description><![CDATA[<a href="http://www.southyorkshire.nhs.uk:80/strategy/index.htm">South Yorkshire Strategic Health Authority - Events - Deliver...</a><br><font color="red">South Yorkshire</font> Strategic Healt<br>South Yorkshire Strategic Health Authority - Events - Delivering Excellence event 12th June 2003 Welcome What's new Local services Performance --> Strategy Service redesign ...<br><br><a href="http://www.southyorkshire.nhs.uk:80/">South Yorkshire Strategic Health Authority - Welcome</a><br><font color="red">South Yorkshire</font> Strategic Healt<br>South Yorkshire Strategic Health Authority - Welcome --> Welcome What's new Local services Performance --> Strategy Service redesign Franchise plan Local delivery plan Structure ...<br><br><a href="http://www.southyorkshire.nhs.uk:80/index.html">South Yorkshire Strategic Health Authority - Welcome</a><br><font color="red">South Yorkshire</font> Strategic Healt<br>South Yorkshire Strategic Health Authority - Welcome --> Welcome What's new Local services Performance --> Strategy Service redesign Franchise plan Local delivery plan Structure ...<br><br>]]></description>
|
||||
<styleUrl>#rel1.0</styleUrl>
|
||||
<Point>
|
||||
<coordinates>-1.250000, 53.450000</coordinates>
|
||||
</Point>
|
||||
</Placemark><Placemark>
|
||||
<!-- MWE4NWQ2N2U4ZmI3MDk5MjNiNmJlYzE4NzMxOTdhOTIsanVsaWEubWV0YWNhcnRhLmNvbToxNjUyNF8xMTY5ODQzMzQ1XzExNjk4NDg2OTRfMDA6MTg6OGI6MzU6MDA6ZGMsNTI1OTcx, 0.958964
|
||||
ZDZjY2I2Mjk2OTNmMmVjMGJhMzY1NTIyMGEzZGZjYTQsanVsaWEubWV0YWNhcnRhLmNvbToxNjUwMl8xMTY5ODMwMDU5XzExNjk4MzU0MThfMDA6MTg6OGI6MzU6MDA6ZGMsMjMwNjQw, 0.958475 -->
|
||||
<name><![CDATA[Gaithersburg]]></name>
|
||||
<description><![CDATA[<a href="http://alert.gaithersburgmd.gov/faq.php">Frequently Asked Questions</a><br>What is Alert <font color="red">Gaithersburg</font>? What is an Aler<br>... email address password Lost password? Gaithersburg Home Alert Home New User Learn More FAQ Support Frequently Asked Questions What is Alert Gaithersburg? What is an Alert Gaithersburg account? How does Alert Gaithersburg work? Will my cell phone work? What is text messaging and ...<br><br><a href="http://alert.gaithersburgmd.gov/index.php?CCheck=1">Alert Gaithersburg</a><br>Alert <font color="red">Gaithersburg</font> USER LOGIN emai<br>Alert Gaithersburg USER LOGIN email address password Lost password? Gaithersburg Home Alert Home New User Learn More FAQ Support This application requires Javascript ...<br><br>]]></description>
|
||||
<styleUrl>#rel1.0</styleUrl>
|
||||
<Point>
|
||||
<coordinates>-77.201670, 39.143330</coordinates>
|
||||
</Point>
|
||||
</Placemark><Placemark>
|
||||
<!-- ZjQ4MDJjN2FiNzMxNjk3NzNkN2ZhNDQzZDk5OTkxYTgsaWJlcnVzLm1ldGFjYXJ0YS5jb206MTYwNzJfMTE2MzY4NTU2MV8xMTcyNjg1OTAyXzAwOjE4OjhiOjM4OjM2OjQ3LDU4OTU1Mw==, 0.958964 -->
|
||||
<name><![CDATA[Pocatello]]></name>
|
||||
<description><![CDATA[<a href="http://www.idahoparks.org/about/permits/bannock_ski.html">Bannock</a><br>Cycle 404 S Arthur <font color="red">Pocatello</font> 232.3711 City o<br>Bannock Bannock County Gateway Cycle 404 S Arthur Pocatello 232.3711 City of Pocatello 902 Sherman St Pocatello 234.6237 ISU Outdoor Program Student Union Bldg Pocatello 236.3912 The ...<br><br>]]></description>
|
||||
<styleUrl>#rel1.0</styleUrl>
|
||||
<Point>
|
||||
<coordinates>-112.444720, 42.871390</coordinates>
|
||||
</Point>
|
||||
</Placemark><Placemark>
|
||||
<!-- MjY4NTdkZmI2NWU3YjFiNGY3MzExZTY5N2FlYTVhMGYsaWJlcnVzLm1ldGFjYXJ0YS5jb206MTYwNzNfMTE2MzY5OTA3OF8xMTcyNjg1OTAyXzAwOjE4OjhiOjM4OjM2OjQ3LDMwNjE2, 0.958964 -->
|
||||
<name><![CDATA[le Cambodge]]></name>
|
||||
<description><![CDATA[<a href="http://www.who.int/www.who.int/mediacentre/news/releases/2004/pr46/fr/index.html">OMS | Avec 75 % des enfants protA<74>gA<67>s contre les parasites, ...</a><br>les parasites, <font color="red">le Cambodge</font> est le premier pay<br>OMS | Avec 75 % des enfants protA<74>gA<67>s contre les parasites, le Cambodge est le premier pays A<> atteindre l'objectif Ensemble de l'OMS Ce site seulement Page d'accueil OMS Pays ...<br><br>]]></description>
|
||||
<styleUrl>#rel1.0</styleUrl>
|
||||
<Point>
|
||||
<coordinates>105.000000, 13.000000</coordinates>
|
||||
</Point>
|
||||
</Placemark><Placemark>
|
||||
<!-- N2Y2NTdhYmM5MzExOTgwZDc1ODFiZTk2MDMyZmMxN2UsanVsaWEubWV0YWNhcnRhLmNvbToxNjQ5MV8xMTY5ODIzMzkxXzExNjk4MjkyMDJfMDA6MTg6OGI6MzU6MDA6ZGMsNDIyNTIw, 0.958964 -->
|
||||
<name><![CDATA[firenze]]></name>
|
||||
<description><![CDATA[<a href="http://groups.google.it:80/group/italia.firenze.discussioni/browse_thread/thread/39c8b8700af2691b/b53d680269651f65#b53d680269651f65">Google Gruppi : italia.firenze.discussioni</a><br>Gruppi : italia.<font color="red">firenze</font>.discussioni Hom<br>Google Gruppi : italia.firenze.discussioni Home page di Gruppi | Guida | Entra Web Immagini Gruppi Directory News altro <20> Ricerca avanzata nei Gruppi Preferenze Membri: Entra ...<br><br>]]></description>
|
||||
<styleUrl>#rel1.0</styleUrl>
|
||||
<Point>
|
||||
<coordinates>11.250000, 43.766666</coordinates>
|
||||
</Point>
|
||||
</Placemark><Placemark>
|
||||
<!-- YTU5NzdlYmNkNmUzYWM4MTQzODY4MjFiMmQ5OWQzMzIsanVsaWEubWV0YWNhcnRhLmNvbToxNjUxM18xMTY5ODM2NjAxXzExNjk4NDIzNzZfMDA6MTg6OGI6MzU6MDA6ZGMsNDU2NjYz, 0.958475
|
||||
ZDNlZTdjNTM1OTRhOTk5MDUyMjAzNzIwMGMxNGQ3NWMsa3VwYS5tZXRhY2FydGEuY29tOjE2MDE1XzExNjQ1MTMzODRfMTE2NzM0NjY3NV8wMDoxODo4YjozODozNjo3OSwyOTgyOTU=, 0.958964
|
||||
MDVhNjNkMGUxMzZlODMwNGRjNTViZGJhOTdiYWRmZjksanVsaWEubWV0YWNhcnRhLmNvbToxNjAzNl8xMTYzNjM0MjI4XzExNjU5Nzk3MTVfMDA6MTg6OGI6MzU6MDA6ZGMsMzk5MzY3, 0.958475
|
||||
OWEwOTE2NWYyZGM1ZDkwNTI3MWE0YzBhNjI3MTdlODUsa3VwYS5tZXRhY2FydGEuY29tOjE2MDAxXzExNjM2NjM1MjRfMTE2NzM0NjY3NF8wMDoxODo4YjozODozNjo3OSw1MTY4MjU=, 0.958475
|
||||
MDEwNmJhOTFlMGFhM2Q0OTUxYmUxNTRlZTU4MjViYjEsa3VwYS5tZXRhY2FydGEuY29tOjE2MDAxXzExNjM2NjM1MjRfMTE2NzM0NjY3NF8wMDoxODo4YjozODozNjo3OSw1MjI4MTk=, 0.958475
|
||||
Zjk1MzY0ZmQ0OTc5ODgwOTQ1MWVjYzM3ZTEzYjFhYTEsa3VwYS5tZXRhY2FydGEuY29tOjE2MDAxXzExNjM2NjM1MjRfMTE2NzM0NjY3NF8wMDoxODo4YjozODozNjo3OSw0Njc3OTE=, 0.958475
|
||||
YjZmZWIzZTc5MGI5N2MwM2MyYTE5ZWM1NDk1MTdmZDUsanVsaWEubWV0YWNhcnRhLmNvbToxNjUwMl8xMTY5ODMwMDU5XzExNjk4MzU0MThfMDA6MTg6OGI6MzU6MDA6ZGMsMTkxMDcx, 0.958964 -->
|
||||
<name><![CDATA[Fairfax County]]></name>
|
||||
<description><![CDATA[<a href="http://www.fairfaxcounty.gov:80/demogrph/emplbut.htm">Employment Statistics & Information - Fairfax County, Virginia</a><br>Information - <font color="red">Fairfax County</font>, Virginia Busines<br>Employment Statistics & Information - Fairfax County, Virginia Business & Nonresidential Gross Floor Area Census Information & Other Government Agencies Economic Information Employment Information General Overview Glossary Housing Immigration ...<br><br><a href="http://www.fairfaxcounty.gov:80/contact/search.asp">Search Fairfax County Contacts - Fairfax County, Virginia</a><br>Search <font color="red">Fairfax County</font> Contacts - Fairfa<br>Search Fairfax County Contacts - Fairfax County, Virginia Search Fairfax County Contacts you are here : homepage > fairfax county contacts To search for an agency ...<br><br><a href="http://www.fairfaxcounty.gov:80/demogrph/othrbut.htm">Other Information - Fairfax County, Virginia</a><br>Information - <font color="red">Fairfax County</font>, Virginia Averag<br>Other Information - Fairfax County, Virginia Average Household Size Health Insurance Age Distribution Persons Speaking Languages Other than English Prior Place of Residence Educational Attainment ...<br><br><a href="http://www.fairfaxcounty.gov:80/demogrph/housebut.htm">Housing Information - Fairfax County, Virginia</a><br>Information - <font color="red">Fairfax County</font>, Virginia Busines<br>Housing Information - Fairfax County, Virginia Business & Nonresidential Gross Floor Area Census Information & Other Government Agencies Economic Information Employment Information General Overview Glossary Housing Immigration ...<br><br><a href="http://www.fairfaxcounty.gov:80/demogrph/popbut.htm">Population Information - Fairfax County, Virginia</a><br>Information - <font color="red">Fairfax County</font>, Virginia Busines<br>Population Information - Fairfax County, Virginia Business & Nonresidential Gross Floor Area Census Information & Other Government Agencies Economic Information Employment Information General Overview Glossary Housing Immigration ...<br><br><a href="http://www.fairfaxcounty.gov:80/business/services/">Business Services and Resources - Doing Business - Fairfax Co...</a><br>Doing Business - <font color="red">Fairfax County</font>, Virginia Busines<br>Business Services and Resources - Doing Business - Fairfax County, Virginia Business Services & Resources you are here : homepage > doing business > business services and resources Fairfax County has a diverse and ...<br><br><a href="http://www.fairfaxcounty.gov/contact/search.asp">Search Fairfax County Contacts - Fairfax County, Virginia</a><br>Search <font color="red">Fairfax County</font> Contacts - Fairfa<br>Search Fairfax County Contacts - Fairfax County, Virginia Search Fairfax County Contacts you are here : homepage > fairfax county contacts To search for an agency ...<br><br>]]></description>
|
||||
<styleUrl>#rel1.0</styleUrl>
|
||||
<Point>
|
||||
<coordinates>-77.350000, 38.850000</coordinates>
|
||||
</Point>
|
||||
</Placemark><Placemark>
|
||||
<!-- Mjg2NGM5N2YzNmYyNGFlZmQ0ZjE5N2Y4ZDBmNzFkMzIscGxhdmlzLm1ldGFjYXJ0YS5jb206MTY2NzNfMTE3MzU3NTg2MF8xMTczNTc4MTgwXzAwOjE4OjhiOjNhOjNkOjQwLDIyODM5NA==, 0.958964 -->
|
||||
<name><![CDATA[Nassau Bahamas]]></name>
|
||||
<description><![CDATA[<a href="http://topix.net/r/05j525XYQmo8VlBBUPUWa9G9bOa4kVTdx1LNqTqvWxejdQKhnOECcVfVuSMlxL3OXjYCfywPCSSyfl9UdTX6h1yipv285=2Fc6S3ylpt=2BXwfI1uhZS8L=2BM4gKSAUReNk868Hwh3guBbo1qfQ0=2B3LQrtt7d7LDiFk3qO1TN1RWjhlpU=3D">Nassau Bahamas Vacation <20> Crawfish Production Declines In The...</a><br><font color="red">Nassau Bahamas</font> Vacation <20> Crawfis<br>Nassau Bahamas Vacation <20> Crawfish Production Declines In The Bahamas Nassau Bahamas Vacation Crawfish Production Declines In The Bahamas June 15, 2006 ...<br><br>]]></description>
|
||||
<styleUrl>#rel1.0</styleUrl>
|
||||
<Point>
|
||||
<coordinates>-77.350000, 25.083333</coordinates>
|
||||
</Point>
|
||||
</Placemark><Placemark>
|
||||
<!-- OWNkOGUyZGEyNGJiODcxYWVmODUwMWE0MzcwY2MxMzksZWxiZS5tZXRhY2FydGEuY29tOjE2MDYzXzExNzI3ODU1NDNfMTE3Mjc5MzIyOF8wMDoxODo4YjozNzpmZDo1YSwxMzI1ODU=, 0.958964 -->
|
||||
<name><![CDATA[Front Royal]]></name>
|
||||
<description><![CDATA[<a href="https://yosemite.epa.gov/opei/ptrack.nsf/vRenewalViewPrintView/B72E7B83510A37AC8525718E0051F7C3">Membership Renewal Print/View</a><br>Application DuPont <font color="red">Front Royal</font> E.I. Du Pont d<br>Membership Renewal Print/View OMB No. 2010-0032 Expiration Date 08/30/06 Performance Track Membership Renewal Application DuPont Front Royal E.I. Du Pont de Nemours and Company, Inc. Member since 2002 A030029 Facility Contact    Name: Mr. James ...<br><br>]]></description>
|
||||
<styleUrl>#rel1.0</styleUrl>
|
||||
<Point>
|
||||
<coordinates>-78.194720, 38.918060</coordinates>
|
||||
</Point>
|
||||
</Placemark><Placemark>
|
||||
<!-- NTNjNzZkNWY4NzNmY2JlNTY2ZGRjNTRiYjU3N2IwNDEsanVsaWEubWV0YWNhcnRhLmNvbToxNjAzNl8xMTYzNjM0MjI4XzExNjU5Nzk3MTVfMDA6MTg6OGI6MzU6MDA6ZGMsMTU5MDI1, 0.957987
|
||||
N2FjZGY0YzM2ZTU4NzE1Y2Q2MGVmNmQ0ZjZkYjI3MjUsanVsaWEubWV0YWNhcnRhLmNvbToxNjAzNl8xMTYzNjM0MjI4XzExNjU5Nzk3MTVfMDA6MTg6OGI6MzU6MDA6ZGMsMzM2MTAz, 0.958475 -->
|
||||
<name><![CDATA[WESTCHESTER COUNTY]]></name>
|
||||
<description><![CDATA[<a href="http://schumer.senate.gov:80/SchumerWebsite/pressroom/press_releases/PR01140.html">SCHUMER, CLINTON SECURE $1.5 MILLION FOR NEW BUSES IN WESTCHE...</a><br>FOR NEW BUSES IN <font color="red">WESTCHESTER COUNTY</font> TOPICS Latest New<br>SCHUMER, CLINTON SECURE $1.5 MILLION FOR NEW BUSES IN WESTCHESTER COUNTY TOPICS Latest News Press Release Archive Special Reports Photo Downloads Schumer Around NY About Chuck | Senate Floor | Press Room | Services ...<br><br><a href="http://schumer.senate.gov:80/SchumerWebsite/pressroom/press_releases/PR01996.html">SCHUMER, CLINTON SECURE $3 MILLION FOR NEW BUSES IN WESTCHEST...</a><br>FOR NEW BUSES IN <font color="red">WESTCHESTER COUNTY</font> TOPICS Latest New<br>SCHUMER, CLINTON SECURE $3 MILLION FOR NEW BUSES IN WESTCHESTER COUNTY TOPICS Latest News Press Release Archive Special Reports Photo Downloads Schumer Around NY About Chuck | Senate Floor | Press Room | Services ...<br><br>]]></description>
|
||||
<styleUrl>#rel1.0</styleUrl>
|
||||
<Point>
|
||||
<coordinates>-73.800000, 41.116670</coordinates>
|
||||
</Point>
|
||||
</Placemark><Placemark>
|
||||
<!-- ZWQwMTUwYjI4N2ZlZTg4MmI4N2EyZTU5YjU1ZjlkMjMsa3VwYS5tZXRhY2FydGEuY29tOjE2OTI0XzExNzM1NzA1NzBfMTE3MzU3NTk0Nl8wMDoxODo4YjozODozNjo3OSwyODYzOTE=, 0.958475
|
||||
YzBlZGZhY2IxOGNkNmEyNzI3OWEwZTNkNjRhM2Q4MGYsanVsaWEubWV0YWNhcnRhLmNvbToxNjUwMl8xMTY5ODMwMDU5XzExNjk4MzU0MThfMDA6MTg6OGI6MzU6MDA6ZGMsNTQzMDk4, 0.957987 -->
|
||||
<name><![CDATA[Oswego County]]></name>
|
||||
<description><![CDATA[<a href="http://www.valleynewsonline.com:80/news/2004/0117/Oswego_News/">Restaurant makes donation to Friends of Oswego County Hospice</a><br>to Friends of <font color="red">Oswego County</font> Hospice Fulton, N<br>Restaurant makes donation to Friends of Oswego County Hospice Fulton, NY Front Page Viewpoints Hannibal News Phoenix News Oswego News Local News & Photos Obituaries Entertainment and Arts Church ...<br><br><a href="http://www.valleynewsonline.com:80/news/2004/0925/Local_News-Photos/030.html">Fund-raiser held for Oswego County Hospice</a><br>raiser held for <font color="red">Oswego County</font> Hospice Fulton, N<br>Fund-raiser held for Oswego County Hospice Fulton, NY Front Page Viewpoints Hannibal News Phoenix News Oswego News Local News & Photos Obituaries Entertainment and Arts Church ...<br><br>]]></description>
|
||||
<styleUrl>#rel1.0</styleUrl>
|
||||
<Point>
|
||||
<coordinates>-76.150000, 43.450000</coordinates>
|
||||
</Point>
|
||||
</Placemark><Placemark>
|
||||
<!-- NjE2OTE2N2U3ZDlmZGFkMTkzYWYzNjViZjQ2OGNlODcsa3VwYS5tZXRhY2FydGEuY29tOjE2NDI5XzExNjk4NzA4OTNfMTE2OTg3NjQyNl8wMDoxODo4YjozODozNjo3OSw1NzEzMzk=, 0.958475 -->
|
||||
<name><![CDATA[Hood River Memorial Hospital]]></name>
|
||||
<description><![CDATA[<a href="http://www.providence.org:80/hoodriver/foundation/default.htm">Providence Hood River Memorial Hospital Foundation</a><br>Providence <font color="red">Hood River Memorial Hospital</font> Foundatio<br>Providence Hood River Memorial Hospital Foundation Healthwise Medical Reference Library --> Home | Services | Physicians & Clinics | Education | Patient Information | News & Events | Foundation | Employment Site Search ...<br><br>]]></description>
|
||||
<styleUrl>#rel1.0</styleUrl>
|
||||
<Point>
|
||||
<coordinates>-121.523610, 45.704720</coordinates>
|
||||
</Point>
|
||||
</Placemark><Placemark>
|
||||
<!-- YTQwNjQwNzM4YTEzMzFiN2Q5YzExZTlkMWMxMGZmZTgsaWJlcnVzLm1ldGFjYXJ0YS5jb206MTYwNzRfMTE2MzcxNDQ4OF8xMTcyNjg1OTAzXzAwOjE4OjhiOjM4OjM2OjQ3LDY2ODQzNA==, 0.958475 -->
|
||||
<name><![CDATA[Leavenworth County]]></name>
|
||||
<description><![CDATA[<a href="http://leavenworthcounty.redcross.org/PR17jan01.htm">ARC-Leavworth County: Press Release January 17, 2001</a><br>January 17, 2001 <font color="red">Leavenworth County</font> Chapter Return t<br>ARC-Leavworth County: Press Release January 17, 2001 Press Release January 17, 2001 Leavenworth County Chapter Return to Media Page APPLICATIONS FOR NEW GAS ASSISTANCE PROGRAM NOW AVAILABLE THROUGH THE AMERICAN RED CROSS LEAVENWORTH - The ...<br><br>]]></description>
|
||||
<styleUrl>#rel1.0</styleUrl>
|
||||
<Point>
|
||||
<coordinates>-95.033330, 39.233330</coordinates>
|
||||
</Point>
|
||||
</Placemark><Placemark>
|
||||
<!-- YzhhNTNkZDlmMzFhMDA2NGM4NzExNTNiMTIyYzg2MTUsdW1icm86MTY0ODlfMTE3MTk5Nzc3OV8xMTcyMDAwOTQwXzAwOjE4OjhiOjNhOjcwOmZkLDYwNTU4, 0.958475 -->
|
||||
<name><![CDATA[Blancheville]]></name>
|
||||
<description><![CDATA[<a href="http://en.wikipedia.org/wiki/Andelot-Blancheville"> Andelot-Blancheville</a><br>Andelot-<font color="red">Blancheville</font> French commun<br>Andelot-Blancheville French commune nomcommuneAndelot-Blancheville rA<72>gionChampagne-Ardenne dA<64>partementHaute-Marne arrondissementChaumont cantonCanton of Andelot-BlanchevilleAndelot-Blancheville insee52008 cp52700 maire mandat intercomm longitude05A<35> 17 ...<br><br>]]></description>
|
||||
<styleUrl>#rel1.0</styleUrl>
|
||||
<Point>
|
||||
<coordinates>5.266666, 48.216666</coordinates>
|
||||
</Point>
|
||||
</Placemark><Placemark>
|
||||
<!-- YTBlMTIwMTVhYTUyNTlkYTM5MDI3ZGQ2NDk2N2QzYzYsa3VwYS5tZXRhY2FydGEuY29tOjE2NDI5XzExNjk4NzA4OTNfMTE2OTg3NjQyNl8wMDoxODo4YjozODozNjo3OSwzMzUwMjM=, 0.958475 -->
|
||||
<name><![CDATA[Platte City]]></name>
|
||||
<description><![CDATA[<a href="http://www.plattecountylandmark.com:80/Article371.htm">The Landmark Newspaper - Platte County (Platte City wants str...</a><br>Platte County (<font color="red">Platte City</font> wants stree<br>The Landmark Newspaper - Platte County (Platte City wants street sweeping grant) Covering Platte County, Missouri Weekly Since 1865 Local News Between the Lines by Ivan Foley Off ...<br><br>]]></description>
|
||||
<styleUrl>#rel1.0</styleUrl>
|
||||
<Point>
|
||||
<coordinates>-94.782220, 39.370280</coordinates>
|
||||
</Point>
|
||||
</Placemark><Placemark>
|
||||
<!-- NzY0NTY1YzZjNzE5MTViYjU1NmNmMTJjYjc5NDdjMGEsanVsaWEubWV0YWNhcnRhLmNvbToxNjUxM18xMTY5ODM2NjAxXzExNjk4NDIzNzZfMDA6MTg6OGI6MzU6MDA6ZGMsNjA0NTE2, 0.958475 -->
|
||||
<name><![CDATA[Macomb County]]></name>
|
||||
<description><![CDATA[<a href="http://macombdaily.com:80/stories/080404/loc_antosk001.shtml">Macomb Daily : Sports : Retiring juvenile court worker an 'in...</a><br>an 'institution in <font color="red">Macomb County</font>' 08/04/04 SUBSCRIB<br>Macomb Daily : Sports : Retiring juvenile court worker an 'institution in Macomb County' 08/04/04 SUBSCRIBE TO SITE MENU: Select... HOME Local News State/Nation/World Sports Obituaries Election Center Newspaper In ...<br><br>]]></description>
|
||||
<styleUrl>#rel1.0</styleUrl>
|
||||
<Point>
|
||||
<coordinates>-82.950000, 42.700000</coordinates>
|
||||
</Point>
|
||||
</Placemark><Placemark>
|
||||
<!-- NzUxNjI3MGNjZjg4OTEzMGEwMDU4YzQ2ZTQ5ZjM3MjAsdW1icm86MTY0ODlfMTE3MTk5Nzc3OV8xMTcyMDAwOTQwXzAwOjE4OjhiOjNhOjcwOmZkLDE0NDIxMA==, 0.958475 -->
|
||||
<name><![CDATA[Voronezh]]></name>
|
||||
<description><![CDATA[<a href="http://en.wikipedia.org/wiki/FC_Fakel_Voronezh"> FC Fakel Voronezh</a><br>FC Fakel <font color="red">Voronezh</font> Football clu<br>FC Fakel Voronezh Football club infobox clubname Fakel image Club logo fullname Football Club Fakel Voronezh nickname founded 1947 ground Tsentralnyi Profsoyuz StadionTsentralnyi Profsoyuz ...<br><br>]]></description>
|
||||
<styleUrl>#rel1.0</styleUrl>
|
||||
<Point>
|
||||
<coordinates>39.170000, 51.666388</coordinates>
|
||||
</Point>
|
||||
</Placemark><Placemark>
|
||||
<!-- YzkxOWI2MmRkZjYzNGFmMzY5MmNkYmJmMzUwMDkwZjEsanVsaWEubWV0YWNhcnRhLmNvbToxNjUwMl8xMTY5ODMwMDU5XzExNjk4MzU0MThfMDA6MTg6OGI6MzU6MDA6ZGMsMTYyNjk1, 0.958475 -->
|
||||
<name><![CDATA[Loudoun County]]></name>
|
||||
<description><![CDATA[<a href="http://www.loudoun.gov/main/new.htm">What's New in Loudoun County</a><br>What's New in <font color="red">Loudoun County</font> Skip Navigatio<br>What's New in Loudoun County Skip Navigation What's New News Releases Loudoun County in the News New on the Loudoun County Website Job Announcements ...<br><br>]]></description>
|
||||
<styleUrl>#rel1.0</styleUrl>
|
||||
<Point>
|
||||
<coordinates>-77.650000, 39.083330</coordinates>
|
||||
</Point>
|
||||
</Placemark><Placemark>
|
||||
<!-- Yjc1NjQ5MjgwNTIzMTJhNjYxM2U3ZGJiYmZkNjQ4ZmEsaWJlcnVzLm1ldGFjYXJ0YS5jb206MTYwNzBfMTE2MzYyMjk0MV8xMTcyNjg1ODk5XzAwOjE4OjhiOjM4OjM2OjQ3LDEyMjI2NTI=, 0.958027
|
||||
ZDYyZDRlMTRjYTU5ZmM0YjlhMDg4YWEzZGM4ZjUyNGUsa3VwYS5tZXRhY2FydGEuY29tOjE2MDAxXzExNjM2NjM1MjRfMTE2NzM0NjY3NF8wMDoxODo4YjozODozNjo3OSwxODI2MTg=, 0.958027 -->
|
||||
<name><![CDATA[San Joaquin County]]></name>
|
||||
<description><![CDATA[<a href="http://www.oes.ca.gov/Operational/OESHome.nsf/PrintView/C4F1A8E5BF70A1D088256EAA00198EF3OpenDocument"> Levee Break San Joaquin County Levee Break and Fl...</a><br>Levee Break <font color="red">San Joaquin County</font> Levee Break an<br>Levee Break San Joaquin County Levee Break and Flooding The Governor's Office of Emergency Services activated the State Operations Center and the Inland ...<br><br><a href="http://www.oes.ca.gov:80/Operational/OESHome.nsf/PrintView/C4F1A8E5BF70A1D088256EAA00198EF3?OpenDocument"> Levee Break San Joaquin County Levee Break and Fl...</a><br>Levee Break <font color="red">San Joaquin County</font> Levee Break an<br>Levee Break San Joaquin County Levee Break and Flooding The Governor's Office of Emergency Services activated the State Operations Center and the Inland ...<br><br>]]></description>
|
||||
<styleUrl>#rel1.0</styleUrl>
|
||||
<Point>
|
||||
<coordinates>-121.300000, 37.933330</coordinates>
|
||||
</Point>
|
||||
</Placemark><Placemark>
|
||||
<!-- YTcwMjgxMzFhYjQ5NDdiMjkzZGM0ODkwODlkNjBiOTEsa3VwYS5tZXRhY2FydGEuY29tOjE2MDAwXzExNjM2MzI4MDhfMTE2NzM0NjY3Ml8wMDoxODo4YjozODozNjo3OSw2MzM5NDk=, 0.957987 -->
|
||||
<name><![CDATA[Gibellina]]></name>
|
||||
<description><![CDATA[<a href="http://www.archidose.org:80/Apr00/041700.html">Cretto</a><br>Cretto Cretto <font color="red">Gibellina</font>, Sicily Italia<br>Cretto Cretto Gibellina, Sicily Italian artist Alberto Burri is known for a series of works titled Cretti , monochrome pieces composed of paste left to ...<br><br>]]></description>
|
||||
<styleUrl>#rel1.0</styleUrl>
|
||||
<Point>
|
||||
<coordinates>12.966666, 37.783333</coordinates>
|
||||
</Point>
|
||||
</Placemark><Placemark>
|
||||
<!-- N2MwN2NjOWI2ZDhjZjNlNDFhYzhjMjAwOGYzOWNmYzgsdW1icm86MTY0ODlfMTE3MTk5Nzc3OV8xMTcyMDAwOTQwXzAwOjE4OjhiOjNhOjcwOmZkLDQ0ODAz, 0.957987 -->
|
||||
<name><![CDATA[Sunnhordland]]></name>
|
||||
<description><![CDATA[<a href="http://en.wikipedia.org/wiki/Stord_Sunnhordland_F.K."> Stord Sunnhordland F.K.</a><br>Stord <font color="red">Sunnhordland</font> F.K. Infobo<br>Stord Sunnhordland F.K. Infobox Football club clubname Stord Sunnhordland F.K. image logo fullname Stord Sunnhordland Fotballklubb Norwegian nickname founded December 18 ...<br><br>]]></description>
|
||||
<styleUrl>#rel1.0</styleUrl>
|
||||
<Point>
|
||||
<coordinates>5.500000, 59.916666</coordinates>
|
||||
</Point>
|
||||
</Placemark><Placemark>
|
||||
<!-- YTYyNmE1ZjQ4NjQ0MTA0MGFlZTkyZGU2OWExOTM4ODgsZWxiZS5tZXRhY2FydGEuY29tOjE2MDM5XzExNjk3NzY4NjRfMTE2OTc4NjY1Nl8wMDoxODo4YjozNzpmZDo1YSwxNTM4MTQ5, 0.957987 -->
|
||||
<name><![CDATA[Zagreb]]></name>
|
||||
<description><![CDATA[<a href="http://www.rwe.de/generator.aspx/icw-aqua/beteiligungen/zagrebacke-odpadne-vode-doo/language=de/id=362866/zagrebacke-odpadne-vode-doo.html">RWE Aqua - Zentralklaranlage Zagreb (ZOV)</a><br>Zentralklaranlage <font color="red">Zagreb</font> (ZOV) Home Englis<br>RWE Aqua - Zentralklaranlage Zagreb (ZOV) Home English Suchen Produkte & Services Konzern Presse/News Investor Relations Info-Welt fur Privatkunden fur Geschaftskunden fur Stadtwerke/Versorger fur ...<br><br>]]></description>
|
||||
<styleUrl>#rel1.0</styleUrl>
|
||||
<Point>
|
||||
<coordinates>16.000000, 45.800000</coordinates>
|
||||
</Point>
|
||||
</Placemark><Placemark>
|
||||
<!-- NmZlOTJiY2YwNTQzNTQ0MGRkNjhkZGQ0Y2FiN2JiMzYsa3VwYS5tZXRhY2FydGEuY29tOjE2MDAxXzExNjM2NjM1MjRfMTE2NzM0NjY3NF8wMDoxODo4YjozODozNjo3OSw3Mzc=, 0.957987 -->
|
||||
<name><![CDATA[Burien]]></name>
|
||||
<description><![CDATA[<a href="http://www.metrokc.gov:80/kcdot/news/2005/nr050310_burientc.htm">Open house features design ideas for new Burien Transit Center</a><br>ideas for new <font color="red">Burien</font> Transit Center DO<br>Open house features design ideas for new Burien Transit Center DOT Home What's Happening Transportation Today In the News Hot Topics Current Projects Inside Transportation on CTV Regional ...<br><br>]]></description>
|
||||
<styleUrl>#rel1.0</styleUrl>
|
||||
<Point>
|
||||
<coordinates>-122.345560, 47.470560</coordinates>
|
||||
</Point>
|
||||
</Placemark><Placemark>
|
||||
<!-- NzExYjkwZThmOTI4YzQ5OThkYzg5NzJiMmQ0N2JlZjksaWJlcnVzLm1ldGFjYXJ0YS5jb206MTYwNzBfMTE2MzYyMjk0MV8xMTcyNjg1ODk5XzAwOjE4OjhiOjM4OjM2OjQ3LDEyNjk2NjI=, 0.957987 -->
|
||||
<name><![CDATA[Galveston County]]></name>
|
||||
<description><![CDATA[<a href="http://galvestondailynews.com/mobile/index.lasso">The Daily News: Mobile Edition</a><br>Mobile Edition The <font color="red">Galveston County</font> Daily News - MOBIL<br>The Daily News: Mobile Edition The Galveston County Daily News - MOBILE EDITION - Today is Sunday, September 25, 2005 Buses return with tired, hot evacuees GALVESTON - Some complain about ...<br><br>]]></description>
|
||||
<styleUrl>#rel1.0</styleUrl>
|
||||
<Point>
|
||||
<coordinates>-94.966670, 29.366670</coordinates>
|
||||
</Point>
|
||||
</Placemark>
|
||||
</Document>
|
||||
</kml>
|
||||
|
||||
86
examples/layer-opacity.html
Normal file
@@ -0,0 +1,86 @@
|
||||
<html xmlns="http://www.w3.org/1999/xhtml">
|
||||
<head>
|
||||
<style type="text/css">
|
||||
body {
|
||||
font-family: sans-serif;
|
||||
}
|
||||
#map {
|
||||
width: 512px;
|
||||
height: 350px;
|
||||
border: 1px solid lightgray;
|
||||
}
|
||||
p {
|
||||
width: 512px;
|
||||
}
|
||||
a {
|
||||
text-decoration: none;
|
||||
color: black;
|
||||
font-weight: bold;
|
||||
font-size: 1.1em;
|
||||
}
|
||||
#opacity {
|
||||
padding: 0;
|
||||
text-align: center;
|
||||
width: 2em;
|
||||
font-family: sans-serif;
|
||||
background: transparent;
|
||||
color: black;
|
||||
border: 0;
|
||||
}
|
||||
p.note {
|
||||
font-style: italic;
|
||||
font-size: 0.8em;
|
||||
}
|
||||
</style>
|
||||
<script src="../lib/OpenLayers.js"></script>
|
||||
<script type="text/javascript">
|
||||
<!--
|
||||
var map = null;
|
||||
var shade = null;
|
||||
var maxOpacity = 0.9;
|
||||
var minOpacity = 0.1;
|
||||
function changeOpacity(byOpacity) {
|
||||
var newOpacity = (parseFloat(OpenLayers.Util.getElement('opacity').value) + byOpacity).toFixed(1);
|
||||
newOpacity = Math.min(maxOpacity,
|
||||
Math.max(minOpacity, newOpacity));
|
||||
OpenLayers.Util.getElement('opacity').value = newOpacity;
|
||||
shade.setOpacity(newOpacity);
|
||||
}
|
||||
function init(){
|
||||
var options = {
|
||||
projection: "EPSG:26912",
|
||||
units: 'm',
|
||||
maxExtent: new OpenLayers.Bounds(455402, 4967657, 473295, 4984095),
|
||||
maxResolution: 'auto',
|
||||
maxZoomLevel: 8
|
||||
};
|
||||
map = new OpenLayers.Map('map', options);
|
||||
var drg = new OpenLayers.Layer.WMS("Topo Maps",
|
||||
"http://terraservice.net/ogcmap.ashx",
|
||||
{layers: "DRG"});
|
||||
shade = new OpenLayers.Layer.WMS("Shaded Relief",
|
||||
"http://ims.cr.usgs.gov/servlet19/com.esri.wms.Esrimap/USGS_EDC_Elev_NED_3",
|
||||
{layers: "HR-NED.IMAGE", reaspect: "false", transparent: 'true'},
|
||||
{isBaseLayer: false, opacity: 0.3});
|
||||
map.addLayers([drg, shade]);
|
||||
map.addControl(new OpenLayers.Control.LayerSwitcher());
|
||||
map.setCenter(new OpenLayers.LonLat(464348.5,4975876), 1);
|
||||
}
|
||||
// -->
|
||||
</script>
|
||||
</head>
|
||||
<body onload="init()">
|
||||
<h2>OpenLayers Layer Opacity Example</h2>
|
||||
<div id="map"></div>
|
||||
<p>
|
||||
Note that if you also have the setOpacity method defined on the Layer
|
||||
class, you can tweak the layer opacity after it has been added to the map.
|
||||
</p>
|
||||
<p>Opacity:
|
||||
<a title="decrease opacity" href="javascript: changeOpacity(-0.1);"><<</a>
|
||||
<input id="opacity" type="text" value="0.3" size="3" disabled="true" />
|
||||
<a title="increase opacity" href="javascript: changeOpacity(0.1);">>></a>
|
||||
</p>
|
||||
<p class="note">IE users: Wait until the shade layer has finished loading to try this.</p>
|
||||
</body>
|
||||
</html>
|
||||
31
examples/lite.html
Normal file
@@ -0,0 +1,31 @@
|
||||
<html xmlns="http://www.w3.org/1999/xhtml">
|
||||
<head>
|
||||
<style type="text/css">
|
||||
#map {
|
||||
width: 800px;
|
||||
height: 475px;
|
||||
border: 1px solid black;
|
||||
}
|
||||
</style>
|
||||
<script src="../lib/OpenLayers.js"></script>
|
||||
<script type="text/javascript">
|
||||
<!--
|
||||
var lon = 5;
|
||||
var lat = 40;
|
||||
var zoom = 5;
|
||||
var map, layer;
|
||||
|
||||
function init(){
|
||||
map = new OpenLayers.Map( 'map' );
|
||||
layer = new OpenLayers.Layer.WMS( "OpenLayers WMS",
|
||||
"http://labs.metacarta.com/wms/vmap0", {layers: 'basic'} );
|
||||
map.addLayer(layer);
|
||||
map.setCenter(new OpenLayers.LonLat(lon, lat), zoom);
|
||||
}
|
||||
// -->
|
||||
</script>
|
||||
</head>
|
||||
<body onload="init()">
|
||||
<div id="map"></div>
|
||||
</body>
|
||||
</html>
|
||||
35
examples/mapserver.html
Normal file
@@ -0,0 +1,35 @@
|
||||
<html xmlns="http://www.w3.org/1999/xhtml">
|
||||
<head>
|
||||
<style type="text/css">
|
||||
#map {
|
||||
width: 800px;
|
||||
height: 475px;
|
||||
border: 1px solid black;
|
||||
}
|
||||
</style>
|
||||
<script src="../lib/OpenLayers.js"></script>
|
||||
<script type="text/javascript">
|
||||
<!--
|
||||
var lon = 5;
|
||||
var lat = 40;
|
||||
var zoom = 5;
|
||||
var map, layer;
|
||||
|
||||
function init(){
|
||||
map = new OpenLayers.Map( 'map' );
|
||||
layer = new OpenLayers.Layer.MapServer( "OpenLayers WMS",
|
||||
"http://labs.metacarta.com/wms/vmap0", {layers: 'basic'},
|
||||
{gutter: 15});
|
||||
map.addLayer(layer);
|
||||
|
||||
map.setCenter(new OpenLayers.LonLat(lon, lat), zoom);
|
||||
map.addControl( new OpenLayers.Control.LayerSwitcher() );
|
||||
}
|
||||
|
||||
// -->
|
||||
</script>
|
||||
</head>
|
||||
<body onload="init()">
|
||||
<div id="map"></div>
|
||||
</body>
|
||||
</html>
|
||||
26
examples/mapserver_untiled.html
Normal file
@@ -0,0 +1,26 @@
|
||||
<html xmlns="http://www.w3.org/1999/xhtml">
|
||||
<head>
|
||||
<style type="text/css">
|
||||
#map {
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
border: 1px solid black;
|
||||
}
|
||||
</style>
|
||||
<script src="../lib/OpenLayers.js"></script>
|
||||
<script src="../lib/OpenLayers/Layer/MapServer/Untiled.js"></script>
|
||||
<script type="text/javascript">
|
||||
window.onload = function(){
|
||||
var map = new OpenLayers.Map( 'map', {maxResolution: 'auto'} );
|
||||
var layer = new OpenLayers.Layer.MapServer.Untiled( "MapServer Untiled",
|
||||
"http://labs.metacarta.com/wms/vmap0", {layers: 'basic'} );
|
||||
map.addLayer(layer);
|
||||
map.setCenter(new OpenLayers.LonLat(0, 0), 1);
|
||||
map.addControl( new OpenLayers.Control.LayerSwitcher() );
|
||||
}
|
||||
</script>
|
||||
</head>
|
||||
<body>
|
||||
<div id="map"></div>
|
||||
</body>
|
||||
</html>
|
||||
52
examples/markerResize.html
Normal file
@@ -0,0 +1,52 @@
|
||||
<html xmlns="http://www.w3.org/1999/xhtml">
|
||||
<head>
|
||||
<style type="text/css">
|
||||
#map {
|
||||
width: 512px;
|
||||
height: 512px;
|
||||
border: 1px solid black;
|
||||
}
|
||||
</style>
|
||||
<script src="../lib/OpenLayers.js"></script>
|
||||
<script type="text/javascript">
|
||||
<!--
|
||||
var map, layer;
|
||||
var size, icon;
|
||||
|
||||
function init(){
|
||||
map = new OpenLayers.Map('map');
|
||||
layer = new OpenLayers.Layer.WMS( "OpenLayers WMS",
|
||||
"http://labs.metacarta.com/wms/vmap0", {layers: 'basic'} );
|
||||
|
||||
map.addLayer(layer);
|
||||
var markers = new OpenLayers.Layer.Markers( "Markers" );
|
||||
map.addLayer(markers);
|
||||
|
||||
size = new OpenLayers.Size(50,50);
|
||||
calculateOffset = function(size) {
|
||||
return new OpenLayers.Pixel(-(size.w/2), -size.h); };
|
||||
icon = new OpenLayers.Icon(
|
||||
'http://boston.openguides.org/markers/AQUA.png',
|
||||
size, null, calculateOffset);
|
||||
markers.addMarker(
|
||||
new OpenLayers.Marker(new OpenLayers.LonLat(-180,90), icon));
|
||||
|
||||
map.addControl(new OpenLayers.Control.LayerSwitcher());
|
||||
map.zoomToMaxExtent();
|
||||
}
|
||||
|
||||
function resize() {
|
||||
|
||||
size = new OpenLayers.Size(size.w + 10, size.h + 10);
|
||||
icon.setSize(size);
|
||||
|
||||
}
|
||||
// -->
|
||||
</script>
|
||||
</head>
|
||||
<body onload="init()">
|
||||
<h1>OpenLayers Example</h1>
|
||||
<div id="map"></div>
|
||||
<div style="background-color:purple" onclick="resize()"> click to resize marker</div>
|
||||
</body>
|
||||
</html>
|
||||
54
examples/markers.html
Normal file
@@ -0,0 +1,54 @@
|
||||
<html xmlns="http://www.w3.org/1999/xhtml">
|
||||
<head>
|
||||
<style type="text/css">
|
||||
#map {
|
||||
width: 512px;
|
||||
height: 512px;
|
||||
border: 1px solid black;
|
||||
}
|
||||
</style>
|
||||
<script src="../lib/OpenLayers.js"></script>
|
||||
<script type="text/javascript">
|
||||
<!--
|
||||
var map, layer;
|
||||
|
||||
function init(){
|
||||
OpenLayers.ProxyHost="/proxy/?url=";
|
||||
map = new OpenLayers.Map('map');
|
||||
layer = new OpenLayers.Layer.WMS( "OpenLayers WMS",
|
||||
"http://labs.metacarta.com/wms/vmap0", {layers: 'basic'} );
|
||||
|
||||
map.addLayer(layer);
|
||||
map.setCenter(new OpenLayers.LonLat(0, 0), 0);
|
||||
|
||||
var newl = new OpenLayers.Layer.Text( "text", { location:"./textfile.txt"} );
|
||||
map.addLayer(newl);
|
||||
|
||||
var markers = new OpenLayers.Layer.Markers( "Markers" );
|
||||
map.addLayer(markers);
|
||||
|
||||
var size = new OpenLayers.Size(10,17);
|
||||
var offset = new OpenLayers.Pixel(-(size.w/2), -size.h);
|
||||
var icon = new OpenLayers.Icon('http://boston.openguides.org/markers/AQUA.png',size,offset);
|
||||
markers.addMarker(new OpenLayers.Marker(new OpenLayers.LonLat(0,0),icon));
|
||||
|
||||
var halfIcon = icon.clone();
|
||||
markers.addMarker(new OpenLayers.Marker(new OpenLayers.LonLat(0,45),halfIcon));
|
||||
|
||||
marker = new OpenLayers.Marker(new OpenLayers.LonLat(90,10),icon.clone());
|
||||
marker.setOpacity(0.2);
|
||||
marker.events.register('mousedown', marker, function(evt) { alert(this.icon.url); Event.stop(evt); });
|
||||
markers.addMarker(marker);
|
||||
map.addControl(new OpenLayers.Control.LayerSwitcher());
|
||||
map.zoomToMaxExtent();
|
||||
|
||||
halfIcon.setOpacity(0.5);
|
||||
}
|
||||
// -->
|
||||
</script>
|
||||
</head>
|
||||
<body onload="init()">
|
||||
<h1>OpenLayers Example</h1>
|
||||
<div id="map"></div>
|
||||
</body>
|
||||
</html>
|
||||
36
examples/markersTextLayer.html
Normal file
@@ -0,0 +1,36 @@
|
||||
<html xmlns="http://www.w3.org/1999/xhtml">
|
||||
<head>
|
||||
<style type="text/css">
|
||||
#map {
|
||||
width: 512px;
|
||||
height: 512px;
|
||||
border: 1px solid black;
|
||||
}
|
||||
</style>
|
||||
<script src="../lib/OpenLayers.js"></script>
|
||||
<script type="text/javascript">
|
||||
<!--
|
||||
var map, layer;
|
||||
|
||||
function init(){
|
||||
OpenLayers.ProxyHost="/proxy/?url=";
|
||||
map = new OpenLayers.Map('map');
|
||||
layer = new OpenLayers.Layer.WMS( "OpenLayers WMS",
|
||||
"http://labs.metacarta.com/wms/vmap0", {layers: 'basic'} );
|
||||
|
||||
map.addLayer(layer);
|
||||
|
||||
var newl = new OpenLayers.Layer.Text( "text", {location: "./textfile.txt"} );
|
||||
map.addLayer(newl);
|
||||
|
||||
map.addControl(new OpenLayers.Control.LayerSwitcher());
|
||||
map.zoomToMaxExtent();
|
||||
}
|
||||
// -->
|
||||
</script>
|
||||
</head>
|
||||
<body onload="init()">
|
||||
<h1>OpenLayers Example</h1>
|
||||
<div id="map"></div>
|
||||
</body>
|
||||
</html>
|
||||
57
examples/mm.html
Normal file
@@ -0,0 +1,57 @@
|
||||
<html xmlns="http://www.w3.org/1999/xhtml">
|
||||
<head>
|
||||
<style type="text/css">
|
||||
#map {
|
||||
width: 100%;
|
||||
height: 512px;
|
||||
border: 1px solid black;
|
||||
}
|
||||
</style>
|
||||
|
||||
|
||||
<script type="text/javascript" src="http://clients.multimap.com/API/maps/1.1/metacarta_04"></script>
|
||||
|
||||
|
||||
<script src="../lib/OpenLayers.js"></script>
|
||||
<script type="text/javascript">
|
||||
<!--
|
||||
|
||||
var lon = 5;
|
||||
var lat = 40;
|
||||
var zoom = 5;
|
||||
var map, mmlayer, layer;
|
||||
|
||||
function init(){
|
||||
map = new OpenLayers.Map( 'map' ,
|
||||
{controls:[new OpenLayers.Control.MouseDefaults()]});
|
||||
|
||||
mmlayer = new OpenLayers.Layer.MultiMap( "MultiMap");
|
||||
map.addLayer(mmlayer);
|
||||
|
||||
markers = new OpenLayers.Layer.Markers("markers");
|
||||
map.addLayer(markers);
|
||||
|
||||
map.setCenter(new OpenLayers.LonLat(lon, lat), zoom);
|
||||
map.addControl( new OpenLayers.Control.LayerSwitcher() );
|
||||
map.addControl( new OpenLayers.Control.PanZoomBar() );
|
||||
}
|
||||
|
||||
function add() {
|
||||
|
||||
marker = new OpenLayers.Marker(new OpenLayers.LonLat(2, 41));
|
||||
markers.addMarker(marker);
|
||||
}
|
||||
|
||||
function remove() {
|
||||
markers.removeMarker(marker);
|
||||
}
|
||||
// -->
|
||||
</script>
|
||||
</head>
|
||||
<body onload="init()">
|
||||
<h1>OpenLayers MultiMap Example</h1>
|
||||
<div id="map"></div>
|
||||
<div style="background-color:green" onclick="add()"> click to add the marker to the map</div>
|
||||
<div style="background-color:red" onclick="remove()"> click to remove the marker from the map</div>
|
||||
</body>
|
||||
</html>
|
||||
35
examples/multiserver.html
Normal file
@@ -0,0 +1,35 @@
|
||||
<html xmlns="http://www.w3.org/1999/xhtml">
|
||||
<head>
|
||||
<style type="text/css">
|
||||
#map {
|
||||
width: 800px;
|
||||
height: 475px;
|
||||
border: 1px solid black;
|
||||
}
|
||||
</style>
|
||||
<script src="../lib/OpenLayers.js"></script>
|
||||
<script type="text/javascript">
|
||||
<!--
|
||||
var lon = 5;
|
||||
var lat = 40;
|
||||
var zoom = 5;
|
||||
var map, layer;
|
||||
|
||||
function init(){
|
||||
map = new OpenLayers.Map( 'map' );
|
||||
|
||||
var urlArray = ["http://labs.metacarta.com/wms-c/Basic.py",
|
||||
"http://monitor.metacarta.com/wms-c/Basic.py"];
|
||||
layer = new OpenLayers.Layer.WMS( "OpenLayers WMS",
|
||||
urlArray,
|
||||
{layers: 'basic'} );
|
||||
map.addLayer(layer);
|
||||
map.setCenter(new OpenLayers.LonLat(lon, lat), zoom);
|
||||
}
|
||||
// -->
|
||||
</script>
|
||||
</head>
|
||||
<body onload="init()">
|
||||
<div id="map"></div>
|
||||
</body>
|
||||
</html>
|
||||
130
examples/mvs.html
Normal file
@@ -0,0 +1,130 @@
|
||||
<html>
|
||||
<!--
|
||||
OpenLayers Map Viewer Service
|
||||
|
||||
Copyright 2005-2006 MetaCarta, Inc., released under the BSD License.
|
||||
-->
|
||||
<!--
|
||||
This probably needs to be renamed index.html for deployment.
|
||||
Specifically, it needs to be the default page for whatever
|
||||
directory it is in.
|
||||
-->
|
||||
<head>
|
||||
|
||||
<!-- this gmaps key generated for http://openlayers.org/dev/ -->
|
||||
<script src='http://maps.google.com/maps?file=api&v=2&key=ABQIAAAA9XNhd8q0UdwNC7YSO4YZghSPUCi5aRYVveCcVYxzezM4iaj_gxQ9t-UajFL70jfcpquH5l1IJ-Zyyw'></script>
|
||||
<!-- Localhost key -->
|
||||
<!--<script src='http://maps.google.com/maps?file=api&v=2&key=ABQIAAAAjpkAC9ePGem0lIq5XcMiuhT2yXp_ZAY8_ufC3CFXhHIE1NvwkxTS6gjckBmeABOGXIUiOiZObZESPg'></script>-->
|
||||
<script src="http://openlayers.org/dev/lib/OpenLayers.js"></script>
|
||||
|
||||
<script>
|
||||
|
||||
function runMVS() {
|
||||
OpenLayers.ProxyHost = '/proxy/?url=';
|
||||
if (document.location.protocol != "file:") {
|
||||
theArgs = OpenLayers.Util.getArgs();
|
||||
} else {
|
||||
theArgs = {};
|
||||
theArgs.center = "0,0";
|
||||
theArgs.zoom = "0";
|
||||
theArgs.data = "textfile.txt";
|
||||
theArgs.controls = 'panzoom,mouse';
|
||||
theArgs.layers = 'openlayers';
|
||||
}
|
||||
|
||||
|
||||
// ----
|
||||
// TODO: Handle all this parsing better.
|
||||
var safeArgs = {}
|
||||
|
||||
var DEFAULT_LAT = 0;
|
||||
var DEFAULT_LON = 0;
|
||||
var DEFAULT_ZOOM_LEVEL = 0;
|
||||
var DEFAULT_CONTROLS = ['panzoom','mouse'];
|
||||
var DEFAULT_LAYERS = ['openlayers'];
|
||||
|
||||
var IDX_LAT = 0;
|
||||
var IDX_LON = 1;
|
||||
|
||||
safeArgs.centerLat = theArgs.center ?
|
||||
parseFloat(theArgs.center.split(",")[IDX_LAT]) : DEFAULT_LAT;
|
||||
|
||||
safeArgs.centerLon = theArgs.center ?
|
||||
parseFloat(theArgs.center.split(",")[IDX_LON]) : DEFAULT_LON;
|
||||
|
||||
safeArgs.zoom = theArgs.zoom ? parseInt(theArgs.zoom) : DEFAULT_ZOOM_LEVEL;
|
||||
|
||||
safeArgs.controls = theArgs.controls ?
|
||||
theArgs.controls.split(",") : DEFAULT_CONTROLS;
|
||||
|
||||
safeArgs.layers = theArgs.layers ?
|
||||
theArgs.layers.split(",") : DEFAULT_LAYERS;
|
||||
|
||||
safeArgs.data = theArgs.data; // TODO: Make this "safe".
|
||||
safeArgs.marker = theArgs.marker; // TODO: Make this "safe".
|
||||
|
||||
// -----
|
||||
var theMVS = new OpenLayers.Map('map', {controls: [], maxResolution: 'auto'});
|
||||
for(var i = 0; i < safeArgs.controls.length; i++) {
|
||||
switch(safeArgs.controls[i]) {
|
||||
case 'panzoombar':
|
||||
theMVS.addControl(new OpenLayers.Control.PanZoomBar());
|
||||
break;
|
||||
case 'panzoom':
|
||||
theMVS.addControl(new OpenLayers.Control.PanZoom());
|
||||
break;
|
||||
case 'layerswitcher':
|
||||
theMVS.addControl(new OpenLayers.Control.LayerSwitcher());
|
||||
break;
|
||||
case 'mouse':
|
||||
theMVS.addControl(new OpenLayers.Control.MouseDefaults());
|
||||
break;
|
||||
}
|
||||
}
|
||||
for(var i = 0; i < safeArgs.layers.length; i++) {
|
||||
switch(safeArgs.layers[i]) {
|
||||
case 'openlayers':
|
||||
theMVS.addLayer(
|
||||
new OpenLayers.Layer.WMS( "OpenLayers WMS",
|
||||
"http://labs.metacarta.com/wms/vmap0",
|
||||
{layers: 'basic'} )
|
||||
);
|
||||
break;
|
||||
case 'nasa':
|
||||
theMVS.addLayer(
|
||||
new OpenLayers.Layer.WMS("NASA Mosaic",
|
||||
"http://wms.jpl.nasa.gov/wms.cgi",
|
||||
{"EXCEPTIONS" : "application/vnd.ogc.se_inimage",
|
||||
"format" : "image/jpeg",
|
||||
layers:"modis,global_mosaic"}
|
||||
));
|
||||
break;
|
||||
case 'gmaps':
|
||||
theMVS.addLayer(
|
||||
new OpenLayers.Layer.Google( "Google" , {type: G_HYBRID_MAP })
|
||||
);
|
||||
break;
|
||||
}
|
||||
}
|
||||
theMVS.setCenter(new OpenLayers.LonLat(safeArgs.centerLon, safeArgs.centerLat), safeArgs.zoom);
|
||||
|
||||
if (safeArgs.marker) {
|
||||
var m = new OpenLayers.Layer.Markers("Marker");
|
||||
m.addMarker(new OpenLayers.Marker(new OpenLayers.LonLat(safeArgs.centerLon, safeArgs.centerLat)));
|
||||
theMVS.addLayer(m);
|
||||
}
|
||||
if (safeArgs.data) {
|
||||
theMVS.addLayer(new OpenLayers.Layer.Text("Data", {location: safeArgs.data}));
|
||||
}
|
||||
|
||||
}
|
||||
</script>
|
||||
</head>
|
||||
<body style="margin:0px;"
|
||||
onload="runMVS();">
|
||||
<div id="map"
|
||||
style="width: 100%; height: 100%;
|
||||
background: lightyellow;
|
||||
"></div>
|
||||
</body>
|
||||
</html>
|
||||
37
examples/navtoolbar.html
Normal file
@@ -0,0 +1,37 @@
|
||||
<html xmlns="http://www.w3.org/1999/xhtml">
|
||||
<head>
|
||||
<style type="text/css">
|
||||
#map {
|
||||
width: 800px;
|
||||
height: 475px;
|
||||
border: 1px solid black;
|
||||
float:right;
|
||||
}
|
||||
|
||||
</style>
|
||||
<script src="../lib/OpenLayers.js"></script>
|
||||
<script type="text/javascript">
|
||||
<!--
|
||||
var lon = 5;
|
||||
var lat = 40;
|
||||
var zoom = 5;
|
||||
var map, layer;
|
||||
|
||||
function init(){
|
||||
map = new OpenLayers.Map( 'map', { controls: [new OpenLayers.Control.PanZoom()] } );
|
||||
layer = new OpenLayers.Layer.WMS( "OpenLayers WMS",
|
||||
"http://labs.metacarta.com/wms/vmap0", {layers: 'basic'} );
|
||||
map.addLayer(layer);
|
||||
|
||||
var panel = new OpenLayers.Control.NavToolbar();
|
||||
map.addControl(panel);
|
||||
|
||||
map.setCenter(new OpenLayers.LonLat(lon, lat), zoom);
|
||||
}
|
||||
// -->
|
||||
</script>
|
||||
</head>
|
||||
<body onload="init()">
|
||||
<div id="map"></div>
|
||||
</body>
|
||||
</html>
|
||||
30
examples/notile.html
Normal file
@@ -0,0 +1,30 @@
|
||||
<html xmlns="http://www.w3.org/1999/xhtml">
|
||||
<head>
|
||||
<style type="text/css">
|
||||
#map {
|
||||
width: 512px;
|
||||
height: 512px;
|
||||
border: 1px solid black;
|
||||
}
|
||||
</style>
|
||||
<script src="../lib/OpenLayers.js"></script>
|
||||
<script type="text/javascript">
|
||||
<!--
|
||||
function init(){
|
||||
var map = new OpenLayers.Map('map', {maxResolution: 'auto'});
|
||||
|
||||
var ol_wms = new OpenLayers.Layer.WMS.Untiled( "OpenLayers WMS",
|
||||
"http://labs.metacarta.com/wms/vmap0?", {layers: 'basic'} );
|
||||
ol_wms.addOptions({isBaseLayer: true});
|
||||
map.addLayers([ol_wms]);
|
||||
map.addControl(new OpenLayers.Control.LayerSwitcher());
|
||||
map.setCenter(new OpenLayers.LonLat(0, 0), 0);
|
||||
}
|
||||
// -->
|
||||
</script>
|
||||
</head>
|
||||
<body onload="init()">
|
||||
<h1>OpenLayers Example</h1>
|
||||
<div id="map"></div>
|
||||
</body>
|
||||
</html>
|
||||
149
examples/openmnnd.html
Normal file
@@ -0,0 +1,149 @@
|
||||
<html xmlns="http://www.w3.org/1999/xhtml">
|
||||
<head>
|
||||
<style type="text/css">
|
||||
#map {
|
||||
width: 600px;
|
||||
height: 475px;
|
||||
border: 1px solid black;
|
||||
}
|
||||
#info {
|
||||
float: right;
|
||||
}
|
||||
</style>
|
||||
<script src="../lib/OpenLayers.js"></script>
|
||||
<script type="text/javascript">
|
||||
<!--
|
||||
var map, layer;
|
||||
|
||||
function init(){
|
||||
OpenLayers.ProxyHost="/proxy/?url=";
|
||||
map = new OpenLayers.Map( $('map'), {'maxResolution':'auto', maxExtent: new OpenLayers.Bounds(-203349.72008129774,4816309.33,1154786.8041952979,5472346.5), projection: 'EPSG:26915' } );
|
||||
layer = new OpenLayers.Layer.WMS( "OpenLayers WMS",
|
||||
["http://geoint.lmic.state.mn.us/cgi-bin/wms"], {layers: 'fsa'} );
|
||||
map.addLayer(layer);
|
||||
|
||||
|
||||
wfs_url = "http://prototype.openmnnd.org/cgi-bin/mapserv.exe?map=openmnndwfs/openmnndwfs.map";
|
||||
wms = new OpenLayers.Layer.WMS("Minnesota Parcels (WMS)", wfs_url, {'layers':'streams', 'transparent': true, 'format':'image/gif'});
|
||||
|
||||
map.addLayer(wms);
|
||||
|
||||
wfs = new OpenLayers.Layer.WFS("Minnesota Streams (WFS)", wfs_url, {'typename':'streams'}, {ratio:1.25, minZoomLevel:4});
|
||||
|
||||
// preFeatureInsert can be used to set style before the feature is drawn
|
||||
wfs.preFeatureInsert= function(feature) { feature.style.strokeWidth="3"; feature.style.strokeColor="blue";
|
||||
}
|
||||
wfs.onFeatureInsert = function() {
|
||||
$('stream_features').innerHTML = feature.layer.features.length;
|
||||
}
|
||||
map.addLayer(wfs);
|
||||
|
||||
// Or a style can be set on the layer.
|
||||
pwfsstyle = OpenLayers.Util.extend({}, OpenLayers.Feature.Vector.style['default']);
|
||||
OpenLayers.Util.extend(pwfsstyle, {'fillColor': 'green'});
|
||||
|
||||
pwfs = new OpenLayers.Layer.WFS("Minnesota Plat (WFS)", wfs_url,
|
||||
{'typename':'plat'},
|
||||
{
|
||||
ratio:1.25,
|
||||
minZoomLevel:8,
|
||||
extractAttributes: true,
|
||||
style: pwfsstyle
|
||||
});
|
||||
|
||||
pwfs.onFeatureInsert= function(feature) {
|
||||
$('plat_features').innerHTML = feature.layer.features.length;
|
||||
}
|
||||
map.addLayer(pwfs);
|
||||
|
||||
rstyle = OpenLayers.Util.extend({}, OpenLayers.Feature.Vector.style['default']);
|
||||
OpenLayers.Util.extend(rstyle, {'strokeColor': 'white', strokeWIdth: "4"});
|
||||
rwfs = new OpenLayers.Layer.WFS("Minnesota Roads (WFS)", wfs_url, {'typename':'roads'},
|
||||
{ratio:1.25, minZoomLevel:7, extractAttributes: true, style:rstyle});
|
||||
|
||||
rwfs.onFeatureInsert= function(feature) {
|
||||
$('road_features').innerHTML = feature.layer.features.length;
|
||||
}
|
||||
|
||||
map.addLayer(rwfs);
|
||||
|
||||
map.events.register('moveend', null, function() {
|
||||
$('stream_features').innerHTML = "0";
|
||||
$('road_features').innerHTML = "0";
|
||||
$('plat_features').innerHTML = "0";
|
||||
});
|
||||
|
||||
var ls = new OpenLayers.Control.LayerSwitcher();
|
||||
map.addControl(ls);
|
||||
|
||||
drawControls = {
|
||||
selectPlat: new OpenLayers.Control.SelectFeature(pwfs, {callbacks: {'up':feature_info,'over':feature_info_hover}}),
|
||||
selectRoad: new OpenLayers.Control.SelectFeature(rwfs, {callbacks: {'up':feature_info,'over':feature_info_hover}})
|
||||
};
|
||||
|
||||
for(var key in drawControls) {
|
||||
map.addControl(drawControls[key]);
|
||||
}
|
||||
drawControls.selectPlat.activate();
|
||||
|
||||
map.zoomToExtent(new OpenLayers.Bounds(303232.550864,5082911.694856,305885.161263,5084486.682281));
|
||||
}
|
||||
|
||||
function toggleControl(element) {
|
||||
for(key in drawControls) {
|
||||
var control = drawControls[key];
|
||||
if(element.value == key && element.checked) {
|
||||
control.activate();
|
||||
} else {
|
||||
control.deactivate();
|
||||
}
|
||||
}
|
||||
}
|
||||
var displayedGeom = null;
|
||||
function feature_info_hover(geometry) {
|
||||
if(geometry.parent) {
|
||||
geometry = geometry.parent;
|
||||
}
|
||||
if (displayedGeom != geometry &&
|
||||
(!geometry.feature.layer.selectedFeatures.length ||
|
||||
(geometry.feature.layer.selectedFeatures[0].geometry == geometry))) {
|
||||
feature_info(geometry);
|
||||
displaydGeom = geometry;
|
||||
}
|
||||
}
|
||||
function feature_info(geometry) {
|
||||
if(geometry.parent) {
|
||||
geometry = geometry.parent;
|
||||
}
|
||||
var html = "<ul>";
|
||||
for(var i in geometry.feature.attributes)
|
||||
html += "<li><b>" + i + "</b>: "+ geometry.feature.attributes[i] + "</li>";
|
||||
html += "</ul>";
|
||||
$('feature_info').innerHTML = html;
|
||||
}
|
||||
// -->
|
||||
</script>
|
||||
</head>
|
||||
<body onload="init()">
|
||||
<div id="info">
|
||||
<ul>
|
||||
<li>Streams: Feature Count <span id="stream_features">0</span></li>
|
||||
<li>Plat: Feature Count <span id="plat_features">0</span></li>
|
||||
<li>Roads: Feature Count <span id="road_features">0</span></li>
|
||||
</ul>
|
||||
<div id="feature_info">
|
||||
</div>
|
||||
<ul>
|
||||
<li>
|
||||
<input type="radio" name="type" value="selectRoad" id="selectToggle" onclick="toggleControl(this);" />
|
||||
<label for="selectToggle">select road</label>
|
||||
</li>
|
||||
<li>
|
||||
<input type="radio" name="type" value="selectPlat" id="selectToggle" onclick="toggleControl(this);" checked=checked />
|
||||
<label for="selectToggle">select polygon</label>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
<div id="map"></div>
|
||||
</body>
|
||||
</html>
|
||||
47
examples/overviewmap.html
Normal file
@@ -0,0 +1,47 @@
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
|
||||
"http://www.w3.org/TR/2000/REC-xhtml1-20000126/DTD/xhtml1-strict.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml">
|
||||
<head>
|
||||
<title>Overview Map Example</title>
|
||||
<script src="../lib/OpenLayers.js" type="text/javascript"></script>
|
||||
<style>
|
||||
#map{
|
||||
width:100%;
|
||||
height:500px;
|
||||
border:1px solid;
|
||||
}
|
||||
</style>
|
||||
</head>
|
||||
<body>
|
||||
<div id="map"></div>
|
||||
<script defer="defer" type="text/javascript">
|
||||
var map = new OpenLayers.Map('map');
|
||||
// my city
|
||||
var constantina = new OpenLayers.LonLat(-5.6165,37.8623);
|
||||
var wms = new OpenLayers.Layer.WMS( "OpenLayers WMS",
|
||||
"http://labs.metacarta.com/wms/vmap0", {layers: 'basic'} );
|
||||
var nasa_wms = new OpenLayers.Layer.WMS( "NASA Global Mosaic",
|
||||
"http://wms.jpl.nasa.gov/wms.cgi", {layers: "modis,global_mosaic"} );
|
||||
|
||||
map.addLayers([
|
||||
nasa_wms,
|
||||
wms
|
||||
]);
|
||||
|
||||
map.addControl(new OpenLayers.Control.LayerSwitcher());
|
||||
|
||||
var options = {
|
||||
layers: [wms.clone()],
|
||||
minRatio: 8,
|
||||
maxRatio: 128
|
||||
};
|
||||
var overview = new OpenLayers.Control.OverviewMap(options);
|
||||
|
||||
map.addControl(overview);
|
||||
|
||||
map.setCenter(constantina, 4);
|
||||
|
||||
overview.maximizeControl();
|
||||
</script>
|
||||
</body>
|
||||
</html>
|
||||
90
examples/panel.html
Normal file
@@ -0,0 +1,90 @@
|
||||
<html xmlns="http://www.w3.org/1999/xhtml">
|
||||
<head>
|
||||
<style type="text/css">
|
||||
#map {
|
||||
width: 800px;
|
||||
height: 475px;
|
||||
border: 1px solid black;
|
||||
}
|
||||
.olControlPanel div {
|
||||
display:block;
|
||||
width: 24px;
|
||||
height: 24px;
|
||||
margin: 5px;
|
||||
background-color:red;
|
||||
}
|
||||
|
||||
.olControlPanel .olControlMouseDefaultsItemActive {
|
||||
background-color: orange;
|
||||
background-image: url("../../oterral/ButtonBar/vector/img/PanEnable.png");
|
||||
}
|
||||
.olControlPanel .olControlMouseDefaultsItemInactive {
|
||||
background-color: orange;
|
||||
background-image: url("../../oterral/ButtonBar/vector/img/PanDisable.png");
|
||||
}
|
||||
.olControlPanel .olControlDrawFeatureItemActive {
|
||||
width: 22px;
|
||||
height: 22px;
|
||||
background-image: url("../../oterral/ButtonBar/vector/img/EditLineEnable.png");
|
||||
}
|
||||
.olControlPanel .olControlDrawFeatureItemInactive {
|
||||
width: 22px;
|
||||
height: 22px;
|
||||
background-image: url("../../oterral/ButtonBar/vector/img/EditLineDisable.png");
|
||||
}
|
||||
.olControlPanel .olControlZoomBoxItemInactive {
|
||||
width: 22px;
|
||||
height: 22px;
|
||||
background-color: blue;
|
||||
}
|
||||
.olControlPanel .olControlZoomBoxItemActive {
|
||||
width: 22px;
|
||||
height: 22px;
|
||||
background-color: orange;
|
||||
}
|
||||
.olControlPanel .olControlZoomToMaxExtentItemInactive {
|
||||
width: 18px;
|
||||
height: 18px;
|
||||
background-image: url("../img/zoom-world-mini.png");
|
||||
}
|
||||
|
||||
</style>
|
||||
<script src="../lib/OpenLayers.js"></script>
|
||||
<script src="../lib/Firebug/debug.js"></script>
|
||||
<script type="text/javascript">
|
||||
<!--
|
||||
var lon = 5;
|
||||
var lat = 40;
|
||||
var zoom = 5;
|
||||
var map, layer;
|
||||
|
||||
function init(){
|
||||
map = new OpenLayers.Map( 'map', { controls: [] } );
|
||||
layer = new OpenLayers.Layer.WMS( "OpenLayers WMS",
|
||||
"http://labs.metacarta.com/wms/vmap0", {layers: 'basic'} );
|
||||
map.addLayer(layer);
|
||||
|
||||
vlayer = new OpenLayers.Layer.Vector( "Editable" );
|
||||
map.addLayer(vlayer);
|
||||
|
||||
|
||||
zb = new OpenLayers.Control.ZoomBox();
|
||||
panel = new OpenLayers.Control.Panel({defaultControl: zb});
|
||||
panel.addControls([
|
||||
new OpenLayers.Control.MouseDefaults(),
|
||||
zb,
|
||||
new OpenLayers.Control.DrawFeature(vlayer, OpenLayers.Handler.Path),
|
||||
new OpenLayers.Control.ZoomToMaxExtent()
|
||||
]);
|
||||
map.addControl(panel);
|
||||
|
||||
map.setCenter(new OpenLayers.LonLat(lon, lat), zoom);
|
||||
}
|
||||
// -->
|
||||
</script>
|
||||
</head>
|
||||
<body onload="init()">
|
||||
<div id="panel"></div>
|
||||
<div id="map"></div>
|
||||
</body>
|
||||
</html>
|
||||
124
examples/popups.html
Normal file
@@ -0,0 +1,124 @@
|
||||
<html xmlns="http://www.w3.org/1999/xhtml">
|
||||
<head>
|
||||
<style type="text/css">
|
||||
#map {
|
||||
width: 512px;
|
||||
height: 512px;
|
||||
border: 1px solid black;
|
||||
}
|
||||
</style>
|
||||
<script src="../lib/OpenLayers.js"></script>
|
||||
<script type="text/javascript">
|
||||
<!--
|
||||
var map, layer, popup;
|
||||
var markers, feature, marker;
|
||||
|
||||
function init(){
|
||||
map = new OpenLayers.Map('map');
|
||||
layer = new OpenLayers.Layer.WMS( "OpenLayers WMS",
|
||||
"http://labs.metacarta.com/wms/vmap0", {layers: 'basic'} );
|
||||
map.addLayer(layer);
|
||||
|
||||
map.addControl(new OpenLayers.Control.LayerSwitcher());
|
||||
map.zoomToMaxExtent();
|
||||
|
||||
}
|
||||
|
||||
function changer() {
|
||||
popup.setBackgroundColor("red");
|
||||
popup.setSize(new OpenLayers.Size(100,600));
|
||||
// popup.moveTo(new OpenLayers.Pixel(120,120));
|
||||
// popup.setOpacity(.5);
|
||||
popup.setBorder("2px solid");
|
||||
popup.setContentHTML("High Chickens");
|
||||
}
|
||||
|
||||
function add() {
|
||||
popup = new OpenLayers.Popup("chicken",
|
||||
new OpenLayers.LonLat(5,40),
|
||||
new OpenLayers.Size(200,200),
|
||||
"example popup",
|
||||
true);
|
||||
|
||||
map.addPopup(popup);
|
||||
}
|
||||
|
||||
function addAnchor() {
|
||||
popup = new OpenLayers.Popup.Anchored("chicken",
|
||||
new OpenLayers.LonLat(5,40),
|
||||
new OpenLayers.Size(200,200),
|
||||
"example popup");
|
||||
|
||||
map.addPopup(popup);
|
||||
}
|
||||
|
||||
function addMarker() {
|
||||
|
||||
markers = new OpenLayers.Layer.Markers("zibo");
|
||||
map.addLayer(markers);
|
||||
|
||||
feature = new OpenLayers.Feature(layer,
|
||||
new OpenLayers.LonLat(0,0));
|
||||
|
||||
|
||||
marker = feature.createMarker();
|
||||
|
||||
markers.addMarker(marker);
|
||||
marker.events.register("mousedown", marker, mousedown);
|
||||
|
||||
}
|
||||
|
||||
function mousedown(evt) {
|
||||
if (popup == null) {
|
||||
popup = feature.createPopup();
|
||||
popup.setContentHTML("<a href='http://www.somethingconstructive.net' target='_blank'>click me</a>");
|
||||
popup.setBackgroundColor("yellow");
|
||||
popup.setOpacity(0.7);
|
||||
markers.map.addPopup(popup);
|
||||
} else {
|
||||
markers.map.removePopup(popup);
|
||||
popup.destroy();
|
||||
popup = null;
|
||||
}
|
||||
Event.stop(evt);
|
||||
}
|
||||
|
||||
/**
|
||||
* @param {Event} evt
|
||||
*/
|
||||
function onPopupMouseDown(evt) {
|
||||
markers.map.removePopup(popup);
|
||||
popup.destroy();
|
||||
popup = null;
|
||||
Event.stop(evt);
|
||||
}
|
||||
|
||||
|
||||
function destroy() {
|
||||
popup.destroy();
|
||||
}
|
||||
|
||||
function remove() {
|
||||
markers.removeMarker(marker);
|
||||
}
|
||||
|
||||
function removelayer() {
|
||||
layer.destroy();
|
||||
// map.removeLayer(markers);
|
||||
}
|
||||
|
||||
|
||||
// -->
|
||||
</script>
|
||||
</head>
|
||||
<body onload="init()">
|
||||
<div id="map"></div>
|
||||
<div style="background-color:purple" onclick="add()"> click to add Popup to map</div>
|
||||
<div style="background-color:green" onclick="addMarker()"> click to add a Marker with an AnchoredBubble popup</div>
|
||||
<div style="background-color:blue" onclick="changer()"> click to modify popup's attributes</div>
|
||||
<div style="background-color:red" onclick="remove()"> click to remove the popup from map</div>
|
||||
<div style="background-color:grey" onclick="removelayer()"> click to remove the markers layer</div>
|
||||
<div style="background-color:orange" onclick="alert(marker.onScreen())"> marker.onscreen()?</div>
|
||||
<div style="background-color:yellow" onclick="destroy()"> click to destroy the popup from map</div>
|
||||
</body>
|
||||
</html>
|
||||
55
examples/proxy.cgi
Executable file
@@ -0,0 +1,55 @@
|
||||
#!/usr/bin/env python
|
||||
|
||||
|
||||
"""This is a blind proxy that we use to get around browser
|
||||
restrictions that prevent the Javascript from loading pages not on the
|
||||
same server as the Javascript. This has several problems: it's less
|
||||
efficient, it might break some sites, and it's a security risk because
|
||||
people can use this proxy to browse the web and possibly do bad stuff
|
||||
with it. If you can get your code signed (see:
|
||||
http://trac.openlayers.org/wiki/HowToSignJavascript), then you should
|
||||
modify Parameters.js so that this isn't used. Otherwise, you're stuck
|
||||
with it. It only loads pages via http and https, but it can load any
|
||||
content type. XML and HTML are both currently used by Openlayers."""
|
||||
|
||||
import urllib
|
||||
import cgi
|
||||
|
||||
fs = cgi.FieldStorage()
|
||||
url = fs.getvalue('url', "http://openlayers.org")
|
||||
|
||||
# Designed to prevent Open Proxy type stuff.
|
||||
|
||||
allowedHosts = ['www.openlayers.org', 'openlayers.org', 'octo.metacarta.com', 'merrimack.metacarta.com', 'labs.metacarta.com', 'world.freemap.in',
|
||||
'prototype.openmnnd.org']
|
||||
|
||||
try:
|
||||
host = url.split("/")[2]
|
||||
if allowedHosts and not host in allowedHosts:
|
||||
print "Status: 502 Bad Gateway"
|
||||
print "Content-Type: text/plain"
|
||||
print
|
||||
print "This proxy does not allow you to access that location."
|
||||
|
||||
elif url.startswith("http://") or url.startswith("https://"):
|
||||
|
||||
y = urllib.urlopen(url)
|
||||
|
||||
headers = str(y.info()).split('\n')
|
||||
for h in headers:
|
||||
if h.startswith("Content-Type:"):
|
||||
print h
|
||||
print
|
||||
|
||||
print y.read()
|
||||
|
||||
y.close()
|
||||
else:
|
||||
print """Content-Type: text/plain
|
||||
|
||||
Illegal request."""
|
||||
except Exception, E:
|
||||
print "Status: 500 Unexpected Error"
|
||||
print "Content-Type: text/plain"
|
||||
print
|
||||
print "Some unexpected error occurred. Error text was:", E
|
||||
151
examples/scroll.html
Normal file
@@ -0,0 +1,151 @@
|
||||
|
||||
<!DOCTYPE html
|
||||
PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
|
||||
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en">
|
||||
<head>
|
||||
<title>OpenLayers: Home</title>
|
||||
<link rel="stylesheet" href="http://openlayers.org/common.css" type="text/css" />
|
||||
<link rel="stylesheet" href="http://trac.openlayers.org/chrome/common/css/trac.css" type="text/css" />
|
||||
<link rel="stylesheet" href="http://trac.openlayers.org/chrome/common/css/wiki.css" type="text/css" />
|
||||
<link rel="stylesheet" href="http://trac.openlayers.org/chrome/common/css/tracnav.css" type="text/css" />
|
||||
<link rel="stylesheet" href="http://openlayers.org/website.css" type="text/css" />
|
||||
<script type="text/javascript" src="//trac.openlayers.org/chrome/common/js/trac.js"></script>
|
||||
<!--[if lt IE 7]>
|
||||
<script defer="defer" type="text/javascript" src="/pngfix.js"></script>
|
||||
<![endif]-->
|
||||
</head>
|
||||
<body>
|
||||
|
||||
<div id="olbanner">
|
||||
<img class="openlayersbannerimg" src="http://www.openlayers.org/images/OpenLayers.trac.png" style="height: 44px; width: 49px" border="0" alt="OpenLayers" />
|
||||
<a class="openlayersbanner" href="http://www.openlayers.org/" >
|
||||
OpenLayers</a>
|
||||
</div>
|
||||
<div id="navcontainer">
|
||||
<a class="navtabtraccurrent" href="http://www.openlayers.org">Home</a>
|
||||
<a class="navtab" href="http://trac.openlayers.org">Support & Development</a>
|
||||
</div>
|
||||
|
||||
|
||||
<div id="mainnav" class="nav"><ul><li class="first"><a href="http://trac.openlayers.org/wiki" accesskey="1">Wiki</a></li><li><a href="/QuickTutorial" accesskey="2">Tutorial</a></li><li><a href="http://trac.openlayers.org/wiki/HowToDownload" accesskey="3">Download</a></li><li><a href="/gallery">Gallery</a></li><li><a href="/EmailLists">Email Lists</a></li></ul></div>
|
||||
|
||||
|
||||
<div id="main">
|
||||
<div id="mapFrame">
|
||||
<div id="map"></div>
|
||||
<div align="center"><b>Put an open map widget in any web page!</b></div>
|
||||
<div align="center">
|
||||
Double-click to zoom in, and drag to pan. Hold down the shift key
|
||||
and drag to zoom to a particular region.
|
||||
</div>
|
||||
</div>
|
||||
<h3>Get OpenLayers Now</h3>
|
||||
<p>
|
||||
Latest stable release: <a href="/api/2/OpenLayers.js">Link to the hosted version</a> | <a href="/download/OpenLayers-2.0.tar.gz">OpenLayers-2.0.tar.gz</a> | <a href="/doc/reference.html">Class Documentation</a> | <a href="/gallery/">See Screenshots</a>
|
||||
</p>
|
||||
<p><b>Latest Development Release</b>: Test out OpenLayers 2.1-RC2! <a href="/api/2.1-rc2/OpenLayers.js">Link to 2.1-RC2 Hosted Version</a>.</p>
|
||||
<p><b>FOSS4G</b>: Was the FOSS4G presentation too early for you this morning? The presentation is <a href="http://openlayers.org/presentations/foss4g2006/openlayers.odp">available in Open Office Impress format</a>, and the examples are <a href="http://openlayers.org/presentations/foss4g2006/examples/">available as well</a>.</p>
|
||||
<h3>About...</h3>
|
||||
<p>OpenLayers makes it easy to put a dynamic map in any web page. It can
|
||||
display map tiles and markers loaded from any source. <a
|
||||
href="http://www.metacarta.com/">MetaCarta</a> developed the initial version of
|
||||
OpenLayers and gave it to the public to further the use of geographic
|
||||
information of all kinds. OpenLayers is
|
||||
completely free, Open Source JavaScript, released under the BSD License.</p>
|
||||
|
||||
<h3>Put a map in your page.</h3>
|
||||
<p>We've released a Map Viewer Service that lets you put a map in your page easily. Just put this HTML in your page:</p>
|
||||
<pre>
|
||||
<iframe src="http://openlayers.org/viewer/"
|
||||
width="400px" height="200px"
|
||||
scrolling="no"
|
||||
marginwidth="0" marginheight="0"
|
||||
frameborder="0">
|
||||
</iframe></pre>
|
||||
|
||||
<p>Read more examples in the <a href="QuickTutorial">20-second tutorial</a>. The visual appearance of the MapViewer is not yet stable. If you like it, please join the <a href="EmailLists">users' email list</a> and tell us about your use.</p>
|
||||
|
||||
<h3>For Developers!</h3>
|
||||
<p>OpenLayers is a pure JavaScript library for displaying map data in most
|
||||
modern web browsers, with no server-side dependencies. OpenLayers implements a
|
||||
(still-developing) <a href="//trac.openlayers.org/wiki/Documentation">JavaScript
|
||||
API</a> for building rich web-based geographic applications, similar to the
|
||||
Google Maps and MSN Virtual Earth APIs, with one important difference --
|
||||
OpenLayers is Free Software, developed for and by the Open Source software
|
||||
community.</p>
|
||||
|
||||
<p>Furthermore, OpenLayers implements industry-standard methods for geographic
|
||||
data access, such as the OpenGIS Consortium's Web Mapping Service (WMS) and Web
|
||||
Feature Service (WFS) protocols. Under the hood, OpenLayers is written in
|
||||
object-oriented JavaScript, using <a
|
||||
href="//prototype.conio.net/">Prototype.js</a> and components from the <a
|
||||
href="//openrico.org/">Rico<a> library. The OpenLayers code base already has
|
||||
hundreds of <a href="/dev/tests/run-tests.html">unit tests</a>, via the <a
|
||||
href="http://straytree.com/TestAnotherWay/doc/index.html">Test.AnotherWay</a>
|
||||
framework.</p>
|
||||
|
||||
<p>As a framework, OpenLayers is intended to separate map <i>tools</i> from map
|
||||
<i>data</i> so that all the tools can operate on all the data sources. This
|
||||
separation breaks the proprietary silos that earlier GIS revolutions have
|
||||
taught civilization to avoid. The mapping revolution on the public Web should
|
||||
benefit from the experience of history.</p>
|
||||
|
||||
<h3>Getting the Code</h3>
|
||||
|
||||
<p>Releases are made available on the <a href="/download/">downloads</a> page.
|
||||
Additionally, if you wish to use OpenLayers in a web application, you can
|
||||
include
|
||||
<tt>
|
||||
<a href="http://www.openlayers.org/api/OpenLayers.js">http://www.openlayers.org/api/OpenLayers.js</a>
|
||||
</tt> in your page, to always get the latest release.</p>
|
||||
|
||||
<p> The code is also available in our
|
||||
<a href="//trac.openlayers.org/wiki/HowToDownload">Subversion repository</a>.
|
||||
Using Subversion, you can keep up to the absolute bleeding edge of the code.
|
||||
If you wish to report a bug in the API, and you are able to use Subversion,
|
||||
please see if the bug has been fixed in Subversion first: OpenLayers is
|
||||
under rapid development, so things change quickly.
|
||||
</p>
|
||||
|
||||
<p>If you don't have Subversion or don't want to download the code, you can
|
||||
still try some <a href="/dev/examples/">live examples</a> on
|
||||
openlayers.org. If you're familiar with JavaScript, try viewing the source
|
||||
of the examples to get an idea how the OpenLayers library is used.</p>
|
||||
|
||||
<p>OpenLayers is still undergoing rapid development, so expect a lot to change
|
||||
in the next few weeks and months. We need your support! Please check the <a
|
||||
href="//trac.openlayers.org">wiki</a> for the very latest updates and
|
||||
documentation, and thank you for taking an interest.</p>
|
||||
|
||||
</div>
|
||||
<script type="text/javascript" src="../lib/OpenLayers.js"></script>
|
||||
<script type="text/javascript">
|
||||
<!--
|
||||
var map = new OpenLayers.Map('map');
|
||||
|
||||
var ol_wms = new OpenLayers.Layer.WMS( "World Map",
|
||||
"http://labs.metacarta.com/wms/vmap0?",
|
||||
{layers: 'basic'} );
|
||||
|
||||
var jpl_wms = new OpenLayers.Layer.KaMap( "Satellite",
|
||||
"/world/index.php", {g: "satellite", map: "world"});
|
||||
var dm_wms = new OpenLayers.Layer.WMS( "Canada",
|
||||
"http://www2.dmsolutions.ca/cgi-bin/mswms_gmap",
|
||||
{layers: "bathymetry,land_fn,park,drain_fn,drainage," +
|
||||
"prov_bound,fedlimit,rail,road,popplace",
|
||||
transparent: "true", format: "image/png" });
|
||||
|
||||
dm_wms.setVisibility(false);
|
||||
|
||||
map.addLayers([ol_wms, jpl_wms, dm_wms]);
|
||||
map.addControl(new OpenLayers.Control.LayerSwitcher());
|
||||
map.zoomToMaxExtent();
|
||||
// -->
|
||||
</script>
|
||||
<div id="sidebar"></div>
|
||||
<div id="footer"></div>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
|
||||
82
examples/select-feature.html
Normal file
@@ -0,0 +1,82 @@
|
||||
<html xmlns="http://www.w3.org/1999/xhtml">
|
||||
<head>
|
||||
<style type="text/css">
|
||||
#map {
|
||||
width: 512px;
|
||||
height: 350px;
|
||||
border: 1px solid gray;
|
||||
}
|
||||
#controlToggle li {
|
||||
list-style: none;
|
||||
}
|
||||
</style>
|
||||
<script src="../lib/OpenLayers.js"></script>
|
||||
<script type="text/javascript">
|
||||
<!--
|
||||
var map, drawControls, select;
|
||||
function init(){
|
||||
map = new OpenLayers.Map('map');
|
||||
var wmsLayer = new OpenLayers.Layer.WMS( "OpenLayers WMS",
|
||||
"http://labs.metacarta.com/wms/vmap0?", {layers: 'basic'});
|
||||
|
||||
var polygonLayer = new OpenLayers.Layer.Vector("Polygon Layer");
|
||||
|
||||
map.addLayers([wmsLayer, polygonLayer]);
|
||||
map.addControl(new OpenLayers.Control.LayerSwitcher());
|
||||
map.addControl(new OpenLayers.Control.MousePosition());
|
||||
|
||||
drawControls = {
|
||||
polygon: new OpenLayers.Control.DrawFeature(polygonLayer,
|
||||
OpenLayers.Handler.Polygon),
|
||||
select: new OpenLayers.Control.SelectFeature(polygonLayer),
|
||||
hover: new OpenLayers.Control.SelectFeature(polygonLayer,
|
||||
{hover: true})
|
||||
};
|
||||
|
||||
for(var key in drawControls) {
|
||||
map.addControl(drawControls[key]);
|
||||
}
|
||||
map.setCenter(new OpenLayers.LonLat(0, 0), 3);
|
||||
|
||||
}
|
||||
|
||||
function toggleControl(element) {
|
||||
for(key in drawControls) {
|
||||
var control = drawControls[key];
|
||||
if(element.value == key && element.checked) {
|
||||
control.activate();
|
||||
} else {
|
||||
control.deactivate();
|
||||
}
|
||||
}
|
||||
}
|
||||
// -->
|
||||
</script>
|
||||
</head>
|
||||
<body onload="init()">
|
||||
<h1>OpenLayers Draw Feature Example</h1>
|
||||
<div id="map"></div>
|
||||
<ul id="controlToggle">
|
||||
<li>
|
||||
<input type="radio" name="type" value="none" id="noneToggle"
|
||||
onclick="toggleControl(this);" checked="checked" />
|
||||
<label for="noneToggle">navigate</label>
|
||||
</li>
|
||||
<li>
|
||||
<input type="radio" name="type" value="polygon" id="polygonToggle"
|
||||
onclick="toggleControl(this);" />
|
||||
<label for="polygonToggle">draw polygon</label>
|
||||
</li>
|
||||
<li>
|
||||
<input type="radio" name="type" value="select" id="selectToggle"
|
||||
onclick="toggleControl(this);" />
|
||||
<label for="selectToggle">select polygon on click</label>
|
||||
</li>
|
||||
<li>
|
||||
<input type="radio" name="type" value="hover" id="hoverToggle"
|
||||
onclick="toggleControl(this);" />
|
||||
<label for="hoverToggle">select polygon on hover</label>
|
||||
</li>
|
||||
</ul>
|
||||
</body>
|
||||
</html>
|
||||
29
examples/setextent.html
Normal file
@@ -0,0 +1,29 @@
|
||||
<html>
|
||||
<head>
|
||||
<title>Setting a visual Extent</title>
|
||||
<script src="../lib/OpenLayers.js"></script>
|
||||
</head>
|
||||
<body>
|
||||
<h1>Setting a Visual Extent</h1>
|
||||
<p>
|
||||
Because the ability to set the map to a given extent is limited by the
|
||||
current resolutions available, zoomToExtent will not always set the map to
|
||||
exactly the right extent. In order to visually annotate the actual extent,
|
||||
this example, will use the Boxes layer to visually describe the desired
|
||||
extent as well as setting the map extent.
|
||||
</p>
|
||||
<div style="width:100%; height:75%" id="map"></div>
|
||||
<script defer="defer" type="text/javascript">
|
||||
var map = new OpenLayers.Map('map');
|
||||
var bounds = new OpenLayers.Bounds(-45,-45, 0, 45);
|
||||
var wms = new OpenLayers.Layer.WMS( "OpenLayers WMS",
|
||||
"http://labs.metacarta.com/wms/vmap0", {layers: 'basic'} );
|
||||
map.addLayer(wms);
|
||||
map.zoomToExtent(bounds);
|
||||
var boxes = new OpenLayers.Layer.Boxes("boxes");
|
||||
var box = new OpenLayers.Marker.Box(bounds);
|
||||
boxes.addMarker(box);
|
||||
map.addLayer(boxes);
|
||||
</script>
|
||||
</body>
|
||||
</html>
|
||||
22
examples/supports-vector.html
Normal file
@@ -0,0 +1,22 @@
|
||||
<html>
|
||||
<head>
|
||||
<script>
|
||||
function set() {
|
||||
if (document.implementation.hasFeature("http://www.w3.org/TR/SVG11/feature#SVG", "1.1") ) {
|
||||
document.getElementById("svg11").style.background="green";
|
||||
}
|
||||
if (document.implementation.hasFeature("http://www.w3.org/TR/SVG11/feature#SVGDOM", "1.1") ) {
|
||||
document.getElementById("svgdom").style.background="green";
|
||||
}
|
||||
}
|
||||
</script>
|
||||
</head>
|
||||
<body onload="set()">
|
||||
|
||||
Vector Support:
|
||||
<br />
|
||||
Supports SVG 1.1: <div id="svg11" style="width:100px;height:100px;background-color:red"></div>
|
||||
<br />
|
||||
Supports SVG DOM: <div id="svgdom" style="width:100px;height:100px;background-color:red"></div>
|
||||
</body>
|
||||
</html>
|
||||
4
examples/textfile.txt
Normal file
@@ -0,0 +1,4 @@
|
||||
point title description icon
|
||||
10,20 my orange title my orange description
|
||||
2,4 my aqua title my aqua description
|
||||
42,-71 my purple title my purple description<br/>is great. http://www.openlayers.org/api/img/zoom-world-mini.png
|
||||
36
examples/tiger.html
Normal file
@@ -0,0 +1,36 @@
|
||||
<html xmlns="http://www.w3.org/1999/xhtml">
|
||||
<head>
|
||||
<style type="text/css">
|
||||
#map {
|
||||
width: 700px;
|
||||
height: 512px;
|
||||
border: 1px solid black;
|
||||
}
|
||||
</style>
|
||||
<script src="../lib/OpenLayers.js"></script>
|
||||
<script type="text/javascript">
|
||||
<!--
|
||||
function init(){
|
||||
var map = new OpenLayers.Map('map', {'maxResolution': 1.40625/4, controls:[]});
|
||||
|
||||
var ka_wms = new OpenLayers.Layer.KaMap( "TIGER (KaMap)",
|
||||
"http://boston.freemap.in/tile.php" , { map: 'tiger', layers: 'TIGER' });
|
||||
var jpl_wms = new OpenLayers.Layer.WMS( "NASA Global Mosaic",
|
||||
"http://wms.jpl.nasa.gov/wms.cgi",
|
||||
{layers: "modis,global_mosaic"});
|
||||
jpl_wms.setVisibility(false);
|
||||
ka_wms.addOptions({isBaseLayer: false});
|
||||
map.addLayers([jpl_wms,ka_wms]);
|
||||
map.addControl(new OpenLayers.Control.LayerSwitcher());
|
||||
map.addControl(new OpenLayers.Control.MouseToolbar());
|
||||
map.addControl(new OpenLayers.Control.PanZoomBar());
|
||||
map.setCenter(new OpenLayers.LonLat(-96, 35), 2);
|
||||
}
|
||||
// -->
|
||||
</script>
|
||||
</head>
|
||||
<body onload="init()">
|
||||
<h1>OpenLayers Example</h1>
|
||||
<div id="map"></div>
|
||||
</body>
|
||||
</html>
|
||||
45
examples/tms.html
Normal file
@@ -0,0 +1,45 @@
|
||||
<html xmlns="http://www.w3.org/1999/xhtml">
|
||||
<head>
|
||||
<style type="text/css">
|
||||
#map {
|
||||
width: 800px;
|
||||
height: 475px;
|
||||
border: 1px solid black;
|
||||
}
|
||||
</style>
|
||||
<script src="../lib/OpenLayers.js"></script>
|
||||
<script type="text/javascript">
|
||||
<!--
|
||||
var lon = 5;
|
||||
var lat = 40;
|
||||
var zoom = 5;
|
||||
var map, layer;
|
||||
|
||||
function init(){
|
||||
map = new OpenLayers.Map( 'map', {maxResolution:1.40625/2} );
|
||||
layer = new OpenLayers.Layer.TMS( "TMS",
|
||||
"http://labs.metacarta.com/wms-c/Basic.py/", {layername: 'basic', type:'png'} );
|
||||
map.addLayer(layer);
|
||||
map.addControl(new OpenLayers.Control.LayerSwitcher());
|
||||
map.setCenter(new OpenLayers.LonLat(lon, lat), zoom);
|
||||
}
|
||||
function addTMS() {
|
||||
l = new OpenLayers.Layer.TMS(
|
||||
OpenLayers.Util.getElement('layer').value,
|
||||
OpenLayers.Util.getElement('url').value,
|
||||
{
|
||||
'layername': OpenLayers.Util.getElement('layer').value,
|
||||
'type': OpenLayers.Util.getElement('type').value
|
||||
});
|
||||
map.addLayer(l);
|
||||
map.setBaseLayer(l);
|
||||
}
|
||||
// -->
|
||||
</script>
|
||||
</head>
|
||||
<body onload="init()">
|
||||
URL of TMS (Should end in /): <input type="text" id="url" size="60" /> layer_name <input type="text" id="layer" /> <select id="type"><option>png</option><option>jpg</option></select> <input type="submit" onclick="addTMS()"/><br />
|
||||
Example: http://mapserver.refractions.net/cgi-bin/tms/, global_mosaic, jpg
|
||||
<div id="map"></div>
|
||||
</body>
|
||||
</html>
|
||||