Menu schließen

Java Koordinatensystem dynamisch anpassen

Frage: Java Koordinatensystem dynamisch anpassen
(1 Antwort)


Autor
Beiträge 1
0
Moin allerseits!
Wir haben die Aufgabe, ein Koordinatensystem zu erstellen, dort Punkte (bekommen wir als x-y-Koordinaten in einer HTML-Datei) und diese miteinander zu verbinden.

Momentan muss man bei uns die Punkte noch in zwei Arrays manuell eingeben, aber das bekommen wir sicher noch hin, die aus der HTMl-Datei zu nehmen.
Unser größtes Problem, bei dem wir einfach nicht weiterkommen bzw. unsere Kenntnisse wohl nicht ausreichen, ist die dynamische Anpassung des Koordinatensystems. Also, dass das Ganze bei einem Ausreisserwert von sagen wir mal 1000 sich automatisch verkleinern bzw. die Skalierung so anpassen würde, dass die ganze Kurve inklusive solcher Ausreisser zu sehen ist mit passender Achsenbezeichnung. Könntet ihr uns da weiterhelfen?

Bisher haben wir das hier:

import java.awt.* ;
import java.applet.Applet ;

public class graph extends java. applet . Applet {
//Array x-Werte(Dichte)
private double [ ] WerteX = { 3.2 , 5.5 , 6.5 , 7.0 } ;

//Array y-Werte(Druck)
private double [ ] WerteY = { 0.0 , 100.0 , 320.0 , 550.0 } ;

public void init ( ) {
// Hintergrundfarbe schwarz
setBackground ( Color . black ) ;
}

public void paint ( Graphics g ) {
float x, y ;
int xnorm, ynorm, i ;

// ACHSEN ZEICHNEN -----------------------------------------------

g. setColor ( Color . red ) ; // Koordinatenbezeichnung x-Achse
g. setFont ( new Font ( "Arial" , Font . BOLD , 20 ) ) ;

for ( i = 0 ; i <= 12 ; i += 3 ) {
g. drawString ( String . valueOf ( i ) , 100 + i * 50 , 670 ) ;
}
//Koordinatenbezeichnung y-Achse
for ( i = 0 ; i <= 12 ; i ++ ) {
g. drawString ( String . valueOf ( i * 50 ) , 80 , 650 - 50 * i ) ;
}

// Vordergrundfarbe Rot fuer die Achsen
g. setColor ( Color . red ) ;

// X-Achse zeichnen (schon skaliert auf 500%)
g. drawLine ( 0 , 650 , 650 , 650 ) ;

// Y-Achse zeichnen (schon skaliert auf 500%)
g. drawLine ( 100 , 0 , 100 , 650 ) ;

// Skaleneinteilung fuer die X-Achse zeichnen
for ( i = 100 ; i <= 750 ; i += 150 ) {
g. drawLine ( i, 0 , i, 650 ) ;
}

// Skaleneinteilung fuer die Y-Achse zeichnen
for ( i = 0 ; i <= 650 ; i += 50 ) {
g. drawLine ( 100 , i, 750 , i ) ;
}
int size = WerteX. length ;

g. setColor ( Color . white ) ;
//X-Achse Werte hochskaliert,Punkte
for ( i = 0 ; i < size ; i ++ ) {
g. fillOval ( ( int ) WerteX [ i ] [ I ] * 50 + 100 - 3 , 650 - ( int ) WerteY [ i ] [ I ] - 3 , 6 , 6 ) ;
}

for ( i = 0 ; i < size ; i ++ ) {
g. drawLine ( ( int ) WerteX [ i ] [ I ] * 50 + 100 , 650 - ( int ) WerteY [ i ] [ I ] , ( int ) WerteX [ i + 1 ] * 50 + 100 , 650 - ( int ) WerteY [ i + 1 ] ) ;
}

}

}

Das Ganze lassen wir uns mit dem Appletviewer anzeigen
Frage von DonnaDuesentrieb | am 25.05.2016 - 13:18


Autor
Beiträge 28
3
Antwort von Pathou | 01.06.2016 - 22:19
mgl. Lösungsansatz

X- und Y-Werte prüfen:
if x-wert zwischen 0 und 10 --> do a
if x-wert zwischen 10 und 20 --> do b
if x-wert zwischen 20 und 30 --> do c
... oder so, das gleiche für die y-werte

Verstoß melden
Hast Du eine eigene Frage an unsere Informatik-Experten?

45 ähnliche Fragen im Forum: 0 passende Dokumente zum Thema:
> Du befindest dich hier: Support-Forum - Informatik
ÄHNLICHE FRAGEN:
  • Java / Java editor
    hi, kann jemand mir seiten sagen wo ich java runterladen kann ? ich hab java runtergeladen haben damit kann ich nix machen und ..
  • JAVA
    wo kann ich java für windows vista runterladen und wo find ich den Textpad? lg
  • methoden in java
    kann mir jemand methoden in java erklären ich check das nämlich irgendwie net :// und wir schreiben darüber bald ne klausur ..
  • Java online lernen?
    Kann mir jemand eine gute Webseite empfehlen mit der man einfach und relativ schnell Java lernen kann? :)
  • Java
    Hallo Leute! Ich muss bei Java eine Umfrage programmieren und es muss mir nachher den Durschnitt angeben. Ich dachte an eine ..
  • Optimierung der Java-Implementierung
    Hallo Leute! Ich habe eine Hauaufgabe im Fach Informatik bekommen. Ich habe alle Aufgaben gemacht außer einer Aufgabe. Sie ..
  • mehr ...