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, April 28th 2010, 1:17am

Einen Button zwei funktiionen zuweisen

Hallo,
ich habe einen Button der per Knopfdruck zwischen zwei Panoramen wechseln soll. Ein Teil davon habe ich auch soweit hinbekommen. Wenn ich das erste mal auf den Button drücke wechselt sich das Panorama wie gewünscht. Leider kann ich anschliessend das Panorama nicht mehr wechseln da noch der erste Button aktiv ist.
So habe ich es Versucht.
plugin name="bowlingbahn-disco" align="bottom" x="11" y="25" url="%SWFPATH%./skin/navigation.png" crop="124|74|209|49" onovercrop="124|197|209|49" onhover="showtext(Disco-Modus an -, buttonstyle);" onclick="action(bowlingbahn-disco);"visible="true" />

<plugin name="bowlingbahn" align="bottom" x="11" y="25" url="%SWFPATH%./skin/navigation.png" crop="124|74|209|49" onovercrop="124|197|209|49" onhover="showtext(Disco-Modus aus -, buttonstyle);" onclick="action(bowlingbahn);" visible="false" />

Kann man das nicht so machen wie beim Vollbildmodus das der Button beim ersten drücken den Fullscreen öffnet und beim zweiten Drücken wieder schliesst. so eine Funktion bräuchte ich nämlich. Habe mal mit der Set Funktion rumgespielt aber ohne Erfolg. Wieso funktioniert das beim Vollbild und bei meinem Button nicht?

Danke
Gruß Martin

iceman_fx

Professional

Posts: 601

Location: Sachsen

Occupation: Webdesigner- und entwickler sowie Fotodesigner

  • Send private message

2

Wednesday, April 28th 2010, 8:00am

Sicher kann man dies so machen.
Nur ist Dein inclick falsch.

visible="false" bewirkt nichts, da nicht die set()-Funktion aufgerufen wird.
Du müsstest bei so etwas dies nutzen: set(visible, false);

Auch kannst Du das onclick komplett ändern:
set(onclick, machwas());
VG vom iceman

www.fotodesign360.de / www.falkomueller.com
_____________________________________________________________________________________________________________________
Sende eCards direkt aus Deinem Panorama. Send eCards from your panorama.
The eCard-Plugin for krpano >> http://ecardplugin.falkomueller.com

3

Wednesday, April 28th 2010, 9:37am

Hallo iceman fx,
danke erstmal für Deine Hilfe. Leider bekomme ich es immer noch nicht hin. ich habe den Code jetzt so abgeändert:

<plugin name="bowlingbahn-disco" align="bottom" x="11" y="25" url="%SWFPATH%./skin/navigation.png" crop="124|74|209|49" onovercrop="124|197|209|49" onhover="showtext(Disco-Modus an -, buttonstyle);" onclick="set(onclick, bowlingbahn-disco());"visible="true" keep="false"/>
<plugin name="bowlingbahn" align="bottom" x="11" y="25" url="%SWFPATH%./skin/navigation.png" crop="124|74|209|49" onovercrop="124|197|209|49" onhover="showtext(Disco-Modus aus -, buttonstyle);" onclick="set(onclick, bowlingbahn-disco());" visible="false" />

Jetzt muss ich erst 2 mal klicken bevor sich das Pano ändert und die Schrift Disco Modus an bleibt nach dem klicken immernoch bestehen. Deshalb vermute ich, wird das erste Pano auch nicht mehr angezeigt.

Vielleicht hast Du mir ein Tipp, da ich gerade irgendwie auf dem Schlauch stehe.

Gruß Martin

iceman_fx

Professional

Posts: 601

Location: Sachsen

Occupation: Webdesigner- und entwickler sowie Fotodesigner

  • Send private message

4

Wednesday, April 28th 2010, 11:05am

Das hast Du jetzt falsch verstanden.
In Deiner onclick-Zeile ist der Aufbau falsch:

onclick="set(onclick, bowlingbahn-disco());" visible="true" keep="false"/>

Du schaltest bei onclick den eigenen Button auf unsichtbar und den anderen auf sichtbar.
So wie Du es hast, setzt Du nur den Actionaufruf in das onclick, schaltest aber die Buttons nicht um.

Also z.B. so:

