This one is good
Code
<events onviewchange="if(hotspot[spot].fly, centerhotspot() );" />
<action name="centerhotspot">
set(hotspot[spot].ath, get( view.hlookat ) );
set(hotspot[spot].atv, get( view.vlookat ) );
div(hotspot[spot].scale, 2.0, view.r_zoom ) );
set(hotspot[spot1].ath, get( view.hlookat ) );
set(hotspot[spot1].atv, get( view.vlookat ) );
div(hotspot[spot1].scale, 2.0, view.r_zoom ) );
set(hotspot[spot2].ath, get( view.hlookat ) );
set(hotspot[spot2].atv, get( view.vlookat ) );
div(hotspot[spot2].scale, 2.0, view.r_zoom ) );
</action>
<action name="flyout">
copy(backup_ath,ath);
copy(backup_atv,atv);
copy(backup_scale,scale);
copy(backup_rx,rx);
copy(backup_ry,ry);
copy(backup_rz,rz);
adjusthlookat( get(ath) );
tween(ath, get(view.hlookat) );
tween(atv, get(view.vlookat) );
tween(rx, 0);
tween(ry, 0);
tween(rz, 0);
tween(zorder, 10);
div(destscale, 2.0, view.r_zoom );
tween(scale, get(destscale), 0.5, default, WAIT );
set(fly,true);
</action>
<action name="flyin">
set(fly,false);
tween(zorder, 0);
tween(ath, get(backup_ath));
tween(atv, get(backup_atv));
tween(scale, get(backup_scale));
tween(rx, get(backup_rx));
tween(ry, get(backup_ry));
tween(rz, get(backup_rz));
</action>
<hotspot name="spot"
url="image.jpg"
keep="false"
ath="145.69919691235236" atv="20.98875313425885"
zoom="true" distorted="true"
width="200" height="247"
scale="0.5" scale9grid="" scalechildren="false" rotate="0"
rx="45.75" ry="-65.25" rz="-0"
edge="center" ox="" oy=""
crop="" ondowncrop="" onovercrop=""
visible="true" enabled="true" handcursor="true" capture="true" children="true"
zorder="0"
alpha="1.00" blendmode="normal" smoothing="true"
refreshrate="auto"
onloaded=""
onover=""
onhover=""
onout=""
ondown=""
onup=""
onclick="if(fly, flyin(), flyout());"
fly="false"
ismovie="false"
/>
Display More