示例#1
0
        protected override void OnUpdated()
        {
            if (Time == 1)
            {
                Assert.AreEqual(child.GetGlobalPosition(), new Vector2DF(140, 40));
                Assert.AreEqual(child.AbsoluteBeingUpdated, false);
                Assert.AreEqual(child.AbsoluteBeingDrawn, false);
                Assert.AreEqual(child.AbsoluteColor, new Color(128, 255, 128, 255));
                Assert.AreEqual(child.AbsoluteDrawingPriority, 3);

                Assert.AreEqual(child2.GetGlobalPosition(), new Vector2DF(40, 140));
                Assert.AreEqual(child2.AbsoluteBeingUpdated, true);
                Assert.AreEqual(child2.AbsoluteBeingDrawn, true);
                Assert.AreEqual(child2.AbsoluteColor, new Color(255, 255, 128, 255));
                Assert.AreEqual(child2.AbsoluteDrawingPriority, 1);
            }
        }
示例#2
0
        protected override void OnStart()
        {
            var texture = Engine.Graphics.CreateTexture2D(CloudTexturePath);

            var parent = new TextureObject2D()
            {
                Texture         = texture,
                Position        = new Vector2DF(20, 20),
                Color           = new Color(255, 128, 128, 255),
                DrawingPriority = 2,
            };
            var child1 = new TextureObject2D()
            {
                Texture         = texture,
                Position        = new Vector2DF(0, 100),
                Color           = new Color(128, 128, 255, 255),
                DrawingPriority = 1,
            };
            var child2 = new TextureObject2D()
            {
                Texture         = texture,
                Position        = new Vector2DF(100, 0),
                Color           = new Color(128, 128, 255, 255),
                DrawingPriority = 1,
            };
            var child3 = new TextureObject2D()
            {
                Texture         = texture,
                Position        = new Vector2DF(30, 30),
                Color           = new Color(255, 255, 128, 255),
                DrawingPriority = 3,
            };
            var child4 = new TextureObject2D()
            {
                Texture         = texture,
                Position        = new Vector2DF(30, 30),
                Color           = new Color(64, 255, 64, 255),
                DrawingPriority = 3,
            };

            parent.AddDrawnChild(child1,
                                 ChildManagementMode.Nothing,
                                 ChildTransformingMode.All,
                                 ChildDrawingMode.Color | ChildDrawingMode.DrawingPriority);

            parent.AddDrawnChild(child2,
                                 ChildManagementMode.Nothing,
                                 ChildTransformingMode.All,
                                 ChildDrawingMode.Nothing);

            child1.AddDrawnChild(child3,
                                 ChildManagementMode.Nothing,
                                 ChildTransformingMode.Position,
                                 ChildDrawingMode.Nothing);

            child1.AddDrawnChild(child4,
                                 ChildManagementMode.Nothing,
                                 ChildTransformingMode.All,
                                 ChildDrawingMode.Nothing);

            Engine.AddObject2D(parent);
            Engine.AddObject2D(child1);
            Engine.AddObject2D(child2);
            Engine.AddObject2D(child3);
            Engine.AddObject2D(child4);

            Console.WriteLine(child3.GetGlobalPosition());
            Console.WriteLine(child4.GetGlobalPosition());
        }