<plugin name="bowlingbahn-disco" ... onclick="set(plugin[bowlingbahn].visible, true); set(visible, false); bowlingbahn-disco();" ... />
<plugin name="bowlingbahn" ... onclick="set(plugin[bowlingbahn-disco].visible, true); set(visible, false); bowlingbahn();" ... />
VG vom iceman

www.fotodesign360.de / www.falkomueller.com
_____________________________________________________________________________________________________________________
Sende eCards direkt aus Deinem Panorama. Send eCards from your panorama.
The eCard-Plugin for krpano >> http://ecardplugin.falkomueller.com

5

Wednesday, April 28th 2010, 1:08pm

Hallo iceman fx,

erst einmal vielen dank für Deine schnelle Hilfe. Jetzt bin ich schon mal einen großen Schritt weiter. Die Schrift Disco Modus aus kam als erstes anstatt Disco Modus an, da habe ich kurzerhand die Sätze bei den Plugins vertauscht. Das ist der Code:

<plugin name="bowlingbahn-disco" align="bottom" x="11" y="25" url="%SWFPATH%./skin/navigation.png" crop="124|74|209|49" onovercrop="124|197|209|49" onhover="showtext(Disco-Modus aus -, buttonstyle);" onclick="set(plugin[bowlingbahn-disco].visible, true); set(visible, false); bowlingbahn();" />
<plugin name="bowlingbahn" align="bottom" x="11" y="25" url="%SWFPATH%./skin/navigation.png" crop="124|74|209|49" onovercrop="124|197|209|49" onhover="showtext(Disco-Modus an -, buttonstyle);" onclick="set(plugin[bowlingbahn].visible, true); set(visible, false); bowlingbahn-disco();" />

Jetzt geht beim ersten drücken das zweite Panorama an und bei nochmaligen drücken wechselt es wieder korrekt zum ersten. Nur leider ist ab da dann die Button-Grafik weg und ich kann nichts mehr anwählen. Muss ich da nochmal etwas beachten?

Liebe Grüße Martin

iceman_fx

Professional

Posts: 601

Location: Sachsen

Occupation: Webdesigner- und entwickler sowie Fotodesigner

  • Send private message

6

Wednesday, April 28th 2010, 1:16pm

Ja, Du hast jetzt das keep="true" weg gelassen, was vorher noch da war *whistling*
VG vom iceman

www.fotodesign360.de / www.falkomueller.com
_____________________________________________________________________________________________________________________
Sende eCards direkt aus Deinem Panorama. Send eCards from your panorama.
The eCard-Plugin for krpano >> http://ecardplugin.falkomueller.com

7

Wednesday, April 28th 2010, 2:35pm

Das hatte ich weggelassen weil es nichts gebracht hat.

<plugin name="bowlingbahn-disco" align="bottom" x="11" y="25" url="%SWFPATH%./skin/navigation.png" crop="124|74|209|49" onovercrop="124|197|209|49" onhover="showtext(Disco-Modus aus -, buttonstyle);" onclick="set(plugin[bowlingbahn-disco].visible, true); set(visible, false); bowlingbahn();" keep="true" />
<plugin name="bowlingbahn" align="bottom" x="11" y="25" url="%SWFPATH%./skin/navigation.png" crop="124|74|209|49" onovercrop="124|197|209|49" onhover="showtext(Disco-Modus an -, buttonstyle);" onclick="set(plugin[bowlingbahn].visible, true); set(visible, false); bowlingbahn-disco();" keep="true" />

Auch so geht die Grafik nach dem zweiten klicken weg. Kann es noch an etwas anderem liegen?

Gruß Martin

iceman_fx

Professional

Posts: 601

Location: Sachsen

Occupation: Webdesigner- und entwickler sowie Fotodesigner

  • Send private message

8

Wednesday, April 28th 2010, 2:59pm

Weiterhin fehlt bei den Plugins die Definition des Visible-Status.
Derzeit sind beide sichtbar und liegen übereinander.

Und dann hast Du noch einen Fehler drin.
Du musst immer den anderen Button aktivieren und sich selbst deaktivieren.

Du hast aber geschrieben:
<plugin name="bowlingbahn-disco" ... onclick="set(plugin[bowlingbahn-disco].visible, true); ... />

Dann ist noch die Frage nach Deiner Aktion.
Was machen die - bowlingbahn(); & bowlingbahn-disco();?

