3D Arrow Hotspot with Move to View

Post Reply
User avatar
Hopki
Gnome
Posts: 12999
Joined: Thu Jan 10, 2008 3:16 pm
Location: Layer de la Haye, Essex UK
Contact:

3D Arrow Hotspot with Move to View.
Example: Link

• 3D Arrow hotspot with preview image and visited checkmark
• 
Rotate to hotspot before changing nodes
• When used with Pano2VR light or Pano2VR pro with a single location the preview image is hidden and shows a Tool Tip text box
• The component can be configured so it does not display the preview image/tool tip using the skin configuration button
• Works with Hotspot Target type: Default View, Target, Forward and Backward

How to use:
Download the file and double click, when asked, add to Pano2VR in your desired category.

To use, open the skin editor and open the components tool box.
Select the category you saved the component to and add it to your skin. It will connect to Hotspot Type ht_node.
If using Pano2VR light you need to set the Skin-ID to ht_node in the Hotspot Viewer Mode.

Publish your project and thats it!





For those that want to get under the hood:
The component uses two variables, opt_3d_preview which is a true/false variable and node_data which is a text variable.

The opt_3d_preview is used to turn on and off the hotspot preview image and tool tip. This can be selected using the skin configuration button before you publish your project.

The node_data variable is being used as short term storage area for the next node.

The Hotspot Template, which has the skin id, ht_node has the actions:
Mouse Click
Set Variable Value
node_data
Set(=)
$(hu)

So on click this is “writing” the next nodes location to the text variable node_data.

It then has the action:
Mouse Click
View
Move to View
$(hap)/$(hat)/70
 What this does is on click it will move the pano to the hotspot as set in the viewer.

The place holders $(hap) and $(hat), Hotspot Actual Pan and Hotspot Actual Tilt are placeholders that report the location of the hotspot in the pano.

It then has the action:
Mouse Click
Set Variable Value
node_view
Set(=)
$(ht)

So on click this is “writing” the next nodes Pan/Tilt/FoV to the text variable node_view.



It also has the action:
Mouse Click
Set Value
1
timer_node_change
This starts the node_change timer.

There is a timer in the skin which has the ID: timer_node_change. This is set to manual, so not active.

It has the action:
Deactivate
Open Next Panorama 
$(*node_data)
Pan/Tilt/FoV: $(*node_view)

The place holder $(*node_data) reads the node stored in the text variable and uses it when the timer, times out and triggers the Open Next Panorama action.
The place holder $(*node_view) reads the Pan/Tilt/FoV data and apples it to the Open Next Panorama action.



So step by step, what happens is on click of the hotspot the pano moves to face the hotspot in the pano, saves the node it will go to in the variable and then starts a one second timer.

The timer, after the one second reads the variable and uses this with a Open Next Panorama action.
This enable the pano to rotate to the hotspot before you get a node change.

Regards,
Hopki
Attachments
3d_arrow_hotspot_with_move_to_view.ggskc
(94.57 KiB) Downloaded 1315 times
Garden Gnome Support
If you send an e-mail to support please send a link to the forum post for reference.
support@ggnome.com
https://ggnome.com/wiki/documentation/
User avatar
soulbrother
Posts: 545
Joined: Tue Apr 08, 2008 7:01 pm
Location: München
Contact:

Hi Hopki,

the speed for the direction movement, from actual position to the position of the hs, is always the same ("very fast").
With that settings a 180° turn/movement can be done in that 1 second, so this looks good.
But when the way to move is only a few degrees, this speed is way to fast and don´t look smooth therefore.

So either the 1 second waiting time of the timer should be shorter, OR, the speed should be slower in such cases (when the movement is only a few degres in pan angle)

I tried to find a way with the action filters, so to have the action "move to view" twice: one with slow speed and another one, with the fast speed.
And of course an action filter in each.
Generally that is working of course, but I don´t find an easy way to "calculate" the length of the movement from actual position to the clicked node-hotspot.
Do you have an idea?
Post Reply