public MyoRawData(MyoState myoState) { this.Pose = new PoseRawData(myoState.Pose); this.Accel = new AcceleronmeterRawData(myoState.Accel); this.Gyro = new GyroscopeRawData(myoState.Gyro); this.Orien = new OrientationRawData(myoState.Orien); }
void Start() { #region MYO_INIT myoState = MyoState.NONE; myoController = GetComponent <MyoWebClient>(); myoBaseObject = GameObject.Find("BaseData"); #endregion #region WALKING_INIT walkingController = GetComponent <SensorWebClient>(); leftFootState = FootState.UNKNOWN; rightFootState = FootState.UNKNOWN; targetPosFlag = false; #endregion keyFlag = false; }
void ObjectControlWithMyo() { if (myoController.recPose == Pose.Fist) { if (grabObject != null) { //moving object if (movingObject != null) { movingObject.transform.localRotation = myoBaseObject.transform.rotation; } if (grabObject.GetComponent <ITrickManager>().MoveFlag) { movingObject.transform.parent = handObject.transform; } } else { RaycastHit hit; Ray ray = new Ray(Camera.main.transform.position, handObject.transform.forward); if (Physics.Raycast(ray, out hit)) { if (hit.transform.tag == "object" && Vector3.Distance(hit.transform.position, Camera.main.transform.position) < 5.0f) { Debug.Log(hit.transform); Debug.Log(hit.transform.GetComponent <ITrickManager>()); hit.transform.GetComponent <ObjectSelection>().SetGlowGrab(); grabObject = hit.transform; if (hit.transform.GetComponent <ITrickManager>().MovingObject != null) { movingObject = hit.transform.GetComponent <ITrickManager>().MovingObject.transform; } else { movingObject = null; } myoState = MyoState.GRAB; } } else { } } } else if (myoController.recPose == Pose.WaveIn) { GetComponent <ShowPaperMsg>().nextMessage(); } else if (myoController.recPose == Pose.WaveOut) { GetComponent <ShowPaperMsg>().prevMessage(); } else { myoState = MyoState.NONE; if (grabObject != null && movingObject != null) { movingObject.transform.parent = null; grabObject.GetComponent <ObjectSelection>().ReleaseObject(); } grabObject = null; } }