Ejemplo n.º 1
0
    // Update is called once per frame
    void Update()
    {
        float time = Time.realtimeSinceStartup - timeFromStart;

        if (isRecording)
        {
            for (int i = 0; i < Recorders.Length; i++)
            {
                //変化があった時だけ記録する
                if (Recorders[i].transform.hasChanged)
                {
                    MultiTransform t = new MultiTransform();

                    t.SetData(i, Recorders[i].transform, time);
                    myTransforms.Add(t);
                    counter++;
                }
            }
        }
        else if (isPlaying)
        {
            //最後まで再生したらループする
            if (counter < myTransforms.Count)
            {
                LoopPlay();
            }
            else
            {
                StartPlay();
            }
        }
        Message.text = counter.ToString();
    }
Ejemplo n.º 2
0
 void HitCube(int id)
 {
     if (isPlaying)
     {
         Players[id].GetComponent <Renderer>().material.color = Color.green;
     }
     else
     {
         float time = Time.realtimeSinceStartup - timeFromStart;
         Recorders[id].GetComponent <Renderer>().material.color = Color.green;
         var t = new MultiTransform();
         t.ID          = id;
         t.Type        = EVENT_TYPE.EVENT_1;
         t.Time        = time;
         t.EventString = "hit[" + id + "]" + time;
         myTransforms.Add(t);
     }
     StartCoroutine(ColorDefault(id));
 }
Ejemplo n.º 3
0
    // Use this for initialization
    void Start()
    {
#if UNITY_WSA
        RegistResolver();
#endif
        //録画再生ボタンの登録
        buttonRec.onClick.AddListener(RecClicked);
        buttonPlay.onClick.AddListener(PlayClicked);

        //初期位置を記録する

        startTrans = new MultiTransform[Recorders.Length];

        for (int i = 0; i < Recorders.Length; i++)
        {
            int id = i;
            if (Recorders[i].GetComponent <Work03Cube>() != null)
            {
                Recorders[i].GetComponent <Work03Cube>().OnCubeHit.AddListener(() => HitCube(id));
            }
            startTrans[i] = new MultiTransform();
            startTrans[i].SetData(i, Recorders[i].transform, 0);
        }


        myTransforms = new List <MultiTransform>();



#if WINDOWS_UWP
        // UWP上での動作の場合、LocalAppData/AppName/LocalStateフォルダを参照する
        saveFileName = System.IO.Path.Combine(Windows.Storage.ApplicationData.Current.LocalFolder.Path, saveFileName);
#else
        // Unity上での動作の場合、Assets/StreamingAssetsフォルダを参照する
        saveFileName = System.IO.Path.Combine(UnityEngine.Application.streamingAssetsPath, saveFileName);
#endif

        //   TestObjList();
    }
Ejemplo n.º 4
0
    // Use this for initialization
    void Start()
    {
#if UNITY_WSA
        RegistResolver();
#endif
        //初期位置を記録する

        startTrans = new MultiTransform[Recorders.Length];

        for (int i = 0; i < Recorders.Length; i++)
        {
            int id = i;
            Recorders[i].GetComponent <Work03Cube>().OnCubeHit.AddListener(() => HitCube(id));
            startTrans[i] = new MultiTransform();
            startTrans[i].SetData(i, Recorders[i].transform, 0);
        }

        orginColor   = Recorders[0].GetComponent <Renderer>().material.color;
        myTransforms = new List <MultiTransform>();


#if ENABLE_DOTNET
        Debug.Log(".net");
#endif

#if ENABLE_IL2CPP
        Debug.Log("IL2CPP");
#endif

#if WINDOWS_UWP
        // UWP上での動作の場合、LocalAppData/AppName/LocalStateフォルダを参照する
        saveFileName = System.IO.Path.Combine(Windows.Storage.ApplicationData.Current.LocalFolder.Path, saveFileName);
#else
        // Unity上での動作の場合、Assets/StreamingAssetsフォルダを参照する
        saveFileName = System.IO.Path.Combine(UnityEngine.Application.streamingAssetsPath, saveFileName);
#endif

        //   TestObjList();
    }
Ejemplo n.º 5
0
        public static void Main(string[] args)
        {
                        #if false
            double[] m;
            double[] x0 = new double[2] {
                0, 0
            };
            double[] x1 = new double[2] {
                -1, 0
            };
            double[] x2 = new double[2] {
                +1, 0
            };
            double[] x3 = new double[2] {
                0, -1
            };
            double[] x4 = new double[2] {
                0, +1
            };
            double[] x5 = new double[2] {
                10, 5
            };
            m = SVGLoader.Geometry.circle_center(x1, x2, 1);
            m = SVGLoader.Geometry.circle_center(x3, x4, 1);
            m = SVGLoader.Geometry.circle_center(x1, x4, 1);
            m = SVGLoader.Geometry.circle_center(x0, x5, 10, false);

            string str = "scale ( -.1) ";
            //string s_re = "scale";
            ITransform tr = SVGLoader.Parser.transform(str);

            SVGLoader.Transform t1 = new SVGLoader.Transform(Math.PI);
            double[]            p0 = new double[3] {
                1, 2, 3
            };
            double[]             p1 = t1.calc(p0);
            double[]             p2 = t1.calc(1, 2, 3);
            SVGLoader.ITransform t2 = new SVGLoader.Translate(2, 2);
            t1.rotate(0);
            t1.scale();
            t1.scale(-1, 1, 3);
            p1 = t2.calc(p0);
            Stack <ITransform> t3 = new Stack <ITransform> ();
            t3.Push(t2);
            t3.Push(t1);
            p1 = (double[])p0.Clone();
            foreach (ITransform t in t3)
            {
                p1 = t.calc(p1);
            }
            MultiTransform t4 = new MultiTransform(t3);
            p1 = t4.calc(p0);
            Queue <ITransform> queue = new Queue <ITransform> ();
            queue.Enqueue(t1);
            MultiTransform t5 = new MultiTransform(queue);
            p1 = t5.calc(p0);
                        #endif
            Stdout             stdout   = new Stdout();
            SVGLoader.Graphics graphics = new SVGLoader.Graphics(stdout);
            //string path = "/home/jvater/c#-prj/data/test.svg";
            //string path = "/home/jvater/prj/svg-loader/data/Steg.svg";
            //string path = "/home/jvater/prj/svg-loader/data/test-00.svg";
            string path = "/home/jvater/prj/svg-loader/data/forum-01/Acanthus.svg";
            Console.WriteLine("Hello World!");
            //CamBam.ThisApplication.MsgBox("SVG: " + path);
            XmlDocument xml = new XmlDocument();
            xml.Load(path);
            XmlNodeList list = xml.GetElementsByTagName("defs");
            //XmlElement y = xml.GetElementById ("vol");
            XmlNode y = xml.SelectSingleNode("//*[@id='vol']");
            foreach (XmlElement x in list)
            {
                stdout.trace(1, x.ToString());
            }
            stdout.trace(0, "SVG loaded:" + path);
            graphics.draw(xml);
        }