Ejemplo n.º 1
0
        protected override void LoadContent()
        {
            _textures = new Texture2DCache(typeof(Textures));

            _spriteBatch       = new SpriteBatch(Globals.GraphicsDevice);
            _child1            = StaticSprite.Acquire(_textures[(int)Textures.ColoredRect], new Vector2(100, 100));
            _child1.LayerDepth = 1;

            _child2 = StaticSprite.Acquire(_textures[(int)Textures.GrayRect], new Vector2(25, 50));
            _child2.RenderingExtent.Anchor = new Vector2(250, 250);
            _child2.LayerDepth             = 1;

            _markerAnchor_Blue            = StaticSprite.Acquire(_textures[(int)Textures.Marker_Blue], new Vector2(4, 4));
            _markerAnchor_Blue.LayerDepth = 0;
            _renderParamsTemplate.GetTexture_MarkCenter = new Getter <ISprite>(() => { return(_markerAnchor_Blue); });

            _markerTopLeft_Red            = StaticSprite.Acquire(_textures[(int)Textures.Marker_Red], new Vector2(4, 4));
            _markerTopLeft_Red.LayerDepth = 0;
            _renderParamsTemplate.GetTexture_MarkOrigin = new Getter <ISprite>(() => { return(_markerTopLeft_Red); });

            _markerCompositeAnchor_Green                 = StaticSprite.Acquire(_textures[(int)Textures.Marker_Green], new Vector2(4, 4));
            _markerCompositeAnchor_Green.LayerDepth      = 0;
            _renderParamsTemplate.GetTexture_MarkTopLeft = new Getter <ISprite>(() => { return(_markerCompositeAnchor_Green); });

            _compositeExtent = new CompositeExtent();
            _compositeExtent.Add(_child1.RenderingExtent);
            _compositeExtent.Add(_child2.RenderingExtent);

            _contentLoaded = true;
        }
Ejemplo n.º 2
0
        protected override void LoadContent()
        {
            _spriteBatch = new SpriteBatch(Globals.GraphicsDevice);

            ScreenUtility.InitGraphicsMode(800, 480, false);

            var circle = new CircularExtent();

            circle.Reset(new Vector2(100, 100), 50);
            circle.ReAnchor(circle.Center);
            _extents[0] = circle;

            circle = new CircularExtent();
            circle.Reset(new Vector2(300, 300), 75);
            circle.ReAnchor(circle.Center);
            _extents[1] = circle;

            var vertices = new List <Vector2>();

            vertices.Add(new Vector2(300, 300));
            vertices.Add(new Vector2(400, 300));
            vertices.Add(new Vector2(420, 400));
            vertices.Add(new Vector2(350, 450));
            vertices.Add(new Vector2(280, 400));

            var poly = new PolygonExtent();

            poly.Reset(vertices);
            poly.ReAnchor(poly.Center);
            _extents[2] = poly;

            vertices.Clear();
            Vector2 offset = new Vector2(300, 100);

            vertices.Add(offset + new Vector2(0, 0));
            vertices.Add(offset + new Vector2(50, 0));
            vertices.Add(offset + new Vector2(50, -50));
            vertices.Add(offset + new Vector2(100, -50));
            vertices.Add(offset + new Vector2(100, 0));
            vertices.Add(offset + new Vector2(150, 0));
            vertices.Add(offset + new Vector2(150, 50));
            vertices.Add(offset + new Vector2(100, 50));
            vertices.Add(offset + new Vector2(100, 100));
            vertices.Add(offset + new Vector2(50, 100));
            vertices.Add(offset + new Vector2(50, 50));
            vertices.Add(offset + new Vector2(0, 50));

            poly = new PolygonExtent();
            poly.Reset(vertices);
            poly.ReAnchor(poly.Center);
            _extents[3] = poly;

            var composite = new CompositeExtent();

            var child1 = new CircularExtent();

            child1.Reset(new Vector2(50, 50), 50);
            child1.ReAnchor(circle.Center);

            vertices = new List <Vector2>();

            vertices.Add(new Vector2(100, 100));
            vertices.Add(new Vector2(200, 100));
            vertices.Add(new Vector2(200, 200));
            vertices.Add(new Vector2(100, 200));

            var child2 = new PolygonExtent();

            child2.Reset(vertices);
            child2.ReAnchor(poly.Center);

            composite.Add(child1);
            composite.Add(child2);

            _extents[4]    = composite;
            _contentLoaded = true;
        }