示例#1
0
 ///API-No.257
 /// <summary>
 /// GGTLeft/GGTRight 拖拽的物体
 /// </summary>
 public static GameObject GGTDragTarget(GGestureType type = GGestureType.Right)
 {
     if (GGTPointerEventData(type) != null)
     {
         return(GGTPointerEventData(type).pointerDrag);
     }
     return(null);
 }
示例#2
0
 ///API-No.256
 /// <summary>
 /// GGTLeft/GGTRight 碰撞信息
 /// </summary>
 /// <returns></returns>
 public static RaycastResult GGTHitInfo(GGestureType type = GGestureType.Right)
 {
     if (GGTPointerEventData(type) != null)
     {
         return(GGTPointerEventData(type).pointerCurrentRaycast);
     }
     return(new RaycastResult());
 }
示例#3
0
 ///API-No.255
 /// <summary>
 ///GGTLeft/GGTRight 碰撞到Collider,若不为null,可以通过GTHitInfo获取碰撞信息,
 /// </summary>
 /// <param name="type"></param>
 /// <returns></returns>
 public static GameObject GGTHitTarget(GGestureType type = GGestureType.Right)
 {
     if (GGTPointerEventData(type) != null)
     {
         return(GGTPointerEventData(type).pointerCurrentRaycast.gameObject);
     }
     return(null);
 }
示例#4
0
 ///API-No.268
 /// <summary>
 /// 关闭GGTLeft
 /// </summary>
 /// <param name="type"></param>
 public static void DisableableGGT(GGestureType type = GGestureType.Right)
 {
     if (GGT26DofDevice && type == GGestureType.Left)
     {
         GGT26DofDevice.LeftHandOpen = false;
     }
     else if (GGT26DofDevice && type == GGestureType.Right)
     {
         GGT26DofDevice.RightHandOpen = false;
     }
 }
示例#5
0
 ///API-No.264
 /// <summary>
 /// GGTLeft/GGTRight设置可见光束的长度 默认3米
 /// </summary>
 /// <param name="distance">单位米</param>
 public static void SetGGTEndPointerDistance(float distance, GGestureType type = GGestureType.Right)
 {
     if (GGTLeft && type == GGestureType.Left)
     {
         GetGGTCursor(type).DefaultDistance = distance;
     }
     else if (GGTRight && type == GGestureType.Right)
     {
         GetGGTCursor(type).DefaultDistance = distance;
     }
 }
示例#6
0
 ///API-No.263
 /// <summary>
 /// GGTLeft/GGTRight设置可检测Collider的范围半径 默认30米
 /// </summary>
 /// <param name="distance">单位米</param>
 public static void SetGGTRayCastDistance(float distance, GGestureType type = GGestureType.Right)
 {
     if (GGTLeft && type == GGestureType.Left)
     {
         GGTLeft.detectorBase.pointerBase.MaxDetectDistance = distance;
     }
     else if (GGTRight && type == GGestureType.Right)
     {
         GGTRight.detectorBase.pointerBase.MaxDetectDistance = distance;
     }
 }
示例#7
0
 ///API-No.254
 /// <summary>
 /// GGTLeft/GGTRight 检测到碰撞信息集合,包含碰撞到的物体,数据等
 /// </summary>
 /// <param name="type"></param>
 /// <returns></returns>
 public static SCPointEventData GGTPointerEventData(GGestureType type = GGestureType.Right)
 {
     if (GGTLeft && type == GGestureType.Left)
     {
         return(GGTLeft.inputDataGGT26Dof.SCPointEventData);
     }
     else if (GGTRight && type == GGestureType.Right)
     {
         return(GGTRight.inputDataGGT26Dof.SCPointEventData);
     }
     return(null);
 }
示例#8
0
 ///API-No.253
 /// <summary>
 /// GGTLeft/GGTRight的手势数据,具体数据见handInfo
 /// </summary>
 /// <param name="type"></param>
 /// <returns></returns>
 public static handInfo GGThandInfo(GGestureType type = GGestureType.Right)
 {
     if (GGTLeft && type == GGestureType.Left)
     {
         return(GGTLeft.inputDataGGT26Dof.handInfo);
     }
     else if (GGTRight && type == GGestureType.Right)
     {
         return(GGTRight.inputDataGGT26Dof.handInfo);
     }
     return(null);
 }
