Parabel zeichnen und verschieben



  • Hallo!
    Wie würdet ihr am geschicktesten eine Parabel zeichnen?! Ich habe es bisher so realisiert:

    CZeichnen::ZeichneParabel()
    {
    CClientDC dc(this);
    double x,x_alt=0;
    double y,y_alt=0;
    for(double i=0;i<0.5;i+=0.001)
    {
    x=i*m_x_faktor;
    y=m_Parabel*pow(i,2)*m_y_faktor;

    dc.MoveTo(x_alt+60,-y_alt+600);
    dc.LineTo(x+60,-y+600);
    x_alt=x;
    y_alt=y;
    if(y>=500)
    break;
    }
    }

    Allerdings ist das über die Schleife ja nicht gerade toll und die Parabel soll jetzt auch noch mit der Maus verschiebbar sein. Wie könnte man dies realisieren?
    Danke im Vorraus!



  • Ich würde einen CRectTracker nehmen und mir die Punkte der Parabel in ein Array schreiben das ich vorher mit einer Schleife fülle. Dann mit PolyBezier oder MoveTo/LineTo die Kurve malen. Kannst auch in ne Bitmap malen und die immer blitten wenn du kein Array willst. CRectTracker eignet sich zum verschieben sehr gut.


Anmelden zum Antworten