Beispiel #1
0
        public override void KeyDown(int keycode)
        {
            //temp
            System.Windows.Forms.Keys k = (System.Windows.Forms.Keys)keycode;
            switch (k)
            {
            case System.Windows.Forms.Keys.A:
            {
                SpriteShape s = new SpriteShape(VgVisualDocHelper.CreateVgVisualDocFromFile(@"Samples\arrow2.svg").VgRootElem);
                _spriteList.Add(new MyTestSprite(s)
                    {
                        JustMove = true
                    });
            }
            break;

            case System.Windows.Forms.Keys.Q:
            {
                //test add box control ...
            }
            break;
            }


            base.KeyDown(keycode);
        }
Beispiel #2
0
        public override void Init()
        {
            VgVisualElement renderVx    = VgVisualDocHelper.CreateVgVisualDocFromFile(@"Samples\lion.svg").VgRootElem;
            var             spriteShape = new SpriteShape(renderVx);

            _testSprite = new MyTestSprite(spriteShape);
            //lionFill.AutoFlipY = true;
        }
Beispiel #3
0
        public override Image LoadImage(string imgName, int reqW, int reqH)
        {
            if (!File.Exists(imgName)) //resolve to actual img
            {
                return(null);
            }

            //we support svg as src of img
            //...
            //THIS version => just check an extension of the request file
            string ext = System.IO.Path.GetExtension(imgName).ToLower();

            switch (ext)
            {
            default: return(null);

            case ".svg":
                try
                {
                    //***
                    //TODO: do not access local file system directly
                    //MUST ask the host for a specific file****
                    string          svg_str   = File.ReadAllText(imgName);
                    VgVisualElement vgVisElem = VgVisualDocHelper.CreateVgVisualDocFromFile(imgName).VgRootElem;
                    return(CreateBitmap(vgVisElem, reqW, reqH));
                }
                catch (System.Exception ex)
                {
                    return(null);
                }

            case ".png":
            case ".jpg":
            {
                try
                {
                    return(null);
                    //System.Drawing.Bitmap gdiBmp = new System.Drawing.Bitmap(imgName);
                    //GdiPlusBitmap bmp = new GdiPlusBitmap(gdiBmp.Width, gdiBmp.Height, gdiBmp);
                    //return bmp;
                    //                            using (System.Drawing.Bitmap gdiBmp = new System.Drawing.Bitmap(imgName))
                    //                            {
                    //                                PixelFarm.CpuBlit.MemBitmap memBmp = new PixelFarm.CpuBlit.MemBitmap(gdiBmp.Width, gdiBmp.Height);
                    //#if DEBUG
                    //                                memBmp._dbugNote = "img" + imgName;
                    //#endif
                    //                                PixelFarm.CpuBlit.Imaging.BitmapHelper.CopyFromGdiPlusBitmapSameSizeTo32BitsBuffer(gdiBmp, memBmp);
                    //                                return memBmp;
                    //                            }
                }
                catch (System.Exception ex)
                {
                    //return error img
                    return(null);
                }
            }
            }
        }
Beispiel #4
0
        public override void Init()
        {
            //eg. lion
            _vgVisualElem = VgVisualDocHelper.CreateVgVisualDocFromFile(@"Samples\lion.svg").VgRootElem;
            var spriteShape = new SpriteShape(_vgVisualElem);

            _testSprite  = new MyTestSprite(spriteShape);
            _needUpdate  = true;
            _smoothCoeff = 0;
        }
Beispiel #5
0
        public override void Init()
        {
            VgVisualElement renderVx    = VgVisualDocHelper.CreateVgVisualDocFromFile(@"Samples\lion.svg").VgRootElem;
            var             spriteShape = new SpriteShape(renderVx);

            _testSprite = new MyTestSprite(spriteShape);

            //lionFill.AutoFlipY = true;

            _currentTx = PixelFarm.CpuBlit.VertexProcessing.Affine.NewMatix(
                VertexProcessing.AffinePlan.RotateDeg(30),
                VertexProcessing.AffinePlan.Scale(2)
                );
        }
