broken
Goto Top

Java Parabel mit Koordinationssystem erzeugen

Hallo liebe Gemeinde

Ich habe eine Frage zu Java
Ich soll eine Parabel in einem Koordinationssystem darstellen.
ich hab es auch soweit am laufen nur fehlen mir noch einige Kleinigkeiten.
ich bräuchte noch eine Beschriftung der Koordinaten, sprich an den Strichen sollen die richtigen Zahlen stehen

ich glaub ihr braucht mein Quelcode um das Problem zu lösen
ich hatte schon ein wenig rum experimentiert
ich hab die Stelle markiert die ich meine.

import java.awt.*;
import java.applet.*;
import java.awt.event.*;
import java.text.*;

public class parabel extends Applet
{
    //ObjektVariablen deklarieren und initialisieren 
    Panel pa = new Panel();
    ZeichnenPanel pb= new ZeichnenPanel(); 
    Button b1=new Button("Berechnen");   
    TextField atf=new TextField("0",8);  
    TextField btf=new TextField("0",8);  
    TextField ctf=new TextField("0",8);  
    private Label zahl;                                    <====
    //einfache Variablen deklarieren (werden später initialisiert)
    float af,bf,cf;
    boolean Taste;


    public void init() 
    { 
        setLayout(new BorderLayout()); 
        add("South",pa);   
        add("Center",pb);  
        pa.setBackground(Color.green);
        pb.setBackground(Color.white); 
        pa.add(atf);
        pa.add(btf);
        pa.add(ctf);
        pa.add(b1);
        b1.addActionListener(new b1Listener());
    }

    //Das Eventhandling wird in einer lokalen (inneren) Klasse festgelegt
    class b1Listener implements ActionListener 
    {

        public void actionPerformed (ActionEvent e) 
        {
            String astr, bstr, cstr, xstr, ystr;
            astr = atf.getText();
            bstr = btf.getText();
            cstr = ctf.getText(); 
            af=Float.valueOf(astr).floatValue();
            bf=Float.valueOf(bstr).floatValue();
            cf=Float.valueOf(cstr).floatValue();
            Taste=true; 
            pb.repaint();
        } 
    }


    //Mittels einer innere Klasse wird ein Panel mit einer Zeichnen-Methode geschaffen, die dem  Center des Schemas zugeordnet wird.
    class ZeichnenPanel extends Panel
    {

        public void paint(Graphics g) 
        {
            int u0,v0,u1,v1;
            double x,y;
            g.drawLine(0,250,500,250);
            g.drawLine(250,0,250,500);
            int j=0;
            int k=0;
            for (int i=0;i<=25;i++)
            {
                j=i*20;
                g.drawLine(j,248,j,252);
                g.drawLine(248,j,252,j);
                //zahl=new Label("+25-i+");              <==== 
                //zahl.setBounds(j,253,j,273);            <====
                //zahl.setBounds(253,j,273,j);                <====
                //add(zahl);                                       <====
                for (int h=0;h<=25;h++)
                {
                    k=h*20;
                    g.drawLine(j,k,j,k);
                }
            }

            u0=-250;
            x=u0*0.1;//10 werden als Einheit festgelegt (Geteilt durch 10 funktioniert nicht!)
            y=af*x*x+bf*x+cf;
            v0=(int)Math.round(y*10);
            if(Taste)
            {
                for(int i=-249;i<=250;i++) 
                { 
                    u1=i; 
                    x=u1*0.1;
                    y=af*x*x+bf*x+cf;
                    v1=(int)Math.round(y*10);
                    g.drawLine(250+u0,250-v0,250+u1,250-v1);
                    u0=u1;v0=v1;
                }
            }
            
        }
    }
}

Schonmal vielen Dank für Eure Hilfe

Mit freundlichen Grüßen
Broken

Content-Key: 107486

Url: https://administrator.de/contentid/107486

Ausgedruckt am: 29.03.2024 um 13:03 Uhr

Mitglied: Broken
Broken 04.02.2009 um 10:14:38 Uhr
Goto Top
Hallo Leute

für die die es interessiert
Ich habe das problem anders gelösst

ich ghabe einfach ein
g.drawString("den text eingeben" ,200,200);

so erzeugt es den Text " den text eingeben" an dert stelle 200|200

MFG
Broken