نمایش نتایج 1 تا 3 از 3

نام تاپیک: رسم خط در سی شارپ با استفاده از متد SetPixel از شی Bitmap

  1. #1

    رسم خط در سی شارپ با استفاده از متد SetPixel از شی Bitmap

    دوستان با استفاده از متد زیر می خوام یک خط رسم کنم دستورات رو نوشتم اما error داره هرکاری کردم رفع نشد اساتید گرامی اگه edit کردن یا دستورات جدید گذاشتن یا error رو پیدا کردن ممنون می شم رهنمایی کنن .
    با تشکر فراوان

        public partial class Form1 : Form
    {
    Bitmap mybmp;
    //ilag3=0;
    int x1,x2,y1,y2,bold;
    Color mycolor = System.Drawing.Color.Red;
    //***********************
    void line(int x1, int y1, int x2, int y2)
    {
    int step = 0, k, dx = x2 - x1, dy = y2 - y1;
    float x, y, xinc = 0, yinc = 0;
    if (Math.Abs(dx) > Math.Abs(dy))
    step = Math.Abs(dx);
    else
    step = Math.Abs(dy);
    if (step > 0)
    {
    xinc = (float)(dx) / step;
    yinc = (float)(dy) / step;
    }
    x = x1;
    y = y2;
    for (k = 0; k <= step; k++)
    {
    mybmp.SetPixel(Convert.ToInt32(x), Convert.ToInt32(y), mycolor);
    x+= xinc;
    y+= yinc;
    }
    pictureBox1.Refresh();
    }
    //************************************************** **************

    public Form1()
    {
    InitializeComponent();
    }

    private void button1_Click(object sender, EventArgs e)
    {

    line(x1,y1,x2,y2);
    //line(50, 70, 40, 90);
    pictureBox1.Image = mybmp;

    }

  2. #2

    نقل قول: رسم خط در سی شارپ با استفاده از متد SetPixel از شی Bitmap

    بسمه تعالی
    سلام
    در لینک های زیر نحوه رسم خط وجود دارد
    http://msdn.microsoft.com/en-us/libr...=vs.71%29.aspx
    http://www.geekpedia.com/tutorial50_...th-Csharp.html

  3. #3

    نقل قول: رسم خط در سی شارپ با استفاده از متد SetPixel از شی Bitmap

            private void button1_Click(object sender, EventArgs e)
    {
    mybmp = new Bitmap(pictureBox1.Width, pictureBox1.Height);
    pictureBox1.Image = line(10, 10, 100, 100);
    }
    Bitmap mybmp;
    Bitmap line(int x1, int y1, int x2, int y2)
    {
    double a = (y2 - y1) / (x2 - x1);
    //y = ax + b
    int b = (int)(y1 - (a * x1));

    for (int x = x1; x <= x2; x+=2)
    {
    int y = (int)(a * x) + b;
    mybmp.SetPixel(x, y, Color.Red);
    }

    return mybmp;
    }

قوانین ایجاد تاپیک در تالار

  • شما نمی توانید تاپیک جدید ایجاد کنید
  • شما نمی توانید به تاپیک ها پاسخ دهید
  • شما نمی توانید ضمیمه ارسال کنید
  • شما نمی توانید پاسخ هایتان را ویرایش کنید
  •