Holo cursor to mark the point the user is looking at. This cursor can change its size and color
void HoloSDK.Core.HoloCursor.ChangeSize (float multiplier)
changes the cursor size
void HoloSDK.Core.HoloCursor.ChangeSize ( Vector2 newSize )
changes the cursor size
void HoloSDK.Core.HoloCursor.Enlarge ( )
enlarges the cursor by SizeMultiplier
void HoloSDK.Core.HoloCursor.Highlight( )
changes the cursor color to Highlight Color
void HoloSDK.Core.HoloCursor.ResetColor ( )
changes the cursor color to Normal Color
void HoloSDK.Core.HoloCursor.ResetSize ( )
resets the cursor size to originl size
Color HoloSDK.Core.HoloCursor.HighlightColor = Color.red
Color set when the cursor is highlighted
Color HoloSDK.Core.HoloCursor.NormalColor = Color.white
Color set when the cursor is not highlighted
float HoloSDK.Core.HoloCursor.SizeMultiplier = 1.5f
Used in methods Enlarge, ResetSize e ChangeSize to change the cursor size
basic event for Holo SDK
This script shows how to receive feedback from the Fingerprint Module overriding the function SendMessageToUser
void HoloSDK.Core.HoloFingerprint.ManageEnroll ( )
void HoloSDK.Core.HoloFingerprint.ManageIdentify ( )
Ovveride to use the Flick DownToUp gesture
void HoloSDK.Core.HoloFingerprint.OpenFingerprintScanner ( )
void HoloSDK.Core.HoloFingerprint.SendMessageToUser ( string message )
Method of FingerPrint Manager that allows to receive the message that the Stm sends during the Fingerprint procedure: enroll and identify
Parameters
message the feedback from the fingerprint module
HoloEvent HoloSDK.Core.HoloFingerprint.OnEnroll = new HoloEvent()
HoloEvent HoloSDK.Core.HoloFingerprint.OnIdentify = new HoloEvent()
Allows a target to rotate to keep it in front of a target (such as a camera) while it rotates
bool HoloSDK.Core.HoloFollowRotation.AutoCreatePivot = true
if true, a pivot centered in FollowTarget position is created if the RotationPivot is not set
Transform HoloSDK.Core.HoloFollowRotation.FollowTarget
transform used as rotation target to be followed
Vector2 HoloSDK.Core.HoloFollowRotation.Offset = Vector2.zero
when a rotation is completed, this offset is applied
Transform HoloSDK.Core.HoloFollowRotation.RotationPivot
transform used as a pivot for rotation
float HoloSDK.Core.HoloFollowRotation.RotationSpeed = 3
rotation speed
Vector2 HoloSDK.Core.HoloFollowRotation.ThresholdAngles = new Vector2( 15, 15 )
when the angles between the target and the rotation pivot is greater than these angles, the rotation starts
bool HoloSDK.Core.HoloFollowRotation.X = false
enable rotation on X axis
bool HoloSDK.Core.HoloFollowRotation.Y = true
enable rotation on Y axis
Component used to apply head rotation (as read from gyroscope) to the current game object
enum HoloSDK.Core.HoloHeadRotation.RotationTrackingModes
rotation tracking modes
Enumerator
bool HoloSDK.Core.HoloHeadRotation.BlockZRotation = false
blocks the z rotation of the head
KeyCode HoloSDK.Core.HoloHeadRotation.EditorDebugKey = KeyCode.LeftControl
hold down this key on the keyboard to simulate the rotation in editor
float HoloSDK.Core.HoloHeadRotation.EditorRotationSpeed = 1
editor mouse rotation speed
RotationTrackingModes HoloSDK.Core.HoloHeadRotation.RotationTrackingMode = RotationTrackingModes.AbsoluteRotation
defines the rotation tracking mode: absolute rotation applies the current rotation relative rotation is based on angular velocity
bool HoloSDK.Core.HoloHeadRotation.ShowDebugInfo = false
UX implementation. This component manages the input coming from gestic and marshals the events associated to them. This component holds the selection/deselection logic for HoloPointerInteractable items pointed by HoloPointer This component will interact with HoloPointerInteractable components
partial class (HoloInteractionManager) that implements the UX for Leonardo platform
partial class (HoloInteractionManager) that implements the UX for Industry/Industry+ platforms
void HoloSDK.Core.HoloInteractionManager.ManageDoubleTap ( )
double tap management callback. If double tap is not enabled, ManageSingleTap is called instead
void HoloSDK.Core.HoloInteractionManager.ManageFlickDownToUp ( )
flick down-to-up management
void HoloSDK.Core.HoloInteractionManager.ManageFlickLeftToRight ( )
flick left-to-right management
void HoloSDK.Core.HoloInteractionManager.ManageFlickRightToLeft ( )
flick right-to-left management
void HoloSDK.Core.HoloInteractionManager.ManageFlickUpToDown ( )
flick up-to-down management
void HoloSDK.Core.HoloInteractionManager.ManageHold ( )
hold management
void HoloSDK.Core.HoloInteractionManager.ManageNewTap ( )
callback used to manage a new tap. It updates the last tap time and detects if the current tap is a first tap
void HoloSDK.Core.HoloInteractionManager.ManageSingleTap( )
single tap management callback
void HoloSDK.Core.HoloInteractionManager.ManageTripleTap ( )
triple tap management callback. If triple tap is not enabled, ManageDoubleTap is called instead
void HoloSDK.Core.HoloInteractionManager.SetDoubleTapEnabled ( bool enable )
enables or disables double tap detection
Parameters
enable enable
void HoloSDK.Core.HoloInteractionManager.SetTripleTapEnabled ( bool enable )
enables or disables triple tap detection
Parameters
enable enable
delegate void HoloSDK.Core.HoloInteractionManager.TapCounterHandler ( int tapCount )
delegate to manage OnTapCounter event
Parameters
tapCountnumber of taps detected
bool HoloSDK.Core.HoloInteractionManager.DisableMultipleTapIfInteractableSelected = true
if true, the double or triple tap is disabled when the pointer is selecting a HoloPointerInteractable
bool HoloSDK.Core.HoloInteractionManager.DoubleTapToDeselectAll = true
if true, the Selected3D and SelectedUI lists are reset on double tap
bool HoloSDK.Core.HoloInteractionManager.EnableDoubleTap = true
is double tap enabled?
bool HoloSDK.Core.HoloInteractionManager.EnableTripleTap = false
is triple tap enabled?
float HoloSDK.Core.HoloInteractionManager.HoldTime = 2
time (in seconds) to wait to detect hold
bool HoloSDK.Core.HoloInteractionManager.MultipleSelection = true
single/multiple selection by tap. Default behavior is that each tap on an interactable object will add or remove it to the Selected3D or SelectedUI lists. If DoubleTapToDeselectAll is checked, these lists are reset on double tap
float HoloSDK.Core.HoloInteractionManager.MultipleTapDelay = 0.2f
maximum delay to wait between 2 consecutive taps to build a multiple tap sequence
HoloEvent HoloSDK.Core.HoloInteractionManager.OnDoubleTap = new HoloEvent()
Event when DoubleTap Gesture is used
HoloEvent HoloSDK.Core.HoloInteractionManager.OnFlickDownToUp = new HoloEvent()
Event when FlickDownToUp Gesture is used
HoloEvent HoloSDK.Core.HoloInteractionManager.OnFlickLeftToRight = new HoloEvent()
Event when FlickLeftToRight Gesture is used
HoloEvent HoloSDK.Core.HoloInteractionManager.OnFlickRightToLeft = new HoloEvent()
Event when FlickRightToLeft Gesture is used
HoloEvent HoloSDK.Core.HoloInteractionManager.OnFlickUpToDown = new HoloEvent()
Event when FlickUptoDown Gesture is used
HoloEvent HoloSDK.Core.HoloInteractionManager.OnHold = new HoloEvent()
Event when Hold Gesture is used
HoloEvent HoloSDK.Core.HoloInteractionManager.OnTap = new HoloEvent()
Event when SingleTap Gesture is used
HoloEvent HoloSDK.Core.HoloInteractionManager.OnTripleTap = new HoloEvent()
Event when TripleTap Gesture is used
List HoloSDK.Core.HoloInteractionManager.Selected3D = new List()
currently selected 3D items (with HoloPointerInteractable component)
List HoloSDK.Core.HoloInteractionManager.SelectedUI = new List()
currently selected UI items (with HoloPointerInteractable component)
bool HoloSDK.Core.HoloInteractionManager.SendTapMessagesToInteractables = true
send tap messages to interactable objects on single tap
bool HoloSDK.Core.HoloInteractionManager.ShowDebugInfo = false
show or hide debug info inside editor and at runtime
bool HoloSDK.Core.HoloInteractionManager.IsFirstTap = false
true if the current tap is detected after a time >= MultipleTapDelay from last tap time
float HoloSDK.Core.HoloInteractionManager.LastTapTime = 0
time of last tap detected
TapCounterHandler HoloSDK.Core.HoloInteractionManager.OnTapCounter
event raised when a target number of taps is reached
Holo SDK main options
override void HoloSDK.Core.HoloManager.Awake ( )
Reimplemented from SingletonMonoBehaviour< HoloManager >.
HoloPlatforms HoloSDK.Core.HoloManager.Platform = HoloPlatforms.LEONARDO
Holo SDK platform
Microphone interface to the user. It allows the user to record audioclips using the microphone
void HoloSDK.Core.HoloMicrophone.StartRecording ( )
void HoloSDK.Core.HoloMicrophone.StopRecording( )
int HoloSDK.Core.HoloMicrophone.MaxRecordLength = 20
AudioClip HoloSDK.Core.HoloMicrophone.Recorded
basic navigation features like back and quit
void HoloSDK.Core.HoloNavigation.ExecuteBack ( )
back action execution (empty by default)
void HoloSDK.Core.HoloNavigation.ExecuteQuit ( )
quit action execution (empty by default)
bool HoloSDK.Core.HoloNavigation.DoubleTapForBack = true
if true, double tap is used as back navigation as default
HoloEvent HoloSDK.Core.HoloNavigation.OnBack = new HoloEvent()
on back event
HoloEvent HoloSDK.Core.HoloNavigation.OnQuit = new HoloEvent()
on quit event
Holo pointer used to point a 3D/UI targets in Holo SDK This component will interact with HoloPointerInteractable components
override void HoloSDK.Core.HoloPointer.Awake ( )
Reimplemented from SingletonMonoBehaviour< HoloPointer >.
Canvas [] HoloSDK.Core.HoloPointer.canvases
An array where you can insert the canvases with UIElements with HoloPointerInteracatble components
bool HoloSDK.Core.HoloPointer.MultipleSelection = false
If true the tap does not causes the tap management to be invoked. It enables or disable the target selection (it’s added to a specific selection list)
HoloPointerEvent HoloSDK.Core.HoloPointer.OnOver3DBegin = new HoloPointerEvent()
Event that is called when 3DObject with an HoloPointerInteractable attached is Selected
HoloPointerEvent HoloSDK.Core.HoloPointer.OnOver3DEnd = new HoloPointerEvent()
Event that is called when 3DObject with an HoloPointerInteractable attached is Deselected
HoloPointerEvent HoloSDK.Core.HoloPointer.OnOverUIBegin = new HoloPointerEvent()
Event that is called when UIObject with an HoloPointerInteractable attached is Selected
HoloPointerEvent HoloSDK.Core.HoloPointer.OnOverUIEnd = new HoloPointerEvent()
Event that is called when UIObject with an HoloPointerInteractable attached is Deselected
bool HoloSDK.Core.HoloPointer.ShowDebugInfo = false
if true debug messages are shown in editor and on runtime
HoloPointerTargets HoloSDK.Core.HoloPointer.TargetType = HoloPointerTargets.Both
Enum that Determines which objects can be detected (3D,UI,Both)
event passed from pointer to targets (HoloPointerInteractable instances)
abstract class to be derived to implement Holo pointer interactable objects (targets)
abstract void HoloSDK.Core.HoloPointerInteractable.OnDeselect ( )
ovveride to determine what to do When the object is not pointed anymore
abstract void HoloSDK.Core.HoloPointerInteractable.OnSelect ( )
ovveride to determine what to do When the object is pointed
abstract void HoloSDK.Core.HoloPointerInteractable.OnTap ( )
low level wrapper that allows the communication between the serial port and the unity environment. This class is used to read and parse the data coming from the serial port. When a valid message is interpreted a custom event is raised: Gesture or Fingerprint
delegate void HoloSDK.LowLevel.AndroidUnityCallback.FingerprintHandler ( string message )
gesture message management delegate
delegate void HoloSDK.LowLevel.AndroidUnityCallback.GestureHandler ( string gesture )
gesture message management delegate
void HoloSDK.LowLevel.AndroidUnityCallback.onDataReceived ( byte[] buffer,
int size
)
data read callback
FingerprintHandler HoloSDK.LowLevel.AndroidUnityCallback.OnFingerprintMessageReceived
event raised when a valid fingerprint message arrives from serial port
GestureHandler HoloSDK.LowLevel.AndroidUnityCallback.OnGestureRecognized
event raised when a valid gesture message arrives from serial port
override void HoloSDK.LowLevel.SerialPortManager.Awake ( )
Reimplemented from SingletonMonoBehaviour< SerialPortManager >.
static void HoloSDK.LowLevel.SerialPortManager.sendData ( sbyte[] data )
allows to send a message to the serial port
Debug message with GUI
enum ShowDebugGUI.LogTypes
Enumerator
void ShowDebugGUI.AppendMessage ( string msg )
void ShowDebugGUI.SetMessageAndLog ( string msg,
LogTypes logType = LogTypes.Message
)
float ShowDebugGUI.HideTime = -1
int ShowDebugGUI.LinesCount = 0
int ShowDebugGUI.LinesLimit = 50
Vector2 ShowDebugGUI.StartPosition = Vector2.one * 30
GUIStyle ShowDebugGUI.Style = new GUIStyle()
ShowDebugGUI ShowDebugGUI.Instance
Singleton design pattern for MonoBehaviours
virtual void SingletonMonoBehaviour< T >.Awake ( )
Reimplemented in HoloSDK.LowLevel.SerialPortManager, HoloSDK.Core.HoloPointer, and HoloSDK.Core.HoloManager.
SingletonReplacements SingletonMonoBehaviour< T >.SingletonReplacementPolicy = SingletonReplacements.DestroyThisComponent
singleton replacement policy
T SingletonMonoBehaviour< T >.Instance
static singleton instance
allows an android phone to work with an external UVC Webcam
If you require a demo or any further information, contact us
Operative offices:
Via A. Balzico, 50
84013 Cava de’ Tirreni (SA) – Italy
Corso G. Garibaldi, 203
84122 Salerno – Italy
Registered office:
Via G. Filangieri, 127
84013 Cava de’ Tirreni (SA) – Italy
This project has received funding from the European Union’s Horizon 2020 research and innovation programme under grant agreement No. 868292
© 2019 Youbiquo s.r.l.. Tutti i diritti riservati. // P.IVA N. 05207780650