You are not logged in.

Dear visitor, welcome to krpano.com Forum. If this is your first visit here, please read the Help. It explains in detail how this page works. To use all features of this page, you should consider registering. Please use the registration form, to register here or read more information about the registration process. If you are already registered, please login here.

1

Wednesday, May 8th 2013, 11:58am

vtour.xml Befehl ändern

Habe ein vtour aus einem Panorama und Fotos als Hotspots erstellt. Nun möchte ich wenn man den Linken Sreuerungspfeil anklickt, das egal von welchem Hotspot aus immer wieder auf das Panorama zurück gestellt wird.



<layer name="skin_btmborder" url="vtourskin.png" crop="2|52|60|12" align="bottomleft" edge="topleft" width="100%" height="12" x="0" y="0" enabled="false" />
<layer name="skin_btn_prev" url="vtourskin.png" crop="0|64|64|64" align="left" x="5" y="0" scale="0.5" alpha="0.5" onclick="skin_nextscene(-1);" ondown="skin_buttonglow(get(name));" onup="skin_buttonglow(null);" />
<layer name="skin_btn_next" url="vtourskin.png" crop="64|64|64|64" align="right" x="5" y="0" scale="0.5" alpha="0.5" onclick="skin_nextscene(+1);" ondown="skin_buttonglow(get(name));" onup="skin_buttonglow(null);" />
<layer name="skin_btn_thumbs" url="vtourskin.png" crop="0|128|64|64" align="leftbottom" x="50" y="4" scale="0.5" ondown="skin_buttonglow(get(name)); skin_showmap(false); skin_showthumbs();" onup="skin_buttonglow(null);" />
<layer name="skin_btn_map" url="vtourskin.png" crop="64|128|64|64" align="leftbottom" x="90" y="4" scale="0.5" ondown="skin_buttonglow(get(name)); skin_showthumbs(false); skin_showmap();" onup="skin_buttonglow(null);" visible="false" />
<layer name="skin_btn_lt" url="vtourskin.png" crop="0|192|64|64" align="bottom" x="-100" y="4" scale="0.5" ondown="skin_buttonglow(get(name)); set(hlookat_moveforce,-1);" onup="skin_buttonglow(null);set(hlookat_moveforce,0);" />
<layer name="skin_btn_rt" url="vtourskin.png" crop="64|192|64|64" align="bottom" x="-60" y="4" scale="0.5" ondown="skin_buttonglow(get(name)); set(hlookat_moveforce,+1);" onup="skin_buttonglow(null);set(hlookat_moveforce,0);" />
<layer name="skin_btn_up" url="vtourskin.png" crop="0|256|64|64" align="bottom" x="-20" y="4" scale="0.5" ondown="skin_buttonglow(get(name)); set(vlookat_moveforce,-1);" onup="skin_buttonglow(null);set(vlookat_moveforce,0);" />

wie müsste ein Code aussehen der immer auf die erste Scene ( Panorama ) zurück stellt?

2

Thursday, May 9th 2013, 11:21am

Hi,

die 'skin_nextscene' Action hat nur relative Parameter - d.h. +1 = die nächste Szene, -1 = die vorherige Szene,
d.h. für absolute Angaben müsste die Action geändert bzw. basiert darauf eine neue erstellt werden - z.B eine 'skin_gotoscene' Action.

z.B. so sieht die 'skin_nextscene' Action aus - die 'newsceneindex' Variable wird dort anhand des aktuellen Szene-Indexes plus dem angegeben Parameter (%1) berechnet:

Source code

1
2
3
4
5
6
7
8
9
10
<action name="skin_nextscene">
    add(newsceneindex, scene[get(xml.scene)].index, %1);
    if(newsceneindex GE 0,
        if(newsceneindex LT scene.count,
            txtadd(layer[skin_thumbborder].parent, 'skin_thumb_', get(newsceneindex));
            layer[skin_thumbs].scrolltocenter(get(scene[get(newsceneindex)].thumbx), get(scene[get(newsceneindex)].thumby));
            loadscene(get(scene[get(newsceneindex)].name), null, MERGE, BLEND(0.5));
          );
      );
</action>


so könnte eine 'skin_gotoscene' Action aussehen - 'newsceneindex' wird direkt auf den angegeben Wert gesetzt, der restliche Code kann gleich blieben:

Source code

1
2
3
4
5
6
7
8
9
10
<action name="skin_gotoscene">
    set(newsceneindex, %1);
    if(newsceneindex GE 0,
        if(newsceneindex LT scene.count,
            txtadd(layer[skin_thumbborder].parent, 'skin_thumb_', get(newsceneindex));
            layer[skin_thumbs].scrolltocenter(get(scene[get(newsceneindex)].thumbx), get(scene[get(newsceneindex)].thumby));
            loadscene(get(scene[get(newsceneindex)].name), null, MERGE, BLEND(0.5));
          );
      );
</action>


Der Aufruf im Code um zur 1. Szenze zu wechseln lautet dann (0=1. Szene, 1=2. Szene usw.):

Source code

1
onclick="skin_gotoscene(0);"


Schöne Grüße,
Klaus

3

Thursday, May 9th 2013, 4:46pm

Vielen Dank

Vielen Dank für die schnelle Hilfe, es funktioniert so wie ich es wollte.
schöne Grüsse,
RainerM *rolleyes*