Beispiel #6
0
        public virtual Image LoadImage(string imgName, int reqW, int reqH)
        {
            if (!File.Exists(imgName)) //resolve to actual img
            {
                return(null);
            }

            //we support svg as src of img
            //...
            //THIS version => just check an extension of the request file
            string ext = System.IO.Path.GetExtension(imgName).ToLower();

            switch (ext)
            {
            default: return(null);

            case ".svg":
                try
                {
                    string          svg_str   = File.ReadAllText(imgName);
                    VgVisualElement vgVisElem = VgVisualDocHelper.CreateVgVisualDocFromFile(imgName).VgRootElem;
                    return(CreateBitmap(vgVisElem, reqW, reqH));
                }
                catch (System.Exception ex)
                {
                    return(null);
                }

            case ".png":
            case ".jpg":
            {
                try
                {
                    byte[] rawImgBuff = File.ReadAllBytes(imgName);
                    using (MemoryStream ms = new MemoryStream(rawImgBuff))
                    {
                        ms.Position = 0;
                        return(PixelFarm.Platforms.ImageIOPortal.ReadImageDataFromMemStream(ms, ext));
                    }
                }
                catch (System.Exception ex)
                {
                    //return error img
                    return(null);
                }
            }
            }
        }
Beispiel #7
0
        public FilterFxDemo()
        {
            VgVisualElement renderVx    = VgVisualDocHelper.CreateVgVisualDocFromFile(@"Samples\lion.svg").VgRootElem;
            var             spriteShape = new SpriteShape(renderVx);

            _testSprite = new MyTestSprite(spriteShape);
            //--------------

            //m_rbuf2 = new ReferenceImage();
            _shape_bounds            = new RectD();
            _shadow_ctrl             = new PolygonEditWidget(4);
            this.FlattenCurveChecked = true;
            this.FilterMethod        = FilterMethod.None;
            this.BlurRadius          = 15;
            //
        }
Beispiel #8
0
        protected override void OnReadyForInitGLShaderProgram()
        {
            string sampleFile = "Samples/lion.svg";
            //string sampleFile = "Samples/tiger_whiskers.svg";
            //string sampleFile = "Samples/tiger002.svg";
            //string sampleFile = "Samples/tiger_wrinkles.svg";
            VgVisualElement vgVisElem = VgVisualDocHelper.CreateVgVisualDocFromFile(sampleFile).VgRootElem;

            _spriteShape = new SpriteShape(vgVisElem);


            //flip this lion vertically
            //PixelFarm.CpuBlit.VertexProcessing.Affine aff = PixelFarm.CpuBlit.VertexProcessing.Affine.NewMatix(
            //     PixelFarm.CpuBlit.VertexProcessing.AffinePlan.Scale(1, -1),
            //     PixelFarm.CpuBlit.VertexProcessing.AffinePlan.Translate(0, 600));
            //_lionShape.ApplyTransform(aff);
        }
Beispiel #9
0
        protected override void OnStart(AppHost host)
        {
            _appHost = host;//**
            string svgfile = "../Test8_HtmlRenderer.Demo/Samples/Svg/others/volcano3.svg";

            _vgVisualDoc = VgVisualDocHelper.CreateVgVisualDocFromFile(svgfile);
            //
            VgVisualElement vgVisualElem = _vgVisualDoc.VgRootElem;

            {
                UISprite wholeImgSprite = CreateUISpriteFromVgVisualElem(vgVisualElem);
            }
            //
            if (_vgVisualDoc.TryGetVgVisualElementById("path62_larva3", out VgVisualElement vgPart))
            {
                UISprite larvaSprite = CreateUISpriteFromVgVisualElem(vgPart, true);
                larvaSprite.SetTransformation(Affine.NewScaling(4));//scale
                larvaSprite.SetLocation(100, 100);
            }
        }
Beispiel #10
0
 //special option
 public LionOutlineSprite()
 {
     _spriteShape = new SpriteShape(VgVisualDocHelper.CreateVgVisualDocFromFile(@"Samples\lion.svg").VgRootElem);
     this.Width   = 500;
     this.Height  = 500;
 }
