using UnityEngine; using System.Collections; public class RotateCube : MonoBehaviour { /*OnlySerial void Start () { SerialIO serialIO = GetComponent(); serialIO.serialOpen(); } // Update is called once per frame void Update () { SerialIO serialIO = GetComponent(); float data = serialIO.serialRead('A');//Arduinoから10bitデータ読み出し data = data / 2.849f; Debug.Log((int)data); } */ /*Rotate Only public GameObject cube; public float[] array_trans = new float[3]; void Start() { array_trans[0] = transform.localEulerAngles.x; array_trans[1] = transform.localEulerAngles.y; array_trans[2] = transform.localEulerAngles.z; foreach (int i in array_trans) { Debug.Log(i); } transform.rotation = Quaternion.Euler(45, 45, 45); array_trans[0] = transform.localEulerAngles.x; array_trans[1] = transform.localEulerAngles.y; array_trans[2] = transform.localEulerAngles.z; foreach (int i in array_trans) { Debug.Log(i); } } // Update is called once per frame void Update() { } */ /* iTween Rotate public GameObject cube; public float[] array_trans = new float[3]; void Start() { array_trans[0] = transform.localEulerAngles.x; array_trans[1] = transform.localEulerAngles.y; array_trans[2] = transform.localEulerAngles.z; foreach (int i in array_trans) { Debug.Log(i); } iTween.RotateTo(gameObject, iTween.Hash("y", 90, "islocal", true)); array_trans[0] = transform.localEulerAngles.x; array_trans[1] = transform.localEulerAngles.y; array_trans[2] = transform.localEulerAngles.z; foreach (int i in array_trans) { Debug.Log(i); } } */ public GameObject cube; public float[] array_trans = new float[3]; void Start() { SerialIO serialIO = GetComponent(); serialIO.serialOpen(); /* array_trans[0] = transform.localEulerAngles.x; array_trans[1] = transform.localEulerAngles.y; array_trans[2] = transform.localEulerAngles.z; foreach (int i in array_trans) { Debug.Log(i); } iTween.RotateTo(gameObject, iTween.Hash("y", data, "islocal", true)); array_trans[0] = transform.localEulerAngles.x; array_trans[1] = transform.localEulerAngles.y; array_trans[2] = transform.localEulerAngles.z; foreach (int i in array_trans) { Debug.Log(i); } */ } // Update is called once per frame /* void Update() { SerialIO serialIO = GetComponent(); float data = serialIO.serialRead('A');//Arduinoから10bitデータ読み出し data = data / 2.849f; array_trans[0] = transform.localEulerAngles.x; if (array_trans[0] > data) { data = data - array_trans[0]; } else if (array_trans[0] < data) { data = array_trans[0] - data; } else { } iTween.RotateBy(gameObject, iTween.Hash("y", (int)data,"time",0.4,"islocal", true)); } */ void Update() { SerialIO serialIO = GetComponent(); float data = serialIO.serialRead('A');//Arduinoから10bitデータ読み出し data = data / 2.849f; array_trans[0] = transform.localEulerAngles.x; if (array_trans[0] > data) { data = data - array_trans[0]; } else if (array_trans[0] < data) { data = array_trans[0] - data; } else { data = 0; } Debug.Log((int)data); iTween.RotateTo(gameObject, iTween.Hash("y", (int)data, "time", 0.4, "islocal", true)); } }