Ich nehme mal an, das Du dort ein loadpano machst.
Dabei ist die Frage, ob Du merge nutzt?
VG vom iceman

www.fotodesign360.de / www.falkomueller.com
_____________________________________________________________________________________________________________________
Sende eCards direkt aus Deinem Panorama. Send eCards from your panorama.
The eCard-Plugin for krpano >> http://ecardplugin.falkomueller.com

9

Wednesday, April 28th 2010, 4:51pm

Ich verstehe nur noch Bahnhof :-)
Also es ist so ich habe eine Bowlingbahn 2 mal Fotografiert. einmal normal und einmal mit schwarzlicht. Bei der Navigation habe ich einen Button Der zeigt an Disco Modus an. Klickt man drauf erscheint das zweite Pano. Ich habe dazu Beide Panoramern als cubefaces nach einer Vorlage vom Klaus erstellt.

Hier der Code:
krpano onstart="start();">

<view hlookat="180" vlookat="0" fovtype="HFOV" fov="100" fovmin="70" fovmax="120" />


<action name="addface">
addhotspot(%1);
set(hotspot[%1].url, %2);
set(hotspot[%1].ath, %3);
set(hotspot[%1].atv, %4);
set(hotspot[%1].width, 1000);
set(hotspot[%1].height, 1000);
set(hotspot[%1].distorted, true);
set(hotspot[%1].details, 16);
set(hotspot[%1].enabled, false);
set(hotspot[%1].visible, false);
set(hotspot[%1].alpha, 0.0);
set(hotspot[%1].zorder, %1);
</action>


<action name="addcube">
addface(face_%1_F, %1_f.jpg, 0, 0);
addface(face_%1_L, %1_l.jpg, -90, 0);
addface(face_%1_R, %1_r.jpg, +90, 0);
addface(face_%1_B, %1_b.jpg, +180, 0);
addface(face_%1_Z, %1_u.jpg, 0, -90);
addface(face_%1_N, %1_d.jpg, 0, +90);
</action>


<action name="checkvisible">
if(%3 != 0.0, if(%1.alpha == 0.0, set(%1.visible,%2)) );
</action>


<action name="tweencubealpha">
checkvisible(hotspot[face_%1_F], true, %2);
checkvisible(hotspot[face_%1_L], true, %2);
checkvisible(hotspot[face_%1_R], true, %2);
checkvisible(hotspot[face_%1_B], true, %2);
checkvisible(hotspot[face_%1_Z], true, %2);
checkvisible(hotspot[face_%1_N], true, %2);
tween(hotspot[face_%1_F].alpha, %2, 0.5, default, checkvisible(hotspot[face_%1_F],false) );
tween(hotspot[face_%1_L].alpha, %2, 0.5, default, checkvisible(hotspot[face_%1_L],false) );
tween(hotspot[face_%1_R].alpha, %2, 0.5, default, checkvisible(hotspot[face_%1_R],false) );
tween(hotspot[face_%1_B].alpha, %2, 0.5, default, checkvisible(hotspot[face_%1_B],false) );
tween(hotspot[face_%1_Z].alpha, %2, 0.5, default, checkvisible(hotspot[face_%1_Z],false) );
tween(hotspot[face_%1_N].alpha, %2, 0.5, default, checkvisible(hotspot[face_%1_N],false) );
</action>


<action name="start">
addcube(sommer);
addcube(fruehling);
addcube(herbst);
addcube(winter);

sommer();
</action>


<action name="fruehling">
tweencubealpha(fruehling, 1.0);
tweencubealpha(sommer, 0.0);
tweencubealpha(herbst, 0.0);
tweencubealpha(winter, 0.0);
</action>

<action name="sommer">
tweencubealpha(fruehling, 0.0);
tweencubealpha(sommer, 1.0);
tweencubealpha(herbst, 0.0);
tweencubealpha(winter, 0.0);
</action>

<action name="herbst">
tweencubealpha(fruehling, 0.0);
tweencubealpha(sommer, 0.0);
tweencubealpha(herbst, 1.0);
tweencubealpha(winter, 0.0);
</action>

<action name="winter">
tweencubealpha(fruehling, 0.0);
tweencubealpha(sommer, 0.0);
tweencubealpha(herbst, 0.0);
tweencubealpha(winter, 1.0);
</action>