Beispiel #11
0
        protected override void OnStart(AppHost host)
        {
            _host      = host;
            _vgVisElem = VgVisualDocHelper.CreateVgVisualDocFromFile(@"Samples\lion.svg").VgRootElem;
            _mySprite  = new MyTestSprite(_vgVisElem);
            var evListener = new GeneralEventListener();

            evListener.MouseDown += e =>
            {
                if (e.Button == UIMouseButtons.Right)
                {
                    VgVisualElement foundE = _mySprite.HitTest(e.X, e.Y, true);
                    if (foundE != null)
                    {
                        foundE.VisualSpec.FillColor = Color.Red;
                        _mySprite.InvalidateLayout();
                    }
                }
            };
            evListener.MouseMove += e =>
            {
                if (e.Button == UIMouseButtons.Left && e.IsDragging)
                {
                    if (e.Ctrl)
                    {
                        //TODO:
                        //classic Agg's move and rotate
                    }
                    else
                    {   //just move
                        _mySprite.SetLocation(_mySprite.X + e.XDiff, _mySprite.Y + e.YDiff);
                    }
                }
            };

            _mySprite.AttachExternalEventListener(evListener);

            host.AddChild(_mySprite);



            ////
            //var textbox = new LayoutFarm.CustomWidgets.TextBox(100, 30, false);
            //var textSpanStyle = new Text.TextSpanStyle();

            ////test with various font style
            //textSpanStyle.FontInfo = new PixelFarm.Drawing.RequestFont("tahoma", 18);
            //textSpanStyle.FontColor = new PixelFarm.Drawing.Color(255, 0, 0);
            ////set default style
            //textbox.DefaultSpanStyle = textSpanStyle;

            //host.AddChild(textbox);


            //var box1 = new LayoutFarm.CustomWidgets.Box(50, 50);
            //box1.BackColor = Color.Red;
            //box1.SetLocation(10, 10);
            //host.AddChild(box1);
            ////--------------------------------
            //var box2 = new LayoutFarm.CustomWidgets.Box(30, 30);
            //box2.SetLocation(50, 50);
            //host.AddChild(box2);
            ////1. mouse down
            //box1.MouseDown += (s, e) =>
            //{
            //    box1.BackColor = KnownColors.FromKnownColor(KnownColor.DeepSkyBlue);
            //    box2.Visible = false;
            //};
            //box1.MouseUp += (s, e) =>
            //{
            //    box1.BackColor = Color.Red;
            //    box2.Visible = true;
            //};
        }
Beispiel #12
0
 public dbugMySprite(int w, int h) : base(w, h)
 {
     _renderVx = VgVisualDocHelper.CreateVgVisualDocFromFile(@"lion.svg").VgRootElem;
 }
        protected override void OnStart(AppHost host)
        {
            _background           = new Box(800, 600);
            _background.BackColor = Color.White;
            host.AddChild(_background);



            //---------------------------
            _vgVisElem = VgVisualDocHelper.CreateVgVisualDocFromFile(@"Samples\lion.svg").VgRootElem;
            _mySprite  = new MyTestSprite(_vgVisElem);
            //var evListener = new GeneralEventListener();
            //evListener.MouseDrag += (s, e) =>
            //{
            //    if (e.Ctrl)
            //    {
            //        //TODO:
            //        //classic Agg's move and rotate

            //    }
            //    else
            //    {   //just move
            //        _mySprite.SetLocation(_mySprite.Left + e.XDiff, _mySprite.Top + e.YDiff);
            //    }
            //};
            //_mySprite.AttachExternalEventListener(evListener);


            var rectBounds = _vgVisElem.GetRectBounds();

            _quadControl = new QuadWidgetControl();
            _quadControl.ShapeUpdated += _quadControl_ShapeUpdated;
            //
            _quadControl.SetupCorners(
                new Quad2f(
                    (float)rectBounds.Left,
                    (float)rectBounds.Bottom,
                    (float)rectBounds.Width,
                    (float)rectBounds.Height));

            _lionBounds = new RectangleF((float)rectBounds.Left,
                                         (float)rectBounds.Bottom,
                                         (float)rectBounds.Width,
                                         (float)rectBounds.Height);

            host.AddChild(_mySprite);
            host.AddChild(_quadControl);


            //--------------------
            _cmdBiliear = new Box(30, 30);
            _cmdBiliear.SetLocation(400, 20);
            _cmdBiliear.BackColor  = Color.Yellow;
            _cmdBiliear.MouseDown += (s, e) =>
            {
                if (_useBilinear)
                {
                    _cmdBiliear.BackColor = Color.Yellow;
                    _useBilinear          = false;
                }
                else
                {
                    _cmdBiliear.BackColor = Color.Red;
                    _useBilinear          = true;
                }
            };
            host.AddChild(_cmdBiliear);
        }