Gjest Slettet-aNZFa3 Skrevet 2. mars 2009 Del Skrevet 2. mars 2009 Hvordan gjør man det. Man har f.eks: f(x) = 5x+5 , hvordan får man generert en Point[] ut fra den formelen? Lenke til kommentar
Velena Skrevet 2. mars 2009 Del Skrevet 2. mars 2009 int intervallStart= 0; int intervallSlutt = 10; int Step= 0,1; List<Point> Graf = new List<Point>(); for(int i = intervallStart;i<=intervallSlutt;i+=Step) Graf.Add(new Point(i,i*5+5); Er det slik du mener? Lenke til kommentar
GeirGrusom Skrevet 2. mars 2009 Del Skrevet 2. mars 2009 (endret) public delegate float GraphFn(float x); public PointF[] CalculateGraph(GraphFn function, int num_points, float from, float to) { float step = (to - from) / num_points; PointF[] points = new PointF[num_points]; int index = 0; for(float x = from; x < to; x+=step, index++) points[index] = new PointF(x, function(x)) return points; } public void DrawGraphPoints(Graphics g) { PointF[] points = CalculateGraph( x => 5 * x + 5, ClientSize.Width, -10, 10 ); float min = points.Min(); float max = points.Max(); g.TranslateTransform(0, -min); g.ScaleTransform(Display.ClientSize.Width / 20f, Display.ClientSize.Height / (max - min)); g.DrawLines(points); } Tror det skal funke... har ikke testet det dog... Endret 2. mars 2009 av GeirGrusom Lenke til kommentar
Gjest Slettet-aNZFa3 Skrevet 3. mars 2009 Del Skrevet 3. mars 2009 Jeg har fått den til å funke nå, men hvordan hindrer jeg at grafen til streken endrer tjukkelse? Lenke til kommentar
Anbefalte innlegg
Opprett en konto eller logg inn for å kommentere
Du må være et medlem for å kunne skrive en kommentar
Opprett konto
Det er enkelt å melde seg inn for å starte en ny konto!
Start en kontoLogg inn
Har du allerede en konto? Logg inn her.
Logg inn nå