コード例 #1
0
        private void DrawMarkX(DrawSettings settings, CoordinateAxisX axis, CoordinateSystemSignature signature)
        {
            float indent = settings.LineWidth / (settings.CountPoints * signature.Font.Size);

            for (int i = 0; i <= settings.CountPoints; i++)
            {
                (float x, float y) = axis.SettingScale(settings.Direction.X, settings.Direction.Y, indent, i);

                graphics.DrawLine(signature.Pen, x + settings.Offset.X, -2 + settings.Offset.Y,
                                  x + settings.Offset.X, 2 + settings.Offset.Y);
            }
        }
コード例 #2
0
        private void DrawSignatureX(CoordinateAxisX axisX, CoordinateSystemSignature signature)
        {
            int countPoints = axisX.CountPoints;

            float dx = signature.Font.Size,
                  dy = signature.Font.Size;

            var settings = new DrawSettings(graphics.ClipBounds.Width - (24 + signature.Font.Size),
                                            countPoints, axisX.MaxValue, new Direction(dx, dy))
            {
                StartPoint = 1,
                StartValue = 1,
                Offset     = new Offset(24, 0)
            };

            DrawSignature(settings, axisX, signature);
            DrawMarkX(settings, axisX, signature);
        }
コード例 #3
0
        private void PictureBox1_Paint(object sender, PaintEventArgs e)
        {
            var g = e.Graphics;

            var x = new CoordinateAxisX(minValue: 1, maxValue: 31, countPoints: 31);
            var y = new CoordinateAxisY(minValue: -max, maxValue: max, countPoints: 15);

            var cs = new Models.CoordinateSystem(x, y);

            cs.Signature = new Models.CoordinateSystemSignature
            {
                Brush = Brushes.Red,
                Font  = new Font("Arial", 10),
            };

            var draw = new DrawingСoordinateSystem(g, cs);

            offset = draw.Draw();

            drawingGraphics?.Draw(numbers, new RectangleF(offset.X, -offset.Y,
                                                          pictureBox1.Width, pictureBox1.Height), graphicsSignature, g);
        }