Beispiel #1
0
        public void cvObject()
        {
            cvLine line = new cvLine()
            {
                type  = "cvLine",
                color = new Color32(0, 0, 0, 255),
                pos0  = new Vector3(0, 0, 1),
                pos1  = new Vector3(123, 32, 3)
            };

            cvObject obj = new cvObject();

            obj.name       = "一个名字";
            obj.prefabName = "pname";
            obj.position   = new Vector3(1, 2, 3);
            obj.rotation   = Quaternion.Euler(123, 312, 3);
            cvObject obj2 = new cvObject();

            obj2.components.Add(line);
            obj.children.Add(obj2);

            Assert.IsTrue(object.ReferenceEquals(obj.children[0], obj2));

            string   text = JsonConvert.SerializeObject(obj);
            cvObject objr = JsonConvert.DeserializeObject <cvObject>(text);

            Assert.IsTrue(objr.children.Count == 1);
            Assert.IsTrue(objr.children[0].components.Count == 1);
        }
Beispiel #2
0
        public void SetUp()
        {
            //Newtonsoft.Json的U3D扩展类型支持
            xuexue.json.U3DJsonSetting.SetDefault();

            //初始化一段实验数据.
            cvLine line = new cvLine()
            {
                type  = "cvLine",
                color = new Color32(0, 0, 0, 255),
                pos0  = new Vector3(0, 0, 1),
                pos1  = new Vector3(123, 32, 3)
            };
            cvObject obj2 = new cvObject();

            obj2.components.Add(line);

            cvObject obj = new cvObject();

            obj.name       = "一个名字";
            obj.prefabName = "pname";
            obj.position   = new Vector3(1, 2, 3);
            obj.rotation   = Quaternion.Euler(123, 312, 3);
            obj.children.Add(obj2);

            scene.objects.Add(obj);
            scene.objects.Add(obj);
            scene.objects.Add(obj);
        }
Beispiel #3
0
        /// <summary>
        /// 目前只有画线组件
        /// </summary>
        /// <param name="com"></param>
        /// <param name="go"></param>
        private void AddComponentWithJsonObj(cvComponent com, GameObject go)
        {
            if (com.GetType() == typeof(cvLine))
            {
                cvLine cl = com as cvLine;

                LineRenderer lr = go.AddComponent <LineRenderer>();
                lr.startWidth     = 0.001f;
                lr.endWidth       = 0.001f;
                lr.positionCount  = 2;
                lr.material       = Resources.Load <Material>("white");
                lr.material.color = cl.color;
                lr.SetPositions(new Vector3[] { cl.pos0, cl.pos1 });
            }
        }
Beispiel #4
0
        public void cvLine2cvComponent()
        {
            cvLine line = new cvLine()
            {
                type  = "cvLine",
                color = new Color32(0, 0, 0, 255),
                pos0  = new Vector3(0, 0, 1),
                pos1  = new Vector3(123, 32, 3)
            };
            string text = JsonConvert.SerializeObject(line);

            Debug.Log(text);
            cvComponent com = JsonConvert.DeserializeObject <cvComponent>(text);

            Assert.IsTrue(com.type == "cvLine");
            cvLine line2 = com as cvLine;

            Assert.IsTrue(line.pos0 == line2.pos0);
            Assert.IsTrue(line.pos1 == line2.pos1);
        }