<textstyle name="DEFAULT" font="Arial" fontsize="14" bold="true" italic="true" background="false" border="false"
textcolor="0x000000" effect="glow(0xFFFFFF);" textalign="center"
/>

<style name="button"
scale="0.5"
alpha="0.5"
onover="tween(scale,0.6); tween(alpha,1.0);"
onout="tween(scale,0.5); tween(alpha,0.5);"
onhover="showtext(get(desc));"
align="bottom" edge="bottom" y="10"
/>

<plugin name="fruehling" desc="Frühling" style="button"
url="thumb_fruehling.jpg"
x="-180"
onclick="fruehling();"
/>

<plugin name="sommer" desc="Sommer" style="button"
url="thumb_sommer.jpg"
x="-60"
onclick="sommer();"
/>

<plugin name="herbst" desc="Herbst" style="button"
url="thumb_herbst.jpg"
x="+60"
onclick="herbst();"
/>

<plugin name="winter" desc="Winter" style="button"
url="thumb_winter.jpg"
x="+180"
onclick="winter();"
/>


</krpano>
Ich habe das Pano leider noch nicht online sonst könnte ich Dir bessser zeigen was ich meine. Ich werde es heute abend noch hochladen.

Bin grad am verzweifeln...

gruß Martin

iceman_fx

Professional

Posts: 601

Location: Sachsen

Occupation: Webdesigner- und entwickler sowie Fotodesigner

  • Send private message

10

Wednesday, April 28th 2010, 8:04pm

Das ist doch aber jetzt nicht der Code deines Panos, oder?
VG vom iceman

www.fotodesign360.de / www.falkomueller.com
_____________________________________________________________________________________________________________________
Sende eCards direkt aus Deinem Panorama. Send eCards from your panorama.
The eCard-Plugin for krpano >> http://ecardplugin.falkomueller.com

11

Wednesday, April 28th 2010, 8:30pm

Hallo iceman fx,

ich habe jetzt mal das Pano hochgeladen, damit Du Dir besser vorstellen kannst was ich meine. Natürlich war das vorhin nicht der ganze Code, das war nur von einem Template ein Beispiel.



Vielleicht entdeckst Du ja mein Fehler.

Danke übrigens für Deine Geduld mit mir :-)

Gruß Martin

This post has been edited 1 times, last edit by "Mad Martin" (Apr 28th 2010, 9:44pm)


iceman_fx

Professional

Posts: 601

Location: Sachsen

Occupation: Webdesigner- und entwickler sowie Fotodesigner

  • Send private message

12

Wednesday, April 28th 2010, 8:45pm

Es ist schon so, wie ich weiter oben geschrieben hatte.

Du hast diesen Code hier für Deine Buttons:

Source code

1
2
3
  <plugin name="bowlingbahn-disco" align="bottom" x="11" y="25" url="%SWFPATH%./skin/navigation.png" crop="124|74|209|49" onovercrop="124|197|209|49" onhover="showtext(Disco-Modus aus -, buttonstyle);" onclick="set(plugin[bowlingbahn-disco].visible, true); set(visible, false); bowlingbahn();" keep="true" /> 

  <plugin name="bowlingbahn" align="bottom" x="11" y="25" url="%SWFPATH%./skin/navigation.png" crop="124|74|209|49" onovercrop="124|197|209|49" onhover="showtext(Disco-Modus an -, buttonstyle);" onclick="set(plugin[bowlingbahn].visible, true); set(visible, false); bowlingbahn-disco();" keep="true" />


Aber genau dies ist falsch.
Es läuft jetzt so bei Dir ab:

  1. es werden beide Buttons (Disco) geladen und überlagert. Da der zuerst sichtbsare Buttion auch zufällig bei Dir funktioniert, liegt daran, dass er als letztes der beiden geladen wird.
  2. Jetzt setzt Du bei Klick 2x den geklickten Button, anstatt den anderen und sich selbst. Dadurch wird er erst eingeblendet und dann gleich ausgeblendet.
  3. Der andere ist noch aktiv und sichtbar, da er nie angesprochen wurde. Daher ist er jetzt sichtbar.
  4. Beim Klick darauf wird er aber genauso wie der andere 2x angesprochen und ist dann auch nicht mehr sichtbar.
  5. Da nie der andere angesprochen wurde, sind beide nun nicht mehr sichtbar.

Beispiel:

