Sie sind nicht angemeldet.

Lieber Besucher, herzlich willkommen bei: Panorama Community. Falls dies Ihr erster Besuch auf dieser Seite ist, lesen Sie sich bitte die Hilfe durch. Dort wird Ihnen die Bedienung dieser Seite näher erläutert. Darüber hinaus sollten Sie sich registrieren, um alle Funktionen dieser Seite nutzen zu können. Benutzen Sie das Registrierungsformular, um sich zu registrieren oder informieren Sie sich ausführlich über den Registrierungsvorgang. Falls Sie sich bereits zu einem früheren Zeitpunkt registriert haben, können Sie sich hier anmelden.

1

Freitag, 3. Februar 2012, 10:24

oninterrupt(openurl('xxx.html');); funktioniert nicht

ich mache jetzt daraus ein neues Thema, wenn ich darf...

Warum funktioniert das hier nicht:

$this->cacheCode('[php]','
<krpano version="1.0.8.14" onstart="startup();">

<action name="startup">
loadscene(get(scene[0].name), null, MERGE);
oninterrupt(openurl('xxx.html'););
</action>

<scene name=...
')

ich habe es auch probiert mit:

$this->cacheCode('[php]','
<krpano version="1.0.8.14" onstart="startup();">

<action name="startup">
loadscene(get(scene[0].name), null, MERGE);
</action>
<action>
oninterrupt(openurl('xxx.html'););
</action>

<scene name=...
')
woher soll ich wissen, wie das geschrieben werden muss??? es macht mich wahnsinnig ;-)

in der Datei, wo es funktioniert, ist es so:

$this->cacheCode('[php]','
<krpano version="1.0.8" onstart="startup();">

<action name="startup">
buildthumbs();
autotour();
set(idletime,5);
set(events.onidle, autotour() );
</action>

<action name="autotour">
set(step,1);
oninterrupt(openurl('xxx.html'););
if(step == 1, loadscene(scene_baghahouddin, null, MERGE, ZOOMBLEND(1,2) ); lookto(360, get(view.vlookat),get(view.fov), smooth(2,2,5), false); inc(step); );
')

Dieser Beitrag wurde bereits 2 mal editiert, zuletzt von »wishbone« (6. Februar 2012, 19:46)


2

Freitag, 3. Februar 2012, 12:05

ich mache jetzt daraus ein neues Thema, wenn ich darf...

Warum funktioniert das hier nicht:

$this->cacheCode('[php]','
<krpano version="1.0.8.14" onstart="startup();">

<action name="startup">
loadscene(get(scene[0].name), null, MERGE);
oninterrupt(openurl('xxx.html'););
</action>

<scene name=...
')

ich habe es auch probiert mit:

$this->cacheCode('[php]','
<krpano version="1.0.8.14" onstart="startup();">

<action name="startup">
loadscene(get(scene[0].name), null, MERGE);
</action>
<action>
oninterrupt(openurl('xxx.html'););
</action>

<scene name=...
')
woher soll ich wissen, wie das geschrieben werden muss??? es macht mich wahnsinnig ;-)

in der Datei, wo es funktioniert, ist es so:

$this->cacheCode('[php]','
<krpano version="1.0.8" onstart="startup();">

<action name="startup">
buildthumbs();
autotour();
set(idletime,5);
set(events.onidle, autotour() );
</action>

<action name="autotour">
set(step,1);
oninterrupt(openurl('xxx.html'););
if(step == 1, loadscene(scene_baghahouddin, null, MERGE, ZOOMBLEND(1,2) ); lookto(360, get(view.vlookat),get(view.fov), smooth(2,2,5), false); inc(step); );
')

Ich hab keine Ahnung ob's wirklich klappt, aber probier halt das mal aus:

$this->cacheCode('[php]','
<krpano version="1.0.8.14" onstart="startup();">

<action name="startup">
loadscene(get(scene[0].name), null, MERGE);
urloeffnen();
</action>
<action name="urloeffnen">
oninterrupt(openurl('xxx.html'););
</action>

<scene name=...
')
"Warum sind denn da alle Linien so krumm?!"

3

Freitag, 3. Februar 2012, 12:42

danke...
schade, geht auch nicht; ich hatte auch schon versucht, das in den <autotour> node hineinzupacken...

4

Freitag, 3. Februar 2012, 12:56

Ich tippe darauf dass der Fehler in dem Versuch liegt oninterrupt(); in Verbindung mit loadscene(); zu verwenden.
In der Doku steht ja dass sich oninterrupt(); bei Actions wie lookto(), moveto() usw. verwenden lässt welche das Userinterface blockieren.
Das die betreffenden Actions dies tun steht auch in der Doku. Bei loadscene() habe ich hingegen keinen diesbezüglichen Hinweis gefunden.

Es wird also vermutlich das entsprechende Ereignis nicht ausgelöst und oninterrupt kommt nie zum Zug.
Das würde auch erklären warum es in dem einen Beispiel funktioniert, hier wird ja eine lookto() Action verwendet...

Grüße
Marcus

5

Freitag, 3. Februar 2012, 13:33

schenial! dankeee!!
ich habe jetzt ein pseudo-wait angefügt, und es geht!!

$this->cacheCode('[php]','<action name="startup">
loadscene(get(scene[0].name), null, MERGE);
oninterrupt(openurl('kiosk-jonder.html'););
wait(10000);
</action>')
und wie kann ich den thread jetzt als gelöst markieren???
.

6

Freitag, 3. Februar 2012, 13:55

"Gelöst" bekommst du, wenn du deinen ersten Eintrag bearbeitest. Da siehst du dann mehrere Optionen, unter anderem auch "offe" und "gelöst"…
"Warum sind denn da alle Linien so krumm?!"

7

Freitag, 3. Februar 2012, 15:35

ah okeeeeeeeeee ... danke!

8

Montag, 6. Februar 2012, 19:49

leider funktioniert der Trick mit dem wait (10000) nur auf dem Desktop - das ipad wartet dann wirklich brav... so musste ich mir mit wmode:"transparent" helfen - der ja performance Probleme haben soll - -
also wenn es noch eine elegantere Lösung gibt? (wir sprechen von einer Art "kiosk" Modus, wo bei Untätigkeit der Nutzer ein pano abläuft, aber sobald man den Bildscirm antippt, eine andere Seite geöffnet wird)

9

Montag, 6. Februar 2012, 21:44

Hallo,
wir sprechen von einer Art "kiosk" Modus, wo bei Untätigkeit der Nutzer ein pano abläuft, aber sobald man den Bildscirm antippt, eine andere Seite geöffnet wird

eine andere Lösung, die mir spontan einfällt, ist, die Standard-Events umzuleiten und den "Interrupt-Event" in einer Variablen zu speichern. Diese kannst Du dann ja an anderen Stellen abfragen und entsprechend reagieren. Das loadscene() wird dadurch aber natürlich nicht unterbrochen! Wenn der User an seinem iPad in der Pampa arbeitet, wird er sich über langsame Reaktionen hoffentlich auch nicht wundern.$this->cacheCode('[php]','<events
onloadcomplete="olc();"
onkeydown="myKeyDown();"
onkeyup="myKeyUp();"
onmousedown="omd();"
/>
<action name="omd">
set(gUserKlick,true);
</action>
')

Gruß
Wolf

iceman_fx

Mega-User

Beiträge: 578

Wohnort: Riesa / Dresden

Beruf: Webdesigner / Webentwickler / Fotograf

  • Nachricht senden

10

Dienstag, 7. Februar 2012, 11:05

Sehe ich das richtig, dass Du eigentlich nur eine Autotour suchst - welche aber auch auf Userinteraktion reagiert ?

11

Mittwoch, 8. Februar 2012, 15:55

das ist mein anderer thread ;-) dort möchte ich, dass die Autotour einfach da weiterrotiert, wo die Nutzerin oder der Nutzer sie verlassen hat, deswegen autorotate. Aber dann die Autotour wieder aufnehmen! deswegen meine if-Konstruktion.
In diesem fred hier geht es um einen "Kioskmodus", wo ein Panorama läuft, aber wenn man draufklickt (oder tippt, ipad), direkt eine neue Seite aufgeht (zB das Menü der Präsentation).