Sie sind nicht angemeldet.

Hellkeeper

Fortgeschrittener

  • »Hellkeeper« ist der Autor dieses Themas

Beiträge: 164

Wohnort: St. Johann in Tirol

  • Nachricht senden

1

Mittwoch, 17. Dezember 2014, 10:32

HTML5 Viewer Problem?

Hallo,

ich habe ein "kleines" Problem mit dem HTML5 Viwer ... Panoramen welche mit dem Flash Viewer ohne Probleme dargestellt werden geben mir mit dem HTML5 Viewer einen XML PARSING ERROR - und ich finde leider den Grund nicht! :-(
Vielleicht hat ja einer von Euch eine Idee dazu? :-)

Panorama: http://gpix.at/Gpix.at-Gigapixel_gpath,h…,type,gpix.html <-- wenn Flash im Browser aktiv ist geht es, wenn er HTML5 Darstellung macht ist es broken ...
Dazugehöriges XML: http://gpix.at/templates/gpix.at/krpano-…e,false,false,1

Danke, lg aus Tirol
Andreas Schnederle-Wagner
Andreas Schnederle-Wagner
Rundblick GmbH / Gigapixel aus Österreich
https://www.rundblick.at/
https://www.gpix.at

2

Mittwoch, 17. Dezember 2014, 16:10

Hi,

die XML ist nicht XML-Valide.

Laut einem XML Validtor gibt es in Zeile 3730 z.B. diesen Fehler:

Quellcode

1
The entity name must immediately follow the '&' in the entity reference.

Hier die entsprechende Zeile:

Quellcode

1
<p>&#x00A0;</p>


Das Problem ist das XML keine HTML-Enties wie '&#x00A0;' kennt.

Am einfachsten wäre es vermutlich den Inhalt des <data> Elements in CDATA Tags zu packen um zu vermeiden das der XML Parser versucht diesen zu parsen.

Der Fehler selbst tritt nur in HTML5 auf, da der XML Parser des Flashplayers fehlertoleranter ist.

Hier gibt's weitere Informationen:
http://krpano.com/docu/xml/#data
http://krpano.com/docu/xml/syntaxrules/#top

Schöne Grüße,
Klaus

Hellkeeper

Fortgeschrittener

  • »Hellkeeper« ist der Autor dieses Themas

Beiträge: 164

Wohnort: St. Johann in Tirol

  • Nachricht senden

3

Mittwoch, 17. Dezember 2014, 16:49

Hi Klaus,

ok - danke für die schnelle Hilfe! - der XML Parsing Error ist nun behoben - jedoch bekomme ich jetzt nur ein komplett schwarzes Bild?!? Sprich die Tiles werden nicht angezeigt?
Mit Flash aktiv geht es?!



Danke
Andreas
Andreas Schnederle-Wagner
Rundblick GmbH / Gigapixel aus Österreich
https://www.rundblick.at/
https://www.gpix.at

Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von »Hellkeeper« (17. Dezember 2014, 17:41)


toosten

Fortgeschrittener

Beiträge: 521

Wohnort: Berlin

Beruf: Software-Entwickler bei VR-Easy ( HTML, JS, PHP, krpano, C++, Java )

  • Nachricht senden

4

Donnerstag, 18. Dezember 2014, 07:48

TIP: Der FireFox gibt beim direkten Aufruf gute Hinweise wo der Fehler in der XML liegt.

5

Donnerstag, 18. Dezember 2014, 15:08

Hi,

Teilpanoramen werden in HTML5 nicht unterstützt.
Im krpano Log gäbe es auch eine entsprechende Warnung.

Eine Möglichkeit wäre das Panorama als flaches Panorama darzustellen - z.B. durch das Hinzufügen dieser Zeile (nach dem vorhanden <image> Element):

Quellcode

1
<image hfov="1.0" voffset="0" devices="html5" />


Dabei ist aber zu beachten das dann die Hotspot Positionen nicht mehr stimmen - die ath/atv Werte der Hotspots müssten durch den ursprünglichen hfov Wert dividiert werden, um an die entsprechende Position für das flache Panorama zu kommen.

Schöne Grüße,
Klaus

Hellkeeper

Fortgeschrittener

  • »Hellkeeper« ist der Autor dieses Themas

Beiträge: 164

Wohnort: St. Johann in Tirol

  • Nachricht senden

6

Donnerstag, 18. Dezember 2014, 15:31