onclick="set(plugin[bowlingbahn-disco].visible, true); set(visible, false); bowlingbahn-disco();"

onclick="set(plugin[bowlingbahn].visible, true); set(visible, false); bowlingbahn();"
VG vom iceman

www.fotodesign360.de / www.falkomueller.com
_____________________________________________________________________________________________________________________
Sende eCards direkt aus Deinem Panorama. Send eCards from your panorama.
The eCard-Plugin for krpano >> http://ecardplugin.falkomueller.com

13

Wednesday, April 28th 2010, 9:25pm

Du bist mein HELD!!!
Ohne Dich hätte ich das glaub nicht hinbekommen. Vielen vielen Dank dafür. Jetzt habe ich auch verstanden was ich falsch gemacht habe. Manchmal sieht man den Wald vor lauter Bäumen nicht mehr....

Liebe Grüße Martin

14

Thursday, June 24th 2010, 2:33pm

Hallo,
wenn ich da mal anknüpfen darf:
folgenden Code verwende ich in einem virtuellen Rundgang um von einem Raum 2 verschiendene Panoramen zu zeigen:

Source code

1
2
3
4
5
6
7
8
9
10
<krpano version="1.0.8" onstart="" > 

  	 	<!--Navibutton1 macht-->
  <plugin name="tonkabineleer" align="bottom" x="-150" y="25" url="./img/navigation.png" scale="0.5" crop="0|0|70|70" onovercrop="70|0|70|70" onhover="showtext(Tonkabine mit Person, buttonstyle);"
	onclick="loadpano (Tonkabine_2.xml, null, MERGE, BLEND(1); set(plugin[tonkabineleer].visible, true); set(visible, true); tonkabineleer();" keep="false" /> 

	<!-- Navibuton 2 macht-->
	  <plugin name="tonkabine_person" align="bottom" x="-150" y="25" url="./img/navigation.png" scale="0.5" crop="70|0|70|70" onovercrop="0|0|70|70" onhover="showtext(Tonkabine, buttonstyle);"  
   onclick="loadpano (Tonstudio_Kabine.xml, null, MERGE, BLEND(1)); set(plugin[tonkabine_angela].visible, true); set(visible, true); tonkabine_person();" keep="true" /> 
</krpano>

Das funktioniert auch.
Wenn ich nun wieder diesen Raum verlasse und über einen weitern Button ein anderes Panorama lade, sehe ich immer noch den - Navibuton 2.
Wie kann ich denn das abstellen?
Danke für eine Info!!!
Gruß
Michael

15

Thursday, June 24th 2010, 2:41pm

Hi,

das - keep="true" - entfernen oder auf "false" setzen,

Schöne Grüße,
Klaus

16

Thursday, June 24th 2010, 2:53pm

Hallo Klaus,
das habe ich probiert:

Source code

1
2
3
4
5
6
7
8
<krpano version="1.0.8" onstart="" > 
<!--Navibutton1 macht-->
  <plugin name="tonkabineleer" align="bottom" x="-150" y="25" url="./img/navigation.png" scale="0.5" crop="0|0|70|70" onovercrop="70|0|70|70" onhover="showtext(Tonkabine mit Person, buttonstyle);"
onclick="loadpano (Tonkabine_2.xml, null, MERGE, BLEND(1); set(plugin[tonkabineleer].visible, true); set(visible, true); tonkabineleer();" keep="false" /> 
<!-- Navibuton 2 macht-->
  <plugin name="tonkabine_person" align="bottom" x="-150" y="25" url="./img/navigation.png" scale="0.5" crop="70|0|70|70" onovercrop="0|0|70|70" onhover="showtext(Tonkabine, buttonstyle);"  
   onclick="loadpano (Tonstudio_Kabine.xml, null, MERGE, BLEND(1)); set(plugin[tonkabine_angela].visible, true); set(visible, true); tonkabine_person();" keep="false" /> 
</krpano>


dann wird das 2 Panorama geladen aber dann ist der Navibuton 2 auch weg und ich komme nicht mehr zürück zu Pano 1.
Das ist mein Problem.
Gruß
Michael

17

Sunday, June 27th 2010, 8:00pm

Hi,

wenn ein Element (z.B. ein Button) nur in einem bestimmten Pano erscheinen soll, dann am besten den entsprechenden Code in das XML dieses Panos packen,

Schöne Grüße,
Klaus