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

نام تاپیک: رسم نمودار سینوس در سی شارپ؟

  1. #1

    Question رسم نمودار سینوس در سی شارپ؟

    سلام
    مشکل من اینه که نمی دونم از چه متدی برای رسم نمودار سینوس استفاده کنم.
    مقدارش رو که از تابع سینوس( از نوع دابل) بدست میاریم.
    (برای رسم نمودار باید از زاویه صفر تا 180 درجه رو تیکه تیکه با تابع سینوس حساب کنیم.)
    اگر از متد
    DrawLine استفاده کنم باید متغیر هام از نوع float باشن.واسه همین ارور میده.
    لطفا منو راهنمایی کنید.


  2. #2
    اگر مشکل در تبدیل float به int هست که از Convert.ToInt32() استفاده کن

  3. #3
    نه توی تبدیل double به float مشکل دارم. فکر نمی کنم اصلا بشه تبدیلش کرد!
    آخه می خوام از مقداری که تابع سینوس برمیگردونه استفاده کنم که اونم از نوع double هست.

  4. #4
    نقل قول نوشته شده توسط **sara** مشاهده تاپیک
    نه توی تبدیل double به float مشکل دارم. فکر نمی کنم اصلا بشه تبدیلش کرد!
    آخه می خوام از مقداری که تابع سینوس برمیگردونه استفاده کنم که اونم از نوع double هست.
    تو NET. اسم float میشه Single. پس از Convert.ToSingle استفاده کن

  5. #5

    Talking

    ممنون برای راهنماییتون.
    راستش من از تابع DrawArc که استفاده کردم یه جورایی نمودار سینوس رو طراحی می کنه ولی فکر می کنم کد ها اشتباهه ! می شه شما یه نگاهی به کد هام بندازین، بگین مشکل داره یا نه؟(ولی شکل سینوس رو نشون می ده !امتحان کنید! )بعدشم اگه ایده ای داشتین ممنون می شم به من هم بگین.) راستی یه panel و یه button واسه فرمتون بگذارید.
    privatevoid button1_Click(object sender, System.EventArgs e)
    {
    Graphics Graph1=panel1.CreateGraphics();
    Pen pen1=new Pen(Color.Blue,1);
    Graph1.DrawLine(pen1,108,80,108,220);
    Graph1.DrawLine(pen1,20,150,195,150);
    int fx,x,x1,y1;
    double y;
    x1=15;
    y1=75;
    for (x=0;x<=180;x++)
    {
    y= Math.Sin(x*3.1415926535897932384626433832795/180);
    fx=Convert.ToInt32(y);
    Graph1.DrawArc(pen1,x1,y1,100,100,x,fx);
    }
    int x2=101;
    int y2=125;
    for (x=180;x<=360;x++)
    {
    y= Math.Sin(x*3.1415926535897932384626433832795/180);
    fx=Convert.ToInt32(y);
    Graph1.DrawArc(pen1,x2,y2,100,100,x,fx);
    }
    }
    privatevoid button2_Click(object sender, System.EventArgs e)
    {
    Graphics Graph1=panel1.CreateGraphics();
    Pen pen1=new Pen(Color.Blue,1);
    Graph1.DrawLine(pen1,108,80,108,220);
    Graph1.DrawLine(pen1,20,150,195,150);
    int fx,x,x1,y1;
    double y;
    x1=58;
    y1=125;
    for (x=180;x<=360;x++)
    {
    y= Math.Sin(x*3.1415926535897932384626433832795/180);
    fx=Convert.ToInt32(y);
    Graph1.DrawArc(pen1,x1,y1,100,100,x,fx);
    }
    int x2=145;
    int y2=75;
    for (x=90;x<=180;x++)
    {
    y= Math.Sin(x*3.1415926535897932384626433832795/180);
    fx=Convert.ToInt32(y);
    Graph1.DrawArc(pen1,x2,y2,100,100,x,fx);
    }
    int x3=20;
    int y3=75;
    for (x=0;x<=90;x++)
    {
    y= Math.Sin(x*3.1415926535897932384626433832795/180);
    fx=Convert.ToInt32(y);
    Graph1.DrawArc(pen1,x3,y3,100,100,x,fx);
    }
    }

  6. #6
    اوه ببخشید کد های button2 به بعدش نیستن یعنی واسه کسینوس هستن ولی جدی نگیرین اون که خیلی مشکل داره(کسینوس رو می گم).سینوس اینه:
    privatevoid button1_Click(object sender, System.EventArgs e)
    {
    Graphics Graph1=panel1.CreateGraphics();
    Pen pen1=
    new Pen(Color.Blue,1);
    Graph1.DrawLine(pen1,108,80,108,220);
    Graph1.DrawLine(pen1,20,150,195,150);


    int fx,x,x1,y1;
    double y;
    x1=15;
    y1=75;
    for (x=0;x<=180;x++)
    {
    y= Math.Sin(x*3.1415926535897932384626433832795/180);
    fx=Convert.ToInt32(y);
    Graph1.DrawArc(pen1,x1,y1,100,100,x,fx);
    }
    int x2=101;
    int y2=125;
    for (x=180;x<=360;x++)
    {
    y= Math.Sin(x*3.1415926535897932384626433832795/180);
    fx=Convert.ToInt32(y);
    Graph1.DrawArc(pen1,x2,y2,100,100,x,fx);
    }
    }

  7. #7
    دوست عزیز، متاسفانه من از لینوکس استفاده میکنم و VisualStudio ندارم و نمیتونم کدهاتون رو تست کنم. به هر حال موفق باشید.

  8. #8

  9. #9
    کاربر دائمی آواتار اَرژنگ
    تاریخ عضویت
    آبان 1384
    محل زندگی
    arjang8000@gmail.com
    پست
    2,736
    به جایه خط کشیدن از نقطه گذاشتن استفاده کنید.

  10. #10
    nemodar.rar
    جناب bermooda با عرض معذرت من تازه وارد هستم! منظورتون همون ضمیمه ست؟ این فایلشه که ضمیمه کردم می تونی ببینی.

  11. #11
    نقل قول نوشته شده توسط اَرژنگ مشاهده تاپیک
    به جایه خط کشیدن از نقطه گذاشتن استفاده کنید.
    می شه بیشتر توضیح بدید؟ یعنی از چه تابعی استفاده کنم؟

  12. #12
    کاربر دائمی آواتار اَرژنگ
    تاریخ عضویت
    آبان 1384
    محل زندگی
    arjang8000@gmail.com
    پست
    2,736
    نقل قول نوشته شده توسط **sara** مشاهده تاپیک
    می شه بیشتر توضیح بدید؟ یعنی از چه تابعی استفاده کنم؟
    http://www.c-sharpcorner.com/UploadF...otControl.aspx

  13. #13
    آرژنگ این سایته که می گی کد هاش خیلی سختن. می شه یه کم ساده تر شو بگی ؟ لازم نیست رسم نمودارش خیلی دقیق باشه. یا کلا اگه می شه یکم توضیح بده در موردش.
    ممنون.

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

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