ok - in der Konsole habe ich es nicht gesehen weil sie deaktiviert ist! (logkey="false") - gibt es einen Weg sie trotzdem zu sehen?!? (Sonst müsste ich jedes Mal über den Source-Code den Flag umstellen ... ?!

Die Bilder werden jetzt "flach" dargestellt - das mit den Hot-Spots ist natürlich ärgerlich ... gibt es einen Weg innerhalb des XML die Hotspot Coords für FLAT 360 durch den alten HFOV (360) zu dividieren? (ausschließlich für die HTML5 Ausgabe? Sonst geht es ja im Flash wieder nicht?)

Danke, lg aus Tirol
Andreas Schnederle-Wagner
Andreas Schnederle-Wagner
Rundblick GmbH / Gigapixel aus Österreich
https://www.rundblick.at/
https://www.gpix.at

7

Donnerstag, 18. Dezember 2014, 16:13

gibt es einen Weg innerhalb des XML die Hotspot Coords für FLAT 360 durch den alten HFOV (360) zu dividieren?

z.B. diesen Code zu den Hotspots hinzufügen (durch die Verwendung von <style> und style="..." könnte dies auch gemeinsam für alle Hotspot definiert werden):

Quellcode

1
onloaded.html5="div(ath,360); div(atv,360);"


Schöne Grüße,
Klaus

Hellkeeper

Fortgeschrittener

  • »Hellkeeper« ist der Autor dieses Themas

Beiträge: 164

Wohnort: St. Johann in Tirol

  • Nachricht senden

8

Donnerstag, 18. Dezember 2014, 16:18

*grübel grübel*
Aber kann ich es noch irgendwie "limitieren" dass er dies nur tut wenn hfov=360 gesetzt ist? (<image type="CYLINDER" hfov="360.00" voffset="-12" multires="true" tilesize="786" progressive="true">)
Denn bei den schon flachen Panoramen (alle ausser den 360° Panos) würde er sonst die Hot-Spots ja auch neu setzen - und in diesem Fall falsch?

lg
Andreas
Andreas Schnederle-Wagner
Rundblick GmbH / Gigapixel aus Österreich
https://www.rundblick.at/
https://www.gpix.at

9

Donnerstag, 18. Dezember 2014, 17:20

Hi,

die Frage bezieht sich auf den Fall das dieselben Hotspots-Styles auch für anderen Panoramen verwendet werden, oder?

Man kann z.B. in dem entsprechenden Fall (=kein original Flat) zusätzlich noch irgendeine Variable setzen und diese dann dort abfragen:

Quellcode

1
<krpano is_originally_no_flat="true" />

Quellcode

1
onloaded.html5="if(is_originally_no_flat == true, div(ath,360); div(atv,360));"


Schöne Grüße,
Klaus

Hellkeeper

Fortgeschrittener

  • »Hellkeeper« ist der Autor dieses Themas

Beiträge: 164

Wohnort: St. Johann in Tirol

  • Nachricht senden

10

Donnerstag, 18. Dezember 2014, 18:46

ok - so würde es funktionieren ... aber iw. will es bei mir nicht so richtig?

Quellcode

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
<krpano is360hfov="true" version="1.16" logkey="false" onstart="ifnot(haveexternalinterface, error('ExternalInterface (Javascript Interface) not avaiable! Check your Flashplayer security settings see: http://krpano.com/docu/localaccess/'));">

...
...
...

<hotspot name="mountain0"
		 type="image"
		 handcursor="false"
		 group="mountain"
		 enabled="false"
		 alpha="0.5"
		 url="http://www.gpix.at/templates/gpix.at/krpano-html5/skin/1px.gif"
		 ath="-444.10118581134" 
		 atv="-1.4224331860697"
		 height="25"
		 width="1"
		 accuracy="0"
		 edge="bottom"
		 onloaded.html5="if(is360hfov == true, div(ath,360); div(atv,360));"
>
</hotspot>

...
...
...


Aber iw. verändert sich nicht wirklich was :-(

lg
Andreas Schnederle-Wagner
Rundblick GmbH / Gigapixel aus Österreich
https://www.rundblick.at/
https://www.gpix.at

Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von »Hellkeeper« (18. Dezember 2014, 19:02)


Hellkeeper

Fortgeschrittener

  • »Hellkeeper« ist der Autor dieses Themas

Beiträge: 164

Wohnort: St. Johann in Tirol

  • Nachricht senden

11

Freitag, 19. Dezember 2014, 12:26

Habe es jetzt PHP-Seitig gelöst ... und es funktioniert bei den meisten Bildern ... nur bei denen wo die HotSpots mit voffset gesetzt sind will es noch nicht so ganz! :(
Muss es ich da wieder anders berechnen?!?

Geht: http://www.bergbahn-kitzbuehel.at/gpix/?gpixID=71
Geht nicht: http://www.bergbahn-kitzbuehel.at/gpix/?gpixID=55

Dazu vielleicht noch eine Idee? ;-)

lg
Andreas
Andreas Schnederle-Wagner
Rundblick GmbH / Gigapixel aus Österreich
https://www.rundblick.at/
https://www.gpix.at

12

Dienstag, 23. Dezember 2014, 09:21

Hi,

der ursprüngliche voffset Wert müsste noch von den Hotspot atv Werten subtrahiert werden um diese entsprechend zu positionieren...

z.B. wenn man diesen vorher irgendwie in einer ' original_voffset' Variable speichert:

Quellcode

1
sub(atv, original_voffset); div(atv,360);


Schöne Grüße,
Klaus

Hellkeeper

Fortgeschrittener

  • »Hellkeeper« ist der Autor dieses Themas

Beiträge: 164

Wohnort: St. Johann in Tirol

  • Nachricht senden

13

Dienstag, 28. April 2015, 15:48

Hi Klaus,

noch eine kleine Frage hierzu:

Quellcode

1
2
3
4
5
6
7
	<action name="zoom">
		set(plugin[action_pending].alpha,1);
		tween(view.hlookat,%1,3);
		tween(view.vlookat,%2,3);
		tween(view.fov,%3,3,default,wait);
		set(plugin[action_pending].alpha,0);
	</action>


Bekomme ich das hier auch irgendwie rein? Also das mit nur bei HTML5 die Werte anpassen?

Quellcode

1
onloaded.html5="div(ath,360); sub(atv, '.$finalatv.'); div(atv,360);"


Danke, lg
Andreas
Andreas Schnederle-Wagner
Rundblick GmbH / Gigapixel aus Österreich
https://www.rundblick.at/
https://www.gpix.at