- <!DOCTYPE html>
- <html>
- <head>
- <title>KRPano</title>
- <meta name="viewport" content="target-densitydpi=device-dpi, width=device-width, initial-scale=1.0, minimum-scale=1.0, maximum-scale=1.0" />
- <meta name="apple-mobile-web-app-capable" content="yes" />
- <meta http-equiv="Content-Type" content="text/html;charset=windows-1251" />
- <style>
- html { height:100%; }
- body { height:100%; overflow: hidden; margin:0; padding:0; font-family:Arial, Helvetica, sans-serif; font-size:16px; color:#FFFFFF; background-color:#000000; }
- a{ color:#AAAAAA; text-decoration:underline; }
- a:hover{ color:#FFFFFF; text-decoration:underline; }
- </style>
- <script type="text/javascript" src="http://code.jquery.com/jquery-latest.min.js"></script>
- </head>
- <body>
- <div id="krpanoDIV" style="width:100%;height:50%;">
- <noscript><table style="width:100%;height:50%;"><tr style="valign:middle;"><td><div style="text-align:center;">ERROR:<br/><br/>Javascript not activated<br/><br/></div></td></tr></table></noscript>
- </div>
- <div id="map" style="width: 100%;height:50%"></div>
- <script type="text/javascript">
- var pmarks = [
- {coords: [107.60835728615834, 51.80498497161981], offset: 29.612430, iconContent: '1', xml: '%SWFPATH%/scenes/solar_tower_1/scene.xml'},
- {coords: [107.60834053847577, 51.80625216324661], offset: 52.541204, iconContent: '2', xml: '%SWFPATH%/scenes/solar_tower_2/scene.xml'},
- {coords: [107.60839418265618, 51.807256449274895], offset: 58.053150, iconContent: '3', xml: '%SWFPATH%/scenes/solar_tower_3/scene.xml'},
- {coords: [107.60832980963896, 51.807974732832555], offset: -59.017464, iconContent: '4', xml: '%SWFPATH%/scenes/solar_tower_4/scene.xml'},
- {coords: [107.60930374795694, 51.808262554869444], offset: 52.025996, iconContent: '5', xml: '%SWFPATH%/scenes/russian_dramatic_theater_1/scene.xml'}
- ];
- var pMark = {};
- var inactiveMarks = [];
- var map = {};
- var mapLoaded = false;
- var mapTimeout = 0;
- var kr = {};
- var degreeInterval = 0;
- var activeId = -1;
- var offset = 0.0;
- function updateDegree()
- {
- var hlookat = kr.get('view.hlookat');
- // check offset
- offset = pmarks[activeId].offset;
- hlookat -= offset;
- $('#pMarkIcon').css({
- '-moz-transform': 'rotate(' + hlookat + 'deg)',
- '-webkit-transform': 'rotate(' + hlookat + 'deg)',
- '-o-transform': 'rotate(' + hlookat + 'deg)',
- '-ms-transform': 'rotate(' + hlookat + 'deg)'
- });
- }
- function initMap(ymaps)
- {
- map = new ymaps.Map("map", {center: [107.60863856012126, 51.80902072567784], zoom: 16, type: "yandex#publicMap", behaviors: ["default", "scrollZoom"]});
- clearTimeout(mapTimeout);
- mapLoaded = true;
- }
- function resetAll()
- {
- var size = pmarks.length;
- for (var i = 0; i < size; ++i)
- {
- if (typeof inactiveMarks[i] != 'undefined')
- map.geoObjects.remove(inactiveMarks[i]);
- inactiveMarks[i] = new ymaps.Placemark(pmarks[i].coords, {
- iconContent: '<img src="map/binocular.png" style=" background:url(\'map/blue-bg.png\');">'
- }, {
- iconImageHref: 'map/placemark-bg-blue.png',
- iconImageSize: [44, 55],
- iconImageOffset: [-17, -37],
- panoPath: pmarks[i].xml
- });
- if (typeof pmarks[i] != 'undefined')
- {
- inactiveMarks[i].events.add('click', function(p) {
- kr.call('loadpano(' + p.originalEvent.target.options.get('panoPath') + ')');
- });
- }
- map.geoObjects.add(inactiveMarks[i]);
- }
- }
- function addPmark(id)
- {
- if (!mapLoaded)
- {
- mapTimeout = setTimeout(function() {
- addPmark(id);
- }, 1000);
- return;
- }
- clearTimeout(mapTimeout);
- clearTimeout(degreeInterval);
- resetAll();
- if (typeof inactiveMarks[id] != 'undefined')
- map.geoObjects.remove(inactiveMarks[id]);
- map.geoObjects.remove(pMark);
- pMark = new ymaps.Placemark(pmarks[id].coords, {
- iconContent: '<img src="map/icon_large.png" id="pMarkIcon">',
- }, {
- iconImageHref: 'map/pixel.png',
- iconImageSize: [93, 93],
- iconImageOffset: [-54, -35]
- });
- map.geoObjects.add(pMark);
- degreeInterval = setInterval(updateDegree, 100);
- }
- function loaded(id)
- {
- activeId = id;
- addPmark(id);
- }
- </script>
- <script type="text/javascript" src="http://api-maps.yandex.ru/2.0/?coordorder=longlat&load=package.full&wizard=constructor&lang=ru-RU&onload=initMap"></script>
- <script src="swfkrpano.js"></script>
- <script src="swfaddress.js?tracker=null"></script>
- <script>
- var viewer = createPanoViewer({swf:"krpano.swf", id:"krpanoSWFObject", target:"krpanoDIV"});
- viewer.addVariable("xml", "tour.xml");
- viewer.embed();
- kr = document.getElementById('krpanoSWFObject');
- </script>
- </body>
- </html>