AutoHorizon

AutoHorizon is a super flexible plugin which makes your virtual tour panorama go to its horizon after a predefined period of time (and more!). Automatically finds the shortest path to the horizon (no more whirling hotspots!). Contributed by Patrick Cheatham. Easy to use and powerful! Smile

Preview Here.

You define AutoHorizon's parameters in your FPP XML (eg, tilt and pause), and when your panorama is left unattended AutoHorizon will quietly move your Flash pano back to its horizon. As an added bonus, AutoHorizon will let you define your horizon as something other than tilt=0 -- your horizon can be any pan, tilt and zoom combination you want!

To make things really enjoyable, You can also change your horizon on-the-fly... What does this mean? Well, you can create hotspots which will take a user to a certain pan/tilt/zoom position. Sort of a built-in and on demand AutoTour! AutoHorizon becomes really powerful when you use it to call a custom function in your XML, after it's done tilting, panning, and/or zooming.

AutoHorizon is keyboard aware -- meaning when your users hit the Shift key (for example), the plugin will pause and then start again. You can also change any of the AutoHorizon settings on-the-fly from a hotspot, so your panorama presentation can have any number of "horizons" available...

The brass tacks:

<panorama>
<parameters>
    layer_20 = files/hotspots.swf
    layer_80 = files/cl_returnToHorizon_0.1.swf
</parameters><br /><br />
<cl_autohorizon>
     pan=20
     tilt=10
     zoom=2
     pause=3
     speed=2
     quality=low
     on=true
     autorotate=false
</cl_autohorizon>
<!--// "on" above is different from "off" below
ON here means at start - while OFF below means immediate disposition
//-->

<autorotator>
        speed = -1
        interval = 30
        pause = 1000
        quality = low
</autorotator>
<hotspots>
<global
     testFunction = "pano.tint=0;pano.tintColor=#ac7a33;pano.tint=1,400"
>

<pano></pano>
<!--// ALLOWED CALLS FROM HOTSPOTS, with examples:
external.cl_autohorizon.tilt=-10;
external.cl_autohorizon.pan=10;
external.cl_autohorizon.zoom=1.2; (in degrees)
external.cl_autohorizon.pause=3;
external.cl_autohorizon.speed=2; (in seconds)
external.cl_autohorizon.quality=low; (medium, high, best)
external.cl_autohorizon.autorotate=true;
external.cl_autohorizon.doNow=true;
external.cl_autohorizon.off=true; (or false)
external.cl_autohorizon.next=SomeFunctionNameHere;
(as in: global.testFunction)
//-->

<spot id="001" static="1" sAlign="lt" staticX="67" staticY="30"  
url="files/nav/001.png" blockMouse="1"
onClick="
external.cl_autohorizon.pan=200;
external.cl_autohorizon.doNow=true;
external.cl_autohorizon.next=global.testFunction;
"

/>

<spot id="002" static="1" sAlign="lt" staticX="101" staticY="30"  
url="files/nav/002.png" blockMouse="1"
onClick="
external.cl_autohorizon.pan=-270;
external.cl_autohorizon.doNow=true;
"

/>

<spot id="003" static="1" sAlign="lt" staticX="135" staticY="30"  
url="files/nav/003.png" blockMouse="1"
onClick="external.cl_autohorizon.off=true;"
/>

<spot id="004" static="1" sAlign="lt" staticX="169" staticY="30"  
url="files/nav/004.png" blockMouse="1"
onClick="external.cl_autohorizon.off=false;"
/>

<spot id="005" static="1" sAlign="lt" staticX="203" staticY="30"  
url="files/nav/005.png" blockMouse="1"
onClick="
external.cl_autohorizon.pause=5;
external.cl_autohorizon.tilt=0;
external.cl_autohorizon.zoom=1.5;
external.cl_autohorizon.pan=40;
"

/>

<spot id="006" static="1" sAlign="lt" staticX="236" staticY="30"  
url="files/nav/006.png" blockMouse="1"
onClick="external.cl_autohorizon.doNow=true;"
/>

<!--// Auto Rotate: //-->
<spot id="autorotator_button" static="1" sAlign="lt" staticX="33" staticY="30"  url="files/nav/rotate_normal.png" blockMouse="1"
onClick="toggleAutoRotation;"
toggleAutoRotation="pano.pan_v=0; pano.tilt_v=0; pano.zoom_v=0;external.autorotator.disabled+=1;"
/>

</global>
</hotspots>
</panorama>

The above shows all the parameters available to AutoHorizon, and how to properly write the code in your FPP XML file. You can simply omit (leave out) any parameter and that parameter will use its default setting. Default settings are:

pan= the current pan value
tilt= 0
zoom= the current zoom value
pause= 5 seconds
speed= 5 seconds
quality= low
on= true
autorotate= false

What do those settings mean? More brass tacks:
pan= the pan value you want your panorama to go to; ie, the "pan horizon"

tilt= the tilt value you want your panorama to go to; ie, the "tilt horizon"

zoom= the zoom value you want your panorama to go to; ie, the "zoom horizon"

pause= a whole number, in seconds (eg, 4)

speed= a whole number, in seconds (eg, 4)

quality= any of the default FPP quality settings for pano (eg "low", "high"); setting this to the AutoHorizon default or to low will result in the smoothest movement

on= true or false; whether or not to automatically "go to horizon" after the first panorama loads -- useful if your "home" view is different from your horizon view

autorotate= true or false; if you are using the autorotate plugin which comes with FPP, then "true" will tell AutoHorizon to stop auto-rotation before going to the horizon (resulting in the smoothest movement), and then restart auto-rotation when done.

Please feel free to leave comments below!

price: $20

Once purchased, Patrick will email you the Plugin and example XML files -- usually within 24-48 hours. Please contact Patrick with any questions.

I would love to see a demo

I would love to see a demo pano with this or to test it myself. Possible?

:-) Well, the "Email

Smile

Well, the "Email Patrick" link above is always a good bet for how to get it... Wink

I'll email you the plugin -- I don't have a demo up yet because it's still sort of being tested. I'm looking for feedback!

Cheers,

Patrick

And now, AutoHorizon is at

And now, AutoHorizon is at Version 1!

Enjoy!

AutoHorizon demo

Just wanted to note that there is a preview of this at: http://flashpanos.com/flashpanos_files/examples/patrick/autohorizon/inde...