Sie sind nicht angemeldet.

Lieber Besucher, herzlich willkommen bei: krpano.com Forum. 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, 11. Mai 2018, 11:36

Change hotspot url using calc

Hi there,

I am trying to change the url of a hotspot in an onOver action, as follows:

Quellcode

1
2
3
<action name="hotspot_setupChange_onOver">	
	set( url, calc( url - '.png' + '_over.png' ) );				
</action>


But I get:

Quellcode

1
GET http://192.168.1.5:53087/NaN_over.png 404 (Not Found)


Can anyone point me in the right direction and explain why my code does not work?

On a previous project I was successfully using this:

Quellcode

1
2
3
<action name="hotspot_setupChange_onOver">	
	set( url, calc('%SWFPATH%/skin/hotspot_' + linkedscene + '_over.png') );				
</action>


Cheers,
Olly

2

Freitag, 11. Mai 2018, 12:58

url - '.png'

Subtracting strings doesn't work.

I would recommend doing such;
- provide the different urls already in the xml declaration
- the path in xml attributes that end with 'url' will get automatically made relative to the xml file in which they are defined
- this way the paths are automatically correct
- then just swap the url values

E.g.

Quellcode

1
2
3
4
5
6
7
<hotspot ...
        url="spot.png"
        overurl="over.png"
        outurl="spot.png"
        onover="copy(url, overurl);"
        onout="copy(url, outurl);"
        />

Best regards,
Klaus

3

Freitag, 11. Mai 2018, 13:25

Thank you - that works.

Just in case it helps others, I also figured out a way using txtreplace()

Quellcode

1
2
3
4
<action name="hotspot_setupChange_onOver">	
      	txtreplace(newurl, url, '.png', '_over.png');
        set(url, get(newurl));
</action>