21

Re: Малювання у C# (Windows Forms Application)

Ну і де Ви заповнюєте масиви ?
Ви ж розумієте, що масив заповнений нулями нічого не дасть.

Ось мій варіант (з заповненням випадковими значеннями):

using System;
using System.Drawing;
using System.Drawing.Drawing2D;
using System.Windows.Forms;

namespace WinFormApp1
{
    public partial class Form1 : Form
    {
        public const int m = 5;
        public const int n = 5;
        public double[,] x = new double[n, m];
        public double[,] y = new double[n, m];

        public Form1()
        {
            InitializeComponent();
        }

        private void button1_Click(object sender, EventArgs e)
        {
            // Init x[,], y[,] random values.
            Random rand = new Random();
            for(int j = 0; j < m; ++j)
                for (int i = 0; i < n; ++i)
                {
                    x[i, j] = rand.NextDouble();
                    y[i, j] = rand.NextDouble();
                }
            int w = picture.Width * 2;
            int h = picture.Height * 2;
            //
            Bitmap bmp = new Bitmap(w, h);
            Graphics g = Graphics.FromImage(bmp);
            g.CompositingQuality = CompositingQuality.HighQuality;
            g.SmoothingMode = SmoothingMode.HighQuality;
            Pen pen = new Pen(Color.Blue, (w+h)/200);
            for (int j = 0; j < m; j++)
                for (int i = 0; i < n - 1; i++)
                {
                    g.DrawLine(pen,
                        (float)(w * x[i, j]),
                        (float)(h * y[i, j]),
                        (float)(w * x[i + 1, j]),
                        (float)(h * y[i + 1, j]));
                }
            for (int i = 0; i < n; i++)
                for (int j = 0; j < m - 1; j++)
                {
                    g.DrawLine(pen,
                        (float)(w * x[i, j]),
                        (float)(h * y[i, j]),
                        (float)(w * x[i, j + 1]),
                        (float)(h * y[i, j + 1]));
                }
            picture.Image = bmp;
        }
    }
}

Але краще завантажуйте прикріплений архів і скомпілюйте.

Post's attachments

WinFormApp1.zip 5.08 kb, 289 downloads since 2016-04-04 

Подякували: Volodymyr Rizun1

22

Re: Малювання у C# (Windows Forms Application)

leofun01 написав:

Ну і де Ви заповнюєте масиви ?
Ви ж розумієте, що масив заповнений нулями нічого не дасть.

Так, я це розумію. Тут я, звісно, неправильно зробив. Насправді, то заповнення в мене вже є готове,правда, воно дуже загально прописано, але тепер зроблю його в окремому методі і буду викликати у кнопці.
Щиро дякую за допомогу! Рухатимусь далі вже в правильному напрямку. Гарного Вам дня!