سلام
تا اونجایی که اطلاع دارم برای رسم منحنی ها لازم است صورت کلی معادله را داشته باشید و کاربر تنها ثوابت مورد نظر (ضرایب معادله) را وارد نماید. در غیر این صورت باید از یک کامپایلر داخلی استفاده کنید. به این ترتیب که یک کامپایلر داخل برنامه طراحی کنید تا معادلات را بفهمد. من قبلاً این کار را کرده ام و نتیجه اینکه آنقدر پر زحمت است که بهتر است از همان راه حل اول استفاده کنید. بعد مجموعه ای از نقاط را در بازه ای (که آن را هم کاربر می تواند تعریف نماید) با step size دلخواه از یک حلقه ی for ساده بدست می آورید و آنها را با استفاده از دستور AddLines از فضای نام System.Drawing.Drawing2D به یک مسیر به شکل زیر اضافه کنید. کد زیر مثال خوبی از انجام این کار است:
privatevoid AddLinesExample(PaintEventArgs e)
{
// Create a symetrical triangle using an array of points.
Point[] myArray =
{
newPoint(30,30),
newPoint(60,60),
newPoint(0,60),
newPoint(30,30)
};
//Create a path and add lines.
GraphicsPath myPath = newGraphicsPath();
myPath.AddLines(myArray);
// Draw the path to the screen.
Pen myPen = newPen(Color.Black, 2);
e.Graphics.DrawPath(myPen, myPath);
}
البته در اینجا تا حدی ظاهر کد به هم ریخت که با کپی کردن آن در Editor سی شارپ نباید مشکلی وجود داشته باشد.