Exemple #1
0
        void DrawC(Painter p)
        {
            p.Clear(PixelFarm.Drawing.Color.White);
            //--------------------------
            p.StrokeColor = PixelFarm.Drawing.Color.Black;
            p.StrokeWidth = 2.0f;

            if (_lineDashGen == null)
            {
                //create line dash gen
                _lineDashGen = new LineDashGenerator();
                _lineDashGen.SetDashPattern(4, 2, 2, 2);
            }

            //
            using (Tools.BorrowShapeBuilder(out var b))
            {
                IDashGenerator tmp = p.LineDashGen;
                p.LineDashGen = _lineDashGen;
                //b.MoveTo(20.5f, 10.5f);
                //b.LineTo(60.5f, 10.5f);
                //b.LineTo(20.5f, 200.5f);

                b.MoveTo(20f, 10f);
                b.LineTo(60f, 10f);
                b.LineTo(20f, 200f);

                b.CloseFigure();

                p.Draw(b.CurrentSharedVxs);

                p.LineDashGen = tmp;
            }
        }
Exemple #2
0
        void DrawC1(Painter p)
        {
            p.Clear(PixelFarm.Drawing.Color.White);
            //--------------------------
            p.StrokeColor = PixelFarm.Drawing.Color.Black;
            p.StrokeWidth = 2.0f;

            if (_lineDashGen == null)
            {
                //create line dash gen
                _lineDashGen = new LineDashGenerator();
                _lineDashGen.SetDashPattern(4, 2, 2, 2);
            }
            //
            using (Tools.BorrowShapeBuilder(out var b))
            {
                IDashGenerator tmp = p.LineDashGen;
                p.LineDashGen = _lineDashGen;
                //b.MoveTo(20.5f, 10.5f);
                //b.LineTo(60.5f, 10.5f);
                //b.LineTo(20.5f, 200.5f);

                b.MoveTo(20f, 10f);
                b.LineTo(60f, 10f);
                b.LineTo(20f, 200f);

                b.CloseFigure();

                //-----------------------------------
                //in this example, we draw line pattern along dash output

                var exampleWalker = new ExampleVxsLineDash2Walker();
                exampleWalker.SetPainter(p);
                _lineDashGen.GenerateDash(b.CurrentSharedVxs, exampleWalker);
            }
        }