Compare commits
1505 Commits
release-2.
...
release-2.
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
7c132119f3 | ||
|
|
9a3db8c5b7 | ||
|
|
e846551c2c | ||
|
|
7adbed5dc8 | ||
|
|
9f4c47a282 | ||
|
|
98f52eadde | ||
|
|
81d6051752 | ||
|
|
feed7f2ed3 | ||
|
|
6721110f49 | ||
|
|
6ce9feed03 | ||
|
|
397a844f87 | ||
|
|
b6b11f560a | ||
|
|
d45edfb2c0 | ||
|
|
c82704905d | ||
|
|
fedcad3cb4 | ||
|
|
21daa083e9 | ||
|
|
0d45c5f148 | ||
|
|
e1be8e9dfb | ||
|
|
fef7e4febf | ||
|
|
e87e1c0c57 | ||
|
|
00cfa5de55 | ||
|
|
b61e29d920 | ||
|
|
5e7c501539 | ||
|
|
491a5c0f62 | ||
|
|
c0112c9bc6 | ||
|
|
17f2843317 | ||
|
|
8f70a140d0 | ||
|
|
53984809ce | ||
|
|
e4d13784fa | ||
|
|
afbec6829f | ||
|
|
4e9da707a1 | ||
|
|
55be96a9dc | ||
|
|
7ed03671df | ||
|
|
a852fc5153 | ||
|
|
9ce31ac8ee | ||
|
|
5f125e0ac2 | ||
|
|
6adcf2a4df | ||
|
|
3967bbfaa6 | ||
|
|
bef047bf31 | ||
|
|
190f13e884 | ||
|
|
582b21a4b1 | ||
|
|
81342b4b1f | ||
|
|
2c3a9eca5e | ||
|
|
5476d307f8 | ||
|
|
3c775ccc1a | ||
|
|
7eab9597cf | ||
|
|
a7f2311c32 | ||
|
|
d332ac2ef6 | ||
|
|
a3655cd66f | ||
|
|
32f70d06c2 | ||
|
|
13207d4ea1 | ||
|
|
b650d4d89e | ||
|
|
b95e9dac11 | ||
|
|
64a611e861 | ||
|
|
4f3a0f1267 | ||
|
|
d711e36ed6 | ||
|
|
89639a12bb | ||
|
|
79b70e6dd4 | ||
|
|
29133b05ab | ||
|
|
fd145c82b1 | ||
|
|
f33c5ef112 | ||
|
|
6e3af67dab | ||
|
|
8337674791 | ||
|
|
0e27cea7f8 | ||
|
|
7a5e837c9b | ||
|
|
a7d1cc9134 | ||
|
|
def3fbece6 | ||
|
|
5995202f3a | ||
|
|
8596bbc779 | ||
|
|
0527f120a8 | ||
|
|
c7a67700ce | ||
|
|
e140a5d843 | ||
|
|
035a30021d | ||
|
|
779732b63b | ||
|
|
adbd2405ca | ||
|
|
cf311ee532 | ||
|
|
62dd64c1c9 | ||
|
|
7e60535fe7 | ||
|
|
536a0410ee | ||
|
|
d3a2e0c5de | ||
|
|
bb9a11a469 | ||
|
|
970ff2741f | ||
|
|
3ef0b05949 | ||
|
|
66dabae11b | ||
|
|
baf35aeda2 | ||
|
|
fba3582b15 | ||
|
|
ae2f36963b | ||
|
|
44c675c48f | ||
|
|
0af21e8088 | ||
|
|
174078bca9 | ||
|
|
9d04541683 | ||
|
|
61ed146240 | ||
|
|
4a6524fa85 | ||
|
|
aed69fe93a | ||
|
|
7963fb6a7f | ||
|
|
07f4ad8354 | ||
|
|
04f2b20674 | ||
|
|
c9d459c7fe | ||
|
|
0628c05fc3 | ||
|
|
36face3f71 | ||
|
|
80ce6e6583 | ||
|
|
4c0935771d | ||
|
|
b8ba064ede | ||
|
|
587b2320ab | ||
|
|
a25f506f20 | ||
|
|
5fc138f69b | ||
|
|
b14822c569 | ||
|
|
0d07893f2a | ||
|
|
4b9f60f456 | ||
|
|
56bca84cfe | ||
|
|
7a29b2d324 | ||
|
|
a84c6b9302 | ||
|
|
7f45ff559a | ||
|
|
d5d21b1e71 | ||
|
|
4d44799cc2 | ||
|
|
acc96324c5 | ||
|
|
9e74908bc6 | ||
|
|
464aed9d75 | ||
|
|
76f1987a8b | ||
|
|
a108fb86bb | ||
|
|
147e5bba1a | ||
|
|
cafe9661c4 | ||
|
|
637dddf3b2 | ||
|
|
c15ffab9bc | ||
|
|
4918785ca1 | ||
|
|
b176d522c9 | ||
|
|
266f4c5843 | ||
|
|
fba3a883ac | ||
|
|
8b9486a936 | ||
|
|
3ba8a294ff | ||
|
|
15a7d0d18e | ||
|
|
d966553cdf | ||
|
|
7dd75fa6ea | ||
|
|
1417382f10 | ||
|
|
77c003e9f7 | ||
|
|
2f892476ea | ||
|
|
c5dfe37bd4 | ||
|
|
54b58e3faf | ||
|
|
2ff5aee63e | ||
|
|
e92d872a4a | ||
|
|
0276351f50 | ||
|
|
33d330c0db | ||
|
|
222162fa98 | ||
|
|
46fc3182e4 | ||
|
|
af2f3b7a70 | ||
|
|
aec3d44979 | ||
|
|
5287e4a38b | ||
|
|
a53097e7fe | ||
|
|
2c9cbab011 | ||
|
|
c03b23e6ee | ||
|
|
e8f79d95b1 | ||
|
|
f88f6cd6ed | ||
|
|
52b227958e | ||
|
|
31f3954923 | ||
|
|
8f584f2b84 | ||
|
|
2d29236fb0 | ||
|
|
991a7314c3 | ||
|
|
bb1c61acc2 | ||
|
|
55e345a02b | ||
|
|
04ee616947 | ||
|
|
96198dee07 | ||
|
|
78ab33e8f7 | ||
|
|
2f71742fc9 | ||
|
|
dbd08a10a3 | ||
|
|
2e00e2e442 | ||
|
|
bc28c096a7 | ||
|
|
87215daa54 | ||
|
|
09bcb46a03 | ||
|
|
9315972bb0 | ||
|
|
49bb038692 | ||
|
|
318003d399 | ||
|
|
770a0f31f5 | ||
|
|
45b54f4a2c | ||
|
|
83ade8f9d7 | ||
|
|
120d59f0e1 | ||
|
|
807000c4b7 | ||
|
|
5b7d530461 | ||
|
|
3ce239208f | ||
|
|
c0ae33e457 | ||
|
|
27da366cd0 | ||
|
|
545c001b5e | ||
|
|
046f0a39ed | ||
|
|
9af89ff189 | ||
|
|
d5848115df | ||
|
|
e04efa811d | ||
|
|
2cf798c459 | ||
|
|
e3a5426789 | ||
|
|
49e96f352f | ||
|
|
f5769b8097 | ||
|
|
288641e00d | ||
|
|
dfd80545ca | ||
|
|
d023ffc461 | ||
|
|
14324728ff | ||
|
|
2f93c18bd5 | ||
|
|
34b4bdd835 | ||
|
|
3f619f8b68 | ||
|
|
91d4efcbe1 | ||
|
|
23d24518fb | ||
|
|
86fd4d076b | ||
|
|
dc9f615833 | ||
|
|
415aca4763 | ||
|
|
7865f4d1f3 | ||
|
|
77a214764c | ||
|
|
7cea45db7f | ||
|
|
89ea2f4ee2 | ||
|
|
d3f5100327 | ||
|
|
c27af60153 | ||
|
|
324603612d | ||
|
|
ce4ff521b0 | ||
|
|
105351995e | ||
|
|
315bbcdef3 | ||
|
|
1b3404f1f9 | ||
|
|
1f58346772 | ||
|
|
e8a3885d27 | ||
|
|
e1a32ba630 | ||
|
|
987c2ae102 | ||
|
|
57191f5fd2 | ||
|
|
99e51364e5 | ||
|
|
361ca8af95 | ||
|
|
e3d137754c | ||
|
|
72f2ce5d0e | ||
|
|
7827b26a7d | ||
|
|
010ab7e81f | ||
|
|
2a12176915 | ||
|
|
fb5f081ea6 | ||
|
|
41ff5b8af8 | ||
|
|
afb80bfe48 | ||
|
|
07d5822995 | ||
|
|
55647c3e30 | ||
|
|
873fa8aa24 | ||
|
|
1f3a64d706 | ||
|
|
a0d3524994 | ||
|
|
f7c96d32c2 | ||
|
|
be1adc5d69 | ||
|
|
82a64751af | ||
|
|
1887969a3c | ||
|
|
f7d58dc36c | ||
|
|
8beb04d2ca | ||
|
|
31f1dd2610 | ||
|
|
a5c9052b94 | ||
|
|
8569ec2c2f | ||
|
|
b750f690d9 | ||
|
|
7fde5fd248 | ||
|
|
5a8260bb87 | ||
|
|
693c95f999 | ||
|
|
33eef42075 | ||
|
|
ba8aed56ef | ||
|
|
02d4257544 | ||
|
|
b754cc40ac | ||
|
|
709863eeae | ||
|
|
7ede83ad75 | ||
|
|
28ccd43ba4 | ||
|
|
b3091002f6 | ||
|
|
f785153bca | ||
|
|
1425c2b0e6 | ||
|
|
6486043716 | ||
|
|
b0b297bccd | ||
|
|
76a420b278 | ||
|
|
5826bf5f3b | ||
|
|
2d5f29c55e | ||
|
|
4c40f7c11f | ||
|
|
7219fd3743 | ||
|
|
bc509b84e3 | ||
|
|
fa533001d1 | ||
|
|
26d8f31c5d | ||
|
|
0e487a6d6b | ||
|
|
a076ce9228 | ||
|
|
a26f8b7e27 | ||
|
|
960ef3de18 | ||
|
|
b34dbcb903 | ||
|
|
979d78f6aa | ||
|
|
0aa0b680a2 | ||
|
|
d7afd24ac5 | ||
|
|
7ec361cda9 | ||
|
|
0546f974c5 | ||
|
|
1179ffe682 | ||
|
|
97db05e482 | ||
|
|
b6cc99be8f | ||
|
|
09c21c6b86 | ||
|
|
99f0376c8f | ||
|
|
4a4d9b29cd | ||
|
|
339d1ebaef | ||
|
|
f7fcb86ee9 | ||
|
|
269749ec23 | ||
|
|
be040c6614 | ||
|
|
3f47ab809c | ||
|
|
a2d1623b80 | ||
|
|
03cdbd8a02 | ||
|
|
7d195697b6 | ||
|
|
93da80b0c4 | ||
|
|
9d6d6bdd27 | ||
|
|
479d2c28b6 | ||
|
|
4be8f72afe | ||
|
|
b22963a2ef | ||
|
|
876e0dfd81 | ||
|
|
d06c66edab | ||
|
|
8d2bbfe28f | ||
|
|
07e34672b5 | ||
|
|
680923319c | ||
|
|
8da53d8fbd | ||
|
|
6b54f9e80a | ||
|
|
30aeab365a | ||
|
|
f8db509725 | ||
|
|
fa32a4a645 | ||
|
|
0961132ab6 | ||
|
|
5c400dac4f | ||
|
|
8284c81b3b | ||
|
|
61452e2821 | ||
|
|
f55291bd34 | ||
|
|
9ce641bd75 | ||
|
|
e1b9b2b89d | ||
|
|
8ef02b39ef | ||
|
|
9ebdb1e4f7 | ||
|
|
257b96b309 | ||
|
|
75538b6f42 | ||
|
|
abb2bb509d | ||
|
|
b469555a79 | ||
|
|
6e83eb0018 | ||
|
|
c55323cf3a | ||
|
|
7fe4329afe | ||
|
|
8d15d94494 | ||
|
|
d21b7b081f | ||
|
|
406bca8d70 | ||
|
|
1619f0801b | ||
|
|
50c292f176 | ||
|
|
8965a61c75 | ||
|
|
629720b2d1 | ||
|
|
d34a9ee035 | ||
|
|
dda9139347 | ||
|
|
418dd126fa | ||
|
|
f299a41340 | ||
|
|
b7babb5edf | ||
|
|
2f42aeb440 | ||
|
|
9e2eef5f47 | ||
|
|
b378d28e41 | ||
|
|
ab309197e2 | ||
|
|
36f5232dd6 | ||
|
|
892d9d7768 | ||
|
|
500d351013 | ||
|
|
98a6c1754d | ||
|
|
f67bcaa033 | ||
|
|
6b5ac685b1 | ||
|
|
2a59831290 | ||
|
|
cd10d36025 | ||
|
|
332208539d | ||
|
|
103e620dff | ||
|
|
83f9422296 | ||
|
|
bc81882a8e | ||
|
|
c852abad61 | ||
|
|
c9fe40cc3c | ||
|
|
849426f845 | ||
|
|
3066b50956 | ||
|
|
7a8f3917c9 | ||
|
|
2908fa79e5 | ||
|
|
07160f5385 | ||
|
|
7a1cb00fe4 | ||
|
|
2fd0eff3c1 | ||
|
|
fa15785c96 | ||
|
|
17eaecc4e5 | ||
|
|
174bd431f4 | ||
|
|
7e18475a0b | ||
|
|
3fce968f2a | ||
|
|
dbf886dad0 | ||
|
|
941ebc78ce | ||
|
|
788b05c32f | ||
|
|
f84f696e31 | ||
|
|
08acb65e0e | ||
|
|
7f34868fe2 | ||
|
|
d33477d65f | ||
|
|
39e9728696 | ||
|
|
a736a44955 | ||
|
|
5e091d46d8 | ||
|
|
b30d35c615 | ||
|
|
d6695cff67 | ||
|
|
28e5614e98 | ||
|
|
994c156878 | ||
|
|
95d8cd3473 | ||
|
|
95380a512c | ||
|
|
1f042af289 | ||
|
|
3db27d7832 | ||
|
|
04acbeeb0e | ||
|
|
0781655e19 | ||
|
|
0fa37001dc | ||
|
|
2eee8a3add | ||
|
|
6e13d7f8f3 | ||
|
|
b3ca71d48f | ||
|
|
1be7701c8f | ||
|
|
4f3466b005 | ||
|
|
94ddd78df7 | ||
|
|
92849418d8 | ||
|
|
47767fbd0c | ||
|
|
5f89ce40ea | ||
|
|
9495c8cb70 | ||
|
|
198b3a9c7f | ||
|
|
5d92c646b6 | ||
|
|
6b0b3375e3 | ||
|
|
b434c02e1d | ||
|
|
a1c80ffb7e | ||
|
|
2f7a3e818a | ||
|
|
54fe8a5590 | ||
|
|
3ba277f6b7 | ||
|
|
4a9460b314 | ||
|
|
f73fb689a8 | ||
|
|
3a16592b1a | ||
|
|
3913ef1787 | ||
|
|
c8982cb99a | ||
|
|
edfbcb0a5e | ||
|
|
fcdd918170 | ||
|
|
b5f4eca585 | ||
|
|
7b5718f9ac | ||
|
|
3795dbf490 | ||
|
|
c8c8a74be7 | ||
|
|
441a5408cd | ||
|
|
3515d23ce7 | ||
|
|
f68ee50a8e | ||
|
|
eaeb2467bf | ||
|
|
1c1bcf86ff | ||
|
|
ece7beff27 | ||
|
|
03fd0056aa | ||
|
|
472f0e55fe | ||
|
|
8c258e9901 | ||
|
|
8dd58e484a | ||
|
|
6ccbdf330c | ||
|
|
b6de19074e | ||
|
|
11c609d3fd | ||
|
|
b9b7a68b19 | ||
|
|
0bc34e48c6 | ||
|
|
52a105c3aa | ||
|
|
9e89f4f173 | ||
|
|
373dc629bb | ||
|
|
1efea75029 | ||
|
|
46a382e79f | ||
|
|
1144b2cd8c | ||
|
|
d0ab1fd219 | ||
|
|
06b32c30a7 | ||
|
|
ad54169479 | ||
|
|
5587fe7013 | ||
|
|
1c421576c3 | ||
|
|
e7803974b0 | ||
|
|
7eed099b4e | ||
|
|
564376c847 | ||
|
|
fe6047859f | ||
|
|
1b9996d62c | ||
|
|
62d91da358 | ||
|
|
24f233fb30 | ||
|
|
697ee375b8 | ||
|
|
e00a21541d | ||
|
|
e9e2aec77d | ||
|
|
b61cec71a1 | ||
|
|
4c3d4c77c0 | ||
|
|
8084f63cb0 | ||
|
|
1ff89a9c40 | ||
|
|
b351734cf6 | ||
|
|
4104942bca | ||
|
|
43d9e2e1a4 | ||
|
|
9f47e1915d | ||
|
|
ed7faebbcb | ||
|
|
43dd65d357 | ||
|
|
92493cc12b | ||
|
|
831420aac2 | ||
|
|
b125e045d1 | ||
|
|
492a6d930b | ||
|
|
da8766d9d6 | ||
|
|
b3f7d25c37 | ||
|
|
542f8c5a84 | ||
|
|
0f6c6545f6 | ||
|
|
e970151067 | ||
|
|
30eabe26ad | ||
|
|
e851d453de | ||
|
|
57bbf90cab | ||
|
|
b696581405 | ||
|
|
3e9253a5cb | ||
|
|
5fe1b76e19 | ||
|
|
9a3ca5fa7e | ||
|
|
7608e867e9 | ||
|
|
f5735dabae | ||
|
|
a56fe160d2 | ||
|
|
8e9087344d | ||
|
|
851681cca1 | ||
|
|
66960d392f | ||
|
|
c8c9b51e73 | ||
|
|
003312856c | ||
|
|
6763ec26f8 | ||
|
|
34c52fb5a8 | ||
|
|
5924c75c9b | ||
|
|
a59266325b | ||
|
|
e40bb1f10d | ||
|
|
b9517a4cb5 | ||
|
|
aa9112c494 | ||
|
|
89c215bba4 | ||
|
|
532f64f105 | ||
|
|
7fd84b613d | ||
|
|
8024e58177 | ||
|
|
3c57b6b36c | ||
|
|
da9bf7991d | ||
|
|
a5e06e66e2 | ||
|
|
e087e31621 | ||
|
|
1b44b82908 | ||
|
|
2bb081255e | ||
|
|
e606386b94 | ||
|
|
107cf7948c | ||
|
|
6c56531378 | ||
|
|
44bba4bc6b | ||
|
|
12d3c86eb4 | ||
|
|
2176013e24 | ||
|
|
1ce6ce1827 | ||
|
|
ea3999d755 | ||
|
|
758a252bd8 | ||
|
|
aa49e90a2f | ||
|
|
102f7da67e | ||
|
|
1397f816b5 | ||
|
|
ba21865e28 | ||
|
|
113f87b317 | ||
|
|
485ebaa316 | ||
|
|
8dc19c84c7 | ||
|
|
0bcf869632 | ||
|
|
8047afd909 | ||
|
|
5ec2f0371d | ||
|
|
e22a37476d | ||
|
|
ee9c3e76af | ||
|
|
26d20c1fb1 | ||
|
|
233ffe6a10 | ||
|
|
2049b2a8b2 | ||
|
|
1d1911e28d | ||
|
|
059b83a52f | ||
|
|
0dc5793834 | ||
|
|
fe16f7b409 | ||
|
|
ff6a4d44e7 | ||
|
|
f4a99d4052 | ||
|
|
b8feb3c22e | ||
|
|
bb71632848 | ||
|
|
38c3a4d4c5 | ||
|
|
e22389086c | ||
|
|
ce90aebfd0 | ||
|
|
1284b71bbc | ||
|
|
c70a97fb77 | ||
|
|
5417057974 | ||
|
|
a1f20ee345 | ||
|
|
35092e9226 | ||
|
|
4be7614570 | ||
|
|
581525af98 | ||
|
|
a40edf44f7 | ||
|
|
3aeab46132 | ||
|
|
d879ca8d00 | ||
|
|
92429bb7c2 | ||
|
|
47173e6b62 | ||
|
|
3471306a2e | ||
|
|
26eccbd049 | ||
|
|
95512dfa5a | ||
|
|
f76f8ded46 | ||
|
|
cfa3353d42 | ||
|
|
fb35f555be | ||
|
|
e3d36e80e9 | ||
|
|
f0d474e50b | ||
|
|
dde71c9b3b | ||
|
|
7f50e32905 | ||
|
|
fd083d64d2 | ||
|
|
54fd1f561c | ||
|
|
acae8a8013 | ||
|
|
e32372e4b2 | ||
|
|
8b0d660b00 | ||
|
|
a167860818 | ||
|
|
257cc5576b | ||
|
|
fce15acc01 | ||
|
|
b7f0f27dcd | ||
|
|
cdb4b78136 | ||
|
|
5f59b8d72d | ||
|
|
7295ffc9d4 | ||
|
|
6e28a7cafd | ||
|
|
6f73f7059f | ||
|
|
ce0ba0b570 | ||
|
|
a6319b2974 | ||
|
|
19af3bb8e7 | ||
|
|
7832d8dda1 | ||
|
|
cb3fc7842b | ||
|
|
29dece02a5 | ||
|
|
6b9ee6bb5e | ||
|
|
ed2e943e52 | ||
|
|
c5f233ab8c | ||
|
|
bf778b21c1 | ||
|
|
69032c0534 | ||
|
|
3520c32140 | ||
|
|
da14451dbd | ||
|
|
a785dc1b1f | ||
|
|
23137091fc | ||
|
|
f37c9f8aef | ||
|
|
ee7065c9fa | ||
|
|
3f172c501d | ||
|
|
25fac24436 | ||
|
|
28558c171c | ||
|
|
2c7eade60c | ||
|
|
59953b8eb6 | ||
|
|
5750b5f6e0 | ||
|
|
050eda6670 | ||
|
|
7eaa37856c | ||
|
|
814810f6ed | ||
|
|
9450124359 | ||
|
|
9d4e91e717 | ||
|
|
0d6658f52d | ||
|
|
7993fc177b | ||
|
|
94c29f1d4d | ||
|
|
42fedc4d69 | ||
|
|
415fcbf9f9 | ||
|
|
fc9e67318e | ||
|
|
9ae54040db | ||
|
|
5a8775cd16 | ||
|
|
602cf46c10 | ||
|
|
68d82edc01 | ||
|
|
c68e234b71 | ||
|
|
a52cb98622 | ||
|
|
33410b0e76 | ||
|
|
e0c3db1227 | ||
|
|
c15a1a0779 | ||
|
|
d965d4a1a0 | ||
|
|
c77688a0be | ||
|
|
f0736370f3 | ||
|
|
ea1290f8d8 | ||
|
|
9d3c4ecb1c | ||
|
|
31afaf1fca | ||
|
|
f89fb1f226 | ||
|
|
0892e61bcb | ||
|
|
6c0952934f | ||
|
|
9fd7463680 | ||
|
|
f2247ae079 | ||
|
|
e5f0cfe906 | ||
|
|
a5f2ddcfa1 | ||
|
|
ca27481c66 | ||
|
|
7398216346 | ||
|
|
b2f810361d | ||
|
|
6adffe5be2 | ||
|
|
2a30747bd9 | ||
|
|
67b0c7180f | ||
|
|
ee00417729 | ||
|
|
d880d2d2b7 | ||
|
|
afa7b9c2bb | ||
|
|
3d0c264198 | ||
|
|
a5ca639c5b | ||
|
|
1d8773eab6 | ||
|
|
309d198e04 | ||
|
|
64842fd711 | ||
|
|
4d3a1eebf7 | ||
|
|
74a6f7e895 | ||
|
|
e32d63d7b2 | ||
|
|
b81b05a9b5 | ||
|
|
1c4afaaded | ||
|
|
8c2caf91d1 | ||
|
|
c4eaee5b5c | ||
|
|
b428e58090 | ||
|
|
28a7776d04 | ||
|
|
42b003669c | ||
|
|
509042078e | ||
|
|
d47944e4b7 | ||
|
|
de462bbe33 | ||
|
|
22aa4281fa | ||
|
|
ef9afd22cb | ||
|
|
ea183210fe | ||
|
|
72e2280c87 | ||
|
|
955ee1b1a9 | ||
|
|
a9a9b6387e | ||
|
|
1f601390dd | ||
|
|
40539ff6d3 | ||
|
|
c8cad59575 | ||
|
|
20a4025af0 | ||
|
|
e643531a0a | ||
|
|
0bc3e3c8b3 | ||
|
|
08f506176b | ||
|
|
2939bad8d0 | ||
|
|
0db8f59ae3 | ||
|
|
d895af91a5 | ||
|
|
98941c9952 | ||
|
|
0b9e0f50ab | ||
|
|
60e869e295 | ||
|
|
ae472b69a2 | ||
|
|
a8af8bceb5 | ||
|
|
5f6a2209ba | ||
|
|
fa1b7d2481 | ||
|
|
9a2363d06b | ||
|
|
e6b0ec0ee3 | ||
|
|
4bb7ccaf0a | ||
|
|
c4fbe1c0b3 | ||
|
|
cd94a7f17d | ||
|
|
cca1395fc6 | ||
|
|
eb4d5a2447 | ||
|
|
98c7687033 | ||
|
|
e6de46b9d3 | ||
|
|
f42bbd1dfc | ||
|
|
07ee9991be | ||
|
|
fba8a99b9b | ||
|
|
d1e24bdcc0 | ||
|
|
f7113df376 | ||
|
|
35b8350aec | ||
|
|
7177144816 | ||
|
|
71482163cf | ||
|
|
d0a2edbebd | ||
|
|
448373eb75 | ||
|
|
1b5add6efe | ||
|
|
2b8e293d83 | ||
|
|
fd6c16bb6c | ||
|
|
a69a0d2164 | ||
|
|
ae5d20b39f | ||
|
|
744ee039bd | ||
|
|
9bd7f02dbb | ||
|
|
88f2922f54 | ||
|
|
8b0712bb24 | ||
|
|
925b6fa206 | ||
|
|
f9391dd158 | ||
|
|
d57b603d07 | ||
|
|
5f96b1f914 | ||
|
|
e4085bbdc6 | ||
|
|
91bceb273b | ||
|
|
53b4356219 | ||
|
|
f52cd8972a | ||
|
|
ef87d15cfe | ||
|
|
0f648dedf4 | ||
|
|
1c9ba551a7 | ||
|
|
69b4a84381 | ||
|
|
c4e779b992 | ||
|
|
f95532ab6f | ||
|
|
194c6adc4d | ||
|
|
489d3c47b6 | ||
|
|
a6cd2d51d5 | ||
|
|
fd32f2e9dd | ||
|
|
a1f90c7ac8 | ||
|
|
449bc859c4 | ||
|
|
e67c9411b4 | ||
|
|
c19a190905 | ||
|
|
baa4e7469b | ||
|
|
2d8981aed5 | ||
|
|
7c40667ad7 | ||
|
|
3b0cd09aad | ||
|
|
57d3f26efc | ||
|
|
f38d5e0790 | ||
|
|
b0e726b988 | ||
|
|
f66607a6e8 | ||
|
|
c7e840876c | ||
|
|
4658d32b31 | ||
|
|
a5093a27fa | ||
|
|
701896e0c3 | ||
|
|
cbfcf40e6a | ||
|
|
dc4d5036e4 | ||
|
|
0bb5ab8191 | ||
|
|
69cb8fbb5e | ||
|
|
5a05b6c142 | ||
|
|
6341e8e2b9 | ||
|
|
aa246a1122 | ||
|
|
4f809a9714 | ||
|
|
ca3ecfc5b1 | ||
|
|
35aadaf0c8 | ||
|
|
674a414971 | ||
|
|
be986a0243 | ||
|
|
295363fe58 | ||
|
|
d5daa28fed | ||
|
|
69d8ac892f | ||
|
|
7b7c174cc7 | ||
|
|
da2dffce1a | ||
|
|
20cbb95feb | ||
|
|
14ac071f20 | ||
|
|
e7d3e64908 | ||
|
|
3de62b703a | ||
|
|
ff8b356638 | ||
|
|
180eb8485f | ||
|
|
48cc4b138b | ||
|
|
f4fbc96036 | ||
|
|
1f77d278ef | ||
|
|
7632e54a4d | ||
|
|
35168dc219 | ||
|
|
a5bb2b01b3 | ||
|
|
5038090d74 | ||
|
|
fcfb22920b | ||
|
|
d324395de6 | ||
|
|
a1db2ca642 | ||
|
|
1faed26393 | ||
|
|
fe9aa59b91 | ||
|
|
3304c6cb0e | ||
|
|
cca74e7635 | ||
|
|
27234b07ff | ||
|
|
223547e227 | ||
|
|
6ecdf6c1aa | ||
|
|
1c51a13903 | ||
|
|
c1409ee57d | ||
|
|
ba91df7f1b | ||
|
|
48ba06b294 | ||
|
|
4ab6b7ec24 | ||
|
|
76983744da | ||
|
|
37e0c0b4f5 | ||
|
|
c54dc76d15 | ||
|
|
1757d4082e | ||
|
|
fc4e05dd83 | ||
|
|
3e5bd85849 | ||
|
|
dc5fa3c612 | ||
|
|
e7b0857e31 | ||
|
|
1dd852ef09 | ||
|
|
a036ffff1b | ||
|
|
bc1246877e | ||
|
|
e061da04c9 | ||
|
|
1d6c1f437e | ||
|
|
4e2d70b770 | ||
|
|
90c6a020c7 | ||
|
|
891b12160c | ||
|
|
bc84b54343 | ||
|
|
fd768cf170 | ||
|
|
6fa1a14456 | ||
|
|
94c4837475 | ||
|
|
3d4d2de615 | ||
|
|
22f0f933fb | ||
|
|
8adcc155fb | ||
|
|
a27c552554 | ||
|
|
ac60e4fcf6 | ||
|
|
09a858559b | ||
|
|
2eb866658a | ||
|
|
876fdebec9 | ||
|
|
662564957c | ||
|
|
e21dc76468 | ||
|
|
b165d015e1 | ||
|
|
7a546bf5c5 | ||
|
|
5c03ebd729 | ||
|
|
7179166603 | ||
|
|
6b7fd781ee | ||
|
|
e17dc78e1d | ||
|
|
fbc9a6f43a | ||
|
|
50f26e3313 | ||
|
|
83297678ba | ||
|
|
2e47542fbe | ||
|
|
e5e4d49d33 | ||
|
|
5050814fa4 | ||
|
|
15de885540 | ||
|
|
6811dc3745 | ||
|
|
b19261d417 | ||
|
|
74aaf479a5 | ||
|
|
ec8e2146ec | ||
|
|
0af99e0de7 | ||
|
|
777ef007ad | ||
|
|
1b3af5d26d | ||
|
|
07437865db | ||
|
|
2ba1de77f8 | ||
|
|
d14f3c6c31 | ||
|
|
b2a1dee791 | ||
|
|
db153e199a | ||
|
|
2d61186deb | ||
|
|
52f34e0baf | ||
|
|
8521ebb7c0 | ||
|
|
36d96126eb | ||
|
|
06d2b4229d | ||
|
|
929e6b323c | ||
|
|
77ffdf7248 | ||
|
|
37e881bc54 | ||
|
|
ae73ca0679 | ||
|
|
78a2289d6a | ||
|
|
e3561c3ceb | ||
|
|
5c7d3e5632 | ||
|
|
a5848fc84d | ||
|
|
af1e754546 | ||
|
|
ec455e81e1 | ||
|
|
f927d79977 | ||
|
|
c75e16e5f2 | ||
|
|
2100d63846 | ||
|
|
6223d7fd82 | ||
|
|
9b728d048d | ||
|
|
cb0dffc045 | ||
|
|
7a78237bdd | ||
|
|
5edcc97240 | ||
|
|
153cba8147 | ||
|
|
86eb16a208 | ||
|
|
1f481f3d38 | ||
|
|
e5aab2453d | ||
|
|
c1f9945838 | ||
|
|
822e8f5485 | ||
|
|
e562626f87 | ||
|
|
8cbac47177 | ||
|
|
ca8222a13c | ||
|
|
da664350fe | ||
|
|
65bed91e4e | ||
|
|
14749daa74 | ||
|
|
5c397b8d0c | ||
|
|
e8d8aa7d47 | ||
|
|
9911bb55ce | ||
|
|
cca8894b91 | ||
|
|
311f47da78 | ||
|
|
eda2a80187 | ||
|
|
88b05f55a1 | ||
|
|
44ba385429 | ||
|
|
9066c0e960 | ||
|
|
c64c2e4296 | ||
|
|
871a790f3f | ||
|
|
8a74ad8ed5 | ||
|
|
bae2fa59ed | ||
|
|
f6b00d7ced | ||
|
|
2619586558 | ||
|
|
442d760fe5 | ||
|
|
be246326ee | ||
|
|
52e055294f | ||
|
|
fcc2057b42 | ||
|
|
728fcdcda2 | ||
|
|
3a6ac9b83f | ||
|
|
2c23d9ff25 | ||
|
|
e99979ffe5 | ||
|
|
e95b023b5e | ||
|
|
2ddb4c1927 | ||
|
|
7bbacbc7cc | ||
|
|
793396a4cb | ||
|
|
321a237d2f | ||
|
|
f54fd67504 | ||
|
|
2449b7029c | ||
|
|
3ee6c4663c | ||
|
|
cc4b914fff | ||
|
|
b948eb163b | ||
|
|
f5ff990898 | ||
|
|
31189f1e45 | ||
|
|
e9264d89eb | ||
|
|
e6f4a27b93 | ||
|
|
30b936399a | ||
|
|
6770cffdac | ||
|
|
fdb924ebfb | ||
|
|
f28ebc2a02 | ||
|
|
fe126f123f | ||
|
|
11924d0d0f | ||
|
|
711d412f88 | ||
|
|
b655b14f01 | ||
|
|
42f06c259b | ||
|
|
03a6de0fb7 | ||
|
|
e6c6f93477 | ||
|
|
e0be3f2e65 | ||
|
|
e10e39b19c | ||
|
|
a23f2229cf | ||
|
|
4ff1ece2e4 | ||
|
|
610c2b9933 | ||
|
|
ec3d804af4 | ||
|
|
40206dc8cf | ||
|
|
e60dee85b9 | ||
|
|
95055aa457 | ||
|
|
0038def935 | ||
|
|
5018aaa4ba | ||
|
|
7b9de2be30 | ||
|
|
9e81d4d332 | ||
|
|
d9a982f169 | ||
|
|
081ce883fb | ||
|
|
f57e19ae2d | ||
|
|
10920f6f93 | ||
|
|
ebc5d7c021 | ||
|
|
33e39a205a | ||
|
|
12c83b533d | ||
|
|
1b95a25ee1 | ||
|
|
c9df8f4d43 | ||
|
|
01debb1c53 | ||
|
|
e77a804559 | ||
|
|
5fd5085eba | ||
|
|
7907a81ae5 | ||
|
|
e003972959 | ||
|
|
1e87b26029 | ||
|
|
4ca45ced61 | ||
|
|
6f17fa1c9a | ||
|
|
6568eb4d8a | ||
|
|
d9fd39d547 | ||
|
|
cf4c14a1e4 | ||
|
|
5119ffa50e | ||
|
|
6839605b0f | ||
|
|
ab42111aac | ||
|
|
316136b346 | ||
|
|
4e6c3b1f3e | ||
|
|
dbcab22339 | ||
|
|
56382e8e49 | ||
|
|
c67d1f5952 | ||
|
|
ee737577f7 | ||
|
|
f000057659 | ||
|
|
6d43a28da6 | ||
|
|
a864838e96 | ||
|
|
839348a3b2 | ||
|
|
fd514e8435 | ||
|
|
6c213ba86b | ||
|
|
6e508f5cd6 | ||
|
|
caff5d5261 | ||
|
|
4031b304a6 | ||
|
|
5b3f6f68d3 | ||
|
|
13c5f5ac4c | ||
|
|
9711381289 | ||
|
|
e264e8c6c4 | ||
|
|
6dabe0646e | ||
|
|
039618366f | ||
|
|
bff91d251c | ||
|
|
ab2b2356f1 | ||
|
|
3e0b053009 | ||
|
|
0cced02fec | ||
|
|
e13078b64a | ||
|
|
fa324ec7f3 | ||
|
|
5a9e1fe0b4 | ||
|
|
7919d2a314 | ||
|
|
b2056fd141 | ||
|
|
d1cecf3be1 | ||
|
|
11b38e5419 | ||
|
|
10398c5865 | ||
|
|
2c2bf63c3f | ||
|
|
f7143f7e02 | ||
|
|
7e821da0b5 | ||
|
|
a84e06a075 | ||
|
|
8c094a8977 | ||
|
|
79aad5a1b4 | ||
|
|
86bd389152 | ||
|
|
2633f9ba88 | ||
|
|
5fad952e8a | ||
|
|
3fa2971816 | ||
|
|
d7a37c67b7 | ||
|
|
449ea29086 | ||
|
|
8c3562e3ad | ||
|
|
e0167bdeec | ||
|
|
7a9e54afdc | ||
|
|
6c4556666e | ||
|
|
8c3b6cc4b5 | ||
|
|
6088de516c | ||
|
|
507fd0b86d | ||
|
|
3fcda4df56 | ||
|
|
21b680868f | ||
|
|
4102871392 | ||
|
|
93eccfc003 | ||
|
|
7f240d3ba9 | ||
|
|
912a12c0b8 | ||
|
|
361f6065a7 | ||
|
|
f8c2889947 | ||
|
|
bdabaa86f9 | ||
|
|
e6a2c4c7de | ||
|
|
9945381043 | ||
|
|
9970eaff16 | ||
|
|
19057eedd8 | ||
|
|
ef1952e953 | ||
|
|
f3f6974eb6 | ||
|
|
8e73b3f8db | ||
|
|
b9bcc0b7f8 | ||
|
|
f587b05d35 | ||
|
|
d83376de64 | ||
|
|
2b9bd25530 | ||
|
|
c1a0d405e4 | ||
|
|
5964a8db60 | ||
|
|
01d4330c81 | ||
|
|
868f886cad | ||
|
|
0f35a3a434 | ||
|
|
ed6790e652 | ||
|
|
77ea74cc2c | ||
|
|
e5a577b062 | ||
|
|
f0c5e94403 | ||
|
|
6012498ae8 | ||
|
|
6f18a6abd0 | ||
|
|
1f3d495a12 | ||
|
|
8fdd423104 | ||
|
|
7b90863198 | ||
|
|
8b741bc666 | ||
|
|
1afb016408 | ||
|
|
f7a2efe2bf | ||
|
|
1faae2a2a2 | ||
|
|
f838aa3a03 | ||
|
|
2564da4403 | ||
|
|
547371f107 | ||
|
|
82cbb8c7cb | ||
|
|
2c8ec98643 | ||
|
|
f4d60b89a8 | ||
|
|
feb29516b3 | ||
|
|
4e77c9648a | ||
|
|
7c4f85ffd5 | ||
|
|
cb71201350 | ||
|
|
1b4d654ff8 | ||
|
|
ca23e49707 | ||
|
|
d6d824b389 | ||
|
|
1e35173c2b | ||
|
|
9d74c087ce | ||
|
|
253a8bbaf7 | ||
|
|
ef739e42c3 | ||
|
|
3fd553cdf4 | ||
|
|
8765b0199f | ||
|
|
be1d375bf7 | ||
|
|
a20a209f0e | ||
|
|
cad1839201 | ||
|
|
81ea635430 | ||
|
|
d6a3c508a1 | ||
|
|
553f05d293 | ||
|
|
94437d3e5f | ||
|
|
ebaa5066fc | ||
|
|
2bf02bda35 | ||
|
|
52a4d4f8cc | ||
|
|
d178a7675b | ||
|
|
16715f41f6 | ||
|
|
e946b0a7eb | ||
|
|
6b6ca2a125 | ||
|
|
5f0d573ff5 | ||
|
|
51b5095d48 | ||
|
|
b768574d72 | ||
|
|
0ec407ca04 | ||
|
|
5a8b116d10 | ||
|
|
b98dba227e | ||
|
|
6785e06150 | ||
|
|
51b1937aa6 | ||
|
|
0811578965 | ||
|
|
b34325588c | ||
|
|
cf0ca6d2fc | ||
|
|
608ef2730f | ||
|
|
6570f44d7c | ||
|
|
57600b2c81 | ||
|
|
fd299eb552 | ||
|
|
d54440b0e9 | ||
|
|
cd815bc2a2 | ||
|
|
2bb58ebb24 | ||
|
|
d1ab118f91 | ||
|
|
625766b492 | ||
|
|
1c319bc4a7 | ||
|
|
4b9393c809 | ||
|
|
946969c356 | ||
|
|
99559b51f7 | ||
|
|
491e9e45a5 | ||
|
|
af18408539 | ||
|
|
49d10d37c8 | ||
|
|
74522391a0 | ||
|
|
2aa7f22926 | ||
|
|
13e42ec59b | ||
|
|
a247995670 | ||
|
|
4664edacc8 | ||
|
|
976b4703b5 | ||
|
|
da3a4b272a | ||
|
|
29a23731ab | ||
|
|
29ba60eb59 | ||
|
|
dfcf68007e | ||
|
|
70c3fd077d | ||
|
|
e0faaf59d9 | ||
|
|
ddbf4b5222 | ||
|
|
119f9bc635 | ||
|
|
06a27dc36f | ||
|
|
cc2e19d789 | ||
|
|
dd556be0be | ||
|
|
736b3ff08c | ||
|
|
1fd32e0ff8 | ||
|
|
cf81c29d31 | ||
|
|
b296b083be | ||
|
|
0c49c8faa0 | ||
|
|
d51ea434ca | ||
|
|
2e3f22809d | ||
|
|
3222fd3618 | ||
|
|
2b7e8f5198 | ||
|
|
08077f0f42 | ||
|
|
5f335f4207 | ||
|
|
0e858fa4af | ||
|
|
861a9c10f5 | ||
|
|
87a2f0d47e | ||
|
|
194474999c | ||
|
|
f2f118ad90 | ||
|
|
e72da4f74e | ||
|
|
0e05f90932 | ||
|
|
c1f9d60985 | ||
|
|
ed5420b678 | ||
|
|
d3d80a02a9 | ||
|
|
f59eceef71 | ||
|
|
a685884a4f | ||
|
|
143f72a8e5 | ||
|
|
f52c7c955e | ||
|
|
e3103362ee | ||
|
|
043bbab2ca | ||
|
|
3841155621 | ||
|
|
85974d11a0 | ||
|
|
ebb7a08325 | ||
|
|
64b4752592 | ||
|
|
f5269f8acd | ||
|
|
bcf29b8a65 | ||
|
|
f372bd3fd1 | ||
|
|
b0f71c2702 | ||
|
|
d1898d1a7d | ||
|
|
e1b1c814de | ||
|
|
467dff424c | ||
|
|
8b0208ae44 | ||
|
|
49774f6ab5 | ||
|
|
b625337018 | ||
|
|
1bf80712a6 | ||
|
|
b2258606dc | ||
|
|
3c863c8c2f | ||
|
|
4254d1efdf | ||
|
|
339f5bf8f6 | ||
|
|
5b61fdafd1 | ||
|
|
f37ee550f4 | ||
|
|
bfc17248e9 | ||
|
|
b1c11b9814 | ||
|
|
59c49eb98e | ||
|
|
85888788ea | ||
|
|
8b58d97206 | ||
|
|
fe0ddf9f21 | ||
|
|
deaa52477b | ||
|
|
8ba31e4a91 | ||
|
|
ffe3f90ffb | ||
|
|
a8c1973d27 | ||
|
|
a6e84ae192 | ||
|
|
2ab6c404e1 | ||
|
|
ef23accd13 | ||
|
|
0c1fe31b0a | ||
|
|
61b5293692 | ||
|
|
cf5aa98cce | ||
|
|
8bac39243f | ||
|
|
44ab482e89 | ||
|
|
a9e087b5b9 | ||
|
|
84fa9dd1ae | ||
|
|
cd899ab11e | ||
|
|
05658f1231 | ||
|
|
807706219b | ||
|
|
273c7ab5d2 | ||
|
|
2ee964ba55 | ||
|
|
3be75cc8d9 | ||
|
|
3e55ef6aa3 | ||
|
|
85dc3a9880 | ||
|
|
2b1e8641f9 | ||
|
|
5c26d578ca | ||
|
|
fdb267987b | ||
|
|
7130992b16 | ||
|
|
65e4ce3e47 | ||
|
|
f06b11d878 | ||
|
|
0a6ea3125d | ||
|
|
7e35022dff | ||
|
|
567d32f35f | ||
|
|
e49f1435bc | ||
|
|
22af9d6412 | ||
|
|
66b4cd65f6 | ||
|
|
c6a7dd235d | ||
|
|
baf260c6f1 | ||
|
|
eb03ccc02d | ||
|
|
6708f691e2 | ||
|
|
2c177fc85c | ||
|
|
5e387191d5 | ||
|
|
5497e3a272 | ||
|
|
b505822fd1 | ||
|
|
576e931dac | ||
|
|
7fa74f1b0b | ||
|
|
082107b2a0 | ||
|
|
7af042ac7f | ||
|
|
291d2e27f6 | ||
|
|
cea2bdd3a1 | ||
|
|
483c6ea4e6 | ||
|
|
f9e9eb61ae | ||
|
|
49d6463f4e | ||
|
|
8df8106a51 | ||
|
|
2a8015775b | ||
|
|
13833e0a67 | ||
|
|
086506b926 | ||
|
|
4975ed8fd1 | ||
|
|
ece39fb1b5 | ||
|
|
458461c779 | ||
|
|
d2c0182fd9 | ||
|
|
e89774d568 | ||
|
|
9afcb939be | ||
|
|
b682f76f95 | ||
|
|
f65e76db2d | ||
|
|
713cfb600b | ||
|
|
47a66ceff5 | ||
|
|
f80fc57b8d | ||
|
|
b00989cbd8 | ||
|
|
be06680e85 | ||
|
|
8586e460a0 | ||
|
|
a058555c62 | ||
|
|
718495bcec | ||
|
|
612e95793c | ||
|
|
9e3bf16b0d | ||
|
|
8c0d034516 | ||
|
|
7db0265495 | ||
|
|
c1315bbb0c | ||
|
|
10bc8f5726 | ||
|
|
4a4cc13e86 | ||
|
|
5b4746aca6 | ||
|
|
04dfe9c552 | ||
|
|
fe20406714 | ||
|
|
861ef81552 | ||
|
|
676475d902 | ||
|
|
1ed1584320 | ||
|
|
a10b319413 | ||
|
|
837efd0b9c | ||
|
|
97f4ad54a3 | ||
|
|
f64d554a38 | ||
|
|
e4b161efd1 | ||
|
|
4d1d172be0 | ||
|
|
7ed1aaea29 | ||
|
|
fff6be4920 | ||
|
|
c2d47cf46f | ||
|
|
d2656e002a | ||
|
|
9b6894644b | ||
|
|
930adf45c0 | ||
|
|
b72748e2c6 | ||
|
|
2f367f6b8c | ||
|
|
0379e028ba | ||
|
|
a8c6c2c159 | ||
|
|
9e73bd82d7 | ||
|
|
95206bdeae | ||
|
|
1b370297d4 | ||
|
|
95c178adf2 | ||
|
|
92fe77f25c | ||
|
|
47bcb9bd8d | ||
|
|
15efd8db2f | ||
|
|
a0678fa739 | ||
|
|
4dc36e4d80 | ||
|
|
05887ecf50 | ||
|
|
0a62e921b2 | ||
|
|
a80e1e52c2 | ||
|
|
e58d820685 | ||
|
|
80fa2b789b | ||
|
|
fecda8f089 | ||
|
|
c7afe8e134 | ||
|
|
654291ecff | ||
|
|
97e55039ea | ||
|
|
9359cf0dc1 | ||
|
|
f7deb57384 | ||
|
|
2733d8d6a3 | ||
|
|
dd393122aa | ||
|
|
4d2d90ca51 | ||
|
|
a55bef1cba | ||
|
|
2d8489f6f2 | ||
|
|
932d579447 | ||
|
|
d9e466f645 | ||
|
|
1f39c4dbd1 | ||
|
|
bfaf22f22d | ||
|
|
5a68638971 | ||
|
|
b625e9f12f | ||
|
|
f04f203499 | ||
|
|
218ab8c9c6 | ||
|
|
3eddc6cc44 | ||
|
|
31dd2e65bd | ||
|
|
d4c94eb1e6 | ||
|
|
dd27c501d8 | ||
|
|
dbc6e54403 | ||
|
|
d8a8526cde | ||
|
|
55f40e224a | ||
|
|
8274b648e8 | ||
|
|
8e7c7d5528 | ||
|
|
df920a88d5 | ||
|
|
dd70dceef9 | ||
|
|
5cc2445a6a | ||
|
|
3274491b95 | ||
|
|
41670499b1 | ||
|
|
f4bae0a011 | ||
|
|
112debe5f5 | ||
|
|
6f38974fc3 | ||
|
|
a84a9c1144 | ||
|
|
7582cc076e | ||
|
|
85a59b21ac | ||
|
|
f9939f1cfe | ||
|
|
ebed733327 | ||
|
|
64f2c94c29 | ||
|
|
9ecfc61fb5 | ||
|
|
742b066aa7 | ||
|
|
3edb925487 | ||
|
|
0a5204533d | ||
|
|
a107ab04e4 | ||
|
|
f4c0923bf5 | ||
|
|
8f77f9e511 | ||
|
|
88fd0519ea | ||
|
|
32ca128b18 | ||
|
|
256f027c7c | ||
|
|
be82c1ef6e | ||
|
|
e6b48e3dd8 | ||
|
|
fc40bbaa05 | ||
|
|
12096ace6b | ||
|
|
e20f0f8cb9 | ||
|
|
66ae243890 | ||
|
|
dd47a376aa | ||
|
|
89431424fb | ||
|
|
cb62d883dc | ||
|
|
1f6b239c80 | ||
|
|
37cca38958 | ||
|
|
34599e7f50 | ||
|
|
94203ec0f8 | ||
|
|
8b08f79898 | ||
|
|
e1d294193a | ||
|
|
ebe73eff3d | ||
|
|
54cd400e9a | ||
|
|
68ad14a047 | ||
|
|
6724cefe5f | ||
|
|
fe0f4f9060 | ||
|
|
438418c5bb | ||
|
|
27e9f855e9 | ||
|
|
850d69a02f | ||
|
|
20907c7fa5 | ||
|
|
63fe95f519 | ||
|
|
1399653947 | ||
|
|
850d96ae72 | ||
|
|
1bdce44f92 | ||
|
|
8624b3f7fb | ||
|
|
e4257b5d0f | ||
|
|
ec295698b6 | ||
|
|
9eda04e31c | ||
|
|
40e5c856b6 | ||
|
|
70f04dcf62 | ||
|
|
315b8c2d30 | ||
|
|
dfe1282442 | ||
|
|
1161049ed5 | ||
|
|
40fb641a52 | ||
|
|
4a4e7b7e07 | ||
|
|
e2319ffa12 | ||
|
|
34959835fb | ||
|
|
998d03770b | ||
|
|
bc82e37fcf | ||
|
|
a587ef353e | ||
|
|
e7bbf3d6f9 | ||
|
|
10d55cb523 | ||
|
|
f4e616342c | ||
|
|
67f51ad972 | ||
|
|
304b2cf3ea | ||
|
|
f9c814a34a | ||
|
|
da07d0df2f | ||
|
|
6c64cb20d9 | ||
|
|
68c2cbcebd | ||
|
|
59bf4105bd | ||
|
|
887ad9677c | ||
|
|
8c06729f6b | ||
|
|
274afe0a5f | ||
|
|
b694095a89 | ||
|
|
8b2f674ec9 | ||
|
|
04831a0c99 | ||
|
|
fb9d8e912a | ||
|
|
ca30d3df62 | ||
|
|
ccbbcd5759 | ||
|
|
6a3db477f0 | ||
|
|
d695c29269 | ||
|
|
d64cec2db2 | ||
|
|
bdf6aad1bb | ||
|
|
a000a3d545 | ||
|
|
40ddec54a3 | ||
|
|
05cd192ba3 | ||
|
|
d5950d4b29 | ||
|
|
1566fc252e | ||
|
|
cc4446af86 | ||
|
|
0841822725 | ||
|
|
b415cbbccb | ||
|
|
07ff407da5 | ||
|
|
e547d61472 | ||
|
|
ea3443c6bc | ||
|
|
f877eb4bd4 | ||
|
|
e444a05a18 | ||
|
|
2153c9e51b | ||
|
|
782b052590 | ||
|
|
93d8fa3a9a | ||
|
|
c4609c6dea | ||
|
|
e520aea515 | ||
|
|
7c0fadd14a | ||
|
|
d82f73e9e7 | ||
|
|
b9dac66274 | ||
|
|
d9adcf5a4e | ||
|
|
b916be5489 | ||
|
|
0d2760831d | ||
|
|
ea9643c56e | ||
|
|
b020e0279a | ||
|
|
9573f18756 | ||
|
|
b9874cdff9 | ||
|
|
f4f5414800 | ||
|
|
c1fefd942d | ||
|
|
03101401b9 | ||
|
|
de272ebf28 | ||
|
|
a006d6446c | ||
|
|
ab427cdca5 | ||
|
|
3b2bebd5fa | ||
|
|
3e89e524a1 | ||
|
|
ecd2556783 | ||
|
|
221ace9d90 | ||
|
|
6924534f47 | ||
|
|
84b65e5f8f | ||
|
|
ad8201bed1 | ||
|
|
7c7809466a | ||
|
|
33e5bd7d7d | ||
|
|
58fc08d574 | ||
|
|
bc503a4e55 | ||
|
|
e3716d940d | ||
|
|
a9a88f4200 | ||
|
|
cb1150ca88 | ||
|
|
ad6d0bd997 | ||
|
|
c7a7edce97 | ||
|
|
ac65d44d1b | ||
|
|
d37c42bcb5 | ||
|
|
ed719a9570 | ||
|
|
8e3178984f | ||
|
|
2e4faa3861 | ||
|
|
fa5499beed | ||
|
|
6b6f207ae7 | ||
|
|
9a4b0a11f1 | ||
|
|
032c6c22ad | ||
|
|
1a32d17112 | ||
|
|
9dd35b03b8 | ||
|
|
babc2a0410 | ||
|
|
2111cb568f | ||
|
|
01682a6da7 | ||
|
|
658953b130 | ||
|
|
508ebc58c1 | ||
|
|
6dae5eb770 | ||
|
|
d8cafb1ad7 | ||
|
|
8d8ee2087f | ||
|
|
7a5b401604 | ||
|
|
44ac8154c7 | ||
|
|
523029f91d | ||
|
|
4ad8f2118c | ||
|
|
3ad82c119a | ||
|
|
33fbc1d22f | ||
|
|
1662f2adba | ||
|
|
48221f6d26 | ||
|
|
f130df8ee7 | ||
|
|
3295500c5c | ||
|
|
8affa99d12 | ||
|
|
bb26ddb2bb | ||
|
|
a0491afc61 | ||
|
|
715c4001a9 | ||
|
|
0fbc6c2500 | ||
|
|
4cf8b53027 | ||
|
|
30ab46f265 | ||
|
|
a5687716b7 | ||
|
|
8114c092b7 | ||
|
|
622e33cc16 | ||
|
|
846a48245f | ||
|
|
d0ffc2b022 | ||
|
|
29cdbe686d | ||
|
|
30050825b5 | ||
|
|
e301cc2ab0 |
@@ -45,10 +45,9 @@ SubTitle: JavaScript Mapping Library
|
|||||||
# --------------------------------------------------------------------------
|
# --------------------------------------------------------------------------
|
||||||
|
|
||||||
|
|
||||||
File: OpenLayers (OpenLayers.js)
|
|
||||||
|
|
||||||
Group: OpenLayers {
|
Group: OpenLayers {
|
||||||
|
|
||||||
|
File: OpenLayers (no auto-title, OpenLayers.js)
|
||||||
File: Ajax (no auto-title, OpenLayers/Ajax.js)
|
File: Ajax (no auto-title, OpenLayers/Ajax.js)
|
||||||
|
|
||||||
Group: BaseTypes {
|
Group: BaseTypes {
|
||||||
@@ -74,8 +73,11 @@ Group: OpenLayers {
|
|||||||
File: DragPan (no auto-title, OpenLayers/Control/DragPan.js)
|
File: DragPan (no auto-title, OpenLayers/Control/DragPan.js)
|
||||||
File: DrawFeature (no auto-title, OpenLayers/Control/DrawFeature.js)
|
File: DrawFeature (no auto-title, OpenLayers/Control/DrawFeature.js)
|
||||||
File: EditingToolbar (no auto-title, OpenLayers/Control/EditingToolbar.js)
|
File: EditingToolbar (no auto-title, OpenLayers/Control/EditingToolbar.js)
|
||||||
|
File: GetFeature (no auto-title, OpenLayers/Control/GetFeature.js)
|
||||||
|
File: Graticule (OpenLayers/Control/Graticule.js)
|
||||||
File: KeyboardDefaults (no auto-title, OpenLayers/Control/KeyboardDefaults.js)
|
File: KeyboardDefaults (no auto-title, OpenLayers/Control/KeyboardDefaults.js)
|
||||||
File: LayerSwitcher (no auto-title, OpenLayers/Control/LayerSwitcher.js)
|
File: LayerSwitcher (no auto-title, OpenLayers/Control/LayerSwitcher.js)
|
||||||
|
File: Measure (no auto-title, OpenLayers/Control/Measure.js)
|
||||||
File: ModifyFeature (no auto-title, OpenLayers/Control/ModifyFeature.js)
|
File: ModifyFeature (no auto-title, OpenLayers/Control/ModifyFeature.js)
|
||||||
File: MouseDefaults (no auto-title, OpenLayers/Control/MouseDefaults.js)
|
File: MouseDefaults (no auto-title, OpenLayers/Control/MouseDefaults.js)
|
||||||
File: MousePosition (no auto-title, OpenLayers/Control/MousePosition.js)
|
File: MousePosition (no auto-title, OpenLayers/Control/MousePosition.js)
|
||||||
@@ -84,14 +86,22 @@ Group: OpenLayers {
|
|||||||
File: NavigationHistory (no auto-title, OpenLayers/Control/NavigationHistory.js)
|
File: NavigationHistory (no auto-title, OpenLayers/Control/NavigationHistory.js)
|
||||||
File: NavToolbar (no auto-title, OpenLayers/Control/NavToolbar.js)
|
File: NavToolbar (no auto-title, OpenLayers/Control/NavToolbar.js)
|
||||||
File: OverviewMap (no auto-title, OpenLayers/Control/OverviewMap.js)
|
File: OverviewMap (no auto-title, OpenLayers/Control/OverviewMap.js)
|
||||||
|
File: Pan (no auto-title, OpenLayers/Control/Pan.js)
|
||||||
File: Panel (no auto-title, OpenLayers/Control/Panel.js)
|
File: Panel (no auto-title, OpenLayers/Control/Panel.js)
|
||||||
|
File: PanPanel (no auto-title, OpenLayers/Control/PanPanel.js)
|
||||||
File: PanZoom (no auto-title, OpenLayers/Control/PanZoom.js)
|
File: PanZoom (no auto-title, OpenLayers/Control/PanZoom.js)
|
||||||
File: PanZoomBar (no auto-title, OpenLayers/Control/PanZoomBar.js)
|
File: PanZoomBar (no auto-title, OpenLayers/Control/PanZoomBar.js)
|
||||||
File: Permalink (no auto-title, OpenLayers/Control/Permalink.js)
|
File: Permalink (no auto-title, OpenLayers/Control/Permalink.js)
|
||||||
File: Scale (no auto-title, OpenLayers/Control/Scale.js)
|
File: Scale (no auto-title, OpenLayers/Control/Scale.js)
|
||||||
File: ScaleLine (no auto-title, OpenLayers/Control/ScaleLine.js)
|
File: ScaleLine (no auto-title, OpenLayers/Control/ScaleLine.js)
|
||||||
File: SelectFeature (no auto-title, OpenLayers/Control/SelectFeature.js)
|
File: SelectFeature (no auto-title, OpenLayers/Control/SelectFeature.js)
|
||||||
|
File: Snapping (no auto-title, OpenLayers/Control/Snapping.js)
|
||||||
|
File: Split (no auto-title, OpenLayers/Control/Split.js)
|
||||||
|
File: WMSGetFeatureInfo (OpenLayers/Control/WMSGetFeatureInfo.js)
|
||||||
File: ZoomBox (no auto-title, OpenLayers/Control/ZoomBox.js)
|
File: ZoomBox (no auto-title, OpenLayers/Control/ZoomBox.js)
|
||||||
|
File: ZoomIn (no auto-title, OpenLayers/Control/ZoomIn.js)
|
||||||
|
File: ZoomOut (no auto-title, OpenLayers/Control/ZoomOut.js)
|
||||||
|
File: ZoomPanel (no auto-title, OpenLayers/Control/ZoomPanel.js)
|
||||||
File: ZoomToMaxExtent (no auto-title, OpenLayers/Control/ZoomToMaxExtent.js)
|
File: ZoomToMaxExtent (no auto-title, OpenLayers/Control/ZoomToMaxExtent.js)
|
||||||
} # Group: Control
|
} # Group: Control
|
||||||
|
|
||||||
@@ -110,17 +120,44 @@ Group: OpenLayers {
|
|||||||
File: Comparison (no auto-title, OpenLayers/Filter/Comparison.js)
|
File: Comparison (no auto-title, OpenLayers/Filter/Comparison.js)
|
||||||
File: FeatureId (no auto-title, OpenLayers/Filter/FeatureId.js)
|
File: FeatureId (no auto-title, OpenLayers/Filter/FeatureId.js)
|
||||||
File: Logical (no auto-title, OpenLayers/Filter/Logical.js)
|
File: Logical (no auto-title, OpenLayers/Filter/Logical.js)
|
||||||
|
File: Spatial (no auto-title, OpenLayers/Filter/Spatial.js)
|
||||||
} # Group: Filter
|
} # Group: Filter
|
||||||
|
|
||||||
Group: Format {
|
Group: Format {
|
||||||
|
|
||||||
File: Format (no auto-title, OpenLayers/Format.js)
|
File: Format (no auto-title, OpenLayers/Format.js)
|
||||||
|
File: ArcXML (no auto-title, OpenLayers/Format/ArcXML.js)
|
||||||
|
File: ArcXML.Features (no auto-title, OpenLayers/Format/ArcXML/Features.js)
|
||||||
|
File: Atom (no auto-title, OpenLayers/Format/Atom.js)
|
||||||
|
File: CSWGetDomain.DEFAULTS (no auto-title, OpenLayers/Format/CSWGetDomain.js)
|
||||||
|
File: CSWGetDomain.v2_0_2 (no auto-title, OpenLayers/Format/CSWGetDomain/v2_0_2.js)
|
||||||
|
File: CSWGetRecords.DEFAULTS (no auto-title, OpenLayers/Format/CSWGetRecords.js)
|
||||||
|
File: CSWGetRecords.v2_0_2 (no auto-title, OpenLayers/Format/CSWGetRecords/v2_0_2.js)
|
||||||
|
|
||||||
|
Group: Filter {
|
||||||
|
|
||||||
|
File: Filter (no auto-title, OpenLayers/Format/Filter.js)
|
||||||
|
File: v1 (no auto-title, OpenLayers/Format/Filter/v1.js)
|
||||||
|
File: v1_0_0 (no auto-title, OpenLayers/Format/Filter/v1_0_0.js)
|
||||||
|
File: v1_1_0 (OpenLayers/Format/Filter/v1_1_0.js)
|
||||||
|
} # Group: Filter
|
||||||
|
|
||||||
File: GeoJSON (no auto-title, OpenLayers/Format/GeoJSON.js)
|
File: GeoJSON (no auto-title, OpenLayers/Format/GeoJSON.js)
|
||||||
File: GeoRSS (no auto-title, OpenLayers/Format/GeoRSS.js)
|
File: GeoRSS (no auto-title, OpenLayers/Format/GeoRSS.js)
|
||||||
File: GML (no auto-title, OpenLayers/Format/GML.js)
|
|
||||||
|
Group: GML {
|
||||||
|
|
||||||
|
File: GML (no auto-title, OpenLayers/Format/GML.js)
|
||||||
|
File: Base (no auto-title, OpenLayers/Format/GML/Base.js)
|
||||||
|
File: v2 (no auto-title, OpenLayers/Format/GML/v2.js)
|
||||||
|
File: v3 (no auto-title, OpenLayers/Format/GML/v3.js)
|
||||||
|
} # Group: GML
|
||||||
|
|
||||||
|
File: GPX (no auto-title, OpenLayers/Format/GPX.js)
|
||||||
File: JSON (no auto-title, OpenLayers/Format/JSON.js)
|
File: JSON (no auto-title, OpenLayers/Format/JSON.js)
|
||||||
File: KML (no auto-title, OpenLayers/Format/KML.js)
|
File: KML (no auto-title, OpenLayers/Format/KML.js)
|
||||||
File: OSM (no auto-title, OpenLayers/Format/OSM.js)
|
File: OSM (no auto-title, OpenLayers/Format/OSM.js)
|
||||||
|
File: OWSCommon.v1_1_0 (OpenLayers/Format/OWSCommon/v1_1_0.js)
|
||||||
|
|
||||||
Group: SLD {
|
Group: SLD {
|
||||||
|
|
||||||
@@ -129,10 +166,31 @@ Group: OpenLayers {
|
|||||||
File: v1_0_0 (no auto-title, OpenLayers/Format/SLD/v1_0_0.js)
|
File: v1_0_0 (no auto-title, OpenLayers/Format/SLD/v1_0_0.js)
|
||||||
} # Group: SLD
|
} # Group: SLD
|
||||||
|
|
||||||
|
File: SOSCapabilities (OpenLayers/Format/SOSCapabilities.js)
|
||||||
|
File: SOSCapabilities.v1_0_0 (OpenLayers/Format/SOSCapabilities/v1_0_0.js)
|
||||||
|
File: SOSGetObservation (OpenLayers/Format/SOSGetObservation.js)
|
||||||
File: Text (no auto-title, OpenLayers/Format/Text.js)
|
File: Text (no auto-title, OpenLayers/Format/Text.js)
|
||||||
File: WFS (no auto-title, OpenLayers/Format/WFS.js)
|
File: WFS (no auto-title, OpenLayers/Format/WFS.js)
|
||||||
|
|
||||||
|
Group: WFSCapabilities {
|
||||||
|
|
||||||
|
File: WFSCapabilities (no auto-title, OpenLayers/Format/WFSCapabilities.js)
|
||||||
|
File: v1 (no auto-title, OpenLayers/Format/WFSCapabilities/v1.js)
|
||||||
|
File: v1_0_0 (no auto-title, OpenLayers/Format/WFSCapabilities/v1_0_0.js)
|
||||||
|
File: v1_1_0 (no auto-title, OpenLayers/Format/WFSCapabilities/v1_1_0.js)
|
||||||
|
} # Group: WFSCapabilities
|
||||||
|
|
||||||
|
File: WFSDescribeFeatureType (no auto-title, OpenLayers/Format/WFSDescribeFeatureType.js)
|
||||||
|
|
||||||
|
Group: WFST {
|
||||||
|
|
||||||
|
File: WFST (no auto-title, OpenLayers/Format/WFST.js)
|
||||||
|
File: v1 (OpenLayers/Format/WFST/v1.js)
|
||||||
|
File: v1_0_0 (OpenLayers/Format/WFST/v1_0_0.js)
|
||||||
|
File: v1_1_0 (OpenLayers/Format/WFST/v1_1_0.js)
|
||||||
|
} # Group: WFST
|
||||||
|
|
||||||
File: WKT (no auto-title, OpenLayers/Format/WKT.js)
|
File: WKT (no auto-title, OpenLayers/Format/WKT.js)
|
||||||
File: XML (no auto-title, OpenLayers/Format/XML.js)
|
|
||||||
|
|
||||||
Group: WMC {
|
Group: WMC {
|
||||||
|
|
||||||
@@ -142,6 +200,25 @@ Group: OpenLayers {
|
|||||||
File: v1_1_0 (no auto-title, OpenLayers/Format/WMC/v1_1_0.js)
|
File: v1_1_0 (no auto-title, OpenLayers/Format/WMC/v1_1_0.js)
|
||||||
} # Group: WMC
|
} # Group: WMC
|
||||||
|
|
||||||
|
Group: WMSCapabilities {
|
||||||
|
|
||||||
|
File: WMSCapabilities (no auto-title, OpenLayers/Format/WMSCapabilities.js)
|
||||||
|
File: v1 (no auto-title, OpenLayers/Format/WMSCapabilities/v1.js)
|
||||||
|
File: v1_1 (no auto-title, OpenLayers/Format/WMSCapabilities/v1_1.js)
|
||||||
|
File: v1_1_0 (no auto-title, OpenLayers/Format/WMSCapabilities/v1_1_0.js)
|
||||||
|
File: v1_1_1 (no auto-title, OpenLayers/Format/WMSCapabilities/v1_1_1.js)
|
||||||
|
File: v1_3 (no auto-title, OpenLayers/Format/WMSCapabilities/v1_3.js)
|
||||||
|
File: v1_3_0 (no auto-title, OpenLayers/Format/WMSCapabilities/v1_3_0.js)
|
||||||
|
} # Group: WMSCapabilities
|
||||||
|
|
||||||
|
Group: WMSDescribeLayer {
|
||||||
|
|
||||||
|
File: WMSDescribeLayer (no auto-title, OpenLayers/Format/WMSDescribeLayer.js)
|
||||||
|
File: v1_1 (no auto-title, OpenLayers/Format/WMSDescribeLayer/v1_1.js)
|
||||||
|
} # Group: WMSDescribeLayer
|
||||||
|
|
||||||
|
File: WMSGetFeatureInfo (no auto-title, OpenLayers/Format/WMSGetFeatureInfo.js)
|
||||||
|
File: XML (no auto-title, OpenLayers/Format/XML.js)
|
||||||
} # Group: Format
|
} # Group: Format
|
||||||
|
|
||||||
Group: Geometry {
|
Group: Geometry {
|
||||||
@@ -180,16 +257,55 @@ Group: OpenLayers {
|
|||||||
Group: Lang {
|
Group: Lang {
|
||||||
|
|
||||||
File: Lang (no auto-title, OpenLayers/Lang.js)
|
File: Lang (no auto-title, OpenLayers/Lang.js)
|
||||||
File: Lang["cs-CZ"] (OpenLayers/Lang/cs-CZ.js)
|
File: ar (no auto-title, OpenLayers/Lang/ar.js)
|
||||||
File: Lang["de"] (no auto-title, OpenLayers/Lang/de.js)
|
File: be-tarask (no auto-title, OpenLayers/Lang/be-tarask.js)
|
||||||
File: Lang["en"] (no auto-title, OpenLayers/Lang/en.js)
|
File: bg (no auto-title, OpenLayers/Lang/bg.js)
|
||||||
File: Lang["en-CA"] (no auto-title, OpenLayers/Lang/en-CA.js)
|
File: br (no auto-title, OpenLayers/Lang/br.js)
|
||||||
File: Lang["fr"] (no auto-title, OpenLayers/Lang/fr.js)
|
File: ca (no auto-title, OpenLayers/Lang/ca.js)
|
||||||
|
File: cs-CZ (no auto-title, OpenLayers/Lang/cs-CZ.js)
|
||||||
|
File: da-DK (no auto-title, OpenLayers/Lang/da-DK.js)
|
||||||
|
File: de (no auto-title, OpenLayers/Lang/de.js)
|
||||||
|
File: en (no auto-title, OpenLayers/Lang/en.js)
|
||||||
|
File: en-CA (no auto-title, OpenLayers/Lang/en-CA.js)
|
||||||
|
File: es (no auto-title, OpenLayers/Lang/es.js)
|
||||||
|
File: el (no auto-title, OpenLayers/Lang/el.js)
|
||||||
|
File: fi (no auto-title, OpenLayers/Lang/fi.js)
|
||||||
|
File: fr (no auto-title, OpenLayers/Lang/fr.js)
|
||||||
|
File: fur (no auto-title, OpenLayers/Lang/fur.js)
|
||||||
|
File: gl (no auto-title, OpenLayers/Lang/gl.js)
|
||||||
|
File: gsw (no auto-title, OpenLayers/Lang/gsw.js)
|
||||||
|
File: hr (no auto-title, OpenLayers/Lang/hr.js)
|
||||||
|
File: hsb (no auto-title, OpenLayers/Lang/hsb.js)
|
||||||
|
File: hu (no auto-title, OpenLayers/Lang/hu.js)
|
||||||
|
File: ia (no auto-title, OpenLayers/Lang/ia.js)
|
||||||
|
File: id (no auto-title, OpenLayers/Lang/id.js)
|
||||||
|
File: io (no auto-title, OpenLayers/Lang/io.js)
|
||||||
|
File: is (no auto-title, OpenLayers/Lang/is.js)
|
||||||
|
File: it (no auto-title, OpenLayers/Lang/it.js)
|
||||||
|
File: ja (no auto-title, OpenLayers/Lang/ja.js)
|
||||||
|
File: km (no auto-title, OpenLayers/Lang/km.js)
|
||||||
|
File: ksh (no auto-title, OpenLayers/Lang/ksh.js)
|
||||||
|
File: nds (no auto-title, OpenLayers/Lang/nds.js)
|
||||||
|
File: nb (no auto-title, OpenLayers/Lang/nb.js)
|
||||||
|
File: nl (no auto-title, OpenLayers/Lang/nl.js)
|
||||||
|
File: nn (no auto-title, OpenLayers/Lang/nn.js)
|
||||||
|
File: oc (no auto-title, OpenLayers/Lang/oc.js)
|
||||||
|
File: pt (no auto-title, OpenLayers/Lang/pt.js)
|
||||||
|
File: pt-BR (no auto-title, OpenLayers/Lang/pt-BR.js)
|
||||||
|
File: ru (no auto-title, OpenLayers/Lang/ru.js)
|
||||||
|
File: sk (no auto-title, OpenLayers/Lang/sk.js)
|
||||||
|
File: sv-SE (no auto-title, OpenLayers/Lang/sv-SE.js)
|
||||||
|
File: te (no auto-title, OpenLayers/Lang/te.js)
|
||||||
|
File: vi (no auto-title, OpenLayers/Lang/vi.js)
|
||||||
|
File: zh-CN (no auto-title, OpenLayers/Lang/zh-CN.js)
|
||||||
|
File: zh-TW (no auto-title, OpenLayers/Lang/zh-TW.js)
|
||||||
} # Group: Lang
|
} # Group: Lang
|
||||||
|
|
||||||
Group: Layer {
|
Group: Layer {
|
||||||
|
|
||||||
File: Layer (no auto-title, OpenLayers/Layer.js)
|
File: Layer (no auto-title, OpenLayers/Layer.js)
|
||||||
|
File: ArcGIS93Rest (no auto-title, OpenLayers/Layer/ArcGIS93Rest.js)
|
||||||
|
File: ArcIMS (no auto-title, OpenLayers/Layer/ArcIMS.js)
|
||||||
File: Boxes (no auto-title, OpenLayers/Layer/Boxes.js)
|
File: Boxes (no auto-title, OpenLayers/Layer/Boxes.js)
|
||||||
File: EventPane (no auto-title, OpenLayers/Layer/EventPane.js)
|
File: EventPane (no auto-title, OpenLayers/Layer/EventPane.js)
|
||||||
File: FixedZoomLevels (no auto-title, OpenLayers/Layer/FixedZoomLevels.js)
|
File: FixedZoomLevels (no auto-title, OpenLayers/Layer/FixedZoomLevels.js)
|
||||||
@@ -200,6 +316,7 @@ Group: OpenLayers {
|
|||||||
File: HTTPRequest (no auto-title, OpenLayers/Layer/HTTPRequest.js)
|
File: HTTPRequest (no auto-title, OpenLayers/Layer/HTTPRequest.js)
|
||||||
File: Image (no auto-title, OpenLayers/Layer/Image.js)
|
File: Image (no auto-title, OpenLayers/Layer/Image.js)
|
||||||
File: KaMap (no auto-title, OpenLayers/Layer/KaMap.js)
|
File: KaMap (no auto-title, OpenLayers/Layer/KaMap.js)
|
||||||
|
File: KaMapCache (no auto-title, OpenLayers/Layer/KaMapCache.js)
|
||||||
File: MapGuide (no auto-title, OpenLayers/Layer/MapGuide.js)
|
File: MapGuide (no auto-title, OpenLayers/Layer/MapGuide.js)
|
||||||
File: MapServer (no auto-title, OpenLayers/Layer/MapServer.js)
|
File: MapServer (no auto-title, OpenLayers/Layer/MapServer.js)
|
||||||
File: MapServer.Untiled (no auto-title, OpenLayers/Layer/MapServer/Untiled.js)
|
File: MapServer.Untiled (no auto-title, OpenLayers/Layer/MapServer/Untiled.js)
|
||||||
@@ -211,12 +328,15 @@ Group: OpenLayers {
|
|||||||
File: TileCache (no auto-title, OpenLayers/Layer/TileCache.js)
|
File: TileCache (no auto-title, OpenLayers/Layer/TileCache.js)
|
||||||
File: TMS (no auto-title, OpenLayers/Layer/TMS.js)
|
File: TMS (no auto-title, OpenLayers/Layer/TMS.js)
|
||||||
File: Vector (no auto-title, OpenLayers/Layer/Vector.js)
|
File: Vector (no auto-title, OpenLayers/Layer/Vector.js)
|
||||||
|
File: Vector.RootContainer (no auto-title, OpenLayers/Layer/Vector/RootContainer.js)
|
||||||
File: VirtualEarth (no auto-title, OpenLayers/Layer/VirtualEarth.js)
|
File: VirtualEarth (no auto-title, OpenLayers/Layer/VirtualEarth.js)
|
||||||
File: WFS (no auto-title, OpenLayers/Layer/WFS.js)
|
File: WFS (no auto-title, OpenLayers/Layer/WFS.js)
|
||||||
File: WMS (no auto-title, OpenLayers/Layer/WMS.js)
|
File: WMS (no auto-title, OpenLayers/Layer/WMS.js)
|
||||||
File: WMS.Untiled (no auto-title, OpenLayers/Layer/WMS/Untiled.js)
|
File: WMS.Untiled (no auto-title, OpenLayers/Layer/WMS/Untiled.js)
|
||||||
|
File: WMS.Post (no auto-title, OpenLayers/Layer/WMS/Post.js)
|
||||||
File: WorldWind (no auto-title, OpenLayers/Layer/WorldWind.js)
|
File: WorldWind (no auto-title, OpenLayers/Layer/WorldWind.js)
|
||||||
File: Yahoo (no auto-title, OpenLayers/Layer/Yahoo.js)
|
File: Yahoo (no auto-title, OpenLayers/Layer/Yahoo.js)
|
||||||
|
File: XYZ (no auto-title, OpenLayers/Layer/XYZ.js)
|
||||||
} # Group: Layer
|
} # Group: Layer
|
||||||
|
|
||||||
File: Map (no auto-title, OpenLayers/Map.js)
|
File: Map (no auto-title, OpenLayers/Map.js)
|
||||||
@@ -232,21 +352,61 @@ Group: OpenLayers {
|
|||||||
File: Popup (no auto-title, OpenLayers/Popup.js)
|
File: Popup (no auto-title, OpenLayers/Popup.js)
|
||||||
File: Anchored (no auto-title, OpenLayers/Popup/Anchored.js)
|
File: Anchored (no auto-title, OpenLayers/Popup/Anchored.js)
|
||||||
File: AnchoredBubble (no auto-title, OpenLayers/Popup/AnchoredBubble.js)
|
File: AnchoredBubble (no auto-title, OpenLayers/Popup/AnchoredBubble.js)
|
||||||
File: Framed (OpenLayers/Popup/Framed.js)
|
File: Framed (no auto-title, OpenLayers/Popup/Framed.js)
|
||||||
File: FramedCloud (OpenLayers/Popup/FramedCloud.js)
|
File: FramedCloud (no auto-title, OpenLayers/Popup/FramedCloud.js)
|
||||||
} # Group: Popup
|
} # Group: Popup
|
||||||
|
|
||||||
File: Projection (no auto-title, OpenLayers/Projection.js)
|
File: Projection (no auto-title, OpenLayers/Projection.js)
|
||||||
|
|
||||||
|
Group: Protocol {
|
||||||
|
|
||||||
|
File: Protocol (no auto-title, OpenLayers/Protocol.js)
|
||||||
|
File: HTTP (no auto-title, OpenLayers/Protocol/HTTP.js)
|
||||||
|
|
||||||
|
Group: SQL {
|
||||||
|
|
||||||
|
File: SQL (no auto-title, OpenLayers/Protocol/SQL.js)
|
||||||
|
File: Gears (no auto-title, OpenLayers/Protocol/SQL/Gears.js)
|
||||||
|
} # Group: SQL
|
||||||
|
|
||||||
|
Group: WFS {
|
||||||
|
|
||||||
|
File: WFS (no auto-title, OpenLayers/Protocol/WFS.js)
|
||||||
|
File: v1 (no auto-title, OpenLayers/Protocol/WFS/v1.js)
|
||||||
|
File: v1_0_0 (no auto-title, OpenLayers/Protocol/WFS/v1_0_0.js)
|
||||||
|
File: v1_1_0 (no auto-title, OpenLayers/Protocol/WFS/v1_1_0.js)
|
||||||
|
} # Group: WFS
|
||||||
|
|
||||||
|
} # Group: Protocol
|
||||||
|
|
||||||
Group: Renderer {
|
Group: Renderer {
|
||||||
|
|
||||||
File: Renderer (no auto-title, OpenLayers/Renderer.js)
|
File: Renderer (no auto-title, OpenLayers/Renderer.js)
|
||||||
|
File: Canvas (no auto-title, OpenLayers/Renderer/Canvas.js)
|
||||||
File: Elements (no auto-title, OpenLayers/Renderer/Elements.js)
|
File: Elements (no auto-title, OpenLayers/Renderer/Elements.js)
|
||||||
File: SVG (no auto-title, OpenLayers/Renderer/SVG.js)
|
File: SVG (no auto-title, OpenLayers/Renderer/SVG.js)
|
||||||
File: VML (no auto-title, OpenLayers/Renderer/VML.js)
|
File: VML (no auto-title, OpenLayers/Renderer/VML.js)
|
||||||
} # Group: Renderer
|
} # Group: Renderer
|
||||||
|
|
||||||
|
Group: Request {
|
||||||
|
|
||||||
|
File: Request (no auto-title, OpenLayers/Request.js)
|
||||||
|
File: XMLHttpRequest (no auto-title, OpenLayers/Request/XMLHttpRequest.js)
|
||||||
|
} # Group: Request
|
||||||
|
|
||||||
File: Rule (no auto-title, OpenLayers/Rule.js)
|
File: Rule (no auto-title, OpenLayers/Rule.js)
|
||||||
|
|
||||||
|
Group: Strategy {
|
||||||
|
|
||||||
|
File: Strategy (no auto-title, OpenLayers/Strategy.js)
|
||||||
|
File: BBOX (no auto-title, OpenLayers/Strategy/BBOX.js)
|
||||||
|
File: Cluster (no auto-title, OpenLayers/Strategy/Cluster.js)
|
||||||
|
File: Fixed (no auto-title, OpenLayers/Strategy/Fixed.js)
|
||||||
|
File: Paging (no auto-title, OpenLayers/Strategy/Paging.js)
|
||||||
|
File: Refresh (OpenLayers/Strategy/Refresh.js)
|
||||||
|
File: Save (OpenLayers/Strategy/Save.js)
|
||||||
|
} # Group: Strategy
|
||||||
|
|
||||||
File: Style (no auto-title, OpenLayers/Style.js)
|
File: Style (no auto-title, OpenLayers/Style.js)
|
||||||
File: StyleMap (no auto-title, OpenLayers/StyleMap.js)
|
File: StyleMap (no auto-title, OpenLayers/StyleMap.js)
|
||||||
|
|
||||||
@@ -255,6 +415,7 @@ Group: OpenLayers {
|
|||||||
File: Tile (no auto-title, OpenLayers/Tile.js)
|
File: Tile (no auto-title, OpenLayers/Tile.js)
|
||||||
File: Image (no auto-title, OpenLayers/Tile/Image.js)
|
File: Image (no auto-title, OpenLayers/Tile/Image.js)
|
||||||
File: WFS (no auto-title, OpenLayers/Tile/WFS.js)
|
File: WFS (no auto-title, OpenLayers/Tile/WFS.js)
|
||||||
|
File: IFrame (OpenLayers/Tile/Image/IFrame.js)
|
||||||
} # Group: Tile
|
} # Group: Tile
|
||||||
|
|
||||||
File: Tween (no auto-title, OpenLayers/Tween.js)
|
File: Tween (no auto-title, OpenLayers/Tween.js)
|
||||||
|
|||||||
@@ -1,25 +1,25 @@
|
|||||||
<?xml version="1.0" encoding="utf-8"?>
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
<!-- Generator: Adobe Illustrator 12.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 51448) -->
|
<!-- 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" [
|
<!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_ai "http://ns.adobe.com/AdobeIllustrator/10.0/">
|
||||||
<!ENTITY ns_svg "http://www.w3.org/2000/svg">
|
<!ENTITY ns_svg "http://www.w3.org/2000/svg">
|
||||||
]>
|
]>
|
||||||
<svg version="1.1" id="Layer_1" xmlns:i="&ns_ai;"
|
<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"
|
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">
|
overflow="visible" enable-background="new 0 0 20.5 24.5" xml:space="preserve">
|
||||||
<g i:extraneous="self">
|
<g i:extraneous="self">
|
||||||
<rect x="0.25" y="0.25" opacity="0" stroke="#000000" stroke-width="1" width="20" height="24"/>
|
<rect x="0.25" y="0.25" opacity="0" stroke="#000000" stroke-width="1" width="20" height="24"/>
|
||||||
<g id="XMLID_2_">
|
<g id="XMLID_2_">
|
||||||
<g>
|
<g>
|
||||||
<polygon fill="#FF0000" points="10.12,0.6 19.93,7.71 10.06,24.03 0.6,7.58 "/>
|
<polygon fill="#FF0000" points="10.12,0.6 19.93,7.71 10.06,24.03 0.6,7.58 "/>
|
||||||
</g>
|
</g>
|
||||||
<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="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="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="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 "/>
|
<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>
|
||||||
</g>
|
</g>
|
||||||
<ellipse stroke="#000000" stroke-width="1" cx="10.125" cy="9.25" rx="1.5" ry="1.5"/>
|
<ellipse stroke="#000000" stroke-width="1" cx="10.125" cy="9.25" rx="1.5" ry="1.5"/>
|
||||||
</g>
|
</g>
|
||||||
</svg>
|
</svg>
|
||||||
|
|||||||
|
Before Width: | Height: | Size: 1.4 KiB After Width: | Height: | Size: 1.4 KiB |
@@ -1,14 +1,43 @@
|
|||||||
|
The OpenLayers build tool supports several different
|
||||||
|
forms of compressing your javascript code, and a method
|
||||||
|
of describing build profiles to create customized
|
||||||
|
OpenLayers builds with only the components you need.
|
||||||
|
|
||||||
## HowTo: Build & deploy "Shrunk" Single File Library version of OpenLayers ##
|
When building a file, you can choose to build with several
|
||||||
|
different compression options to the Python-based build.py
|
||||||
|
script. The following is an example script:
|
||||||
|
|
||||||
* Build:
|
python build.py -c closure full OpenLayers-closure.js
|
||||||
|
|
||||||
cd build
|
This script selects the 'closure' compression mechanism,
|
||||||
./build.py
|
uses a config file called 'full.cfg', and writes the output
|
||||||
cd ..
|
to OpenLayers-closure.js.
|
||||||
|
|
||||||
* Upload the result to the server: e.g.
|
The options available for compression are:
|
||||||
|
|
||||||
scp build/OpenLayers.js openlayers@openlayers.org:openlayers.org/htdocs/code/
|
* closure
|
||||||
|
This requires you to have a closure-compiler.jar in your
|
||||||
|
tools directory. You can do this by fetching the compiler
|
||||||
|
from:
|
||||||
|
|
||||||
|
http://closure-compiler.googlecode.com/files/compiler-latest.zip
|
||||||
|
|
||||||
|
Then unzipping that file, and placing compiler.jar into tools
|
||||||
|
and renaming it closure-compiler.jar.
|
||||||
|
|
||||||
|
* closure_ws
|
||||||
|
This uses the closure compiler webservice. This will only work
|
||||||
|
for files source Javascript files which are under 1MB. (Note that
|
||||||
|
the default OpenLayers full build is not under 1MB.)
|
||||||
|
|
||||||
|
* jsmin
|
||||||
|
jsmin is the default compiler, and uses the Python-based
|
||||||
|
jsmin script to compress the Javascript.
|
||||||
|
|
||||||
|
* minimize
|
||||||
|
This is a simple whitespace removing Python script, designed
|
||||||
|
to fill in when other tools are unavailable.
|
||||||
|
|
||||||
|
* none
|
||||||
|
None will leave the Javascript uncompressed.
|
||||||
|
|
||||||
|
|||||||
102
build/build.py
102
build/build.py
@@ -3,48 +3,80 @@
|
|||||||
import sys
|
import sys
|
||||||
sys.path.append("../tools")
|
sys.path.append("../tools")
|
||||||
import mergejs
|
import mergejs
|
||||||
|
import optparse
|
||||||
|
|
||||||
have_compressor = None
|
def build(config_file = None, output_file = None, options = None):
|
||||||
try:
|
have_compressor = []
|
||||||
import jsmin
|
try:
|
||||||
have_compressor = "jsmin"
|
import jsmin
|
||||||
except ImportError:
|
have_compressor.append("jsmin")
|
||||||
|
except ImportError:
|
||||||
|
print "No jsmin"
|
||||||
|
try:
|
||||||
|
import closure
|
||||||
|
have_compressor.append("closure")
|
||||||
|
except Exception, E:
|
||||||
|
print "No closure (%s) % E"
|
||||||
|
try:
|
||||||
|
import closure_ws
|
||||||
|
have_compressor.append("closure_ws")
|
||||||
|
except ImportError:
|
||||||
|
print "No closure_ws"
|
||||||
|
|
||||||
try:
|
try:
|
||||||
import minimize
|
import minimize
|
||||||
have_compressor = "minimize"
|
have_compressor.append("minimize")
|
||||||
except Exception, E:
|
except ImportError:
|
||||||
print E
|
print "No minimize"
|
||||||
pass
|
|
||||||
|
|
||||||
sourceDirectory = "../lib"
|
use_compressor = None
|
||||||
configFilename = "full.cfg"
|
if options.compressor and options.compressor in have_compressor:
|
||||||
outputFilename = "OpenLayers.js"
|
use_compressor = options.compressor
|
||||||
|
|
||||||
if len(sys.argv) > 1:
|
sourceDirectory = "../lib"
|
||||||
configFilename = sys.argv[1]
|
configFilename = "full.cfg"
|
||||||
extension = configFilename[-4:]
|
outputFilename = "OpenLayers.js"
|
||||||
|
|
||||||
if extension != ".cfg":
|
if config_file:
|
||||||
configFilename = sys.argv[1] + ".cfg"
|
configFilename = config_file
|
||||||
|
extension = configFilename[-4:]
|
||||||
|
|
||||||
if len(sys.argv) > 2:
|
if extension != ".cfg":
|
||||||
outputFilename = sys.argv[2]
|
configFilename = config_file + ".cfg"
|
||||||
|
|
||||||
print "Merging libraries."
|
if output_file:
|
||||||
merged = mergejs.run(sourceDirectory, None, configFilename)
|
outputFilename = output_file
|
||||||
if have_compressor == "jsmin":
|
|
||||||
print "Compressing using jsmin."
|
|
||||||
minimized = jsmin.jsmin(merged)
|
|
||||||
elif have_compressor == "minimize":
|
|
||||||
print "Compressing using minimize."
|
|
||||||
minimized = minimize.minimize(merged)
|
|
||||||
else: # fallback
|
|
||||||
print "Not compressing."
|
|
||||||
minimized = merged
|
|
||||||
print "Adding license file."
|
|
||||||
minimized = file("license.txt").read() + minimized
|
|
||||||
|
|
||||||
print "Writing to %s." % outputFilename
|
print "Merging libraries."
|
||||||
file(outputFilename, "w").write(minimized)
|
merged = mergejs.run(sourceDirectory, None, configFilename)
|
||||||
|
print "Compressing using %s" % use_compressor
|
||||||
|
if use_compressor == "jsmin":
|
||||||
|
minimized = jsmin.jsmin(merged)
|
||||||
|
elif use_compressor == "minimize":
|
||||||
|
minimized = minimize.minimize(merged)
|
||||||
|
elif use_compressor == "closure_ws":
|
||||||
|
minimized = closure_ws.minimize(merged)
|
||||||
|
elif use_compressor == "closure":
|
||||||
|
minimized = closure.minimize(merged)
|
||||||
|
else: # fallback
|
||||||
|
minimized = merged
|
||||||
|
print "Adding license file."
|
||||||
|
minimized = file("license.txt").read() + minimized
|
||||||
|
|
||||||
print "Done."
|
print "Writing to %s." % outputFilename
|
||||||
|
file(outputFilename, "w").write(minimized)
|
||||||
|
|
||||||
|
print "Done."
|
||||||
|
|
||||||
|
if __name__ == '__main__':
|
||||||
|
opt = optparse.OptionParser(usage="%s [options] [config_file] [output_file]\n Default config_file is 'full.cfg', Default output_file is 'OpenLayers.js'")
|
||||||
|
opt.add_option("-c", "--compressor", dest="compressor", help="compression method: one of 'jsmin', 'minimize', or 'none'", default="jsmin")
|
||||||
|
(options, args) = opt.parse_args()
|
||||||
|
if not len(args):
|
||||||
|
build(options=options)
|
||||||
|
elif len(args) == 1:
|
||||||
|
build(args[0], options=options)
|
||||||
|
elif len(args) == 2:
|
||||||
|
build(args[0], args[1], options=options)
|
||||||
|
else:
|
||||||
|
print "Wrong number of arguments"
|
||||||
|
|||||||
@@ -1,26 +1,13 @@
|
|||||||
|
# This is the full build with all files: this includes the vector-related files
|
||||||
|
# like Renderers and Formats.
|
||||||
|
|
||||||
[first]
|
[first]
|
||||||
OpenLayers/SingleFile.js
|
|
||||||
OpenLayers.js
|
|
||||||
OpenLayers/BaseTypes.js
|
|
||||||
OpenLayers/BaseTypes/Class.js
|
|
||||||
OpenLayers/Util.js
|
|
||||||
Rico/Corner.js
|
|
||||||
|
|
||||||
[last]
|
[last]
|
||||||
|
|
||||||
[include]
|
[include]
|
||||||
|
|
||||||
[exclude]
|
[exclude]
|
||||||
Firebug/firebug.js
|
Firebug
|
||||||
Firebug/firebugx.js
|
OpenLayers.js
|
||||||
OpenLayers/Lang/cs-CZ.js
|
OpenLayers/Lang
|
||||||
OpenLayers/Lang/de.js
|
|
||||||
OpenLayers/Lang/en-CA.js
|
|
||||||
OpenLayers/Lang/fr.js
|
|
||||||
OpenLayers/Lang/it.js
|
|
||||||
OpenLayers/Lang/nb.js
|
|
||||||
OpenLayers/Lang/nl.js
|
|
||||||
OpenLayers/Lang/pt-BR.js
|
|
||||||
OpenLayers/Lang/sv-SE.js
|
|
||||||
OpenLayers/Lang/zh-TW.js
|
|
||||||
OpenLayers/Lang/zh-CN.js
|
|
||||||
|
|||||||
@@ -1,18 +1,15 @@
|
|||||||
|
# This file includes the OpenLayers code to create a build for everything that
|
||||||
|
# does not require vector support.
|
||||||
|
|
||||||
[first]
|
[first]
|
||||||
OpenLayers/SingleFile.js
|
|
||||||
OpenLayers.js
|
|
||||||
OpenLayers/BaseTypes.js
|
|
||||||
OpenLayers/BaseTypes/Class.js
|
|
||||||
OpenLayers/Util.js
|
|
||||||
Rico/Corner.js
|
|
||||||
|
|
||||||
[last]
|
[last]
|
||||||
|
|
||||||
[include]
|
[include]
|
||||||
|
|
||||||
[exclude]
|
[exclude]
|
||||||
Firebug/firebug.js
|
Firebug
|
||||||
Firebug/firebugx.js
|
OpenLayers.js
|
||||||
OpenLayers/Format/GeoRSS.js
|
OpenLayers/Format/GeoRSS.js
|
||||||
OpenLayers/Format/GML.js
|
OpenLayers/Format/GML.js
|
||||||
OpenLayers/Format/WKT.js
|
OpenLayers/Format/WKT.js
|
||||||
@@ -46,16 +43,6 @@ OpenLayers/Renderer/Elements.js
|
|||||||
OpenLayers/Renderer/SVG.js
|
OpenLayers/Renderer/SVG.js
|
||||||
OpenLayers/Renderer/VML.js
|
OpenLayers/Renderer/VML.js
|
||||||
OpenLayers/Renderer.js
|
OpenLayers/Renderer.js
|
||||||
OpenLayers/Lang/cs-CZ.js
|
OpenLayers/Lang
|
||||||
OpenLayers/Lang/de.js
|
|
||||||
OpenLayers/Lang/en-CA.js
|
|
||||||
OpenLayers/Lang/fr.js
|
|
||||||
OpenLayers/Lang/it.js
|
|
||||||
OpenLayers/Lang/nb.js
|
|
||||||
OpenLayers/Lang/nl.js
|
|
||||||
OpenLayers/Lang/pt-BR.js
|
|
||||||
OpenLayers/Lang/sv-SE.js
|
|
||||||
OpenLayers/Lang/zh-TW.js
|
|
||||||
OpenLayers/Lang/zh-CN.js
|
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -2,8 +2,8 @@
|
|||||||
|
|
||||||
OpenLayers.js -- OpenLayers Map Viewer Library
|
OpenLayers.js -- OpenLayers Map Viewer Library
|
||||||
|
|
||||||
Copyright 2005-2008 MetaCarta, Inc., released under the Clear BSD license.
|
Copyright 2005-2011 OpenLayers Contributors, released under the FreeBSD
|
||||||
Please see http://svn.openlayers.org/trunk/openlayers/license.txt
|
license. Please see http://svn.openlayers.org/trunk/openlayers/license.txt
|
||||||
for the full text of the license.
|
for the full text of the license.
|
||||||
|
|
||||||
Includes compressed code under the following licenses:
|
Includes compressed code under the following licenses:
|
||||||
@@ -52,3 +52,74 @@
|
|||||||
* You may obtain a copy of the License at
|
* You may obtain a copy of the License at
|
||||||
* http://www.apache.org/licenses/LICENSE-2.0
|
* http://www.apache.org/licenses/LICENSE-2.0
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Contains portions of Gears <http://code.google.com/apis/gears/>
|
||||||
|
*
|
||||||
|
* Copyright 2007, Google Inc.
|
||||||
|
*
|
||||||
|
* Redistribution and use in source and binary forms, with or without
|
||||||
|
* modification, are permitted provided that the following conditions are met:
|
||||||
|
*
|
||||||
|
* 1. Redistributions of source code must retain the above copyright notice,
|
||||||
|
* this list of conditions and the following disclaimer.
|
||||||
|
* 2. Redistributions in binary form must reproduce the above copyright notice,
|
||||||
|
* this list of conditions and the following disclaimer in the documentation
|
||||||
|
* and/or other materials provided with the distribution.
|
||||||
|
* 3. Neither the name of Google Inc. nor the names of its contributors may be
|
||||||
|
* used to endorse or promote products derived from this software without
|
||||||
|
* specific prior written permission.
|
||||||
|
*
|
||||||
|
* THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
|
||||||
|
* WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
|
||||||
|
* MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
|
||||||
|
* EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
|
||||||
|
* SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
|
||||||
|
* PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
|
||||||
|
* OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
|
||||||
|
* WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
|
||||||
|
* OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
|
||||||
|
* ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||||
|
*
|
||||||
|
* Sets up google.gears.*, which is *the only* supported way to access Gears.
|
||||||
|
*
|
||||||
|
* Circumvent this file at your own risk!
|
||||||
|
*
|
||||||
|
* In the future, Gears may automatically define google.gears.* without this
|
||||||
|
* file. Gears may use these objects to transparently fix bugs and compatibility
|
||||||
|
* issues. Applications that use the code below will continue to work seamlessly
|
||||||
|
* when that happens.
|
||||||
|
*/
|
||||||
|
|
||||||
|
/**
|
||||||
|
* OpenLayers.Util.pagePosition is based on Yahoo's getXY method, which is
|
||||||
|
* Copyright (c) 2006, Yahoo! Inc.
|
||||||
|
* All rights reserved.
|
||||||
|
*
|
||||||
|
* Redistribution and use of this software in source and binary forms, with or
|
||||||
|
* without modification, are permitted provided that the following conditions
|
||||||
|
* are met:
|
||||||
|
*
|
||||||
|
* * Redistributions of source code must retain the above copyright notice,
|
||||||
|
* this list of conditions and the following disclaimer.
|
||||||
|
*
|
||||||
|
* * Redistributions in binary form must reproduce the above copyright notice,
|
||||||
|
* this list of conditions and the following disclaimer in the documentation
|
||||||
|
* and/or other materials provided with the distribution.
|
||||||
|
*
|
||||||
|
* * Neither the name of Yahoo! Inc. nor the names of its contributors may be
|
||||||
|
* used to endorse or promote products derived from this software without
|
||||||
|
* specific prior written permission of Yahoo! Inc.
|
||||||
|
*
|
||||||
|
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
|
||||||
|
* AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
|
||||||
|
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
|
||||||
|
* ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
|
||||||
|
* LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
|
||||||
|
* CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
|
||||||
|
* SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
|
||||||
|
* INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
|
||||||
|
* CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
|
||||||
|
* ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
|
||||||
|
* POSSIBILITY OF SUCH DAMAGE.
|
||||||
|
*/
|
||||||
@@ -1,22 +1,16 @@
|
|||||||
|
# This file includes a small subset of OpenLayers code, designed to be
|
||||||
|
# integrated into another application. It includes only the Layer types
|
||||||
|
# neccesary to create tiled or untiled WMS, and does not include any Controls.
|
||||||
|
# This is the result of what was at the time called "Webmap.js" at the FOSS4G
|
||||||
|
# Web Mapping BOF.
|
||||||
|
|
||||||
[first]
|
[first]
|
||||||
OpenLayers/SingleFile.js
|
|
||||||
OpenLayers.js
|
|
||||||
OpenLayers/BaseTypes.js
|
|
||||||
OpenLayers/BaseTypes/Class.js
|
|
||||||
OpenLayers/Util.js
|
|
||||||
|
|
||||||
[last]
|
[last]
|
||||||
|
|
||||||
[include]
|
[include]
|
||||||
OpenLayers/Events.js
|
|
||||||
OpenLayers/Map.js
|
OpenLayers/Map.js
|
||||||
OpenLayers/Layer.js
|
|
||||||
OpenLayers/Layer/Grid.js
|
|
||||||
OpenLayers/Layer/HTTPRequest.js
|
|
||||||
OpenLayers/Layer/WMS.js
|
OpenLayers/Layer/WMS.js
|
||||||
OpenLayers/Layer/WMS/Untiled.js
|
|
||||||
OpenLayers/Tile.js
|
|
||||||
OpenLayers/Tile/Image.js
|
|
||||||
|
|
||||||
[exclude]
|
[exclude]
|
||||||
|
|
||||||
|
|||||||
36
build/mobile.cfg
Normal file
36
build/mobile.cfg
Normal file
@@ -0,0 +1,36 @@
|
|||||||
|
[first]
|
||||||
|
|
||||||
|
[last]
|
||||||
|
|
||||||
|
[include]
|
||||||
|
OpenLayers/Map.js
|
||||||
|
OpenLayers/Kinetic.js
|
||||||
|
OpenLayers/Projection.js
|
||||||
|
OpenLayers/Layer/SphericalMercator.js
|
||||||
|
OpenLayers/Layer/XYZ.js
|
||||||
|
OpenLayers/Layer/Bing.js
|
||||||
|
OpenLayers/Layer/WMS.js
|
||||||
|
OpenLayers/Control/TouchNavigation.js
|
||||||
|
OpenLayers/Control/Geolocate.js
|
||||||
|
OpenLayers/Control/ZoomPanel.js
|
||||||
|
OpenLayers/Control/Attribution.js
|
||||||
|
OpenLayers/Control/SelectFeature.js
|
||||||
|
OpenLayers/Control/DrawFeature.js
|
||||||
|
OpenLayers/Control/ModifyFeature.js
|
||||||
|
OpenLayers/Control/Panel.js
|
||||||
|
OpenLayers/Handler/Point.js
|
||||||
|
OpenLayers/Handler/Path.js
|
||||||
|
OpenLayers/Handler/Polygon.js
|
||||||
|
OpenLayers/Layer/Vector.js
|
||||||
|
OpenLayers/Renderer/SVG.js
|
||||||
|
OpenLayers/Renderer/Canvas.js
|
||||||
|
OpenLayers/Format/GeoJSON.js
|
||||||
|
OpenLayers/Format/KML.js
|
||||||
|
OpenLayers/Protocol/HTTP.js
|
||||||
|
OpenLayers/Protocol/WFS.js
|
||||||
|
OpenLayers/Protocol/WFS/v1_0_0.js
|
||||||
|
OpenLayers/Strategy/Fixed.js
|
||||||
|
|
||||||
|
[exclude]
|
||||||
|
|
||||||
|
|
||||||
10
build/tests.cfg
Normal file
10
build/tests.cfg
Normal file
@@ -0,0 +1,10 @@
|
|||||||
|
# This build config is supposed to be used for the units tests with "mode=build"
|
||||||
|
|
||||||
|
[first]
|
||||||
|
|
||||||
|
[last]
|
||||||
|
|
||||||
|
[include]
|
||||||
|
|
||||||
|
[exclude]
|
||||||
|
OpenLayers.js
|
||||||
@@ -1,9 +1,16 @@
|
|||||||
OpenLayers contributors:
|
OpenLayers contributors:
|
||||||
|
|
||||||
|
Antoine Abt
|
||||||
|
Mike Adair
|
||||||
|
Jeff Adams
|
||||||
Seb Benthall
|
Seb Benthall
|
||||||
|
Bruno Binet
|
||||||
|
Stéphane Brunner
|
||||||
Howard Butler
|
Howard Butler
|
||||||
Bertil Chaupis
|
Bertil Chaupis
|
||||||
John Cole
|
John Cole
|
||||||
|
Tim Coulter
|
||||||
|
Robert Coup
|
||||||
Jeff Dege
|
Jeff Dege
|
||||||
Roald de Wit
|
Roald de Wit
|
||||||
Schuyler Erle
|
Schuyler Erle
|
||||||
@@ -11,13 +18,17 @@ Christian López Espínola
|
|||||||
John Frank
|
John Frank
|
||||||
Sean Gilles
|
Sean Gilles
|
||||||
Pierre Giraud
|
Pierre Giraud
|
||||||
|
Ivan Grcic
|
||||||
Andreas Hocevar
|
Andreas Hocevar
|
||||||
|
Marc Jansen
|
||||||
Ian Johnson
|
Ian Johnson
|
||||||
|
Frédéric Junod
|
||||||
Eric Lemoine
|
Eric Lemoine
|
||||||
Philip Lindsay
|
Philip Lindsay
|
||||||
Martijn van Oosterhout
|
Martijn van Oosterhout
|
||||||
David Overstrom
|
David Overstrom
|
||||||
Corey Puffault
|
Corey Puffault
|
||||||
|
Peter William Robins
|
||||||
Gregers Rygg
|
Gregers Rygg
|
||||||
Tim Schaub
|
Tim Schaub
|
||||||
Christopher Schmidt
|
Christopher Schmidt
|
||||||
@@ -28,10 +39,12 @@ Paul Smith
|
|||||||
Glen Stampoultzis
|
Glen Stampoultzis
|
||||||
James Stembridge
|
James Stembridge
|
||||||
Erik Uzureau
|
Erik Uzureau
|
||||||
|
Bart van den Eijnden
|
||||||
Ivan Willig
|
Ivan Willig
|
||||||
Thomas Wood
|
Thomas Wood
|
||||||
Bill Woodall
|
Bill Woodall
|
||||||
Steve Woodbridge
|
Steve Woodbridge
|
||||||
|
David Zwarg
|
||||||
|
|
||||||
Some portions of OpenLayers are used under the Apache 2.0 license, available
|
Some portions of OpenLayers are used under the Apache 2.0 license, available
|
||||||
in doc/licenses/APACHE-2.0.txt.
|
in doc/licenses/APACHE-2.0.txt.
|
||||||
|
|||||||
@@ -1,49 +1,49 @@
|
|||||||
Customizing OpenLayers
|
Customizing OpenLayers
|
||||||
======================
|
======================
|
||||||
|
|
||||||
OpenLayers is designed to fit many needs -- fitting in alongside all kinds of
|
OpenLayers is designed to fit many needs -- fitting in alongside all kinds of
|
||||||
various applications which are currently in use.
|
various applications which are currently in use.
|
||||||
|
|
||||||
Currently, OpenLayers supports a 'theme' option when creating a map. This
|
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
|
theme option allows you to specify the location of a CSS theme which should
|
||||||
be included.
|
be included.
|
||||||
|
|
||||||
A default theme is available as an example in the theme/ directory: the setup
|
A default theme is available as an example in the theme/ directory: the setup
|
||||||
is:
|
is:
|
||||||
|
|
||||||
* theme/
|
* theme/
|
||||||
* theme/default/
|
* theme/default/
|
||||||
* theme/default/style.css
|
* theme/default/style.css
|
||||||
* theme/default/img/
|
* theme/default/img/
|
||||||
|
|
||||||
Currently, the OpenLayers code does not support class names, and therefore,
|
Currently, the OpenLayers code does not support class names, and therefore,
|
||||||
it is not possible to control many aspects of OpenLayers code with CSS
|
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
|
classes. However, with this framework in place, we expect to invest time
|
||||||
to make existing features and new features use the CSS theming framework
|
to make existing features and new features use the CSS theming framework
|
||||||
where apropriate.
|
where apropriate.
|
||||||
|
|
||||||
|
|
||||||
Class Naming
|
Class Naming
|
||||||
============
|
============
|
||||||
Elements should have class names which are descriptive of the Javascript
|
Elements should have class names which are descriptive of the Javascript
|
||||||
class from which they come. For example, the main layer switcher element
|
class from which they come. For example, the main layer switcher element
|
||||||
in the OpenLayers.Control.LayerSwitcher would be classed:
|
in the OpenLayers.Control.LayerSwitcher would be classed:
|
||||||
|
|
||||||
olControlLayerSwitcher
|
olControlLayerSwitcher
|
||||||
|
|
||||||
This would allow users to add to their style.css class in their theme,
|
This would allow users to add to their style.css class in their theme,
|
||||||
changing, for example:
|
changing, for example:
|
||||||
|
|
||||||
::
|
::
|
||||||
|
|
||||||
.olControlLayerSwitcher input {
|
.olControlLayerSwitcher input {
|
||||||
width:10px;
|
width:10px;
|
||||||
}
|
}
|
||||||
|
|
||||||
Sub elements of a particular control can add to the class name:
|
Sub elements of a particular control can add to the class name:
|
||||||
|
|
||||||
::
|
::
|
||||||
|
|
||||||
.olControlLayerSwitcherBaseLabel {
|
.olControlLayerSwitcherBaseLabel {
|
||||||
color: red;
|
color: red;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,3 +1,7 @@
|
|||||||
Automatically generated OpenLayers API documentation is online:
|
Automatically generated OpenLayers API documentation is online:
|
||||||
|
|
||||||
http://dev.openlayers.org/apidocs
|
http://dev.openlayers.org/apidocs
|
||||||
|
|
||||||
|
More information on documentation is available from:
|
||||||
|
|
||||||
|
http://trac.openlayers.org/wiki/Documentation
|
||||||
|
|||||||
@@ -45,10 +45,9 @@ SubTitle: JavaScript Mapping Library
|
|||||||
# --------------------------------------------------------------------------
|
# --------------------------------------------------------------------------
|
||||||
|
|
||||||
|
|
||||||
File: OpenLayers (OpenLayers.js)
|
|
||||||
|
|
||||||
Group: OpenLayers {
|
Group: OpenLayers {
|
||||||
|
|
||||||
|
File: OpenLayers (no auto-title, OpenLayers.js)
|
||||||
File: Ajax (no auto-title, OpenLayers/Ajax.js)
|
File: Ajax (no auto-title, OpenLayers/Ajax.js)
|
||||||
|
|
||||||
Group: BaseTypes {
|
Group: BaseTypes {
|
||||||
@@ -74,8 +73,11 @@ Group: OpenLayers {
|
|||||||
File: DragPan (no auto-title, OpenLayers/Control/DragPan.js)
|
File: DragPan (no auto-title, OpenLayers/Control/DragPan.js)
|
||||||
File: DrawFeature (no auto-title, OpenLayers/Control/DrawFeature.js)
|
File: DrawFeature (no auto-title, OpenLayers/Control/DrawFeature.js)
|
||||||
File: EditingToolbar (no auto-title, OpenLayers/Control/EditingToolbar.js)
|
File: EditingToolbar (no auto-title, OpenLayers/Control/EditingToolbar.js)
|
||||||
|
File: GetFeature (no auto-title, OpenLayers/Control/GetFeature.js)
|
||||||
|
File: Graticule (OpenLayers/Control/Graticule.js)
|
||||||
File: KeyboardDefaults (no auto-title, OpenLayers/Control/KeyboardDefaults.js)
|
File: KeyboardDefaults (no auto-title, OpenLayers/Control/KeyboardDefaults.js)
|
||||||
File: LayerSwitcher (no auto-title, OpenLayers/Control/LayerSwitcher.js)
|
File: LayerSwitcher (no auto-title, OpenLayers/Control/LayerSwitcher.js)
|
||||||
|
File: Measure (no auto-title, OpenLayers/Control/Measure.js)
|
||||||
File: ModifyFeature (no auto-title, OpenLayers/Control/ModifyFeature.js)
|
File: ModifyFeature (no auto-title, OpenLayers/Control/ModifyFeature.js)
|
||||||
File: MouseDefaults (no auto-title, OpenLayers/Control/MouseDefaults.js)
|
File: MouseDefaults (no auto-title, OpenLayers/Control/MouseDefaults.js)
|
||||||
File: MousePosition (no auto-title, OpenLayers/Control/MousePosition.js)
|
File: MousePosition (no auto-title, OpenLayers/Control/MousePosition.js)
|
||||||
@@ -84,14 +86,22 @@ Group: OpenLayers {
|
|||||||
File: NavigationHistory (no auto-title, OpenLayers/Control/NavigationHistory.js)
|
File: NavigationHistory (no auto-title, OpenLayers/Control/NavigationHistory.js)
|
||||||
File: NavToolbar (no auto-title, OpenLayers/Control/NavToolbar.js)
|
File: NavToolbar (no auto-title, OpenLayers/Control/NavToolbar.js)
|
||||||
File: OverviewMap (no auto-title, OpenLayers/Control/OverviewMap.js)
|
File: OverviewMap (no auto-title, OpenLayers/Control/OverviewMap.js)
|
||||||
|
File: Pan (no auto-title, OpenLayers/Control/Pan.js)
|
||||||
File: Panel (no auto-title, OpenLayers/Control/Panel.js)
|
File: Panel (no auto-title, OpenLayers/Control/Panel.js)
|
||||||
|
File: PanPanel (no auto-title, OpenLayers/Control/PanPanel.js)
|
||||||
File: PanZoom (no auto-title, OpenLayers/Control/PanZoom.js)
|
File: PanZoom (no auto-title, OpenLayers/Control/PanZoom.js)
|
||||||
File: PanZoomBar (no auto-title, OpenLayers/Control/PanZoomBar.js)
|
File: PanZoomBar (no auto-title, OpenLayers/Control/PanZoomBar.js)
|
||||||
File: Permalink (no auto-title, OpenLayers/Control/Permalink.js)
|
File: Permalink (no auto-title, OpenLayers/Control/Permalink.js)
|
||||||
File: Scale (no auto-title, OpenLayers/Control/Scale.js)
|
File: Scale (no auto-title, OpenLayers/Control/Scale.js)
|
||||||
File: ScaleLine (no auto-title, OpenLayers/Control/ScaleLine.js)
|
File: ScaleLine (no auto-title, OpenLayers/Control/ScaleLine.js)
|
||||||
File: SelectFeature (no auto-title, OpenLayers/Control/SelectFeature.js)
|
File: SelectFeature (no auto-title, OpenLayers/Control/SelectFeature.js)
|
||||||
|
File: Snapping (no auto-title, OpenLayers/Control/Snapping.js)
|
||||||
|
File: Split (no auto-title, OpenLayers/Control/Split.js)
|
||||||
|
File: WMSGetFeatureInfo (OpenLayers/Control/WMSGetFeatureInfo.js)
|
||||||
File: ZoomBox (no auto-title, OpenLayers/Control/ZoomBox.js)
|
File: ZoomBox (no auto-title, OpenLayers/Control/ZoomBox.js)
|
||||||
|
File: ZoomIn (no auto-title, OpenLayers/Control/ZoomIn.js)
|
||||||
|
File: ZoomOut (no auto-title, OpenLayers/Control/ZoomOut.js)
|
||||||
|
File: ZoomPanel (no auto-title, OpenLayers/Control/ZoomPanel.js)
|
||||||
File: ZoomToMaxExtent (no auto-title, OpenLayers/Control/ZoomToMaxExtent.js)
|
File: ZoomToMaxExtent (no auto-title, OpenLayers/Control/ZoomToMaxExtent.js)
|
||||||
} # Group: Control
|
} # Group: Control
|
||||||
|
|
||||||
@@ -110,17 +120,44 @@ Group: OpenLayers {
|
|||||||
File: Comparison (no auto-title, OpenLayers/Filter/Comparison.js)
|
File: Comparison (no auto-title, OpenLayers/Filter/Comparison.js)
|
||||||
File: FeatureId (no auto-title, OpenLayers/Filter/FeatureId.js)
|
File: FeatureId (no auto-title, OpenLayers/Filter/FeatureId.js)
|
||||||
File: Logical (no auto-title, OpenLayers/Filter/Logical.js)
|
File: Logical (no auto-title, OpenLayers/Filter/Logical.js)
|
||||||
|
File: Spatial (no auto-title, OpenLayers/Filter/Spatial.js)
|
||||||
} # Group: Filter
|
} # Group: Filter
|
||||||
|
|
||||||
Group: Format {
|
Group: Format {
|
||||||
|
|
||||||
File: Format (no auto-title, OpenLayers/Format.js)
|
File: Format (no auto-title, OpenLayers/Format.js)
|
||||||
|
File: ArcXML (no auto-title, OpenLayers/Format/ArcXML.js)
|
||||||
|
File: ArcXML.Features (no auto-title, OpenLayers/Format/ArcXML/Features.js)
|
||||||
|
File: Atom (no auto-title, OpenLayers/Format/Atom.js)
|
||||||
|
File: CSWGetDomain.DEFAULTS (no auto-title, OpenLayers/Format/CSWGetDomain.js)
|
||||||
|
File: CSWGetDomain.v2_0_2 (no auto-title, OpenLayers/Format/CSWGetDomain/v2_0_2.js)
|
||||||
|
File: CSWGetRecords.DEFAULTS (no auto-title, OpenLayers/Format/CSWGetRecords.js)
|
||||||
|
File: CSWGetRecords.v2_0_2 (no auto-title, OpenLayers/Format/CSWGetRecords/v2_0_2.js)
|
||||||
|
|
||||||
|
Group: Filter {
|
||||||
|
|
||||||
|
File: Filter (no auto-title, OpenLayers/Format/Filter.js)
|
||||||
|
File: v1 (no auto-title, OpenLayers/Format/Filter/v1.js)
|
||||||
|
File: v1_0_0 (no auto-title, OpenLayers/Format/Filter/v1_0_0.js)
|
||||||
|
File: v1_1_0 (OpenLayers/Format/Filter/v1_1_0.js)
|
||||||
|
} # Group: Filter
|
||||||
|
|
||||||
File: GeoJSON (no auto-title, OpenLayers/Format/GeoJSON.js)
|
File: GeoJSON (no auto-title, OpenLayers/Format/GeoJSON.js)
|
||||||
File: GeoRSS (no auto-title, OpenLayers/Format/GeoRSS.js)
|
File: GeoRSS (no auto-title, OpenLayers/Format/GeoRSS.js)
|
||||||
File: GML (no auto-title, OpenLayers/Format/GML.js)
|
|
||||||
|
Group: GML {
|
||||||
|
|
||||||
|
File: GML (no auto-title, OpenLayers/Format/GML.js)
|
||||||
|
File: Base (no auto-title, OpenLayers/Format/GML/Base.js)
|
||||||
|
File: v2 (no auto-title, OpenLayers/Format/GML/v2.js)
|
||||||
|
File: v3 (no auto-title, OpenLayers/Format/GML/v3.js)
|
||||||
|
} # Group: GML
|
||||||
|
|
||||||
|
File: GPX (no auto-title, OpenLayers/Format/GPX.js)
|
||||||
File: JSON (no auto-title, OpenLayers/Format/JSON.js)
|
File: JSON (no auto-title, OpenLayers/Format/JSON.js)
|
||||||
File: KML (no auto-title, OpenLayers/Format/KML.js)
|
File: KML (no auto-title, OpenLayers/Format/KML.js)
|
||||||
File: OSM (no auto-title, OpenLayers/Format/OSM.js)
|
File: OSM (no auto-title, OpenLayers/Format/OSM.js)
|
||||||
|
File: OWSCommon.v1_1_0 (OpenLayers/Format/OWSCommon/v1_1_0.js)
|
||||||
|
|
||||||
Group: SLD {
|
Group: SLD {
|
||||||
|
|
||||||
@@ -129,10 +166,31 @@ Group: OpenLayers {
|
|||||||
File: v1_0_0 (no auto-title, OpenLayers/Format/SLD/v1_0_0.js)
|
File: v1_0_0 (no auto-title, OpenLayers/Format/SLD/v1_0_0.js)
|
||||||
} # Group: SLD
|
} # Group: SLD
|
||||||
|
|
||||||
|
File: SOSCapabilities (OpenLayers/Format/SOSCapabilities.js)
|
||||||
|
File: SOSCapabilities.v1_0_0 (OpenLayers/Format/SOSCapabilities/v1_0_0.js)
|
||||||
|
File: SOSGetObservation (OpenLayers/Format/SOSGetObservation.js)
|
||||||
File: Text (no auto-title, OpenLayers/Format/Text.js)
|
File: Text (no auto-title, OpenLayers/Format/Text.js)
|
||||||
File: WFS (no auto-title, OpenLayers/Format/WFS.js)
|
File: WFS (no auto-title, OpenLayers/Format/WFS.js)
|
||||||
|
|
||||||
|
Group: WFSCapabilities {
|
||||||
|
|
||||||
|
File: WFSCapabilities (no auto-title, OpenLayers/Format/WFSCapabilities.js)
|
||||||
|
File: v1 (no auto-title, OpenLayers/Format/WFSCapabilities/v1.js)
|
||||||
|
File: v1_0_0 (no auto-title, OpenLayers/Format/WFSCapabilities/v1_0_0.js)
|
||||||
|
File: v1_1_0 (no auto-title, OpenLayers/Format/WFSCapabilities/v1_1_0.js)
|
||||||
|
} # Group: WFSCapabilities
|
||||||
|
|
||||||
|
File: WFSDescribeFeatureType (no auto-title, OpenLayers/Format/WFSDescribeFeatureType.js)
|
||||||
|
|
||||||
|
Group: WFST {
|
||||||
|
|
||||||
|
File: WFST (no auto-title, OpenLayers/Format/WFST.js)
|
||||||
|
File: v1 (OpenLayers/Format/WFST/v1.js)
|
||||||
|
File: v1_0_0 (OpenLayers/Format/WFST/v1_0_0.js)
|
||||||
|
File: v1_1_0 (OpenLayers/Format/WFST/v1_1_0.js)
|
||||||
|
} # Group: WFST
|
||||||
|
|
||||||
File: WKT (no auto-title, OpenLayers/Format/WKT.js)
|
File: WKT (no auto-title, OpenLayers/Format/WKT.js)
|
||||||
File: XML (no auto-title, OpenLayers/Format/XML.js)
|
|
||||||
|
|
||||||
Group: WMC {
|
Group: WMC {
|
||||||
|
|
||||||
@@ -142,6 +200,25 @@ Group: OpenLayers {
|
|||||||
File: v1_1_0 (no auto-title, OpenLayers/Format/WMC/v1_1_0.js)
|
File: v1_1_0 (no auto-title, OpenLayers/Format/WMC/v1_1_0.js)
|
||||||
} # Group: WMC
|
} # Group: WMC
|
||||||
|
|
||||||
|
Group: WMSCapabilities {
|
||||||
|
|
||||||
|
File: WMSCapabilities (no auto-title, OpenLayers/Format/WMSCapabilities.js)
|
||||||
|
File: v1 (no auto-title, OpenLayers/Format/WMSCapabilities/v1.js)
|
||||||
|
File: v1_1 (no auto-title, OpenLayers/Format/WMSCapabilities/v1_1.js)
|
||||||
|
File: v1_1_0 (no auto-title, OpenLayers/Format/WMSCapabilities/v1_1_0.js)
|
||||||
|
File: v1_1_1 (no auto-title, OpenLayers/Format/WMSCapabilities/v1_1_1.js)
|
||||||
|
File: v1_3 (no auto-title, OpenLayers/Format/WMSCapabilities/v1_3.js)
|
||||||
|
File: v1_3_0 (no auto-title, OpenLayers/Format/WMSCapabilities/v1_3_0.js)
|
||||||
|
} # Group: WMSCapabilities
|
||||||
|
|
||||||
|
Group: WMSDescribeLayer {
|
||||||
|
|
||||||
|
File: WMSDescribeLayer (no auto-title, OpenLayers/Format/WMSDescribeLayer.js)
|
||||||
|
File: v1_1 (no auto-title, OpenLayers/Format/WMSDescribeLayer/v1_1.js)
|
||||||
|
} # Group: WMSDescribeLayer
|
||||||
|
|
||||||
|
File: WMSGetFeatureInfo (no auto-title, OpenLayers/Format/WMSGetFeatureInfo.js)
|
||||||
|
File: XML (no auto-title, OpenLayers/Format/XML.js)
|
||||||
} # Group: Format
|
} # Group: Format
|
||||||
|
|
||||||
Group: Geometry {
|
Group: Geometry {
|
||||||
@@ -180,16 +257,55 @@ Group: OpenLayers {
|
|||||||
Group: Lang {
|
Group: Lang {
|
||||||
|
|
||||||
File: Lang (no auto-title, OpenLayers/Lang.js)
|
File: Lang (no auto-title, OpenLayers/Lang.js)
|
||||||
File: Lang["cs-CZ"] (OpenLayers/Lang/cs-CZ.js)
|
File: ar (no auto-title, OpenLayers/Lang/ar.js)
|
||||||
File: Lang["de"] (no auto-title, OpenLayers/Lang/de.js)
|
File: be-tarask (no auto-title, OpenLayers/Lang/be-tarask.js)
|
||||||
File: Lang["en"] (no auto-title, OpenLayers/Lang/en.js)
|
File: bg (no auto-title, OpenLayers/Lang/bg.js)
|
||||||
File: Lang["en-CA"] (no auto-title, OpenLayers/Lang/en-CA.js)
|
File: br (no auto-title, OpenLayers/Lang/br.js)
|
||||||
File: Lang["fr"] (no auto-title, OpenLayers/Lang/fr.js)
|
File: ca (no auto-title, OpenLayers/Lang/ca.js)
|
||||||
|
File: cs-CZ (no auto-title, OpenLayers/Lang/cs-CZ.js)
|
||||||
|
File: da-DK (no auto-title, OpenLayers/Lang/da-DK.js)
|
||||||
|
File: de (no auto-title, OpenLayers/Lang/de.js)
|
||||||
|
File: en (no auto-title, OpenLayers/Lang/en.js)
|
||||||
|
File: en-CA (no auto-title, OpenLayers/Lang/en-CA.js)
|
||||||
|
File: es (no auto-title, OpenLayers/Lang/es.js)
|
||||||
|
File: el (no auto-title, OpenLayers/Lang/el.js)
|
||||||
|
File: fi (no auto-title, OpenLayers/Lang/fi.js)
|
||||||
|
File: fr (no auto-title, OpenLayers/Lang/fr.js)
|
||||||
|
File: fur (no auto-title, OpenLayers/Lang/fur.js)
|
||||||
|
File: gl (no auto-title, OpenLayers/Lang/gl.js)
|
||||||
|
File: gsw (no auto-title, OpenLayers/Lang/gsw.js)
|
||||||
|
File: hr (no auto-title, OpenLayers/Lang/hr.js)
|
||||||
|
File: hsb (no auto-title, OpenLayers/Lang/hsb.js)
|
||||||
|
File: hu (no auto-title, OpenLayers/Lang/hu.js)
|
||||||
|
File: ia (no auto-title, OpenLayers/Lang/ia.js)
|
||||||
|
File: id (no auto-title, OpenLayers/Lang/id.js)
|
||||||
|
File: io (no auto-title, OpenLayers/Lang/io.js)
|
||||||
|
File: is (no auto-title, OpenLayers/Lang/is.js)
|
||||||
|
File: it (no auto-title, OpenLayers/Lang/it.js)
|
||||||
|
File: ja (no auto-title, OpenLayers/Lang/ja.js)
|
||||||
|
File: km (no auto-title, OpenLayers/Lang/km.js)
|
||||||
|
File: ksh (no auto-title, OpenLayers/Lang/ksh.js)
|
||||||
|
File: nds (no auto-title, OpenLayers/Lang/nds.js)
|
||||||
|
File: nb (no auto-title, OpenLayers/Lang/nb.js)
|
||||||
|
File: nl (no auto-title, OpenLayers/Lang/nl.js)
|
||||||
|
File: nn (no auto-title, OpenLayers/Lang/nn.js)
|
||||||
|
File: oc (no auto-title, OpenLayers/Lang/oc.js)
|
||||||
|
File: pt (no auto-title, OpenLayers/Lang/pt.js)
|
||||||
|
File: pt-BR (no auto-title, OpenLayers/Lang/pt-BR.js)
|
||||||
|
File: ru (no auto-title, OpenLayers/Lang/ru.js)
|
||||||
|
File: sk (no auto-title, OpenLayers/Lang/sk.js)
|
||||||
|
File: sv-SE (no auto-title, OpenLayers/Lang/sv-SE.js)
|
||||||
|
File: te (no auto-title, OpenLayers/Lang/te.js)
|
||||||
|
File: vi (no auto-title, OpenLayers/Lang/vi.js)
|
||||||
|
File: zh-CN (no auto-title, OpenLayers/Lang/zh-CN.js)
|
||||||
|
File: zh-TW (no auto-title, OpenLayers/Lang/zh-TW.js)
|
||||||
} # Group: Lang
|
} # Group: Lang
|
||||||
|
|
||||||
Group: Layer {
|
Group: Layer {
|
||||||
|
|
||||||
File: Layer (no auto-title, OpenLayers/Layer.js)
|
File: Layer (no auto-title, OpenLayers/Layer.js)
|
||||||
|
File: ArcGIS93Rest (no auto-title, OpenLayers/Layer/ArcGIS93Rest.js)
|
||||||
|
File: ArcIMS (no auto-title, OpenLayers/Layer/ArcIMS.js)
|
||||||
File: Boxes (no auto-title, OpenLayers/Layer/Boxes.js)
|
File: Boxes (no auto-title, OpenLayers/Layer/Boxes.js)
|
||||||
File: EventPane (no auto-title, OpenLayers/Layer/EventPane.js)
|
File: EventPane (no auto-title, OpenLayers/Layer/EventPane.js)
|
||||||
File: FixedZoomLevels (no auto-title, OpenLayers/Layer/FixedZoomLevels.js)
|
File: FixedZoomLevels (no auto-title, OpenLayers/Layer/FixedZoomLevels.js)
|
||||||
@@ -200,6 +316,7 @@ Group: OpenLayers {
|
|||||||
File: HTTPRequest (no auto-title, OpenLayers/Layer/HTTPRequest.js)
|
File: HTTPRequest (no auto-title, OpenLayers/Layer/HTTPRequest.js)
|
||||||
File: Image (no auto-title, OpenLayers/Layer/Image.js)
|
File: Image (no auto-title, OpenLayers/Layer/Image.js)
|
||||||
File: KaMap (no auto-title, OpenLayers/Layer/KaMap.js)
|
File: KaMap (no auto-title, OpenLayers/Layer/KaMap.js)
|
||||||
|
File: KaMapCache (no auto-title, OpenLayers/Layer/KaMapCache.js)
|
||||||
File: MapGuide (no auto-title, OpenLayers/Layer/MapGuide.js)
|
File: MapGuide (no auto-title, OpenLayers/Layer/MapGuide.js)
|
||||||
File: MapServer (no auto-title, OpenLayers/Layer/MapServer.js)
|
File: MapServer (no auto-title, OpenLayers/Layer/MapServer.js)
|
||||||
File: MapServer.Untiled (no auto-title, OpenLayers/Layer/MapServer/Untiled.js)
|
File: MapServer.Untiled (no auto-title, OpenLayers/Layer/MapServer/Untiled.js)
|
||||||
@@ -211,12 +328,15 @@ Group: OpenLayers {
|
|||||||
File: TileCache (no auto-title, OpenLayers/Layer/TileCache.js)
|
File: TileCache (no auto-title, OpenLayers/Layer/TileCache.js)
|
||||||
File: TMS (no auto-title, OpenLayers/Layer/TMS.js)
|
File: TMS (no auto-title, OpenLayers/Layer/TMS.js)
|
||||||
File: Vector (no auto-title, OpenLayers/Layer/Vector.js)
|
File: Vector (no auto-title, OpenLayers/Layer/Vector.js)
|
||||||
|
File: Vector.RootContainer (no auto-title, OpenLayers/Layer/Vector/RootContainer.js)
|
||||||
File: VirtualEarth (no auto-title, OpenLayers/Layer/VirtualEarth.js)
|
File: VirtualEarth (no auto-title, OpenLayers/Layer/VirtualEarth.js)
|
||||||
File: WFS (no auto-title, OpenLayers/Layer/WFS.js)
|
File: WFS (no auto-title, OpenLayers/Layer/WFS.js)
|
||||||
File: WMS (no auto-title, OpenLayers/Layer/WMS.js)
|
File: WMS (no auto-title, OpenLayers/Layer/WMS.js)
|
||||||
File: WMS.Untiled (no auto-title, OpenLayers/Layer/WMS/Untiled.js)
|
File: WMS.Untiled (no auto-title, OpenLayers/Layer/WMS/Untiled.js)
|
||||||
|
File: WMS.Post (no auto-title, OpenLayers/Layer/WMS/Post.js)
|
||||||
File: WorldWind (no auto-title, OpenLayers/Layer/WorldWind.js)
|
File: WorldWind (no auto-title, OpenLayers/Layer/WorldWind.js)
|
||||||
File: Yahoo (no auto-title, OpenLayers/Layer/Yahoo.js)
|
File: Yahoo (no auto-title, OpenLayers/Layer/Yahoo.js)
|
||||||
|
File: XYZ (no auto-title, OpenLayers/Layer/XYZ.js)
|
||||||
} # Group: Layer
|
} # Group: Layer
|
||||||
|
|
||||||
File: Map (no auto-title, OpenLayers/Map.js)
|
File: Map (no auto-title, OpenLayers/Map.js)
|
||||||
@@ -232,21 +352,61 @@ Group: OpenLayers {
|
|||||||
File: Popup (no auto-title, OpenLayers/Popup.js)
|
File: Popup (no auto-title, OpenLayers/Popup.js)
|
||||||
File: Anchored (no auto-title, OpenLayers/Popup/Anchored.js)
|
File: Anchored (no auto-title, OpenLayers/Popup/Anchored.js)
|
||||||
File: AnchoredBubble (no auto-title, OpenLayers/Popup/AnchoredBubble.js)
|
File: AnchoredBubble (no auto-title, OpenLayers/Popup/AnchoredBubble.js)
|
||||||
File: Framed (OpenLayers/Popup/Framed.js)
|
File: Framed (no auto-title, OpenLayers/Popup/Framed.js)
|
||||||
File: FramedCloud (OpenLayers/Popup/FramedCloud.js)
|
File: FramedCloud (no auto-title, OpenLayers/Popup/FramedCloud.js)
|
||||||
} # Group: Popup
|
} # Group: Popup
|
||||||
|
|
||||||
File: Projection (no auto-title, OpenLayers/Projection.js)
|
File: Projection (no auto-title, OpenLayers/Projection.js)
|
||||||
|
|
||||||
|
Group: Protocol {
|
||||||
|
|
||||||
|
File: Protocol (no auto-title, OpenLayers/Protocol.js)
|
||||||
|
File: HTTP (no auto-title, OpenLayers/Protocol/HTTP.js)
|
||||||
|
|
||||||
|
Group: SQL {
|
||||||
|
|
||||||
|
File: SQL (no auto-title, OpenLayers/Protocol/SQL.js)
|
||||||
|
File: Gears (no auto-title, OpenLayers/Protocol/SQL/Gears.js)
|
||||||
|
} # Group: SQL
|
||||||
|
|
||||||
|
Group: WFS {
|
||||||
|
|
||||||
|
File: WFS (no auto-title, OpenLayers/Protocol/WFS.js)
|
||||||
|
File: v1 (no auto-title, OpenLayers/Protocol/WFS/v1.js)
|
||||||
|
File: v1_0_0 (no auto-title, OpenLayers/Protocol/WFS/v1_0_0.js)
|
||||||
|
File: v1_1_0 (no auto-title, OpenLayers/Protocol/WFS/v1_1_0.js)
|
||||||
|
} # Group: WFS
|
||||||
|
|
||||||
|
} # Group: Protocol
|
||||||
|
|
||||||
Group: Renderer {
|
Group: Renderer {
|
||||||
|
|
||||||
File: Renderer (no auto-title, OpenLayers/Renderer.js)
|
File: Renderer (no auto-title, OpenLayers/Renderer.js)
|
||||||
|
File: Canvas (no auto-title, OpenLayers/Renderer/Canvas.js)
|
||||||
File: Elements (no auto-title, OpenLayers/Renderer/Elements.js)
|
File: Elements (no auto-title, OpenLayers/Renderer/Elements.js)
|
||||||
File: SVG (no auto-title, OpenLayers/Renderer/SVG.js)
|
File: SVG (no auto-title, OpenLayers/Renderer/SVG.js)
|
||||||
File: VML (no auto-title, OpenLayers/Renderer/VML.js)
|
File: VML (no auto-title, OpenLayers/Renderer/VML.js)
|
||||||
} # Group: Renderer
|
} # Group: Renderer
|
||||||
|
|
||||||
|
Group: Request {
|
||||||
|
|
||||||
|
File: Request (no auto-title, OpenLayers/Request.js)
|
||||||
|
File: XMLHttpRequest (no auto-title, OpenLayers/Request/XMLHttpRequest.js)
|
||||||
|
} # Group: Request
|
||||||
|
|
||||||
File: Rule (no auto-title, OpenLayers/Rule.js)
|
File: Rule (no auto-title, OpenLayers/Rule.js)
|
||||||
|
|
||||||
|
Group: Strategy {
|
||||||
|
|
||||||
|
File: Strategy (no auto-title, OpenLayers/Strategy.js)
|
||||||
|
File: BBOX (no auto-title, OpenLayers/Strategy/BBOX.js)
|
||||||
|
File: Cluster (no auto-title, OpenLayers/Strategy/Cluster.js)
|
||||||
|
File: Fixed (no auto-title, OpenLayers/Strategy/Fixed.js)
|
||||||
|
File: Paging (no auto-title, OpenLayers/Strategy/Paging.js)
|
||||||
|
File: Refresh (OpenLayers/Strategy/Refresh.js)
|
||||||
|
File: Save (OpenLayers/Strategy/Save.js)
|
||||||
|
} # Group: Strategy
|
||||||
|
|
||||||
File: Style (no auto-title, OpenLayers/Style.js)
|
File: Style (no auto-title, OpenLayers/Style.js)
|
||||||
File: StyleMap (no auto-title, OpenLayers/StyleMap.js)
|
File: StyleMap (no auto-title, OpenLayers/StyleMap.js)
|
||||||
|
|
||||||
@@ -255,6 +415,7 @@ Group: OpenLayers {
|
|||||||
File: Tile (no auto-title, OpenLayers/Tile.js)
|
File: Tile (no auto-title, OpenLayers/Tile.js)
|
||||||
File: Image (no auto-title, OpenLayers/Tile/Image.js)
|
File: Image (no auto-title, OpenLayers/Tile/Image.js)
|
||||||
File: WFS (no auto-title, OpenLayers/Tile/WFS.js)
|
File: WFS (no auto-title, OpenLayers/Tile/WFS.js)
|
||||||
|
File: IFrame (OpenLayers/Tile/Image/IFrame.js)
|
||||||
} # Group: Tile
|
} # Group: Tile
|
||||||
|
|
||||||
File: Tween (no auto-title, OpenLayers/Tween.js)
|
File: Tween (no auto-title, OpenLayers/Tween.js)
|
||||||
|
|||||||
@@ -1,43 +0,0 @@
|
|||||||
<html xmlns="http://www.w3.org/1999/xhtml">
|
|
||||||
<head>
|
|
||||||
<title>OpenLayers GML Parser</title>
|
|
||||||
<link rel="stylesheet" href="../theme/default/style.css" type="text/css" />
|
|
||||||
<link rel="stylesheet" href="style.css" type="text/css" />
|
|
||||||
<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.getElementById('output').innerHTML = html;
|
|
||||||
}
|
|
||||||
function load() {
|
|
||||||
OpenLayers.loadURL("gml/owls.xml", "", null, parseData);
|
|
||||||
}
|
|
||||||
</script>
|
|
||||||
</head>
|
|
||||||
<body onload="load()">
|
|
||||||
<h1 id="title">GML Parser Example</h1>
|
|
||||||
|
|
||||||
<div id="tags"></div>
|
|
||||||
|
|
||||||
<p id="shortdesc">
|
|
||||||
Demonstrate the operation of the GML parser.
|
|
||||||
</p>
|
|
||||||
|
|
||||||
<div id="output"></div>
|
|
||||||
|
|
||||||
<div id="docs">
|
|
||||||
This script reads data from a GML file and parses out the coordinates, appending them to a HTML string with markup tags.
|
|
||||||
This markup is dumped to an element in the page.
|
|
||||||
</div>
|
|
||||||
</body>
|
|
||||||
</html>
|
|
||||||
File diff suppressed because one or more lines are too long
@@ -1,5 +1,7 @@
|
|||||||
<html xmlns="http://www.w3.org/1999/xhtml">
|
<html xmlns="http://www.w3.org/1999/xhtml">
|
||||||
<head>
|
<head>
|
||||||
|
<meta name="viewport" content="width=device-width; initial-scale=1.0; maximum-scale=1.0; user-scalable=0;" />
|
||||||
|
<meta name="apple-mobile-web-app-capable" content="yes" />
|
||||||
<title>OpenLayers KML Parser Example</title>
|
<title>OpenLayers KML Parser Example</title>
|
||||||
<link rel="stylesheet" href="style.css" type="text/css" />
|
<link rel="stylesheet" href="style.css" type="text/css" />
|
||||||
<script src="../lib/OpenLayers.js"></script>
|
<script src="../lib/OpenLayers.js"></script>
|
||||||
@@ -31,7 +33,9 @@
|
|||||||
<body onload="load()">
|
<body onload="load()">
|
||||||
<h1 id="title">KML Parser Example</h1>
|
<h1 id="title">KML Parser Example</h1>
|
||||||
|
|
||||||
<div id="tags"></div>
|
<div id="tags">
|
||||||
|
KML, parsing, format
|
||||||
|
</div>
|
||||||
|
|
||||||
<p id="shortdesc">
|
<p id="shortdesc">
|
||||||
Demonstrate the operation of the KML parser.
|
Demonstrate the operation of the KML parser.
|
||||||
|
|||||||
200
examples/SLDSelect.html
Normal file
200
examples/SLDSelect.html
Normal file
@@ -0,0 +1,200 @@
|
|||||||
|
<html xmlns="http://www.w3.org/1999/xhtml">
|
||||||
|
<head>
|
||||||
|
<meta name="viewport" content="width=device-width; initial-scale=1.0; maximum-scale=1.0; user-scalable=0;" />
|
||||||
|
<meta name="apple-mobile-web-app-capable" content="yes" />
|
||||||
|
<title>OpenLayers SLD based selection control</title>
|
||||||
|
<link rel="stylesheet" href="../theme/default/style.css" type="text/css" />
|
||||||
|
<link rel="stylesheet" href="style.css" type="text/css" />
|
||||||
|
<style type="text/css">
|
||||||
|
.olControlSLDSelectBoxActive {
|
||||||
|
cursor: crosshair;
|
||||||
|
}
|
||||||
|
.olControlSLDSelectPolygonActive {
|
||||||
|
cursor: crosshair;
|
||||||
|
}
|
||||||
|
.olControlSLDSelectLineActive {
|
||||||
|
cursor: crosshair;
|
||||||
|
}
|
||||||
|
.olControlSLDSelectPointActive {
|
||||||
|
cursor: pointer;
|
||||||
|
}
|
||||||
|
</style>
|
||||||
|
<script src="../lib/OpenLayers.js"></script>
|
||||||
|
<script type="text/javascript">
|
||||||
|
var map, controls, layers;
|
||||||
|
|
||||||
|
function init(){
|
||||||
|
OpenLayers.ProxyHost= "proxy.cgi?url=";
|
||||||
|
map = new OpenLayers.Map('map', {allOverlays: true, controls: []});
|
||||||
|
var url = "http://demo.opengeo.org/geoserver/wms";
|
||||||
|
layers = {
|
||||||
|
states: new OpenLayers.Layer.WMS("State boundary", url,
|
||||||
|
{layers: 'topp:tasmania_state_boundaries', format: 'image/gif', transparent: 'TRUE'},
|
||||||
|
{singleTile: true}),
|
||||||
|
roads: new OpenLayers.Layer.WMS("Roads", url,
|
||||||
|
{layers: 'topp:tasmania_roads', format: 'image/gif', transparent: 'TRUE'},
|
||||||
|
{singleTile: true}),
|
||||||
|
waterbodies: new OpenLayers.Layer.WMS("Water bodies", url,
|
||||||
|
{layers: 'topp:tasmania_water_bodies', format: 'image/gif', transparent: 'TRUE'},
|
||||||
|
{singleTile: true}),
|
||||||
|
cities: new OpenLayers.Layer.WMS("Cities", url,
|
||||||
|
{layers: 'topp:tasmania_cities', format: 'image/gif', transparent: 'TRUE'},
|
||||||
|
{singleTile: true})
|
||||||
|
};
|
||||||
|
|
||||||
|
for (var key in layers) {
|
||||||
|
map.addLayer(layers[key]);
|
||||||
|
}
|
||||||
|
|
||||||
|
map.setCenter(new OpenLayers.LonLat(146.65748632815,-42.230763671875), 7);
|
||||||
|
|
||||||
|
map.addControl(new OpenLayers.Control.LayerSwitcher());
|
||||||
|
|
||||||
|
controls = {
|
||||||
|
navigation: new OpenLayers.Control.Navigation(),
|
||||||
|
box: new OpenLayers.Control.SLDSelect(
|
||||||
|
OpenLayers.Handler.RegularPolygon,
|
||||||
|
{
|
||||||
|
displayClass: 'olControlSLDSelectBox',
|
||||||
|
layers: [layers['waterbodies']],
|
||||||
|
handlerOptions: {irregular: true}
|
||||||
|
}
|
||||||
|
),
|
||||||
|
polygon: new OpenLayers.Control.SLDSelect(
|
||||||
|
OpenLayers.Handler.Polygon,
|
||||||
|
{
|
||||||
|
displayClass: 'olControlSLDSelectPolygon',
|
||||||
|
layers: [layers['waterbodies']]
|
||||||
|
}
|
||||||
|
),
|
||||||
|
line: new OpenLayers.Control.SLDSelect(
|
||||||
|
OpenLayers.Handler.Path,
|
||||||
|
{
|
||||||
|
displayClass: 'olControlSLDSelectLine',
|
||||||
|
layers: [layers['waterbodies']]
|
||||||
|
}
|
||||||
|
),
|
||||||
|
point: new OpenLayers.Control.SLDSelect(
|
||||||
|
OpenLayers.Handler.Click,
|
||||||
|
{
|
||||||
|
displayClass: 'olControlSLDSelectPoint',
|
||||||
|
layers: [layers['waterbodies']]
|
||||||
|
}
|
||||||
|
),
|
||||||
|
circle: new OpenLayers.Control.SLDSelect(
|
||||||
|
OpenLayers.Handler.RegularPolygon,
|
||||||
|
{
|
||||||
|
displayClass: 'olControlSLDSelectBox',
|
||||||
|
layers: [layers['waterbodies']],
|
||||||
|
handlerOptions: {sides: 30}
|
||||||
|
}
|
||||||
|
)
|
||||||
|
};
|
||||||
|
|
||||||
|
for(var key in controls) {
|
||||||
|
map.addControl(controls[key]);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
function toggleControl(element) {
|
||||||
|
for(var key in controls) {
|
||||||
|
var control = controls[key];
|
||||||
|
if(element.value == key && element.checked) {
|
||||||
|
control.activate();
|
||||||
|
} else {
|
||||||
|
control.deactivate();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
function toggleSelectionLayer(element) {
|
||||||
|
var selectLayers = [];
|
||||||
|
var elements = element.value.split("_");
|
||||||
|
for (var key in layers) {
|
||||||
|
var layer = layers[key];
|
||||||
|
for (var i=0, len=elements.length; i<len; i++) {
|
||||||
|
var value = elements[i];
|
||||||
|
if (value == key && element.checked) {
|
||||||
|
selectLayers.push(layer);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
for (var i=0, len=this.map.controls.length; i<len; i++) {
|
||||||
|
var control = this.map.controls[i];
|
||||||
|
if (control instanceof OpenLayers.Control.SLDSelect) {
|
||||||
|
control.setLayers(selectLayers);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
</script>
|
||||||
|
</head>
|
||||||
|
<body onload="init()">
|
||||||
|
<h1 id="title">SLD based selection on WMS layers</h1>
|
||||||
|
|
||||||
|
<div id="tags">
|
||||||
|
sld, sldselect, styling, style
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div id="shortdesc">Using Styled Layer Descriptors to make a selection on WMS layers</div>
|
||||||
|
|
||||||
|
<div id="map" style="width: 512; height: 256; border: 1px solid red;"></div>
|
||||||
|
|
||||||
|
<div id="docs">
|
||||||
|
This example uses the OpenLayers.Control.SLDSelect to select features in a WMS
|
||||||
|
layer. The features are highlighted using Styled Layer Descriptors (SLD). The
|
||||||
|
control supports point, box, line and polygon selection modes by configuring the
|
||||||
|
appriopriate handler.
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div id="controls">
|
||||||
|
<ul id="controlToggle"><b>Map Controls</b>
|
||||||
|
<li>
|
||||||
|
<input type="radio" name="control" value="navigation" id="noneToggle" onclick="toggleControl(this);" CHECKED>
|
||||||
|
<label for="noneToggle">navigate</label>
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<input type="radio" name="control" value="box" id="boxToggle" onclick="toggleControl(this);">
|
||||||
|
<label for="boxToggle">SLD select with box</label>
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<input type="radio" name="control" value="polygon" id="polygonToggle" onclick="toggleControl(this);">
|
||||||
|
<label for="polygonToggle">SLD select with polygon</label>
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<input type="radio" name="control" value="line" id="lineToggle" onclick="toggleControl(this);">
|
||||||
|
<label for="lineToggle">SLD select with line</label>
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<input type="radio" name="control" value="point" id="pointToggle" onclick="toggleControl(this);">
|
||||||
|
<label for="pointToggle">SLD select with point</label>
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<input type="radio" name="control" value="circle" id="circleToggle" onclick="toggleControl(this);">
|
||||||
|
<label for="circleToggle">SLD select with circle</label>
|
||||||
|
</li>
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
|
<div id="layers">
|
||||||
|
<ul id="layerToggle"><b>Selection layer</b>
|
||||||
|
<li>
|
||||||
|
<input type="radio" name="layer" value="waterbodies" id="waterbodiesToggle" onclick="toggleSelectionLayer(this);" CHECKED>
|
||||||
|
<label for="noneToggle">Water bodies</label>
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<input type="radio" name="layer" value="cities" id="citiesToggle" onclick="toggleSelectionLayer(this);">
|
||||||
|
<label for="citiesToggle">Cities</label>
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<input type="radio" name="layer" value="roads" id="roadsToggle" onclick="toggleSelectionLayer(this);">
|
||||||
|
<label for="roadsToggle">Roads</label>
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<input type="radio" name="layer" value="roads_cities" id="roadsCitiesToggle" onclick="toggleSelectionLayer(this);">
|
||||||
|
<label for="roadsCitiesToggle">Roads and cities</label>
|
||||||
|
</li>
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
</body>
|
||||||
|
</html>
|
||||||
45
examples/WMSDescribeLayerParser.html
Normal file
45
examples/WMSDescribeLayerParser.html
Normal file
@@ -0,0 +1,45 @@
|
|||||||
|
<html xmlns="http://www.w3.org/1999/xhtml">
|
||||||
|
<head>
|
||||||
|
<meta name="viewport" content="width=device-width; initial-scale=1.0; maximum-scale=1.0; user-scalable=0;" />
|
||||||
|
<meta name="apple-mobile-web-app-capable" content="yes" />
|
||||||
|
<title>OpenLayers WMSDescribeLayer Parser Example</title>
|
||||||
|
<link rel="stylesheet" href="style.css" type="text/css" />
|
||||||
|
<script src="../lib/OpenLayers.js"></script>
|
||||||
|
<script type="text/javascript">
|
||||||
|
function parseData(req) {
|
||||||
|
format = new OpenLayers.Format.WMSDescribeLayer();
|
||||||
|
html = "<br />"
|
||||||
|
resp = format.read(req.responseText);
|
||||||
|
for(var i = 0; i < resp.length; i++) {
|
||||||
|
html += "Layer: typeName: "+ resp[i].typeName+",";
|
||||||
|
html += "<ul>";
|
||||||
|
html += "<li>owsURL: "+resp[i].owsURL+"</li>";
|
||||||
|
html += "<li>owsType: "+resp[i].owsType+"</li>";
|
||||||
|
html += "</ul>"
|
||||||
|
}
|
||||||
|
document.getElementById('output').innerHTML = html;
|
||||||
|
}
|
||||||
|
function load() {
|
||||||
|
OpenLayers.loadURL("xml/wmsdescribelayer.xml", "", null, parseData);
|
||||||
|
}
|
||||||
|
</script>
|
||||||
|
</head>
|
||||||
|
<body onload="load()">
|
||||||
|
<h1 id="title">WMSDescribeLayer Parser Example</h1>
|
||||||
|
|
||||||
|
<div id="tags">
|
||||||
|
wmsdescribelayer, parser, cleanup
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<p id="shortdesc">
|
||||||
|
Demonstrate the operation of the WMSDescribeLayer parser.
|
||||||
|
</p>
|
||||||
|
|
||||||
|
<div id="output"></div>
|
||||||
|
|
||||||
|
<div id="docs">
|
||||||
|
This script reads data from a file and parses out the coordinates, appending them to a HTML string with markup tags.
|
||||||
|
This markup is dumped to an element in the page.
|
||||||
|
</div>
|
||||||
|
</body>
|
||||||
|
</html>
|
||||||
99
examples/accelerometer.html
Normal file
99
examples/accelerometer.html
Normal file
@@ -0,0 +1,99 @@
|
|||||||
|
<!DOCTYPE html>
|
||||||
|
<html>
|
||||||
|
<head>
|
||||||
|
<meta name="viewport" content="width=device-width; initial-scale=1.0; maximum-scale=1.0; user-scalable=0;"/>
|
||||||
|
<meta name="apple-mobile-web-app-capable" content="yes"/>
|
||||||
|
<title>OpenLayers Accelerometer Usage</title>
|
||||||
|
<link rel="stylesheet" href="../theme/default/style.css" type="text/css"/>
|
||||||
|
<link rel="stylesheet" href="style.css" type="text/css"/>
|
||||||
|
<script type="text/javascript" src="browser.js"></script>
|
||||||
|
|
||||||
|
<style type="text/css">
|
||||||
|
.olControlAttribution {
|
||||||
|
bottom: 5px;
|
||||||
|
}
|
||||||
|
</style>
|
||||||
|
<script type="text/javascript">
|
||||||
|
function init() {
|
||||||
|
if (isEventSupported('deviceorientation', window) || isEventSupported('mozorientation', window) || isEventSupported('devicemotion', window)) {
|
||||||
|
if (window.DeviceOrientationEvent) {
|
||||||
|
window.addEventListener("deviceorientation", function (event) {
|
||||||
|
document.getElementById('resultDeviceOrientation').innerHTML = '';
|
||||||
|
if (typeof(event.alpha) != 'undefined') {
|
||||||
|
document.getElementById('resultDeviceOrientation').innerHTML = document.getElementById('resultDeviceOrientation').innerHTML + "Alpha: " + event.alpha + "<br>";
|
||||||
|
document.getElementById('resultDeviceOrientation').innerHTML = document.getElementById('resultDeviceOrientation').innerHTML + "Beta: " + event.beta + "<br>";
|
||||||
|
document.getElementById('resultDeviceOrientation').innerHTML = document.getElementById('resultDeviceOrientation').innerHTML + "Gamma: " + event.gamma + "<br>";
|
||||||
|
}
|
||||||
|
if (typeof(event.absolute) != 'undefined') {
|
||||||
|
document.getElementById('resultDeviceOrientation').innerHTML = document.getElementById('resultDeviceOrientation').innerHTML + "Gamma: " + event.absolute + "<br>";
|
||||||
|
}
|
||||||
|
if (typeof(event.compassCalibrate) != 'undefined') {
|
||||||
|
document.getElementById('resultDeviceOrientation').innerHTML = document.getElementById('resultDeviceOrientation').innerHTML + "Gamma: " + event.compassCalibrated + "<br>";
|
||||||
|
}
|
||||||
|
}, true);
|
||||||
|
}
|
||||||
|
if (window.DeviceMotionEvent) {
|
||||||
|
window.addEventListener('devicemotion', function (event) {
|
||||||
|
document.getElementById('resultDeviceMotion').innerHTML = '';
|
||||||
|
if (typeof(event.accelerationIncludingGravity) != 'undefined') {
|
||||||
|
document.getElementById('resultDeviceMotion').innerHTML = document.getElementById('resultDeviceMotion').innerHTML + "accelerationIncludingGravity.x: " + event.accelerationIncludingGravity.x + "<br>";
|
||||||
|
document.getElementById('resultDeviceMotion').innerHTML = document.getElementById('resultDeviceMotion').innerHTML + "accelerationIncludingGravity.y: " + event.accelerationIncludingGravity.y + "<br>";
|
||||||
|
document.getElementById('resultDeviceMotion').innerHTML = document.getElementById('resultDeviceMotion').innerHTML + "accelerationIncludingGravity.z: " + event.accelerationIncludingGravity.z + "<br>";
|
||||||
|
}
|
||||||
|
if (typeof(event.acceleration) != 'undefined') {
|
||||||
|
document.getElementById('resultDeviceMotion').innerHTML = document.getElementById('resultDeviceMotion').innerHTML + "acceleration.x: " + event.acceleration.x + "<br>";
|
||||||
|
document.getElementById('resultDeviceMotion').innerHTML = document.getElementById('resultDeviceMotion').innerHTML + "acceleration.y: " + event.acceleration.y + "<br>";
|
||||||
|
document.getElementById('resultDeviceMotion').innerHTML = document.getElementById('resultDeviceMotion').innerHTML + "acceleration.z: " + event.acceleration.z + "<br>";
|
||||||
|
}
|
||||||
|
if (typeof(event.rotationRate) != 'undefined') {
|
||||||
|
document.getElementById('resultDeviceMotion').innerHTML = document.getElementById('resultDeviceMotion').innerHTML + "rotationRate.alpha: " + event.rotationRate.alpha + "<br>";
|
||||||
|
document.getElementById('resultDeviceMotion').innerHTML = document.getElementById('resultDeviceMotion').innerHTML + "rotationRate.beta: " + event.rotationRate.beta + "<br>";
|
||||||
|
document.getElementById('resultDeviceMotion').innerHTML = document.getElementById('resultDeviceMotion').innerHTML + "rotationRate.gamma: " + event.rotationRate.gamma + "<br>";
|
||||||
|
}
|
||||||
|
}, true);
|
||||||
|
}
|
||||||
|
if (window.MozOrientation) {
|
||||||
|
window.addEventListener("MozOrientation", function (orientation) {
|
||||||
|
document.getElementById('resultMozOrientation').innerHTML = "orientation.x: " + orientation.x + "<br>";
|
||||||
|
document.getElementById('resultMozOrientation').innerHTML = document.getElementById('resultMozOrientation').innerHTML + "orientation.y: " + orientation.y + "<br>";
|
||||||
|
document.getElementById('resultMozOrientation').innerHTML = document.getElementById('resultMozOrientation').innerHTML + "orientation.z: " + orientation.z + "<br>";
|
||||||
|
}, true);
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
alert("Unfortunately, your brower doesn't support the orientation usage");
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
</script>
|
||||||
|
</head>
|
||||||
|
<body onload="init()">
|
||||||
|
<h1 id="title">Accelerometer</h1>
|
||||||
|
|
||||||
|
<p id="shortdesc">
|
||||||
|
The goal of this script is to demonstrate the usage of accelerometer.
|
||||||
|
</p>
|
||||||
|
<p>
|
||||||
|
The orientation specification can be found <a href="http://dev.w3.org/geo/api/spec-source-orientation.html">here</a>.
|
||||||
|
</p>
|
||||||
|
|
||||||
|
<div id="tags">
|
||||||
|
browser, vendor, mobile, orientation
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<h1>Device motion</h1>
|
||||||
|
|
||||||
|
<div id="resultDeviceMotion">
|
||||||
|
|
||||||
|
</div>
|
||||||
|
<h1>Device orientation</h1>
|
||||||
|
|
||||||
|
<div id="resultDeviceOrientation">
|
||||||
|
|
||||||
|
</div>
|
||||||
|
<h1>MOZ orientation</h1>
|
||||||
|
|
||||||
|
<div id="resultMozOrientation">
|
||||||
|
|
||||||
|
</div>
|
||||||
|
</body>
|
||||||
|
</html>
|
||||||
@@ -1,5 +1,7 @@
|
|||||||
<html xmlns="http://www.w3.org/1999/xhtml">
|
<html xmlns="http://www.w3.org/1999/xhtml">
|
||||||
<head>
|
<head>
|
||||||
|
<meta name="viewport" content="width=device-width; initial-scale=1.0; maximum-scale=1.0; user-scalable=0;" />
|
||||||
|
<meta name="apple-mobile-web-app-capable" content="yes" />
|
||||||
<title>OpenLayers Accessible Example</title>
|
<title>OpenLayers Accessible Example</title>
|
||||||
<link rel="stylesheet" href="../theme/default/style.css" type="text/css" />
|
<link rel="stylesheet" href="../theme/default/style.css" type="text/css" />
|
||||||
<link rel="stylesheet" href="style.css" type="text/css" />
|
<link rel="stylesheet" href="style.css" type="text/css" />
|
||||||
@@ -38,7 +40,7 @@
|
|||||||
map = new OpenLayers.Map('map', options);
|
map = new OpenLayers.Map('map', options);
|
||||||
var wms = new OpenLayers.Layer.WMS(
|
var wms = new OpenLayers.Layer.WMS(
|
||||||
"OpenLayers WMS",
|
"OpenLayers WMS",
|
||||||
"http://labs.metacarta.com/wms/vmap0?",
|
"http://vmap0.tiles.osgeo.org/wms/vmap0?",
|
||||||
{layers: 'basic'}
|
{layers: 'basic'}
|
||||||
);
|
);
|
||||||
map.addLayer(wms);
|
map.addLayer(wms);
|
||||||
@@ -50,7 +52,8 @@
|
|||||||
<h1 id="title">Accessible Example</h1>
|
<h1 id="title">Accessible Example</h1>
|
||||||
|
|
||||||
<div id="tags">
|
<div id="tags">
|
||||||
</div>
|
keyboard, pan, panning, zoom, zooming, accesskey
|
||||||
|
</div>
|
||||||
|
|
||||||
<p id="shortdesc">
|
<p id="shortdesc">
|
||||||
Demonstrate how to use the KeyboardDefaults option parameter for layer types.
|
Demonstrate how to use the KeyboardDefaults option parameter for layer types.
|
||||||
|
|||||||
34
examples/all-overlays-google.html
Normal file
34
examples/all-overlays-google.html
Normal file
@@ -0,0 +1,34 @@
|
|||||||
|
<!DOCTYPE html>
|
||||||
|
<html>
|
||||||
|
<head>
|
||||||
|
<meta name="viewport" content="width=device-width; initial-scale=1.0; maximum-scale=1.0; user-scalable=0;" />
|
||||||
|
<meta name="apple-mobile-web-app-capable" content="yes" />
|
||||||
|
<title>OpenLayers All Overlays with Google and OSM</title>
|
||||||
|
<link rel="stylesheet" href="../theme/default/style.css" type="text/css">
|
||||||
|
<link rel="stylesheet" href="../theme/default/google.css" type="text/css">
|
||||||
|
<link rel="stylesheet" href="style.css" type="text/css">
|
||||||
|
<script src="http://maps.google.com/maps/api/js?sensor=false"></script>
|
||||||
|
<script src="../lib/OpenLayers.js"></script>
|
||||||
|
<script src="all-overlays-google.js"></script>
|
||||||
|
</head>
|
||||||
|
<body onload="init()">
|
||||||
|
<h1 id="title">All Overlays with Google and OSM</h1>
|
||||||
|
<div id="tags">
|
||||||
|
overlay, baselayer, google, osm, openstreetmap
|
||||||
|
</div>
|
||||||
|
<p id="shortdesc">
|
||||||
|
Using the Google and OSM layers as overlays.
|
||||||
|
</p>
|
||||||
|
<div id="map" class="smallmap"></div>
|
||||||
|
<div id="docs">
|
||||||
|
<p>
|
||||||
|
Using the allOverlays property on the map, the first layer added
|
||||||
|
must initially be visible. This example demonstrates the use of
|
||||||
|
a Google layer and an OSM layer treated as overlays.
|
||||||
|
</p><p>
|
||||||
|
See the <a href="all-overlays-google.js" target="_blank">
|
||||||
|
all-overlays-google.js source</a> to see how this is done.
|
||||||
|
</p>
|
||||||
|
</div>
|
||||||
|
</body>
|
||||||
|
</html>
|
||||||
19
examples/all-overlays-google.js
Normal file
19
examples/all-overlays-google.js
Normal file
@@ -0,0 +1,19 @@
|
|||||||
|
var map;
|
||||||
|
|
||||||
|
function init() {
|
||||||
|
|
||||||
|
map = new OpenLayers.Map({
|
||||||
|
div: "map",
|
||||||
|
allOverlays: true
|
||||||
|
});
|
||||||
|
|
||||||
|
var osm = new OpenLayers.Layer.OSM();
|
||||||
|
var gmap = new OpenLayers.Layer.Google("Google Streets", {visibility: false});
|
||||||
|
|
||||||
|
// note that first layer must be visible
|
||||||
|
map.addLayers([osm, gmap]);
|
||||||
|
|
||||||
|
map.addControl(new OpenLayers.Control.LayerSwitcher());
|
||||||
|
map.zoomToMaxExtent();
|
||||||
|
|
||||||
|
}
|
||||||
74
examples/all-overlays.html
Normal file
74
examples/all-overlays.html
Normal file
@@ -0,0 +1,74 @@
|
|||||||
|
<html xmlns="http://www.w3.org/1999/xhtml">
|
||||||
|
<head>
|
||||||
|
<meta name="viewport" content="width=device-width; initial-scale=1.0; maximum-scale=1.0; user-scalable=0;" />
|
||||||
|
<meta name="apple-mobile-web-app-capable" content="yes" />
|
||||||
|
<title>All Overlays Example</title>
|
||||||
|
|
||||||
|
<link rel="stylesheet" href="../theme/default/style.css" type="text/css" />
|
||||||
|
<link rel="stylesheet" href="style.css" type="text/css" />
|
||||||
|
<script src="../lib/OpenLayers.js"></script>
|
||||||
|
<script type="text/javascript">
|
||||||
|
var map;
|
||||||
|
function init() {
|
||||||
|
map = new OpenLayers.Map({
|
||||||
|
div: "map",
|
||||||
|
allOverlays: true,
|
||||||
|
maxExtent: new OpenLayers.Bounds(
|
||||||
|
1549471.9221, 6403610.94, 1550001.32545, 6404015.8
|
||||||
|
)
|
||||||
|
});
|
||||||
|
|
||||||
|
// give the features some style
|
||||||
|
var styles = new OpenLayers.StyleMap({
|
||||||
|
"default": {
|
||||||
|
strokeWidth: 2
|
||||||
|
},
|
||||||
|
"select": {
|
||||||
|
strokeColor: "#0099cc",
|
||||||
|
strokeWidth: 4
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
// add rules from the above lookup table
|
||||||
|
styles.addUniqueValueRules("default", "RP_TYPE", {
|
||||||
|
10: {strokeColor: "#000000", strokeWidth: 2},
|
||||||
|
12: {strokeColor: "#222222", strokeWidth: 2},
|
||||||
|
14: {strokeColor: "#444444", strokeWidth: 2},
|
||||||
|
16: {strokeColor: "#666666", strokeWidth: 2},
|
||||||
|
18: {strokeColor: "#888888", strokeWidth: 2},
|
||||||
|
19: {strokeColor: "#666666", strokeWidth: 1}
|
||||||
|
});
|
||||||
|
|
||||||
|
var vectors = new OpenLayers.Layer.Vector("Lines", {
|
||||||
|
strategies: [new OpenLayers.Strategy.Fixed()],
|
||||||
|
protocol: new OpenLayers.Protocol.HTTP({
|
||||||
|
url: "data/roads.json",
|
||||||
|
format: new OpenLayers.Format.GeoJSON()
|
||||||
|
}),
|
||||||
|
styleMap: styles
|
||||||
|
});
|
||||||
|
|
||||||
|
map.addLayer(vectors);
|
||||||
|
map.addControl(new OpenLayers.Control.LayerSwitcher());
|
||||||
|
map.zoomToMaxExtent();
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
</script>
|
||||||
|
</head>
|
||||||
|
<body onload="init()">
|
||||||
|
<h1 id="title">OpenLayers Overlays Only Example</h1>
|
||||||
|
<div id="tags">
|
||||||
|
overlay, baselayer
|
||||||
|
</div>
|
||||||
|
<p id="shortdesc">
|
||||||
|
Demonstrates a map with overlays only.
|
||||||
|
</p>
|
||||||
|
<div id="map" class="smallmap"></div>
|
||||||
|
<div id="docs">
|
||||||
|
To create a map that allows any draw order with all layer types
|
||||||
|
and lets you set the visibility of any layer independently, set
|
||||||
|
the allOverlays property on the map to true.
|
||||||
|
</div>
|
||||||
|
</body>
|
||||||
|
</html>
|
||||||
27
examples/anchor-permalink.html
Normal file
27
examples/anchor-permalink.html
Normal file
@@ -0,0 +1,27 @@
|
|||||||
|
<html>
|
||||||
|
<head>
|
||||||
|
<meta name="viewport" content="width=device-width; initial-scale=1.0; maximum-scale=1.0; user-scalable=0;" />
|
||||||
|
<meta name="apple-mobile-web-app-capable" content="yes" />
|
||||||
|
<link rel="stylesheet" href="../theme/default/style.css" type="text/css" />
|
||||||
|
<link rel="stylesheet" href="style.css" type="text/css" />
|
||||||
|
<title>AnchorPermalink Example</title>
|
||||||
|
<script src="../lib/OpenLayers.js"></script>
|
||||||
|
<script src="anchor-permalink.js"></script>
|
||||||
|
</head>
|
||||||
|
<body onload="init()">
|
||||||
|
<h1 id="title">AnchorPermalink Example</h1>
|
||||||
|
<div id="tags">
|
||||||
|
anchor, permalink
|
||||||
|
</div>
|
||||||
|
<p id="shortdesc">
|
||||||
|
Place a permalink in the anchor of the url.
|
||||||
|
</p>
|
||||||
|
<div id="map" class="smallmap"></div>
|
||||||
|
<div id="docs">
|
||||||
|
<p>
|
||||||
|
See the <a href="anchor-permalink.js" target="_blank">anchor-permalink.js
|
||||||
|
source</a> to see how this is done.
|
||||||
|
</p>
|
||||||
|
</div>
|
||||||
|
</body>
|
||||||
|
</html>
|
||||||
13
examples/anchor-permalink.js
Normal file
13
examples/anchor-permalink.js
Normal file
@@ -0,0 +1,13 @@
|
|||||||
|
function init() {
|
||||||
|
var map = new OpenLayers.Map({
|
||||||
|
div: "map",
|
||||||
|
projection: new OpenLayers.Projection("EPSG:900913"),
|
||||||
|
displayProjection: new OpenLayers.Projection("EPSG:4326"),
|
||||||
|
layers: [
|
||||||
|
new OpenLayers.Layer.OSM()
|
||||||
|
]
|
||||||
|
});
|
||||||
|
if (!map.getCenter()) map.zoomToMaxExtent();
|
||||||
|
|
||||||
|
map.addControl(new OpenLayers.Control.Permalink({anchor: true}));
|
||||||
|
}
|
||||||
@@ -1,5 +1,7 @@
|
|||||||
<html xmlns="http://www.w3.org/1999/xhtml">
|
<html xmlns="http://www.w3.org/1999/xhtml">
|
||||||
<head>
|
<head>
|
||||||
|
<meta name="viewport" content="width=device-width; initial-scale=1.0; maximum-scale=1.0; user-scalable=0;" />
|
||||||
|
<meta name="apple-mobile-web-app-capable" content="yes" />
|
||||||
<title>Animated Panning of the Map via map.panTo</title>
|
<title>Animated Panning of the Map via map.panTo</title>
|
||||||
<link rel="stylesheet" href="../theme/default/style.css" type="text/css" />
|
<link rel="stylesheet" href="../theme/default/style.css" type="text/css" />
|
||||||
<link rel="stylesheet" href="style.css" type="text/css" />
|
<link rel="stylesheet" href="style.css" type="text/css" />
|
||||||
@@ -34,9 +36,9 @@
|
|||||||
});
|
});
|
||||||
|
|
||||||
function init(){
|
function init(){
|
||||||
map = new OpenLayers.Map('map');
|
map = new OpenLayers.Map('map', {numZoomLevels: 2});
|
||||||
layer = new OpenLayers.Layer.WMS( "OpenLayers WMS",
|
layer = new OpenLayers.Layer.WMS( "OpenLayers WMS",
|
||||||
"http://labs.metacarta.com/wms/vmap0", {layers: 'basic'} );
|
"http://vmap0.tiles.osgeo.org/wms/vmap0", {layers: 'basic'} );
|
||||||
|
|
||||||
map.addLayer(layer);
|
map.addLayer(layer);
|
||||||
map.zoomToMaxExtent();
|
map.zoomToMaxExtent();
|
||||||
@@ -45,9 +47,9 @@
|
|||||||
click.activate();
|
click.activate();
|
||||||
map.addControl(new OpenLayers.Control.OverviewMap());
|
map.addControl(new OpenLayers.Control.OverviewMap());
|
||||||
|
|
||||||
map2 = new OpenLayers.Map('map2', {'panMethod': null} );
|
map2 = new OpenLayers.Map('map2', {'panMethod': null, numZoomLevels: 2} );
|
||||||
layer = new OpenLayers.Layer.WMS( "OpenLayers WMS",
|
layer = new OpenLayers.Layer.WMS( "OpenLayers WMS",
|
||||||
"http://labs.metacarta.com/wms/vmap0", {layers: 'basic'} );
|
"http://vmap0.tiles.osgeo.org/wms/vmap0", {layers: 'basic'} );
|
||||||
|
|
||||||
map2.addLayer(layer);
|
map2.addLayer(layer);
|
||||||
map2.zoomToMaxExtent();
|
map2.zoomToMaxExtent();
|
||||||
@@ -73,7 +75,9 @@
|
|||||||
</head>
|
</head>
|
||||||
<body onload="init()">
|
<body onload="init()">
|
||||||
<h1 id="title">map.panTo Example</h1>
|
<h1 id="title">map.panTo Example</h1>
|
||||||
<div id="tags">map.panTo</div>
|
<div id="tags">
|
||||||
|
panning, animation, effect, smooth, panMethod
|
||||||
|
</div>
|
||||||
<div id="shortdesc">Show animated panning effects in the map</div>
|
<div id="shortdesc">Show animated panning effects in the map</div>
|
||||||
<div id="map" class="smallmap"></div>
|
<div id="map" class="smallmap"></div>
|
||||||
<div id="docs">
|
<div id="docs">
|
||||||
|
|||||||
670
examples/animator.js
Normal file
670
examples/animator.js
Normal file
@@ -0,0 +1,670 @@
|
|||||||
|
/*
|
||||||
|
Animator.js 1.1.9
|
||||||
|
|
||||||
|
This library is released under the BSD license:
|
||||||
|
|
||||||
|
Copyright (c) 2006, Bernard Sumption. All rights reserved.
|
||||||
|
|
||||||
|
Redistribution and use in source and binary forms, with or without
|
||||||
|
modification, are permitted provided that the following conditions are met:
|
||||||
|
|
||||||
|
Redistributions of source code must retain the above copyright notice, this
|
||||||
|
list of conditions and the following disclaimer. Redistributions in binary
|
||||||
|
form must reproduce the above copyright notice, this list of conditions and
|
||||||
|
the following disclaimer in the documentation and/or other materials
|
||||||
|
provided with the distribution. Neither the name BernieCode nor
|
||||||
|
the names of its contributors may be used to endorse or promote products
|
||||||
|
derived from this software without specific prior written permission.
|
||||||
|
|
||||||
|
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
|
||||||
|
AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
|
||||||
|
IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
|
||||||
|
ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE FOR
|
||||||
|
ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
|
||||||
|
DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
|
||||||
|
SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
|
||||||
|
CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
|
||||||
|
LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
|
||||||
|
OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
|
||||||
|
DAMAGE.
|
||||||
|
|
||||||
|
*/
|
||||||
|
|
||||||
|
|
||||||
|
// Applies a sequence of numbers between 0 and 1 to a number of subjects
|
||||||
|
// construct - see setOptions for parameters
|
||||||
|
function Animator(options) {
|
||||||
|
this.setOptions(options);
|
||||||
|
var _this = this;
|
||||||
|
this.timerDelegate = function(){_this.onTimerEvent()};
|
||||||
|
this.subjects = [];
|
||||||
|
this.target = 0;
|
||||||
|
this.state = 0;
|
||||||
|
this.lastTime = null;
|
||||||
|
};
|
||||||
|
Animator.prototype = {
|
||||||
|
// apply defaults
|
||||||
|
setOptions: function(options) {
|
||||||
|
this.options = Animator.applyDefaults({
|
||||||
|
interval: 20, // time between animation frames
|
||||||
|
duration: 400, // length of animation
|
||||||
|
onComplete: function(){},
|
||||||
|
onStep: function(){},
|
||||||
|
transition: Animator.tx.easeInOut
|
||||||
|
}, options);
|
||||||
|
},
|
||||||
|
// animate from the current state to provided value
|
||||||
|
seekTo: function(to) {
|
||||||
|
this.seekFromTo(this.state, to);
|
||||||
|
},
|
||||||
|
// animate from the current state to provided value
|
||||||
|
seekFromTo: function(from, to) {
|
||||||
|
this.target = Math.max(0, Math.min(1, to));
|
||||||
|
this.state = Math.max(0, Math.min(1, from));
|
||||||
|
this.lastTime = new Date().getTime();
|
||||||
|
if (!this.intervalId) {
|
||||||
|
this.intervalId = window.setInterval(this.timerDelegate, this.options.interval);
|
||||||
|
}
|
||||||
|
},
|
||||||
|
// animate from the current state to provided value
|
||||||
|
jumpTo: function(to) {
|
||||||
|
this.target = this.state = Math.max(0, Math.min(1, to));
|
||||||
|
this.propagate();
|
||||||
|
},
|
||||||
|
// seek to the opposite of the current target
|
||||||
|
toggle: function() {
|
||||||
|
this.seekTo(1 - this.target);
|
||||||
|
},
|
||||||
|
// add a function or an object with a method setState(state) that will be called with a number
|
||||||
|
// between 0 and 1 on each frame of the animation
|
||||||
|
addSubject: function(subject) {
|
||||||
|
this.subjects[this.subjects.length] = subject;
|
||||||
|
return this;
|
||||||
|
},
|
||||||
|
// remove all subjects
|
||||||
|
clearSubjects: function() {
|
||||||
|
this.subjects = [];
|
||||||
|
},
|
||||||
|
// forward the current state to the animation subjects
|
||||||
|
propagate: function() {
|
||||||
|
var value = this.options.transition(this.state);
|
||||||
|
for (var i=0; i<this.subjects.length; i++) {
|
||||||
|
if (this.subjects[i].setState) {
|
||||||
|
this.subjects[i].setState(value);
|
||||||
|
} else {
|
||||||
|
this.subjects[i](value);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
// called once per frame to update the current state
|
||||||
|
onTimerEvent: function() {
|
||||||
|
var now = new Date().getTime();
|
||||||
|
var timePassed = now - this.lastTime;
|
||||||
|
this.lastTime = now;
|
||||||
|
var movement = (timePassed / this.options.duration) * (this.state < this.target ? 1 : -1);
|
||||||
|
if (Math.abs(movement) >= Math.abs(this.state - this.target)) {
|
||||||
|
this.state = this.target;
|
||||||
|
} else {
|
||||||
|
this.state += movement;
|
||||||
|
}
|
||||||
|
|
||||||
|
try {
|
||||||
|
this.propagate();
|
||||||
|
} finally {
|
||||||
|
this.options.onStep.call(this);
|
||||||
|
if (this.target == this.state) {
|
||||||
|
window.clearInterval(this.intervalId);
|
||||||
|
this.intervalId = null;
|
||||||
|
this.options.onComplete.call(this);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
// shortcuts
|
||||||
|
play: function() {this.seekFromTo(0, 1)},
|
||||||
|
reverse: function() {this.seekFromTo(1, 0)},
|
||||||
|
// return a string describing this Animator, for debugging
|
||||||
|
inspect: function() {
|
||||||
|
var str = "#<Animator:\n";
|
||||||
|
for (var i=0; i<this.subjects.length; i++) {
|
||||||
|
str += this.subjects[i].inspect();
|
||||||
|
}
|
||||||
|
str += ">";
|
||||||
|
return str;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
// merge the properties of two objects
|
||||||
|
Animator.applyDefaults = function(defaults, prefs) {
|
||||||
|
prefs = prefs || {};
|
||||||
|
var prop, result = {};
|
||||||
|
for (prop in defaults) result[prop] = prefs[prop] !== undefined ? prefs[prop] : defaults[prop];
|
||||||
|
return result;
|
||||||
|
}
|
||||||
|
// make an array from any object
|
||||||
|
Animator.makeArray = function(o) {
|
||||||
|
if (o == null) return [];
|
||||||
|
if (!o.length) return [o];
|
||||||
|
var result = [];
|
||||||
|
for (var i=0; i<o.length; i++) result[i] = o[i];
|
||||||
|
return result;
|
||||||
|
}
|
||||||
|
// convert a dash-delimited-property to a camelCaseProperty (c/o Prototype, thanks Sam!)
|
||||||
|
Animator.camelize = function(string) {
|
||||||
|
var oStringList = string.split('-');
|
||||||
|
if (oStringList.length == 1) return oStringList[0];
|
||||||
|
|
||||||
|
var camelizedString = string.indexOf('-') == 0
|
||||||
|
? oStringList[0].charAt(0).toUpperCase() + oStringList[0].substring(1)
|
||||||
|
: oStringList[0];
|
||||||
|
|
||||||
|
for (var i = 1, len = oStringList.length; i < len; i++) {
|
||||||
|
var s = oStringList[i];
|
||||||
|
camelizedString += s.charAt(0).toUpperCase() + s.substring(1);
|
||||||
|
}
|
||||||
|
return camelizedString;
|
||||||
|
}
|
||||||
|
// syntactic sugar for creating CSSStyleSubjects
|
||||||
|
Animator.apply = function(el, style, options) {
|
||||||
|
if (style instanceof Array) {
|
||||||
|
return new Animator(options).addSubject(new CSSStyleSubject(el, style[0], style[1]));
|
||||||
|
}
|
||||||
|
return new Animator(options).addSubject(new CSSStyleSubject(el, style));
|
||||||
|
}
|
||||||
|
// make a transition function that gradually accelerates. pass a=1 for smooth
|
||||||
|
// gravitational acceleration, higher values for an exaggerated effect
|
||||||
|
Animator.makeEaseIn = function(a) {
|
||||||
|
return function(state) {
|
||||||
|
return Math.pow(state, a*2);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
// as makeEaseIn but for deceleration
|
||||||
|
Animator.makeEaseOut = function(a) {
|
||||||
|
return function(state) {
|
||||||
|
return 1 - Math.pow(1 - state, a*2);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
// make a transition function that, like an object with momentum being attracted to a point,
|
||||||
|
// goes past the target then returns
|
||||||
|
Animator.makeElastic = function(bounces) {
|
||||||
|
return function(state) {
|
||||||
|
state = Animator.tx.easeInOut(state);
|
||||||
|
return ((1-Math.cos(state * Math.PI * bounces)) * (1 - state)) + state;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
// make an Attack Decay Sustain Release envelope that starts and finishes on the same level
|
||||||
|
//
|
||||||
|
Animator.makeADSR = function(attackEnd, decayEnd, sustainEnd, sustainLevel) {
|
||||||
|
if (sustainLevel == null) sustainLevel = 0.5;
|
||||||
|
return function(state) {
|
||||||
|
if (state < attackEnd) {
|
||||||
|
return state / attackEnd;
|
||||||
|
}
|
||||||
|
if (state < decayEnd) {
|
||||||
|
return 1 - ((state - attackEnd) / (decayEnd - attackEnd) * (1 - sustainLevel));
|
||||||
|
}
|
||||||
|
if (state < sustainEnd) {
|
||||||
|
return sustainLevel;
|
||||||
|
}
|
||||||
|
return sustainLevel * (1 - ((state - sustainEnd) / (1 - sustainEnd)));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
// make a transition function that, like a ball falling to floor, reaches the target and/
|
||||||
|
// bounces back again
|
||||||
|
Animator.makeBounce = function(bounces) {
|
||||||
|
var fn = Animator.makeElastic(bounces);
|
||||||
|
return function(state) {
|
||||||
|
state = fn(state);
|
||||||
|
return state <= 1 ? state : 2-state;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// pre-made transition functions to use with the 'transition' option
|
||||||
|
Animator.tx = {
|
||||||
|
easeInOut: function(pos){
|
||||||
|
return ((-Math.cos(pos*Math.PI)/2) + 0.5);
|
||||||
|
},
|
||||||
|
linear: function(x) {
|
||||||
|
return x;
|
||||||
|
},
|
||||||
|
easeIn: Animator.makeEaseIn(1.5),
|
||||||
|
easeOut: Animator.makeEaseOut(1.5),
|
||||||
|
strongEaseIn: Animator.makeEaseIn(2.5),
|
||||||
|
strongEaseOut: Animator.makeEaseOut(2.5),
|
||||||
|
elastic: Animator.makeElastic(1),
|
||||||
|
veryElastic: Animator.makeElastic(3),
|
||||||
|
bouncy: Animator.makeBounce(1),
|
||||||
|
veryBouncy: Animator.makeBounce(3)
|
||||||
|
}
|
||||||
|
|
||||||
|
// animates a pixel-based style property between two integer values
|
||||||
|
function NumericalStyleSubject(els, property, from, to, units) {
|
||||||
|
this.els = Animator.makeArray(els);
|
||||||
|
if (property == 'opacity' && window.ActiveXObject) {
|
||||||
|
this.property = 'filter';
|
||||||
|
} else {
|
||||||
|
this.property = Animator.camelize(property);
|
||||||
|
}
|
||||||
|
this.from = parseFloat(from);
|
||||||
|
this.to = parseFloat(to);
|
||||||
|
this.units = units != null ? units : 'px';
|
||||||
|
}
|
||||||
|
NumericalStyleSubject.prototype = {
|
||||||
|
setState: function(state) {
|
||||||
|
var style = this.getStyle(state);
|
||||||
|
var visibility = (this.property == 'opacity' && state == 0) ? 'hidden' : '';
|
||||||
|
var j=0;
|
||||||
|
for (var i=0; i<this.els.length; i++) {
|
||||||
|
try {
|
||||||
|
this.els[i].style[this.property] = style;
|
||||||
|
} catch (e) {
|
||||||
|
// ignore fontWeight - intermediate numerical values cause exeptions in firefox
|
||||||
|
if (this.property != 'fontWeight') throw e;
|
||||||
|
}
|
||||||
|
if (j++ > 20) return;
|
||||||
|
}
|
||||||
|
},
|
||||||
|
getStyle: function(state) {
|
||||||
|
state = this.from + ((this.to - this.from) * state);
|
||||||
|
if (this.property == 'filter') return "alpha(opacity=" + Math.round(state*100) + ")";
|
||||||
|
if (this.property == 'opacity') return state;
|
||||||
|
return Math.round(state) + this.units;
|
||||||
|
},
|
||||||
|
inspect: function() {
|
||||||
|
return "\t" + this.property + "(" + this.from + this.units + " to " + this.to + this.units + ")\n";
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// animates a colour based style property between two hex values
|
||||||
|
function ColorStyleSubject(els, property, from, to) {
|
||||||
|
this.els = Animator.makeArray(els);
|
||||||
|
this.property = Animator.camelize(property);
|
||||||
|
this.to = this.expandColor(to);
|
||||||
|
this.from = this.expandColor(from);
|
||||||
|
this.origFrom = from;
|
||||||
|
this.origTo = to;
|
||||||
|
}
|
||||||
|
|
||||||
|
ColorStyleSubject.prototype = {
|
||||||
|
// parse "#FFFF00" to [256, 256, 0]
|
||||||
|
expandColor: function(color) {
|
||||||
|
var hexColor, red, green, blue;
|
||||||
|
hexColor = ColorStyleSubject.parseColor(color);
|
||||||
|
if (hexColor) {
|
||||||
|
red = parseInt(hexColor.slice(1, 3), 16);
|
||||||
|
green = parseInt(hexColor.slice(3, 5), 16);
|
||||||
|
blue = parseInt(hexColor.slice(5, 7), 16);
|
||||||
|
return [red,green,blue]
|
||||||
|
}
|
||||||
|
if (window.DEBUG) {
|
||||||
|
alert("Invalid colour: '" + color + "'");
|
||||||
|
}
|
||||||
|
},
|
||||||
|
getValueForState: function(color, state) {
|
||||||
|
return Math.round(this.from[color] + ((this.to[color] - this.from[color]) * state));
|
||||||
|
},
|
||||||
|
setState: function(state) {
|
||||||
|
var color = '#'
|
||||||
|
+ ColorStyleSubject.toColorPart(this.getValueForState(0, state))
|
||||||
|
+ ColorStyleSubject.toColorPart(this.getValueForState(1, state))
|
||||||
|
+ ColorStyleSubject.toColorPart(this.getValueForState(2, state));
|
||||||
|
for (var i=0; i<this.els.length; i++) {
|
||||||
|
this.els[i].style[this.property] = color;
|
||||||
|
}
|
||||||
|
},
|
||||||
|
inspect: function() {
|
||||||
|
return "\t" + this.property + "(" + this.origFrom + " to " + this.origTo + ")\n";
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// return a properly formatted 6-digit hex colour spec, or false
|
||||||
|
ColorStyleSubject.parseColor = function(string) {
|
||||||
|
var color = '#', match;
|
||||||
|
if(match = ColorStyleSubject.parseColor.rgbRe.exec(string)) {
|
||||||
|
var part;
|
||||||
|
for (var i=1; i<=3; i++) {
|
||||||
|
part = Math.max(0, Math.min(255, parseInt(match[i])));
|
||||||
|
color += ColorStyleSubject.toColorPart(part);
|
||||||
|
}
|
||||||
|
return color;
|
||||||
|
}
|
||||||
|
if (match = ColorStyleSubject.parseColor.hexRe.exec(string)) {
|
||||||
|
if(match[1].length == 3) {
|
||||||
|
for (var i=0; i<3; i++) {
|
||||||
|
color += match[1].charAt(i) + match[1].charAt(i);
|
||||||
|
}
|
||||||
|
return color;
|
||||||
|
}
|
||||||
|
return '#' + match[1];
|
||||||
|
}
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
// convert a number to a 2 digit hex string
|
||||||
|
ColorStyleSubject.toColorPart = function(number) {
|
||||||
|
if (number > 255) number = 255;
|
||||||
|
var digits = number.toString(16);
|
||||||
|
if (number < 16) return '0' + digits;
|
||||||
|
return digits;
|
||||||
|
}
|
||||||
|
ColorStyleSubject.parseColor.rgbRe = /^rgb\(\s*(\d+)\s*,\s*(\d+)\s*,\s*(\d+)\s*\)$/i;
|
||||||
|
ColorStyleSubject.parseColor.hexRe = /^\#([0-9a-fA-F]{3}|[0-9a-fA-F]{6})$/;
|
||||||
|
|
||||||
|
// Animates discrete styles, i.e. ones that do not scale but have discrete values
|
||||||
|
// that can't be interpolated
|
||||||
|
function DiscreteStyleSubject(els, property, from, to, threshold) {
|
||||||
|
this.els = Animator.makeArray(els);
|
||||||
|
this.property = Animator.camelize(property);
|
||||||
|
this.from = from;
|
||||||
|
this.to = to;
|
||||||
|
this.threshold = threshold || 0.5;
|
||||||
|
}
|
||||||
|
|
||||||
|
DiscreteStyleSubject.prototype = {
|
||||||
|
setState: function(state) {
|
||||||
|
var j=0;
|
||||||
|
for (var i=0; i<this.els.length; i++) {
|
||||||
|
this.els[i].style[this.property] = state <= this.threshold ? this.from : this.to;
|
||||||
|
}
|
||||||
|
},
|
||||||
|
inspect: function() {
|
||||||
|
return "\t" + this.property + "(" + this.from + " to " + this.to + " @ " + this.threshold + ")\n";
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// animates between two styles defined using CSS.
|
||||||
|
// if style1 and style2 are present, animate between them, if only style1
|
||||||
|
// is present, animate between the element's current style and style1
|
||||||
|
function CSSStyleSubject(els, style1, style2) {
|
||||||
|
els = Animator.makeArray(els);
|
||||||
|
this.subjects = [];
|
||||||
|
if (els.length == 0) return;
|
||||||
|
var prop, toStyle, fromStyle;
|
||||||
|
if (style2) {
|
||||||
|
fromStyle = this.parseStyle(style1, els[0]);
|
||||||
|
toStyle = this.parseStyle(style2, els[0]);
|
||||||
|
} else {
|
||||||
|
toStyle = this.parseStyle(style1, els[0]);
|
||||||
|
fromStyle = {};
|
||||||
|
for (prop in toStyle) {
|
||||||
|
fromStyle[prop] = CSSStyleSubject.getStyle(els[0], prop);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
// remove unchanging properties
|
||||||
|
var prop;
|
||||||
|
for (prop in fromStyle) {
|
||||||
|
if (fromStyle[prop] == toStyle[prop]) {
|
||||||
|
delete fromStyle[prop];
|
||||||
|
delete toStyle[prop];
|
||||||
|
}
|
||||||
|
}
|
||||||
|
// discover the type (numerical or colour) of each style
|
||||||
|
var prop, units, match, type, from, to;
|
||||||
|
for (prop in fromStyle) {
|
||||||
|
var fromProp = String(fromStyle[prop]);
|
||||||
|
var toProp = String(toStyle[prop]);
|
||||||
|
if (toStyle[prop] == null) {
|
||||||
|
if (window.DEBUG) alert("No to style provided for '" + prop + '"');
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (from = ColorStyleSubject.parseColor(fromProp)) {
|
||||||
|
to = ColorStyleSubject.parseColor(toProp);
|
||||||
|
type = ColorStyleSubject;
|
||||||
|
} else if (fromProp.match(CSSStyleSubject.numericalRe)
|
||||||
|
&& toProp.match(CSSStyleSubject.numericalRe)) {
|
||||||
|
from = parseFloat(fromProp);
|
||||||
|
to = parseFloat(toProp);
|
||||||
|
type = NumericalStyleSubject;
|
||||||
|
match = CSSStyleSubject.numericalRe.exec(fromProp);
|
||||||
|
var reResult = CSSStyleSubject.numericalRe.exec(toProp);
|
||||||
|
if (match[1] != null) {
|
||||||
|
units = match[1];
|
||||||
|
} else if (reResult[1] != null) {
|
||||||
|
units = reResult[1];
|
||||||
|
} else {
|
||||||
|
units = reResult;
|
||||||
|
}
|
||||||
|
} else if (fromProp.match(CSSStyleSubject.discreteRe)
|
||||||
|
&& toProp.match(CSSStyleSubject.discreteRe)) {
|
||||||
|
from = fromProp;
|
||||||
|
to = toProp;
|
||||||
|
type = DiscreteStyleSubject;
|
||||||
|
units = 0; // hack - how to get an animator option down to here
|
||||||
|
} else {
|
||||||
|
if (window.DEBUG) {
|
||||||
|
alert("Unrecognised format for value of "
|
||||||
|
+ prop + ": '" + fromStyle[prop] + "'");
|
||||||
|
}
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
this.subjects[this.subjects.length] = new type(els, prop, from, to, units);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
CSSStyleSubject.prototype = {
|
||||||
|
// parses "width: 400px; color: #FFBB2E" to {width: "400px", color: "#FFBB2E"}
|
||||||
|
parseStyle: function(style, el) {
|
||||||
|
var rtn = {};
|
||||||
|
// if style is a rule set
|
||||||
|
if (style.indexOf(":") != -1) {
|
||||||
|
var styles = style.split(";");
|
||||||
|
for (var i=0; i<styles.length; i++) {
|
||||||
|
var parts = CSSStyleSubject.ruleRe.exec(styles[i]);
|
||||||
|
if (parts) {
|
||||||
|
rtn[parts[1]] = parts[2];
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
// else assume style is a class name
|
||||||
|
else {
|
||||||
|
var prop, value, oldClass;
|
||||||
|
oldClass = el.className;
|
||||||
|
el.className = style;
|
||||||
|
for (var i=0; i<CSSStyleSubject.cssProperties.length; i++) {
|
||||||
|
prop = CSSStyleSubject.cssProperties[i];
|
||||||
|
value = CSSStyleSubject.getStyle(el, prop);
|
||||||
|
if (value != null) {
|
||||||
|
rtn[prop] = value;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
el.className = oldClass;
|
||||||
|
}
|
||||||
|
return rtn;
|
||||||
|
|
||||||
|
},
|
||||||
|
setState: function(state) {
|
||||||
|
for (var i=0; i<this.subjects.length; i++) {
|
||||||
|
this.subjects[i].setState(state);
|
||||||
|
}
|
||||||
|
},
|
||||||
|
inspect: function() {
|
||||||
|
var str = "";
|
||||||
|
for (var i=0; i<this.subjects.length; i++) {
|
||||||
|
str += this.subjects[i].inspect();
|
||||||
|
}
|
||||||
|
return str;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
// get the current value of a css property,
|
||||||
|
CSSStyleSubject.getStyle = function(el, property){
|
||||||
|
var style;
|
||||||
|
if(document.defaultView && document.defaultView.getComputedStyle){
|
||||||
|
style = document.defaultView.getComputedStyle(el, "").getPropertyValue(property);
|
||||||
|
if (style) {
|
||||||
|
return style;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
property = Animator.camelize(property);
|
||||||
|
if(el.currentStyle){
|
||||||
|
style = el.currentStyle[property];
|
||||||
|
}
|
||||||
|
return style || el.style[property]
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
CSSStyleSubject.ruleRe = /^\s*([a-zA-Z\-]+)\s*:\s*(\S(.+\S)?)\s*$/;
|
||||||
|
CSSStyleSubject.numericalRe = /^-?\d+(?:\.\d+)?(%|[a-zA-Z]{2})?$/;
|
||||||
|
CSSStyleSubject.discreteRe = /^\w+$/;
|
||||||
|
|
||||||
|
// required because the style object of elements isn't enumerable in Safari
|
||||||
|
/*
|
||||||
|
CSSStyleSubject.cssProperties = ['background-color','border','border-color','border-spacing',
|
||||||
|
'border-style','border-top','border-right','border-bottom','border-left','border-top-color',
|
||||||
|
'border-right-color','border-bottom-color','border-left-color','border-top-width','border-right-width',
|
||||||
|
'border-bottom-width','border-left-width','border-width','bottom','color','font-size','font-size-adjust',
|
||||||
|
'font-stretch','font-style','height','left','letter-spacing','line-height','margin','margin-top',
|
||||||
|
'margin-right','margin-bottom','margin-left','marker-offset','max-height','max-width','min-height',
|
||||||
|
'min-width','orphans','outline','outline-color','outline-style','outline-width','overflow','padding',
|
||||||
|
'padding-top','padding-right','padding-bottom','padding-left','quotes','right','size','text-indent',
|
||||||
|
'top','width','word-spacing','z-index','opacity','outline-offset'];*/
|
||||||
|
|
||||||
|
|
||||||
|
CSSStyleSubject.cssProperties = ['azimuth','background','background-attachment','background-color','background-image','background-position','background-repeat','border-collapse','border-color','border-spacing','border-style','border-top','border-top-color','border-right-color','border-bottom-color','border-left-color','border-top-style','border-right-style','border-bottom-style','border-left-style','border-top-width','border-right-width','border-bottom-width','border-left-width','border-width','bottom','clear','clip','color','content','cursor','direction','display','elevation','empty-cells','css-float','font','font-family','font-size','font-size-adjust','font-stretch','font-style','font-variant','font-weight','height','left','letter-spacing','line-height','list-style','list-style-image','list-style-position','list-style-type','margin','margin-top','margin-right','margin-bottom','margin-left','max-height','max-width','min-height','min-width','orphans','outline','outline-color','outline-style','outline-width','overflow','padding','padding-top','padding-right','padding-bottom','padding-left','pause','position','right','size','table-layout','text-align','text-decoration','text-indent','text-shadow','text-transform','top','vertical-align','visibility','white-space','width','word-spacing','z-index','opacity','outline-offset','overflow-x','overflow-y'];
|
||||||
|
|
||||||
|
|
||||||
|
// chains several Animator objects together
|
||||||
|
function AnimatorChain(animators, options) {
|
||||||
|
this.animators = animators;
|
||||||
|
this.setOptions(options);
|
||||||
|
for (var i=0; i<this.animators.length; i++) {
|
||||||
|
this.listenTo(this.animators[i]);
|
||||||
|
}
|
||||||
|
this.forwards = false;
|
||||||
|
this.current = 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
AnimatorChain.prototype = {
|
||||||
|
// apply defaults
|
||||||
|
setOptions: function(options) {
|
||||||
|
this.options = Animator.applyDefaults({
|
||||||
|
// by default, each call to AnimatorChain.play() calls jumpTo(0) of each animator
|
||||||
|
// before playing, which can cause flickering if you have multiple animators all
|
||||||
|
// targeting the same element. Set this to false to avoid this.
|
||||||
|
resetOnPlay: true
|
||||||
|
}, options);
|
||||||
|
},
|
||||||
|
// play each animator in turn
|
||||||
|
play: function() {
|
||||||
|
this.forwards = true;
|
||||||
|
this.current = -1;
|
||||||
|
if (this.options.resetOnPlay) {
|
||||||
|
for (var i=0; i<this.animators.length; i++) {
|
||||||
|
this.animators[i].jumpTo(0);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
this.advance();
|
||||||
|
},
|
||||||
|
// play all animators backwards
|
||||||
|
reverse: function() {
|
||||||
|
this.forwards = false;
|
||||||
|
this.current = this.animators.length;
|
||||||
|
if (this.options.resetOnPlay) {
|
||||||
|
for (var i=0; i<this.animators.length; i++) {
|
||||||
|
this.animators[i].jumpTo(1);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
this.advance();
|
||||||
|
},
|
||||||
|
// if we have just play()'d, then call reverse(), and vice versa
|
||||||
|
toggle: function() {
|
||||||
|
if (this.forwards) {
|
||||||
|
this.seekTo(0);
|
||||||
|
} else {
|
||||||
|
this.seekTo(1);
|
||||||
|
}
|
||||||
|
},
|
||||||
|
// internal: install an event listener on an animator's onComplete option
|
||||||
|
// to trigger the next animator
|
||||||
|
listenTo: function(animator) {
|
||||||
|
var oldOnComplete = animator.options.onComplete;
|
||||||
|
var _this = this;
|
||||||
|
animator.options.onComplete = function() {
|
||||||
|
if (oldOnComplete) oldOnComplete.call(animator);
|
||||||
|
_this.advance();
|
||||||
|
}
|
||||||
|
},
|
||||||
|
// play the next animator
|
||||||
|
advance: function() {
|
||||||
|
if (this.forwards) {
|
||||||
|
if (this.animators[this.current + 1] == null) return;
|
||||||
|
this.current++;
|
||||||
|
this.animators[this.current].play();
|
||||||
|
} else {
|
||||||
|
if (this.animators[this.current - 1] == null) return;
|
||||||
|
this.current--;
|
||||||
|
this.animators[this.current].reverse();
|
||||||
|
}
|
||||||
|
},
|
||||||
|
// this function is provided for drop-in compatibility with Animator objects,
|
||||||
|
// but only accepts 0 and 1 as target values
|
||||||
|
seekTo: function(target) {
|
||||||
|
if (target <= 0) {
|
||||||
|
this.forwards = false;
|
||||||
|
this.animators[this.current].seekTo(0);
|
||||||
|
} else {
|
||||||
|
this.forwards = true;
|
||||||
|
this.animators[this.current].seekTo(1);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// an Accordion is a class that creates and controls a number of Animators. An array of elements is passed in,
|
||||||
|
// and for each element an Animator and a activator button is created. When an Animator's activator button is
|
||||||
|
// clicked, the Animator and all before it seek to 0, and all Animators after it seek to 1. This can be used to
|
||||||
|
// create the classic Accordion effect, hence the name.
|
||||||
|
// see setOptions for arguments
|
||||||
|
function Accordion(options) {
|
||||||
|
this.setOptions(options);
|
||||||
|
var selected = this.options.initialSection, current;
|
||||||
|
if (this.options.rememberance) {
|
||||||
|
current = document.location.hash.substring(1);
|
||||||
|
}
|
||||||
|
this.rememberanceTexts = [];
|
||||||
|
this.ans = [];
|
||||||
|
var _this = this;
|
||||||
|
for (var i=0; i<this.options.sections.length; i++) {
|
||||||
|
var el = this.options.sections[i];
|
||||||
|
var an = new Animator(this.options.animatorOptions);
|
||||||
|
var from = this.options.from + (this.options.shift * i);
|
||||||
|
var to = this.options.to + (this.options.shift * i);
|
||||||
|
an.addSubject(new NumericalStyleSubject(el, this.options.property, from, to, this.options.units));
|
||||||
|
an.jumpTo(0);
|
||||||
|
var activator = this.options.getActivator(el);
|
||||||
|
activator.index = i;
|
||||||
|
activator.onclick = function(){_this.show(this.index)};
|
||||||
|
this.ans[this.ans.length] = an;
|
||||||
|
this.rememberanceTexts[i] = activator.innerHTML.replace(/\s/g, "");
|
||||||
|
if (this.rememberanceTexts[i] === current) {
|
||||||
|
selected = i;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
this.show(selected);
|
||||||
|
}
|
||||||
|
|
||||||
|
Accordion.prototype = {
|
||||||
|
// apply defaults
|
||||||
|
setOptions: function(options) {
|
||||||
|
this.options = Object.extend({
|
||||||
|
// REQUIRED: an array of elements to use as the accordion sections
|
||||||
|
sections: null,
|
||||||
|
// a function that locates an activator button element given a section element.
|
||||||
|
// by default it takes a button id from the section's "activator" attibute
|
||||||
|
getActivator: function(el) {return document.getElementById(el.getAttribute("activator"))},
|
||||||
|
// shifts each animator's range, for example with options {from:0,to:100,shift:20}
|
||||||
|
// the animators' ranges will be 0-100, 20-120, 40-140 etc.
|
||||||
|
shift: 0,
|
||||||
|
// the first page to show
|
||||||
|
initialSection: 0,
|
||||||
|
// if set to true, document.location.hash will be used to preserve the open section across page reloads
|
||||||
|
rememberance: true,
|
||||||
|
// constructor arguments to the Animator objects
|
||||||
|
animatorOptions: {}
|
||||||
|
}, options || {});
|
||||||
|
},
|
||||||
|
show: function(section) {
|
||||||
|
for (var i=0; i<this.ans.length; i++) {
|
||||||
|
this.ans[i].seekTo(i > section ? 1 : 0);
|
||||||
|
}
|
||||||
|
if (this.options.rememberance) {
|
||||||
|
document.location.hash = this.rememberanceTexts[section];
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
67
examples/arcgis93rest.html
Normal file
67
examples/arcgis93rest.html
Normal file
@@ -0,0 +1,67 @@
|
|||||||
|
<html xmlns="http://www.w3.org/1999/xhtml">
|
||||||
|
<head>
|
||||||
|
<meta name="viewport" content="width=device-width; initial-scale=1.0; maximum-scale=1.0; user-scalable=0;" />
|
||||||
|
<meta name="apple-mobile-web-app-capable" content="yes" />
|
||||||
|
<link rel="stylesheet" href="../theme/default/style.css" type="text/css" />
|
||||||
|
<link rel="stylesheet" href="style.css" type="text/css" />
|
||||||
|
<script src="../lib/OpenLayers.js"></script>
|
||||||
|
<script type="text/javascript">
|
||||||
|
var map;
|
||||||
|
var layer;
|
||||||
|
|
||||||
|
function init(){
|
||||||
|
var mapOptions = {
|
||||||
|
maxExtent: new OpenLayers.Bounds(-174,18.4,-63.5,71),
|
||||||
|
maxResolution: 0.25,
|
||||||
|
projection: "EPSG:4326"};
|
||||||
|
map = new OpenLayers.Map( 'map', mapOptions );
|
||||||
|
layer = new OpenLayers.Layer.ArcGIS93Rest( "ArcGIS Server Layer",
|
||||||
|
"http://sampleserver1.arcgisonline.com/ArcGIS/rest/services/Specialty/ESRI_StateCityHighway_USA/MapServer/export",
|
||||||
|
{layers: "show:0,2"});
|
||||||
|
map.addLayer(layer);
|
||||||
|
|
||||||
|
map.addControl( new OpenLayers.Control.MousePosition() );
|
||||||
|
|
||||||
|
map.setCenter(new OpenLayers.LonLat(-115, 45), 0);
|
||||||
|
}
|
||||||
|
|
||||||
|
function enableFilter() {
|
||||||
|
layer.setLayerFilter(2, "STATE_NAME LIKE '%" + document.getElementById('filterValueField').value + "%'");
|
||||||
|
layer.redraw();
|
||||||
|
}
|
||||||
|
function disableFilter() {
|
||||||
|
layer.setLayerFilter(2, null);
|
||||||
|
layer.redraw();
|
||||||
|
}
|
||||||
|
function updateButton() {
|
||||||
|
document.getElementById('filterButton').value = "Show '" +
|
||||||
|
document.getElementById('filterValueField').value + "' States";
|
||||||
|
}
|
||||||
|
</script>
|
||||||
|
</head>
|
||||||
|
<body onload="init()">
|
||||||
|
<h1 id="title">ArcGIS Server 9.3 Rest API Example</h1>
|
||||||
|
|
||||||
|
<div id="tags">
|
||||||
|
ESRI, ArcGIS, REST, filter
|
||||||
|
</div>
|
||||||
|
<p id="shortdesc">
|
||||||
|
Shows the basic use of openlayers using an ArcGIS Server 9.3 Rest API layer
|
||||||
|
</p>
|
||||||
|
|
||||||
|
<div id="map" class="smallmap"></div>
|
||||||
|
|
||||||
|
<div id="docs">
|
||||||
|
This is an example of how to add an ArcGIS Server 9.3 Rest API layer to the OpenLayers window.
|
||||||
|
</div>
|
||||||
|
<input id="filterValueField" type="textfield" value="A"/>
|
||||||
|
<input id="filterButton" type="button" onclick="enableFilter();" value="Filter States"/>
|
||||||
|
<input type="button" onclick="disableFilter();" value="Show All States"/>
|
||||||
|
<br>
|
||||||
|
(Filter is case sensitive.)
|
||||||
|
</body>
|
||||||
|
</html>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
219
examples/arcgiscache_ags.html
Normal file
219
examples/arcgiscache_ags.html
Normal file
@@ -0,0 +1,219 @@
|
|||||||
|
<html xmlns="http://www.w3.org/1999/xhtml">
|
||||||
|
<head>
|
||||||
|
<title>OpenLayers ArcGIS Cache Example (MapServer Access)</title>
|
||||||
|
<link rel="stylesheet" href="../theme/default/style.css" type="text/css" />
|
||||||
|
<link rel="stylesheet" href="style.css" type="text/css" />
|
||||||
|
<script src='http://maps.google.com/maps?file=api&v=2&key=ABQIAAAAjpkAC9ePGem0lIq5XcMiuhR_wWLPFku8Ix9i2SXYRVK3e45q1BQUd_beF8dtzKET_EteAjPdGDwqpQ'></script>
|
||||||
|
<script src="../lib/OpenLayers.js"></script>
|
||||||
|
<script src="../lib/OpenLayers/Layer/ArcGISCache.js" type="text/javascript"></script>
|
||||||
|
<script type="text/javascript">
|
||||||
|
var map,
|
||||||
|
cacheLayer,
|
||||||
|
testLayer,
|
||||||
|
//This layer requires meta data about the ArcGIS service. Typically you should use a
|
||||||
|
//JSONP call to get this dynamically. For this example, we are just going to hard-code
|
||||||
|
//an example that we got from here (yes, it's very big):
|
||||||
|
// http://services.arcgisonline.com/ArcGIS/rest/services/World_Street_Map/MapServer?f=json&pretty=true
|
||||||
|
layerInfo = {
|
||||||
|
"currentVersion" : 10.01,
|
||||||
|
"serviceDescription" : "This worldwide street map presents highway-level data for the world and street-level data for the United States, Canada, Japan, Southern Africa, and a number of countries in Europe and elsewhere. This comprehensive street map includes highways, major roads, minor roads, railways, water features, administrative boundaries, cities, parks, and landmarks, overlaid on shaded relief imagery for added context. The street map was developed by ESRI using ESRI basemap data, AND road data, USGS elevation data, and UNEP-WCMC parks and protected areas for the world, and Tele Atlas Dynamap<61> and Multinet<65> street data for North America and Europe. Coverage for street-level data in Europe includes Andorra, Austria, Belgium, Czech Republic, Denmark, France, Germany, Great Britain, Greece, Hungary, Ireland, Italy, Luxembourg, Netherlands, Northern Ireland (Belfast only), Norway, Poland, Portugal, San Marino, Slovakia, Spain, Sweden, and Switzerland. Coverage for street-level data elsewhere in the world includes China (Hong Kong only), Colombia, Egypt (Cairo only), Indonesia (Jakarta only), Japan, Mexico (Mexico City only), Russia (Moscow and St. Petersburg only), South Africa, Thailand, and Turkey (Istanbul and Ankara only). For more information on this map, visit us \u003ca href=\"http://goto.arcgisonline.com/maps/World_Street_Map \" target=\"_new\"\u003eonline\u003c/a\u003e.",
|
||||||
|
"mapName" : "Layers",
|
||||||
|
"description" : "This worldwide street map presents highway-level data for the world and street-level data for the United States, Canada, Japan, Southern Africa, most countries in Europe, and several other countries. This comprehensive street map includes highways, major roads, minor roads, one-way arrow indicators, railways, water features, administrative boundaries, cities, parks, and landmarks, overlaid on shaded relief imagery for added context. The map also includes building footprints for selected areas in the United States and Europe and parcel boundaries for much of the lower 48 states.\n\nThe street map was developed by ESRI using ESRI basemap data, DeLorme base map layers, AND road data, USGS elevation data, UNEP-WCMC parks and protected areas for the world, Tele Atlas Dynamap<61> and Multinet<65> street data for North America and Europe, and First American parcel data for the United States. Coverage for street-level data in Europe includes Andorra, Austria, Belgium, Czech Republic, Denmark, France, Germany, Great Britain, Greece, Hungary, Ireland, Italy, Luxembourg, Netherlands, Norway, Poland, Portugal, San Marino, Slovakia, Spain, Sweden, and Switzerland. Coverage for street-level data elsewhere in the world includes China (Hong Kong only), Colombia, Egypt (Cairo only), Indonesia (Jakarta only), Japan, Mexico, Russia, South Africa, Thailand, and Turkey (Istanbul and Ankara only). For more information on this map, visit us online at http://goto.arcgisonline.com/maps/World_Street_Map\n",
|
||||||
|
"copyrightText" : "Sources: ESRI, DeLorme, AND, Tele Atlas, First American, ESRI Japan, UNEP-WCMC, USGS, METI, ESRI Hong Kong, ESRI Thailand, Procalculo Prosis",
|
||||||
|
"layers" : [
|
||||||
|
{
|
||||||
|
"id" : 0,
|
||||||
|
"name" : "World Street Map",
|
||||||
|
"parentLayerId" : -1,
|
||||||
|
"defaultVisibility" : true,
|
||||||
|
"subLayerIds" : null,
|
||||||
|
"minScale" : 0,
|
||||||
|
"maxScale" : 0
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"tables" : [
|
||||||
|
|
||||||
|
],
|
||||||
|
"spatialReference" : {
|
||||||
|
"wkid" : 102100
|
||||||
|
},
|
||||||
|
"singleFusedMapCache" : true,
|
||||||
|
"tileInfo" : {
|
||||||
|
"rows" : 256,
|
||||||
|
"cols" : 256,
|
||||||
|
"dpi" : 96,
|
||||||
|
"format" : "JPEG",
|
||||||
|
"compressionQuality" : 90,
|
||||||
|
"origin" : {
|
||||||
|
"x" : -20037508.342787,
|
||||||
|
"y" : 20037508.342787
|
||||||
|
},
|
||||||
|
"spatialReference" : {
|
||||||
|
"wkid" : 102100
|
||||||
|
},
|
||||||
|
"lods" : [
|
||||||
|
{"level" : 0, "resolution" : 156543.033928, "scale" : 591657527.591555},
|
||||||
|
{"level" : 1, "resolution" : 78271.5169639999, "scale" : 295828763.795777},
|
||||||
|
{"level" : 2, "resolution" : 39135.7584820001, "scale" : 147914381.897889},
|
||||||
|
{"level" : 3, "resolution" : 19567.8792409999, "scale" : 73957190.948944},
|
||||||
|
{"level" : 4, "resolution" : 9783.93962049996, "scale" : 36978595.474472},
|
||||||
|
{"level" : 5, "resolution" : 4891.96981024998, "scale" : 18489297.737236},
|
||||||
|
{"level" : 6, "resolution" : 2445.98490512499, "scale" : 9244648.868618},
|
||||||
|
{"level" : 7, "resolution" : 1222.99245256249, "scale" : 4622324.434309},
|
||||||
|
{"level" : 8, "resolution" : 611.49622628138, "scale" : 2311162.217155},
|
||||||
|
{"level" : 9, "resolution" : 305.748113140558, "scale" : 1155581.108577},
|
||||||
|
{"level" : 10, "resolution" : 152.874056570411, "scale" : 577790.554289},
|
||||||
|
{"level" : 11, "resolution" : 76.4370282850732, "scale" : 288895.277144},
|
||||||
|
{"level" : 12, "resolution" : 38.2185141425366, "scale" : 144447.638572},
|
||||||
|
{"level" : 13, "resolution" : 19.1092570712683, "scale" : 72223.819286},
|
||||||
|
{"level" : 14, "resolution" : 9.55462853563415, "scale" : 36111.909643},
|
||||||
|
{"level" : 15, "resolution" : 4.77731426794937, "scale" : 18055.954822},
|
||||||
|
{"level" : 16, "resolution" : 2.38865713397468, "scale" : 9027.977411},
|
||||||
|
{"level" : 17, "resolution" : 1.19432856685505, "scale" : 4513.988705}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"initialExtent" : {
|
||||||
|
"xmin" : -20037507.0671618,
|
||||||
|
"ymin" : -20037507.0671618,
|
||||||
|
"xmax" : 20037507.0671618,
|
||||||
|
"ymax" : 20037507.0671619,
|
||||||
|
"spatialReference" : {
|
||||||
|
"wkid" : 102100
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"fullExtent" : {
|
||||||
|
"xmin" : -20037507.0671618,
|
||||||
|
"ymin" : -19971868.8804086,
|
||||||
|
"xmax" : 20037507.0671618,
|
||||||
|
"ymax" : 19971868.8804086,
|
||||||
|
"spatialReference" : {
|
||||||
|
"wkid" : 102100
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"units" : "esriMeters",
|
||||||
|
"supportedImageFormatTypes" : "PNG24,PNG,JPG,DIB,TIFF,EMF,PS,PDF,GIF,SVG,SVGZ,AI,BMP",
|
||||||
|
"documentInfo" : {
|
||||||
|
"Title" : "World Street Map",
|
||||||
|
"Author" : "ESRI",
|
||||||
|
"Comments" : "",
|
||||||
|
"Subject" : "streets, highways, major roads, railways, water features, administrative boundaries, cities, parks, protected areas, landmarks ",
|
||||||
|
"Category" : "transportation(Transportation Networks) ",
|
||||||
|
"Keywords" : "World, Global, 2009, Japan, UNEP-WCMC",
|
||||||
|
"Credits" : ""
|
||||||
|
},
|
||||||
|
"capabilities" : "Map"
|
||||||
|
};
|
||||||
|
|
||||||
|
function init(){
|
||||||
|
//The max extent for spherical mercator
|
||||||
|
var maxExtent = new OpenLayers.Bounds(-20037508.34,-20037508.34,20037508.34,20037508.34);
|
||||||
|
|
||||||
|
//Max extent from layerInfo above
|
||||||
|
var layerMaxExtent = new OpenLayers.Bounds(
|
||||||
|
layerInfo.fullExtent.xmin,
|
||||||
|
layerInfo.fullExtent.ymin,
|
||||||
|
layerInfo.fullExtent.xmax,
|
||||||
|
layerInfo.fullExtent.ymax
|
||||||
|
);
|
||||||
|
|
||||||
|
var resolutions = [];
|
||||||
|
for (var i=0; i<layerInfo.tileInfo.lods.length; i++) {
|
||||||
|
resolutions.push(layerInfo.tileInfo.lods[i].resolution);
|
||||||
|
}
|
||||||
|
|
||||||
|
map = new OpenLayers.Map('map', {
|
||||||
|
maxExtent: maxExtent,
|
||||||
|
StartBounds: layerMaxExtent,
|
||||||
|
units: (layerInfo.units == "esriFeet") ? 'ft' : 'm',
|
||||||
|
resolutions: resolutions,
|
||||||
|
tileSize: new OpenLayers.Size(layerInfo.tileInfo.width, layerInfo.tileInfo.height),
|
||||||
|
projection: 'EPSG:' + layerInfo.spatialReference.wkid
|
||||||
|
});
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
cacheLayer = new OpenLayers.Layer.ArcGISCache( "AGSCache",
|
||||||
|
"http://services.arcgisonline.com/ArcGIS/rest/services/World_Street_Map/MapServer", {
|
||||||
|
isBaseLayer: true,
|
||||||
|
|
||||||
|
//From layerInfo above
|
||||||
|
resolutions: resolutions,
|
||||||
|
tileSize: new OpenLayers.Size(layerInfo.tileInfo.cols, layerInfo.tileInfo.rows),
|
||||||
|
tileOrigin: new OpenLayers.LonLat(layerInfo.tileInfo.origin.x , layerInfo.tileInfo.origin.y),
|
||||||
|
maxExtent: layerMaxExtent,
|
||||||
|
projection: 'EPSG:' + layerInfo.spatialReference.wkid
|
||||||
|
});
|
||||||
|
|
||||||
|
|
||||||
|
// create Google Mercator layers
|
||||||
|
testLayer = new OpenLayers.Layer.Google(
|
||||||
|
"Google Streets",
|
||||||
|
{'sphericalMercator': true}
|
||||||
|
);
|
||||||
|
|
||||||
|
map.addLayers([testLayer, cacheLayer]);
|
||||||
|
|
||||||
|
map.addControl(new OpenLayers.Control.LayerSwitcher());
|
||||||
|
map.addControl( new OpenLayers.Control.MousePosition() );
|
||||||
|
|
||||||
|
map.zoomToExtent(new OpenLayers.Bounds(-8341644, 4711236, -8339198, 4712459));
|
||||||
|
}
|
||||||
|
</script>
|
||||||
|
</head>
|
||||||
|
<body onload="init()">
|
||||||
|
<h1 id="title">OpenLayers ArcGIS Cache Example (MapServer Access)</h1>
|
||||||
|
|
||||||
|
<div id="tags">
|
||||||
|
arcgis, arcgiscache, cache, tms
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<p id="shortdesc">
|
||||||
|
Demonstrates the basic initialization of the ArcGIS Cache layer using a prebuilt configuration, and standard tile access.
|
||||||
|
</p>
|
||||||
|
|
||||||
|
<div id="map" class="smallmap"></div>
|
||||||
|
|
||||||
|
<div id="docs">
|
||||||
|
<p>This example demonstrates using the ArcGISCache layer for
|
||||||
|
accessing ESRI's ArcGIS Server (AGS) Map Cache tiles through
|
||||||
|
an AGS MapServer. Toggle the visibility of the AGS layer to
|
||||||
|
demonstrate how the two maps are lined up correctly.</p>
|
||||||
|
|
||||||
|
<h2>Notes on this layer</h2>
|
||||||
|
<p>A few attempts have been made at this kind of layer before. See
|
||||||
|
<a href="http://trac.osgeo.org/openlayers/ticket/1967">here</a> and
|
||||||
|
<a href="http://trac.osgeo.org/openlayers/browser/sandbox/tschaub/arcgiscache/lib/OpenLayers/Layer/ArcGISCache.js">here</a>.
|
||||||
|
A problem the users encounter is that the tiles seem to "jump around".
|
||||||
|
This is due to the fact that the max extent for the cached layer actually
|
||||||
|
changes at each zoom level due to the way these caches are constructed.
|
||||||
|
We have attempted to use the resolutions, tile size, and tile origin
|
||||||
|
from the cache meta data to make the appropriate changes to the max extent
|
||||||
|
of the tile to compensate for this behavior.</p>
|
||||||
|
You will need to know:
|
||||||
|
<ul>
|
||||||
|
<li>Max Extent: The max extent of the layer</li>
|
||||||
|
<li>Resolutions: An array of resolutions, one for each zoom level</li>
|
||||||
|
<li>Tile Origin: The location of the tile origin for the cache in the upper left.</li>
|
||||||
|
<li>Tile Size: The size of each tile in the cache. Commonly 256 x 256</li>
|
||||||
|
</ul>
|
||||||
|
<p>It's important that you set the correct values in your layer, and these
|
||||||
|
values will differ from layer to layer. You can find these values for your
|
||||||
|
layer in a metadata page in ArcGIS Server.
|
||||||
|
(ie. <a href="http://services.arcgisonline.com/ArcGIS/rest/services/World_Street_Map/MapServer">http://services.arcgisonline.com/ArcGIS/rest/services/World_Street_Map/MapServer</a>)</p>
|
||||||
|
<ul>
|
||||||
|
<li>Max Extent: Full Extent</li>
|
||||||
|
<li>Resolutions: Tile Info -> Levels of Detail -> Resolution</li>
|
||||||
|
<li>Tile Origin: Origin -> X,Y</li>
|
||||||
|
<li>Tile Size: Tile Info -> Height,Width</li>
|
||||||
|
</ul>
|
||||||
|
|
||||||
|
<h2> Other Examples </h2>
|
||||||
|
<p>This is one of three examples for this layer. You can also configure this
|
||||||
|
layer to use <a href="arcgiscache_direct.html">prebuilt tiles in a file store
|
||||||
|
(not a live server).</a> It is also possible to let this
|
||||||
|
<a href="arcgiscache_jsonp.html">layer 'auto-configure' itself using the
|
||||||
|
capabilities json object from the server itself when using a live ArcGIS server.</a>
|
||||||
|
</p>
|
||||||
|
</div>
|
||||||
|
</body>
|
||||||
|
</html>
|
||||||
106
examples/arcgiscache_direct.html
Normal file
106
examples/arcgiscache_direct.html
Normal file
@@ -0,0 +1,106 @@
|
|||||||
|
<html xmlns="http://www.w3.org/1999/xhtml">
|
||||||
|
<head>
|
||||||
|
<title>ArcGIS Server Map Cache Example (Direct Access)</title>
|
||||||
|
<link rel="stylesheet" href="../theme/default/style.css" type="text/css" />
|
||||||
|
<link rel="stylesheet" href="style.css" type="text/css" />
|
||||||
|
<script src="../lib/OpenLayers.js" type="text/javascript"></script>
|
||||||
|
<script src="../lib/OpenLayers/Layer/ArcGISCache.js" type="text/javascript"></script>
|
||||||
|
<script type="text/javascript">
|
||||||
|
/* First 4 variables extracted from conf.xml file */
|
||||||
|
|
||||||
|
/* Tile layers & map MUST have same projection */
|
||||||
|
var proj='EPSG:26915';
|
||||||
|
|
||||||
|
|
||||||
|
/* Layer can also accept serverResolutions array
|
||||||
|
* to deal with situation in which layer resolution array & map resolution
|
||||||
|
* array are out of sync*/
|
||||||
|
var mapResolutions = [33.0729828126323,16.9333672000677,8.46668360003387,4.23334180001693,2.11667090000847,1.05833545000423];
|
||||||
|
|
||||||
|
/* For this example this next line is not really needed, 256x256 is default.
|
||||||
|
* However, you would need to change this if your layer had different tile sizes */
|
||||||
|
var tileSize = new OpenLayers.Size(256,256);
|
||||||
|
|
||||||
|
/* Tile Origin is required unless it is the same as the implicit map origin
|
||||||
|
* which can be affected by several variables including maxExtent for map or base layer */
|
||||||
|
var agsTileOrigin = new OpenLayers.LonLat(-5120900,9998100);
|
||||||
|
|
||||||
|
/* This can really be any valid bounds that the map would reasonably be within */
|
||||||
|
/* var mapExtent = new OpenLayers.Bounds(293449.454286,4307691.661132,314827.830376,4323381.484178); */
|
||||||
|
var mapExtent = new OpenLayers.Bounds(289310.8204,4300021.937,314710.8712,4325421.988);
|
||||||
|
|
||||||
|
var aerialsUrl = 'http://serverx.esri.com/arcgiscache/dgaerials/Layers/_alllayers';
|
||||||
|
var roadsUrl = 'http://serverx.esri.com/arcgiscache/DG_County_roads_yesA_backgroundDark/Layers/_alllayers';
|
||||||
|
|
||||||
|
var map;
|
||||||
|
function init(){
|
||||||
|
map = new OpenLayers.Map('map', {
|
||||||
|
maxExtent:mapExtent,
|
||||||
|
controls: [
|
||||||
|
new OpenLayers.Control.Navigation(),
|
||||||
|
new OpenLayers.Control.LayerSwitcher(),
|
||||||
|
new OpenLayers.Control.PanZoomBar(),
|
||||||
|
new OpenLayers.Control.MousePosition()]
|
||||||
|
});
|
||||||
|
|
||||||
|
var baseLayer = new OpenLayers.Layer.ArcGISCache('Aerials', aerialsUrl, {
|
||||||
|
tileOrigin: agsTileOrigin,
|
||||||
|
resolutions: mapResolutions,
|
||||||
|
sphericalMercator: true,
|
||||||
|
maxExtent: mapExtent,
|
||||||
|
useArcGISServer: false,
|
||||||
|
isBaseLayer: true,
|
||||||
|
type: 'jpg',
|
||||||
|
projection: proj
|
||||||
|
});
|
||||||
|
var overlayLayer = new OpenLayers.Layer.ArcGISCache('Roads', roadsUrl, {
|
||||||
|
tileOrigin: agsTileOrigin,
|
||||||
|
resolutions: mapResolutions,
|
||||||
|
sphericalMercator: true,
|
||||||
|
maxExtent: mapExtent,
|
||||||
|
useArcGISServer: false,
|
||||||
|
isBaseLayer: false,
|
||||||
|
projection: proj
|
||||||
|
});
|
||||||
|
map.addLayers([baseLayer, overlayLayer]);
|
||||||
|
|
||||||
|
//map.zoomToExtent(new OpenLayers.Bounds(295892.34, 4308521.69, 312825.71, 4316988.37));
|
||||||
|
map.zoomToExtent(new OpenLayers.Bounds(-8341644, 4711236, -8339198, 4712459));
|
||||||
|
}
|
||||||
|
</script>
|
||||||
|
</head>
|
||||||
|
<body onload="init()">
|
||||||
|
<h1 id="title">ArcGIS Server Map Cache Example (Direct Access)</h1>
|
||||||
|
|
||||||
|
<div id="tags">
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<p id="shortdesc">
|
||||||
|
Demonstrates the basic initialization of the ArcGIS Cache layer using a prebuilt configuration, and direct tile access from a file store.
|
||||||
|
</p>
|
||||||
|
|
||||||
|
<div id="map" class="smallmap"></div>
|
||||||
|
|
||||||
|
<div id="docs">
|
||||||
|
<p>This example demonstrates using the ArcGISCache layer for
|
||||||
|
accessing ESRI's ArcGIS Server (AGS) Map Cache tiles directly
|
||||||
|
via the folder structure and HTTP. Toggle the visibility of the AGS layer to
|
||||||
|
demonstrate how the two maps are lined up correctly.</p>
|
||||||
|
|
||||||
|
<h2>Notes on this Layer</h2>
|
||||||
|
<p>It's important that you set the correct values in your layer, and these
|
||||||
|
values will differ between tile sets. You can find these values for your
|
||||||
|
layer in conf.xml at the root of your cache.
|
||||||
|
(ie. <a href="http://serverx.esri.com/arcgiscache/dgaerials/Layers/conf.xml">http://serverx.esri.com/arcgiscache/dgaerials/Layers/conf.xml</a>)</p>
|
||||||
|
|
||||||
|
<p>For fused map caches this is often http:<i>ServerName</i>/arcgiscache/<i>MapServiceName</i>/Layers <br />
|
||||||
|
For individual layer caches this is often http:<i>ServerName</i>/arcgiscache/<i>LayerName</i>/Layers </p>
|
||||||
|
|
||||||
|
<h2> Other Examples </h2>
|
||||||
|
<p>This is one of three examples for this layer. You can also configure this
|
||||||
|
layer to use <a href="arcgiscache_ags.html">prebuilt tiles from a live server.</a> It is also
|
||||||
|
possible to let this <a href="arcgiscache_jsonp.html">layer 'auto-configure' itself using the capabilities json object from the server itself when using a live ArcGIS server.</a>
|
||||||
|
</p>
|
||||||
|
</div>
|
||||||
|
</body>
|
||||||
|
</html>
|
||||||
108
examples/arcgiscache_jsonp.html
Normal file
108
examples/arcgiscache_jsonp.html
Normal file
@@ -0,0 +1,108 @@
|
|||||||
|
<html xmlns="http://www.w3.org/1999/xhtml">
|
||||||
|
<head>
|
||||||
|
<title>OpenLayers ArcGIS Cache Example (Autoconfigure with JSONP)</title>
|
||||||
|
<link rel="stylesheet" href="../theme/default/style.css" type="text/css" />
|
||||||
|
<link rel="stylesheet" href="style.css" type="text/css" />
|
||||||
|
|
||||||
|
<script src="../lib/OpenLayers.js"></script>
|
||||||
|
<script src="../lib/OpenLayers/Layer/ArcGISCache.js" type="text/javascript"></script>
|
||||||
|
|
||||||
|
<!-- This is to simplify making the JSONP request for this example -->
|
||||||
|
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js"></script>
|
||||||
|
|
||||||
|
<script type="text/javascript">
|
||||||
|
var map,
|
||||||
|
layerURL = "http://services.arcgisonline.com/ArcGIS/rest/services/World_Topo_Map/MapServer";
|
||||||
|
|
||||||
|
function init() {
|
||||||
|
var jsonp_url = layerURL + '?f=json&pretty=true&callback=?';
|
||||||
|
$.getJSON(jsonp_url, function(data) {
|
||||||
|
initMap(data);
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
function initMap(layerInfo){
|
||||||
|
/*
|
||||||
|
* The initialize function in this layer has the ability to automatically configure
|
||||||
|
* itself if given the JSON capabilities object from the ArcGIS map server.
|
||||||
|
* This hugely simplifies setting up a new layer, and switching basemaps when using this technique.
|
||||||
|
*
|
||||||
|
* see the 'initialize' function in ArcGISCache.js, or
|
||||||
|
* see the other two ArcGISCache.js examples for direct manual configuration options
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
var baseLayer = new OpenLayers.Layer.ArcGISCache("AGSCache", layerURL, {
|
||||||
|
layerInfo: layerInfo
|
||||||
|
});
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Make sure our baselayer and our map are synced up
|
||||||
|
*/
|
||||||
|
map = new OpenLayers.Map('map', {
|
||||||
|
maxExtent: baseLayer.maxExtent,
|
||||||
|
units: baseLayer.units,
|
||||||
|
resolutions: baseLayer.resolutions,
|
||||||
|
numZoomLevels: baseLayer.numZoomLevels,
|
||||||
|
tileSize: baseLayer.tileSize,
|
||||||
|
displayProjection: baseLayer.displayProjection,
|
||||||
|
StartBounds: baseLayer.initialExtent
|
||||||
|
});
|
||||||
|
map.addLayers([baseLayer]);
|
||||||
|
|
||||||
|
|
||||||
|
//overlay test layer
|
||||||
|
//http://openlayers.org/dev/examples/web-mercator.html
|
||||||
|
var wms = new OpenLayers.Layer.WMS("Highways",
|
||||||
|
"http://sampleserver1.arcgisonline.com/arcgis/services/Specialty/ESRI_StateCityHighway_USA/MapServer/WMSServer",
|
||||||
|
{layers: "2", format: "image/gif", transparent: "true"},
|
||||||
|
{ isBaseLayer: false, wrapDateLine: false }
|
||||||
|
);
|
||||||
|
map.addLayers([wms]);
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
map.addControl(new OpenLayers.Control.LayerSwitcher());
|
||||||
|
map.addControl(new OpenLayers.Control.MousePosition() );
|
||||||
|
//map.zoomToExtent(new OpenLayers.Bounds(-8341644, 4711236, -8339198, 4712459));
|
||||||
|
map.zoomToExtent(new OpenLayers.Bounds(-8725663.6225564, 4683718.6735907, -8099491.4868444, 4996804.7414467));
|
||||||
|
}
|
||||||
|
</script>
|
||||||
|
</head>
|
||||||
|
<body onload="init()">
|
||||||
|
<h1 id="title">OpenLayers ArcGIS Cache Example (Autoconfigure with JSONP)</h1>
|
||||||
|
|
||||||
|
<div id="tags">
|
||||||
|
arcgis, arcgiscache, cache, tms, jsonp
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<p id="shortdesc">
|
||||||
|
Demonstrates the basic initialization of the ArcGIS Cache layer by using the server capabilities object.
|
||||||
|
</p>
|
||||||
|
|
||||||
|
<div id="map" class="smallmap"></div>
|
||||||
|
|
||||||
|
<div id="docs">
|
||||||
|
<p>This example demonstrates using the ArcGISCache layer for
|
||||||
|
accessing ESRI's ArcGIS Server (AGS) Map Cache tiles normally through
|
||||||
|
a live AGS MapServer. Toggle the visibility of the overlay to
|
||||||
|
demonstrate how the two layers are lined up correctly.</p>
|
||||||
|
|
||||||
|
<h2>Notes on this Layer</h2>
|
||||||
|
<p>
|
||||||
|
This method automatically configures the layer using the capabilities object
|
||||||
|
generated by the server itself. This page shows how to construct the url for the server capabilities object,
|
||||||
|
retrieve it using JSONP (and jQuery), and pass it in during construction. Note that in this case,
|
||||||
|
the layer is constructed before the map. This approach greatly simplifies the
|
||||||
|
configuration of your map, and works best when all your tiles / overlays are similarly laid out.
|
||||||
|
If you are using a live AGS map server for your layer, it can be helpful to check your
|
||||||
|
server configuration using this technique before trying one of the other examples for this layer.
|
||||||
|
</p>
|
||||||
|
|
||||||
|
<h2> Other Examples </h2>
|
||||||
|
<p>This is one of three examples for this layer. You can also configure this
|
||||||
|
layer to use <a href="arcgiscache_direct.html">prebuilt tiles in a file store (not a live server).</a>
|
||||||
|
As well a retrieve <a href="arcgiscache_ags.html">tiles from a live server.</a>
|
||||||
|
</p>
|
||||||
|
</div>
|
||||||
|
</body>
|
||||||
|
</html>
|
||||||
80
examples/arcims-thematic.html
Normal file
80
examples/arcims-thematic.html
Normal file
@@ -0,0 +1,80 @@
|
|||||||
|
<html xmlns="http://www.w3.org/1999/xhtml">
|
||||||
|
<head>
|
||||||
|
<meta name="viewport" content="width=device-width; initial-scale=1.0; maximum-scale=1.0; user-scalable=0;" />
|
||||||
|
<meta name="apple-mobile-web-app-capable" content="yes" />
|
||||||
|
<title>ArcIMS Thematic Example</title>
|
||||||
|
<link rel="stylesheet" href="../theme/default/style.css" type="text/css" />
|
||||||
|
<link rel="stylesheet" href="style.css" type="text/css" />
|
||||||
|
<script src="../lib/OpenLayers.js"></script>
|
||||||
|
<script type="text/javascript">
|
||||||
|
var lon = 0;
|
||||||
|
var lat = 0;
|
||||||
|
var zoom = 1;
|
||||||
|
var map, layer;
|
||||||
|
var query, renderer;
|
||||||
|
|
||||||
|
function init() {
|
||||||
|
OpenLayers.ProxyHost = "proxy.cgi?url=";
|
||||||
|
|
||||||
|
map = new OpenLayers.Map('map');
|
||||||
|
|
||||||
|
query = {where: "FIPS_ID>100 AND FIPS_ID<200"};
|
||||||
|
|
||||||
|
renderer = {
|
||||||
|
type: 'valuemap',
|
||||||
|
lookupfield: 'FIPS_ID',
|
||||||
|
ranges: [
|
||||||
|
{ lower: 100, upper: 120, symbol: { type: 'simplepolygon', fillcolor: '255,0,0' } },
|
||||||
|
{ lower: 120, upper: 140, symbol: { type: 'simplepolygon', fillcolor: '255,255,0' } },
|
||||||
|
{ lower: 140, upper: 160, symbol: { type: 'simplepolygon', fillcolor: '0,255,0' } },
|
||||||
|
{ lower: 160, upper: 180, symbol: { type: 'simplepolygon', fillcolor: '0,255,255' } },
|
||||||
|
{ lower: 180, upper: 200, symbol: { type: 'simplepolygon', fillcolor: '0,0,255' } }
|
||||||
|
]
|
||||||
|
};
|
||||||
|
|
||||||
|
var options = {
|
||||||
|
layers: [{
|
||||||
|
id: "1",
|
||||||
|
visible: true,
|
||||||
|
query: query,
|
||||||
|
renderer: renderer
|
||||||
|
}],
|
||||||
|
serviceName: "OpenLayers_Sample",
|
||||||
|
singleTile: true,
|
||||||
|
async: true
|
||||||
|
};
|
||||||
|
|
||||||
|
layer = new OpenLayers.Layer.ArcIMS(
|
||||||
|
"Global Sample Map",
|
||||||
|
"http://sample.azavea.com/servlet/com.esri.esrimap.Esrimap",
|
||||||
|
options
|
||||||
|
);
|
||||||
|
map.addLayer(layer);
|
||||||
|
|
||||||
|
map.setCenter(new OpenLayers.LonLat(lon, lat), zoom);
|
||||||
|
map.addControl(new OpenLayers.Control.LayerSwitcher());
|
||||||
|
}
|
||||||
|
</script>
|
||||||
|
</head>
|
||||||
|
<body onload="init()">
|
||||||
|
<h1 id="title">ArcIMS Thematic Example</h1>
|
||||||
|
|
||||||
|
<div id="tags">
|
||||||
|
ESRI, ArcIMS, ArcXML, style, thematic, chloropleth, representation
|
||||||
|
</div>
|
||||||
|
<p id="shortdesc">
|
||||||
|
Shows the advanced use of OpenLayers using a thematic ArcIMS layer
|
||||||
|
</p>
|
||||||
|
|
||||||
|
<div id="map" class="smallmap"></div>
|
||||||
|
|
||||||
|
<div id="docs">
|
||||||
|
<p>This is an example of how to add an ArcIMS layer to an OpenLayers map.</p>
|
||||||
|
|
||||||
|
<p>Following the ArcXML convention to create a thematic (or chloropleth) map,
|
||||||
|
a layer definition is created with a query and a renderer to select portions
|
||||||
|
of the map data, and change their representation in the generated map tiles.</p>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
</body>
|
||||||
|
</html>
|
||||||
55
examples/arcims.html
Normal file
55
examples/arcims.html
Normal file
@@ -0,0 +1,55 @@
|
|||||||
|
<html xmlns="http://www.w3.org/1999/xhtml">
|
||||||
|
<head>
|
||||||
|
<meta name="viewport" content="width=device-width; initial-scale=1.0; maximum-scale=1.0; user-scalable=0;" />
|
||||||
|
<meta name="apple-mobile-web-app-capable" content="yes" />
|
||||||
|
<title>ArcIMS Example</title>
|
||||||
|
<link rel="stylesheet" href="../theme/default/style.css" type="text/css" />
|
||||||
|
<link rel="stylesheet" href="style.css" type="text/css" />
|
||||||
|
<script src="../lib/OpenLayers.js"></script>
|
||||||
|
<script type="text/javascript">
|
||||||
|
var lon = 0;
|
||||||
|
var lat = 0;
|
||||||
|
var zoom = 1;
|
||||||
|
var map, layer;
|
||||||
|
|
||||||
|
function init(){
|
||||||
|
OpenLayers.ProxyHost = "proxy.cgi?url=";
|
||||||
|
|
||||||
|
map = new OpenLayers.Map( 'map' );
|
||||||
|
|
||||||
|
var options = {
|
||||||
|
serviceName: "OpenLayers_Sample",
|
||||||
|
async: true
|
||||||
|
};
|
||||||
|
|
||||||
|
layer = new OpenLayers.Layer.ArcIMS( "Global Sample Map",
|
||||||
|
"http://sample.azavea.com/servlet/com.esri.esrimap.Esrimap", options );
|
||||||
|
map.addLayer(layer);
|
||||||
|
|
||||||
|
map.setCenter(new OpenLayers.LonLat(lon, lat), zoom);
|
||||||
|
map.addControl( new OpenLayers.Control.LayerSwitcher() );
|
||||||
|
}
|
||||||
|
</script>
|
||||||
|
</head>
|
||||||
|
<body onload="init()">
|
||||||
|
<h1 id="title">ArcIMS Example</h1>
|
||||||
|
|
||||||
|
<div id="tags">
|
||||||
|
ESRI, ArcIMS
|
||||||
|
</div>
|
||||||
|
<p id="shortdesc">
|
||||||
|
Shows the basic use of OpenLayers using an ArcIMS layer
|
||||||
|
</p>
|
||||||
|
|
||||||
|
<div id="map" class="smallmap"></div>
|
||||||
|
|
||||||
|
<div id="docs">
|
||||||
|
This is an example of how to add an ArcIMS layer to the OpenLayers window.
|
||||||
|
</div>
|
||||||
|
|
||||||
|
</body>
|
||||||
|
</html>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
@@ -1,5 +1,7 @@
|
|||||||
<html xmlns="http://www.w3.org/1999/xhtml">
|
<html xmlns="http://www.w3.org/1999/xhtml">
|
||||||
<head>
|
<head>
|
||||||
|
<meta name="viewport" content="width=device-width; initial-scale=1.0; maximum-scale=1.0; user-scalable=0;" />
|
||||||
|
<meta name="apple-mobile-web-app-capable" content="yes" />
|
||||||
<title>OpenLayers Attribution Example</title>
|
<title>OpenLayers Attribution Example</title>
|
||||||
<link rel="stylesheet" href="../theme/default/style.css" type="text/css" />
|
<link rel="stylesheet" href="../theme/default/style.css" type="text/css" />
|
||||||
<link rel="stylesheet" href="style.css" type="text/css" />
|
<link rel="stylesheet" href="style.css" type="text/css" />
|
||||||
@@ -11,8 +13,8 @@
|
|||||||
map = new OpenLayers.Map('map');
|
map = new OpenLayers.Map('map');
|
||||||
|
|
||||||
var ol_wms = new OpenLayers.Layer.WMS( "OpenLayers WMS",
|
var ol_wms = new OpenLayers.Layer.WMS( "OpenLayers WMS",
|
||||||
"http://labs.metacarta.com/wms/vmap0?", {layers: 'basic'},
|
"http://vmap0.tiles.osgeo.org/wms/vmap0?", {layers: 'basic'},
|
||||||
{'attribution': 'Provided by <a href="http://labs.metacarta.com/">MetaCarta</a>'});
|
{'attribution': 'Provided by OSGeo'});
|
||||||
|
|
||||||
var jpl_wms = new OpenLayers.Layer.WMS( "NASA Global Mosaic",
|
var jpl_wms = new OpenLayers.Layer.WMS( "NASA Global Mosaic",
|
||||||
"http://t1.hypercube.telascience.org/cgi-bin/landsat7",
|
"http://t1.hypercube.telascience.org/cgi-bin/landsat7",
|
||||||
@@ -34,7 +36,7 @@
|
|||||||
<h1 id="title">Attribution Example</h1>
|
<h1 id="title">Attribution Example</h1>
|
||||||
|
|
||||||
<div id="tags">
|
<div id="tags">
|
||||||
copyright watermark logo attribution
|
copyright, watermark, logo, attribution
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<p id="shortdesc">
|
<p id="shortdesc">
|
||||||
@@ -47,7 +49,7 @@
|
|||||||
This is an example of how to add an attribution block to the OpenLayers window. In order to use an
|
This is an example of how to add an attribution block to the OpenLayers window. In order to use an
|
||||||
attribution block, an attribution parameter must be set in each layer that requires attribution. In
|
attribution block, an attribution parameter must be set in each layer that requires attribution. In
|
||||||
addition, an attribution control must be added to the map, though one is added to all OpenLayers Maps by default.
|
addition, an attribution control must be added to the map, though one is added to all OpenLayers Maps by default.
|
||||||
Be aware that this is a layer *option*: the options hash goes in
|
Be aware that this is a layer <strong>option</strong>: the options hash goes in
|
||||||
different places depending on the layer type you are using.
|
different places depending on the layer type you are using.
|
||||||
</div>
|
</div>
|
||||||
</body>
|
</body>
|
||||||
|
|||||||
@@ -1,96 +0,0 @@
|
|||||||
<html xmlns="http://www.w3.org/1999/xhtml">
|
|
||||||
<head>
|
|
||||||
<title>OpenLayers Base Layers Example</title>
|
|
||||||
|
|
||||||
<link rel="stylesheet" href="../theme/default/style.css" type="text/css" />
|
|
||||||
<link rel="stylesheet" href="style.css" type="text/css" />
|
|
||||||
<style type="text/css">
|
|
||||||
#controls
|
|
||||||
{
|
|
||||||
width: 512px;
|
|
||||||
}
|
|
||||||
</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/mapcontrol.ashx?v=6.1'></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 id="title">Base Layers Example</h1>
|
|
||||||
|
|
||||||
<div id="tags">
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<p id="shortdesc">
|
|
||||||
This example shows the use base layers from multiple commercial map image providers.
|
|
||||||
</p>
|
|
||||||
|
|
||||||
<div id="controls">
|
|
||||||
<div id="map" class="smallmap"></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>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div id="docs">
|
|
||||||
</div>
|
|
||||||
</body>
|
|
||||||
</html>
|
|
||||||
@@ -1,5 +1,7 @@
|
|||||||
<html xmlns="http://www.w3.org/1999/xhtml">
|
<html xmlns="http://www.w3.org/1999/xhtml">
|
||||||
<head>
|
<head>
|
||||||
|
<meta name="viewport" content="width=device-width; initial-scale=1.0; maximum-scale=1.0; user-scalable=0;" />
|
||||||
|
<meta name="apple-mobile-web-app-capable" content="yes" />
|
||||||
<title>OpenLayers Vector Behavior Example</title>
|
<title>OpenLayers Vector Behavior Example</title>
|
||||||
<link rel="stylesheet" href="../theme/default/style.css" type="text/css" />
|
<link rel="stylesheet" href="../theme/default/style.css" type="text/css" />
|
||||||
<link rel="stylesheet" href="style.css" type="text/css" />
|
<link rel="stylesheet" href="style.css" type="text/css" />
|
||||||
@@ -10,7 +12,7 @@
|
|||||||
function init(){
|
function init(){
|
||||||
map = new OpenLayers.Map('map');
|
map = new OpenLayers.Map('map');
|
||||||
var wms = new OpenLayers.Layer.WMS(
|
var wms = new OpenLayers.Layer.WMS(
|
||||||
"OpenLayers WMS", "http://labs.metacarta.com/wms/vmap0",
|
"OpenLayers WMS", "http://vmap0.tiles.osgeo.org/wms/vmap0",
|
||||||
{layers: 'basic'}
|
{layers: 'basic'}
|
||||||
);
|
);
|
||||||
|
|
||||||
@@ -19,7 +21,7 @@
|
|||||||
protocol: new OpenLayers.Protocol.HTTP({
|
protocol: new OpenLayers.Protocol.HTTP({
|
||||||
url: "gml/polygon.xml",
|
url: "gml/polygon.xml",
|
||||||
format: new OpenLayers.Format.GML()
|
format: new OpenLayers.Format.GML()
|
||||||
}),
|
})
|
||||||
});
|
});
|
||||||
|
|
||||||
map.addLayers([wms, layer]);
|
map.addLayers([wms, layer]);
|
||||||
@@ -31,6 +33,9 @@
|
|||||||
</head>
|
</head>
|
||||||
<body onload="init()">
|
<body onload="init()">
|
||||||
<h1 id="title">Vector Behavior Example (Fixed/HTTP/GML)</h1>
|
<h1 id="title">Vector Behavior Example (Fixed/HTTP/GML)</h1>
|
||||||
|
<div id="tags">
|
||||||
|
vector, strategy, strategies, protocoll, advanced, gml, http, fixed
|
||||||
|
</div>
|
||||||
<p id="shortdesc">
|
<p id="shortdesc">
|
||||||
Vector layer with a Fixed strategy, HTTP protocol, and GML format.
|
Vector layer with a Fixed strategy, HTTP protocol, and GML format.
|
||||||
</p>
|
</p>
|
||||||
|
|||||||
37
examples/bing-tiles.html
Normal file
37
examples/bing-tiles.html
Normal file
@@ -0,0 +1,37 @@
|
|||||||
|
<!DOCTYPE html>
|
||||||
|
<html>
|
||||||
|
<head>
|
||||||
|
<meta name="viewport" content="width=device-width; initial-scale=1.0; maximum-scale=1.0; user-scalable=0;" />
|
||||||
|
<meta name="apple-mobile-web-app-capable" content="yes" />
|
||||||
|
<title>OpenLayers Bing Tiles Example</title>
|
||||||
|
<link rel="stylesheet" href="../theme/default/style.css" type="text/css">
|
||||||
|
<link rel="stylesheet" href="style.css" type="text/css">
|
||||||
|
<style type="text/css">
|
||||||
|
.olControlAttribution {
|
||||||
|
left: 5px;
|
||||||
|
right: inherit;
|
||||||
|
bottom: 5px;
|
||||||
|
}
|
||||||
|
</style>
|
||||||
|
</head>
|
||||||
|
<body>
|
||||||
|
<h1 id="title">Basic Bing Tiles Example</h1>
|
||||||
|
|
||||||
|
<div id="tags">
|
||||||
|
bing tiles
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div id="shortdesc">Use Bing with direct tile access</div>
|
||||||
|
|
||||||
|
<div id="map" class="smallmap"></div>
|
||||||
|
|
||||||
|
<div id="docs">
|
||||||
|
<p>This example shows a very simple map with Bing layers that use
|
||||||
|
direct tile access through Bing Maps REST Services.</p><p>See
|
||||||
|
<a target="_blank" href="bing-tiles.js">bing-tiles.js</a> for the
|
||||||
|
source code.</p>
|
||||||
|
</div>
|
||||||
|
<script src="../lib/OpenLayers.js"></script>
|
||||||
|
<script src="bing-tiles.js"></script>
|
||||||
|
</body>
|
||||||
|
</html>
|
||||||
29
examples/bing-tiles.js
Normal file
29
examples/bing-tiles.js
Normal file
@@ -0,0 +1,29 @@
|
|||||||
|
// API key for http://openlayers.org. Please get your own at
|
||||||
|
// http://bingmapsportal.com/ and use that instead.
|
||||||
|
var apiKey = "AqTGBsziZHIJYYxgivLBf0hVdrAk9mWO5cQcb8Yux8sW5M8c8opEC2lZqKR1ZZXf";
|
||||||
|
|
||||||
|
var map = new OpenLayers.Map( 'map');
|
||||||
|
|
||||||
|
var road = new OpenLayers.Layer.Bing({
|
||||||
|
key: apiKey,
|
||||||
|
type: "Road",
|
||||||
|
// custom metadata parameter to request the new map style - only useful
|
||||||
|
// before May 1st, 2011
|
||||||
|
metadataParams: {mapVersion: "v1"}
|
||||||
|
});
|
||||||
|
var aerial = new OpenLayers.Layer.Bing({
|
||||||
|
key: apiKey,
|
||||||
|
type: "Aerial"
|
||||||
|
});
|
||||||
|
var hybrid = new OpenLayers.Layer.Bing({
|
||||||
|
key: apiKey,
|
||||||
|
type: "AerialWithLabels",
|
||||||
|
name: "Bing Aerial With Labels"
|
||||||
|
});
|
||||||
|
|
||||||
|
map.addLayers([road, aerial, hybrid]);
|
||||||
|
map.addControl(new OpenLayers.Control.LayerSwitcher());
|
||||||
|
map.setCenter(new OpenLayers.LonLat(-71.147, 42.472).transform(
|
||||||
|
new OpenLayers.Projection("EPSG:4326"),
|
||||||
|
map.getProjectionObject()
|
||||||
|
), 12);
|
||||||
60
examples/bing.html
Normal file
60
examples/bing.html
Normal file
@@ -0,0 +1,60 @@
|
|||||||
|
<html xmlns="http://www.w3.org/1999/xhtml">
|
||||||
|
<head>
|
||||||
|
<meta name="viewport" content="width=device-width; initial-scale=1.0; maximum-scale=1.0; user-scalable=0;" />
|
||||||
|
<meta name="apple-mobile-web-app-capable" content="yes" />
|
||||||
|
<title>OpenLayers Bing Example</title>
|
||||||
|
<link rel="stylesheet" href="../theme/default/style.css" type="text/css" />
|
||||||
|
<link rel="stylesheet" href="style.css" type="text/css" />
|
||||||
|
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
|
||||||
|
<script src="http://ecn.dev.virtualearth.net/mapcontrol/mapcontrol.ashx?v=6.2&mkt=en-us"></script>
|
||||||
|
|
||||||
|
<script src="../lib/OpenLayers.js"></script>
|
||||||
|
<script>
|
||||||
|
|
||||||
|
var map;
|
||||||
|
|
||||||
|
function init(){
|
||||||
|
// setting restrictedExtent so that we can use the
|
||||||
|
// VirtualEarth-layers, see e.g.
|
||||||
|
// http://dev.openlayers.org/apidocs/files/OpenLayers/Layer/VirtualEarth-js.html
|
||||||
|
var restrictedExtent = new OpenLayers.Bounds(-180, -90,
|
||||||
|
180, 90);
|
||||||
|
|
||||||
|
map = new OpenLayers.Map("map");
|
||||||
|
|
||||||
|
map.addControl(new OpenLayers.Control.LayerSwitcher());
|
||||||
|
|
||||||
|
var shaded = new OpenLayers.Layer.VirtualEarth("Shaded", {
|
||||||
|
type: VEMapStyle.Shaded
|
||||||
|
});
|
||||||
|
var hybrid = new OpenLayers.Layer.VirtualEarth("Hybrid", {
|
||||||
|
type: VEMapStyle.Hybrid
|
||||||
|
});
|
||||||
|
var aerial = new OpenLayers.Layer.VirtualEarth("Aerial", {
|
||||||
|
type: VEMapStyle.Aerial
|
||||||
|
});
|
||||||
|
|
||||||
|
map.addLayers([shaded, hybrid, aerial]);
|
||||||
|
|
||||||
|
map.setCenter(new OpenLayers.LonLat(-110, 45), 3);
|
||||||
|
}
|
||||||
|
|
||||||
|
</script>
|
||||||
|
</head>
|
||||||
|
<body onload="init()">
|
||||||
|
<h1 id="title">Bing Example</h1>
|
||||||
|
|
||||||
|
<div id="tags">
|
||||||
|
Bing, Microsoft, Virtual Earth
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<p id="shortdesc">
|
||||||
|
Demonstrates the use of Bing layers.
|
||||||
|
</p>
|
||||||
|
|
||||||
|
<div id="map" class="smallmap"></div>
|
||||||
|
<div id="docs">This example demonstrates the ability to create layers using tiles from Bing maps.</div>
|
||||||
|
</body>
|
||||||
|
</html>
|
||||||
|
|
||||||
|
|
||||||
@@ -1,6 +1,8 @@
|
|||||||
<html xmlns="http://www.w3.org/1999/xhtml">
|
<html xmlns="http://www.w3.org/1999/xhtml">
|
||||||
<head>
|
<head>
|
||||||
<title>OpenLayers Boxes Example</title>
|
<meta name="viewport" content="width=device-width; initial-scale=1.0; maximum-scale=1.0; user-scalable=0;" />
|
||||||
|
<meta name="apple-mobile-web-app-capable" content="yes" />
|
||||||
|
<title>OpenLayers Boxes Vector Example</title>
|
||||||
<link rel="stylesheet" href="../theme/default/style.css" type="text/css" />
|
<link rel="stylesheet" href="../theme/default/style.css" type="text/css" />
|
||||||
<link rel="stylesheet" href="style.css" type="text/css" />
|
<link rel="stylesheet" href="style.css" type="text/css" />
|
||||||
<script src="../lib/OpenLayers.js"></script>
|
<script src="../lib/OpenLayers.js"></script>
|
||||||
@@ -16,7 +18,7 @@
|
|||||||
map = new OpenLayers.Map('map');
|
map = new OpenLayers.Map('map');
|
||||||
|
|
||||||
var ol_wms = new OpenLayers.Layer.WMS( "OpenLayers WMS",
|
var ol_wms = new OpenLayers.Layer.WMS( "OpenLayers WMS",
|
||||||
"http://labs.metacarta.com/wms/vmap0?", {layers: 'basic'} );
|
"http://vmap0.tiles.osgeo.org/wms/vmap0?", {layers: 'basic'} );
|
||||||
|
|
||||||
var boxes = new OpenLayers.Layer.Vector( "Boxes" );
|
var boxes = new OpenLayers.Layer.Vector( "Boxes" );
|
||||||
|
|
||||||
@@ -38,9 +40,10 @@
|
|||||||
</script>
|
</script>
|
||||||
</head>
|
</head>
|
||||||
<body onload="init()">
|
<body onload="init()">
|
||||||
<h1 id="title">Boxes Example</h1>
|
<h1 id="title">Boxes Example Vector</h1>
|
||||||
|
|
||||||
<div id="tags">
|
<div id="tags">
|
||||||
|
box, vector, annotation
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<p id="shortdesc">
|
<p id="shortdesc">
|
||||||
|
|||||||
@@ -1,5 +1,7 @@
|
|||||||
<html xmlns="http://www.w3.org/1999/xhtml">
|
<html xmlns="http://www.w3.org/1999/xhtml">
|
||||||
<head>
|
<head>
|
||||||
|
<meta name="viewport" content="width=device-width; initial-scale=1.0; maximum-scale=1.0; user-scalable=0;" />
|
||||||
|
<meta name="apple-mobile-web-app-capable" content="yes" />
|
||||||
<title>OpenLayers Boxes Example</title>
|
<title>OpenLayers Boxes Example</title>
|
||||||
<link rel="stylesheet" href="../theme/default/style.css" type="text/css" />
|
<link rel="stylesheet" href="../theme/default/style.css" type="text/css" />
|
||||||
<link rel="stylesheet" href="style.css" type="text/css" />
|
<link rel="stylesheet" href="style.css" type="text/css" />
|
||||||
@@ -16,7 +18,7 @@
|
|||||||
map = new OpenLayers.Map('map');
|
map = new OpenLayers.Map('map');
|
||||||
|
|
||||||
var ol_wms = new OpenLayers.Layer.WMS( "OpenLayers WMS",
|
var ol_wms = new OpenLayers.Layer.WMS( "OpenLayers WMS",
|
||||||
"http://labs.metacarta.com/wms/vmap0?", {layers: 'basic'} );
|
"http://vmap0.tiles.osgeo.org/wms/vmap0?", {layers: 'basic'} );
|
||||||
|
|
||||||
var boxes = new OpenLayers.Layer.Boxes( "Boxes" );
|
var boxes = new OpenLayers.Layer.Boxes( "Boxes" );
|
||||||
|
|
||||||
@@ -40,6 +42,7 @@
|
|||||||
<h1 id="title">Boxes Example</h1>
|
<h1 id="title">Boxes Example</h1>
|
||||||
|
|
||||||
<div id="tags">
|
<div id="tags">
|
||||||
|
box, annotation
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<p id="shortdesc">
|
<p id="shortdesc">
|
||||||
|
|||||||
@@ -1,89 +0,0 @@
|
|||||||
<html xmlns="http://www.w3.org/1999/xhtml">
|
|
||||||
<head>
|
|
||||||
<title>OpenLayers Example</title>
|
|
||||||
<link rel="stylesheet" href="../theme/default/style.css" type="text/css" />
|
|
||||||
<link rel="stylesheet" href="style.css" type="text/css" />
|
|
||||||
<script src="../lib/OpenLayers.js"></script>
|
|
||||||
<script type="text/javascript">
|
|
||||||
// making this a global variable so that it is accessible for
|
|
||||||
// debugging/inspecting in Firebug
|
|
||||||
var map = null;
|
|
||||||
|
|
||||||
function init(){
|
|
||||||
|
|
||||||
//set title name to include Browser Detection
|
|
||||||
// this is the only way to test the functionality
|
|
||||||
// of the getBrowserName() function
|
|
||||||
//
|
|
||||||
var header = OpenLayers.Util.getElement("browserHeader");
|
|
||||||
header.innerHTML = "(browser: ";
|
|
||||||
var browserCode = OpenLayers.Util.getBrowserName();
|
|
||||||
switch (browserCode) {
|
|
||||||
case "opera":
|
|
||||||
browserName = "Opera";
|
|
||||||
break;
|
|
||||||
case "msie":
|
|
||||||
browserName = "Internet Explorer";
|
|
||||||
break;
|
|
||||||
case "safari":
|
|
||||||
browserName = "Safari";
|
|
||||||
break;
|
|
||||||
case "firefox":
|
|
||||||
browserName = "FireFox";
|
|
||||||
break;
|
|
||||||
case "mozilla":
|
|
||||||
browserName = "Mozilla";
|
|
||||||
break;
|
|
||||||
default:
|
|
||||||
browserName = "detection error"
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
header.innerHTML += browserName + ")";
|
|
||||||
|
|
||||||
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://t1.hypercube.telascience.org/cgi-bin/landsat7",
|
|
||||||
{layers: "landsat7"}, 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 id="title" style="display:inline;">Example Showing Browser Name</h1>
|
|
||||||
<h3 id="browserHeader" style="display:inline;"></h3>
|
|
||||||
|
|
||||||
<div id="tags"></div>
|
|
||||||
|
|
||||||
<p id="shortdesc">
|
|
||||||
Demonstrate a simple map that shows the browser name.
|
|
||||||
</p>
|
|
||||||
|
|
||||||
<div id="map" class="smallmap"></div>
|
|
||||||
|
|
||||||
<div id="docs"></div>
|
|
||||||
</body>
|
|
||||||
</html>
|
|
||||||
151
examples/browser.html
Normal file
151
examples/browser.html
Normal file
@@ -0,0 +1,151 @@
|
|||||||
|
<!DOCTYPE html>
|
||||||
|
<html>
|
||||||
|
<head>
|
||||||
|
<meta name="viewport" content="width=device-width; initial-scale=1.0; maximum-scale=1.0; user-scalable=0;"/>
|
||||||
|
<meta name="apple-mobile-web-app-capable" content="yes"/>
|
||||||
|
<title>OpenLayers Browser Detection</title>
|
||||||
|
<link rel="stylesheet" href="../theme/default/style.css" type="text/css"/>
|
||||||
|
<link rel="stylesheet" href="style.css" type="text/css"/>
|
||||||
|
<script type="text/javascript" src="browser.js"></script>
|
||||||
|
<style type="text/css">
|
||||||
|
.olControlAttribution {
|
||||||
|
bottom: 5px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.tester {
|
||||||
|
margin: 3px;
|
||||||
|
}
|
||||||
|
</style>
|
||||||
|
<script type="text/javascript">
|
||||||
|
function init() {
|
||||||
|
var result = document.getElementById('result');
|
||||||
|
result.innerHTML = result.innerHTML + "Browser CodeName: " + navigator.appCodeName + '<br>';
|
||||||
|
result.innerHTML = result.innerHTML + "Browser Name: " + navigator.appName + '<br>';
|
||||||
|
result.innerHTML = result.innerHTML + "Browser Version: " + navigator.appVersion + '<br>';
|
||||||
|
result.innerHTML = result.innerHTML + "Cookies Enabled: " + navigator.cookieEnabled + '<br>';
|
||||||
|
result.innerHTML = result.innerHTML + "Platform: " + navigator.platform + '<br>';
|
||||||
|
result.innerHTML = result.innerHTML + 'User agent: ' + navigator.userAgent + '<br>';
|
||||||
|
divResult('mouse', 'click', null, result);
|
||||||
|
divResult('mouse', 'dblclick', null, result);
|
||||||
|
divResult('mouse', 'mousedown', null, result);
|
||||||
|
divResult('mouse', 'mouseup', null, result);
|
||||||
|
divResult('mouse', 'mouseover', null, result);
|
||||||
|
divResult('mouse', 'mousemove', null, result);
|
||||||
|
divResult('mouse', 'mouseout', null, result);
|
||||||
|
|
||||||
|
divResult('key', 'keypress', null, result);
|
||||||
|
divResult('key', 'keydown', null, result);
|
||||||
|
divResult('key', 'keyup', null, result);
|
||||||
|
|
||||||
|
divResult('HTML', 'load', null, result);
|
||||||
|
divResult('HTML', 'unload', window, result);
|
||||||
|
divResult('HTML', 'abort', null, result);
|
||||||
|
divResult('HTML', 'error', null, result);
|
||||||
|
|
||||||
|
divResult('view', 'resize', window, result);
|
||||||
|
divResult('view', 'scroll', null, result);
|
||||||
|
|
||||||
|
divResult('form', 'submit', null, result);
|
||||||
|
divResult('form', 'reset', null, result);
|
||||||
|
|
||||||
|
divResult('form control', 'select', null, result);
|
||||||
|
divResult('form control', 'change', null, result);
|
||||||
|
|
||||||
|
divResult('activation', 'focus', null, result);
|
||||||
|
divResult('activation', 'blur', null, result);
|
||||||
|
|
||||||
|
divResult('touch', 'touchstart', null, result);
|
||||||
|
divResult('touch', 'touchend', null, result);
|
||||||
|
divResult('touch', 'touchmove', null, result);
|
||||||
|
divResult('touch', 'touchcancel', null, result);
|
||||||
|
|
||||||
|
divResult('gesture', 'gesturestart', null, result);
|
||||||
|
divResult('gesture', 'gesturechange', null, result);
|
||||||
|
divResult('gesture', 'gestureend', null, result);
|
||||||
|
|
||||||
|
divResult('HTML5', 'hashchange', document.body, result);
|
||||||
|
divResult('HTML5', 'online', document.body, result);
|
||||||
|
divResult('HTML5', 'offline', document.body, result);
|
||||||
|
divResult('HTML5', 'message', window, result);
|
||||||
|
divResult('HTML5', 'undo', document.body, result);
|
||||||
|
divResult('HTML5', 'redo', document.body, result);
|
||||||
|
divResult('HTML5', 'storage', window, result);
|
||||||
|
divResult('HTML5', 'popstate', window, result);
|
||||||
|
divResult('HTML5', 'canplay', document.createElement('video'), result);
|
||||||
|
divResult('HTML5', 'seeking', document.createElement('video'), result);
|
||||||
|
divResult('HTML5', 'seekend', document.createElement('video'), result);
|
||||||
|
|
||||||
|
divResult('orientation', 'deviceorientation', window, result);
|
||||||
|
divResult('orientation', 'mozorientation', window, result);
|
||||||
|
divResult('orientation', 'devicemotion', window, result);
|
||||||
|
}
|
||||||
|
</script>
|
||||||
|
</head>
|
||||||
|
<body onload="init()">
|
||||||
|
<h1 id="title">Browser detection</h1>
|
||||||
|
|
||||||
|
<div id="tags">
|
||||||
|
browser, vendor, mobile, events, HTML5, gesture, touch
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<p id="shortdesc">
|
||||||
|
The goal of this script is to inform about the capacity of the browser used by the user.
|
||||||
|
</p>
|
||||||
|
|
||||||
|
<div id="docs">
|
||||||
|
<p>
|
||||||
|
See the <a href="browser.js" target="_blank">
|
||||||
|
browser.js source</a> to see how this is done.
|
||||||
|
</p>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<h1>Your browser information</h1>
|
||||||
|
|
||||||
|
<div id="result">
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<h1>Click or touch the red square to get information about the selected events</h1>
|
||||||
|
|
||||||
|
<div>
|
||||||
|
<div class="tester">
|
||||||
|
<INPUT TYPE=CHECKBOX ID="clickID" checked>click<BR>
|
||||||
|
<INPUT TYPE=CHECKBOX ID="dblclickID">dblclick<BR>
|
||||||
|
<INPUT TYPE=CHECKBOX ID="mousedownID">mousedown<BR>
|
||||||
|
<INPUT TYPE=CHECKBOX ID="mouseupID">mouseup<BR>
|
||||||
|
<INPUT TYPE=CHECKBOX ID="mouseoverID">mouseover<BR>
|
||||||
|
<INPUT TYPE=CHECKBOX ID="mousemoveID">mousemove<BR>
|
||||||
|
<INPUT TYPE=CHECKBOX ID="mouseoutID">mouseout<BR>
|
||||||
|
<INPUT TYPE=CHECKBOX ID="touchstartID">touchstart<BR>
|
||||||
|
<INPUT TYPE=CHECKBOX ID="touchendID">touchend<BR>
|
||||||
|
<INPUT TYPE=CHECKBOX ID="touchmoveID">touchmove<BR>
|
||||||
|
<INPUT TYPE=CHECKBOX ID="touchcancelID">touchcancel<BR>
|
||||||
|
<INPUT TYPE=CHECKBOX ID="gesturestartID">gesturestart<BR>
|
||||||
|
<INPUT TYPE=CHECKBOX ID="gesturechangeID">gesturechange<BR>
|
||||||
|
<INPUT TYPE=CHECKBOX ID="gestureendID">gestureend<BR>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div style="height: 200px;width: 200px;" class="tester">
|
||||||
|
<div id="box" style="height: 200px; width: 200px; background: none repeat scroll 0% 0% red; "
|
||||||
|
onclick="click(event)"
|
||||||
|
ondblclick="dblclick(event)"
|
||||||
|
onmousedown="mousedown(event)"
|
||||||
|
onmouseup="mouseup(event)"
|
||||||
|
onmouseover="mouseover(event)"
|
||||||
|
onmousemove="mousemove(event)"
|
||||||
|
onmouseout="mouseout(event)"
|
||||||
|
ontouchstart="touchstart(event)"
|
||||||
|
ontouchend="touchend(event)"
|
||||||
|
ontouchmove="touchmove(event)"
|
||||||
|
ontouchcancel="touchcancel(event)"
|
||||||
|
ongesturestart="gesturestart(event)"
|
||||||
|
ongesturechange="gesturechange(event)"
|
||||||
|
ongestureend="gestureend(event)">
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div id="log" class="tester"></div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
</body>
|
||||||
|
</html>
|
||||||
241
examples/browser.js
Normal file
241
examples/browser.js
Normal file
@@ -0,0 +1,241 @@
|
|||||||
|
var isEventSupported = (function(undef) {
|
||||||
|
|
||||||
|
var TAGNAMES = {
|
||||||
|
'select':'input',
|
||||||
|
'change':'input',
|
||||||
|
'submit':'form',
|
||||||
|
'reset':'form',
|
||||||
|
'error':'img',
|
||||||
|
'load':'img',
|
||||||
|
'abort':'img'
|
||||||
|
};
|
||||||
|
|
||||||
|
function isEventSupported(eventName, element) {
|
||||||
|
element = element || document.createElement(TAGNAMES[eventName] || 'div');
|
||||||
|
eventName = 'on' + eventName;
|
||||||
|
|
||||||
|
var isSupported = (eventName in element);
|
||||||
|
|
||||||
|
if (!isSupported) {
|
||||||
|
// if it has no `setAttribute` (i.e. doesn't implement Node interface), try generic element
|
||||||
|
if (!element.setAttribute) {
|
||||||
|
element = document.createElement('div');
|
||||||
|
}
|
||||||
|
if (element.setAttribute && element.removeAttribute) {
|
||||||
|
element.setAttribute(eventName, '');
|
||||||
|
isSupported = typeof element[eventName] == 'function';
|
||||||
|
|
||||||
|
// if property was created, "remove it" (by setting value to `undefined`)
|
||||||
|
if (typeof element[eventName] != 'undefined') {
|
||||||
|
element[eventName] = undef;
|
||||||
|
}
|
||||||
|
element.removeAttribute(eventName);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
element = null;
|
||||||
|
return isSupported;
|
||||||
|
}
|
||||||
|
|
||||||
|
return isEventSupported;
|
||||||
|
})();
|
||||||
|
|
||||||
|
function divResult(category, name, element, div) {
|
||||||
|
div.innerHTML = div.innerHTML + category + " " + name + ": ";
|
||||||
|
div.innerHTML = div.innerHTML + (
|
||||||
|
isEventSupported(name, element)
|
||||||
|
? '<span style="background-color:green;color:white;">true</span></td>'
|
||||||
|
: '<span style="background-color:red;color:white;">false</span></td>'
|
||||||
|
);
|
||||||
|
div.innerHTML = div.innerHTML + "<br>";
|
||||||
|
}
|
||||||
|
var counter = 1;
|
||||||
|
|
||||||
|
function log(title, detail) {
|
||||||
|
var logDiv = document.getElementById("log");
|
||||||
|
idString = "'id" + counter + "'";
|
||||||
|
var newlink = document.createElement('a');
|
||||||
|
newlink.setAttribute('href', "javascript:toggle_visibility(" + idString + ")");
|
||||||
|
newlink.innerHTML = counter + ". " + title;
|
||||||
|
var br1 = document.createElement('br');
|
||||||
|
logDiv.appendChild(newlink);
|
||||||
|
logDiv.appendChild(br1);
|
||||||
|
|
||||||
|
var childDiv = document.createElement('div');
|
||||||
|
childDiv.setAttribute("id", idString.replace("'", "").replace("'", ""));
|
||||||
|
childDiv.setAttribute("style", 'display: none; margin-left : 5px;');
|
||||||
|
childDiv.innerHTML = detail;
|
||||||
|
var br2 = document.createElement('br');
|
||||||
|
logDiv.appendChild(childDiv);
|
||||||
|
|
||||||
|
counter = counter + 1;
|
||||||
|
}
|
||||||
|
|
||||||
|
function inspect(obj) {
|
||||||
|
if (typeof obj === "undefined") {
|
||||||
|
return "undefined";
|
||||||
|
}
|
||||||
|
var _props = [];
|
||||||
|
|
||||||
|
for (var i in obj) {
|
||||||
|
_props.push(i + " : " + obj[i]);
|
||||||
|
}
|
||||||
|
return " {" + _props.join(",<br>") + "} ";
|
||||||
|
}
|
||||||
|
|
||||||
|
function click(e) {
|
||||||
|
if (document.getElementById("clickID").checked) {
|
||||||
|
var box = document.getElementById("box");
|
||||||
|
log(e.type, inspect(e));
|
||||||
|
if (e.preventDefault) e.preventDefault();
|
||||||
|
}
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
function dblclick(e) {
|
||||||
|
if (document.getElementById("dblclickID").checked) {
|
||||||
|
var box = document.getElementById("box");
|
||||||
|
log(e.type, inspect(e));
|
||||||
|
if (e.preventDefault) e.preventDefault();
|
||||||
|
}
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
function mousedown(e) {
|
||||||
|
if (document.getElementById("mousedownID").checked) {
|
||||||
|
var box = document.getElementById("box");
|
||||||
|
log(e.type, inspect(e));
|
||||||
|
if (e.preventDefault) e.preventDefault();
|
||||||
|
}
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
function mouseup(e) {
|
||||||
|
if (document.getElementById("mouseupID").checked) {
|
||||||
|
var box = document.getElementById("box");
|
||||||
|
log(e.type, inspect(e));
|
||||||
|
if (e.preventDefault) e.preventDefault();
|
||||||
|
}
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
function mouseover(e) {
|
||||||
|
if (document.getElementById("mouseoverID").checked) {
|
||||||
|
var box = document.getElementById("box");
|
||||||
|
log(e.type, inspect(e));
|
||||||
|
if (e.preventDefault) e.preventDefault();
|
||||||
|
}
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
function mousemove(e) {
|
||||||
|
if (document.getElementById("mousemoveID").checked) {
|
||||||
|
var box = document.getElementById("box");
|
||||||
|
log(e.type, inspect(e));
|
||||||
|
if (e.preventDefault) e.preventDefault();
|
||||||
|
}
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
function mouseout(e) {
|
||||||
|
if (document.getElementById("mouseoutID").checked) {
|
||||||
|
var box = document.getElementById("box");
|
||||||
|
log(e.type, inspect(e));
|
||||||
|
if (e.preventDefault) e.preventDefault();
|
||||||
|
}
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
function touchstart(e) {
|
||||||
|
if (document.getElementById("touchstartID").checked) {
|
||||||
|
var box = document.getElementById("box");
|
||||||
|
var result = inspect(e);
|
||||||
|
for (var i = 0; i < e.touches.length; i++) {
|
||||||
|
result = result + "<br> Touches nr." + i + " <br>" + inspect(e.touches[i]);
|
||||||
|
}
|
||||||
|
log(e.type, result);
|
||||||
|
if (e.preventDefault) e.preventDefault();
|
||||||
|
}
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
function touchend(e) {
|
||||||
|
if (document.getElementById("touchendID").checked) {
|
||||||
|
var box = document.getElementById("box");
|
||||||
|
var result = inspect(e);
|
||||||
|
for (var i = 0; i < e.touches.length; i++) {
|
||||||
|
result = result + "<br> Touches nr." + i + " <br>" + inspect(e.touches[i]);
|
||||||
|
}
|
||||||
|
log(e.type, result);
|
||||||
|
if (e.preventDefault) e.preventDefault();
|
||||||
|
}
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
function touchmove(e) {
|
||||||
|
if (document.getElementById("touchmoveID").checked) {
|
||||||
|
var targetEvent = e.touches.item(0);
|
||||||
|
var box = document.getElementById("box");
|
||||||
|
box.style.left = targetEvent.clientX + "px";
|
||||||
|
box.style.top = targetEvent.clientY + "px";
|
||||||
|
var result = inspect(e);
|
||||||
|
for (var i = 0; i < e.touches.length; i++) {
|
||||||
|
result = result + "<br> Touches nr." + i + " <br>" + inspect(e.touches[i]);
|
||||||
|
}
|
||||||
|
log(e.type, result);
|
||||||
|
if (e.preventDefault) e.preventDefault();
|
||||||
|
}
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
function touchcancel(e) {
|
||||||
|
if (document.getElementById("touchcancelID").checked) {
|
||||||
|
var box = document.getElementById("box");
|
||||||
|
var result = inspect(e);
|
||||||
|
for (var i = 0; i < e.touches.length; i++) {
|
||||||
|
result = result + "<br> Touches nr." + i + " <br>" + inspect(e.touches[i]);
|
||||||
|
}
|
||||||
|
log(e.type, result);
|
||||||
|
if (e.preventDefault) e.preventDefault();
|
||||||
|
}
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
function gesturestart(e) {
|
||||||
|
if (document.getElementById("gesturestartID").checked) {
|
||||||
|
var box = document.getElementById("box");
|
||||||
|
log(e.type, inspect(e));
|
||||||
|
if (e.preventDefault) e.preventDefault();
|
||||||
|
}
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
function gesturechange(e) {
|
||||||
|
if (document.getElementById("gesturechangeID").checked) {
|
||||||
|
var box = document.getElementById("box");
|
||||||
|
log(e.type, inspect(e));
|
||||||
|
if (e.preventDefault) e.preventDefault();
|
||||||
|
}
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
function gestureend(e) {
|
||||||
|
if (document.getElementById("gestureendID").checked) {
|
||||||
|
var box = document.getElementById("box");
|
||||||
|
log(e.type, inspect(e));
|
||||||
|
if (e.preventDefault) e.preventDefault();
|
||||||
|
}
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
function toggle_visibility(id) {
|
||||||
|
var e = document.getElementById(id);
|
||||||
|
if (e.style.display == 'block') {
|
||||||
|
e.style.display = 'none';
|
||||||
|
} else {
|
||||||
|
e.style.display = 'block';
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
@@ -1,5 +1,7 @@
|
|||||||
<html xmlns="http://www.w3.org/1999/xhtml">
|
<html xmlns="http://www.w3.org/1999/xhtml">
|
||||||
<head>
|
<head>
|
||||||
|
<meta name="viewport" content="width=device-width; initial-scale=1.0; maximum-scale=1.0; user-scalable=0;" />
|
||||||
|
<meta name="apple-mobile-web-app-capable" content="yes" />
|
||||||
<title>OpenLayers Buffer Example</title>
|
<title>OpenLayers Buffer Example</title>
|
||||||
<link rel="stylesheet" href="../theme/default/style.css" type="text/css" />
|
<link rel="stylesheet" href="../theme/default/style.css" type="text/css" />
|
||||||
<link rel="stylesheet" href="style.css" type="text/css" />
|
<link rel="stylesheet" href="style.css" type="text/css" />
|
||||||
@@ -13,15 +15,15 @@
|
|||||||
function init(){
|
function init(){
|
||||||
map = new OpenLayers.Map( 'map' );
|
map = new OpenLayers.Map( 'map' );
|
||||||
layer = new OpenLayers.Layer.WMS( "0 buffer: OpenLayers WMS",
|
layer = new OpenLayers.Layer.WMS( "0 buffer: OpenLayers WMS",
|
||||||
"http://labs.metacarta.com/wms/vmap0",
|
"http://vmap0.tiles.osgeo.org/wms/vmap0",
|
||||||
{layers: 'basic'}, {'buffer':0} );
|
{layers: 'basic'}, {'buffer':0} );
|
||||||
map.addLayer(layer);
|
map.addLayer(layer);
|
||||||
layer = new OpenLayers.Layer.WMS( "1 buffer: OpenLayers WMS",
|
layer = new OpenLayers.Layer.WMS( "1 buffer: OpenLayers WMS",
|
||||||
"http://labs.metacarta.com/wms/vmap0",
|
"http://vmap0.tiles.osgeo.org/wms/vmap0",
|
||||||
{layers: 'basic'}, {'buffer':1} );
|
{layers: 'basic'}, {'buffer':1} );
|
||||||
map.addLayer(layer);
|
map.addLayer(layer);
|
||||||
layer = new OpenLayers.Layer.WMS( "4 buffer: OpenLayers WMS",
|
layer = new OpenLayers.Layer.WMS( "4 buffer: OpenLayers WMS",
|
||||||
"http://labs.metacarta.com/wms/vmap0",
|
"http://vmap0.tiles.osgeo.org/wms/vmap0",
|
||||||
{layers: 'basic'}, {'buffer':4} );
|
{layers: 'basic'}, {'buffer':4} );
|
||||||
map.addLayer(layer);
|
map.addLayer(layer);
|
||||||
map.addControl(new OpenLayers.Control.LayerSwitcher())
|
map.addControl(new OpenLayers.Control.LayerSwitcher())
|
||||||
@@ -33,6 +35,7 @@
|
|||||||
<h1 id="title">Buffer Example</h1>
|
<h1 id="title">Buffer Example</h1>
|
||||||
|
|
||||||
<div id="tags">
|
<div id="tags">
|
||||||
|
buffer, performance, tile
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<p id="shortdesc">
|
<p id="shortdesc">
|
||||||
|
|||||||
31
examples/canvas-hit-detection.html
Normal file
31
examples/canvas-hit-detection.html
Normal file
@@ -0,0 +1,31 @@
|
|||||||
|
<!DOCTYPE html>
|
||||||
|
<html>
|
||||||
|
<head>
|
||||||
|
<title>OpenLayers Canvas Hit Detection Example</title>
|
||||||
|
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||||
|
<meta name="viewport" content="width=device-width, user-scalable=no, initial-scale=1.0, maximum-scale=1.0;">
|
||||||
|
<meta name="apple-mobile-web-app-capable" content="yes">
|
||||||
|
<link rel="stylesheet" href="../theme/default/style.css" type="text/css">
|
||||||
|
<link rel="stylesheet" href="style.css" type="text/css">
|
||||||
|
<script src="../lib/OpenLayers.js"></script>
|
||||||
|
</head>
|
||||||
|
<body>
|
||||||
|
<h1 id="title">Feature Hit Detection with Canvas</h1>
|
||||||
|
<p id="shortdesc">
|
||||||
|
Demonstrates detection of feature hits with the canvas renderer.
|
||||||
|
</p>
|
||||||
|
<div id="map" class="smallmap"></div>
|
||||||
|
<div id="docs">
|
||||||
|
<p>
|
||||||
|
Click on the features above to see them selected. This example
|
||||||
|
uses the Canvas renderer so it only works on browsers where
|
||||||
|
canvas is supported.
|
||||||
|
</p>
|
||||||
|
<p>
|
||||||
|
View the <a href="canvas-hit-detection.js" target="_blank">canvas-hit-detection.js</a>
|
||||||
|
source to see how this is done.
|
||||||
|
</p>
|
||||||
|
</div>
|
||||||
|
<script src="canvas-hit-detection.js"></script>
|
||||||
|
</body>
|
||||||
|
</html>
|
||||||
88
examples/canvas-hit-detection.js
Normal file
88
examples/canvas-hit-detection.js
Normal file
@@ -0,0 +1,88 @@
|
|||||||
|
|
||||||
|
// create some sample features
|
||||||
|
var Feature = OpenLayers.Feature.Vector;
|
||||||
|
var Geometry = OpenLayers.Geometry;
|
||||||
|
var features = [
|
||||||
|
new Feature(new Geometry.Point(-90, 45)),
|
||||||
|
new Feature(
|
||||||
|
new Geometry.Point(0, 45),
|
||||||
|
{cls: "one"}
|
||||||
|
),
|
||||||
|
new Feature(
|
||||||
|
new Geometry.Point(90, 45),
|
||||||
|
{cls: "two"}
|
||||||
|
),
|
||||||
|
new Feature(
|
||||||
|
Geometry.fromWKT("LINESTRING(-110 -60, -80 -40, -50 -60, -20 -40)")
|
||||||
|
),
|
||||||
|
new Feature(
|
||||||
|
Geometry.fromWKT("POLYGON((20 -20, 110 -20, 110 -80, 20 -80, 20 -20), (40 -40, 90 -40, 90 -60, 40 -60, 40 -40))")
|
||||||
|
)
|
||||||
|
];
|
||||||
|
|
||||||
|
// create rule based styles
|
||||||
|
var Rule = OpenLayers.Rule;
|
||||||
|
var Filter = OpenLayers.Filter;
|
||||||
|
var style = new OpenLayers.Style({
|
||||||
|
pointRadius: 10,
|
||||||
|
strokeWidth: 3,
|
||||||
|
strokeOpacity: 0.7,
|
||||||
|
strokeColor: "navy",
|
||||||
|
fillColor: "#ffcc66",
|
||||||
|
fillOpacity: 1
|
||||||
|
}, {
|
||||||
|
rules: [
|
||||||
|
new Rule({
|
||||||
|
filter: new Filter.Comparison({
|
||||||
|
type: "==",
|
||||||
|
property: "cls",
|
||||||
|
value: "one"
|
||||||
|
}),
|
||||||
|
symbolizer: {
|
||||||
|
externalGraphic: "../img/marker-blue.png"
|
||||||
|
}
|
||||||
|
}),
|
||||||
|
new Rule({
|
||||||
|
filter: new Filter.Comparison({
|
||||||
|
type: "==",
|
||||||
|
property: "cls",
|
||||||
|
value: "two"
|
||||||
|
}),
|
||||||
|
symbolizer: {
|
||||||
|
externalGraphic: "../img/marker-green.png"
|
||||||
|
}
|
||||||
|
}),
|
||||||
|
new Rule({
|
||||||
|
elseFilter: true,
|
||||||
|
symbolizer: {
|
||||||
|
graphicName: "circle"
|
||||||
|
}
|
||||||
|
})
|
||||||
|
]
|
||||||
|
});
|
||||||
|
|
||||||
|
var layer = new OpenLayers.Layer.Vector(null, {
|
||||||
|
styleMap: new OpenLayers.StyleMap({
|
||||||
|
"default": style,
|
||||||
|
select: {
|
||||||
|
fillColor: "red",
|
||||||
|
pointRadius: 13,
|
||||||
|
strokeColor: "yellow",
|
||||||
|
strokeWidth: 3
|
||||||
|
}
|
||||||
|
}),
|
||||||
|
isBaseLayer: true,
|
||||||
|
renderers: ["Canvas"]
|
||||||
|
});
|
||||||
|
layer.addFeatures(features);
|
||||||
|
|
||||||
|
var map = new OpenLayers.Map({
|
||||||
|
div: "map",
|
||||||
|
layers: [layer],
|
||||||
|
center: new OpenLayers.LonLat(0, 0),
|
||||||
|
zoom: 0
|
||||||
|
});
|
||||||
|
|
||||||
|
var select = new OpenLayers.Control.SelectFeature(layer);
|
||||||
|
map.addControl(select);
|
||||||
|
select.activate();
|
||||||
52
examples/canvas-inspector.html
Normal file
52
examples/canvas-inspector.html
Normal file
@@ -0,0 +1,52 @@
|
|||||||
|
<!DOCTYPE html>
|
||||||
|
<html>
|
||||||
|
<head>
|
||||||
|
<title>OpenLayers Canvas Inspector</title>
|
||||||
|
<link rel="stylesheet" href="../theme/default/style.css" type="text/css">
|
||||||
|
<link rel="stylesheet" href="../theme/default/google.css" type="text/css">
|
||||||
|
<link rel="stylesheet" href="style.css" type="text/css">
|
||||||
|
<script src="../lib/OpenLayers.js"></script>
|
||||||
|
<script src="Jugl.js"></script>
|
||||||
|
<style>
|
||||||
|
#template {
|
||||||
|
display: none;
|
||||||
|
}
|
||||||
|
#inspector table {
|
||||||
|
border-right: 1px solid #666;
|
||||||
|
border-bottom: 1px solid #666;
|
||||||
|
}
|
||||||
|
#inspector table td {
|
||||||
|
font-size: 9px;
|
||||||
|
text-align: center;
|
||||||
|
width: 60px;
|
||||||
|
height: 60px;
|
||||||
|
border-top: 1px solid #666;
|
||||||
|
border-left: 1px solid #666;
|
||||||
|
}
|
||||||
|
</style>
|
||||||
|
</head>
|
||||||
|
<body>
|
||||||
|
<h1 id="title">Canvas Inspector</h1>
|
||||||
|
<p id="shortdesc">
|
||||||
|
Displays pixel values for canvas context.
|
||||||
|
</p>
|
||||||
|
<div id="map" class="smallmap"></div>
|
||||||
|
<div id="docs">
|
||||||
|
<p>
|
||||||
|
View the <a href="canvas-inspector.js" target="_blank">canvas-inspector.js</a>
|
||||||
|
source to see how this is done.
|
||||||
|
</p>
|
||||||
|
</div>
|
||||||
|
<div id="inspector">
|
||||||
|
</div>
|
||||||
|
<table id="template">
|
||||||
|
<tr jugl:repeat="row new Array(rows)">
|
||||||
|
<td jugl:repeat="col new Array(cols)"
|
||||||
|
jugl:attributes="id 'c' + repeat.col.index + 'r' + repeat.row.index">
|
||||||
|
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
</table>
|
||||||
|
<script src="canvas-inspector.js"></script>
|
||||||
|
</body>
|
||||||
|
</html>
|
||||||
91
examples/canvas-inspector.js
Normal file
91
examples/canvas-inspector.js
Normal file
@@ -0,0 +1,91 @@
|
|||||||
|
|
||||||
|
var features = [
|
||||||
|
|
||||||
|
new OpenLayers.Feature.Vector(
|
||||||
|
OpenLayers.Geometry.fromWKT(
|
||||||
|
"LINESTRING(-90 90, 90 -90)"
|
||||||
|
),
|
||||||
|
{color: "#0f0000"}
|
||||||
|
),
|
||||||
|
|
||||||
|
new OpenLayers.Feature.Vector(
|
||||||
|
OpenLayers.Geometry.fromWKT(
|
||||||
|
"LINESTRING(100 50, -100 -50)"
|
||||||
|
),
|
||||||
|
{color: "#00ff00"}
|
||||||
|
)
|
||||||
|
|
||||||
|
];
|
||||||
|
|
||||||
|
var layer = new OpenLayers.Layer.Vector(null, {
|
||||||
|
styleMap: new OpenLayers.StyleMap({
|
||||||
|
strokeWidth: 3,
|
||||||
|
strokeColor: "${color}"
|
||||||
|
}),
|
||||||
|
isBaseLayer: true,
|
||||||
|
renderers: ["Canvas"],
|
||||||
|
rendererOptions: {hitDetection: true}
|
||||||
|
});
|
||||||
|
layer.addFeatures(features);
|
||||||
|
|
||||||
|
var map = new OpenLayers.Map({
|
||||||
|
div: "map",
|
||||||
|
layers: [layer],
|
||||||
|
center: new OpenLayers.LonLat(0, 0),
|
||||||
|
zoom: 0
|
||||||
|
});
|
||||||
|
|
||||||
|
var xOff = 2, yOff = 2;
|
||||||
|
|
||||||
|
var rows = 1 + (2 * yOff);
|
||||||
|
var cols = 1 + (2 * xOff);
|
||||||
|
|
||||||
|
var template = new jugl.Template("template");
|
||||||
|
template.process({
|
||||||
|
clone: true,
|
||||||
|
parent: "inspector",
|
||||||
|
context: {
|
||||||
|
rows: rows,
|
||||||
|
cols: cols
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
function isDark(r, g, b, a) {
|
||||||
|
a = a / 255;
|
||||||
|
var da = 1 - a;
|
||||||
|
// convert color values to decimal (assume white background)
|
||||||
|
r = (a * r / 255) + da;
|
||||||
|
g = (a * g / 255) + da;
|
||||||
|
b = (a * b / 255) + da;
|
||||||
|
// use w3C brightness measure
|
||||||
|
var brightness = (r * 0.299) + (g * 0.587) + (b * 0.144);
|
||||||
|
return brightness < 0.5;
|
||||||
|
}
|
||||||
|
|
||||||
|
var context = layer.renderer.canvas; //layer.renderer.hitContext;
|
||||||
|
var size = map.getSize();
|
||||||
|
map.events.on({
|
||||||
|
mousemove: function(event) {
|
||||||
|
var x = event.xy.x - 1; // TODO: fix this elsewhere
|
||||||
|
var y = event.xy.y;
|
||||||
|
if ((x >= xOff) && (x < size.w - xOff) && (y >= yOff) && (y < size.h - yOff)) {
|
||||||
|
var data = context.getImageData(x - xOff, y - yOff, rows, cols).data;
|
||||||
|
var offset, red, green, blue, alpha, cell;
|
||||||
|
for (var i=0; i<cols; ++i) {
|
||||||
|
for (var j=0; j<rows; ++j) {
|
||||||
|
offset = (i * 4) + (j * 4 * cols);
|
||||||
|
red = data[offset];
|
||||||
|
green = data[offset + 1];
|
||||||
|
blue = data[offset + 2];
|
||||||
|
alpha = data[offset + 3];
|
||||||
|
cell = document.getElementById("c" + i + "r" + j);
|
||||||
|
cell.innerHTML = "R: " + red + "<br>G: " + green + "<br>B: " + blue + "<br>A: " + alpha;
|
||||||
|
cell.style.backgroundColor = "rgba(" + red + ", " + green + ", " + blue + ", " + (alpha / 255) + ")";
|
||||||
|
cell.style.color = isDark(red, green, blue, alpha) ? "#ffffff" : "#000000";
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
|
||||||
33
examples/canvas.html
Normal file
33
examples/canvas.html
Normal file
@@ -0,0 +1,33 @@
|
|||||||
|
<html xmlns="http://www.w3.org/1999/xhtml">
|
||||||
|
<head>
|
||||||
|
<meta name="viewport" content="width=device-width; initial-scale=1.0; maximum-scale=1.0; user-scalable=0;" />
|
||||||
|
<meta name="apple-mobile-web-app-capable" content="yes" />
|
||||||
|
<title>Canvas Renderer Example</title>
|
||||||
|
<link rel="stylesheet" href="../theme/default/style.css" type="text/css" />
|
||||||
|
<link rel="stylesheet" href="style.css" type="text/css" />
|
||||||
|
<script src="../lib/OpenLayers.js"></script>
|
||||||
|
<script src='http://maps.google.com/maps?file=api&v=2&key=ABQIAAAAjpkAC9ePGem0lIq5XcMiuhR_wWLPFku8Ix9i2SXYRVK3e45q1BQUd_beF8dtzKET_EteAjPdGDwqpQ'></script>
|
||||||
|
<script src="canvas.js"></script>
|
||||||
|
</head>
|
||||||
|
<body onload="init()">
|
||||||
|
<h1 id="title">Canvas Renderer Example</h1>
|
||||||
|
<div id="tags">
|
||||||
|
canvas, renderer, advanced,
|
||||||
|
</div>
|
||||||
|
<p id="shortdesc">
|
||||||
|
Demonstrates the use of the canvas renderer with a vector layer.
|
||||||
|
</p>
|
||||||
|
<div id="map" class="smallmap"></div>
|
||||||
|
<div id="docs">
|
||||||
|
<p>
|
||||||
|
This example shows a vector layer that uses the Canvas renderer
|
||||||
|
where available. The order of the renderers given in the layer
|
||||||
|
options is used to locate the first available renderer.
|
||||||
|
</p>
|
||||||
|
<p>
|
||||||
|
See the <a href="canvas.js" target="_blank">canvas.js source</a>
|
||||||
|
to see how this is done.
|
||||||
|
</p>
|
||||||
|
</div>
|
||||||
|
</body>
|
||||||
|
</html>
|
||||||
62
examples/canvas.js
Normal file
62
examples/canvas.js
Normal file
@@ -0,0 +1,62 @@
|
|||||||
|
var map, layer, styleMap;
|
||||||
|
OpenLayers.ProxyHost = "proxy.cgi?url=";
|
||||||
|
|
||||||
|
function init() {
|
||||||
|
map = new OpenLayers.Map({
|
||||||
|
div: "map",
|
||||||
|
projection: new OpenLayers.Projection("EPSG:900913"),
|
||||||
|
displayProjection: new OpenLayers.Projection("EPSG:4326"),
|
||||||
|
units: "m",
|
||||||
|
maxResolution: 156543.0339,
|
||||||
|
maxExtent: new OpenLayers.Bounds(
|
||||||
|
-20037508, -20037508, 20037508, 20037508
|
||||||
|
)
|
||||||
|
});
|
||||||
|
|
||||||
|
var g = new OpenLayers.Layer.Google("Google Layer", {
|
||||||
|
sphericalMercator: true
|
||||||
|
});
|
||||||
|
map.addLayers([g]);
|
||||||
|
|
||||||
|
// prepare to style the data
|
||||||
|
styleMap = new OpenLayers.StyleMap({
|
||||||
|
strokeColor: "black",
|
||||||
|
strokeWidth: 2,
|
||||||
|
strokeOpacity: 0.5,
|
||||||
|
fillOpacity: 0.2
|
||||||
|
});
|
||||||
|
|
||||||
|
// create a color table for state FIPS code
|
||||||
|
var colors = ["red", "orange", "yellow", "green", "blue", "purple"];
|
||||||
|
var code, fips = {};
|
||||||
|
for(var i=1; i<=66; ++i) {
|
||||||
|
code = "0" + i;
|
||||||
|
code = code.substring(code.length - 2);
|
||||||
|
fips[code] = {fillColor: colors[i % colors.length]};
|
||||||
|
}
|
||||||
|
// add unique value rules with your color lookup
|
||||||
|
styleMap.addUniqueValueRules("default", "STATE_FIPS", fips);
|
||||||
|
|
||||||
|
// create a vector layer using the canvas renderer (where available)
|
||||||
|
var wfs = new OpenLayers.Layer.Vector("States", {
|
||||||
|
strategies: [new OpenLayers.Strategy.BBOX()],
|
||||||
|
protocol: new OpenLayers.Protocol.WFS({
|
||||||
|
version: "1.1.0",
|
||||||
|
srsName: "EPSG:900913",
|
||||||
|
url: "http://v2.suite.opengeo.org/geoserver/wfs",
|
||||||
|
featureType: "states",
|
||||||
|
featureNS: "http://usa.opengeo.org"
|
||||||
|
}),
|
||||||
|
styleMap: styleMap,
|
||||||
|
renderers: ["Canvas", "SVG", "VML"]
|
||||||
|
});
|
||||||
|
map.addLayer(wfs);
|
||||||
|
|
||||||
|
// if you want to use Geographic coords, transform to ESPG:900913
|
||||||
|
var ddBounds = new OpenLayers.Bounds(
|
||||||
|
-73.839111,40.287907,-68.214111,44.441624
|
||||||
|
);
|
||||||
|
map.zoomToExtent(
|
||||||
|
ddBounds.transform(map.displayProjection, map.getProjectionObject())
|
||||||
|
);
|
||||||
|
}
|
||||||
@@ -1,5 +1,7 @@
|
|||||||
<html xmlns="http://www.w3.org/1999/xhtml">
|
<html xmlns="http://www.w3.org/1999/xhtml">
|
||||||
<head>
|
<head>
|
||||||
|
<meta name="viewport" content="width=device-width; initial-scale=1.0; maximum-scale=1.0; user-scalable=0;" />
|
||||||
|
<meta name="apple-mobile-web-app-capable" content="yes" />
|
||||||
<title>OpenLayers Click Handler Example</title>
|
<title>OpenLayers Click Handler Example</title>
|
||||||
|
|
||||||
<link rel="stylesheet" href="../theme/default/style.css" type="text/css" />
|
<link rel="stylesheet" href="../theme/default/style.css" type="text/css" />
|
||||||
@@ -16,7 +18,7 @@
|
|||||||
#east {
|
#east {
|
||||||
position: absolute;
|
position: absolute;
|
||||||
left: 370px;
|
left: 370px;
|
||||||
top: 3em;
|
top: 4em;
|
||||||
}
|
}
|
||||||
|
|
||||||
table td {
|
table td {
|
||||||
@@ -81,14 +83,14 @@
|
|||||||
map = new OpenLayers.Map('map');
|
map = new OpenLayers.Map('map');
|
||||||
var layer = new OpenLayers.Layer.WMS(
|
var layer = new OpenLayers.Layer.WMS(
|
||||||
"OpenLayers WMS",
|
"OpenLayers WMS",
|
||||||
"http://labs.metacarta.com/wms/vmap0",
|
"http://vmap0.tiles.osgeo.org/wms/vmap0",
|
||||||
{layers: 'basic'}
|
{layers: 'basic'}
|
||||||
);
|
);
|
||||||
map.addLayers([layer]);
|
map.addLayers([layer]);
|
||||||
|
|
||||||
controls = {
|
controls = {
|
||||||
"single": new OpenLayers.Control.Click({
|
"single": new OpenLayers.Control.Click({
|
||||||
hanlerOptions: {
|
handlerOptions: {
|
||||||
"single": true
|
"single": true
|
||||||
}
|
}
|
||||||
}),
|
}),
|
||||||
@@ -156,6 +158,7 @@
|
|||||||
<div id="west">
|
<div id="west">
|
||||||
|
|
||||||
<div id="tags">
|
<div id="tags">
|
||||||
|
event, events, propagation, advanced
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<p id="shortdesc">
|
<p id="shortdesc">
|
||||||
|
|||||||
@@ -1,5 +1,7 @@
|
|||||||
<html xmlns="http://www.w3.org/1999/xhtml">
|
<html xmlns="http://www.w3.org/1999/xhtml">
|
||||||
<head>
|
<head>
|
||||||
|
<meta name="viewport" content="width=device-width; initial-scale=1.0; maximum-scale=1.0; user-scalable=0;" />
|
||||||
|
<meta name="apple-mobile-web-app-capable" content="yes" />
|
||||||
<title>OpenLayers Click Event Example</title>
|
<title>OpenLayers Click Event Example</title>
|
||||||
|
|
||||||
<link rel="stylesheet" href="../theme/default/style.css" type="text/css" />
|
<link rel="stylesheet" href="../theme/default/style.css" type="text/css" />
|
||||||
@@ -41,7 +43,7 @@
|
|||||||
map = new OpenLayers.Map('map');
|
map = new OpenLayers.Map('map');
|
||||||
|
|
||||||
var ol_wms = new OpenLayers.Layer.WMS( "OpenLayers WMS",
|
var ol_wms = new OpenLayers.Layer.WMS( "OpenLayers WMS",
|
||||||
"http://labs.metacarta.com/wms/vmap0?", {layers: 'basic'} );
|
"http://vmap0.tiles.osgeo.org/wms/vmap0?", {layers: 'basic'} );
|
||||||
|
|
||||||
var jpl_wms = new OpenLayers.Layer.WMS( "NASA Global Mosaic",
|
var jpl_wms = new OpenLayers.Layer.WMS( "NASA Global Mosaic",
|
||||||
"http://t1.hypercube.telascience.org/cgi-bin/landsat7",
|
"http://t1.hypercube.telascience.org/cgi-bin/landsat7",
|
||||||
@@ -65,17 +67,23 @@
|
|||||||
<h1 id="title">Click Event Example</h1>
|
<h1 id="title">Click Event Example</h1>
|
||||||
|
|
||||||
<div id="tags">
|
<div id="tags">
|
||||||
|
click control, double, doubleclick, double-click, event, events,
|
||||||
|
propagation
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<p id="shortdesc">
|
<p id="shortdesc">
|
||||||
This example shows the use of the click handler and getLonLatFromViewPortPx functions to trigger events on mouse click.
|
This example shows the use of the click handler and
|
||||||
|
getLonLatFromViewPortPx functions to trigger events on mouse click.
|
||||||
</p>
|
</p>
|
||||||
|
|
||||||
<div id="map" class="smallmap"></div>
|
<div id="map" class="smallmap"></div>
|
||||||
|
|
||||||
<div id="docs">
|
<div id="docs">
|
||||||
Using the Click handler allows you to (for example) catch clicks without catching double clicks, something that standard browser events don't do for you. (Try double clicking: you'll zoom in, whereas using the browser click event, you would just get two alerts.) This example click control shows you how to use it.
|
Using the Click handler allows you to (for example) catch clicks
|
||||||
|
without catching double clicks, something that standard browser
|
||||||
|
events don't do for you. (Try double clicking: you'll zoom in,
|
||||||
|
whereas using the browser click event, you would just get two
|
||||||
|
alerts.) This example click control shows you how to use it.
|
||||||
</div>
|
</div>
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
|||||||
@@ -1,5 +1,7 @@
|
|||||||
<html xmlns="http://www.w3.org/1999/xhtml">
|
<html xmlns="http://www.w3.org/1999/xhtml">
|
||||||
<head>
|
<head>
|
||||||
|
<meta name="viewport" content="width=device-width; initial-scale=1.0; maximum-scale=1.0; user-scalable=0;" />
|
||||||
|
<meta name="apple-mobile-web-app-capable" content="yes" />
|
||||||
<title>OpenLayers Map Controls Example</title>
|
<title>OpenLayers Map Controls Example</title>
|
||||||
|
|
||||||
<link rel="stylesheet" href="../theme/default/style.css" type="text/css" />
|
<link rel="stylesheet" href="../theme/default/style.css" type="text/css" />
|
||||||
@@ -10,8 +12,8 @@
|
|||||||
function init(){
|
function init(){
|
||||||
map = new OpenLayers.Map('map', {
|
map = new OpenLayers.Map('map', {
|
||||||
controls: [
|
controls: [
|
||||||
|
new OpenLayers.Control.Navigation(),
|
||||||
new OpenLayers.Control.PanZoomBar(),
|
new OpenLayers.Control.PanZoomBar(),
|
||||||
new OpenLayers.Control.MouseToolbar(),
|
|
||||||
new OpenLayers.Control.LayerSwitcher({'ascending':false}),
|
new OpenLayers.Control.LayerSwitcher({'ascending':false}),
|
||||||
new OpenLayers.Control.Permalink(),
|
new OpenLayers.Control.Permalink(),
|
||||||
new OpenLayers.Control.ScaleLine(),
|
new OpenLayers.Control.ScaleLine(),
|
||||||
@@ -23,25 +25,33 @@
|
|||||||
numZoomLevels: 6
|
numZoomLevels: 6
|
||||||
|
|
||||||
});
|
});
|
||||||
|
|
||||||
|
|
||||||
var ol_wms = new OpenLayers.Layer.WMS( "OpenLayers WMS",
|
var ol_wms = new OpenLayers.Layer.WMS(
|
||||||
"http://labs.metacarta.com/wms/vmap0",
|
"OpenLayers WMS",
|
||||||
{layers: 'basic'} );
|
"http://vmap0.tiles.osgeo.org/wms/vmap0",
|
||||||
var jpl_wms = new OpenLayers.Layer.WMS( "NASA Global Mosaic",
|
{layers: 'basic'}
|
||||||
"http://t1.hypercube.telascience.org/cgi-bin/landsat7",
|
);
|
||||||
{layers: "landsat7"});
|
|
||||||
var dm_wms = new OpenLayers.Layer.WMS( "DM Solutions Demo",
|
var gwc = new OpenLayers.Layer.WMS(
|
||||||
|
"Global Imagery",
|
||||||
|
"http://maps.opengeo.org/geowebcache/service/wms",
|
||||||
|
{layers: "bluemarble"},
|
||||||
|
{tileOrigin: new OpenLayers.LonLat(-180, -90)}
|
||||||
|
);
|
||||||
|
var dm_wms = new OpenLayers.Layer.WMS(
|
||||||
|
"DM Solutions Demo",
|
||||||
"http://www2.dmsolutions.ca/cgi-bin/mswms_gmap",
|
"http://www2.dmsolutions.ca/cgi-bin/mswms_gmap",
|
||||||
{layers: "bathymetry,land_fn,park,drain_fn,drainage," +
|
{layers: "bathymetry,land_fn,park,drain_fn,drainage," +
|
||||||
"prov_bound,fedlimit,rail,road,popplace",
|
"prov_bound,fedlimit,rail,road,popplace",
|
||||||
transparent: "true", format: "image/png" });
|
transparent: "true", format: "image/png"},
|
||||||
|
{visibility: false}
|
||||||
|
);
|
||||||
|
|
||||||
jpl_wms.setVisibility(false);
|
map.addLayers([ol_wms, gwc, dm_wms]);
|
||||||
dm_wms.setVisibility(false);
|
|
||||||
|
|
||||||
map.addLayers([ol_wms, jpl_wms, dm_wms]);
|
if (!map.getCenter()) {
|
||||||
if (!map.getCenter()) map.zoomToMaxExtent();
|
map.zoomToMaxExtent();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
</script>
|
</script>
|
||||||
</head>
|
</head>
|
||||||
@@ -49,14 +59,15 @@
|
|||||||
<h1 id="title">Map Controls Example</h1>
|
<h1 id="title">Map Controls Example</h1>
|
||||||
|
|
||||||
<div id="tags">
|
<div id="tags">
|
||||||
|
control, basic
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<p id="shortdesc">
|
<p id="shortdesc">
|
||||||
Attach zooming, panning, layer switcher, overview map, and permalink map controls to an OpenLayers window.
|
Attach zooming, panning, layer switcher, overview map, and permalink map controls to an OpenLayers window.
|
||||||
</p>
|
</p>
|
||||||
|
|
||||||
<a style="float:right" href="" id="permalink">Permalink</a>
|
|
||||||
<div id="map" class="smallmap"></div>
|
<div id="map" class="smallmap"></div>
|
||||||
|
<a href="#" id="permalink">Permalink</a>
|
||||||
|
|
||||||
<div id="docs"></div>
|
<div id="docs"></div>
|
||||||
</body>
|
</body>
|
||||||
|
|||||||
53
examples/cql-format.html
Normal file
53
examples/cql-format.html
Normal file
@@ -0,0 +1,53 @@
|
|||||||
|
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
|
||||||
|
<html>
|
||||||
|
<head>
|
||||||
|
<meta name="viewport" content="width=device-width; initial-scale=1.0; maximum-scale=1.0; user-scalable=0;" />
|
||||||
|
<meta name="apple-mobile-web-app-capable" content="yes" />
|
||||||
|
<title>
|
||||||
|
OpenLayers CQL Example
|
||||||
|
</title>
|
||||||
|
<link rel="stylesheet" href="../theme/default/style.css" type="text/css">
|
||||||
|
<link rel="stylesheet" href="style.css" type="text/css">
|
||||||
|
<style>
|
||||||
|
#cql {
|
||||||
|
width: 400px;
|
||||||
|
}
|
||||||
|
#output {
|
||||||
|
padding-top: 1em;
|
||||||
|
width: 512px;
|
||||||
|
height: 60px;
|
||||||
|
border: none;
|
||||||
|
color: #ff3333;
|
||||||
|
}
|
||||||
|
</style>
|
||||||
|
<script src="../lib/OpenLayers.js"></script>
|
||||||
|
</head>
|
||||||
|
<body>
|
||||||
|
<h1 id="title">CQL Filter Example</h1>
|
||||||
|
<div id="tags">
|
||||||
|
CQL, filter
|
||||||
|
</div>
|
||||||
|
<p id="shortdesc">
|
||||||
|
Demonstrate use the CQL filter.
|
||||||
|
</p>
|
||||||
|
<div id="map" class="smallmap"></div>
|
||||||
|
<div id="docs">
|
||||||
|
<p>
|
||||||
|
Enter text for a CQL filter to update the features displayed.
|
||||||
|
<br>
|
||||||
|
<form name="cql_form" id="cql_form">
|
||||||
|
<label for="cql">CQL</label>
|
||||||
|
<input id="cql" type="text" value="STATE_ABBR >= 'B' AND STATE_ABBR <= 'O'">
|
||||||
|
<input type="submit" value="update">
|
||||||
|
<input type="reset" value="reset">
|
||||||
|
</form>
|
||||||
|
<textarea id="output"></textarea>
|
||||||
|
</p><p>
|
||||||
|
View the <a href="cql-format.js" target="_blank">cql-format.js source</a>
|
||||||
|
to see how this is done.
|
||||||
|
</p>
|
||||||
|
</div>
|
||||||
|
<script src="cql-format.js"></script>
|
||||||
|
<script src="http://demo.opengeo.org/geoserver/wfs?service=WFS&version=1.0.0&request=GetFeature&typename=topp:states&outputFormat=json&format_options=callback:loadFeatures" type="text/javascript"></script>
|
||||||
|
</body>
|
||||||
|
</html>
|
||||||
61
examples/cql-format.js
Normal file
61
examples/cql-format.js
Normal file
@@ -0,0 +1,61 @@
|
|||||||
|
|
||||||
|
// use a CQL parser for easy filter creation
|
||||||
|
var format = new OpenLayers.Format.CQL();
|
||||||
|
|
||||||
|
// this rule will get a filter from the CQL text in the form
|
||||||
|
var rule = new OpenLayers.Rule({
|
||||||
|
// We could also set a filter here. E.g.
|
||||||
|
// filter: format.read("STATE_ABBR >= 'B' AND STATE_ABBR <= 'O'"),
|
||||||
|
symbolizer: {
|
||||||
|
fillColor: "#ff0000",
|
||||||
|
strokeColor: "#ffcccc",
|
||||||
|
fillOpacity: "0.5"
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
var states = new OpenLayers.Layer.Vector("States", {
|
||||||
|
styleMap: new OpenLayers.StyleMap({
|
||||||
|
"default": new OpenLayers.Style(null, {rules: [rule]})
|
||||||
|
})
|
||||||
|
});
|
||||||
|
|
||||||
|
var map = new OpenLayers.Map({
|
||||||
|
div: "map",
|
||||||
|
layers: [
|
||||||
|
new OpenLayers.Layer.WMS(
|
||||||
|
"OpenLayers WMS",
|
||||||
|
"http://maps.opengeo.org/geowebcache/service/wms",
|
||||||
|
{layers: "openstreetmap", format: "image/png"}
|
||||||
|
),
|
||||||
|
states
|
||||||
|
],
|
||||||
|
center: new OpenLayers.LonLat(-101, 39),
|
||||||
|
zoom: 3
|
||||||
|
});
|
||||||
|
|
||||||
|
// called when features are fetched
|
||||||
|
function loadFeatures(data) {
|
||||||
|
var features = new OpenLayers.Format.GeoJSON().read(data);
|
||||||
|
states.addFeatures(features);
|
||||||
|
};
|
||||||
|
|
||||||
|
// update filter and redraw when form is submitted
|
||||||
|
var cql = document.getElementById("cql");
|
||||||
|
var output = document.getElementById("output");
|
||||||
|
function updateFilter() {
|
||||||
|
var filter;
|
||||||
|
try {
|
||||||
|
filter = format.read(cql.value);
|
||||||
|
} catch (err) {
|
||||||
|
output.value = err.message;
|
||||||
|
}
|
||||||
|
if (filter) {
|
||||||
|
output.value = "";
|
||||||
|
rule.filter = filter;
|
||||||
|
states.redraw();
|
||||||
|
}
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
updateFilter();
|
||||||
|
var form = document.getElementById("cql_form");
|
||||||
|
form.onsubmit = updateFilter;
|
||||||
35
examples/cross-origin.html
Normal file
35
examples/cross-origin.html
Normal file
@@ -0,0 +1,35 @@
|
|||||||
|
<!DOCTYPE html>
|
||||||
|
<html>
|
||||||
|
<head>
|
||||||
|
<title>OpenLayers Script Protocol Example</title>
|
||||||
|
<link rel="stylesheet" href="../theme/default/style.css" type="text/css">
|
||||||
|
<link rel="stylesheet" href="style.css" type="text/css">
|
||||||
|
<meta name="viewport" content="width=device-width; initial-scale=1.0; maximum-scale=1.0; user-scalable=0;" />
|
||||||
|
<meta name="apple-mobile-web-app-capable" content="yes" />
|
||||||
|
<script src="../lib/OpenLayers.js"></script>
|
||||||
|
</head>
|
||||||
|
<body>
|
||||||
|
<h1 id="title">Script Protocol</h1>
|
||||||
|
<div id="tags">
|
||||||
|
protocol, script, cross origin, advanced
|
||||||
|
</div>
|
||||||
|
<p id="shortdesc">
|
||||||
|
Demonstrates the use of a script protocol for making feature requests
|
||||||
|
cross origin.
|
||||||
|
</p>
|
||||||
|
<div id="map" class="smallmap"></div>
|
||||||
|
<div id="docs">
|
||||||
|
<p>
|
||||||
|
In cases where a service returns serialized features and accepts
|
||||||
|
a named callback (e.g. http://example.com/features.json?callback=foo),
|
||||||
|
the script protocol can be used to read features without being
|
||||||
|
restricted by the same origin policy.
|
||||||
|
</p>
|
||||||
|
<p>
|
||||||
|
View the <a href="cross-origin.js" target="_blank">cross-origin.js</a>
|
||||||
|
source to see how this is done
|
||||||
|
</p>
|
||||||
|
</div>
|
||||||
|
<script src="cross-origin.js"></script>
|
||||||
|
</body>
|
||||||
|
</html>
|
||||||
39
examples/cross-origin.js
Normal file
39
examples/cross-origin.js
Normal file
@@ -0,0 +1,39 @@
|
|||||||
|
var map = new OpenLayers.Map({
|
||||||
|
div: "map",
|
||||||
|
layers: [
|
||||||
|
new OpenLayers.Layer.WMS(
|
||||||
|
"World Map",
|
||||||
|
"http://maps.opengeo.org/geowebcache/service/wms",
|
||||||
|
{layers: "bluemarble"}
|
||||||
|
),
|
||||||
|
new OpenLayers.Layer.Vector("States", {
|
||||||
|
strategies: [new OpenLayers.Strategy.BBOX()],
|
||||||
|
protocol: new OpenLayers.Protocol.Script({
|
||||||
|
url: "http://suite.opengeo.org/geoserver/wfs",
|
||||||
|
callbackKey: "format_options",
|
||||||
|
callbackPrefix: "callback:",
|
||||||
|
params: {
|
||||||
|
service: "WFS",
|
||||||
|
version: "1.1.0",
|
||||||
|
srsName: "EPSG:4326",
|
||||||
|
request: "GetFeature",
|
||||||
|
typeName: "world:cities",
|
||||||
|
outputFormat: "json"
|
||||||
|
},
|
||||||
|
filterToParams: function(filter, params) {
|
||||||
|
// example to demonstrate BBOX serialization
|
||||||
|
if (filter.type === OpenLayers.Filter.Spatial.BBOX) {
|
||||||
|
params.bbox = filter.value.toArray();
|
||||||
|
if (filter.projection) {
|
||||||
|
params.bbox.push(filter.projection.getCode());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return params;
|
||||||
|
}
|
||||||
|
})
|
||||||
|
})
|
||||||
|
],
|
||||||
|
center: new OpenLayers.LonLat(0, 0),
|
||||||
|
zoom: 1
|
||||||
|
});
|
||||||
|
|
||||||
@@ -1,56 +0,0 @@
|
|||||||
<html xmlns="http://www.w3.org/1999/xhtml">
|
|
||||||
<head>
|
|
||||||
<title>OpenLayers Custom Control Point Examle</title>
|
|
||||||
<link rel="stylesheet" href="../theme/default/style.css" type="text/css" />
|
|
||||||
<link rel="stylesheet" href="style.css" type="text/css" />
|
|
||||||
<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.Point will intercept the shift-mousedown
|
|
||||||
// before Control.MouseDefault gets to see it
|
|
||||||
this.point = new OpenLayers.Handler.Point( control,
|
|
||||||
{"done": this.notice},
|
|
||||||
{keyMask: OpenLayers.Handler.MOD_SHIFT});
|
|
||||||
this.point.activate();
|
|
||||||
},
|
|
||||||
|
|
||||||
notice: function (bounds) {
|
|
||||||
document.getElementById('bounds').innerHTML = bounds;
|
|
||||||
}
|
|
||||||
});
|
|
||||||
|
|
||||||
map.addLayer(layer);
|
|
||||||
map.addControl(control);
|
|
||||||
map.setCenter(new OpenLayers.LonLat(lon, lat), zoom);
|
|
||||||
}
|
|
||||||
</script>
|
|
||||||
</head>
|
|
||||||
<body onload="init()">
|
|
||||||
<h1 id="title">Custom Control Point Example</h1>
|
|
||||||
|
|
||||||
<div id="tags">
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<p id="shortdesc">
|
|
||||||
Demonstrate the addition of a point reporting control to the OpenLayers window.
|
|
||||||
</p>
|
|
||||||
|
|
||||||
<div id="map" class="smallmap"></div>
|
|
||||||
<div id="bounds"></div>
|
|
||||||
|
|
||||||
<div id="docs"></div>
|
|
||||||
</body>
|
|
||||||
</html>
|
|
||||||
@@ -1,5 +1,7 @@
|
|||||||
<html xmlns="http://www.w3.org/1999/xhtml">
|
<html xmlns="http://www.w3.org/1999/xhtml">
|
||||||
<head>
|
<head>
|
||||||
|
<meta name="viewport" content="width=device-width; initial-scale=1.0; maximum-scale=1.0; user-scalable=0;" />
|
||||||
|
<meta name="apple-mobile-web-app-capable" content="yes" />
|
||||||
<title>Custom Control Example</title>
|
<title>Custom Control Example</title>
|
||||||
<link rel="stylesheet" href="../theme/default/style.css" type="text/css" />
|
<link rel="stylesheet" href="../theme/default/style.css" type="text/css" />
|
||||||
<link rel="stylesheet" href="style.css" type="text/css" />
|
<link rel="stylesheet" href="style.css" type="text/css" />
|
||||||
@@ -13,7 +15,7 @@
|
|||||||
function init(){
|
function init(){
|
||||||
map = new OpenLayers.Map('map');
|
map = new OpenLayers.Map('map');
|
||||||
layer = new OpenLayers.Layer.WMS( "OpenLayers WMS",
|
layer = new OpenLayers.Layer.WMS( "OpenLayers WMS",
|
||||||
"http://labs.metacarta.com/wms/vmap0", {layers: 'basic'} );
|
"http://vmap0.tiles.osgeo.org/wms/vmap0", {layers: 'basic'} );
|
||||||
|
|
||||||
var control = new OpenLayers.Control();
|
var control = new OpenLayers.Control();
|
||||||
OpenLayers.Util.extend(control, {
|
OpenLayers.Util.extend(control, {
|
||||||
@@ -45,15 +47,20 @@
|
|||||||
<body onload="init()">
|
<body onload="init()">
|
||||||
<h1 id="title">Custom Control Example</h1>
|
<h1 id="title">Custom Control Example</h1>
|
||||||
|
|
||||||
<div id="tags">
|
<div id="tags">
|
||||||
|
control, panel, rectangle
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<p id="shortdesc">
|
<p id="shortdesc">
|
||||||
Demonstrate the addition of a draggable rectangle to the OpenLayers window.
|
Demonstrate the addition of a rectangle to the OpenLayers window.
|
||||||
</p>
|
</p>
|
||||||
|
|
||||||
<div id="map" class="smallmap"></div>
|
<div id="map" class="smallmap"></div>
|
||||||
|
|
||||||
<div id="docs"></div>
|
<div id="docs">
|
||||||
|
The control allows you to draw a rectangle, that reports its coordinates
|
||||||
|
after creation. Hold down the shift key on your keyboard and draw a
|
||||||
|
rectangle with the mouse.
|
||||||
|
</div>
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
|||||||
@@ -1,5 +1,7 @@
|
|||||||
<html xmlns="http://www.w3.org/1999/xhtml">
|
<html xmlns="http://www.w3.org/1999/xhtml">
|
||||||
<head>
|
<head>
|
||||||
|
<meta name="viewport" content="width=device-width; initial-scale=1.0; maximum-scale=1.0; user-scalable=0;" />
|
||||||
|
<meta name="apple-mobile-web-app-capable" content="yes" />
|
||||||
<title>Custom Style Example</title>
|
<title>Custom Style Example</title>
|
||||||
|
|
||||||
<link rel="stylesheet" href="../theme/default/style.css" type="text/css" />
|
<link rel="stylesheet" href="../theme/default/style.css" type="text/css" />
|
||||||
@@ -10,7 +12,7 @@
|
|||||||
}
|
}
|
||||||
div.olControlMousePosition {
|
div.olControlMousePosition {
|
||||||
font-family: Verdana;
|
font-family: Verdana;
|
||||||
font-size: 0.5em;
|
font-size: 2em;
|
||||||
color: red;
|
color: red;
|
||||||
}
|
}
|
||||||
</style>
|
</style>
|
||||||
@@ -25,7 +27,7 @@
|
|||||||
var options = {theme: null};
|
var options = {theme: null};
|
||||||
map = new OpenLayers.Map('map', options);
|
map = new OpenLayers.Map('map', options);
|
||||||
layer = new OpenLayers.Layer.WMS( "OpenLayers WMS",
|
layer = new OpenLayers.Layer.WMS( "OpenLayers WMS",
|
||||||
"http://labs.metacarta.com/wms/vmap0", {layers: 'basic'} );
|
"http://vmap0.tiles.osgeo.org/wms/vmap0", {layers: 'basic'} );
|
||||||
|
|
||||||
map.addControl(new OpenLayers.Control.MousePosition());
|
map.addControl(new OpenLayers.Control.MousePosition());
|
||||||
map.addLayer(layer);
|
map.addLayer(layer);
|
||||||
@@ -37,6 +39,7 @@
|
|||||||
<h1 id="title">Custom Style Example</h1>
|
<h1 id="title">Custom Style Example</h1>
|
||||||
|
|
||||||
<div id="tags">
|
<div id="tags">
|
||||||
|
styling, css, stylesheet, theming, theme
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<p id="shortdesc">
|
<p id="shortdesc">
|
||||||
|
|||||||
10
examples/data/line.json
Normal file
10
examples/data/line.json
Normal file
@@ -0,0 +1,10 @@
|
|||||||
|
{
|
||||||
|
"type": "FeatureCollection",
|
||||||
|
"features": [
|
||||||
|
{"type":"Feature", "id":"OpenLayers.Feature.Vector_458", "properties":{}, "geometry":{"type":"LineString", "coordinates":[[-121.640625, 24.2578125], [-78.046875, 27.7734375], [-45.703125, 24.9609375], [-13.359375, 16.5234375], [12.65625, 6.6796875], [39.375, 1.0546875], [76.640625, 1.0546875], [108.28125, 1.7578125], [156.09375, 15.8203125]]}, "crs":{"type":"OGC", "properties":{"urn":"urn:ogc:def:crs:OGC:1.3:CRS84"}}},
|
||||||
|
{"type":"Feature", "id":"OpenLayers.Feature.Vector_1111", "properties":{}, "geometry":{"type":"LineString", "coordinates":[[-122.34375, -35.5078125], [-48.515625, -33.3984375], [-5.625, -37.6171875], [20.390625, -32.6953125], [69.609375, -34.1015625], [121.640625, -38.3203125], [150.46875, -33.3984375]]}, "crs":{"type":"OGC", "properties":{"urn":"urn:ogc:def:crs:OGC:1.3:CRS84"}}},
|
||||||
|
{"type":"Feature", "id":"OpenLayers.Feature.Vector_634", "properties":{}, "geometry":{"type":"LineString", "coordinates":[[-54.84375, 69.9609375], [-56.953125, 31.9921875], [-56.953125, 5.2734375], [-65.390625, -34.8046875], [-66.09375, -61.5234375]]}, "crs":{"type":"OGC", "properties":{"urn":"urn:ogc:def:crs:OGC:1.3:CRS84"}}},
|
||||||
|
{"type":"Feature", "id":"OpenLayers.Feature.Vector_820", "properties":{}, "geometry":{"type":"LineString", "coordinates":[[39.375, 58.0078125], [42.890625, 25.6640625], [42.1875, -1.0546875], [37.96875, -50.2734375], [37.265625, -64.3359375]]}, "crs":{"type":"OGC", "properties":{"urn":"urn:ogc:def:crs:OGC:1.3:CRS84"}}},
|
||||||
|
{"type":"Feature", "id":"OpenLayers.Feature.Vector_1280", "properties":{}, "geometry":{"type":"LineString", "coordinates":[[101.25, 42.5390625], [106.875, 13.7109375], [106.171875, -17.9296875], [104.765625, -49.5703125], [102.65625, -67.1484375]]}, "crs":{"type":"OGC", "properties":{"urn":"urn:ogc:def:crs:OGC:1.3:CRS84"}}}
|
||||||
|
]
|
||||||
|
}
|
||||||
8
examples/data/point.json
Normal file
8
examples/data/point.json
Normal file
@@ -0,0 +1,8 @@
|
|||||||
|
{
|
||||||
|
"type": "FeatureCollection",
|
||||||
|
"features": [
|
||||||
|
{"type":"Feature", "id":"OpenLayers.Feature.Vector_1721", "properties":{}, "geometry":{"type":"Point", "coordinates":[-89.296875, -14.4140625]}, "crs":{"type":"OGC", "properties":{"urn":"urn:ogc:def:crs:OGC:1.3:CRS84"}}},
|
||||||
|
{"type":"Feature", "id":"OpenLayers.Feature.Vector_1715", "properties":{}, "geometry":{"type":"Point", "coordinates":[-25.3125, -54.4921875]}, "crs":{"type":"OGC", "properties":{"urn":"urn:ogc:def:crs:OGC:1.3:CRS84"}}},
|
||||||
|
{"type":"Feature", "id":"OpenLayers.Feature.Vector_1709", "properties":{}, "geometry":{"type":"Point", "coordinates":[73.828125, -23.5546875]}, "crs":{"type":"OGC", "properties":{"urn":"urn:ogc:def:crs:OGC:1.3:CRS84"}}}
|
||||||
|
]
|
||||||
|
}
|
||||||
9
examples/data/poly.json
Normal file
9
examples/data/poly.json
Normal file
@@ -0,0 +1,9 @@
|
|||||||
|
{
|
||||||
|
"type": "FeatureCollection",
|
||||||
|
"features": [
|
||||||
|
{"type":"Feature", "id":"OpenLayers.Feature.Vector_1489", "properties":{}, "geometry":{"type":"Polygon", "coordinates":[[[-109.6875, 63.6328125], [-112.5, 35.5078125], [-85.078125, 34.8046875], [-68.90625, 39.7265625], [-68.203125, 67.1484375], [-109.6875, 63.6328125]]]}, "crs":{"type":"OGC", "properties":{"urn":"urn:ogc:def:crs:OGC:1.3:CRS84"}}},
|
||||||
|
{"type":"Feature", "id":"OpenLayers.Feature.Vector_1668", "properties":{}, "geometry":{"type":"Polygon", "coordinates":[[[-40.78125, 65.0390625], [-40.078125, 34.8046875], [-12.65625, 25.6640625], [21.09375, 17.2265625], [22.5, 58.0078125], [-40.78125, 65.0390625]]]}, "crs":{"type":"OGC", "properties":{"urn":"urn:ogc:def:crs:OGC:1.3:CRS84"}}}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
349
examples/data/roads.json
Normal file
349
examples/data/roads.json
Normal file
@@ -0,0 +1,349 @@
|
|||||||
|
{
|
||||||
|
"type": "FeatureCollection",
|
||||||
|
"features": [
|
||||||
|
{ "type": "Feature", "properties": { "LINK_ID": 30760460.000000, "RP_TYPE": 12, "RP_FUNC": 0, "DIRECTION": 1, "LOGKOD": "", "CHANGED": "", "USERID": "", "ST_NAME": "KVARNGATAN", "L_REFADDR": "24", "L_NREFADDR": "22", "R_REFADDR": "27", "R_NREFADDR": "23", "SPEED_CAT": "6", "ZIPCODE": "59333", "SHAPE_LEN": 41.871700 }, "geometry": { "type": "LineString", "coordinates": [ [ 1549555.330250, 6403958.170400 ], [ 1549594.439950, 6403973.130400 ] ] } }
|
||||||
|
,
|
||||||
|
{ "type": "Feature", "properties": { "LINK_ID": 573730499.000000, "RP_TYPE": 14, "RP_FUNC": 0, "DIRECTION": 2, "LOGKOD": "", "CHANGED": "", "USERID": "", "ST_NAME": "", "L_REFADDR": "", "L_NREFADDR": "", "R_REFADDR": "", "R_NREFADDR": "", "SPEED_CAT": "7", "ZIPCODE": "59330", "SHAPE_LEN": 46.382600 }, "geometry": { "type": "LineString", "coordinates": [ [ 1549497.669850, 6403707.960000 ], [ 1549491.100000, 6403710.100000 ], [ 1549488.039950, 6403716.750400 ], [ 1549488.540100, 6403724.550400 ], [ 1549494.379850, 6403733.540000 ], [ 1549499.679900, 6403738.050400 ], [ 1549506.220000, 6403739.250400 ] ] } }
|
||||||
|
,
|
||||||
|
{ "type": "Feature", "properties": { "LINK_ID": 30760556.000000, "RP_TYPE": 12, "RP_FUNC": 1, "DIRECTION": 0, "LOGKOD": "", "CHANGED": "", "USERID": "", "ST_NAME": "BRUNNSGATAN", "L_REFADDR": "24", "L_NREFADDR": "16", "R_REFADDR": "", "R_NREFADDR": "", "SPEED_CAT": "7", "ZIPCODE": "59330", "SHAPE_LEN": 70.310600 }, "geometry": { "type": "LineString", "coordinates": [ [ 1549754.276900, 6403854.802400 ], [ 1549728.459850, 6403920.200000 ] ] } }
|
||||||
|
,
|
||||||
|
{ "type": "Feature", "properties": { "LINK_ID": 30760712.000000, "RP_TYPE": 10, "RP_FUNC": 1, "DIRECTION": 0, "LOGKOD": "", "CHANGED": "", "USERID": "", "ST_NAME": "S<>DRA J<>RNV<4E>GSGATAN", "L_REFADDR": "", "L_NREFADDR": "", "R_REFADDR": "9", "R_NREFADDR": "9", "SPEED_CAT": "6", "ZIPCODE": "59332", "SHAPE_LEN": 40.068900 }, "geometry": { "type": "LineString", "coordinates": [ [ 1549571.899950, 6403675.450400 ], [ 1549592.674200, 6403684.530400 ], [ 1549608.619850, 6403691.500000 ] ] } }
|
||||||
|
,
|
||||||
|
{ "type": "Feature", "properties": { "LINK_ID": 30837043.000000, "RP_TYPE": 12, "RP_FUNC": 0, "DIRECTION": 0, "LOGKOD": "", "CHANGED": "", "USERID": "", "ST_NAME": "BREDGATAN", "L_REFADDR": "", "L_NREFADDR": "", "R_REFADDR": "", "R_NREFADDR": "", "SPEED_CAT": "6", "ZIPCODE": "59330", "SHAPE_LEN": 78.203400 }, "geometry": { "type": "LineString", "coordinates": [ [ 1549741.089950, 6403765.520000 ], [ 1549730.790150, 6403779.880000 ], [ 1549703.919950, 6403834.130400 ] ] } }
|
||||||
|
,
|
||||||
|
{ "type": "Feature", "properties": { "LINK_ID": 80545558.000000, "RP_TYPE": 14, "RP_FUNC": 0, "DIRECTION": 0, "LOGKOD": "", "CHANGED": "", "USERID": "", "ST_NAME": "NORRA VARVSGATAN", "L_REFADDR": "", "L_NREFADDR": "", "R_REFADDR": "", "R_NREFADDR": "", "SPEED_CAT": "7", "ZIPCODE": "59330", "SHAPE_LEN": 20.687400 }, "geometry": { "type": "LineString", "coordinates": [ [ 1549909.400050, 6403973.670400 ], [ 1549900.829950, 6403992.491200 ] ] } }
|
||||||
|
,
|
||||||
|
{ "type": "Feature", "properties": { "LINK_ID": 30760549.000000, "RP_TYPE": 14, "RP_FUNC": 0, "DIRECTION": 0, "LOGKOD": "", "CHANGED": "", "USERID": "", "ST_NAME": "STR<54>MSGATAN", "L_REFADDR": "38", "L_NREFADDR": "36", "R_REFADDR": "33", "R_NREFADDR": "31", "SPEED_CAT": "7", "ZIPCODE": "59330", "SHAPE_LEN": 32.788800 }, "geometry": { "type": "LineString", "coordinates": [ [ 1549878.029900, 6403861.890400 ], [ 1549867.520100, 6403892.960000 ] ] } }
|
||||||
|
,
|
||||||
|
{ "type": "Feature", "properties": { "LINK_ID": 80547479.000000, "RP_TYPE": 16, "RP_FUNC": 0, "DIRECTION": 0, "LOGKOD": "", "CHANGED": "", "USERID": "", "ST_NAME": "BREDGATAN", "L_REFADDR": "18", "L_NREFADDR": "14", "R_REFADDR": "15", "R_NREFADDR": "13", "SPEED_CAT": "8", "ZIPCODE": "59330", "SHAPE_LEN": 15.654700 }, "geometry": { "type": "LineString", "coordinates": [ [ 1549645.069900, 6403971.520000 ], [ 1549638.940000, 6403985.930400 ] ] } }
|
||||||
|
,
|
||||||
|
{ "type": "Feature", "properties": { "LINK_ID": 30760575.000000, "RP_TYPE": 12, "RP_FUNC": 0, "DIRECTION": 0, "LOGKOD": "", "CHANGED": "", "USERID": "", "ST_NAME": "BREDGATAN", "L_REFADDR": "24", "L_NREFADDR": "14", "R_REFADDR": "19", "R_NREFADDR": "13", "SPEED_CAT": "6", "ZIPCODE": "59330", "SHAPE_LEN": 118.385000 }, "geometry": { "type": "LineString", "coordinates": [ [ 1549703.919950, 6403834.130400 ], [ 1549656.739950, 6403942.710400 ] ] } }
|
||||||
|
,
|
||||||
|
{ "type": "Feature", "properties": { "LINK_ID": 30760608.000000, "RP_TYPE": 12, "RP_FUNC": 0, "DIRECTION": 0, "LOGKOD": "", "CHANGED": "", "USERID": "", "ST_NAME": "B<>TSMANSGATAN", "L_REFADDR": "32", "L_NREFADDR": "32", "R_REFADDR": "", "R_NREFADDR": "", "SPEED_CAT": "6", "ZIPCODE": "59330", "SHAPE_LEN": 74.462800 }, "geometry": { "type": "LineString", "coordinates": [ [ 1549566.450100, 6403780.090400 ], [ 1549635.170150, 6403808.780000 ] ] } }
|
||||||
|
,
|
||||||
|
{ "type": "Feature", "properties": { "LINK_ID": 80547481.000000, "RP_TYPE": 12, "RP_FUNC": 0, "DIRECTION": 0, "LOGKOD": "", "CHANGED": "", "USERID": "", "ST_NAME": "KVARNGATAN", "L_REFADDR": "", "L_NREFADDR": "", "R_REFADDR": "", "R_NREFADDR": "", "SPEED_CAT": "6", "ZIPCODE": "59330", "SHAPE_LEN": 13.834500 }, "geometry": { "type": "LineString", "coordinates": [ [ 1549625.900050, 6403981.310400 ], [ 1549638.940000, 6403985.930400 ] ] } }
|
||||||
|
,
|
||||||
|
{ "type": "Feature", "properties": { "LINK_ID": 573730495.000000, "RP_TYPE": 14, "RP_FUNC": 0, "DIRECTION": 1, "LOGKOD": "", "CHANGED": "", "USERID": "", "ST_NAME": "", "L_REFADDR": "", "L_NREFADDR": "", "R_REFADDR": "", "R_NREFADDR": "", "SPEED_CAT": "7", "ZIPCODE": "59330", "SHAPE_LEN": 63.537000 }, "geometry": { "type": "LineString", "coordinates": [ [ 1549535.370100, 6403692.830400 ], [ 1549549.530050, 6403703.030400 ], [ 1549570.300100, 6403708.850400 ], [ 1549570.600050, 6403733.360000 ] ] } }
|
||||||
|
,
|
||||||
|
{ "type": "Feature", "properties": { "LINK_ID": 80545560.000000, "RP_TYPE": 12, "RP_FUNC": 0, "DIRECTION": 0, "LOGKOD": "", "CHANGED": "", "USERID": "", "ST_NAME": "", "L_REFADDR": "", "L_NREFADDR": "", "R_REFADDR": "", "R_NREFADDR": "", "SPEED_CAT": "6", "ZIPCODE": "59330", "SHAPE_LEN": 20.545100 }, "geometry": { "type": "LineString", "coordinates": [ [ 1549927.119850, 6403985.020000 ], [ 1549944.182350, 6403996.455200 ] ] } }
|
||||||
|
,
|
||||||
|
{ "type": "Feature", "properties": { "LINK_ID": 30760664.000000, "RP_TYPE": 10, "RP_FUNC": 1, "DIRECTION": 0, "LOGKOD": "", "CHANGED": "", "USERID": "", "ST_NAME": "S<>DRA J<>RNV<4E>GSGATAN", "L_REFADDR": "", "L_NREFADDR": "", "R_REFADDR": "3", "R_NREFADDR": "1", "SPEED_CAT": "6", "ZIPCODE": "59331", "SHAPE_LEN": 59.030600 }, "geometry": { "type": "LineString", "coordinates": [ [ 1549679.130150, 6403720.210400 ], [ 1549717.099900, 6403730.700000 ], [ 1549726.590150, 6403734.160000 ], [ 1549734.260050, 6403739.820000 ] ] } }
|
||||||
|
,
|
||||||
|
{ "type": "Feature", "properties": { "LINK_ID": 80547480.000000, "RP_TYPE": 12, "RP_FUNC": 0, "DIRECTION": 0, "LOGKOD": "", "CHANGED": "", "USERID": "", "ST_NAME": "KVARNGATAN", "L_REFADDR": "20", "L_NREFADDR": "20", "R_REFADDR": "21", "R_NREFADDR": "21", "SPEED_CAT": "6", "ZIPCODE": "59333", "SHAPE_LEN": 12.375300 }, "geometry": { "type": "LineString", "coordinates": [ [ 1549614.030150, 6403977.820000 ], [ 1549621.149850, 6403980.140000 ], [ 1549625.900050, 6403981.310400 ] ] } }
|
||||||
|
,
|
||||||
|
{ "type": "Feature", "properties": { "LINK_ID": 30760739.000000, "RP_TYPE": 10, "RP_FUNC": 1, "DIRECTION": 0, "LOGKOD": "", "CHANGED": "", "USERID": "", "ST_NAME": "S<>DRA J<>RNV<4E>GSGATAN", "L_REFADDR": "", "L_NREFADDR": "", "R_REFADDR": "13", "R_NREFADDR": "11", "SPEED_CAT": "6", "ZIPCODE": "59332", "SHAPE_LEN": 57.793000 }, "geometry": { "type": "LineString", "coordinates": [ [ 1549522.250000, 6403645.880000 ], [ 1549571.899950, 6403675.450400 ] ] } }
|
||||||
|
,
|
||||||
|
{ "type": "Feature", "properties": { "LINK_ID": 80545557.000000, "RP_TYPE": 14, "RP_FUNC": 0, "DIRECTION": 0, "LOGKOD": "", "CHANGED": "", "USERID": "", "ST_NAME": "NORRA VARVSGATAN", "L_REFADDR": "26", "L_NREFADDR": "20", "R_REFADDR": "", "R_NREFADDR": "", "SPEED_CAT": "7", "ZIPCODE": "59330", "SHAPE_LEN": 62.216100 }, "geometry": { "type": "LineString", "coordinates": [ [ 1549929.770050, 6403914.890400 ], [ 1549909.400050, 6403973.670400 ] ] } }
|
||||||
|
,
|
||||||
|
{ "type": "Feature", "properties": { "LINK_ID": 30760610.000000, "RP_TYPE": 10, "RP_FUNC": 1, "DIRECTION": 0, "LOGKOD": "", "CHANGED": "", "USERID": "", "ST_NAME": "SLOTTSHOLMSV<53>GEN", "L_REFADDR": "", "L_NREFADDR": "", "R_REFADDR": "", "R_NREFADDR": "", "SPEED_CAT": "6", "ZIPCODE": "59330", "SHAPE_LEN": 60.324700 }, "geometry": { "type": "LineString", "coordinates": [ [ 1549921.910100, 6403780.010400 ], [ 1549931.136800, 6403785.640000 ], [ 1549946.150050, 6403794.800000 ], [ 1549960.880150, 6403807.230400 ], [ 1549962.209450, 6403808.998400 ], [ 1549968.489850, 6403817.350400 ] ] } }
|
||||||
|
,
|
||||||
|
{ "type": "Feature", "properties": { "LINK_ID": 30760475.000000, "RP_TYPE": 16, "RP_FUNC": 0, "DIRECTION": 0, "LOGKOD": "", "CHANGED": "", "USERID": "", "ST_NAME": "SP<53>TORGET", "L_REFADDR": "9", "L_NREFADDR": "1", "R_REFADDR": "", "R_NREFADDR": "", "SPEED_CAT": "8", "ZIPCODE": "59330", "SHAPE_LEN": 70.301600 }, "geometry": { "type": "LineString", "coordinates": [ [ 1549656.739950, 6403942.710400 ], [ 1549631.800000, 6403936.830400 ], [ 1549614.030150, 6403977.820000 ] ] } }
|
||||||
|
,
|
||||||
|
{ "type": "Feature", "properties": { "LINK_ID": 80547460.000000, "RP_TYPE": 12, "RP_FUNC": 0, "DIRECTION": 1, "LOGKOD": "", "CHANGED": "", "USERID": "", "ST_NAME": "KVARNGATAN", "L_REFADDR": "30", "L_NREFADDR": "26", "R_REFADDR": "31", "R_NREFADDR": "29", "SPEED_CAT": "6", "ZIPCODE": "59333", "SHAPE_LEN": 62.288000 }, "geometry": { "type": "LineString", "coordinates": [ [ 1549496.649950, 6403937.400000 ], [ 1549525.699950, 6403946.670400 ], [ 1549555.330250, 6403958.170400 ] ] } }
|
||||||
|
,
|
||||||
|
{ "type": "Feature", "properties": { "LINK_ID": 80547482.000000, "RP_TYPE": 12, "RP_FUNC": 0, "DIRECTION": 0, "LOGKOD": "", "CHANGED": "", "USERID": "", "ST_NAME": "", "L_REFADDR": "", "L_NREFADDR": "", "R_REFADDR": "", "R_NREFADDR": "", "SPEED_CAT": "6", "ZIPCODE": "59330", "SHAPE_LEN": 22.019100 }, "geometry": { "type": "LineString", "coordinates": [ [ 1549645.069900, 6403971.520000 ], [ 1549637.249850, 6403978.110400 ], [ 1549633.070150, 6403979.170400 ], [ 1549625.900050, 6403981.310400 ] ] } }
|
||||||
|
,
|
||||||
|
{ "type": "Feature", "properties": { "LINK_ID": 573730502.000000, "RP_TYPE": 14, "RP_FUNC": 0, "DIRECTION": 2, "LOGKOD": "", "CHANGED": "", "USERID": "", "ST_NAME": "", "L_REFADDR": "", "L_NREFADDR": "", "R_REFADDR": "", "R_NREFADDR": "", "SPEED_CAT": "7", "ZIPCODE": "59330", "SHAPE_LEN": 26.440100 }, "geometry": { "type": "LineString", "coordinates": [ [ 1549535.370100, 6403692.830400 ], [ 1549528.510100, 6403718.360000 ] ] } }
|
||||||
|
,
|
||||||
|
{ "type": "Feature", "properties": { "LINK_ID": 573730491.000000, "RP_TYPE": 12, "RP_FUNC": 1, "DIRECTION": 0, "LOGKOD": "", "CHANGED": "", "USERID": "", "ST_NAME": "<22>STRA KYRKOGATAN", "L_REFADDR": "48", "L_NREFADDR": "48", "R_REFADDR": "", "R_NREFADDR": "", "SPEED_CAT": "7", "ZIPCODE": "59330", "SHAPE_LEN": 53.485400 }, "geometry": { "type": "LineString", "coordinates": [ [ 1549608.619850, 6403691.500000 ], [ 1549600.079850, 6403708.100000 ], [ 1549584.219950, 6403739.090400 ] ] } }
|
||||||
|
,
|
||||||
|
{ "type": "Feature", "properties": { "LINK_ID": 30760461.000000, "RP_TYPE": 12, "RP_FUNC": 0, "DIRECTION": 2, "LOGKOD": "", "CHANGED": "", "USERID": "", "ST_NAME": "R<>DHUSGATAN", "L_REFADDR": "52", "L_NREFADDR": "50", "R_REFADDR": "43", "R_NREFADDR": "41", "SPEED_CAT": "6", "ZIPCODE": "59333", "SHAPE_LEN": 62.397200 }, "geometry": { "type": "LineString", "coordinates": [ [ 1549555.330250, 6403958.170400 ], [ 1549531.400050, 6404015.800000 ] ] } }
|
||||||
|
,
|
||||||
|
{ "type": "Feature", "properties": { "LINK_ID": 30760674.000000, "RP_TYPE": 10, "RP_FUNC": 1, "DIRECTION": 0, "LOGKOD": "", "CHANGED": "", "USERID": "", "ST_NAME": "S<>DRA J<>RNV<4E>GSGATAN", "L_REFADDR": "", "L_NREFADDR": "", "R_REFADDR": "", "R_NREFADDR": "", "SPEED_CAT": "6", "ZIPCODE": "59331", "SHAPE_LEN": 13.834500 }, "geometry": { "type": "LineString", "coordinates": [ [ 1549666.080050, 6403715.590400 ], [ 1549679.130150, 6403720.210400 ] ] } }
|
||||||
|
,
|
||||||
|
{ "type": "Feature", "properties": { "LINK_ID": 80545555.000000, "RP_TYPE": 10, "RP_FUNC": 1, "DIRECTION": 0, "LOGKOD": "", "CHANGED": "", "USERID": "", "ST_NAME": "SLOTTSHOLMSV<53>GEN", "L_REFADDR": "", "L_NREFADDR": "", "R_REFADDR": "", "R_NREFADDR": "", "SPEED_CAT": "6", "ZIPCODE": "59330", "SHAPE_LEN": 185.679000 }, "geometry": { "type": "LineString", "coordinates": [ [ 1549968.489850, 6403817.350400 ], [ 1549977.779900, 6403836.400000 ], [ 1549983.460050, 6403858.740000 ], [ 1549982.539900, 6403884.350400 ], [ 1549978.140050, 6403903.230400 ], [ 1549947.139850, 6403954.090400 ], [ 1549927.119850, 6403985.020000 ] ] } }
|
||||||
|
,
|
||||||
|
{ "type": "Feature", "properties": { "LINK_ID": 30760515.000000, "RP_TYPE": 14, "RP_FUNC": 0, "DIRECTION": 0, "LOGKOD": "", "CHANGED": "", "USERID": "", "ST_NAME": "NORRA VARVSGATAN", "L_REFADDR": "30", "L_NREFADDR": "28", "R_REFADDR": "", "R_NREFADDR": "", "SPEED_CAT": "7", "ZIPCODE": "59330", "SHAPE_LEN": 22.968600 }, "geometry": { "type": "LineString", "coordinates": [ [ 1549938.960000, 6403893.840000 ], [ 1549929.770050, 6403914.890400 ] ] } }
|
||||||
|
,
|
||||||
|
{ "type": "Feature", "properties": { "LINK_ID": 30760497.000000, "RP_TYPE": 12, "RP_FUNC": 0, "DIRECTION": 1, "LOGKOD": "", "CHANGED": "", "USERID": "", "ST_NAME": "KVARNGATAN", "L_REFADDR": "", "L_NREFADDR": "", "R_REFADDR": "", "R_NREFADDR": "", "SPEED_CAT": "6", "ZIPCODE": "59333", "SHAPE_LEN": 24.829800 }, "geometry": { "type": "LineString", "coordinates": [ [ 1549488.599950, 6403913.910400 ], [ 1549496.649950, 6403937.400000 ] ] } }
|
||||||
|
,
|
||||||
|
{ "type": "Feature", "properties": { "LINK_ID": 30837044.000000, "RP_TYPE": 10, "RP_FUNC": 1, "DIRECTION": 0, "LOGKOD": "", "CHANGED": "", "USERID": "", "ST_NAME": "STATIONSGATAN", "L_REFADDR": "", "L_NREFADDR": "", "R_REFADDR": "", "R_NREFADDR": "", "SPEED_CAT": "6", "ZIPCODE": "59330", "SHAPE_LEN": 146.769000 }, "geometry": { "type": "LineString", "coordinates": [ [ 1549776.080150, 6403777.100000 ], [ 1549785.590000, 6403778.330400 ], [ 1549886.280100, 6403772.890400 ], [ 1549908.484450, 6403777.327200 ], [ 1549921.910100, 6403780.010400 ] ] } }
|
||||||
|
,
|
||||||
|
{ "type": "Feature", "properties": { "LINK_ID": 30760477.000000, "RP_TYPE": 12, "RP_FUNC": 1, "DIRECTION": 0, "LOGKOD": "", "CHANGED": "", "USERID": "", "ST_NAME": "BRUNNSGATAN", "L_REFADDR": "14", "L_NREFADDR": "12", "R_REFADDR": "19", "R_NREFADDR": "11", "SPEED_CAT": "7", "ZIPCODE": "59330", "SHAPE_LEN": 78.700300 }, "geometry": { "type": "LineString", "coordinates": [ [ 1549723.519950, 6403934.620000 ], [ 1549697.600000, 6404008.930400 ] ] } }
|
||||||
|
,
|
||||||
|
{ "type": "Feature", "properties": { "LINK_ID": 30760542.000000, "RP_TYPE": 14, "RP_FUNC": 0, "DIRECTION": 0, "LOGKOD": "", "CHANGED": "", "USERID": "", "ST_NAME": "B<>TSMANSGATAN", "L_REFADDR": "22", "L_NREFADDR": "18", "R_REFADDR": "29", "R_NREFADDR": "21", "SPEED_CAT": "7", "ZIPCODE": "59330", "SHAPE_LEN": 34.587000 }, "geometry": { "type": "LineString", "coordinates": [ [ 1549798.179850, 6403867.590400 ], [ 1549830.790050, 6403879.130400 ] ] } }
|
||||||
|
,
|
||||||
|
{ "type": "Feature", "properties": { "LINK_ID": 30760457.000000, "RP_TYPE": 14, "RP_FUNC": 0, "DIRECTION": 0, "LOGKOD": "", "CHANGED": "", "USERID": "", "ST_NAME": "NYGATAN", "L_REFADDR": "8", "L_NREFADDR": "6", "R_REFADDR": "15", "R_NREFADDR": "7", "SPEED_CAT": "7", "ZIPCODE": "59330", "SHAPE_LEN": 45.468000 }, "geometry": { "type": "LineString", "coordinates": [ [ 1549796.459950, 6403958.910400 ], [ 1549839.739900, 6403972.810400 ] ] } }
|
||||||
|
,
|
||||||
|
{ "type": "Feature", "properties": { "LINK_ID": 573703846.000000, "RP_TYPE": 10, "RP_FUNC": 1, "DIRECTION": 0, "LOGKOD": "", "CHANGED": "", "USERID": "", "ST_NAME": "STATIONSGATAN", "L_REFADDR": "", "L_NREFADDR": "", "R_REFADDR": "", "R_NREFADDR": "", "SPEED_CAT": "6", "ZIPCODE": "59331", "SHAPE_LEN": 8.208130 }, "geometry": { "type": "LineString", "coordinates": [ [ 1549734.260050, 6403739.820000 ], [ 1549738.939900, 6403746.560000 ] ] } }
|
||||||
|
,
|
||||||
|
{ "type": "Feature", "properties": { "LINK_ID": 30760631.000000, "RP_TYPE": 10, "RP_FUNC": 1, "DIRECTION": 0, "LOGKOD": "", "CHANGED": "", "USERID": "", "ST_NAME": "STATIONSGATAN", "L_REFADDR": "", "L_NREFADDR": "", "R_REFADDR": "", "R_NREFADDR": "", "SPEED_CAT": "6", "ZIPCODE": "59330", "SHAPE_LEN": 46.824600 }, "geometry": { "type": "LineString", "coordinates": [ [ 1549741.290150, 6403748.820000 ], [ 1549753.539450, 6403766.201600 ], [ 1549754.750100, 6403767.920000 ], [ 1549761.249950, 6403772.460000 ], [ 1549776.080150, 6403777.100000 ] ] } }
|
||||||
|
,
|
||||||
|
{ "type": "Feature", "properties": { "LINK_ID": 30760491.000000, "RP_TYPE": 12, "RP_FUNC": 1, "DIRECTION": 0, "LOGKOD": "", "CHANGED": "", "USERID": "", "ST_NAME": "BRUNNSGATAN", "L_REFADDR": "", "L_NREFADDR": "", "R_REFADDR": "", "R_NREFADDR": "", "SPEED_CAT": "7", "ZIPCODE": "59330", "SHAPE_LEN": 15.240700 }, "geometry": { "type": "LineString", "coordinates": [ [ 1549728.459850, 6403920.200000 ], [ 1549723.519950, 6403934.620000 ] ] } }
|
||||||
|
,
|
||||||
|
{ "type": "Feature", "properties": { "LINK_ID": 30760566.000000, "RP_TYPE": 14, "RP_FUNC": 0, "DIRECTION": 0, "LOGKOD": "", "CHANGED": "", "USERID": "", "ST_NAME": "NORRA VARVSGATAN", "L_REFADDR": "", "L_NREFADDR": "", "R_REFADDR": "", "R_NREFADDR": "", "SPEED_CAT": "7", "ZIPCODE": "59330", "SHAPE_LEN": 54.648300 }, "geometry": { "type": "LineString", "coordinates": [ [ 1549960.410100, 6403843.980000 ], [ 1549959.139950, 6403850.640000 ], [ 1549952.470000, 6403860.580000 ], [ 1549938.960000, 6403893.840000 ] ] } }
|
||||||
|
,
|
||||||
|
{ "type": "Feature", "properties": { "LINK_ID": 80547447.000000, "RP_TYPE": 12, "RP_FUNC": 0, "DIRECTION": 0, "LOGKOD": "", "CHANGED": "", "USERID": "", "ST_NAME": "STATIONSGATAN", "L_REFADDR": "", "L_NREFADDR": "", "R_REFADDR": "", "R_NREFADDR": "", "SPEED_CAT": "6", "ZIPCODE": "59331", "SHAPE_LEN": 13.369300 }, "geometry": { "type": "LineString", "coordinates": [ [ 1549927.421200, 6403767.822400 ], [ 1549921.910100, 6403780.010400 ] ] } }
|
||||||
|
,
|
||||||
|
{ "type": "Feature", "properties": { "LINK_ID": 573730503.000000, "RP_TYPE": 14, "RP_FUNC": 0, "DIRECTION": 0, "LOGKOD": "", "CHANGED": "", "USERID": "", "ST_NAME": "", "L_REFADDR": "", "L_NREFADDR": "", "R_REFADDR": "", "R_NREFADDR": "", "SPEED_CAT": "7", "ZIPCODE": "59330", "SHAPE_LEN": 44.681900 }, "geometry": { "type": "LineString", "coordinates": [ [ 1549528.510100, 6403718.360000 ], [ 1549570.600050, 6403733.360000 ] ] } }
|
||||||
|
,
|
||||||
|
{ "type": "Feature", "properties": { "LINK_ID": 80545559.000000, "RP_TYPE": 14, "RP_FUNC": 0, "DIRECTION": 0, "LOGKOD": "", "CHANGED": "", "USERID": "", "ST_NAME": "", "L_REFADDR": "", "L_NREFADDR": "", "R_REFADDR": "", "R_NREFADDR": "", "SPEED_CAT": "7", "ZIPCODE": "59330", "SHAPE_LEN": 21.047100 }, "geometry": { "type": "LineString", "coordinates": [ [ 1549909.400050, 6403973.670400 ], [ 1549927.119850, 6403985.020000 ] ] } }
|
||||||
|
,
|
||||||
|
{ "type": "Feature", "properties": { "LINK_ID": 80547444.000000, "RP_TYPE": 12, "RP_FUNC": 0, "DIRECTION": 1, "LOGKOD": "", "CHANGED": "", "USERID": "", "ST_NAME": "STATIONSGATAN", "L_REFADDR": "", "L_NREFADDR": "", "R_REFADDR": "", "R_NREFADDR": "", "SPEED_CAT": "6", "ZIPCODE": "59331", "SHAPE_LEN": 46.504800 }, "geometry": { "type": "LineString", "coordinates": [ [ 1549967.599100, 6403744.932000 ], [ 1549943.650000, 6403755.770400 ], [ 1549927.421200, 6403767.822400 ] ] } }
|
||||||
|
,
|
||||||
|
{ "type": "Feature", "properties": { "LINK_ID": 573730492.000000, "RP_TYPE": 12, "RP_FUNC": 1, "DIRECTION": 0, "LOGKOD": "", "CHANGED": "", "USERID": "", "ST_NAME": "<22>STRA KYRKOGATAN", "L_REFADDR": "", "L_NREFADDR": "", "R_REFADDR": "", "R_NREFADDR": "", "SPEED_CAT": "7", "ZIPCODE": "59330", "SHAPE_LEN": 44.681800 }, "geometry": { "type": "LineString", "coordinates": [ [ 1549584.219950, 6403739.090400 ], [ 1549566.450100, 6403780.090400 ] ] } }
|
||||||
|
,
|
||||||
|
{ "type": "Feature", "properties": { "LINK_ID": 30760700.000000, "RP_TYPE": 10, "RP_FUNC": 1, "DIRECTION": 0, "LOGKOD": "", "CHANGED": "", "USERID": "", "ST_NAME": "S<>DRA J<>RNV<4E>GSGATAN", "L_REFADDR": "", "L_NREFADDR": "", "R_REFADDR": "7", "R_NREFADDR": "5", "SPEED_CAT": "6", "ZIPCODE": "59332", "SHAPE_LEN": 62.310700 }, "geometry": { "type": "LineString", "coordinates": [ [ 1549608.619850, 6403691.500000 ], [ 1549666.080050, 6403715.590400 ] ] } }
|
||||||
|
,
|
||||||
|
{ "type": "Feature", "properties": { "LINK_ID": 30760611.000000, "RP_TYPE": 14, "RP_FUNC": 0, "DIRECTION": 0, "LOGKOD": "", "CHANGED": "", "USERID": "", "ST_NAME": "STR<54>MSGATAN", "L_REFADDR": "", "L_NREFADDR": "", "R_REFADDR": "", "R_NREFADDR": "", "SPEED_CAT": "7", "ZIPCODE": "59330", "SHAPE_LEN": 51.110800 }, "geometry": { "type": "LineString", "coordinates": [ [ 1549921.910100, 6403780.010400 ], [ 1549913.480000, 6403787.710400 ], [ 1549891.640000, 6403820.850400 ] ] } }
|
||||||
|
,
|
||||||
|
{ "type": "Feature", "properties": { "LINK_ID": 80547478.000000, "RP_TYPE": 12, "RP_FUNC": 0, "DIRECTION": 0, "LOGKOD": "", "CHANGED": "", "USERID": "", "ST_NAME": "BREDGATAN", "L_REFADDR": "24", "L_NREFADDR": "20", "R_REFADDR": "19", "R_NREFADDR": "17", "SPEED_CAT": "6", "ZIPCODE": "59330", "SHAPE_LEN": 31.088600 }, "geometry": { "type": "LineString", "coordinates": [ [ 1549656.739950, 6403942.710400 ], [ 1549645.069900, 6403971.520000 ] ] } }
|
||||||
|
,
|
||||||
|
{ "type": "Feature", "properties": { "LINK_ID": 30760451.000000, "RP_TYPE": 12, "RP_FUNC": 0, "DIRECTION": 0, "LOGKOD": "", "CHANGED": "", "USERID": "", "ST_NAME": "KVARNGATAN", "L_REFADDR": "", "L_NREFADDR": "", "R_REFADDR": "", "R_NREFADDR": "", "SPEED_CAT": "6", "ZIPCODE": "59333", "SHAPE_LEN": 20.146600 }, "geometry": { "type": "LineString", "coordinates": [ [ 1549594.439950, 6403973.130400 ], [ 1549614.030150, 6403977.820000 ] ] } }
|
||||||
|
,
|
||||||
|
{ "type": "Feature", "properties": { "LINK_ID": 30760525.000000, "RP_TYPE": 14, "RP_FUNC": 0, "DIRECTION": 0, "LOGKOD": "", "CHANGED": "", "USERID": "", "ST_NAME": "B<>TSMANSGATAN", "L_REFADDR": "16", "L_NREFADDR": "14", "R_REFADDR": "19", "R_NREFADDR": "15", "SPEED_CAT": "7", "ZIPCODE": "59330", "SHAPE_LEN": 39.254300 }, "geometry": { "type": "LineString", "coordinates": [ [ 1549830.790050, 6403879.130400 ], [ 1549867.520100, 6403892.960000 ] ] } }
|
||||||
|
,
|
||||||
|
{ "type": "Feature", "properties": { "LINK_ID": 30760497.000000, "RP_TYPE": 12, "RP_FUNC": 0, "DIRECTION": 1, "LOGKOD": "", "CHANGED": "", "USERID": "", "ST_NAME": "<22>STRA KYRKOGATAN", "L_REFADDR": "", "L_NREFADDR": "", "R_REFADDR": "", "R_NREFADDR": "", "SPEED_CAT": "6", "ZIPCODE": "59333", "SHAPE_LEN": 24.829800 }, "geometry": { "type": "LineString", "coordinates": [ [ 1549488.599950, 6403913.910400 ], [ 1549496.649950, 6403937.400000 ] ] } }
|
||||||
|
,
|
||||||
|
{ "type": "Feature", "properties": { "LINK_ID": 573703847.000000, "RP_TYPE": 10, "RP_FUNC": 1, "DIRECTION": 0, "LOGKOD": "", "CHANGED": "", "USERID": "", "ST_NAME": "STATIONSGATAN", "L_REFADDR": "", "L_NREFADDR": "", "R_REFADDR": "", "R_NREFADDR": "", "SPEED_CAT": "6", "ZIPCODE": "59331", "SHAPE_LEN": 3.259030 }, "geometry": { "type": "LineString", "coordinates": [ [ 1549738.939900, 6403746.560000 ], [ 1549741.290150, 6403748.820000 ] ] } }
|
||||||
|
,
|
||||||
|
{ "type": "Feature", "properties": { "LINK_ID": 573730500.000000, "RP_TYPE": 14, "RP_FUNC": 0, "DIRECTION": 1, "LOGKOD": "", "CHANGED": "", "USERID": "", "ST_NAME": "", "L_REFADDR": "", "L_NREFADDR": "", "R_REFADDR": "", "R_NREFADDR": "", "SPEED_CAT": "7", "ZIPCODE": "59330", "SHAPE_LEN": 31.544900 }, "geometry": { "type": "LineString", "coordinates": [ [ 1549528.510100, 6403718.360000 ], [ 1549511.590050, 6403738.200000 ], [ 1549506.220000, 6403739.250400 ] ] } }
|
||||||
|
,
|
||||||
|
{ "type": "Feature", "properties": { "LINK_ID": 573730504.000000, "RP_TYPE": 14, "RP_FUNC": 0, "DIRECTION": 1, "LOGKOD": "", "CHANGED": "", "USERID": "", "ST_NAME": "", "L_REFADDR": "", "L_NREFADDR": "", "R_REFADDR": "", "R_NREFADDR": "", "SPEED_CAT": "7", "ZIPCODE": "59330", "SHAPE_LEN": 32.542600 }, "geometry": { "type": "LineString", "coordinates": [ [ 1549497.669850, 6403707.960000 ], [ 1549528.510100, 6403718.360000 ] ] } }
|
||||||
|
,
|
||||||
|
{ "type": "Feature", "properties": { "LINK_ID": 30760589.000000, "RP_TYPE": 12, "RP_FUNC": 1, "DIRECTION": 0, "LOGKOD": "", "CHANGED": "", "USERID": "", "ST_NAME": "BRUNNSGATAN", "L_REFADDR": "", "L_NREFADDR": "", "R_REFADDR": "23", "R_NREFADDR": "21", "SPEED_CAT": "7", "ZIPCODE": "59330", "SHAPE_LEN": 47.569300 }, "geometry": { "type": "LineString", "coordinates": [ [ 1549771.489900, 6403810.460000 ], [ 1549754.276900, 6403854.802400 ] ] } }
|
||||||
|
,
|
||||||
|
{ "type": "Feature", "properties": { "LINK_ID": 0.000000, "RP_TYPE": 16, "RP_FUNC": 0, "DIRECTION": 0, "LOGKOD": "D", "CHANGED": "0808270836", "USERID": "LO-JKP", "ST_NAME": "STATIONSGATAN", "L_REFADDR": "", "L_NREFADDR": "", "R_REFADDR": "", "R_NREFADDR": "", "SPEED_CAT": "", "ZIPCODE": "59331", "SHAPE_LEN": 34.800000 }, "geometry": { "type": "LineString", "coordinates": [ [ 1549967.599100, 6403744.932000 ], [ 1549999.352500, 6403730.830400 ] ] } }
|
||||||
|
,
|
||||||
|
{ "type": "Feature", "properties": { "LINK_ID": 0.000000, "RP_TYPE": 19, "RP_FUNC": 0, "DIRECTION": 0, "LOGKOD": "D", "CHANGED": "0808270839", "USERID": "LO-JKP", "ST_NAME": "STATIONSGATAN", "L_REFADDR": "", "L_NREFADDR": "", "R_REFADDR": "", "R_NREFADDR": "", "SPEED_CAT": "", "ZIPCODE": "59331", "SHAPE_LEN": 9.900000 }, "geometry": { "type": "LineString", "coordinates": [ [ 1549967.599100, 6403744.932000 ], [ 1549975.575600, 6403750.824800 ] ] } }
|
||||||
|
,
|
||||||
|
{ "type": "Feature", "properties": { "LINK_ID": 0.000000, "RP_TYPE": 19, "RP_FUNC": 0, "DIRECTION": 0, "LOGKOD": "R", "CHANGED": "0808270840", "USERID": "LO-JKP", "ST_NAME": "STATIONSGATAN", "L_REFADDR": "", "L_NREFADDR": "", "R_REFADDR": "", "R_NREFADDR": "", "SPEED_CAT": "", "ZIPCODE": "59331", "SHAPE_LEN": 18.400000 }, "geometry": { "type": "LineString", "coordinates": [ [ 1549975.575600, 6403750.824800 ], [ 1549992.301750, 6403743.152800 ] ] } }
|
||||||
|
,
|
||||||
|
{ "type": "Feature", "properties": { "LINK_ID": 0.000000, "RP_TYPE": 22, "RP_FUNC": 0, "DIRECTION": 0, "LOGKOD": "D", "CHANGED": "0808270840", "USERID": "LO-JKP", "ST_NAME": "STATIONSGATAN", "L_REFADDR": "", "L_NREFADDR": "", "R_REFADDR": "", "R_NREFADDR": "", "SPEED_CAT": "", "ZIPCODE": "59331", "SHAPE_LEN": 16.100000 }, "geometry": { "type": "LineString", "coordinates": [ [ 1550001.325450, 6403756.464000 ], [ 1549992.301750, 6403743.152800 ] ] } }
|
||||||
|
,
|
||||||
|
{ "type": "Feature", "properties": { "LINK_ID": 0.000000, "RP_TYPE": 19, "RP_FUNC": 0, "DIRECTION": 0, "LOGKOD": "R", "CHANGED": "0808270842", "USERID": "LO-JKP", "ST_NAME": "STATIONSGATAN", "L_REFADDR": "", "L_NREFADDR": "", "R_REFADDR": "", "R_NREFADDR": "", "SPEED_CAT": "", "ZIPCODE": "59331", "SHAPE_LEN": 12.300000 }, "geometry": { "type": "LineString", "coordinates": [ [ 1549927.421200, 6403767.822400 ], [ 1549936.717550, 6403775.876000 ] ] } }
|
||||||
|
,
|
||||||
|
{ "type": "Feature", "properties": { "LINK_ID": 0.000000, "RP_TYPE": 19, "RP_FUNC": 0, "DIRECTION": 0, "LOGKOD": "R", "CHANGED": "0808270842", "USERID": "LO-JKP", "ST_NAME": "STATIONSGATAN", "L_REFADDR": "", "L_NREFADDR": "", "R_REFADDR": "", "R_NREFADDR": "", "SPEED_CAT": "", "ZIPCODE": "59331", "SHAPE_LEN": 46.500000 }, "geometry": { "type": "LineString", "coordinates": [ [ 1549936.717550, 6403775.876000 ], [ 1549958.789600, 6403758.524000 ], [ 1549975.575600, 6403750.824800 ] ] } }
|
||||||
|
,
|
||||||
|
{ "type": "Feature", "properties": { "LINK_ID": 80547691.000000, "RP_TYPE": 12, "RP_FUNC": 0, "DIRECTION": 2, "LOGKOD": "R", "CHANGED": "0808270844", "USERID": "LO-JKP", "ST_NAME": "NORRA BANGATAN", "L_REFADDR": "", "L_NREFADDR": "", "R_REFADDR": "", "R_NREFADDR": "", "SPEED_CAT": "6", "ZIPCODE": "59331", "SHAPE_LEN": 209.000000 }, "geometry": { "type": "LineString", "coordinates": [ [ 1549937.660100, 6403662.140000 ], [ 1549881.800100, 6403701.550400 ], [ 1549764.730000, 6403731.290400 ], [ 1549745.501350, 6403736.423200 ] ] } }
|
||||||
|
,
|
||||||
|
{ "type": "Feature", "properties": { "LINK_ID": 80547691.000000, "RP_TYPE": 12, "RP_FUNC": 0, "DIRECTION": 2, "LOGKOD": "R", "CHANGED": "0808270844", "USERID": "LO-JKP", "ST_NAME": "NORRA BANGATAN", "L_REFADDR": "", "L_NREFADDR": "", "R_REFADDR": "", "R_NREFADDR": "", "SPEED_CAT": "6", "ZIPCODE": "59331", "SHAPE_LEN": 11.800000 }, "geometry": { "type": "LineString", "coordinates": [ [ 1549745.501350, 6403736.423200 ], [ 1549734.260050, 6403739.820000 ] ] } }
|
||||||
|
,
|
||||||
|
{ "type": "Feature", "properties": { "LINK_ID": 0.000000, "RP_TYPE": 12, "RP_FUNC": 0, "DIRECTION": 0, "LOGKOD": "R", "CHANGED": "0808270847", "USERID": "LO-JKP", "ST_NAME": "STATIONSGATAN", "L_REFADDR": "", "L_NREFADDR": "", "R_REFADDR": "", "R_NREFADDR": "", "SPEED_CAT": "", "ZIPCODE": "59331", "SHAPE_LEN": 32.700000 }, "geometry": { "type": "LineString", "coordinates": [ [ 1549927.421200, 6403767.822400 ], [ 1549930.803600, 6403753.404000 ], [ 1549928.832400, 6403735.662400 ] ] } }
|
||||||
|
,
|
||||||
|
{ "type": "Feature", "properties": { "LINK_ID": 0.000000, "RP_TYPE": 12, "RP_FUNC": 0, "DIRECTION": 0, "LOGKOD": "R", "CHANGED": "0808270847", "USERID": "LO-JKP", "ST_NAME": "STATIONSGATAN", "L_REFADDR": "", "L_NREFADDR": "", "R_REFADDR": "", "R_NREFADDR": "", "SPEED_CAT": "", "ZIPCODE": "59331", "SHAPE_LEN": 53.100000 }, "geometry": { "type": "LineString", "coordinates": [ [ 1549928.832400, 6403735.662400 ], [ 1549962.732350, 6403727.381600 ], [ 1549967.599100, 6403744.932000 ] ] } }
|
||||||
|
,
|
||||||
|
{ "type": "Feature", "properties": { "LINK_ID": 0.000000, "RP_TYPE": 16, "RP_FUNC": 0, "DIRECTION": 0, "LOGKOD": "R", "CHANGED": "0808270848", "USERID": "LO-JKP", "ST_NAME": "STATIONSGATAN", "L_REFADDR": "", "L_NREFADDR": "", "R_REFADDR": "", "R_NREFADDR": "", "SPEED_CAT": "", "ZIPCODE": "59331", "SHAPE_LEN": 44.400000 }, "geometry": { "type": "LineString", "coordinates": [ [ 1549928.832400, 6403735.662400 ], [ 1549886.025300, 6403747.621600 ] ] } }
|
||||||
|
,
|
||||||
|
{ "type": "Feature", "properties": { "LINK_ID": 0.000000, "RP_TYPE": 16, "RP_FUNC": 0, "DIRECTION": 0, "LOGKOD": "R", "CHANGED": "0808270848", "USERID": "LO-JKP", "ST_NAME": "STATIONSGATAN", "L_REFADDR": "", "L_NREFADDR": "", "R_REFADDR": "", "R_NREFADDR": "", "SPEED_CAT": "", "ZIPCODE": "59331", "SHAPE_LEN": 11.200000 }, "geometry": { "type": "LineString", "coordinates": [ [ 1549886.025300, 6403747.621600 ], [ 1549875.211350, 6403750.643200 ] ] } }
|
||||||
|
,
|
||||||
|
{ "type": "Feature", "properties": { "LINK_ID": 0.000000, "RP_TYPE": 16, "RP_FUNC": 0, "DIRECTION": 0, "LOGKOD": "D", "CHANGED": "0808270848", "USERID": "LO-JKP", "ST_NAME": "STATIONSGATAN", "L_REFADDR": "", "L_NREFADDR": "", "R_REFADDR": "", "R_NREFADDR": "", "SPEED_CAT": "", "ZIPCODE": "59331", "SHAPE_LEN": 19.600000 }, "geometry": { "type": "LineString", "coordinates": [ [ 1549888.409150, 6403767.056000 ], [ 1549886.025300, 6403747.621600 ] ] } }
|
||||||
|
,
|
||||||
|
{ "type": "Feature", "properties": { "LINK_ID": 0.000000, "RP_TYPE": 19, "RP_FUNC": 0, "DIRECTION": 0, "LOGKOD": "D", "CHANGED": "0808270922", "USERID": "LO-JKP", "ST_NAME": "HALLSTR<54>MSGATAN", "L_REFADDR": "", "L_NREFADDR": "", "R_REFADDR": "", "R_NREFADDR": "", "SPEED_CAT": "", "ZIPCODE": "59331", "SHAPE_LEN": 20.700000 }, "geometry": { "type": "LineString", "coordinates": [ [ 1549745.501350, 6403736.423200 ], [ 1549760.669300, 6403722.331200 ] ] } }
|
||||||
|
,
|
||||||
|
{ "type": "Feature", "properties": { "LINK_ID": 0.000000, "RP_TYPE": 19, "RP_FUNC": 0, "DIRECTION": 0, "LOGKOD": "D", "CHANGED": "0808270923", "USERID": "LO-JKP", "ST_NAME": "HALLSTR<54>MSGATAN", "L_REFADDR": "", "L_NREFADDR": "", "R_REFADDR": "", "R_NREFADDR": "", "SPEED_CAT": "", "ZIPCODE": "59331", "SHAPE_LEN": 126.700000 }, "geometry": { "type": "LineString", "coordinates": [ [ 1549760.669300, 6403722.331200 ], [ 1549771.919700, 6403716.340800 ], [ 1549815.248650, 6403610.940000 ] ] } }
|
||||||
|
,
|
||||||
|
{ "type": "Feature", "properties": { "LINK_ID": 80547535.000000, "RP_TYPE": 10, "RP_FUNC": 1, "DIRECTION": 1, "LOGKOD": "R", "CHANGED": "0808270933", "USERID": "LO-JKP", "ST_NAME": "ESPLANADEN", "L_REFADDR": "", "L_NREFADDR": "", "R_REFADDR": "5", "R_NREFADDR": "1", "SPEED_CAT": "6", "ZIPCODE": "59331", "SHAPE_LEN": 5.000000 }, "geometry": { "type": "LineString", "coordinates": [ [ 1549681.045700, 6403715.598400 ], [ 1549679.130150, 6403720.210400 ] ] } }
|
||||||
|
,
|
||||||
|
{ "type": "Feature", "properties": { "LINK_ID": 0.000000, "RP_TYPE": 19, "RP_FUNC": 0, "DIRECTION": 0, "LOGKOD": "D", "CHANGED": "0808270933", "USERID": "LO-JKP", "ST_NAME": "S<>DRA J<>RNV<4E>GSGATAN", "L_REFADDR": "", "L_NREFADDR": "", "R_REFADDR": "", "R_NREFADDR": "", "SPEED_CAT": "", "ZIPCODE": "59331", "SHAPE_LEN": 68.600000 }, "geometry": { "type": "LineString", "coordinates": [ [ 1549745.501350, 6403736.423200 ], [ 1549740.387150, 6403731.321600 ], [ 1549681.045700, 6403715.598400 ] ] } }
|
||||||
|
,
|
||||||
|
{ "type": "Feature", "properties": { "LINK_ID": 30760732.000000, "RP_TYPE": 10, "RP_FUNC": 1, "DIRECTION": 2, "LOGKOD": "R", "CHANGED": "0808270934", "USERID": "LO-JKP", "ST_NAME": "ESPLANADEN", "L_REFADDR": "2", "L_NREFADDR": "2", "R_REFADDR": "", "R_NREFADDR": "", "SPEED_CAT": "6", "ZIPCODE": "59332", "SHAPE_LEN": 56.700000 }, "geometry": { "type": "LineString", "coordinates": [ [ 1549683.510050, 6403654.550400 ], [ 1549667.935400, 6403709.100000 ] ] } }
|
||||||
|
,
|
||||||
|
{ "type": "Feature", "properties": { "LINK_ID": 30760732.000000, "RP_TYPE": 10, "RP_FUNC": 1, "DIRECTION": 2, "LOGKOD": "R", "CHANGED": "0808270934", "USERID": "LO-JKP", "ST_NAME": "ESPLANADEN", "L_REFADDR": "2", "L_NREFADDR": "2", "R_REFADDR": "", "R_NREFADDR": "", "SPEED_CAT": "6", "ZIPCODE": "59332", "SHAPE_LEN": 6.800000 }, "geometry": { "type": "LineString", "coordinates": [ [ 1549667.935400, 6403709.100000 ], [ 1549666.080050, 6403715.590400 ] ] } }
|
||||||
|
,
|
||||||
|
{ "type": "Feature", "properties": { "LINK_ID": 0.000000, "RP_TYPE": 19, "RP_FUNC": 0, "DIRECTION": 0, "LOGKOD": "D", "CHANGED": "0808270934", "USERID": "LO-JKP", "ST_NAME": "S<>DRA J<>RNV<4E>GSGATAN", "L_REFADDR": "", "L_NREFADDR": "", "R_REFADDR": "", "R_NREFADDR": "", "SPEED_CAT": "", "ZIPCODE": "59331", "SHAPE_LEN": 14.600000 }, "geometry": { "type": "LineString", "coordinates": [ [ 1549681.045700, 6403715.598400 ], [ 1549667.935400, 6403709.100000 ] ] } }
|
||||||
|
,
|
||||||
|
{ "type": "Feature", "properties": { "LINK_ID": 0.000000, "RP_TYPE": 18, "RP_FUNC": 0, "DIRECTION": 0, "LOGKOD": "D", "CHANGED": "0808270935", "USERID": "LO-JKP", "ST_NAME": "HALLSTR<54>MSGATAN", "L_REFADDR": "", "L_NREFADDR": "", "R_REFADDR": "", "R_NREFADDR": "", "SPEED_CAT": "", "ZIPCODE": "59331", "SHAPE_LEN": 40.200000 }, "geometry": { "type": "LineString", "coordinates": [ [ 1549763.755600, 6403714.004800 ], [ 1549738.019750, 6403704.509600 ], [ 1549731.660600, 6403715.640800 ] ] } }
|
||||||
|
,
|
||||||
|
{ "type": "Feature", "properties": { "LINK_ID": 80547428.000000, "RP_TYPE": 14, "RP_FUNC": 0, "DIRECTION": 0, "LOGKOD": "R", "CHANGED": "0808270936", "USERID": "LO-JKP", "ST_NAME": "HALLSTR<54>MSGATAN", "L_REFADDR": "10", "L_NREFADDR": "2", "R_REFADDR": "1", "R_NREFADDR": "1", "SPEED_CAT": "7", "ZIPCODE": "59331", "SHAPE_LEN": 15.200000 }, "geometry": { "type": "LineString", "coordinates": [ [ 1549766.018350, 6403708.067200 ], [ 1549763.755600, 6403714.004800 ], [ 1549760.669300, 6403722.331200 ] ] } }
|
||||||
|
,
|
||||||
|
{ "type": "Feature", "properties": { "LINK_ID": 0.000000, "RP_TYPE": 18, "RP_FUNC": 0, "DIRECTION": 0, "LOGKOD": "D", "CHANGED": "0808270936", "USERID": "LO-JKP", "ST_NAME": "HALLSTR<54>MSGATAN", "L_REFADDR": "", "L_NREFADDR": "", "R_REFADDR": "", "R_NREFADDR": "", "SPEED_CAT": "", "ZIPCODE": "59331", "SHAPE_LEN": 48.800000 }, "geometry": { "type": "LineString", "coordinates": [ [ 1549766.018350, 6403708.067200 ], [ 1549736.048550, 6403696.628800 ], [ 1549743.183300, 6403681.558400 ] ] } }
|
||||||
|
,
|
||||||
|
{ "type": "Feature", "properties": { "LINK_ID": 80547428.000000, "RP_TYPE": 14, "RP_FUNC": 0, "DIRECTION": 0, "LOGKOD": "R", "CHANGED": "0808270936", "USERID": "LO-JKP", "ST_NAME": "HALLSTR<54>MSGATAN", "L_REFADDR": "10", "L_NREFADDR": "2", "R_REFADDR": "1", "R_NREFADDR": "1", "SPEED_CAT": "7", "ZIPCODE": "59331", "SHAPE_LEN": 22.800000 }, "geometry": { "type": "LineString", "coordinates": [ [ 1549774.118750, 6403686.709600 ], [ 1549766.018350, 6403708.067200 ] ] } }
|
||||||
|
,
|
||||||
|
{ "type": "Feature", "properties": { "LINK_ID": 0.000000, "RP_TYPE": 18, "RP_FUNC": 0, "DIRECTION": 0, "LOGKOD": "D", "CHANGED": "0808270936", "USERID": "LO-JKP", "ST_NAME": "HALLSTR<54>MSGATAN", "L_REFADDR": "", "L_NREFADDR": "", "R_REFADDR": "", "R_NREFADDR": "", "SPEED_CAT": "", "ZIPCODE": "59331", "SHAPE_LEN": 36.200000 }, "geometry": { "type": "LineString", "coordinates": [ [ 1549774.118750, 6403686.709600 ], [ 1549747.876450, 6403676.916800 ], [ 1549751.868550, 6403670.136800 ] ] } }
|
||||||
|
,
|
||||||
|
{ "type": "Feature", "properties": { "LINK_ID": 80547428.000000, "RP_TYPE": 14, "RP_FUNC": 0, "DIRECTION": 0, "LOGKOD": "R", "CHANGED": "0808270937", "USERID": "LO-JKP", "ST_NAME": "HALLSTR<54>MSGATAN", "L_REFADDR": "10", "L_NREFADDR": "2", "R_REFADDR": "1", "R_NREFADDR": "1", "SPEED_CAT": "7", "ZIPCODE": "59331", "SHAPE_LEN": 25.900000 }, "geometry": { "type": "LineString", "coordinates": [ [ 1549783.651700, 6403662.588800 ], [ 1549778.530150, 6403674.660000 ], [ 1549774.118750, 6403686.709600 ] ] } }
|
||||||
|
,
|
||||||
|
{ "type": "Feature", "properties": { "LINK_ID": 80547535.000000, "RP_TYPE": 10, "RP_FUNC": 1, "DIRECTION": 1, "LOGKOD": "R", "CHANGED": "0808270938", "USERID": "LO-JKP", "ST_NAME": "ESPLANADEN", "L_REFADDR": "", "L_NREFADDR": "", "R_REFADDR": "5", "R_NREFADDR": "1", "SPEED_CAT": "6", "ZIPCODE": "59331", "SHAPE_LEN": 18.800000 }, "geometry": { "type": "LineString", "coordinates": [ [ 1549703.060000, 6403662.590400 ], [ 1549695.854900, 6403679.940000 ] ] } }
|
||||||
|
,
|
||||||
|
{ "type": "Feature", "properties": { "LINK_ID": 80547535.000000, "RP_TYPE": 10, "RP_FUNC": 1, "DIRECTION": 1, "LOGKOD": "R", "CHANGED": "0808270938", "USERID": "LO-JKP", "ST_NAME": "ESPLANADEN", "L_REFADDR": "", "L_NREFADDR": "", "R_REFADDR": "5", "R_NREFADDR": "1", "SPEED_CAT": "6", "ZIPCODE": "59331", "SHAPE_LEN": 38.600000 }, "geometry": { "type": "LineString", "coordinates": [ [ 1549695.854900, 6403679.940000 ], [ 1549681.045700, 6403715.598400 ] ] } }
|
||||||
|
,
|
||||||
|
{ "type": "Feature", "properties": { "LINK_ID": 0.000000, "RP_TYPE": 16, "RP_FUNC": 0, "DIRECTION": 0, "LOGKOD": "D", "CHANGED": "0808270938", "USERID": "LO-JKP", "ST_NAME": "ESPLANADEN", "L_REFADDR": "", "L_NREFADDR": "", "R_REFADDR": "", "R_NREFADDR": "", "SPEED_CAT": "", "ZIPCODE": "59331", "SHAPE_LEN": 27.100000 }, "geometry": { "type": "LineString", "coordinates": [ [ 1549695.854900, 6403679.940000 ], [ 1549710.817400, 6403684.797600 ], [ 1549716.384850, 6403674.867200 ] ] } }
|
||||||
|
,
|
||||||
|
{ "type": "Feature", "properties": { "LINK_ID": 0.000000, "RP_TYPE": 16, "RP_FUNC": 0, "DIRECTION": 0, "LOGKOD": "D", "CHANGED": "0808270939", "USERID": "LO-JKP", "ST_NAME": "ESPLANADEN", "L_REFADDR": "", "L_NREFADDR": "", "R_REFADDR": "", "R_NREFADDR": "", "SPEED_CAT": "", "ZIPCODE": "59331", "SHAPE_LEN": 18.900000 }, "geometry": { "type": "LineString", "coordinates": [ [ 1549704.982200, 6403658.172000 ], [ 1549717.515000, 6403662.725600 ], [ 1549719.527500, 6403657.506400 ] ] } }
|
||||||
|
,
|
||||||
|
{ "type": "Feature", "properties": { "LINK_ID": 0.000000, "RP_TYPE": 19, "RP_FUNC": 0, "DIRECTION": 0, "LOGKOD": "D", "CHANGED": "0808271124", "USERID": "LO-JKP", "ST_NAME": "F<>NGELSETORGET", "L_REFADDR": "", "L_NREFADDR": "", "R_REFADDR": "", "R_NREFADDR": "", "SPEED_CAT": "", "ZIPCODE": "59331", "SHAPE_LEN": 192.800000 }, "geometry": { "type": "LineString", "coordinates": [ [ 1549908.200950, 6403637.271200 ], [ 1549910.100750, 6403648.924800 ], [ 1549887.237000, 6403693.868800 ], [ 1549878.956000, 6403699.779200 ], [ 1549807.205300, 6403714.370400 ], [ 1549760.669300, 6403722.331200 ] ] } }
|
||||||
|
,
|
||||||
|
{ "type": "Feature", "properties": { "LINK_ID": 1900112527.000000, "RP_TYPE": 12, "RP_FUNC": 0, "DIRECTION": 2, "LOGKOD": "R", "CHANGED": "0808271126", "USERID": "LO-JKP", "ST_NAME": "F<>NGELSETORGET", "L_REFADDR": "", "L_NREFADDR": "", "R_REFADDR": "", "R_NREFADDR": "", "SPEED_CAT": "", "ZIPCODE": "59331", "SHAPE_LEN": 100.800000 }, "geometry": { "type": "LineString", "coordinates": [ [ 1549809.770450, 6403695.048800 ], [ 1549792.424450, 6403687.958400 ], [ 1549824.218800, 6403612.351200 ] ] } }
|
||||||
|
,
|
||||||
|
{ "type": "Feature", "properties": { "LINK_ID": 0.000000, "RP_TYPE": 19, "RP_FUNC": 0, "DIRECTION": 0, "LOGKOD": "D", "CHANGED": "0808271126", "USERID": "LO-JKP", "ST_NAME": "F<>NGELSETOGET", "L_REFADDR": "", "L_NREFADDR": "", "R_REFADDR": "", "R_NREFADDR": "", "SPEED_CAT": "", "ZIPCODE": "59331", "SHAPE_LEN": 17.500000 }, "geometry": { "type": "LineString", "coordinates": [ [ 1549817.102950, 6403710.910400 ], [ 1549809.770450, 6403695.048800 ] ] } }
|
||||||
|
,
|
||||||
|
{ "type": "Feature", "properties": { "LINK_ID": 80547449.000000, "RP_TYPE": 10, "RP_FUNC": 1, "DIRECTION": 0, "LOGKOD": "R", "CHANGED": "0808271128", "USERID": "LO-JKP", "ST_NAME": "S<>DRA VARVSGATAN", "L_REFADDR": "40", "L_NREFADDR": "32", "R_REFADDR": "21", "R_NREFADDR": "15", "SPEED_CAT": "6", "ZIPCODE": "59350", "SHAPE_LEN": 23.500000 }, "geometry": { "type": "LineString", "coordinates": [ [ 1549989.554600, 6403806.848000 ], [ 1549976.880050, 6403812.990400 ], [ 1549968.489850, 6403817.350400 ] ] } }
|
||||||
|
,
|
||||||
|
{ "type": "Feature", "properties": { "LINK_ID": 573730501.000000, "RP_TYPE": 14, "RP_FUNC": 0, "DIRECTION": 0, "LOGKOD": "R", "CHANGED": "0808271500", "USERID": "LO-JKP", "ST_NAME": "", "L_REFADDR": "", "L_NREFADDR": "", "R_REFADDR": "", "R_NREFADDR": "", "SPEED_CAT": "7", "ZIPCODE": "59330", "SHAPE_LEN": 9.900000 }, "geometry": { "type": "LineString", "coordinates": [ [ 1549570.600050, 6403733.360000 ], [ 1549579.722100, 6403737.201600 ] ] } }
|
||||||
|
,
|
||||||
|
{ "type": "Feature", "properties": { "LINK_ID": 573730501.000000, "RP_TYPE": 14, "RP_FUNC": 0, "DIRECTION": 0, "LOGKOD": "R", "CHANGED": "0808271500", "USERID": "LO-JKP", "ST_NAME": "", "L_REFADDR": "", "L_NREFADDR": "", "R_REFADDR": "", "R_NREFADDR": "", "SPEED_CAT": "7", "ZIPCODE": "59330", "SHAPE_LEN": 4.900000 }, "geometry": { "type": "LineString", "coordinates": [ [ 1549579.722100, 6403737.201600 ], [ 1549584.219950, 6403739.090400 ] ] } }
|
||||||
|
,
|
||||||
|
{ "type": "Feature", "properties": { "LINK_ID": 573730505.000000, "RP_TYPE": 14, "RP_FUNC": 0, "DIRECTION": 0, "LOGKOD": "R", "CHANGED": "0808271504", "USERID": "LO-JKP", "ST_NAME": "L<>ROVERKSGATAN", "L_REFADDR": "", "L_NREFADDR": "", "R_REFADDR": "", "R_NREFADDR": "", "SPEED_CAT": "7", "ZIPCODE": "59333", "SHAPE_LEN": 79.800000 }, "geometry": { "type": "LineString", "coordinates": [ [ 1549471.922100, 6403800.288000 ], [ 1549539.838900, 6403825.187200 ], [ 1549546.809850, 6403827.740000 ] ] } }
|
||||||
|
,
|
||||||
|
{ "type": "Feature", "properties": { "LINK_ID": 0.000000, "RP_TYPE": 19, "RP_FUNC": 0, "DIRECTION": 0, "LOGKOD": "R", "CHANGED": "0808271508", "USERID": "LO-JKP", "ST_NAME": "S<>DRA J<>RNV<4E>GSGATAN", "L_REFADDR": "", "L_NREFADDR": "", "R_REFADDR": "", "R_NREFADDR": "", "SPEED_CAT": "", "ZIPCODE": "59332", "SHAPE_LEN": 23.000000 }, "geometry": { "type": "LineString", "coordinates": [ [ 1549574.529850, 6403669.305600 ], [ 1549580.125650, 6403672.576800 ], [ 1549595.345750, 6403678.918400 ] ] } }
|
||||||
|
,
|
||||||
|
{ "type": "Feature", "properties": { "LINK_ID": 0.000000, "RP_TYPE": 19, "RP_FUNC": 0, "DIRECTION": 0, "LOGKOD": "R", "CHANGED": "0808271508", "USERID": "LO-JKP", "ST_NAME": "S<>DRA J<>RNV<4E>GSGATAN", "L_REFADDR": "", "L_NREFADDR": "", "R_REFADDR": "", "R_NREFADDR": "", "SPEED_CAT": "", "ZIPCODE": "59332", "SHAPE_LEN": 80.000000 }, "geometry": { "type": "LineString", "coordinates": [ [ 1549595.345750, 6403678.918400 ], [ 1549617.976400, 6403688.348000 ], [ 1549648.329450, 6403702.939200 ], [ 1549654.639250, 6403704.509600 ], [ 1549660.157350, 6403703.329600 ], [ 1549667.935400, 6403709.100000 ] ] } }
|
||||||
|
,
|
||||||
|
{ "type": "Feature", "properties": { "LINK_ID": 0.000000, "RP_TYPE": 19, "RP_FUNC": 0, "DIRECTION": 0, "LOGKOD": "D", "CHANGED": "0808271508", "USERID": "LO-JKP", "ST_NAME": "<22>STRA KYRKOGATAN", "L_REFADDR": "", "L_NREFADDR": "", "R_REFADDR": "", "R_NREFADDR": "", "SPEED_CAT": "", "ZIPCODE": "59333", "SHAPE_LEN": 68.800000 }, "geometry": { "type": "LineString", "coordinates": [ [ 1549579.722100, 6403737.201600 ], [ 1549586.633550, 6403729.352000 ], [ 1549598.065250, 6403704.509600 ], [ 1549595.698200, 6403698.599200 ], [ 1549588.604750, 6403693.078400 ], [ 1549592.674200, 6403684.530400 ], [ 1549595.345750, 6403678.918400 ] ] } }
|
||||||
|
,
|
||||||
|
{ "type": "Feature", "properties": { "LINK_ID": 0.000000, "RP_TYPE": 19, "RP_FUNC": 0, "DIRECTION": 0, "LOGKOD": "R", "CHANGED": "0808271508", "USERID": "LO-JKP", "ST_NAME": "KVARNGATAN", "L_REFADDR": "", "L_NREFADDR": "", "R_REFADDR": "", "R_NREFADDR": "", "SPEED_CAT": "", "ZIPCODE": "59333", "SHAPE_LEN": 185.700000 }, "geometry": { "type": "LineString", "coordinates": [ [ 1549495.671350, 6403901.486400 ], [ 1549498.716350, 6403900.056000 ], [ 1549509.356700, 6403886.655200 ], [ 1549520.005100, 6403865.753600 ], [ 1549533.012150, 6403839.740800 ], [ 1549539.838900, 6403825.187200 ], [ 1549547.990750, 6403807.808000 ], [ 1549557.459650, 6403786.516800 ], [ 1549566.128450, 6403765.624800 ], [ 1549574.805650, 6403746.692800 ], [ 1549579.722100, 6403737.201600 ] ] } }
|
||||||
|
,
|
||||||
|
{ "type": "Feature", "properties": { "LINK_ID": 80547462.000000, "RP_TYPE": 12, "RP_FUNC": 1, "DIRECTION": 0, "LOGKOD": "R", "CHANGED": "0808271508", "USERID": "LO-JKP", "ST_NAME": "<22>STRA KYRKOGATAN", "L_REFADDR": "44", "L_NREFADDR": "38", "R_REFADDR": "61", "R_NREFADDR": "53", "SPEED_CAT": "7", "ZIPCODE": "59333", "SHAPE_LEN": 14.200000 }, "geometry": { "type": "LineString", "coordinates": [ [ 1549501.325600, 6403908.552800 ], [ 1549497.550150, 6403911.790400 ], [ 1549488.599950, 6403913.910400 ] ] } }
|
||||||
|
,
|
||||||
|
{ "type": "Feature", "properties": { "LINK_ID": 0.000000, "RP_TYPE": 19, "RP_FUNC": 0, "DIRECTION": 0, "LOGKOD": "D", "CHANGED": "0808271508", "USERID": "LO-JKP", "ST_NAME": "<22>STRA KYRKOGATAN", "L_REFADDR": "", "L_NREFADDR": "", "R_REFADDR": "", "R_NREFADDR": "", "SPEED_CAT": "", "ZIPCODE": "59333", "SHAPE_LEN": 9.100000 }, "geometry": { "type": "LineString", "coordinates": [ [ 1549495.671350, 6403901.486400 ], [ 1549501.325600, 6403908.552800 ] ] } }
|
||||||
|
,
|
||||||
|
{ "type": "Feature", "properties": { "LINK_ID": 0.000000, "RP_TYPE": 19, "RP_FUNC": 0, "DIRECTION": 0, "LOGKOD": "R", "CHANGED": "0808271509", "USERID": "LO-JKP", "ST_NAME": "SLOTTHOLMSLEDEN", "L_REFADDR": "", "L_NREFADDR": "", "R_REFADDR": "", "R_NREFADDR": "", "SPEED_CAT": "", "ZIPCODE": "59331", "SHAPE_LEN": 29.400000 }, "geometry": { "type": "LineString", "coordinates": [ [ 1549745.501350, 6403736.423200 ], [ 1549760.487650, 6403761.674400 ] ] } }
|
||||||
|
,
|
||||||
|
{ "type": "Feature", "properties": { "LINK_ID": 0.000000, "RP_TYPE": 19, "RP_FUNC": 0, "DIRECTION": 0, "LOGKOD": "R", "CHANGED": "0808271509", "USERID": "LO-JKP", "ST_NAME": "SLOTTHOLMSLEDEN", "L_REFADDR": "", "L_NREFADDR": "", "R_REFADDR": "", "R_NREFADDR": "", "SPEED_CAT": "", "ZIPCODE": "59331", "SHAPE_LEN": 130.200000 }, "geometry": { "type": "LineString", "coordinates": [ [ 1549760.487650, 6403761.674400 ], [ 1549773.107600, 6403768.775200 ], [ 1549794.000150, 6403771.925600 ], [ 1549806.223900, 6403771.925600 ], [ 1549847.621200, 6403768.775200 ], [ 1549874.427700, 6403767.595200 ], [ 1549888.409150, 6403767.056000 ] ] } }
|
||||||
|
,
|
||||||
|
{ "type": "Feature", "properties": { "LINK_ID": 30760574.000000, "RP_TYPE": 12, "RP_FUNC": 0, "DIRECTION": 0, "LOGKOD": "R", "CHANGED": "0808271509", "USERID": "LO-JKP", "ST_NAME": "B<>TSMANSGATAN", "L_REFADDR": "26", "L_NREFADDR": "24", "R_REFADDR": "", "R_NREFADDR": "", "SPEED_CAT": "6", "ZIPCODE": "59330", "SHAPE_LEN": 5.600000 }, "geometry": { "type": "LineString", "coordinates": [ [ 1549703.919950, 6403834.130400 ], [ 1549709.114300, 6403836.262400 ] ] } }
|
||||||
|
,
|
||||||
|
{ "type": "Feature", "properties": { "LINK_ID": 30760574.000000, "RP_TYPE": 12, "RP_FUNC": 0, "DIRECTION": 0, "LOGKOD": "R", "CHANGED": "0808271509", "USERID": "LO-JKP", "ST_NAME": "B<>TSMANSGATAN", "L_REFADDR": "26", "L_NREFADDR": "24", "R_REFADDR": "", "R_NREFADDR": "", "SPEED_CAT": "6", "ZIPCODE": "59330", "SHAPE_LEN": 48.800000 }, "geometry": { "type": "LineString", "coordinates": [ [ 1549709.114300, 6403836.262400 ], [ 1549754.276900, 6403854.802400 ] ] } }
|
||||||
|
,
|
||||||
|
{ "type": "Feature", "properties": { "LINK_ID": 30760590.000000, "RP_TYPE": 12, "RP_FUNC": 0, "DIRECTION": 0, "LOGKOD": "R", "CHANGED": "0808271510", "USERID": "LO-JKP", "ST_NAME": "B<>TSMANSGATAN", "L_REFADDR": "30", "L_NREFADDR": "28", "R_REFADDR": "", "R_NREFADDR": "", "SPEED_CAT": "6", "ZIPCODE": "59330", "SHAPE_LEN": 37.200000 }, "geometry": { "type": "LineString", "coordinates": [ [ 1549635.170150, 6403808.780000 ], [ 1549670.099800, 6403821.660000 ] ] } }
|
||||||
|
,
|
||||||
|
{ "type": "Feature", "properties": { "LINK_ID": 0.000000, "RP_TYPE": 16, "RP_FUNC": 0, "DIRECTION": 0, "LOGKOD": "D", "CHANGED": "0808271510", "USERID": "LO-JKP", "ST_NAME": "B<>TSMANSGATAN", "L_REFADDR": "", "L_NREFADDR": "", "R_REFADDR": "", "R_NREFADDR": "", "SPEED_CAT": "", "ZIPCODE": "59330", "SHAPE_LEN": 45.400000 }, "geometry": { "type": "LineString", "coordinates": [ [ 1549670.099800, 6403821.660000 ], [ 1549661.138750, 6403843.681600 ], [ 1549652.074100, 6403839.340800 ], [ 1549647.702600, 6403850.082400 ] ] } }
|
||||||
|
,
|
||||||
|
{ "type": "Feature", "properties": { "LINK_ID": 30760590.000000, "RP_TYPE": 12, "RP_FUNC": 0, "DIRECTION": 0, "LOGKOD": "R", "CHANGED": "0808271511", "USERID": "LO-JKP", "ST_NAME": "B<>TSMANSGATAN", "L_REFADDR": "30", "L_NREFADDR": "28", "R_REFADDR": "", "R_NREFADDR": "", "SPEED_CAT": "6", "ZIPCODE": "59330", "SHAPE_LEN": 4.700000 }, "geometry": { "type": "LineString", "coordinates": [ [ 1549670.099800, 6403821.660000 ], [ 1549674.526600, 6403823.292000 ] ] } }
|
||||||
|
,
|
||||||
|
{ "type": "Feature", "properties": { "LINK_ID": 30760590.000000, "RP_TYPE": 12, "RP_FUNC": 0, "DIRECTION": 0, "LOGKOD": "R", "CHANGED": "0808271511", "USERID": "LO-JKP", "ST_NAME": "B<>TSMANSGATAN", "L_REFADDR": "30", "L_NREFADDR": "28", "R_REFADDR": "", "R_NREFADDR": "", "SPEED_CAT": "6", "ZIPCODE": "59330", "SHAPE_LEN": 31.300000 }, "geometry": { "type": "LineString", "coordinates": [ [ 1549674.526600, 6403823.292000 ], [ 1549703.919950, 6403834.130400 ] ] } }
|
||||||
|
,
|
||||||
|
{ "type": "Feature", "properties": { "LINK_ID": 0.000000, "RP_TYPE": 16, "RP_FUNC": 0, "DIRECTION": 0, "LOGKOD": "D", "CHANGED": "0808271511", "USERID": "LO-JKP", "ST_NAME": "B<>TSMANSGATAN", "L_REFADDR": "", "L_NREFADDR": "", "R_REFADDR": "", "R_NREFADDR": "", "SPEED_CAT": "", "ZIPCODE": "59330", "SHAPE_LEN": 23.800000 }, "geometry": { "type": "LineString", "coordinates": [ [ 1549674.526600, 6403823.292000 ], [ 1549664.644350, 6403844.952000 ] ] } }
|
||||||
|
,
|
||||||
|
{ "type": "Feature", "properties": { "LINK_ID": 0.000000, "RP_TYPE": 19, "RP_FUNC": 0, "DIRECTION": 0, "LOGKOD": "R", "CHANGED": "0808271512", "USERID": "LO-JKP", "ST_NAME": "BREDGATAN", "L_REFADDR": "", "L_NREFADDR": "", "R_REFADDR": "", "R_NREFADDR": "", "SPEED_CAT": "", "ZIPCODE": "59330", "SHAPE_LEN": 47.100000 }, "geometry": { "type": "LineString", "coordinates": [ [ 1549760.487650, 6403761.674400 ], [ 1549753.539450, 6403766.201600 ], [ 1549734.473200, 6403778.625600 ], [ 1549728.022350, 6403793.287200 ] ] } }
|
||||||
|
,
|
||||||
|
{ "type": "Feature", "properties": { "LINK_ID": 0.000000, "RP_TYPE": 19, "RP_FUNC": 0, "DIRECTION": 0, "LOGKOD": "R", "CHANGED": "0808271513", "USERID": "LO-JKP", "ST_NAME": "BREDGATAN", "L_REFADDR": "", "L_NREFADDR": "", "R_REFADDR": "", "R_NREFADDR": "", "SPEED_CAT": "", "ZIPCODE": "59330", "SHAPE_LEN": 9.300000 }, "geometry": { "type": "LineString", "coordinates": [ [ 1549728.022350, 6403793.287200 ], [ 1549724.270700, 6403801.813600 ] ] } }
|
||||||
|
,
|
||||||
|
{ "type": "Feature", "properties": { "LINK_ID": 0.000000, "RP_TYPE": 19, "RP_FUNC": 0, "DIRECTION": 0, "LOGKOD": "R", "CHANGED": "0808271513", "USERID": "LO-JKP", "ST_NAME": "BREDGATAN", "L_REFADDR": "", "L_NREFADDR": "", "R_REFADDR": "", "R_NREFADDR": "", "SPEED_CAT": "", "ZIPCODE": "59330", "SHAPE_LEN": 37.600000 }, "geometry": { "type": "LineString", "coordinates": [ [ 1549724.270700, 6403801.813600 ], [ 1549709.114300, 6403836.262400 ] ] } }
|
||||||
|
,
|
||||||
|
{ "type": "Feature", "properties": { "LINK_ID": 0.000000, "RP_TYPE": 19, "RP_FUNC": 0, "DIRECTION": 0, "LOGKOD": "R", "CHANGED": "0808271514", "USERID": "LO-JKP", "ST_NAME": "BREDGATAN", "L_REFADDR": "", "L_NREFADDR": "", "R_REFADDR": "", "R_NREFADDR": "", "SPEED_CAT": "", "ZIPCODE": "59330", "SHAPE_LEN": 51.100000 }, "geometry": { "type": "LineString", "coordinates": [ [ 1549754.276900, 6403854.802400 ], [ 1549737.228050, 6403806.618400 ] ] } }
|
||||||
|
,
|
||||||
|
{ "type": "Feature", "properties": { "LINK_ID": 0.000000, "RP_TYPE": 19, "RP_FUNC": 0, "DIRECTION": 0, "LOGKOD": "R", "CHANGED": "0808271514", "USERID": "LO-JKP", "ST_NAME": "BREDGATAN", "L_REFADDR": "", "L_NREFADDR": "", "R_REFADDR": "", "R_NREFADDR": "", "SPEED_CAT": "", "ZIPCODE": "59330", "SHAPE_LEN": 13.800000 }, "geometry": { "type": "LineString", "coordinates": [ [ 1549737.228050, 6403806.618400 ], [ 1549724.270700, 6403801.813600 ] ] } }
|
||||||
|
,
|
||||||
|
{ "type": "Feature", "properties": { "LINK_ID": 80547503.000000, "RP_TYPE": 12, "RP_FUNC": 1, "DIRECTION": 0, "LOGKOD": "R", "CHANGED": "0808271514", "USERID": "LO-JKP", "ST_NAME": "BRUNNSGATAN", "L_REFADDR": "", "L_NREFADDR": "", "R_REFADDR": "25", "R_NREFADDR": "25", "SPEED_CAT": "7", "ZIPCODE": "59330", "SHAPE_LEN": 17.200000 }, "geometry": { "type": "LineString", "coordinates": [ [ 1549774.889100, 6403793.607200 ], [ 1549771.489900, 6403810.460000 ] ] } }
|
||||||
|
,
|
||||||
|
{ "type": "Feature", "properties": { "LINK_ID": 0.000000, "RP_TYPE": 19, "RP_FUNC": 0, "DIRECTION": 0, "LOGKOD": "D", "CHANGED": "0808271514", "USERID": "LO-JKP", "ST_NAME": "BRUNNSGATAN", "L_REFADDR": "", "L_NREFADDR": "", "R_REFADDR": "", "R_NREFADDR": "", "SPEED_CAT": "", "ZIPCODE": "59330", "SHAPE_LEN": 40.200000 }, "geometry": { "type": "LineString", "coordinates": [ [ 1549737.228050, 6403806.618400 ], [ 1549769.560700, 6403793.607200 ], [ 1549774.889100, 6403793.607200 ] ] } }
|
||||||
|
,
|
||||||
|
{ "type": "Feature", "properties": { "LINK_ID": 80547503.000000, "RP_TYPE": 12, "RP_FUNC": 1, "DIRECTION": 0, "LOGKOD": "R", "CHANGED": "0808271515", "USERID": "LO-JKP", "ST_NAME": "BRUNNSGATAN", "L_REFADDR": "", "L_NREFADDR": "", "R_REFADDR": "25", "R_NREFADDR": "25", "SPEED_CAT": "7", "ZIPCODE": "59330", "SHAPE_LEN": 14.500000 }, "geometry": { "type": "LineString", "coordinates": [ [ 1549776.080150, 6403777.100000 ], [ 1549775.301400, 6403791.567200 ] ] } }
|
||||||
|
,
|
||||||
|
{ "type": "Feature", "properties": { "LINK_ID": 80547503.000000, "RP_TYPE": 12, "RP_FUNC": 1, "DIRECTION": 0, "LOGKOD": "R", "CHANGED": "0808271515", "USERID": "LO-JKP", "ST_NAME": "BRUNNSGATAN", "L_REFADDR": "", "L_NREFADDR": "", "R_REFADDR": "25", "R_NREFADDR": "25", "SPEED_CAT": "7", "ZIPCODE": "59330", "SHAPE_LEN": 2.100000 }, "geometry": { "type": "LineString", "coordinates": [ [ 1549775.301400, 6403791.567200 ], [ 1549774.889100, 6403793.607200 ] ] } }
|
||||||
|
,
|
||||||
|
{ "type": "Feature", "properties": { "LINK_ID": 0.000000, "RP_TYPE": 19, "RP_FUNC": 0, "DIRECTION": 0, "LOGKOD": "R", "CHANGED": "0808271516", "USERID": "LO-JKP", "ST_NAME": "SLOTTHOLMSLEDEN", "L_REFADDR": "", "L_NREFADDR": "", "R_REFADDR": "", "R_NREFADDR": "", "SPEED_CAT": "", "ZIPCODE": "59331", "SHAPE_LEN": 23.500000 }, "geometry": { "type": "LineString", "coordinates": [ [ 1549888.409150, 6403767.056000 ], [ 1549894.924400, 6403766.804800 ], [ 1549911.882600, 6403767.984800 ] ] } }
|
||||||
|
,
|
||||||
|
{ "type": "Feature", "properties": { "LINK_ID": 0.000000, "RP_TYPE": 19, "RP_FUNC": 0, "DIRECTION": 0, "LOGKOD": "R", "CHANGED": "0808271516", "USERID": "LO-JKP", "ST_NAME": "SLOTTHOLMSLEDEN", "L_REFADDR": "", "L_NREFADDR": "", "R_REFADDR": "", "R_NREFADDR": "", "SPEED_CAT": "", "ZIPCODE": "59331", "SHAPE_LEN": 15.500000 }, "geometry": { "type": "LineString", "coordinates": [ [ 1549911.882600, 6403767.984800 ], [ 1549927.421200, 6403767.822400 ] ] } }
|
||||||
|
,
|
||||||
|
{ "type": "Feature", "properties": { "LINK_ID": 30760596.000000, "RP_TYPE": 14, "RP_FUNC": 0, "DIRECTION": 0, "LOGKOD": "R", "CHANGED": "0808271516", "USERID": "LO-JKP", "ST_NAME": "NORRA J<>RNV<4E>GSGATAN", "L_REFADDR": "12", "L_NREFADDR": "6", "R_REFADDR": "", "R_NREFADDR": "", "SPEED_CAT": "7", "ZIPCODE": "59330", "SHAPE_LEN": 68.600000 }, "geometry": { "type": "LineString", "coordinates": [ [ 1549818.068600, 6403799.888800 ], [ 1549884.091550, 6403818.700000 ] ] } }
|
||||||
|
,
|
||||||
|
{ "type": "Feature", "properties": { "LINK_ID": 30760596.000000, "RP_TYPE": 14, "RP_FUNC": 0, "DIRECTION": 0, "LOGKOD": "R", "CHANGED": "0808271516", "USERID": "LO-JKP", "ST_NAME": "NORRA J<>RNV<4E>GSGATAN", "L_REFADDR": "12", "L_NREFADDR": "6", "R_REFADDR": "", "R_NREFADDR": "", "SPEED_CAT": "7", "ZIPCODE": "59330", "SHAPE_LEN": 7.800000 }, "geometry": { "type": "LineString", "coordinates": [ [ 1549884.091550, 6403818.700000 ], [ 1549891.640000, 6403820.850400 ] ] } }
|
||||||
|
,
|
||||||
|
{ "type": "Feature", "properties": { "LINK_ID": 0.000000, "RP_TYPE": 19, "RP_FUNC": 0, "DIRECTION": 0, "LOGKOD": "D", "CHANGED": "0808271516", "USERID": "LO-JKP", "ST_NAME": "STR<54>MSGATAN", "L_REFADDR": "", "L_NREFADDR": "", "R_REFADDR": "", "R_NREFADDR": "", "SPEED_CAT": "", "ZIPCODE": "59330", "SHAPE_LEN": 58.200000 }, "geometry": { "type": "LineString", "coordinates": [ [ 1549911.882600, 6403767.984800 ], [ 1549908.484450, 6403777.327200 ], [ 1549905.284050, 6403786.126400 ], [ 1549884.091550, 6403818.700000 ] ] } }
|
||||||
|
,
|
||||||
|
{ "type": "Feature", "properties": { "LINK_ID": 30760579.000000, "RP_TYPE": 14, "RP_FUNC": 0, "DIRECTION": 0, "LOGKOD": "R", "CHANGED": "0808271517", "USERID": "LO-JKP", "ST_NAME": "NORRA J<>RNV<4E>GSGATAN", "L_REFADDR": "4", "L_NREFADDR": "2", "R_REFADDR": "", "R_NREFADDR": "", "SPEED_CAT": "7", "ZIPCODE": "59330", "SHAPE_LEN": 6.400000 }, "geometry": { "type": "LineString", "coordinates": [ [ 1549891.640000, 6403820.850400 ], [ 1549897.839200, 6403822.604000 ] ] } }
|
||||||
|
,
|
||||||
|
{ "type": "Feature", "properties": { "LINK_ID": 0.000000, "RP_TYPE": 19, "RP_FUNC": 0, "DIRECTION": 0, "LOGKOD": "D", "CHANGED": "0808271517", "USERID": "LO-JKP", "ST_NAME": "STR<54>MSGATAN", "L_REFADDR": "", "L_NREFADDR": "", "R_REFADDR": "", "R_NREFADDR": "", "SPEED_CAT": "", "ZIPCODE": "59330", "SHAPE_LEN": 61.200000 }, "geometry": { "type": "LineString", "coordinates": [ [ 1549936.717550, 6403775.876000 ], [ 1549931.136800, 6403785.640000 ], [ 1549927.257050, 6403792.427200 ], [ 1549897.839200, 6403822.604000 ] ] } }
|
||||||
|
,
|
||||||
|
{ "type": "Feature", "properties": { "LINK_ID": 0.000000, "RP_TYPE": 19, "RP_FUNC": 0, "DIRECTION": 0, "LOGKOD": "D", "CHANGED": "0808271517", "USERID": "LO-JKP", "ST_NAME": "SLOTTSHOLMSLEDEN", "L_REFADDR": "", "L_NREFADDR": "", "R_REFADDR": "", "R_NREFADDR": "", "SPEED_CAT": "", "ZIPCODE": "59331", "SHAPE_LEN": 7.000000 }, "geometry": { "type": "LineString", "coordinates": [ [ 1549982.841250, 6403805.048000 ], [ 1549989.554600, 6403806.848000 ] ] } }
|
||||||
|
,
|
||||||
|
{ "type": "Feature", "properties": { "LINK_ID": 0.000000, "RP_TYPE": 19, "RP_FUNC": 0, "DIRECTION": 0, "LOGKOD": "R", "CHANGED": "0808271518", "USERID": "LO-JKP", "ST_NAME": "SLOTTSHOLMSLEDEN", "L_REFADDR": "", "L_NREFADDR": "", "R_REFADDR": "", "R_NREFADDR": "", "SPEED_CAT": "", "ZIPCODE": "59330", "SHAPE_LEN": 14.000000 }, "geometry": { "type": "LineString", "coordinates": [ [ 1549775.301400, 6403791.567200 ], [ 1549789.273750, 6403792.036800 ] ] } }
|
||||||
|
,
|
||||||
|
{ "type": "Feature", "properties": { "LINK_ID": 0.000000, "RP_TYPE": 19, "RP_FUNC": 0, "DIRECTION": 0, "LOGKOD": "R", "CHANGED": "0808271518", "USERID": "LO-JKP", "ST_NAME": "SLOTTSHOLMSLEDEN", "L_REFADDR": "", "L_NREFADDR": "", "R_REFADDR": "", "R_NREFADDR": "", "SPEED_CAT": "", "ZIPCODE": "59330", "SHAPE_LEN": 116.600000 }, "geometry": { "type": "LineString", "coordinates": [ [ 1549789.273750, 6403792.036800 ], [ 1549820.418850, 6403786.116800 ], [ 1549862.599800, 6403784.936000 ], [ 1549905.284050, 6403786.126400 ] ] } }
|
||||||
|
,
|
||||||
|
{ "type": "Feature", "properties": { "LINK_ID": 0.000000, "RP_TYPE": 16, "RP_FUNC": 0, "DIRECTION": 0, "LOGKOD": "D", "CHANGED": "0808271518", "USERID": "LO-JKP", "ST_NAME": "NORRA J<>RNV<4E>GSGATAN", "L_REFADDR": "", "L_NREFADDR": "", "R_REFADDR": "", "R_NREFADDR": "", "SPEED_CAT": "", "ZIPCODE": "59330", "SHAPE_LEN": 29.800000 }, "geometry": { "type": "LineString", "coordinates": [ [ 1549818.068600, 6403799.888800 ], [ 1549789.273750, 6403792.036800 ] ] } }
|
||||||
|
,
|
||||||
|
{ "type": "Feature", "properties": { "LINK_ID": 80547461.000000, "RP_TYPE": 12, "RP_FUNC": 0, "DIRECTION": 0, "LOGKOD": "R", "CHANGED": "0808280759", "USERID": "LO-JKP", "ST_NAME": "V<>RDTR<54>DSPLAN", "L_REFADDR": "", "L_NREFADDR": "", "R_REFADDR": "7", "R_NREFADDR": "3", "SPEED_CAT": "6", "ZIPCODE": "59330", "SHAPE_LEN": 93.100000 }, "geometry": { "type": "LineString", "coordinates": [ [ 1549635.170150, 6403808.780000 ], [ 1549633.900000, 6403814.330400 ], [ 1549618.609900, 6403847.560000 ], [ 1549614.980050, 6403851.970400 ], [ 1549605.460050, 6403851.850400 ], [ 1549590.180100, 6403883.960800 ] ] } }
|
||||||
|
,
|
||||||
|
{ "type": "Feature", "properties": { "LINK_ID": 80547461.000000, "RP_TYPE": 12, "RP_FUNC": 0, "DIRECTION": 0, "LOGKOD": "R", "CHANGED": "0808280759", "USERID": "LO-JKP", "ST_NAME": "V<>RDTR<54>DSPLAN", "L_REFADDR": "", "L_NREFADDR": "", "R_REFADDR": "7", "R_NREFADDR": "3", "SPEED_CAT": "6", "ZIPCODE": "59330", "SHAPE_LEN": 51.200000 }, "geometry": { "type": "LineString", "coordinates": [ [ 1549590.180100, 6403883.960800 ], [ 1549568.259950, 6403874.780000 ], [ 1549542.790100, 6403864.450400 ] ] } }
|
||||||
|
,
|
||||||
|
{ "type": "Feature", "properties": { "LINK_ID": 0.000000, "RP_TYPE": 19, "RP_FUNC": 0, "DIRECTION": 0, "LOGKOD": "D", "CHANGED": "0808280759", "USERID": "LO-JKP", "ST_NAME": "V<>RDTR<54>DSPLAN", "L_REFADDR": "", "L_NREFADDR": "", "R_REFADDR": "", "R_NREFADDR": "", "SPEED_CAT": "", "ZIPCODE": "59330", "SHAPE_LEN": 99.400000 }, "geometry": { "type": "LineString", "coordinates": [ [ 1549555.330250, 6403958.170400 ], [ 1549562.119900, 6403948.800800 ], [ 1549569.040100, 6403929.018400 ], [ 1549576.364550, 6403927.638400 ], [ 1549583.482500, 6403925.468800 ], [ 1549590.600800, 6403917.357600 ], [ 1549593.767950, 6403909.047200 ], [ 1549596.737350, 6403902.126400 ], [ 1549585.857950, 6403894.605600 ], [ 1549590.180100, 6403883.960800 ] ] } }
|
||||||
|
,
|
||||||
|
{ "type": "Feature", "properties": { "LINK_ID": 30760476.000000, "RP_TYPE": 14, "RP_FUNC": 0, "DIRECTION": 0, "LOGKOD": "R", "CHANGED": "0808280801", "USERID": "LO-JKP", "ST_NAME": "NYGATAN", "L_REFADDR": "12", "L_NREFADDR": "10", "R_REFADDR": "", "R_NREFADDR": "", "SPEED_CAT": "7", "ZIPCODE": "59330", "SHAPE_LEN": 62.700000 }, "geometry": { "type": "LineString", "coordinates": [ [ 1549723.519950, 6403934.620000 ], [ 1549782.972000, 6403954.418400 ] ] } }
|
||||||
|
,
|
||||||
|
{ "type": "Feature", "properties": { "LINK_ID": 30760476.000000, "RP_TYPE": 14, "RP_FUNC": 0, "DIRECTION": 0, "LOGKOD": "R", "CHANGED": "0808280801", "USERID": "LO-JKP", "ST_NAME": "NYGATAN", "L_REFADDR": "12", "L_NREFADDR": "10", "R_REFADDR": "", "R_NREFADDR": "", "SPEED_CAT": "7", "ZIPCODE": "59330", "SHAPE_LEN": 14.200000 }, "geometry": { "type": "LineString", "coordinates": [ [ 1549782.972000, 6403954.418400 ], [ 1549796.459950, 6403958.910400 ] ] } }
|
||||||
|
,
|
||||||
|
{ "type": "Feature", "properties": { "LINK_ID": 30760555.000000, "RP_TYPE": 14, "RP_FUNC": 0, "DIRECTION": 0, "LOGKOD": "R", "CHANGED": "0808280803", "USERID": "LO-JKP", "ST_NAME": "B<>TSMANSGATAN", "L_REFADDR": "", "L_NREFADDR": "", "R_REFADDR": "33", "R_NREFADDR": "31", "SPEED_CAT": "7", "ZIPCODE": "59330", "SHAPE_LEN": 37.100000 }, "geometry": { "type": "LineString", "coordinates": [ [ 1549754.276900, 6403854.802400 ], [ 1549789.877500, 6403865.172000 ] ] } }
|
||||||
|
,
|
||||||
|
{ "type": "Feature", "properties": { "LINK_ID": 30760555.000000, "RP_TYPE": 14, "RP_FUNC": 0, "DIRECTION": 0, "LOGKOD": "R", "CHANGED": "0808280803", "USERID": "LO-JKP", "ST_NAME": "B<>TSMANSGATAN", "L_REFADDR": "", "L_NREFADDR": "", "R_REFADDR": "33", "R_NREFADDR": "31", "SPEED_CAT": "7", "ZIPCODE": "59330", "SHAPE_LEN": 8.600000 }, "geometry": { "type": "LineString", "coordinates": [ [ 1549789.877500, 6403865.172000 ], [ 1549798.179850, 6403867.590400 ] ] } }
|
||||||
|
,
|
||||||
|
{ "type": "Feature", "properties": { "LINK_ID": 0.000000, "RP_TYPE": 14, "RP_FUNC": 0, "DIRECTION": 0, "LOGKOD": "D", "CHANGED": "0808280803", "USERID": "LO-JKP", "ST_NAME": "G<>STA BERNARDS GATA", "L_REFADDR": "", "L_NREFADDR": "", "R_REFADDR": "", "R_NREFADDR": "", "SPEED_CAT": "", "ZIPCODE": "59330", "SHAPE_LEN": 44.000000 }, "geometry": { "type": "LineString", "coordinates": [ [ 1549763.127350, 6403899.236800 ], [ 1549769.602000, 6403885.904800 ], [ 1549772.571400, 6403880.964800 ], [ 1549789.877500, 6403865.172000 ] ] } }
|
||||||
|
,
|
||||||
|
{ "type": "Feature", "properties": { "LINK_ID": 0.000000, "RP_TYPE": 12, "RP_FUNC": 0, "DIRECTION": 0, "LOGKOD": "R", "CHANGED": "0808280805", "USERID": "LO-JKP", "ST_NAME": "GR<47>NA GR<47>ND", "L_REFADDR": "", "L_NREFADDR": "", "R_REFADDR": "", "R_NREFADDR": "", "SPEED_CAT": "", "ZIPCODE": "59330", "SHAPE_LEN": 42.400000 }, "geometry": { "type": "LineString", "coordinates": [ [ 1549782.972000, 6403954.418400 ], [ 1549793.934000, 6403923.878400 ], [ 1549786.164350, 6403917.663200 ] ] } }
|
||||||
|
,
|
||||||
|
{ "type": "Feature", "properties": { "LINK_ID": 0.000000, "RP_TYPE": 12, "RP_FUNC": 0, "DIRECTION": 0, "LOGKOD": "R", "CHANGED": "0808280805", "USERID": "LO-JKP", "ST_NAME": "GR<47>NA GR<47>ND", "L_REFADDR": "", "L_NREFADDR": "", "R_REFADDR": "", "R_NREFADDR": "", "SPEED_CAT": "", "ZIPCODE": "59330", "SHAPE_LEN": 29.500000 }, "geometry": { "type": "LineString", "coordinates": [ [ 1549786.164350, 6403917.663200 ], [ 1549763.127350, 6403899.236800 ] ] } }
|
||||||
|
,
|
||||||
|
{ "type": "Feature", "properties": { "LINK_ID": 30760512.000000, "RP_TYPE": 14, "RP_FUNC": 0, "DIRECTION": 2, "LOGKOD": "R", "CHANGED": "0808280806", "USERID": "LO-JKP", "ST_NAME": "TR<54>DG<44>RDSGATAN", "L_REFADDR": "", "L_NREFADDR": "", "R_REFADDR": "3", "R_NREFADDR": "1", "SPEED_CAT": "7", "ZIPCODE": "59330", "SHAPE_LEN": 16.600000 }, "geometry": { "type": "LineString", "coordinates": [ [ 1549763.127350, 6403899.236800 ], [ 1549754.840050, 6403906.050400 ], [ 1549749.691200, 6403908.812000 ] ] } }
|
||||||
|
,
|
||||||
|
{ "type": "Feature", "properties": { "LINK_ID": 30760512.000000, "RP_TYPE": 14, "RP_FUNC": 0, "DIRECTION": 2, "LOGKOD": "R", "CHANGED": "0808280806", "USERID": "LO-JKP", "ST_NAME": "TR<54>DG<44>RDSGATAN", "L_REFADDR": "", "L_NREFADDR": "", "R_REFADDR": "3", "R_NREFADDR": "1", "SPEED_CAT": "7", "ZIPCODE": "59330", "SHAPE_LEN": 24.100000 }, "geometry": { "type": "LineString", "coordinates": [ [ 1549749.691200, 6403908.812000 ], [ 1549728.459850, 6403920.200000 ] ] } }
|
||||||
|
,
|
||||||
|
{ "type": "Feature", "properties": { "LINK_ID": 0.000000, "RP_TYPE": 18, "RP_FUNC": 0, "DIRECTION": 0, "LOGKOD": "R", "CHANGED": "0808280806", "USERID": "LO-JKP", "ST_NAME": "G<>STA BERNARDS GATA", "L_REFADDR": "", "L_NREFADDR": "", "R_REFADDR": "", "R_NREFADDR": "", "SPEED_CAT": "", "ZIPCODE": "59330", "SHAPE_LEN": 49.600000 }, "geometry": { "type": "LineString", "coordinates": [ [ 1549786.477600, 6403917.288000 ], [ 1549786.164350, 6403917.663200 ], [ 1549781.471200, 6403923.288000 ], [ 1549778.501800, 6403931.988800 ], [ 1549753.386150, 6403924.078400 ], [ 1549757.605750, 6403919.492000 ] ] } }
|
||||||
|
,
|
||||||
|
{ "type": "Feature", "properties": { "LINK_ID": 0.000000, "RP_TYPE": 18, "RP_FUNC": 0, "DIRECTION": 0, "LOGKOD": "R", "CHANGED": "0808280806", "USERID": "LO-JKP", "ST_NAME": "G<>STA BERNARDS GATA", "L_REFADDR": "", "L_NREFADDR": "", "R_REFADDR": "", "R_NREFADDR": "", "SPEED_CAT": "", "ZIPCODE": "59330", "SHAPE_LEN": 7.300000 }, "geometry": { "type": "LineString", "coordinates": [ [ 1549757.605750, 6403919.492000 ], [ 1549762.549850, 6403914.117600 ] ] } }
|
||||||
|
,
|
||||||
|
{ "type": "Feature", "properties": { "LINK_ID": 0.000000, "RP_TYPE": 18, "RP_FUNC": 0, "DIRECTION": 0, "LOGKOD": "D", "CHANGED": "0808280806", "USERID": "LO-JKP", "ST_NAME": "G<>STA BERNARDS GATA", "L_REFADDR": "", "L_NREFADDR": "", "R_REFADDR": "", "R_NREFADDR": "", "SPEED_CAT": "", "ZIPCODE": "59330", "SHAPE_LEN": 13.300000 }, "geometry": { "type": "LineString", "coordinates": [ [ 1549749.691200, 6403908.812000 ], [ 1549757.605750, 6403919.492000 ] ] } }
|
||||||
|
,
|
||||||
|
{ "type": "Feature", "properties": { "LINK_ID": 30760580.000000, "RP_TYPE": 14, "RP_FUNC": 0, "DIRECTION": 0, "LOGKOD": "R", "CHANGED": "0808280807", "USERID": "LO-JKP", "ST_NAME": "STR<54>MSGATAN", "L_REFADDR": "42", "L_NREFADDR": "40", "R_REFADDR": "37", "R_NREFADDR": "35", "SPEED_CAT": "7", "ZIPCODE": "59330", "SHAPE_LEN": 25.400000 }, "geometry": { "type": "LineString", "coordinates": [ [ 1549891.640000, 6403820.850400 ], [ 1549883.651250, 6403844.940000 ] ] } }
|
||||||
|
,
|
||||||
|
{ "type": "Feature", "properties": { "LINK_ID": 30760580.000000, "RP_TYPE": 14, "RP_FUNC": 0, "DIRECTION": 0, "LOGKOD": "R", "CHANGED": "0808280807", "USERID": "LO-JKP", "ST_NAME": "STR<54>MSGATAN", "L_REFADDR": "42", "L_NREFADDR": "40", "R_REFADDR": "37", "R_NREFADDR": "35", "SPEED_CAT": "7", "ZIPCODE": "59330", "SHAPE_LEN": 17.900000 }, "geometry": { "type": "LineString", "coordinates": [ [ 1549883.651250, 6403844.940000 ], [ 1549878.029900, 6403861.890400 ] ] } }
|
||||||
|
,
|
||||||
|
{ "type": "Feature", "properties": { "LINK_ID": 0.000000, "RP_TYPE": 18, "RP_FUNC": 0, "DIRECTION": 0, "LOGKOD": "D", "CHANGED": "0808280807", "USERID": "LO-JKP", "ST_NAME": "STR<54>MSGATAN", "L_REFADDR": "", "L_NREFADDR": "", "R_REFADDR": "", "R_NREFADDR": "", "SPEED_CAT": "", "ZIPCODE": "59330", "SHAPE_LEN": 19.600000 }, "geometry": { "type": "LineString", "coordinates": [ [ 1549883.651250, 6403844.940000 ], [ 1549902.215600, 6403851.322400 ] ] } }
|
||||||
|
,
|
||||||
|
{ "type": "Feature", "properties": { "LINK_ID": 30760588.000000, "RP_TYPE": 14, "RP_FUNC": 0, "DIRECTION": 1, "LOGKOD": "R", "CHANGED": "0808280808", "USERID": "LO-JKP", "ST_NAME": "<22>TERV<52>NDSGATAN", "L_REFADDR": "24", "L_NREFADDR": "14", "R_REFADDR": "23", "R_NREFADDR": "15", "SPEED_CAT": "7", "ZIPCODE": "59330", "SHAPE_LEN": 85.900000 }, "geometry": { "type": "LineString", "coordinates": [ [ 1549771.489900, 6403810.460000 ], [ 1549848.872800, 6403847.815200 ] ] } }
|
||||||
|
,
|
||||||
|
{ "type": "Feature", "properties": { "LINK_ID": 30760588.000000, "RP_TYPE": 14, "RP_FUNC": 0, "DIRECTION": 1, "LOGKOD": "R", "CHANGED": "0808280808", "USERID": "LO-JKP", "ST_NAME": "<22>TERV<52>NDSGATAN", "L_REFADDR": "24", "L_NREFADDR": "14", "R_REFADDR": "23", "R_NREFADDR": "15", "SPEED_CAT": "7", "ZIPCODE": "59330", "SHAPE_LEN": 32.400000 }, "geometry": { "type": "LineString", "coordinates": [ [ 1549848.872800, 6403847.815200 ], [ 1549878.029900, 6403861.890400 ] ] } }
|
||||||
|
,
|
||||||
|
{ "type": "Feature", "properties": { "LINK_ID": 0.000000, "RP_TYPE": 18, "RP_FUNC": 0, "DIRECTION": 0, "LOGKOD": "R", "CHANGED": "0808280808", "USERID": "LO-JKP", "ST_NAME": "<22>TERV<52>NDSGATAN", "L_REFADDR": "", "L_NREFADDR": "", "R_REFADDR": "", "R_NREFADDR": "", "SPEED_CAT": "", "ZIPCODE": "59330", "SHAPE_LEN": 16.900000 }, "geometry": { "type": "LineString", "coordinates": [ [ 1549848.872800, 6403847.815200 ], [ 1549858.013750, 6403836.851200 ], [ 1549859.956250, 6403835.057600 ] ] } }
|
||||||
|
,
|
||||||
|
{ "type": "Feature", "properties": { "LINK_ID": 0.000000, "RP_TYPE": 18, "RP_FUNC": 0, "DIRECTION": 0, "LOGKOD": "R", "CHANGED": "0808280808", "USERID": "LO-JKP", "ST_NAME": "<22>TERV<52>NDSGATAN", "L_REFADDR": "", "L_NREFADDR": "", "R_REFADDR": "", "R_NREFADDR": "", "SPEED_CAT": "", "ZIPCODE": "59330", "SHAPE_LEN": 8.000000 }, "geometry": { "type": "LineString", "coordinates": [ [ 1549859.956250, 6403835.057600 ], [ 1549865.800200, 6403829.660800 ] ] } }
|
||||||
|
,
|
||||||
|
{ "type": "Feature", "properties": { "LINK_ID": 0.000000, "RP_TYPE": 18, "RP_FUNC": 0, "DIRECTION": 0, "LOGKOD": "D", "CHANGED": "0808280808", "USERID": "LO-JKP", "ST_NAME": "<22>TERV<52>NDSGATAN", "L_REFADDR": "", "L_NREFADDR": "", "R_REFADDR": "", "R_NREFADDR": "", "SPEED_CAT": "", "ZIPCODE": "59330", "SHAPE_LEN": 7.900000 }, "geometry": { "type": "LineString", "coordinates": [ [ 1549859.956250, 6403835.057600 ], [ 1549866.996150, 6403838.471200 ] ] } }
|
||||||
|
,
|
||||||
|
{ "type": "Feature", "properties": { "LINK_ID": 30760516.000000, "RP_TYPE": 14, "RP_FUNC": 0, "DIRECTION": 0, "LOGKOD": "R", "CHANGED": "0808280809", "USERID": "LO-JKP", "ST_NAME": "B<>TSMANSGATAN", "L_REFADDR": "12", "L_NREFADDR": "2", "R_REFADDR": "13", "R_NREFADDR": "1", "SPEED_CAT": "7", "ZIPCODE": "59330", "SHAPE_LEN": 39.100000 }, "geometry": { "type": "LineString", "coordinates": [ [ 1549867.520100, 6403892.960000 ], [ 1549904.353050, 6403905.936000 ] ] } }
|
||||||
|
,
|
||||||
|
{ "type": "Feature", "properties": { "LINK_ID": 30760516.000000, "RP_TYPE": 14, "RP_FUNC": 0, "DIRECTION": 0, "LOGKOD": "R", "CHANGED": "0808280809", "USERID": "LO-JKP", "ST_NAME": "B<>TSMANSGATAN", "L_REFADDR": "12", "L_NREFADDR": "2", "R_REFADDR": "13", "R_NREFADDR": "1", "SPEED_CAT": "7", "ZIPCODE": "59330", "SHAPE_LEN": 26.900000 }, "geometry": { "type": "LineString", "coordinates": [ [ 1549904.353050, 6403905.936000 ], [ 1549929.770050, 6403914.890400 ] ] } }
|
||||||
|
,
|
||||||
|
{ "type": "Feature", "properties": { "LINK_ID": 30760548.000000, "RP_TYPE": 14, "RP_FUNC": 0, "DIRECTION": 0, "LOGKOD": "R", "CHANGED": "0808280809", "USERID": "LO-JKP", "ST_NAME": "<22>TERV<52>NDSGATAN", "L_REFADDR": "12", "L_NREFADDR": "2", "R_REFADDR": "13", "R_NREFADDR": "13", "SPEED_CAT": "7", "ZIPCODE": "59330", "SHAPE_LEN": 43.000000 }, "geometry": { "type": "LineString", "coordinates": [ [ 1549878.029900, 6403861.890400 ], [ 1549916.095200, 6403881.850400 ] ] } }
|
||||||
|
,
|
||||||
|
{ "type": "Feature", "properties": { "LINK_ID": 30760548.000000, "RP_TYPE": 14, "RP_FUNC": 0, "DIRECTION": 0, "LOGKOD": "R", "CHANGED": "0808280809", "USERID": "LO-JKP", "ST_NAME": "<22>TERV<52>NDSGATAN", "L_REFADDR": "12", "L_NREFADDR": "2", "R_REFADDR": "13", "R_NREFADDR": "13", "SPEED_CAT": "7", "ZIPCODE": "59330", "SHAPE_LEN": 25.800000 }, "geometry": { "type": "LineString", "coordinates": [ [ 1549916.095200, 6403881.850400 ], [ 1549938.960000, 6403893.840000 ] ] } }
|
||||||
|
,
|
||||||
|
{ "type": "Feature", "properties": { "LINK_ID": 0.000000, "RP_TYPE": 18, "RP_FUNC": 0, "DIRECTION": 0, "LOGKOD": "D", "CHANGED": "0808280809", "USERID": "LO-JKP", "ST_NAME": "B<>TSMANSGATAN", "L_REFADDR": "", "L_NREFADDR": "", "R_REFADDR": "", "R_NREFADDR": "", "SPEED_CAT": "", "ZIPCODE": "59330", "SHAPE_LEN": 26.800000 }, "geometry": { "type": "LineString", "coordinates": [ [ 1549904.353050, 6403905.936000 ], [ 1549912.608150, 6403888.475200 ], [ 1549916.095200, 6403881.850400 ] ] } }
|
||||||
|
,
|
||||||
|
{ "type": "Feature", "properties": { "LINK_ID": 30760517.000000, "RP_TYPE": 14, "RP_FUNC": 0, "DIRECTION": 0, "LOGKOD": "R", "CHANGED": "0808280811", "USERID": "LO-JKP", "ST_NAME": "STR<54>MSGATAN", "L_REFADDR": "34", "L_NREFADDR": "24", "R_REFADDR": "29", "R_NREFADDR": "19", "SPEED_CAT": "7", "ZIPCODE": "59330", "SHAPE_LEN": 23.600000 }, "geometry": { "type": "LineString", "coordinates": [ [ 1549848.114000, 6403950.774400 ], [ 1549839.739900, 6403972.810400 ] ] } }
|
||||||
|
,
|
||||||
|
{ "type": "Feature", "properties": { "LINK_ID": 0.000000, "RP_TYPE": 18, "RP_FUNC": 0, "DIRECTION": 0, "LOGKOD": "D", "CHANGED": "0808280811", "USERID": "LO-JKP", "ST_NAME": "STR<54>MSGATAN", "L_REFADDR": "", "L_NREFADDR": "", "R_REFADDR": "", "R_NREFADDR": "", "SPEED_CAT": "", "ZIPCODE": "59330", "SHAPE_LEN": 30.800000 }, "geometry": { "type": "LineString", "coordinates": [ [ 1549848.114000, 6403950.774400 ], [ 1549869.289000, 6403957.700800 ], [ 1549866.484800, 6403965.702400 ] ] } }
|
||||||
|
,
|
||||||
|
{ "type": "Feature", "properties": { "LINK_ID": 30760517.000000, "RP_TYPE": 14, "RP_FUNC": 0, "DIRECTION": 0, "LOGKOD": "R", "CHANGED": "0808280812", "USERID": "LO-JKP", "ST_NAME": "STR<54>MSGATAN", "L_REFADDR": "34", "L_NREFADDR": "24", "R_REFADDR": "29", "R_NREFADDR": "19", "SPEED_CAT": "7", "ZIPCODE": "59330", "SHAPE_LEN": 36.600000 }, "geometry": { "type": "LineString", "coordinates": [ [ 1549867.520100, 6403892.960000 ], [ 1549856.605700, 6403927.937600 ] ] } }
|
||||||
|
,
|
||||||
|
{ "type": "Feature", "properties": { "LINK_ID": 30760517.000000, "RP_TYPE": 14, "RP_FUNC": 0, "DIRECTION": 0, "LOGKOD": "R", "CHANGED": "0808280812", "USERID": "LO-JKP", "ST_NAME": "STR<54>MSGATAN", "L_REFADDR": "34", "L_NREFADDR": "24", "R_REFADDR": "29", "R_NREFADDR": "19", "SPEED_CAT": "7", "ZIPCODE": "59330", "SHAPE_LEN": 24.400000 }, "geometry": { "type": "LineString", "coordinates": [ [ 1549856.605700, 6403927.937600 ], [ 1549855.749950, 6403930.680000 ], [ 1549848.114000, 6403950.774400 ] ] } }
|
||||||
|
,
|
||||||
|
{ "type": "Feature", "properties": { "LINK_ID": 0.000000, "RP_TYPE": 18, "RP_FUNC": 0, "DIRECTION": 0, "LOGKOD": "D", "CHANGED": "0808280812", "USERID": "LO-JKP", "ST_NAME": "STR<54>MSGATAN", "L_REFADDR": "", "L_NREFADDR": "", "R_REFADDR": "", "R_NREFADDR": "", "SPEED_CAT": "", "ZIPCODE": "59330", "SHAPE_LEN": 22.700000 }, "geometry": { "type": "LineString", "coordinates": [ [ 1549856.605700, 6403927.937600 ], [ 1549842.391850, 6403922.888000 ], [ 1549839.991550, 6403930.109600 ] ] } }
|
||||||
|
,
|
||||||
|
{ "type": "Feature", "properties": { "LINK_ID": 30760453.000000, "RP_TYPE": 14, "RP_FUNC": 0, "DIRECTION": 0, "LOGKOD": "R", "CHANGED": "0808280813", "USERID": "LO-JKP", "ST_NAME": "NYGATAN", "L_REFADDR": "4", "L_NREFADDR": "2", "R_REFADDR": "5", "R_NREFADDR": "1", "SPEED_CAT": "7", "ZIPCODE": "59330", "SHAPE_LEN": 44.500000 }, "geometry": { "type": "LineString", "coordinates": [ [ 1549839.739900, 6403972.810400 ], [ 1549882.122450, 6403986.464000 ] ] } }
|
||||||
|
,
|
||||||
|
{ "type": "Feature", "properties": { "LINK_ID": 30760453.000000, "RP_TYPE": 14, "RP_FUNC": 0, "DIRECTION": 0, "LOGKOD": "R", "CHANGED": "0808280814", "USERID": "LO-JKP", "ST_NAME": "NYGATAN", "L_REFADDR": "4", "L_NREFADDR": "2", "R_REFADDR": "5", "R_NREFADDR": "1", "SPEED_CAT": "7", "ZIPCODE": "59330", "SHAPE_LEN": 4.100000 }, "geometry": { "type": "LineString", "coordinates": [ [ 1549882.122450, 6403986.464000 ], [ 1549885.859750, 6403988.054400 ] ] } }
|
||||||
|
,
|
||||||
|
{ "type": "Feature", "properties": { "LINK_ID": 30760453.000000, "RP_TYPE": 14, "RP_FUNC": 0, "DIRECTION": 0, "LOGKOD": "R", "CHANGED": "0808280814", "USERID": "LO-JKP", "ST_NAME": "NYGATAN", "L_REFADDR": "4", "L_NREFADDR": "2", "R_REFADDR": "5", "R_NREFADDR": "1", "SPEED_CAT": "7", "ZIPCODE": "59330", "SHAPE_LEN": 15.600000 }, "geometry": { "type": "LineString", "coordinates": [ [ 1549885.859750, 6403988.054400 ], [ 1549900.829950, 6403992.491200 ] ] } }
|
||||||
|
,
|
||||||
|
{ "type": "Feature", "properties": { "LINK_ID": 0.000000, "RP_TYPE": 18, "RP_FUNC": 0, "DIRECTION": 0, "LOGKOD": "D", "CHANGED": "0808280814", "USERID": "LO-JKP", "ST_NAME": "NYGATAN", "L_REFADDR": "", "L_NREFADDR": "", "R_REFADDR": "", "R_NREFADDR": "", "SPEED_CAT": "", "ZIPCODE": "59330", "SHAPE_LEN": 30.000000 }, "geometry": { "type": "LineString", "coordinates": [ [ 1549885.859750, 6403988.054400 ], [ 1549892.433450, 6403972.732800 ], [ 1549900.598950, 6403962.172000 ] ] } }
|
||||||
|
,
|
||||||
|
{ "type": "Feature", "properties": { "LINK_ID": 0.000000, "RP_TYPE": 19, "RP_FUNC": 0, "DIRECTION": 0, "LOGKOD": "R", "CHANGED": "0808281227", "USERID": "LO-JKP", "ST_NAME": "S<>DRA VARVSGATAN", "L_REFADDR": "", "L_NREFADDR": "", "R_REFADDR": "", "R_NREFADDR": "", "SPEED_CAT": "", "ZIPCODE": "59331", "SHAPE_LEN": 43.100000 }, "geometry": { "type": "LineString", "coordinates": [ [ 1549936.717550, 6403775.876000 ], [ 1549969.438000, 6403803.858400 ] ] } }
|
||||||
|
,
|
||||||
|
{ "type": "Feature", "properties": { "LINK_ID": 0.000000, "RP_TYPE": 19, "RP_FUNC": 0, "DIRECTION": 0, "LOGKOD": "R", "CHANGED": "0808281227", "USERID": "LO-JKP", "ST_NAME": "S<>DRA VARVSGATAN", "L_REFADDR": "", "L_NREFADDR": "", "R_REFADDR": "", "R_NREFADDR": "", "SPEED_CAT": "", "ZIPCODE": "59331", "SHAPE_LEN": 13.500000 }, "geometry": { "type": "LineString", "coordinates": [ [ 1549969.438000, 6403803.858400 ], [ 1549982.841250, 6403805.048000 ] ] } }
|
||||||
|
,
|
||||||
|
{ "type": "Feature", "properties": { "LINK_ID": 30760579.000000, "RP_TYPE": 14, "RP_FUNC": 0, "DIRECTION": 0, "LOGKOD": "R", "CHANGED": "0808281227", "USERID": "LO-JKP", "ST_NAME": "NORRA J<>RNV<4E>GSGATAN", "L_REFADDR": "4", "L_NREFADDR": "2", "R_REFADDR": "", "R_NREFADDR": "", "SPEED_CAT": "7", "ZIPCODE": "59330", "SHAPE_LEN": 37.800000 }, "geometry": { "type": "LineString", "coordinates": [ [ 1549897.839200, 6403822.604000 ], [ 1549934.253900, 6403832.906400 ] ] } }
|
||||||
|
,
|
||||||
|
{ "type": "Feature", "properties": { "LINK_ID": 30760579.000000, "RP_TYPE": 14, "RP_FUNC": 0, "DIRECTION": 0, "LOGKOD": "R", "CHANGED": "0808281227", "USERID": "LO-JKP", "ST_NAME": "NORRA J<>RNV<4E>GSGATAN", "L_REFADDR": "4", "L_NREFADDR": "2", "R_REFADDR": "", "R_NREFADDR": "", "SPEED_CAT": "7", "ZIPCODE": "59330", "SHAPE_LEN": 29.500000 }, "geometry": { "type": "LineString", "coordinates": [ [ 1549934.253900, 6403832.906400 ], [ 1549957.490050, 6403839.480000 ], [ 1549960.410100, 6403843.980000 ] ] } }
|
||||||
|
,
|
||||||
|
{ "type": "Feature", "properties": { "LINK_ID": 0.000000, "RP_TYPE": 19, "RP_FUNC": 0, "DIRECTION": 0, "LOGKOD": "D", "CHANGED": "0808281227", "USERID": "LO-JKP", "ST_NAME": "SLOTTSHOLMSLEDEN", "L_REFADDR": "", "L_NREFADDR": "", "R_REFADDR": "", "R_NREFADDR": "", "SPEED_CAT": "", "ZIPCODE": "59330", "SHAPE_LEN": 45.700000 }, "geometry": { "type": "LineString", "coordinates": [ [ 1549969.438000, 6403803.858400 ], [ 1549962.209450, 6403808.998400 ], [ 1549954.459400, 6403814.508800 ], [ 1549934.253900, 6403832.906400 ] ] } }
|
||||||
|
,
|
||||||
|
{ "type": "Feature", "properties": { "LINK_ID": 80547462.000000, "RP_TYPE": 12, "RP_FUNC": 1, "DIRECTION": 0, "LOGKOD": "R", "CHANGED": "0808290805", "USERID": "LO-JKP", "ST_NAME": "<22>STRA KYRKOGATAN", "L_REFADDR": "44", "L_NREFADDR": "38", "R_REFADDR": "61", "R_NREFADDR": "53", "SPEED_CAT": "7", "ZIPCODE": "59333", "SHAPE_LEN": 23.700000 }, "geometry": { "type": "LineString", "coordinates": [ [ 1549546.809850, 6403827.740000 ], [ 1549537.632500, 6403849.605600 ] ] } }
|
||||||
|
,
|
||||||
|
{ "type": "Feature", "properties": { "LINK_ID": 80547462.000000, "RP_TYPE": 12, "RP_FUNC": 1, "DIRECTION": 0, "LOGKOD": "R", "CHANGED": "0808290805", "USERID": "LO-JKP", "ST_NAME": "<22>STRA KYRKOGATAN", "L_REFADDR": "44", "L_NREFADDR": "38", "R_REFADDR": "61", "R_NREFADDR": "53", "SPEED_CAT": "7", "ZIPCODE": "59333", "SHAPE_LEN": 70.100000 }, "geometry": { "type": "LineString", "coordinates": [ [ 1549537.632500, 6403849.605600 ], [ 1549533.320150, 6403859.880000 ], [ 1549518.660050, 6403889.780000 ], [ 1549507.790100, 6403903.010400 ], [ 1549501.325600, 6403908.552800 ] ] } }
|
||||||
|
,
|
||||||
|
{ "type": "Feature", "properties": { "LINK_ID": 0.000000, "RP_TYPE": 18, "RP_FUNC": 0, "DIRECTION": 0, "LOGKOD": "D", "CHANGED": "0808290805", "USERID": "LO-JKP", "ST_NAME": "<22>STRA KYRKOGATAN", "L_REFADDR": "", "L_NREFADDR": "", "R_REFADDR": "", "R_NREFADDR": "", "SPEED_CAT": "", "ZIPCODE": "59333", "SHAPE_LEN": 46.000000 }, "geometry": { "type": "LineString", "coordinates": [ [ 1549537.632500, 6403849.605600 ], [ 1549561.402400, 6403858.662400 ], [ 1549569.328850, 6403839.652000 ] ] } }
|
||||||
|
,
|
||||||
|
{ "type": "Feature", "properties": { "LINK_ID": 30760609.000000, "RP_TYPE": 12, "RP_FUNC": 1, "DIRECTION": 0, "LOGKOD": "R", "CHANGED": "0808290829", "USERID": "LO-JKP", "ST_NAME": "<22>STRA KYRKOGATAN", "L_REFADDR": "46", "L_NREFADDR": "46", "R_REFADDR": "65", "R_NREFADDR": "63", "SPEED_CAT": "7", "ZIPCODE": "59333", "SHAPE_LEN": 26.800000 }, "geometry": { "type": "LineString", "coordinates": [ [ 1549566.450100, 6403780.090400 ], [ 1549555.974950, 6403804.818400 ] ] } }
|
||||||
|
,
|
||||||
|
{ "type": "Feature", "properties": { "LINK_ID": 30760609.000000, "RP_TYPE": 12, "RP_FUNC": 1, "DIRECTION": 0, "LOGKOD": "R", "CHANGED": "0808290829", "USERID": "LO-JKP", "ST_NAME": "<22>STRA KYRKOGATAN", "L_REFADDR": "46", "L_NREFADDR": "46", "R_REFADDR": "65", "R_NREFADDR": "63", "SPEED_CAT": "7", "ZIPCODE": "59333", "SHAPE_LEN": 24.700000 }, "geometry": { "type": "LineString", "coordinates": [ [ 1549555.974950, 6403804.818400 ], [ 1549546.809850, 6403827.740000 ] ] } }
|
||||||
|
,
|
||||||
|
{ "type": "Feature", "properties": { "LINK_ID": 0.000000, "RP_TYPE": 18, "RP_FUNC": 0, "DIRECTION": 0, "LOGKOD": "D", "CHANGED": "0808290829", "USERID": "LO-JKP", "ST_NAME": "<22>STRA KYRKOGATAN", "L_REFADDR": "", "L_NREFADDR": "", "R_REFADDR": "", "R_NREFADDR": "", "SPEED_CAT": "", "ZIPCODE": "59333", "SHAPE_LEN": 37.600000 }, "geometry": { "type": "LineString", "coordinates": [ [ 1549555.974950, 6403804.818400 ], [ 1549577.560500, 6403813.319200 ], [ 1549572.603450, 6403826.820800 ] ] } }
|
||||||
|
,
|
||||||
|
{ "type": "Feature", "properties": { "LINK_ID": 30760474.000000, "RP_TYPE": 12, "RP_FUNC": 0, "DIRECTION": 1, "LOGKOD": "R", "CHANGED": "0808290830", "USERID": "LO-JKP", "ST_NAME": "<22>STRA KYRKOGATAN", "L_REFADDR": "36", "L_NREFADDR": "32", "R_REFADDR": "51", "R_NREFADDR": "49", "SPEED_CAT": "6", "ZIPCODE": "59333", "SHAPE_LEN": 58.000000 }, "geometry": { "type": "LineString", "coordinates": [ [ 1549496.649950, 6403937.400000 ], [ 1549483.100050, 6403973.990400 ], [ 1549475.242550, 6403991.259200 ] ] } }
|
||||||
|
|
||||||
|
]
|
||||||
|
}
|
||||||
@@ -2,6 +2,8 @@
|
|||||||
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
|
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
|
||||||
<html xmlns="http://www.w3.org/1999/xhtml">
|
<html xmlns="http://www.w3.org/1999/xhtml">
|
||||||
<head>
|
<head>
|
||||||
|
<meta name="viewport" content="width=device-width; initial-scale=1.0; maximum-scale=1.0; user-scalable=0;" />
|
||||||
|
<meta name="apple-mobile-web-app-capable" content="yes" />
|
||||||
<title>OpenLayers Debug Example</title>
|
<title>OpenLayers Debug Example</title>
|
||||||
<link rel="stylesheet" href="style.css" type="text/css" />
|
<link rel="stylesheet" href="style.css" type="text/css" />
|
||||||
<script src="../lib/Firebug/firebug.js"></script>
|
<script src="../lib/Firebug/firebug.js"></script>
|
||||||
@@ -27,7 +29,9 @@
|
|||||||
<body>
|
<body>
|
||||||
<h1 id="title">Debug Example</h1>
|
<h1 id="title">Debug Example</h1>
|
||||||
|
|
||||||
<div id="tags"></div>
|
<div id="tags">
|
||||||
|
debugging, error, fix, fixing, console, firebug, developers, advanced
|
||||||
|
</div>
|
||||||
|
|
||||||
<p id="shortdesc">
|
<p id="shortdesc">
|
||||||
Demonstrate console calls to a Firebug console. Requires Firefox. Mostly for developers.
|
Demonstrate console calls to a Firebug console. Requires Firefox. Mostly for developers.
|
||||||
|
|||||||
41
examples/document-drag.html
Normal file
41
examples/document-drag.html
Normal file
@@ -0,0 +1,41 @@
|
|||||||
|
<html xmlns="http://www.w3.org/1999/xhtml">
|
||||||
|
<head>
|
||||||
|
<meta name="viewport" content="width=device-width; initial-scale=1.0; maximum-scale=1.0; user-scalable=0;" />
|
||||||
|
<meta name="apple-mobile-web-app-capable" content="yes" />
|
||||||
|
<title>OpenLayers Document Drag Example</title>
|
||||||
|
<link rel="stylesheet" href="../theme/default/style.css" type="text/css" />
|
||||||
|
<link rel="stylesheet" href="style.css" type="text/css" />
|
||||||
|
<script src="../lib/OpenLayers.js"></script>
|
||||||
|
<script type="text/javascript">
|
||||||
|
var map, layer;
|
||||||
|
function init(){
|
||||||
|
map = new OpenLayers.Map( 'map', {controls: [
|
||||||
|
new OpenLayers.Control.Navigation({documentDrag: true}),
|
||||||
|
new OpenLayers.Control.PanZoom(),
|
||||||
|
new OpenLayers.Control.ArgParser(),
|
||||||
|
new OpenLayers.Control.Attribution()
|
||||||
|
]} );
|
||||||
|
layer = new OpenLayers.Layer.WMS( "OpenLayers WMS",
|
||||||
|
"http://vmap0.tiles.osgeo.org/wms/vmap0",
|
||||||
|
{layers: 'basic'} );
|
||||||
|
map.addLayer(layer);
|
||||||
|
map.zoomToMaxExtent();
|
||||||
|
}
|
||||||
|
</script>
|
||||||
|
</head>
|
||||||
|
<body onload="init()">
|
||||||
|
<h1 id="title">OpenLayers Document Drag Example</h1>
|
||||||
|
|
||||||
|
<div id="tags">
|
||||||
|
drag
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div id="shortdesc">Keep on dragging even when the mouse cursor moves outside of the map</div>
|
||||||
|
|
||||||
|
<div id="map" class="smallmap"></div>
|
||||||
|
|
||||||
|
<div id="docs">
|
||||||
|
This example shows how to make a map draggable outside of the map itself.
|
||||||
|
</div>
|
||||||
|
</body>
|
||||||
|
</html>
|
||||||
61
examples/donut.html
Normal file
61
examples/donut.html
Normal file
@@ -0,0 +1,61 @@
|
|||||||
|
<!DOCTYPE html>
|
||||||
|
<html>
|
||||||
|
<head>
|
||||||
|
<meta name="viewport" content="width=device-width; initial-scale=1.0; maximum-scale=1.0; user-scalable=0;" />
|
||||||
|
<meta name="apple-mobile-web-app-capable" content="yes" />
|
||||||
|
<title>OpenLayers Polygon Hole Digitizing</title>
|
||||||
|
<link rel="stylesheet" href="../theme/default/style.css" type="text/css">
|
||||||
|
<link rel="stylesheet" href="style.css" type="text/css">
|
||||||
|
<style>
|
||||||
|
#controlToggle li {
|
||||||
|
list-style: none;
|
||||||
|
}
|
||||||
|
.olControlAttribution {
|
||||||
|
font-size: 9px;
|
||||||
|
bottom: 2px;
|
||||||
|
}
|
||||||
|
#output {
|
||||||
|
margin: 1em;
|
||||||
|
font-size: 0.9em;
|
||||||
|
}
|
||||||
|
</style>
|
||||||
|
</head>
|
||||||
|
<body>
|
||||||
|
<h1 id="title">Drawing Holes in Polygons</h1>
|
||||||
|
<div id="tags">
|
||||||
|
draw polygon hole
|
||||||
|
</div>
|
||||||
|
<p id="shortdesc">
|
||||||
|
The DrawFeature control can be used to digitize donut polygons.
|
||||||
|
</p>
|
||||||
|
|
||||||
|
<div id="map" class="smallmap"></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>
|
||||||
|
</ul>
|
||||||
|
<div id="output"></div>
|
||||||
|
<div id="docs">
|
||||||
|
<p>
|
||||||
|
To digitize holes in polygons, hold down the <code>Alt</code>
|
||||||
|
key and draw over an existing polygon. By default, the
|
||||||
|
<code>Shift</code> key triggers freehand drawing. Use a
|
||||||
|
combination of the <code>Shift</code> and <code>Alt</code> keys
|
||||||
|
to digitize holes in freehand mode.
|
||||||
|
</p>
|
||||||
|
<p>
|
||||||
|
See the <a href="donut.js" target="_blank">
|
||||||
|
donut.js source</a> for details on how this is done.
|
||||||
|
</p>
|
||||||
|
</div>
|
||||||
|
<script src="../lib/OpenLayers.js"></script>
|
||||||
|
<script src="donut.js"></script>
|
||||||
|
</body>
|
||||||
|
</html>
|
||||||
44
examples/donut.js
Normal file
44
examples/donut.js
Normal file
@@ -0,0 +1,44 @@
|
|||||||
|
// allow testing of specific renderers via "?renderer=Canvas", etc
|
||||||
|
var renderer = OpenLayers.Util.getParameters(window.location.href).renderer;
|
||||||
|
renderer = (renderer) ? [renderer] : OpenLayers.Layer.Vector.prototype.renderers;
|
||||||
|
|
||||||
|
var map = new OpenLayers.Map({
|
||||||
|
div: "map",
|
||||||
|
layers: [
|
||||||
|
new OpenLayers.Layer.OSM(),
|
||||||
|
new OpenLayers.Layer.Vector("Vector Layer", {
|
||||||
|
renderers: renderer
|
||||||
|
})
|
||||||
|
],
|
||||||
|
center: new OpenLayers.LonLat(0, 0),
|
||||||
|
zoom: 1
|
||||||
|
});
|
||||||
|
|
||||||
|
var draw = new OpenLayers.Control.DrawFeature(
|
||||||
|
map.layers[1],
|
||||||
|
OpenLayers.Handler.Polygon,
|
||||||
|
{handlerOptions: {holeModifier: "altKey"}}
|
||||||
|
);
|
||||||
|
map.addControl(draw);
|
||||||
|
|
||||||
|
// optionally listen for sketch events on the layer
|
||||||
|
var output = document.getElementById("output");
|
||||||
|
function updateOutput(event) {
|
||||||
|
window.setTimeout(function() {
|
||||||
|
output.innerHTML = event.type + " " + event.feature.id;
|
||||||
|
}, 100);
|
||||||
|
}
|
||||||
|
map.layers[1].events.on({
|
||||||
|
sketchmodified: updateOutput,
|
||||||
|
sketchcomplete: updateOutput
|
||||||
|
})
|
||||||
|
|
||||||
|
// add behavior to UI elements
|
||||||
|
function toggleControl(element) {
|
||||||
|
if (element.value === "polygon" && element.checked) {
|
||||||
|
draw.activate();
|
||||||
|
} else {
|
||||||
|
draw.deactivate();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
document.getElementById("noneToggle").checked = true;
|
||||||
@@ -1,5 +1,7 @@
|
|||||||
<html>
|
<html>
|
||||||
<head>
|
<head>
|
||||||
|
<meta name="viewport" content="width=device-width; initial-scale=1.0; maximum-scale=1.0; user-scalable=0;" />
|
||||||
|
<meta name="apple-mobile-web-app-capable" content="yes" />
|
||||||
<title>OpenLayers Double Set Center Example</title>
|
<title>OpenLayers Double Set Center Example</title>
|
||||||
|
|
||||||
<script src="../lib/OpenLayers.js"></script>
|
<script src="../lib/OpenLayers.js"></script>
|
||||||
@@ -9,7 +11,9 @@
|
|||||||
<body>
|
<body>
|
||||||
<h1 id="title">Double Set Center Example</h1>
|
<h1 id="title">Double Set Center Example</h1>
|
||||||
|
|
||||||
<div id="tags"></div>
|
<div id="tags">
|
||||||
|
center, centering, cleanup
|
||||||
|
</div>
|
||||||
|
|
||||||
<p id="shortdesc">
|
<p id="shortdesc">
|
||||||
Demonstrate the behavior of two calls to set the center after instatiating the layer object.
|
Demonstrate the behavior of two calls to set the center after instatiating the layer object.
|
||||||
@@ -20,7 +24,7 @@
|
|||||||
<script defer="defer" type="text/javascript">
|
<script defer="defer" type="text/javascript">
|
||||||
var map = new OpenLayers.Map('map');
|
var map = new OpenLayers.Map('map');
|
||||||
var wms = new OpenLayers.Layer.WMS( "OpenLayers WMS",
|
var wms = new OpenLayers.Layer.WMS( "OpenLayers WMS",
|
||||||
"http://labs.metacarta.com/wms/vmap0", {layers: 'basic'} );
|
"http://vmap0.tiles.osgeo.org/wms/vmap0", {layers: 'basic'} );
|
||||||
map.addLayer(wms);
|
map.addLayer(wms);
|
||||||
map.setCenter(new OpenLayers.LonLat(100,10));
|
map.setCenter(new OpenLayers.LonLat(100,10));
|
||||||
map.setCenter(new OpenLayers.LonLat(1,1));
|
map.setCenter(new OpenLayers.LonLat(1,1));
|
||||||
|
|||||||
@@ -1,5 +1,7 @@
|
|||||||
<html xmlns="http://www.w3.org/1999/xhtml">
|
<html xmlns="http://www.w3.org/1999/xhtml">
|
||||||
<head>
|
<head>
|
||||||
|
<meta name="viewport" content="width=device-width; initial-scale=1.0; maximum-scale=1.0; user-scalable=0;" />
|
||||||
|
<meta name="apple-mobile-web-app-capable" content="yes" />
|
||||||
<title>Drag Feature Example</title>
|
<title>Drag Feature Example</title>
|
||||||
|
|
||||||
<link rel="stylesheet" href="../theme/default/style.css" type="text/css" />
|
<link rel="stylesheet" href="../theme/default/style.css" type="text/css" />
|
||||||
@@ -21,9 +23,15 @@
|
|||||||
function init(){
|
function init(){
|
||||||
map = new OpenLayers.Map('map');
|
map = new OpenLayers.Map('map');
|
||||||
var wms = new OpenLayers.Layer.WMS( "OpenLayers WMS",
|
var wms = new OpenLayers.Layer.WMS( "OpenLayers WMS",
|
||||||
"http://labs.metacarta.com/wms/vmap0?", {layers: 'basic'});
|
"http://vmap0.tiles.osgeo.org/wms/vmap0?", {layers: 'basic'});
|
||||||
|
|
||||||
vectors = new OpenLayers.Layer.Vector("Vector Layer");
|
// allow testing of specific renderers via "?renderer=Canvas", etc
|
||||||
|
var renderer = OpenLayers.Util.getParameters(window.location.href).renderer;
|
||||||
|
renderer = (renderer) ? [renderer] : OpenLayers.Layer.Vector.prototype.renderers;
|
||||||
|
|
||||||
|
vectors = new OpenLayers.Layer.Vector("Vector Layer", {
|
||||||
|
renderers: renderer
|
||||||
|
});
|
||||||
|
|
||||||
map.addLayers([wms, vectors]);
|
map.addLayers([wms, vectors]);
|
||||||
map.addControl(new OpenLayers.Control.LayerSwitcher());
|
map.addControl(new OpenLayers.Control.LayerSwitcher());
|
||||||
@@ -62,7 +70,9 @@
|
|||||||
<body onload="init()">
|
<body onload="init()">
|
||||||
<h1 id="title">Drag Feature Example</h1>
|
<h1 id="title">Drag Feature Example</h1>
|
||||||
|
|
||||||
<div id="tags"></div>
|
<div id="tags">
|
||||||
|
point, line, linestring, polygon, digitizing, geometry, draw, drag
|
||||||
|
</div>
|
||||||
|
|
||||||
<p id="shortdesc">
|
<p id="shortdesc">
|
||||||
Demonstrates point, line and polygon creation and editing.
|
Demonstrates point, line and polygon creation and editing.
|
||||||
|
|||||||
@@ -1,5 +1,7 @@
|
|||||||
<html xmlns="http://www.w3.org/1999/xhtml">
|
<html xmlns="http://www.w3.org/1999/xhtml">
|
||||||
<head>
|
<head>
|
||||||
|
<meta name="viewport" content="width=device-width; initial-scale=1.0; maximum-scale=1.0; user-scalable=0;" />
|
||||||
|
<meta name="apple-mobile-web-app-capable" content="yes" />
|
||||||
<title>Draw Feature Example</title>
|
<title>Draw Feature Example</title>
|
||||||
|
|
||||||
<link rel="stylesheet" href="../theme/default/style.css" type="text/css" />
|
<link rel="stylesheet" href="../theme/default/style.css" type="text/css" />
|
||||||
@@ -11,16 +13,20 @@
|
|||||||
p {
|
p {
|
||||||
width: 512px;
|
width: 512px;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/* avoid pink tiles */
|
||||||
|
.olImageLoadError {
|
||||||
|
background-color: transparent !important;
|
||||||
|
}
|
||||||
</style>
|
</style>
|
||||||
<script src="../lib/OpenLayers.js"></script>
|
<script src="../lib/OpenLayers.js"></script>
|
||||||
<script type="text/javascript">
|
<script type="text/javascript">
|
||||||
var map, drawControls;
|
var map, drawControls;
|
||||||
OpenLayers.Util.onImageLoadErrorColor = "transparent";
|
|
||||||
function init(){
|
function init(){
|
||||||
map = new OpenLayers.Map('map');
|
map = new OpenLayers.Map('map');
|
||||||
|
|
||||||
var wmsLayer = new OpenLayers.Layer.WMS( "OpenLayers WMS",
|
var wmsLayer = new OpenLayers.Layer.WMS( "OpenLayers WMS",
|
||||||
"http://labs.metacarta.com/wms/vmap0?", {layers: 'basic'});
|
"http://vmap0.tiles.osgeo.org/wms/vmap0?", {layers: 'basic'});
|
||||||
|
|
||||||
var pointLayer = new OpenLayers.Layer.Vector("Point Layer");
|
var pointLayer = new OpenLayers.Layer.Vector("Point Layer");
|
||||||
var lineLayer = new OpenLayers.Layer.Vector("Line Layer");
|
var lineLayer = new OpenLayers.Layer.Vector("Line Layer");
|
||||||
@@ -30,14 +36,13 @@
|
|||||||
map.addControl(new OpenLayers.Control.LayerSwitcher());
|
map.addControl(new OpenLayers.Control.LayerSwitcher());
|
||||||
map.addControl(new OpenLayers.Control.MousePosition());
|
map.addControl(new OpenLayers.Control.MousePosition());
|
||||||
|
|
||||||
var options = {handlerOptions: {freehand: true}};
|
|
||||||
drawControls = {
|
drawControls = {
|
||||||
point: new OpenLayers.Control.DrawFeature(pointLayer,
|
point: new OpenLayers.Control.DrawFeature(pointLayer,
|
||||||
OpenLayers.Handler.Point),
|
OpenLayers.Handler.Point),
|
||||||
line: new OpenLayers.Control.DrawFeature(lineLayer,
|
line: new OpenLayers.Control.DrawFeature(lineLayer,
|
||||||
OpenLayers.Handler.Path, options),
|
OpenLayers.Handler.Path),
|
||||||
polygon: new OpenLayers.Control.DrawFeature(polygonLayer,
|
polygon: new OpenLayers.Control.DrawFeature(polygonLayer,
|
||||||
OpenLayers.Handler.Polygon, options)
|
OpenLayers.Handler.Polygon)
|
||||||
};
|
};
|
||||||
|
|
||||||
for(var key in drawControls) {
|
for(var key in drawControls) {
|
||||||
@@ -59,12 +64,22 @@
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function allowPan(element) {
|
||||||
|
var stop = !element.checked;
|
||||||
|
for(var key in drawControls) {
|
||||||
|
drawControls[key].handler.stopDown = stop;
|
||||||
|
drawControls[key].handler.stopUp = stop;
|
||||||
|
}
|
||||||
|
}
|
||||||
</script>
|
</script>
|
||||||
</head>
|
</head>
|
||||||
<body onload="init()">
|
<body onload="init()">
|
||||||
<h1 id="title">OpenLayers Draw Feature Example</h1>
|
<h1 id="title">OpenLayers Draw Feature Example</h1>
|
||||||
|
|
||||||
<div id="tags"></div>
|
<div id="tags">
|
||||||
|
point, line, linestring, polygon, digitizing, geometry, draw, drag
|
||||||
|
</div>
|
||||||
|
|
||||||
<p id="shortdesc">
|
<p id="shortdesc">
|
||||||
Demonstrate on-screen digitizing tools for point, line, and polygon creation.
|
Demonstrate on-screen digitizing tools for point, line, and polygon creation.
|
||||||
@@ -90,14 +105,22 @@
|
|||||||
<input type="radio" name="type" value="polygon" id="polygonToggle" onclick="toggleControl(this);" />
|
<input type="radio" name="type" value="polygon" id="polygonToggle" onclick="toggleControl(this);" />
|
||||||
<label for="polygonToggle">draw polygon</label>
|
<label for="polygonToggle">draw polygon</label>
|
||||||
</li>
|
</li>
|
||||||
|
<li>
|
||||||
|
<input type="checkbox" name="allow-pan" value="allow-pan" id="allowPanCheckbox" checked=true onclick="allowPan(this);" />
|
||||||
|
<label for="allowPanCheckbox">allow pan while drawing</label>
|
||||||
|
</li>
|
||||||
</ul>
|
</ul>
|
||||||
|
|
||||||
<div id="docs">
|
<div id="docs">
|
||||||
<p>Feature digitizing is in freehand mode by default. In freehand mode, the mouse is treated as a pen.
|
<p>With the point drawing control active, click on the map to add a point.</p>
|
||||||
Drawing begins on mouse down, continues with every mouse move, and ends with mouse up.</p>
|
<p>With the line drawing control active, click on the map to add the points that make up your line.
|
||||||
<p>To turn freehand mode off, hold down the shift key while digitizing. With freehand mode off, one
|
Double-click to finish drawing.</p>
|
||||||
vertex is added with each click and double-clicks finish drawing. Freehand mode can be toggled on and off
|
<p>With the polygon drawing control active, click on the map to add the points that make up your
|
||||||
at any time while drawing.</p>
|
polygon. Double-click to finish drawing.</p>
|
||||||
|
<p>With any drawing control active, paning the map can still be achieved. Drag the map as
|
||||||
|
usual for that.</p>
|
||||||
|
<p>Hold down the shift key while drawing to activate freehand mode. While drawing lines or polygons
|
||||||
|
in freehand mode, hold the mouse down and a point will be added with every mouse movement.<p>
|
||||||
</div>
|
</div>
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
|||||||
101
examples/dynamic-text-layer.html
Normal file
101
examples/dynamic-text-layer.html
Normal file
@@ -0,0 +1,101 @@
|
|||||||
|
<html xmlns="http://www.w3.org/1999/xhtml">
|
||||||
|
<head>
|
||||||
|
<meta name="viewport" content="width=device-width; initial-scale=1.0; maximum-scale=1.0; user-scalable=0;" />
|
||||||
|
<meta name="apple-mobile-web-app-capable" content="yes" />
|
||||||
|
<title>OpenLayers Vector Behavior Example</title>
|
||||||
|
<link rel="stylesheet" href="../theme/default/style.css" type="text/css" />
|
||||||
|
<link rel="stylesheet" href="style.css" type="text/css" />
|
||||||
|
<script src="../lib/OpenLayers.js"></script>
|
||||||
|
<script type="text/javascript">
|
||||||
|
var map;
|
||||||
|
|
||||||
|
function init(){
|
||||||
|
map = new OpenLayers.Map('map');
|
||||||
|
var wms = new OpenLayers.Layer.WMS(
|
||||||
|
"OpenLayers WMS", "http://vmap0.tiles.osgeo.org/wms/vmap0",
|
||||||
|
{layers: 'basic'}
|
||||||
|
);
|
||||||
|
|
||||||
|
var layer = new OpenLayers.Layer.Vector("POIs", {
|
||||||
|
strategies: [new OpenLayers.Strategy.BBOX({resFactor: 1.1})],
|
||||||
|
protocol: new OpenLayers.Protocol.HTTP({
|
||||||
|
url: "textfile.txt",
|
||||||
|
format: new OpenLayers.Format.Text()
|
||||||
|
})
|
||||||
|
});
|
||||||
|
|
||||||
|
map.addLayers([wms, layer]);
|
||||||
|
map.zoomToMaxExtent();
|
||||||
|
|
||||||
|
// Interaction; not needed for initial display.
|
||||||
|
selectControl = new OpenLayers.Control.SelectFeature(layer);
|
||||||
|
map.addControl(selectControl);
|
||||||
|
selectControl.activate();
|
||||||
|
layer.events.on({
|
||||||
|
'featureselected': onFeatureSelect,
|
||||||
|
'featureunselected': onFeatureUnselect
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
// Needed only for interaction, not for the display.
|
||||||
|
function onPopupClose(evt) {
|
||||||
|
// 'this' is the popup.
|
||||||
|
var feature = this.feature;
|
||||||
|
if (feature.layer) { // The feature is not destroyed
|
||||||
|
selectControl.unselect(feature);
|
||||||
|
} else { // After "moveend" or "refresh" events on POIs layer all
|
||||||
|
// features have been destroyed by the Strategy.BBOX
|
||||||
|
this.destroy();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
function onFeatureSelect(evt) {
|
||||||
|
feature = evt.feature;
|
||||||
|
popup = new OpenLayers.Popup.FramedCloud("featurePopup",
|
||||||
|
feature.geometry.getBounds().getCenterLonLat(),
|
||||||
|
new OpenLayers.Size(100,100),
|
||||||
|
"<h2>"+feature.attributes.title + "</h2>" +
|
||||||
|
feature.attributes.description,
|
||||||
|
null, true, onPopupClose);
|
||||||
|
feature.popup = popup;
|
||||||
|
popup.feature = feature;
|
||||||
|
map.addPopup(popup, true);
|
||||||
|
}
|
||||||
|
function onFeatureUnselect(evt) {
|
||||||
|
feature = evt.feature;
|
||||||
|
if (feature.popup) {
|
||||||
|
popup.feature = null;
|
||||||
|
map.removePopup(feature.popup);
|
||||||
|
feature.popup.destroy();
|
||||||
|
feature.popup = null;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
</script>
|
||||||
|
</head>
|
||||||
|
<body onload="init()">
|
||||||
|
<h1 id="title">Dynamic POIs via a Text Layer</h1>
|
||||||
|
<div id="tags">
|
||||||
|
poi, dynamic data, text, format, strategy, popup, select, selection
|
||||||
|
</div>
|
||||||
|
<p id="shortdesc">
|
||||||
|
Loading dynamic data from a text file.
|
||||||
|
</p>
|
||||||
|
<div id="map" class="smallmap"></div>
|
||||||
|
<div id="docs">
|
||||||
|
The vector layer shown uses the BBOX strategy, the HTTP protocol,
|
||||||
|
and the Text format.
|
||||||
|
This setup appends "?bbox=west,south,east,north" to every
|
||||||
|
request. This allows you to configure the location as something
|
||||||
|
like 'textfile.php', and take the '?bbox=' parameter to select
|
||||||
|
data from a database or the like.
|
||||||
|
<br /><br />
|
||||||
|
There is nothing about this example that limits it to text files;
|
||||||
|
you can do the same thing with KML, GeoJSON, etc.
|
||||||
|
<br /><br />
|
||||||
|
This is an alternative to something like the <a href="http://wiki.openstreetmap.org/index.php/OpenLayers_Dynamic_POI">OpenStreetMap "Dynamic POI"</a> example. The Layer is a standard vector layer, and interaction can be
|
||||||
|
configured via the SelectFeature control, as you can see in the
|
||||||
|
latter half of the code, which allows you to open a popup when
|
||||||
|
a feature is selected.
|
||||||
|
</div>
|
||||||
|
</body>
|
||||||
|
</html>
|
||||||
@@ -1,14 +1,15 @@
|
|||||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
|
<!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">
|
<html xmlns="http://www.w3.org/1999/xhtml">
|
||||||
<head>
|
<head>
|
||||||
|
<meta name="viewport" content="width=device-width; initial-scale=1.0; maximum-scale=1.0; user-scalable=0;" />
|
||||||
|
<meta name="apple-mobile-web-app-capable" content="yes" />
|
||||||
|
<title>OpenLayers: Custom Editing Toolbar</title>
|
||||||
<link rel="stylesheet" href="../theme/default/style.css" type="text/css" />
|
<link rel="stylesheet" href="../theme/default/style.css" type="text/css" />
|
||||||
<link rel="stylesheet" href="style.css" type="text/css" />
|
<link rel="stylesheet" href="style.css" type="text/css" />
|
||||||
<style type="text/css">
|
<style type="text/css">
|
||||||
.olControlEditingToolbar {
|
.olControlEditingToolbar {
|
||||||
float:left;
|
float:left;
|
||||||
right: 0px;
|
width: 116px;
|
||||||
height: 30px;
|
|
||||||
width: 150px;
|
|
||||||
}
|
}
|
||||||
</style>
|
</style>
|
||||||
<script src="../lib/Firebug/firebug.js"></script>
|
<script src="../lib/Firebug/firebug.js"></script>
|
||||||
@@ -23,7 +24,7 @@
|
|||||||
map = new OpenLayers.Map('map', {theme: null});
|
map = new OpenLayers.Map('map', {theme: null});
|
||||||
layer = new OpenLayers.Layer.WMS(
|
layer = new OpenLayers.Layer.WMS(
|
||||||
"OpenLayers WMS",
|
"OpenLayers WMS",
|
||||||
"http://labs.metacarta.com/wms/vmap0",
|
"http://vmap0.tiles.osgeo.org/wms/vmap0",
|
||||||
{layers: "basic"}
|
{layers: "basic"}
|
||||||
);
|
);
|
||||||
map.addLayer(layer);
|
map.addLayer(layer);
|
||||||
@@ -42,6 +43,9 @@
|
|||||||
</head>
|
</head>
|
||||||
<body onload="init()">
|
<body onload="init()">
|
||||||
<h1 id="title">OpenLayers EditingToolbar Outside Viewport</h1>
|
<h1 id="title">OpenLayers EditingToolbar Outside Viewport</h1>
|
||||||
|
<div id="tags">
|
||||||
|
digitizing, point, line, linestring, polygon, editing, positioning, style
|
||||||
|
</div>
|
||||||
<p id="shortdesc">
|
<p id="shortdesc">
|
||||||
Display an editing toolbar panel outside the map viewport.
|
Display an editing toolbar panel outside the map viewport.
|
||||||
</p>
|
</p>
|
||||||
|
|||||||
@@ -1,9 +1,14 @@
|
|||||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
|
<!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">
|
<html xmlns="http://www.w3.org/1999/xhtml">
|
||||||
<head>
|
<head>
|
||||||
|
<meta name="viewport" content="width=device-width; initial-scale=1.0; maximum-scale=1.0; user-scalable=0;" />
|
||||||
|
<meta name="apple-mobile-web-app-capable" content="yes" />
|
||||||
<title>OpenLayers Editing Toolbar Example</title>
|
<title>OpenLayers Editing Toolbar Example</title>
|
||||||
|
|
||||||
<link rel="stylesheet" href="../theme/default/style.css" type="text/css" />
|
<link rel="stylesheet" href="../theme/default/style.css" type="text/css" />
|
||||||
|
<!--[if lte IE 6]>
|
||||||
|
<link rel="stylesheet" href="../theme/default/ie6-style.css" type="text/css" />
|
||||||
|
<![endif]-->
|
||||||
<link rel="stylesheet" href="style.css" type="text/css" />
|
<link rel="stylesheet" href="style.css" type="text/css" />
|
||||||
<script src="../lib/OpenLayers.js"></script>
|
<script src="../lib/OpenLayers.js"></script>
|
||||||
<script src="../lib/Firebug/debug.js"></script>
|
<script src="../lib/Firebug/debug.js"></script>
|
||||||
@@ -15,7 +20,7 @@
|
|||||||
|
|
||||||
function init(){
|
function init(){
|
||||||
layer = new OpenLayers.Layer.WMS( "OpenLayers WMS",
|
layer = new OpenLayers.Layer.WMS( "OpenLayers WMS",
|
||||||
"http://labs.metacarta.com/wms/vmap0", {layers: 'basic'} );
|
"http://vmap0.tiles.osgeo.org/wms/vmap0", {layers: 'basic'} );
|
||||||
|
|
||||||
vlayer = new OpenLayers.Layer.Vector( "Editable" );
|
vlayer = new OpenLayers.Layer.Vector( "Editable" );
|
||||||
map = new OpenLayers.Map( 'map', {
|
map = new OpenLayers.Map( 'map', {
|
||||||
@@ -33,7 +38,9 @@
|
|||||||
<body onload="init()">
|
<body onload="init()">
|
||||||
<h1 id="title">Editing Toolbar Example</h1>
|
<h1 id="title">Editing Toolbar Example</h1>
|
||||||
|
|
||||||
<div id="tags"></div>
|
<div id="tags">
|
||||||
|
digitizing, point, line, linestring, polygon, editing
|
||||||
|
</div>
|
||||||
|
|
||||||
<p id="shortdesc">
|
<p id="shortdesc">
|
||||||
Demonstrate polygon, polyline and point creation and editing tools.
|
Demonstrate polygon, polyline and point creation and editing tools.
|
||||||
|
|||||||
@@ -1,5 +1,7 @@
|
|||||||
<html xmlns="http://www.w3.org/1999/xhtml">
|
<html xmlns="http://www.w3.org/1999/xhtml">
|
||||||
<head>
|
<head>
|
||||||
|
<meta name="viewport" content="width=device-width; initial-scale=1.0; maximum-scale=1.0; user-scalable=0;" />
|
||||||
|
<meta name="apple-mobile-web-app-capable" content="yes" />
|
||||||
<title>OpenLayers Event Handling</title>
|
<title>OpenLayers Event Handling</title>
|
||||||
<link rel="stylesheet" href="style.css" type="text/css" />
|
<link rel="stylesheet" href="style.css" type="text/css" />
|
||||||
<style type="text/css">
|
<style type="text/css">
|
||||||
@@ -18,7 +20,7 @@
|
|||||||
#output {
|
#output {
|
||||||
position: absolute;
|
position: absolute;
|
||||||
left: 550px;
|
left: 550px;
|
||||||
top: 40px;
|
top: 4em;
|
||||||
width: 350px;
|
width: 350px;
|
||||||
height: 400px;
|
height: 400px;
|
||||||
}
|
}
|
||||||
@@ -106,7 +108,7 @@
|
|||||||
|
|
||||||
var vmap = new OpenLayers.Layer.WMS(
|
var vmap = new OpenLayers.Layer.WMS(
|
||||||
"OpenLayers WMS",
|
"OpenLayers WMS",
|
||||||
"http://labs.metacarta.com/wms/vmap0",
|
"http://vmap0.tiles.osgeo.org/wms/vmap0",
|
||||||
{layers: 'basic'}
|
{layers: 'basic'}
|
||||||
);
|
);
|
||||||
var landsat = new OpenLayers.Layer.WMS(
|
var landsat = new OpenLayers.Layer.WMS(
|
||||||
@@ -136,6 +138,7 @@
|
|||||||
<h1 id="title">Event Handling</h1>
|
<h1 id="title">Event Handling</h1>
|
||||||
|
|
||||||
<div id="tags">
|
<div id="tags">
|
||||||
|
event, events, handler, listener, cleanup
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<p id="shortdesc">
|
<p id="shortdesc">
|
||||||
|
|||||||
@@ -1,6 +1,8 @@
|
|||||||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Strict//EN">
|
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Strict//EN">
|
||||||
<html>
|
<html>
|
||||||
<head>
|
<head>
|
||||||
|
<meta name="viewport" content="width=device-width; initial-scale=1.0; maximum-scale=1.0; user-scalable=0;" />
|
||||||
|
<meta name="apple-mobile-web-app-capable" content="yes" />
|
||||||
<!-- This is the example list source: if you are trying to look at the
|
<!-- This is the example list source: if you are trying to look at the
|
||||||
source of an example, YOU ARE IN THE WRONG PLACE. If you want to view
|
source of an example, YOU ARE IN THE WRONG PLACE. If you want to view
|
||||||
the source of just one example, you can typically choose
|
the source of just one example, you can typically choose
|
||||||
@@ -12,14 +14,24 @@
|
|||||||
<link rel="stylesheet" href="style.css" type="text/css" />
|
<link rel="stylesheet" href="style.css" type="text/css" />
|
||||||
<style type="text/css">
|
<style type="text/css">
|
||||||
html, body {
|
html, body {
|
||||||
height: 100%;
|
|
||||||
overflow: hidden;
|
|
||||||
margin: 0;
|
margin: 0;
|
||||||
padding: 0;
|
padding: 0;
|
||||||
line-height: 1.25em;
|
line-height: 1.25em;
|
||||||
}
|
}
|
||||||
|
#logo {
|
||||||
|
text-shadow: 2px 2px 3px gray;
|
||||||
|
color: white;
|
||||||
|
vertical-align: middle;
|
||||||
|
position: absolute;
|
||||||
|
top: 5px;
|
||||||
|
left: 5px;
|
||||||
|
font-size: 34px;
|
||||||
|
font-family: "Trebuchet MS",Helvetica,Arial,sans-serif;
|
||||||
|
}
|
||||||
|
#logo img {
|
||||||
|
vertical-align: middle;
|
||||||
|
}
|
||||||
.ex_container{
|
.ex_container{
|
||||||
border-bottom: 1px solid #cccccc;
|
|
||||||
}
|
}
|
||||||
.ex_container a {
|
.ex_container a {
|
||||||
text-decoration: none;
|
text-decoration: none;
|
||||||
@@ -34,6 +46,12 @@
|
|||||||
font-weight: bold;
|
font-weight: bold;
|
||||||
color: #333;
|
color: #333;
|
||||||
}
|
}
|
||||||
|
.ex_tags{
|
||||||
|
display: inline;
|
||||||
|
font-size: smaller;
|
||||||
|
font-style: italic;
|
||||||
|
color: #333;
|
||||||
|
}
|
||||||
.ex_filename {
|
.ex_filename {
|
||||||
font-weight: normal;
|
font-weight: normal;
|
||||||
font-size: 0.8em;
|
font-size: 0.8em;
|
||||||
@@ -49,20 +67,18 @@
|
|||||||
display: none;
|
display: none;
|
||||||
}
|
}
|
||||||
#toc {
|
#toc {
|
||||||
width: 30%;
|
width: 100%;
|
||||||
height: 100%;
|
height: 100%;
|
||||||
}
|
}
|
||||||
#filter {
|
#filter {
|
||||||
|
position: fixed;
|
||||||
|
text-align: center;
|
||||||
top: 0px;
|
top: 0px;
|
||||||
height: 50px;
|
background: #9D9FA1;
|
||||||
padding: 10px 1em 10px 1em;
|
width: 100%;
|
||||||
|
padding: 1.3em 0;
|
||||||
}
|
}
|
||||||
#examples {
|
#examples {
|
||||||
border-top: 1px solid #cccccc;
|
|
||||||
position: absolute;
|
|
||||||
width: 30%;
|
|
||||||
top: 70px;
|
|
||||||
bottom: 0px;
|
|
||||||
overflow: auto;
|
overflow: auto;
|
||||||
list-style: none;
|
list-style: none;
|
||||||
margin: 0;
|
margin: 0;
|
||||||
@@ -72,11 +88,20 @@
|
|||||||
list-style: none;
|
list-style: none;
|
||||||
margin: 0;
|
margin: 0;
|
||||||
padding: 0;
|
padding: 0;
|
||||||
|
margin-top: 4em;
|
||||||
}
|
}
|
||||||
#examples ul li {
|
#examples ul li {
|
||||||
display: block;
|
display: inline;
|
||||||
margin: 0;
|
float: left;
|
||||||
|
width: 350px;
|
||||||
|
margin: 10px 0 0 10px;
|
||||||
padding: 0;
|
padding: 0;
|
||||||
|
border: 1px solid #ddd;
|
||||||
|
border-radius: 3px;
|
||||||
|
}
|
||||||
|
#examples .mainlink {
|
||||||
|
height: 8em;
|
||||||
|
overflow: auto;
|
||||||
}
|
}
|
||||||
#exwin {
|
#exwin {
|
||||||
position: absolute;
|
position: absolute;
|
||||||
@@ -88,12 +113,30 @@
|
|||||||
border-left: 1px solid #cccccc;
|
border-left: 1px solid #cccccc;
|
||||||
margin: 0;
|
margin: 0;
|
||||||
}
|
}
|
||||||
|
@media only screen and (max-width: 600px) {
|
||||||
|
#examples ul {
|
||||||
|
margin-top: 100px;
|
||||||
|
}
|
||||||
|
#filter {
|
||||||
|
padding-top: 50px;
|
||||||
|
}
|
||||||
|
#examples ul li {
|
||||||
|
margin-left: 0;
|
||||||
|
border-radius: 0;
|
||||||
|
border-width: 1px 0;
|
||||||
|
width: 100%;
|
||||||
|
}
|
||||||
|
#examples .mainlink {
|
||||||
|
height: auto;
|
||||||
|
}
|
||||||
|
#examples .ex_tags, #examples .ex_filename {
|
||||||
|
display: none;
|
||||||
|
}
|
||||||
|
}
|
||||||
</style>
|
</style>
|
||||||
<script type="text/javascript" src="Jugl.js"></script>
|
<script type="text/javascript" src="Jugl.js"></script>
|
||||||
<script type="text/javascript" src="example-list.js"></script>
|
<script type="text/javascript" src="example-list.js"></script>
|
||||||
<script type="text/javascript">
|
<script type="text/javascript">
|
||||||
// import
|
|
||||||
var Jugl = window["http://jugl.tschaub.net/trunk/lib/Jugl.js"];
|
|
||||||
var template, target;
|
var template, target;
|
||||||
|
|
||||||
function listExamples(examples) {
|
function listExamples(examples) {
|
||||||
@@ -127,7 +170,7 @@
|
|||||||
for(var i=0; i<words.length; ++i) {
|
for(var i=0; i<words.length; ++i) {
|
||||||
var word = words[i].toLowerCase()
|
var word = words[i].toLowerCase()
|
||||||
var dict = info.index[word];
|
var dict = info.index[word];
|
||||||
if(dict) {
|
var updateScores = function() {
|
||||||
for(exIndex in dict) {
|
for(exIndex in dict) {
|
||||||
var count = dict[exIndex];
|
var count = dict[exIndex];
|
||||||
if(scores[exIndex]) {
|
if(scores[exIndex]) {
|
||||||
@@ -142,6 +185,18 @@
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
if(dict) {
|
||||||
|
updateScores();
|
||||||
|
} else {
|
||||||
|
var r;
|
||||||
|
for (idx in info.index) {
|
||||||
|
r = new RegExp(word);
|
||||||
|
if (r.test(idx)) {
|
||||||
|
dict = info.index[idx];
|
||||||
|
updateScores();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
examples = [];
|
examples = [];
|
||||||
for(var j in scores) {
|
for(var j in scores) {
|
||||||
@@ -195,10 +250,10 @@
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
window.onload = function() {
|
window.onload = function() {
|
||||||
template = new Jugl.Template("template");
|
//document.getElementById('keywords').focus();
|
||||||
|
template = new jugl.Template("template");
|
||||||
target = document.getElementById("examples");
|
target = document.getElementById("examples");
|
||||||
listExamples(info.examples);
|
listExamples(info.examples);
|
||||||
document.getElementById("exwin").src = "../examples/example.html";
|
|
||||||
document.getElementById("keywords").onkeyup = inputChange
|
document.getElementById("keywords").onkeyup = inputChange
|
||||||
parseQuery();
|
parseQuery();
|
||||||
};
|
};
|
||||||
@@ -207,20 +262,24 @@
|
|||||||
<body>
|
<body>
|
||||||
<div id="toc">
|
<div id="toc">
|
||||||
<div id="filter">
|
<div id="filter">
|
||||||
|
<div id="logo">
|
||||||
|
<img src="http://www.openlayers.org/images/OpenLayers.trac.png"
|
||||||
|
/>
|
||||||
|
OpenLayers
|
||||||
|
</div>
|
||||||
<p>
|
<p>
|
||||||
<label for="keywords">Filter by keywords</label><br />
|
<input autofocus placeholder="filter by keywords..." type="text" id="keywords" />
|
||||||
<input type="text" id="keywords" />
|
<span id="count"></span>
|
||||||
<span id="count"></span><br />
|
|
||||||
<a href="javascript:void showAll();">show all</a>
|
<a href="javascript:void showAll();">show all</a>
|
||||||
</p>
|
</p>
|
||||||
</div>
|
</div>
|
||||||
<div id="examples"></div>
|
<div id="examples"></div>
|
||||||
</div>
|
</div>
|
||||||
<iframe id="exwin" name="exwin" frameborder="0"></iframe>
|
|
||||||
<div style="display: none;">
|
<div style="display: none;">
|
||||||
<ul id="template">
|
<ul id="template">
|
||||||
<li class="ex_container" jugl:repeat="example examples">
|
<li class="ex_container" jugl:repeat="example examples">
|
||||||
<a jugl:attributes="href example.link" target="exwin">
|
<a jugl:attributes="href example.link" class="mainlink"
|
||||||
|
target="_blank">
|
||||||
<h5 class="ex_title">
|
<h5 class="ex_title">
|
||||||
<span jugl:replace="example.title">title</span><br />
|
<span jugl:replace="example.title">title</span><br />
|
||||||
<span class="ex_filename" jugl:content="'(' + example.example + ')'">filename</span>
|
<span class="ex_filename" jugl:content="'(' + example.example + ')'">filename</span>
|
||||||
@@ -231,6 +290,9 @@
|
|||||||
<p class="ex_classes" jugl:content="example.classes">
|
<p class="ex_classes" jugl:content="example.classes">
|
||||||
Related Classes go here
|
Related Classes go here
|
||||||
</p>
|
</p>
|
||||||
|
<div class="ex_tags" jugl:content="'...tagged with ' + example.tags">
|
||||||
|
|
||||||
|
</div>
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
</ul>
|
</ul>
|
||||||
|
|||||||
@@ -1,56 +1,24 @@
|
|||||||
<html xmlns="http://www.w3.org/1999/xhtml">
|
<!DOCTYPE html>
|
||||||
<head>
|
<html>
|
||||||
<title>OpenLayers Example</title>
|
<head>
|
||||||
<link rel="stylesheet" href="../theme/default/style.css" type="text/css" />
|
<meta name="viewport" content="width=device-width; initial-scale=1.0; maximum-scale=1.0; user-scalable=0;" />
|
||||||
<link rel="stylesheet" href="style.css" type="text/css" />
|
<meta name="apple-mobile-web-app-capable" content="yes" />
|
||||||
<script src="../lib/OpenLayers.js"></script>
|
<title>OpenLayers Example</title>
|
||||||
<script type="text/javascript">
|
<link rel="stylesheet" href="../theme/default/style.css" type="text/css">
|
||||||
// making this a global variable so that it is accessible for
|
<link rel="stylesheet" href="style.css" type="text/css">
|
||||||
// debugging/inspecting in Firebug
|
</head>
|
||||||
var map = null;
|
<body>
|
||||||
|
<h1 id="title">OpenLayers Example</h1>
|
||||||
function init(){
|
<div id="tags">simple, basic</div>
|
||||||
|
<p id="shortdesc">
|
||||||
map = new OpenLayers.Map('map');
|
Demonstrate a simple map with an overlay that includes layer switching controls.
|
||||||
|
</p>
|
||||||
var ol_wms = new OpenLayers.Layer.WMS(
|
<div id="map" class="smallmap"></div>
|
||||||
"OpenLayers WMS",
|
<div id="docs">
|
||||||
"http://labs.metacarta.com/wms/vmap0",
|
<p>This is a basic example demonstrating the use of a map with two layers and a few controls.</p>
|
||||||
{layers: 'basic'}
|
<p>View the <a href="example.js" target="_blank">example.js</a> source to see how this is done.</p>
|
||||||
);
|
</div>
|
||||||
|
<script src="../lib/OpenLayers.js"></script>
|
||||||
var jpl_wms = new OpenLayers.Layer.WMS(
|
<script src="example.js"></script>
|
||||||
"NASA Global Mosaic",
|
</body>
|
||||||
"http://t1.hypercube.telascience.org/cgi-bin/landsat7",
|
|
||||||
{layers: "landsat7"}
|
|
||||||
);
|
|
||||||
|
|
||||||
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.zoomToMaxExtent();
|
|
||||||
}
|
|
||||||
</script>
|
|
||||||
</head>
|
|
||||||
<body onload="init()">
|
|
||||||
<h1 id="title">OpenLayers Example</h1>
|
|
||||||
<div id="tags"></div>
|
|
||||||
<p id="shortdesc">
|
|
||||||
Demonstrate a simple map with an overlay that includes layer switching controls.
|
|
||||||
</p>
|
|
||||||
<div id="map" class="smallmap"></div>
|
|
||||||
<div id="docs"></div>
|
|
||||||
</body>
|
|
||||||
</html>
|
</html>
|
||||||
|
|||||||
23
examples/example.js
Normal file
23
examples/example.js
Normal file
@@ -0,0 +1,23 @@
|
|||||||
|
var map = new OpenLayers.Map("map");
|
||||||
|
|
||||||
|
var ol_wms = new OpenLayers.Layer.WMS(
|
||||||
|
"OpenLayers WMS",
|
||||||
|
"http://vmap0.tiles.osgeo.org/wms/vmap0",
|
||||||
|
{layers: "basic"}
|
||||||
|
);
|
||||||
|
|
||||||
|
var dm_wms = new OpenLayers.Layer.WMS(
|
||||||
|
"Canadian Data",
|
||||||
|
"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"
|
||||||
|
},
|
||||||
|
{isBaseLayer: false, visibility: false}
|
||||||
|
);
|
||||||
|
|
||||||
|
map.addLayers([ol_wms, dm_wms]);
|
||||||
|
map.addControl(new OpenLayers.Control.LayerSwitcher());
|
||||||
|
map.zoomToMaxExtent();
|
||||||
53
examples/filter-strategy.html
Normal file
53
examples/filter-strategy.html
Normal file
@@ -0,0 +1,53 @@
|
|||||||
|
<!DOCTYPE html>
|
||||||
|
<html>
|
||||||
|
<head>
|
||||||
|
<meta name="viewport" content="width=device-width; initial-scale=1.0; maximum-scale=1.0; user-scalable=0;" />
|
||||||
|
<meta name="apple-mobile-web-app-capable" content="yes" />
|
||||||
|
<title>OpenLayers Filter Strategy Example</title>
|
||||||
|
<link rel="stylesheet" href="../theme/default/style.css" type="text/css">
|
||||||
|
<link rel="stylesheet" href="../theme/default/google.css" type="text/css">
|
||||||
|
<link rel="stylesheet" href="style.css" type="text/css">
|
||||||
|
<script src="../lib/OpenLayers.js"></script>
|
||||||
|
<script>OpenLayers.ImgPath = "../img/";</script>
|
||||||
|
<style>
|
||||||
|
.olControlAttribution {
|
||||||
|
font-size: 9px;
|
||||||
|
bottom: 2px;
|
||||||
|
}
|
||||||
|
</style>
|
||||||
|
</head>
|
||||||
|
<body>
|
||||||
|
<h1 id="title">Filter Strategy</h1>
|
||||||
|
<div id="tags">
|
||||||
|
filter, strategy, strategies, kml, advanced
|
||||||
|
</div>
|
||||||
|
<p id="shortdesc">
|
||||||
|
Demonstrates the filter strategy for limiting features passed to the layer.
|
||||||
|
</p>
|
||||||
|
<div id="map" class="smallmap"></div>
|
||||||
|
<label for="span">time span (seconds)</label>
|
||||||
|
<select id="span" name="span">
|
||||||
|
<option value="15">15</option>
|
||||||
|
<option value="30">30</option>
|
||||||
|
<option value="60" selected>60</option>
|
||||||
|
<option value="120">120</option>
|
||||||
|
<option value="240">240</option>
|
||||||
|
</select>
|
||||||
|
<input type="button" id="start" value="start">
|
||||||
|
<input type="button" id="stop" value="stop"><br><br>
|
||||||
|
<div id="docs">
|
||||||
|
<p>
|
||||||
|
This example uses a filter strategy to limit the features that are passed
|
||||||
|
to a layer. Features bound for this layer have a <code>when</code> attribute
|
||||||
|
with date values. A filter strategy is constructed with a between filter
|
||||||
|
that limits the span of dates shown. A simple animation cycles through
|
||||||
|
the domain of the <code>when</code> values, calling <code>setFilter</code>
|
||||||
|
on the strategy with an updated filter.
|
||||||
|
</p><p>
|
||||||
|
View the <a href="filter-strategy.js" target="_blank">filter-strategy.js</a>
|
||||||
|
source to see how this is done
|
||||||
|
</p>
|
||||||
|
</div>
|
||||||
|
<script src="filter-strategy.js"></script>
|
||||||
|
</body>
|
||||||
|
</html>
|
||||||
84
examples/filter-strategy.js
Normal file
84
examples/filter-strategy.js
Normal file
@@ -0,0 +1,84 @@
|
|||||||
|
var map, filter, filterStrategy;
|
||||||
|
var animationTimer;
|
||||||
|
var currentDate;
|
||||||
|
var startDate = new Date(1272736800000); // lower bound of when values
|
||||||
|
var endDate = new Date(1272737100000); // upper value of when values
|
||||||
|
var step = 8; // sencods to advance each interval
|
||||||
|
var interval = 0.125; // seconds between each step in the animation
|
||||||
|
|
||||||
|
function startAnimation() {
|
||||||
|
if (animationTimer) {
|
||||||
|
stopAnimation(true);
|
||||||
|
}
|
||||||
|
if (!currentDate) {
|
||||||
|
currentDate = startDate;
|
||||||
|
}
|
||||||
|
var spanEl = document.getElementById("span");
|
||||||
|
var next = function() {
|
||||||
|
var span = parseInt(spanEl.value, 10);
|
||||||
|
if (currentDate < endDate) {
|
||||||
|
filter.lowerBoundary = currentDate;
|
||||||
|
filter.upperBoundary = new Date(currentDate.getTime() + (span * 1000));
|
||||||
|
filterStrategy.setFilter(filter);
|
||||||
|
currentDate = new Date(currentDate.getTime() + (step * 1000))
|
||||||
|
} else {
|
||||||
|
stopAnimation(true);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
animationTimer = window.setInterval(next, interval * 1000);
|
||||||
|
}
|
||||||
|
|
||||||
|
function stopAnimation(reset) {
|
||||||
|
window.clearInterval(animationTimer);
|
||||||
|
animationTimer = null;
|
||||||
|
if (reset === true) {
|
||||||
|
currentDate = null;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// add behavior to elements
|
||||||
|
document.getElementById("start").onclick = startAnimation;
|
||||||
|
document.getElementById("stop").onclick = stopAnimation;
|
||||||
|
var spanEl = document.getElementById("span");
|
||||||
|
|
||||||
|
var mercator = new OpenLayers.Projection("EPSG:900913");
|
||||||
|
var geographic = new OpenLayers.Projection("EPSG:4326");
|
||||||
|
map = new OpenLayers.Map("map");
|
||||||
|
|
||||||
|
var osm = new OpenLayers.Layer.OSM();
|
||||||
|
|
||||||
|
filter = new OpenLayers.Filter.Comparison({
|
||||||
|
type: OpenLayers.Filter.Comparison.BETWEEN,
|
||||||
|
property: "when",
|
||||||
|
lowerBoundary: startDate,
|
||||||
|
upperBoundary: new Date(startDate.getTime() + (parseInt(spanEl.value, 10) * 1000))
|
||||||
|
});
|
||||||
|
|
||||||
|
filterStrategy = new OpenLayers.Strategy.Filter({filter: filter});
|
||||||
|
|
||||||
|
var flights = new OpenLayers.Layer.Vector("Aircraft Locations", {
|
||||||
|
projection: geographic,
|
||||||
|
strategies: [new OpenLayers.Strategy.Fixed(), filterStrategy],
|
||||||
|
protocol: new OpenLayers.Protocol.HTTP({
|
||||||
|
url: "kml-track.kml",
|
||||||
|
format: new OpenLayers.Format.KML({
|
||||||
|
extractTracks: true
|
||||||
|
//,extractStyles: true // use style from KML instead of styleMap below
|
||||||
|
})
|
||||||
|
}),
|
||||||
|
styleMap: new OpenLayers.StyleMap({
|
||||||
|
"default": new OpenLayers.Style({
|
||||||
|
graphicName: "circle",
|
||||||
|
pointRadius: 3,
|
||||||
|
fillOpacity: 0.25,
|
||||||
|
fillColor: "#ffcc66",
|
||||||
|
strokeColor: "#ff9933",
|
||||||
|
strokeWidth: 1
|
||||||
|
})
|
||||||
|
}),
|
||||||
|
renderers: ["Canvas", "SVG", "VML"]
|
||||||
|
});
|
||||||
|
|
||||||
|
map.addLayers([osm, flights]);
|
||||||
|
map.setCenter(new OpenLayers.LonLat(-93.2735, 44.8349).transform(geographic, mercator), 8);
|
||||||
|
|
||||||
105
examples/filter.html
Normal file
105
examples/filter.html
Normal file
@@ -0,0 +1,105 @@
|
|||||||
|
<html xmlns="http://www.w3.org/1999/xhtml">
|
||||||
|
<head>
|
||||||
|
<meta name="viewport" content="width=device-width; initial-scale=1.0; maximum-scale=1.0; user-scalable=0;" />
|
||||||
|
<meta name="apple-mobile-web-app-capable" content="yes" />
|
||||||
|
<link rel="stylesheet" href="../theme/default/style.css" type="text/css" />
|
||||||
|
<link rel="stylesheet" href="style.css" type="text/css" />
|
||||||
|
<style>
|
||||||
|
#in {
|
||||||
|
width: 90%;
|
||||||
|
height: 250px;
|
||||||
|
}
|
||||||
|
#out0, #out1 {
|
||||||
|
height: 100px;
|
||||||
|
width: 90%;
|
||||||
|
overflow: auto;
|
||||||
|
}
|
||||||
|
</style>
|
||||||
|
<script src="../lib/OpenLayers.js"></script>
|
||||||
|
<script type="text/javascript">
|
||||||
|
|
||||||
|
var filter_1_0 = new OpenLayers.Format.Filter({version: "1.0.0"});
|
||||||
|
var filter_1_1 = new OpenLayers.Format.Filter({version: "1.1.0"});
|
||||||
|
var xml = new OpenLayers.Format.XML();
|
||||||
|
|
||||||
|
var filter;
|
||||||
|
function write() {
|
||||||
|
var code = input.value;
|
||||||
|
try {
|
||||||
|
eval(code);
|
||||||
|
} catch(err) {
|
||||||
|
out0.value = err.message;
|
||||||
|
out1.value = "";
|
||||||
|
}
|
||||||
|
try {
|
||||||
|
out0.value = xml.write(filter_1_0.write(filter));
|
||||||
|
} catch(err) {
|
||||||
|
out0.value = err.message;
|
||||||
|
if(err.lineNumber != undefined) {
|
||||||
|
out0.value += " (line " + err.lineNumber + " " +
|
||||||
|
err.fileName + ")";
|
||||||
|
}
|
||||||
|
}
|
||||||
|
try {
|
||||||
|
out1.value = xml.write(filter_1_1.write(filter));
|
||||||
|
} catch(err) {
|
||||||
|
out1.value = err.message;
|
||||||
|
if(err.lineNumber != undefined) {
|
||||||
|
out1.value += " (line " + err.lineNumber + " " +
|
||||||
|
err.fileName + ")";
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
var input, out0;
|
||||||
|
window.onload = function() {
|
||||||
|
input = document.getElementById("in");
|
||||||
|
out0 = document.getElementById("out0");
|
||||||
|
out1 = document.getElementById("out1");
|
||||||
|
out0.value = "";
|
||||||
|
out1.value = "";
|
||||||
|
document.getElementById("write").onclick = write;
|
||||||
|
};
|
||||||
|
|
||||||
|
</script>
|
||||||
|
</head>
|
||||||
|
<body>
|
||||||
|
<h1 id="title">Filter Encoding</h1>
|
||||||
|
<div id="tags">
|
||||||
|
filter, format, comparison, filter encoding, fe, logical, attribute,
|
||||||
|
attributive, spatial, advanced
|
||||||
|
</div>
|
||||||
|
<p id="shortdesc">
|
||||||
|
Using the filter format write out filter objects.
|
||||||
|
</p>
|
||||||
|
<textarea id="in">
|
||||||
|
filter = new OpenLayers.Filter.Logical({
|
||||||
|
type: OpenLayers.Filter.Logical.AND,
|
||||||
|
filters: [
|
||||||
|
new OpenLayers.Filter.Comparison({
|
||||||
|
type: OpenLayers.Filter.Comparison.LIKE,
|
||||||
|
property: "person",
|
||||||
|
value: "me"
|
||||||
|
}),
|
||||||
|
new OpenLayers.Filter.Comparison({
|
||||||
|
type: OpenLayers.Filter.Comparison.NOT_EQUAL_TO,
|
||||||
|
property: "mean",
|
||||||
|
value: "yes"
|
||||||
|
}),
|
||||||
|
new OpenLayers.Filter.Spatial({
|
||||||
|
type: OpenLayers.Filter.Spatial.BBOX,
|
||||||
|
value: new OpenLayers.Bounds(-180, -90, 180, 90),
|
||||||
|
projection: "EPSG:4326"
|
||||||
|
})
|
||||||
|
]
|
||||||
|
});
|
||||||
|
</textarea>
|
||||||
|
<button id="write">write</button><br />
|
||||||
|
Filter Encoding 1.0
|
||||||
|
<textarea id="out0"></textarea><br />
|
||||||
|
Filter Encoding 1.1
|
||||||
|
<textarea id="out1"></textarea><br />
|
||||||
|
<p id="docs">
|
||||||
|
</p>
|
||||||
|
</body>
|
||||||
|
</html>
|
||||||
@@ -1,5 +1,7 @@
|
|||||||
<html xmlns="http://www.w3.org/1999/xhtml">
|
<html xmlns="http://www.w3.org/1999/xhtml">
|
||||||
<head>
|
<head>
|
||||||
|
<meta name="viewport" content="width=device-width; initial-scale=1.0; maximum-scale=1.0; user-scalable=0;" />
|
||||||
|
<meta name="apple-mobile-web-app-capable" content="yes" />
|
||||||
<link rel="stylesheet" href="../theme/default/style.css" type="text/css" />
|
<link rel="stylesheet" href="../theme/default/style.css" type="text/css" />
|
||||||
<link rel="stylesheet" href="style.css" type="text/css" />
|
<link rel="stylesheet" href="style.css" type="text/css" />
|
||||||
<script src="../lib/OpenLayers.js"></script>
|
<script src="../lib/OpenLayers.js"></script>
|
||||||
@@ -13,7 +15,7 @@
|
|||||||
numZoomLevels: 10 });
|
numZoomLevels: 10 });
|
||||||
var wms = new OpenLayers.Layer.WMS(
|
var wms = new OpenLayers.Layer.WMS(
|
||||||
"OpenLayers WMS",
|
"OpenLayers WMS",
|
||||||
"http://labs.metacarta.com/wms/vmap0",
|
"http://vmap0.tiles.osgeo.org/wms/vmap0",
|
||||||
{layers: 'basic'}
|
{layers: 'basic'}
|
||||||
);
|
);
|
||||||
map.addLayers([wms]);
|
map.addLayers([wms]);
|
||||||
@@ -40,6 +42,7 @@
|
|||||||
<h1 id="title">Fractional Zoom Example</h1>
|
<h1 id="title">Fractional Zoom Example</h1>
|
||||||
|
|
||||||
<div id="tags">
|
<div id="tags">
|
||||||
|
zoomlevel, unlimited zoom, scale
|
||||||
</div>
|
</div>
|
||||||
<p id="shortdesc">
|
<p id="shortdesc">
|
||||||
Shows the use of a map with fractional (or non-discrete) zoom levels.
|
Shows the use of a map with fractional (or non-discrete) zoom levels.
|
||||||
|
|||||||
@@ -1,13 +1,14 @@
|
|||||||
<html xmlns="http://www.w3.org/1999/xhtml">
|
<!DOCTYPE html>
|
||||||
|
<html>
|
||||||
<head>
|
<head>
|
||||||
|
<meta name="viewport" content="width=device-width; initial-scale=1.0; maximum-scale=1.0; user-scalable=0;" />
|
||||||
|
<meta name="apple-mobile-web-app-capable" content="yes" />
|
||||||
<title>Full Screen Example</title>
|
<title>Full Screen Example</title>
|
||||||
<link rel="stylesheet" href="../theme/default/style.css" type="text/css" />
|
<link rel="stylesheet" href="../theme/default/style.css" type="text/css" />
|
||||||
<link rel="stylesheet" href="style.css" type="text/css" />
|
<link rel="stylesheet" href="style.css" type="text/css" />
|
||||||
<style type="text/css">
|
<style type="text/css">
|
||||||
body {
|
html, body, #map {
|
||||||
margin: 0;
|
margin: 0;
|
||||||
}
|
|
||||||
#map {
|
|
||||||
width: 100%;
|
width: 100%;
|
||||||
height: 100%;
|
height: 100%;
|
||||||
}
|
}
|
||||||
@@ -17,33 +18,13 @@
|
|||||||
bottom: 1em;
|
bottom: 1em;
|
||||||
left: 1em;
|
left: 1em;
|
||||||
width: 512px;
|
width: 512px;
|
||||||
|
z-index: 20000;
|
||||||
|
background-color: white;
|
||||||
|
padding: 0 0.5em 0.5em 0.5em;
|
||||||
}
|
}
|
||||||
</style>
|
</style>
|
||||||
<script src="../lib/OpenLayers.js"></script>
|
<script src="../lib/OpenLayers.js"></script>
|
||||||
<script type="text/javascript">
|
<script src="fullScreen.js"></script>
|
||||||
var map;
|
|
||||||
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 jpl_wms = new OpenLayers.Layer.WMS( "NASA Global Mosaic",
|
|
||||||
"http://t1.hypercube.telascience.org/cgi-bin/landsat7",
|
|
||||||
{layers: "landsat7"});
|
|
||||||
|
|
||||||
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>
|
</head>
|
||||||
<body onload="init()">
|
<body onload="init()">
|
||||||
<div id="map"></div>
|
<div id="map"></div>
|
||||||
@@ -51,15 +32,20 @@
|
|||||||
<div id="text">
|
<div id="text">
|
||||||
<h1 id="title">Full Screen Example</h1>
|
<h1 id="title">Full Screen Example</h1>
|
||||||
|
|
||||||
<div id="tags"></div>
|
<div id="tags">
|
||||||
|
css, style, fullscreen, window, margin, padding, scrollbar
|
||||||
|
</div>
|
||||||
|
|
||||||
<p id="shortdesc">
|
<p id="shortdesc">
|
||||||
Demonstrate a map that fill the entire browser window.
|
Demonstrate a map that fill the entire browser window.
|
||||||
</p>
|
</p>
|
||||||
|
|
||||||
<div id="docs">
|
<div id="docs">
|
||||||
This example uses CSS to define the dimensions of the map element in order to fill the screen.
|
<p>This example uses CSS to define the dimensions of the map element in order to fill the screen.
|
||||||
When the user resizes the window, the map size changes correspondingly. No scroll bars!
|
When the user resizes the window, the map size changes correspondingly. No scroll bars!</p>
|
||||||
|
<p>See the
|
||||||
|
<a href="fullScreen.js" target="_blank">fullScreen.js source</a>
|
||||||
|
to see how this is done.</p>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</body>
|
</body>
|
||||||
|
|||||||
15
examples/fullScreen.js
Normal file
15
examples/fullScreen.js
Normal file
@@ -0,0 +1,15 @@
|
|||||||
|
var map;
|
||||||
|
function init(){
|
||||||
|
map = new OpenLayers.Map('map');
|
||||||
|
|
||||||
|
var ol_wms = new OpenLayers.Layer.WMS( "OpenLayers WMS",
|
||||||
|
"http://vmap0.tiles.osgeo.org/wms/vmap0",
|
||||||
|
{layers: 'basic'} );
|
||||||
|
var ol_wms_nobuffer = new OpenLayers.Layer.WMS( "OpenLayers WMS (no tile buffer)",
|
||||||
|
"http://vmap0.tiles.osgeo.org/wms/vmap0",
|
||||||
|
{layers: 'basic'}, {buffer: 0});
|
||||||
|
|
||||||
|
map.addLayers([ol_wms, ol_wms_nobuffer]);
|
||||||
|
map.addControl(new OpenLayers.Control.LayerSwitcher());
|
||||||
|
map.setCenter(new OpenLayers.LonLat(0, 0), 6);
|
||||||
|
}
|
||||||
80
examples/game-accel-ball.html
Normal file
80
examples/game-accel-ball.html
Normal file
@@ -0,0 +1,80 @@
|
|||||||
|
<html xmlns="http://www.w3.org/1999/xhtml">
|
||||||
|
<head>
|
||||||
|
<meta name="viewport" content="width=device-width; initial-scale=1.0; maximum-scale=1.0; user-scalable=0;" />
|
||||||
|
<meta name="apple-mobile-web-app-capable" content="yes" />
|
||||||
|
<title>OpenLayers Game: Bounce Ball</title>
|
||||||
|
<link rel="stylesheet" href="../theme/default/style.css" type="text/css" />
|
||||||
|
<link rel="stylesheet" href="style.css" type="text/css" />
|
||||||
|
<script src="../lib/OpenLayers.js?mobile"></script>
|
||||||
|
<style type="text/css">
|
||||||
|
html, body { height: 100%; }
|
||||||
|
#shortdesc { display: none; }
|
||||||
|
#tags { display: none; }
|
||||||
|
</style>
|
||||||
|
|
||||||
|
<script type="text/javascript">
|
||||||
|
var map, vlayer;
|
||||||
|
function adjustLocation(delta, feature) {
|
||||||
|
feature.geometry.move(delta.x, delta.y);
|
||||||
|
var me = map.maxExtent;
|
||||||
|
var rad = 6;
|
||||||
|
if (feature.geometry.x > (me.right - rad)) {
|
||||||
|
feature.geometry.x = me.right - rad;
|
||||||
|
} else if (feature.geometry.x < (me.left+rad)) {
|
||||||
|
feature.geometry.x = me.left+rad;
|
||||||
|
}
|
||||||
|
if (feature.geometry.y > (me.top-rad)) {
|
||||||
|
feature.geometry.y = me.top-rad;
|
||||||
|
} else if (feature.geometry.y < (me.bottom+rad)) {
|
||||||
|
feature.geometry.y = me.bottom+rad;
|
||||||
|
}
|
||||||
|
vlayer.drawFeature(feature);
|
||||||
|
}
|
||||||
|
function init() {
|
||||||
|
map = new OpenLayers.Map( 'map',
|
||||||
|
{
|
||||||
|
'maxExtent': new OpenLayers.Bounds(0, 0, $("map").clientWidth, $("map").clientHeight),
|
||||||
|
controls: [],
|
||||||
|
maxResolution: 'auto'}
|
||||||
|
);
|
||||||
|
var layer = new OpenLayers.Layer("",
|
||||||
|
{isBaseLayer: true} );
|
||||||
|
map.addLayer(layer);
|
||||||
|
map.zoomToMaxExtent();
|
||||||
|
vlayer = new OpenLayers.Layer.Vector();
|
||||||
|
var feature = new OpenLayers.Feature.Vector(
|
||||||
|
new OpenLayers.Geometry.Point(map.getCenter().lon, map.getCenter().lat));
|
||||||
|
vlayer.addFeatures(feature);
|
||||||
|
map.addLayer(vlayer);
|
||||||
|
if (window.DeviceMotionEvent) {
|
||||||
|
window.addEventListener('devicemotion', function (evt) {
|
||||||
|
var delta = null;
|
||||||
|
if (typeof(evt.accelerationIncludingGravity) != 'undefined') {
|
||||||
|
delta = {
|
||||||
|
'x': evt.accelerationIncludingGravity.x * 3,
|
||||||
|
'y': evt.accelerationIncludingGravity.y * 3,
|
||||||
|
'z': evt.accelerationIncludingGravity.z
|
||||||
|
}
|
||||||
|
}
|
||||||
|
adjustLocation(delta, feature);
|
||||||
|
}, true);
|
||||||
|
} else {
|
||||||
|
alert("This demo does not work on your browser.");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
</script>
|
||||||
|
</head>
|
||||||
|
<body onload="init()">
|
||||||
|
<h1 id="title">Accelerometer Example</h1>
|
||||||
|
<div id="tags">
|
||||||
|
mobile, game
|
||||||
|
</div>
|
||||||
|
<div id="shortdesc">Simple acceleration demo; roll a vector feature around
|
||||||
|
on a map. (Only tested on iOS 4.)</div>
|
||||||
|
|
||||||
|
<div id="map" width="100%" height="100%" style="background-color: grey"></div>
|
||||||
|
<div id="docs">
|
||||||
|
Demo works best when device is locked in portrait mode.
|
||||||
|
</div>
|
||||||
|
</body>
|
||||||
|
</html>
|
||||||
@@ -1,5 +1,7 @@
|
|||||||
<html xmlns="http://www.w3.org/1999/xhtml">
|
<html xmlns="http://www.w3.org/1999/xhtml">
|
||||||
<head>
|
<head>
|
||||||
|
<meta name="viewport" content="width=device-width; initial-scale=1.0; maximum-scale=1.0; user-scalable=0;" />
|
||||||
|
<meta name="apple-mobile-web-app-capable" content="yes" />
|
||||||
<link rel="stylesheet" href="../theme/default/style.css" type="text/css" />
|
<link rel="stylesheet" href="../theme/default/style.css" type="text/css" />
|
||||||
<link rel="stylesheet" href="style.css" type="text/css" />
|
<link rel="stylesheet" href="style.css" type="text/css" />
|
||||||
<script src="../lib/OpenLayers.js"></script>
|
<script src="../lib/OpenLayers.js"></script>
|
||||||
@@ -12,7 +14,7 @@
|
|||||||
function init(){
|
function init(){
|
||||||
map = new OpenLayers.Map( 'map' );
|
map = new OpenLayers.Map( 'map' );
|
||||||
layer = new OpenLayers.Layer.WMS( "OpenLayers WMS",
|
layer = new OpenLayers.Layer.WMS( "OpenLayers WMS",
|
||||||
"http://labs.metacarta.com/wms/vmap0",
|
"http://vmap0.tiles.osgeo.org/wms/vmap0",
|
||||||
{layers: 'basic'} );
|
{layers: 'basic'} );
|
||||||
map.addLayer(layer);
|
map.addLayer(layer);
|
||||||
map.setCenter(new OpenLayers.LonLat(lon, lat), zoom);
|
map.setCenter(new OpenLayers.LonLat(lon, lat), zoom);
|
||||||
@@ -57,6 +59,17 @@
|
|||||||
</head>
|
</head>
|
||||||
<body onload="init()">
|
<body onload="init()">
|
||||||
<h1 id="title">GeoJSON Example</h1>
|
<h1 id="title">GeoJSON Example</h1>
|
||||||
|
|
||||||
|
<div id="tags">
|
||||||
|
JSON, GeoJSON
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<p id="shortdesc">
|
||||||
|
Demonstrate the use of the GeoJSON format.
|
||||||
|
</p>
|
||||||
<div id="map" class="smallmap"></div>
|
<div id="map" class="smallmap"></div>
|
||||||
|
<div id="docs">
|
||||||
|
This example uses the GeoJSON format.
|
||||||
|
</div>
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
|||||||
40
examples/geolocation.html
Normal file
40
examples/geolocation.html
Normal file
@@ -0,0 +1,40 @@
|
|||||||
|
<!DOCTYPE html>
|
||||||
|
<html>
|
||||||
|
<head>
|
||||||
|
<meta name="viewport" content="width=device-width; initial-scale=1.0; maximum-scale=1.0; user-scalable=0;">
|
||||||
|
<meta name="apple-mobile-web-app-capable" content="yes">
|
||||||
|
<title>OpenLayers Geolocation</title>
|
||||||
|
|
||||||
|
<link rel="stylesheet" href="../theme/default/style.css" type="text/css">
|
||||||
|
<link rel="stylesheet" href="style.css" type="text/css">
|
||||||
|
<style>
|
||||||
|
.olControlAttribution {
|
||||||
|
bottom: 3px;
|
||||||
|
}
|
||||||
|
</style>
|
||||||
|
</head>
|
||||||
|
<body>
|
||||||
|
<h1 id="title">Geolocation Example</h1>
|
||||||
|
|
||||||
|
<div id="tags">
|
||||||
|
geolocation, geolocate, mobile
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<p id="shortdesc">
|
||||||
|
Track current position and display it with its accuracy.
|
||||||
|
</p>
|
||||||
|
|
||||||
|
<div id="map" class="smallmap"></div>
|
||||||
|
<button id="locate">Locate me!</button>
|
||||||
|
<input type="checkbox" name="track" id="track">
|
||||||
|
<label for="track">Track my position</label>
|
||||||
|
<div id="docs">
|
||||||
|
<p>
|
||||||
|
View the <a href="geolocation.js" target="_blank">geolocation.js source</a>
|
||||||
|
to see how this is done.
|
||||||
|
</p>
|
||||||
|
</div>
|
||||||
|
<script src="../lib/OpenLayers.js"></script>
|
||||||
|
<script src="geolocation.js"></script>
|
||||||
|
</body>
|
||||||
|
</html>
|
||||||
105
examples/geolocation.js
Normal file
105
examples/geolocation.js
Normal file
@@ -0,0 +1,105 @@
|
|||||||
|
var style = {
|
||||||
|
fillColor: '#000',
|
||||||
|
fillOpacity: 0.1,
|
||||||
|
strokeWidth: 0
|
||||||
|
};
|
||||||
|
|
||||||
|
var map = new OpenLayers.Map('map');
|
||||||
|
var layer = new OpenLayers.Layer.OSM( "Simple OSM Map");
|
||||||
|
var vector = new OpenLayers.Layer.Vector('vector');
|
||||||
|
map.addLayers([layer, vector]);
|
||||||
|
|
||||||
|
map.setCenter(
|
||||||
|
new OpenLayers.LonLat(-71.147, 42.472).transform(
|
||||||
|
new OpenLayers.Projection("EPSG:4326"),
|
||||||
|
map.getProjectionObject()
|
||||||
|
), 12
|
||||||
|
);
|
||||||
|
|
||||||
|
var pulsate = function(feature) {
|
||||||
|
var point = feature.geometry.getCentroid(),
|
||||||
|
bounds = feature.geometry.getBounds(),
|
||||||
|
radius = Math.abs((bounds.right - bounds.left)/2),
|
||||||
|
count = 0,
|
||||||
|
grow = 'up';
|
||||||
|
|
||||||
|
var resize = function(){
|
||||||
|
if (count>16) {
|
||||||
|
clearInterval(window.resizeInterval);
|
||||||
|
}
|
||||||
|
var interval = radius * 0.03;
|
||||||
|
var ratio = interval/radius;
|
||||||
|
switch(count) {
|
||||||
|
case 4:
|
||||||
|
case 12:
|
||||||
|
grow = 'down'; break;
|
||||||
|
case 8:
|
||||||
|
grow = 'up'; break;
|
||||||
|
}
|
||||||
|
if (grow!=='up') {
|
||||||
|
ratio = - Math.abs(ratio);
|
||||||
|
}
|
||||||
|
feature.geometry.resize(1+ratio, point);
|
||||||
|
vector.drawFeature(feature);
|
||||||
|
count++;
|
||||||
|
};
|
||||||
|
window.resizeInterval = window.setInterval(resize, 50, point, radius);
|
||||||
|
};
|
||||||
|
|
||||||
|
var geolocate = new OpenLayers.Control.Geolocate({
|
||||||
|
geolocationOptions: {
|
||||||
|
enableHighAccuracy: false,
|
||||||
|
maximumAge: 0,
|
||||||
|
timeout: 7000
|
||||||
|
}
|
||||||
|
});
|
||||||
|
map.addControl(geolocate);
|
||||||
|
geolocate.events.register("locationupdated",this,function(e) {
|
||||||
|
vector.removeAllFeatures();
|
||||||
|
var circle = new OpenLayers.Feature.Vector(
|
||||||
|
OpenLayers.Geometry.Polygon.createRegularPolygon(
|
||||||
|
new OpenLayers.Geometry.Point(e.point.x, e.point.y),
|
||||||
|
e.position.coords.accuracy/2,
|
||||||
|
40,
|
||||||
|
0
|
||||||
|
),
|
||||||
|
{},
|
||||||
|
style
|
||||||
|
);
|
||||||
|
vector.addFeatures([
|
||||||
|
new OpenLayers.Feature.Vector(
|
||||||
|
e.point,
|
||||||
|
{},
|
||||||
|
{
|
||||||
|
graphicName: 'cross',
|
||||||
|
strokeColor: '#f00',
|
||||||
|
strokeWidth: 2,
|
||||||
|
fillOpacity: 0,
|
||||||
|
pointRadius: 10
|
||||||
|
}
|
||||||
|
),
|
||||||
|
circle
|
||||||
|
]);
|
||||||
|
map.zoomToExtent(vector.getDataExtent());
|
||||||
|
pulsate(circle);
|
||||||
|
});
|
||||||
|
geolocate.events.register("locationfailed",this,function() {
|
||||||
|
OpenLayers.Console.log('Location detection failed');
|
||||||
|
});
|
||||||
|
|
||||||
|
$('locate').onclick = function() {
|
||||||
|
vector.removeAllFeatures();
|
||||||
|
geolocate.deactivate();
|
||||||
|
$('track').checked = false;
|
||||||
|
geolocate.watch = false;
|
||||||
|
geolocate.activate();
|
||||||
|
};
|
||||||
|
$('track').onclick = function() {
|
||||||
|
vector.removeAllFeatures();
|
||||||
|
geolocate.deactivate();
|
||||||
|
if (this.checked) {
|
||||||
|
geolocate.watch = true;
|
||||||
|
geolocate.activate();
|
||||||
|
}
|
||||||
|
};
|
||||||
|
$('track').checked = false;
|
||||||
@@ -1,5 +1,7 @@
|
|||||||
<html xmlns="http://www.w3.org/1999/xhtml">
|
<html xmlns="http://www.w3.org/1999/xhtml">
|
||||||
<head>
|
<head>
|
||||||
|
<meta name="viewport" content="width=device-width; initial-scale=1.0; maximum-scale=1.0; user-scalable=0;" />
|
||||||
|
<meta name="apple-mobile-web-app-capable" content="yes" />
|
||||||
<link rel="stylesheet" href="../theme/default/style.css" type="text/css" />
|
<link rel="stylesheet" href="../theme/default/style.css" type="text/css" />
|
||||||
<link rel="stylesheet" href="style.css" type="text/css" />
|
<link rel="stylesheet" href="style.css" type="text/css" />
|
||||||
<style type="text/css">
|
<style type="text/css">
|
||||||
@@ -16,7 +18,7 @@
|
|||||||
map = new OpenLayers.Map('map', {maxResolution:'auto'});
|
map = new OpenLayers.Map('map', {maxResolution:'auto'});
|
||||||
|
|
||||||
layer = new OpenLayers.Layer.WMS( "OpenLayers WMS",
|
layer = new OpenLayers.Layer.WMS( "OpenLayers WMS",
|
||||||
"http://labs.metacarta.com/wms/vmap0", {layers: 'basic'} );
|
"http://vmap0.tiles.osgeo.org/wms/vmap0", {layers: 'basic'} );
|
||||||
map.addLayer(layer);
|
map.addLayer(layer);
|
||||||
|
|
||||||
map.setCenter(new OpenLayers.LonLat(0, 0), 0);
|
map.setCenter(new OpenLayers.LonLat(0, 0), 0);
|
||||||
@@ -48,7 +50,7 @@
|
|||||||
|
|
||||||
// Create a GML layer with GeoRSS format and a style map.
|
// Create a GML layer with GeoRSS format and a style map.
|
||||||
markerLayer = new OpenLayers.Layer.GML("Some images from Flickr",
|
markerLayer = new OpenLayers.Layer.GML("Some images from Flickr",
|
||||||
"xml/georss-flickr.xml", {
|
"xml/georss-flickr.xml", {
|
||||||
format: OpenLayers.Format.GeoRSS,
|
format: OpenLayers.Format.GeoRSS,
|
||||||
formatOptions: {
|
formatOptions: {
|
||||||
// adds the thumbnail attribute to the feature
|
// adds the thumbnail attribute to the feature
|
||||||
@@ -61,8 +63,8 @@
|
|||||||
return feature;
|
return feature;
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
// Giving the style map keys for "default" and "select"
|
// Giving the style map keys for "default" and "select"
|
||||||
// rendering intent, to make the image larger when selected
|
// rendering intent, to make the image larger when selected
|
||||||
styleMap: new OpenLayers.StyleMap({
|
styleMap: new OpenLayers.StyleMap({
|
||||||
"default": style,
|
"default": style,
|
||||||
"select": new OpenLayers.Style({pointRadius: 35})
|
"select": new OpenLayers.Style({pointRadius: 35})
|
||||||
@@ -94,7 +96,23 @@
|
|||||||
</head>
|
</head>
|
||||||
<body onload="init()">
|
<body onload="init()">
|
||||||
<h1 id="title">GeoRSS from Flickr in OpenLayers</h1>
|
<h1 id="title">GeoRSS from Flickr in OpenLayers</h1>
|
||||||
<p>The displayed GeoRSS feed has a <tt><media:thumbnail/></tt> property for each item. An extended <tt>createFeatureFromItem()</tt> function is used to add this attribute to the attributes hash of each feature read in by <tt>OpenLayers.Format.GeoRSS</tt>. The example is configured with a style to render each item with its thumbnail image. Also, to show how rules work, we defined a rule that if the title of an rss item contains "powder", it will be rendered larger than the others.</p>
|
<div id="tags">
|
||||||
|
georss, style, styling, marker, flickr, thumbnail, image, rule
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<p id="shortdesc">
|
||||||
|
Display a flickr-feed on top of the map
|
||||||
|
</p>
|
||||||
|
|
||||||
<div id="map" class="smallmap"></div>
|
<div id="map" class="smallmap"></div>
|
||||||
|
<div id="docs">
|
||||||
|
<p>The displayed GeoRSS feed has a <tt><media:thumbnail/></tt>
|
||||||
|
property for each item. An extended <tt>createFeatureFromItem()</tt>
|
||||||
|
function is used to add this attribute to the attributes hash of each
|
||||||
|
feature read in by <tt>OpenLayers.Format.GeoRSS</tt>. The example is
|
||||||
|
configured with a style to render each item with its thumbnail image.
|
||||||
|
Also, to show how rules work, we defined a rule that if the title of an
|
||||||
|
rss item contains "powder", it will be rendered larger than the others.</p>
|
||||||
|
</div>
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
|||||||
@@ -1,5 +1,7 @@
|
|||||||
<html xmlns="http://www.w3.org/1999/xhtml">
|
<html xmlns="http://www.w3.org/1999/xhtml">
|
||||||
<head>
|
<head>
|
||||||
|
<meta name="viewport" content="width=device-width; initial-scale=1.0; maximum-scale=1.0; user-scalable=0;" />
|
||||||
|
<meta name="apple-mobile-web-app-capable" content="yes" />
|
||||||
<title>OpenLayers GeoRSS Marker Example</title>
|
<title>OpenLayers GeoRSS Marker Example</title>
|
||||||
<link rel="stylesheet" href="../theme/default/style.css" type="text/css" />
|
<link rel="stylesheet" href="../theme/default/style.css" type="text/css" />
|
||||||
<link rel="stylesheet" href="style.css" type="text/css" />
|
<link rel="stylesheet" href="style.css" type="text/css" />
|
||||||
@@ -11,13 +13,13 @@
|
|||||||
function init(){
|
function init(){
|
||||||
map = new OpenLayers.Map('map', {maxResolution:'auto'});
|
map = new OpenLayers.Map('map', {maxResolution:'auto'});
|
||||||
layer = new OpenLayers.Layer.WMS( "OpenLayers WMS",
|
layer = new OpenLayers.Layer.WMS( "OpenLayers WMS",
|
||||||
"http://labs.metacarta.com/wms/vmap0", {layers: 'basic'} );
|
"http://vmap0.tiles.osgeo.org/wms/vmap0", {layers: 'basic'} );
|
||||||
map.addLayer(layer);
|
map.addLayer(layer);
|
||||||
map.setCenter(new OpenLayers.LonLat(0, 0), 0);
|
map.setCenter(new OpenLayers.LonLat(0, 0), 0);
|
||||||
map.addControl(new OpenLayers.Control.LayerSwitcher());
|
map.addControl(new OpenLayers.Control.LayerSwitcher());
|
||||||
var newl = new OpenLayers.Layer.GeoRSS( 'GeoRSS', 'georss.xml');
|
var newl = new OpenLayers.Layer.GeoRSS( 'GeoRSS', 'georss.xml');
|
||||||
map.addLayer(newl);
|
map.addLayer(newl);
|
||||||
var yelp = new OpenLayers.Icon("http://openlayers.org/~crschmidt/yelp.png", new OpenLayers.Size(20,29));
|
var yelp = new OpenLayers.Icon("http://www.openlayers.org/images/OpenLayers.trac.png", new OpenLayers.Size(49,44));
|
||||||
var newl = new OpenLayers.Layer.GeoRSS( 'Yelp GeoRSS', 'yelp-georss.xml', {'icon':yelp});
|
var newl = new OpenLayers.Layer.GeoRSS( 'Yelp GeoRSS', 'yelp-georss.xml', {'icon':yelp});
|
||||||
map.addLayer(newl);
|
map.addLayer(newl);
|
||||||
}
|
}
|
||||||
@@ -26,7 +28,9 @@
|
|||||||
<body onload="init()">
|
<body onload="init()">
|
||||||
<h1 id="title">GeoRSS Marker Example</h1>
|
<h1 id="title">GeoRSS Marker Example</h1>
|
||||||
|
|
||||||
<div id="tags"></div>
|
<div id="tags">
|
||||||
|
georss, style, styling, marker, flickr, image
|
||||||
|
</div>
|
||||||
|
|
||||||
<p id="shortdesc">
|
<p id="shortdesc">
|
||||||
Demonstrate loading a GeoRSS feed using the GeoRSS parser.
|
Demonstrate loading a GeoRSS feed using the GeoRSS parser.
|
||||||
|
|||||||
@@ -1,5 +1,7 @@
|
|||||||
<html xmlns="http://www.w3.org/1999/xhtml">
|
<html xmlns="http://www.w3.org/1999/xhtml">
|
||||||
<head>
|
<head>
|
||||||
|
<meta name="viewport" content="width=device-width; initial-scale=1.0; maximum-scale=1.0; user-scalable=0;" />
|
||||||
|
<meta name="apple-mobile-web-app-capable" content="yes" />
|
||||||
<title>OpenLayers GeoRSS Example</title>
|
<title>OpenLayers GeoRSS Example</title>
|
||||||
<link rel="stylesheet" href="../theme/default/style.css" type="text/css" />
|
<link rel="stylesheet" href="../theme/default/style.css" type="text/css" />
|
||||||
<link rel="stylesheet" href="style.css" type="text/css" />
|
<link rel="stylesheet" href="style.css" type="text/css" />
|
||||||
@@ -11,7 +13,7 @@
|
|||||||
function init(){
|
function init(){
|
||||||
map = new OpenLayers.Map('map', {maxResolution:'auto'});
|
map = new OpenLayers.Map('map', {maxResolution:'auto'});
|
||||||
layer = new OpenLayers.Layer.WMS( "OpenLayers WMS",
|
layer = new OpenLayers.Layer.WMS( "OpenLayers WMS",
|
||||||
"http://labs.metacarta.com/wms/vmap0", {layers: 'basic'} );
|
"http://vmap0.tiles.osgeo.org/wms/vmap0", {layers: 'basic'} );
|
||||||
map.addLayer(layer);
|
map.addLayer(layer);
|
||||||
map.setCenter(new OpenLayers.LonLat(0, 0), 0);
|
map.setCenter(new OpenLayers.LonLat(0, 0), 0);
|
||||||
map.addControl(new OpenLayers.Control.LayerSwitcher());
|
map.addControl(new OpenLayers.Control.LayerSwitcher());
|
||||||
@@ -29,7 +31,9 @@
|
|||||||
<body onload="init()">
|
<body onload="init()">
|
||||||
<h1 id="title">GeoRSS Example</h1>
|
<h1 id="title">GeoRSS Example</h1>
|
||||||
|
|
||||||
<div id="tags"></div>
|
<div id="tags">
|
||||||
|
georss, style, styling, marker
|
||||||
|
</div>
|
||||||
|
|
||||||
<p id="shortdesc">
|
<p id="shortdesc">
|
||||||
Display a couple of locally cached georss feeds on an a basemap.
|
Display a couple of locally cached georss feeds on an a basemap.
|
||||||
@@ -48,9 +52,9 @@
|
|||||||
<input type="submit" onclick="addUrl(); return false;" value="Load Feed" onsubmit="addUrl(); return false;" />
|
<input type="submit" onclick="addUrl(); return false;" value="Load Feed" onsubmit="addUrl(); return false;" />
|
||||||
</form>
|
</form>
|
||||||
|
|
||||||
<p>The above input box allows the input of a URL to a GeoRSS feed. This feed can be local to the HTML page --
|
<p>The above input box allows the input of a URL to a GeoRSS feed. This feed can be local to the HTML page —
|
||||||
for example, entering 'georss.xml' will work by default, because there is a local file in the directory called
|
for example, entering 'georss.xml' will work by default, because there is a local file in the directory called
|
||||||
georss.xml -- or, with a properly set up ProxyHost variable (as is used here), it will be able to load any
|
georss.xml — or, with a properly set up ProxyHost variable (as is used here), it will be able to load any
|
||||||
HTTP URL which contains GeoRSS and display it. Anything else will simply have no effect.</p>
|
HTTP URL which contains GeoRSS and display it. Anything else will simply have no effect.</p>
|
||||||
</div>
|
</div>
|
||||||
</body>
|
</body>
|
||||||
|
|||||||
86
examples/getfeature-wfs.html
Normal file
86
examples/getfeature-wfs.html
Normal file
@@ -0,0 +1,86 @@
|
|||||||
|
<html xmlns="http://www.w3.org/1999/xhtml">
|
||||||
|
<head>
|
||||||
|
<meta name="viewport" content="width=device-width; initial-scale=1.0; maximum-scale=1.0; user-scalable=0;" />
|
||||||
|
<meta name="apple-mobile-web-app-capable" content="yes" />
|
||||||
|
<link rel="stylesheet" href="../theme/default/style.css" type="text/css" />
|
||||||
|
<link rel="stylesheet" href="style.css" type="text/css" />
|
||||||
|
<title>WFS: GetFeature Example (GeoServer)</title>
|
||||||
|
<script src="../lib/OpenLayers.js"></script>
|
||||||
|
<script type="text/javascript">
|
||||||
|
var map, layer, select, hover, control;
|
||||||
|
|
||||||
|
function init(){
|
||||||
|
OpenLayers.ProxyHost= "proxy.cgi?url=";
|
||||||
|
map = new OpenLayers.Map('map', {
|
||||||
|
controls: [
|
||||||
|
new OpenLayers.Control.PanZoom(),
|
||||||
|
new OpenLayers.Control.Permalink(),
|
||||||
|
new OpenLayers.Control.Navigation()
|
||||||
|
]
|
||||||
|
});
|
||||||
|
layer = new OpenLayers.Layer.WMS(
|
||||||
|
"States WMS/WFS",
|
||||||
|
"http://v2.suite.opengeo.org/geoserver/ows",
|
||||||
|
{layers: 'usa:states', format: 'image/gif'}
|
||||||
|
);
|
||||||
|
select = new OpenLayers.Layer.Vector("Selection", {styleMap:
|
||||||
|
new OpenLayers.Style(OpenLayers.Feature.Vector.style["select"])
|
||||||
|
});
|
||||||
|
hover = new OpenLayers.Layer.Vector("Hover");
|
||||||
|
map.addLayers([layer, hover, select]);
|
||||||
|
|
||||||
|
control = new OpenLayers.Control.GetFeature({
|
||||||
|
protocol: OpenLayers.Protocol.WFS.fromWMSLayer(layer),
|
||||||
|
box: true,
|
||||||
|
hover: true,
|
||||||
|
multipleKey: "shiftKey",
|
||||||
|
toggleKey: "ctrlKey"
|
||||||
|
});
|
||||||
|
control.events.register("featureselected", this, function(e) {
|
||||||
|
select.addFeatures([e.feature]);
|
||||||
|
});
|
||||||
|
control.events.register("featureunselected", this, function(e) {
|
||||||
|
select.removeFeatures([e.feature]);
|
||||||
|
});
|
||||||
|
control.events.register("hoverfeature", this, function(e) {
|
||||||
|
hover.addFeatures([e.feature]);
|
||||||
|
});
|
||||||
|
control.events.register("outfeature", this, function(e) {
|
||||||
|
hover.removeFeatures([e.feature]);
|
||||||
|
});
|
||||||
|
map.addControl(control);
|
||||||
|
control.activate();
|
||||||
|
|
||||||
|
map.setCenter(new OpenLayers.Bounds(-140.444336,25.115234,-44.438477,50.580078).getCenterLonLat(), 3);
|
||||||
|
}
|
||||||
|
</script>
|
||||||
|
</head>
|
||||||
|
<body onload="init()">
|
||||||
|
<h1 id="title">WFS GetFeature Example (GeoServer)</h1>
|
||||||
|
|
||||||
|
<div id="tags">
|
||||||
|
WFS, GetFeature
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<p id="shortdesc">
|
||||||
|
Shows how to use the GetFeature control to select features from a WMS layer.
|
||||||
|
</p>
|
||||||
|
|
||||||
|
<div id="map" class="smallmap"></div>
|
||||||
|
|
||||||
|
<div id="docs">
|
||||||
|
<p>
|
||||||
|
Click or drag a box to select features, use the Shift key to add
|
||||||
|
features to the selection, use the Ctrl key to toggle a feature's
|
||||||
|
selected status. Note that this control also has a hover option, which
|
||||||
|
is enabled in this example. This gives you a visual feedback by loading
|
||||||
|
the feature underneath the mouse pointer from the WFS, but causes a lot
|
||||||
|
of GetFeature requests to be issued.
|
||||||
|
</p>
|
||||||
|
</div>
|
||||||
|
</body>
|
||||||
|
</html>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
</div>
|
||||||
220
examples/getfeatureinfo-control.html
Normal file
220
examples/getfeatureinfo-control.html
Normal file
@@ -0,0 +1,220 @@
|
|||||||
|
<html>
|
||||||
|
<head>
|
||||||
|
<meta name="viewport" content="width=device-width; initial-scale=1.0; maximum-scale=1.0; user-scalable=0;" />
|
||||||
|
<meta name="apple-mobile-web-app-capable" content="yes" />
|
||||||
|
<title>OpenLayers WMS Feature Info Example (GeoServer)</title>
|
||||||
|
<script src="../lib/OpenLayers.js"></script>
|
||||||
|
<link rel="stylesheet" href="../theme/default/style.css" type="text/css" />
|
||||||
|
<link rel="stylesheet" href="style.css" type="text/css" />
|
||||||
|
<style type="text/css">
|
||||||
|
ul, li {
|
||||||
|
padding-left: 0px;
|
||||||
|
margin-left: 0px;
|
||||||
|
list-style: none;
|
||||||
|
}
|
||||||
|
#info {
|
||||||
|
position: absolute;
|
||||||
|
top: 6em;
|
||||||
|
left: 550px;
|
||||||
|
}
|
||||||
|
#info table td {
|
||||||
|
border:1px solid #ddd;
|
||||||
|
border-collapse: collapse;
|
||||||
|
margin: 0;
|
||||||
|
padding: 0;
|
||||||
|
font-size: 90%;
|
||||||
|
padding: .2em .1em;
|
||||||
|
background:#fff;
|
||||||
|
}
|
||||||
|
#info table th{
|
||||||
|
padding:.2em .2em;
|
||||||
|
text-transform: uppercase;
|
||||||
|
font-weight: bold;
|
||||||
|
background: #eee;
|
||||||
|
}
|
||||||
|
tr.odd td {
|
||||||
|
background:#eee;
|
||||||
|
}
|
||||||
|
table.featureInfo caption {
|
||||||
|
text-align:left;
|
||||||
|
font-size:100%;
|
||||||
|
font-weight:bold;
|
||||||
|
padding:.2em .2em;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
</style>
|
||||||
|
<script defer="defer" type="text/javascript">
|
||||||
|
OpenLayers.ProxyHost = "proxy.cgi?url=";
|
||||||
|
|
||||||
|
var map, infocontrols, water, highlightlayer;
|
||||||
|
|
||||||
|
function load() {
|
||||||
|
map = new OpenLayers.Map('map', {
|
||||||
|
maxExtent: new OpenLayers.Bounds(143.834,-43.648,148.479,-39.573)
|
||||||
|
});
|
||||||
|
|
||||||
|
var political = new OpenLayers.Layer.WMS("State Boundaries",
|
||||||
|
"http://demo.opengeo.org/geoserver/wms",
|
||||||
|
{'layers': 'topp:tasmania_state_boundaries', transparent: true, format: 'image/gif'},
|
||||||
|
{isBaseLayer: true}
|
||||||
|
);
|
||||||
|
|
||||||
|
var roads = new OpenLayers.Layer.WMS("Roads",
|
||||||
|
"http://demo.opengeo.org/geoserver/wms",
|
||||||
|
{'layers': 'topp:tasmania_roads', transparent: true, format: 'image/gif'},
|
||||||
|
{isBaseLayer: false}
|
||||||
|
);
|
||||||
|
|
||||||
|
var cities = new OpenLayers.Layer.WMS("Cities",
|
||||||
|
"http://demo.opengeo.org/geoserver/wms",
|
||||||
|
{'layers': 'topp:tasmania_cities', transparent: true, format: 'image/gif'},
|
||||||
|
{isBaseLayer: false}
|
||||||
|
);
|
||||||
|
|
||||||
|
water = new OpenLayers.Layer.WMS("Bodies of Water",
|
||||||
|
"http://demo.opengeo.org/geoserver/wms",
|
||||||
|
{'layers': 'topp:tasmania_water_bodies', transparent: true, format: 'image/gif'},
|
||||||
|
{isBaseLayer: false}
|
||||||
|
);
|
||||||
|
|
||||||
|
highlightLayer = new OpenLayers.Layer.Vector("Highlighted Features", {
|
||||||
|
displayInLayerSwitcher: false,
|
||||||
|
isBaseLayer: false
|
||||||
|
}
|
||||||
|
);
|
||||||
|
|
||||||
|
infoControls = {
|
||||||
|
click: new OpenLayers.Control.WMSGetFeatureInfo({
|
||||||
|
url: 'http://demo.opengeo.org/geoserver/wms',
|
||||||
|
title: 'Identify features by clicking',
|
||||||
|
layers: [water],
|
||||||
|
queryVisible: true
|
||||||
|
}),
|
||||||
|
hover: new OpenLayers.Control.WMSGetFeatureInfo({
|
||||||
|
url: 'http://demo.opengeo.org/geoserver/wms',
|
||||||
|
title: 'Identify features by clicking',
|
||||||
|
layers: [water],
|
||||||
|
hover: true,
|
||||||
|
// defining a custom format options here
|
||||||
|
formatOptions: {
|
||||||
|
typeName: 'water_bodies',
|
||||||
|
featureNS: 'http://www.openplans.org/topp'
|
||||||
|
},
|
||||||
|
queryVisible: true
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
map.addLayers([political, roads, cities, water, highlightLayer]);
|
||||||
|
for (var i in infoControls) {
|
||||||
|
infoControls[i].events.register("getfeatureinfo", this, showInfo);
|
||||||
|
map.addControl(infoControls[i]);
|
||||||
|
}
|
||||||
|
|
||||||
|
map.addControl(new OpenLayers.Control.LayerSwitcher());
|
||||||
|
|
||||||
|
infoControls.click.activate();
|
||||||
|
map.zoomToMaxExtent();
|
||||||
|
}
|
||||||
|
|
||||||
|
function showInfo(evt) {
|
||||||
|
if (evt.features && evt.features.length) {
|
||||||
|
highlightLayer.destroyFeatures();
|
||||||
|
highlightLayer.addFeatures(evt.features);
|
||||||
|
highlightLayer.redraw();
|
||||||
|
} else {
|
||||||
|
$('responseText').innerHTML = evt.text;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
function toggleControl(element) {
|
||||||
|
for (var key in infoControls) {
|
||||||
|
var control = infoControls[key];
|
||||||
|
if (element.value == key && element.checked) {
|
||||||
|
control.activate();
|
||||||
|
} else {
|
||||||
|
control.deactivate();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
function toggleFormat(element) {
|
||||||
|
for (var key in infoControls) {
|
||||||
|
var control = infoControls[key];
|
||||||
|
control.infoFormat = element.value;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
function toggleLayers(element) {
|
||||||
|
for (var key in infoControls) {
|
||||||
|
var control = infoControls[key];
|
||||||
|
if (element.value == 'Specified') {
|
||||||
|
control.layers = [water];
|
||||||
|
} else {
|
||||||
|
control.layers = null;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// function toggle(key
|
||||||
|
</script>
|
||||||
|
</head>
|
||||||
|
<body onload="load()">
|
||||||
|
<h1 id="title">Feature Info Example</h1>
|
||||||
|
|
||||||
|
<div id="tags">
|
||||||
|
WMS, GetFeatureInfo
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<p id="shortdesc">
|
||||||
|
Demonstrates the WMSGetFeatureInfo control for fetching information about a position from WMS (via GetFeatureInfo request).
|
||||||
|
</p>
|
||||||
|
|
||||||
|
<div id="info">
|
||||||
|
<h1>Tasmania</h1>
|
||||||
|
<p>Click on the map to get feature info.</p>
|
||||||
|
<div id="responseText">
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div id="map" class="smallmap"></div>
|
||||||
|
|
||||||
|
<div id="docs">
|
||||||
|
</div>
|
||||||
|
<ul id="control">
|
||||||
|
<li>
|
||||||
|
<input type="radio" name="controlType" value="click" id="click"
|
||||||
|
onclick="toggleControl(this);" checked="checked" />
|
||||||
|
<label for="click">Click</label>
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<input type="radio" name="controlType" value="hover" id="hover"
|
||||||
|
onclick="toggleControl(this);" />
|
||||||
|
<label for="hover">Hover</label>
|
||||||
|
</li>
|
||||||
|
</ul>
|
||||||
|
<ul id="format">
|
||||||
|
<li>
|
||||||
|
<input type="radio" name="formatType" value="text/html" id="html"
|
||||||
|
onclick="toggleFormat(this);" checked="checked" />
|
||||||
|
<label for="html">Show HTML Description</label>
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<input type="radio" name="formatType" value="application/vnd.ogc.gml" id="highlight"
|
||||||
|
onclick="toggleFormat(this);" />
|
||||||
|
<label for="highlight">Highlight Feature on Map</label>
|
||||||
|
</li>
|
||||||
|
</ul>
|
||||||
|
<ul id="layers">
|
||||||
|
<li>
|
||||||
|
<input type="radio" name="layerSelection" value="Specified" id="Specified"
|
||||||
|
onclick="toggleLayers(this);" checked="checked" />
|
||||||
|
<label for="Specified">Get water body info</label>
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<input type="radio" name="layerSelection" value="Auto" id="Auto"
|
||||||
|
onclick="toggleLayers(this);" />
|
||||||
|
<label for="Auto">Get info for visible layers</label>
|
||||||
|
</li>
|
||||||
|
</ul>
|
||||||
|
</body>
|
||||||
|
</html>
|
||||||
94
examples/getfeatureinfo-popup.html
Normal file
94
examples/getfeatureinfo-popup.html
Normal file
@@ -0,0 +1,94 @@
|
|||||||
|
<html>
|
||||||
|
<head>
|
||||||
|
<meta name="viewport" content="width=device-width; initial-scale=1.0; maximum-scale=1.0; user-scalable=0;" />
|
||||||
|
<meta name="apple-mobile-web-app-capable" content="yes" />
|
||||||
|
<title>GetFeatureInfo Popup</title>
|
||||||
|
<script src="../lib/OpenLayers.js"></script>
|
||||||
|
<link rel="stylesheet" href="../theme/default/style.css" type="text/css" />
|
||||||
|
<link rel="stylesheet" href="style.css" type="text/css" />
|
||||||
|
<script>
|
||||||
|
OpenLayers.ProxyHost = "proxy.cgi?url=";
|
||||||
|
|
||||||
|
var map, info;
|
||||||
|
|
||||||
|
function load() {
|
||||||
|
map = new OpenLayers.Map({
|
||||||
|
div: "map",
|
||||||
|
maxExtent: new OpenLayers.Bounds(143.834,-43.648,148.479,-39.573)
|
||||||
|
});
|
||||||
|
|
||||||
|
var political = new OpenLayers.Layer.WMS("State Boundaries",
|
||||||
|
"http://demo.opengeo.org/geoserver/wms",
|
||||||
|
{'layers': 'topp:tasmania_state_boundaries', transparent: true, format: 'image/gif'},
|
||||||
|
{isBaseLayer: true}
|
||||||
|
);
|
||||||
|
|
||||||
|
var roads = new OpenLayers.Layer.WMS("Roads",
|
||||||
|
"http://demo.opengeo.org/geoserver/wms",
|
||||||
|
{'layers': 'topp:tasmania_roads', transparent: true, format: 'image/gif'},
|
||||||
|
{isBaseLayer: false}
|
||||||
|
);
|
||||||
|
|
||||||
|
var cities = new OpenLayers.Layer.WMS("Cities",
|
||||||
|
"http://demo.opengeo.org/geoserver/wms",
|
||||||
|
{'layers': 'topp:tasmania_cities', transparent: true, format: 'image/gif'},
|
||||||
|
{isBaseLayer: false}
|
||||||
|
);
|
||||||
|
|
||||||
|
var water = new OpenLayers.Layer.WMS("Bodies of Water",
|
||||||
|
"http://demo.opengeo.org/geoserver/wms",
|
||||||
|
{'layers': 'topp:tasmania_water_bodies', transparent: true, format: 'image/gif'},
|
||||||
|
{isBaseLayer: false}
|
||||||
|
);
|
||||||
|
|
||||||
|
var highlight = new OpenLayers.Layer.Vector("Highlighted Features", {
|
||||||
|
displayInLayerSwitcher: false,
|
||||||
|
isBaseLayer: false
|
||||||
|
});
|
||||||
|
|
||||||
|
map.addLayers([political, roads, cities, water, highlight]);
|
||||||
|
|
||||||
|
info = new OpenLayers.Control.WMSGetFeatureInfo({
|
||||||
|
url: 'http://demo.opengeo.org/geoserver/wms',
|
||||||
|
title: 'Identify features by clicking',
|
||||||
|
queryVisible: true,
|
||||||
|
eventListeners: {
|
||||||
|
getfeatureinfo: function(event) {
|
||||||
|
map.addPopup(new OpenLayers.Popup.FramedCloud(
|
||||||
|
"chicken",
|
||||||
|
map.getLonLatFromPixel(event.xy),
|
||||||
|
null,
|
||||||
|
event.text,
|
||||||
|
null,
|
||||||
|
true
|
||||||
|
));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
});
|
||||||
|
map.addControl(info);
|
||||||
|
info.activate();
|
||||||
|
|
||||||
|
map.addControl(new OpenLayers.Control.LayerSwitcher());
|
||||||
|
map.zoomToMaxExtent();
|
||||||
|
}
|
||||||
|
|
||||||
|
</script>
|
||||||
|
</head>
|
||||||
|
<body onload="load()">
|
||||||
|
<h1 id="title">Feature Info in Popup</h1>
|
||||||
|
|
||||||
|
<div id="tags">
|
||||||
|
WMS, GetFeatureInfo, popup
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<p id="shortdesc">
|
||||||
|
Demonstrates the WMSGetFeatureInfo control for fetching information
|
||||||
|
about a position from WMS (via GetFeatureInfo request). Results
|
||||||
|
are displayed in a popup.
|
||||||
|
</p>
|
||||||
|
|
||||||
|
<div id="map" class="smallmap"></div>
|
||||||
|
|
||||||
|
<div id="docs"></div>
|
||||||
|
</body>
|
||||||
|
</html>
|
||||||
@@ -1,62 +0,0 @@
|
|||||||
<html>
|
|
||||||
<head>
|
|
||||||
<title>OpenLayers Feature Info Example</title>
|
|
||||||
<script src="../lib/OpenLayers.js"></script>
|
|
||||||
<link rel="stylesheet" href="../theme/default/style.css" type="text/css" />
|
|
||||||
<link rel="stylesheet" href="style.css" type="text/css" />
|
|
||||||
<style type="text/css">
|
|
||||||
ul, li { padding-left: 0px; margin-left: 0px; }
|
|
||||||
</style>
|
|
||||||
</head>
|
|
||||||
<body>
|
|
||||||
<h1 id="title">Feature Info Example</h1>
|
|
||||||
|
|
||||||
<div id="tags"></div>
|
|
||||||
|
|
||||||
<p id="shortdesc">
|
|
||||||
Demonstrates sending a GetFeatureInfo query to an OWS. Returns information about a map feature in the side DIV.
|
|
||||||
</p>
|
|
||||||
|
|
||||||
<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" class="smallmap"></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);
|
|
||||||
OpenLayers.Event.stop(e);
|
|
||||||
});
|
|
||||||
function setHTML(response) {
|
|
||||||
OpenLayers.Util.getElement('nodeList').innerHTML = response.responseText;
|
|
||||||
}
|
|
||||||
</script>
|
|
||||||
|
|
||||||
<div id="docs">
|
|
||||||
</div>
|
|
||||||
</body>
|
|
||||||
</html>
|
|
||||||
@@ -1,5 +1,7 @@
|
|||||||
<html xmlns="http://www.w3.org/1999/xhtml">
|
<html xmlns="http://www.w3.org/1999/xhtml">
|
||||||
<head>
|
<head>
|
||||||
|
<meta name="viewport" content="width=device-width; initial-scale=1.0; maximum-scale=1.0; user-scalable=0;" />
|
||||||
|
<meta name="apple-mobile-web-app-capable" content="yes" />
|
||||||
<title>OpenLayers GML Layer Example</title>
|
<title>OpenLayers GML Layer Example</title>
|
||||||
<link rel="stylesheet" href="../theme/default/style.css" type="text/css" />
|
<link rel="stylesheet" href="../theme/default/style.css" type="text/css" />
|
||||||
<link rel="stylesheet" href="style.css" type="text/css" />
|
<link rel="stylesheet" href="style.css" type="text/css" />
|
||||||
@@ -13,7 +15,7 @@
|
|||||||
function init(){
|
function init(){
|
||||||
map = new OpenLayers.Map('map');
|
map = new OpenLayers.Map('map');
|
||||||
layer = new OpenLayers.Layer.WMS( "OpenLayers WMS",
|
layer = new OpenLayers.Layer.WMS( "OpenLayers WMS",
|
||||||
"http://labs.metacarta.com/wms/vmap0", {layers: 'basic'} );
|
"http://vmap0.tiles.osgeo.org/wms/vmap0", {layers: 'basic'} );
|
||||||
map.addLayer(layer);
|
map.addLayer(layer);
|
||||||
map.zoomToExtent(new OpenLayers.Bounds(-3.922119,44.335327,4.866943,49.553833));
|
map.zoomToExtent(new OpenLayers.Bounds(-3.922119,44.335327,4.866943,49.553833));
|
||||||
map.addLayer(new OpenLayers.Layer.GML("GML", "gml/polygon.xml"));
|
map.addLayer(new OpenLayers.Layer.GML("GML", "gml/polygon.xml"));
|
||||||
@@ -23,7 +25,9 @@
|
|||||||
<body onload="init()">
|
<body onload="init()">
|
||||||
<h1 id="title">GML Layer Example</h1>
|
<h1 id="title">GML Layer Example</h1>
|
||||||
|
|
||||||
<div id="tags"></div>
|
<div id="tags">
|
||||||
|
GML
|
||||||
|
</div>
|
||||||
|
|
||||||
<p id="shortdesc">
|
<p id="shortdesc">
|
||||||
Loads locally stored GML vector data on a basemap. Includes GML example file.
|
Loads locally stored GML vector data on a basemap. Includes GML example file.
|
||||||
|
|||||||
@@ -1,5 +1,7 @@
|
|||||||
<html xmlns="http://www.w3.org/1999/xhtml">
|
<html xmlns="http://www.w3.org/1999/xhtml">
|
||||||
<head>
|
<head>
|
||||||
|
<meta name="viewport" content="width=device-width; initial-scale=1.0; maximum-scale=1.0; user-scalable=0;" />
|
||||||
|
<meta name="apple-mobile-web-app-capable" content="yes" />
|
||||||
<title>OpenLayers Google with Overlay Example</title>
|
<title>OpenLayers Google with Overlay Example</title>
|
||||||
<link rel="stylesheet" href="../theme/default/style.css" type="text/css" />
|
<link rel="stylesheet" href="../theme/default/style.css" type="text/css" />
|
||||||
<link rel="stylesheet" href="style.css" type="text/css" />
|
<link rel="stylesheet" href="style.css" type="text/css" />
|
||||||
@@ -37,7 +39,9 @@
|
|||||||
<body onload="init()">
|
<body onload="init()">
|
||||||
<h1 id="title">Google with Overlay Example</h1>
|
<h1 id="title">Google with Overlay Example</h1>
|
||||||
|
|
||||||
<div id="tags"></div>
|
<div id="tags">
|
||||||
|
Google, overlay, mercator, reproject, cleanup
|
||||||
|
</div>
|
||||||
|
|
||||||
<p id="shortdesc">
|
<p id="shortdesc">
|
||||||
Demonstrate a Google basemap used with boundary overlay layer.
|
Demonstrate a Google basemap used with boundary overlay layer.
|
||||||
|
|||||||
33
examples/google-v3-alloverlays.html
Normal file
33
examples/google-v3-alloverlays.html
Normal file
@@ -0,0 +1,33 @@
|
|||||||
|
<!DOCTYPE html>
|
||||||
|
<html>
|
||||||
|
<head>
|
||||||
|
<meta name="viewport" content="width=device-width; initial-scale=1.0; maximum-scale=1.0; user-scalable=0;" />
|
||||||
|
<meta name="apple-mobile-web-app-capable" content="yes" />
|
||||||
|
<title>OpenLayers Google (v3) Layer Example</title>
|
||||||
|
<link rel="stylesheet" href="../theme/default/style.css" type="text/css">
|
||||||
|
<link rel="stylesheet" href="../theme/default/google.css" type="text/css">
|
||||||
|
<link rel="stylesheet" href="style.css" type="text/css">
|
||||||
|
<script src="http://maps.google.com/maps/api/js?sensor=false"></script>
|
||||||
|
<script src="../lib/OpenLayers.js"></script>
|
||||||
|
<script src="google-v3-alloverlays.js"></script>
|
||||||
|
</head>
|
||||||
|
<body onload="init()">
|
||||||
|
<h1 id="title">Google (v3) allOverlays Layer Example</h1>
|
||||||
|
<div id="tags">
|
||||||
|
Google, overlay
|
||||||
|
</div>
|
||||||
|
<p id="shortdesc">
|
||||||
|
Demonstrate use the Google Maps v3 API with allOverlays set to true on the map.
|
||||||
|
</p>
|
||||||
|
<div id="map" class="smallmap"></div>
|
||||||
|
<div id="docs">
|
||||||
|
<p>
|
||||||
|
You can also use Google layers as overlays, e.g. in a map with
|
||||||
|
allOverlays set to true. Note some of the layers disappear as
|
||||||
|
you zoom in to levels that are not supported by all layers. See the
|
||||||
|
<a href="google-v3-alloverlays.js" target="_blank">google-v3-alloverlays.js source</a>
|
||||||
|
to see how this is done.
|
||||||
|
</p>
|
||||||
|
</div>
|
||||||
|
</body>
|
||||||
|
</html>
|
||||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user