Viz Artist

Version 3.9.1 | Published December 13, 2017 ©

MtNavigator plug-in

images/download/attachments/27789413/viz_icons_multitouchnavigator.png
The MtNavigator plug-in controls the Viz World Navigator plug-in.

The MtNavigator plug-in allows MultiTouch free navigation over a map generated by the Curious World Maps plug-ins. Currently it only supports the ‘Flat’ map model, and not the globe or other 3D models. It will send commands to the Navigator plug-in to change the position and distance of the map based on MultiTouch input.

Note: This plug-in is located in: Built Ins -> Container plug-ins -> MultiTouchComp

This section contains information on the following topics:

MtNavigator Configuration

images/download/attachments/27789413/plugins_container_mtnavigatorwindow.png

  • Georeference Container: The container which owns the Navigator plug-in is specified here.

  • Momentum: Enable movement or rotation with momentum after the object is released.

    • Friction: Set the amount of friction used when momentum is enabled.

  • Limit Camera Distance: Limit the maximum and minimum camera distance.

  • Is free navigation allowed: Activates or deactivates navigation.

  • Id: To give additional context in the handler script, specify a string that will identify any notifications dispatched by this plug-in. This is often included as an argument for the event so a common script may handle events from a number of plug-ins.

  • Set Shared Memory: If ON enables shared memory to be updated for the plug-in notifications.

    • Shared Memory Prefix: This sets a ‘prefix name’ to be prepended to the shared memory variables maintained by the plug-ins notifications. For plug-ins that maintain multiple fields each field name has the prefix prepended to it followed by a dot ‘.’ so as to mimic member access to an object, i.e: if the prefix is ‘Obj’ the fields ‘field1’ and ‘field2’ would be identified with the strings ‘Obj.field1’ and ‘Obj.field2’. The shared memory field ‘Obj’ is also maintained and is simply an integer that is modified every time any of its ‘subfields’ is updated.

    • Shared Memory Type: Click either Global, Scene, or Distributed. This selects the shared memory area to update.

  • Set Data Pool: Shows ‘you wish’ plug-in notifications to set a Data Pool variable.

    • Data Pool Variable: Shows the name of the Data Pool variable to have set.

Events and Notifications

The events dispatched by MtNavigator are:

OnNavGrab (when navigable object is ‘grabbed’):

sub OnNavGrab (HitContainer as String, Id as String, Offset as Vertex, Distance as Double, plug-inContainer as String)

end sub

  • HitContainer as String

  • Id as String

  • Offset as Vertex

  • Distance as Double

  • plug-inContainer as String
    OnNavGrabUpdate (when navigable object is moved):

sub OnNavGrabUpdate (HitContainer as String, Id as String, Offset as Vertex, Distance as Double, plug-inContainer as String)

end sub

  • HitContainer as String

  • Id as String

  • Offset as Vertex

  • Distance as Double

  • plug-inContainer as String

  • OnNavGrabRelease (when navigable object is released):

    • HitContainer as String

    • Id as String

The Shared Memory Field names updated are:

  • HitContainer: the name of the container that was ‘hit’

  • Id: the user ID string entered in the notification interface

  • Offset: the current lon/lat position in the Navigator

  • Distance: the current distance in the Navigator

  • plug-inContainer: the name of the container this plug-in is attached to

  • Active: 1 if ‘grabbed’ 0 if ‘released’

The Data Pool structure updated is:

  • MtNavigator:

    • string Id

    • string HitContainer

    • string Offset

    • string Scale

    • string plug-inContainer

    • string Active