示例#9
0
 public static FingerUI[] GetFingerUI(GGestureType type = GGestureType.Right)
 {
     if (GGTLeft && type == GGestureType.Left)
     {
         return(GGTLeft.inputDeviceGGT26DofPartUI.modelGGT26Dof.fingerUI);
     }
     else if (GGTRight && type == GGestureType.Right)
     {
         return(GGTRight.inputDeviceGGT26DofPartUI.modelGGT26Dof.fingerUI);
     }
     return(null);
 }
示例#10
0
 ///API-No.266
 /// <summary>
 /// GGTLeft/GGTRight获取光束
 /// </summary>
 /// <param name="distance">单位米</param>
 public static LineRenderer GetGGTLine(GGestureType type = GGestureType.Right)
 {
     if (GGTLeft && type == GGestureType.Left)
     {
         return(GGTLeft.detectorBase.pointerBase.lineBase.lineRenderer);
     }
     else if (GGTRight && type == GGestureType.Right)
     {
         return(GGTRight.detectorBase.pointerBase.lineBase.lineRenderer);
     }
     return(null);
 }
示例#11
0
 ///API-No.265
 /// <summary>
 /// GGTLeft/GGTRight获取光束终点的Cursor对象
 /// </summary>
 /// <param name="distance">单位米</param>
 public static DefaultCursor GetGGTCursor(GGestureType type = GGestureType.Right)
 {
     if (GGTLeft && type == GGestureType.Left)
     {
         return(GGTLeft.detectorBase.pointerBase.cursorBase as DefaultCursor);
     }
     else if (GGTRight && type == GGestureType.Right)
     {
         return(GGTRight.detectorBase.pointerBase.cursorBase as DefaultCursor);
     }
     return(null);
 }
示例#12
0
 ///API-No.261
 /// <summary>
 /// GGTLeft/GGTRight某个按键的实时状态,参考Input.GetKey
 /// </summary>
 /// <param name="inputKeyCode">具体按键,GGTLeft/GGTRight支持Enter/Back/Function</param>
 /// <returns></returns>
 public static InputKeyState GGTKeyCurrentState(InputKeyCode inputKeyCode, GGestureType type = GGestureType.Right)
 {
     if (GGTLeft && type == GGestureType.Left)
     {
         return(GGTLeft.inputDataGGT26Dof.inputKeys.GetKeyCurrentState(inputKeyCode));
     }
     else if (GGTRight && type == GGestureType.Right)
     {
         return(GGTRight.inputDataGGT26Dof.inputKeys.GetKeyCurrentState(inputKeyCode));
     }
     return(InputKeyState.Null);
 }
示例#13
0
 ///API-No.259
 /// <summary>
 /// GGTLeft/GGTRight某个按键是否按下后松开,当前帧有效,下帧复位,参考Input.GetKeyUp
 /// </summary>
 /// <param name="inputKeyCode">具体按键,GGTLeft/GGTRight支持Enter/Back/Function</param>
 /// <returns></returns>
 public static bool IsGGTKeyUp(InputKeyCode inputKeyCode, GGestureType type = GGestureType.Right)
 {
     if (GGTLeft && type == GGestureType.Left)
     {
         return(GGTLeft.inputDataGGT26Dof.inputKeys.GetKeyUp(inputKeyCode));
     }
     else if (GGTRight && type == GGestureType.Right)
     {
         return(GGTRight.inputDataGGT26Dof.inputKeys.GetKeyUp(inputKeyCode));
     }
     return(false);
 }
示例#14
0
 ///API-No.262
 /// <summary>
 /// GGTLeft/GGTRight发送一个按键,注意,发送按键至少需发送一个Down,然后再发送一个Up,此API模拟按键按下动作
 /// </summary>
 /// <param name="inputKeyCode">具体按键</param>
 /// <param name="inputKeyState">按键的状态</param>
 public static void GGTKeyAddKey(InputKeyCode inputKeyCode, InputKeyState inputKeyState, GGestureType type = GGestureType.Right)
 {
     if (GGTLeft && type == GGestureType.Left)
     {
         GGTLeft.inputDataGGT26Dof.inputKeys.InputDataAddKey(inputKeyCode, inputKeyState);
     }
     else if (GGTRight && type == GGestureType.Right)
     {
         GGTRight.inputDataGGT26Dof.inputKeys.InputDataAddKey(inputKeyCode, inputKeyState);
     }
 }