Horned Drone's Hotspot Generator

  • v0.3

    Hello!

    I present you with my first krpano plugin. It allows you to easily generate and use eye-pleasing, animated and highly customisable hotspots to navigate between scenes in your pano tour.

    All comments, suggestions and bug reports are most welcome!

    Test Hotspot Generator:

    - Generator - (desktop only) allows you to generate new hotspots and edit their styles

    - Renderer - previously generated hotspots are added to your pano/tour and ready to use

    Generator's Functions:

    One of generator's main functions is Hotspot Wizard


    Hotspot Wizard lets you create new hotspots in easy steps:
    1. Choose start and target scenes.
    2. Choose your hotspot's position
    3. Set animation coordinates on target scene
    4. Name your hotspot and set icon rotation angle
    5. When your hotspot is ready, click "Generate" button, copy hotspot's code and pase it in renderer section of generator's code:


    Second of generator's main functions is Style Editor:

    Style Editor lets you customize many of your hotspots' visual parameters like default view, on over view, animations, icon etc. and generates style code for you to paste in in style section of generator's code.

    How to install the plugin?

    1. Download the plugin and place it in the same folder as your pano/tour XML file (you can change the folder, but you will have to change plugin's path).
    2. Add the code below to your pano/tour XML in <krpano> section, but outside of <scene> section.


    3. Run your panorama


    More info on parameters:

    <include> tag - points to plugin file, keep all provided files inside plugin's folder

    Generator lets you generate 2 fragments of code:
    Hotspot style code - use it to replace whole <dataset> tag and replace current style with your newly generated style
    Hotspot code - action call with hotspot parameters to put inside "hd-hs-renderer" action tag

    <dataset> tag - settings for your hotspots' visuals and animations
    - name - !!! DO NOT CHANGE !!! "hd-hs-style" name is required for hotspots and generator to work
    - gen_mode - (true/false or 1/0) enables hotspot generator in your krpano, already generated hotspots placed in scene become unclickable, if false or 0, it will run in renderer mode and render previously generated hotspots in your pano/tour
    - hs_size - (px) size of hotspot in idle state
    - hs_scale - (scale) value of hotspot scaling when onover
    - icon_size - (px) size of icon inside hotspot
    - icon_scale - (scale) value of icon scaling when onover
    - icon - (url/base64) path/base64 of icon displayed inside hotspot,
    -- default path is relative to html displaying your pano (%HTMLPATH%),
    -- to make it relative to your pano XML file use %CURRENTXML% (e.g. %CURRENTXML%/folder/file.png),
    -- base64 code must start with data header like "data:image/png;base64," or "data:image/svg;base64,",
    -- leave this empty or use "0" to use default arrow icon
    - tween_duration - (sec) duration of all hotspot tweens like scale and alpha
    - hs_border - (px) thickness of hotspot's border
    - corners - (px) value of corners' curvature in px from corner to center of the edge, if >50% of hs_size then hotspot is a circle
    - corners_onover - (px) as above, but when onover, value in relation to "hs_size"
    - thumb_alpha - (0.0 to 1.0) transparency of scene thumbnail when in idle
    - show_title - (true/false or 1/0) enables scene's title under the hotspot onover if available
    - thumb_fix - (true/false or 1/0) change if onover thumnail animation is shaky


    <action name="hd-hs-renderer"> tag - action to call renderer and render your generated hotspots. Inside this tag you will neeed to paste generated hotspot code.

    Hotspot code structure:

    Code
    <action name="hd-hs-renderer">
    	hd-loadscene-hs-renderer(start scene, hotspot name, ath, atv, icon rotation, target scene, 'lookat', 'lookto');
    </action>


    - start scene - (scene name parameter) scene that your hotspot will be visible in
    - hotspot name - not visible, name that object in krpan is rendered with, must be unique
    - ath, atv - coordinates of your hotspot
    - icon rotation - (in degrees) how much an icon on your hotspot is rotated by
    - target scene - (scene name parameter) scene that your hotspot will send you to after clicking it
    - 'lookat' - (ath, atv, pov parameters) coords of initial view after loading new scene
    - 'lookto' - (ath, atv, pov parameters) coords of final view after animation ends


    Horned Drone Hotspot Generator LITE
    This is free version of the plugin, fully functional, but will not be upgraded with new functions planned in future, it will receive bug fixes though. Feel free to use it however you like.


    Future versions
    I'm planning on upgrading this plugin into 2 additional versions:

    Horned Drone Hotspot Generator DONATOR EDITION
    This edition of the plugin, when available, will be sent to all Paypal/Buy me a Coffee donators, no matter what the donation amount was. The upgraded version should include:
    - custom hotspot themes, allowing you to create multiple styles to use with hotspot in the same pano/tour
    - additional styling options like fill, border, title colors
    - custom icon for each hotspot
    - standalone renderer - lightweight XML containing only renderer action to speed up pano loading

    !! IMPORTANT: If you'd wish to receive plugin upgrade after donating, please leave your krpano registration email in dedicated field in Paypal/Buy me a Coffee and I will send you your copy of upgraded plugin, when it's ready, on that email address !!

    Horned Drone Hotspot Generator PRO
    PRO edition will be the most functional generator. It will include all funtions of DONATOR EDITION and more types of hotspots (other than "scene change" ones), like "call action" or "product details". The list here is open and I plan to keep upgrading it with new hotspot types.

Participate now!

Don’t have an account yet? Register yourself now and be a part of our community!