2 Objekte zu einer Gruppe zusammenfügen

noob38

Mitglied
Hallo ich hab ein Problem bei dem ich nicht weiterkomm,

ich versuch eine Simulation zu erstellen, inder ein Auto einen Unfall mach stehen bleibt, dann ein Safetycar zu dem Auto fährt in der nähe stehen bleibt. Nun möchte ich das die beiden genau das selbe tun und damit sozusagen das Abschleppen Simulieren. Kann mir da jmd helfen_
 

noob38

Mitglied
Java:
public class Welt
{
  boolean SafetyCar;
  Counter zähler = new Counter();
  double Unfallort;
  int rundenzahl;
  Auto auto1= new Auto();
  Auto Safetycar= new Auto();
    public Welt()
    {
      
       
        Fenster f;
       Strasse s;
       rundenzahl=0;
     
         /*Markierung m1;
        Markierung m2;*/
        s = new Strasse();
        auto1.fahren();
        Safetycar.farbeSetzen("gelb");
       f = new Fenster()     ;
        Unfallort = 100 + Math.floor(Math.random() * (700-100+1));
      
      
       Safetycar.positionSetzen(200,300);
    }
    public void einsatz(){
        if( auto1.x== Unfallort){
            auto1.Unfall();
            Safetycar.positionSetzen(30,30);
            Safetycar.fahren();
            Safetycar.safetycar();
                  
            
        }
    }
}
        /*m1 = new Markierung(390,150);
        m2 = new Markierung(390,350);*/
        
          /*  if(auto1.x<60 && auto1.y<100){
                zähler.increment();
                System.out.println(zähler);
            
            
            }
            if(zähler== new Counter(1)){
            auto1.Unfall();
        }
                }
            
            
        
    
            
        public void Zählen(){
             if(auto1.x==30 && auto1.y==30){
             for(int j=0;j<5;j++){
             System.out.println("ist drinnen" + " " +  j);
             
            }
        }
            
    
    

}
}

*/
 

noob38

Mitglied
das ist meine Welt

und das meine klasse Auto
Java:
public class Auto extends Rechteck{
double geschwindigkeit;
int beschleunigung;
double bremsung;
boolean Unfall;
boolean SafetyCar;
double SafetyCarZielx;
double SafetyCarZiely;
boolean SC_draussen;

    public Auto (){//(int x, int y, double g, String typ ){

        positionSetzen(30,30);// x= 100; y = 100
      SafetyCar=false;
      String typ="pkw";
        if ( typ =="pkw"){
        breiteSetzen(20);
        hoeheSetzen(20);
        farbeSetzen("rot");
    }
    else
    if ( typ=="lkw"){
        breiteSetzen(20);
        hoeheSetzen(20);
        farbeSetzen("blau");
    }
        
        bremsung = 0.1;
        geschwindigkeit = 60;  
        
    }
    public void fahrtrichtung_aendern(){
       
        vertikalBewegen(3);
        if(y<0){
            positionSetzen(x,0);
        }
        
    }
  
    
    public void fahren(){
        
        if(this.SafetyCar==true) {
                    //System.out.println(a.x + " " + a.y + " " + this.x + " " +this.y);
               if( ((this.x-SafetyCarZielx) *(this.x-SafetyCarZielx) + (this.y- SafetyCarZiely) * (this.y- SafetyCarZiely) )<900) {
                 
               //  if   ((this.x ==   SafetyCarZielx ) && (this.y ==   SafetyCarZiely )) {
                   //System.out. println ("sollte stoppen");
                  this.geschwindigkeit=0;   
                  this.horizontalBewegen(0);
                  this.vertikalBewegen(0);
                  
            }   }
            
              /*    if(SafetyCar==true){
                    if(geschwindigkeit==0){
                    if( this.x>30){
                        if(this.y>30){
                            this.vertikalBewegen(-3);
                            this.horizontalBewegen(-3);
                        }
                      
                        
                        else{
                            horizontalBewegen(-3);
                        }
                    }
                        else{
                            vertikalBewegen(-3);
                        }
                    }
                }
            
                 else{
                       if(this.Unfall==true ){
                if(geschwindigkeit==0){
                    if( this.x>30){
                        if(this.y>30){
                            this.vertikalBewegen(-3);
                            this.horizontalBewegen(-3);
                        }
                      
                        }
                        else{
                            horizontalBewegen(-3);
                        }}
                        else{
                            vertikalBewegen(-3);
                        }
                    
                    }
                }*/
                

       if( geschwindigkeit>=60){
         if((y <=Fenster.HEIGHT-100) && (x <=55)){ //wenn das Rechteck am Ende des Bildschirms angelangt ist     

             vertikalBewegen(3);}
      else 
          if ((y >Fenster.HEIGHT-100)&&(x <Fenster.WIDTH-50))
            horizontalBewegen(3);
      else
          if((y >30) && (x >=Fenster.WIDTH-50 ))
          vertikalBewegen(-3);
    
       else 
          if (( y<=100) && (x> 50))
          horizontalBewegen(-3);
        }
if( geschwindigkeit>=30 && geschwindigkeit<60){
         if((y <Fenster.HEIGHT-90) && (x <=55)){ //wenn das Rechteck am Ende des Bildschirms angelangt ist     

             vertikalBewegen(2);}
      else 
          if ((y >=Fenster.HEIGHT-90)&&(x <=Fenster.WIDTH-60))
            horizontalBewegen(2);
      else
          if((y >30) && (x <=Fenster.WIDTH-50 ))
          vertikalBewegen(-2);
    
       else 
          if (( y<=100) && (x> 50))
          horizontalBewegen(-2);
          
}
if( geschwindigkeit>=10 && geschwindigkeit<30){
         if((y <Fenster.HEIGHT-100) && (x <50)){ //wenn das Rechteck am Ende des Bildschirms angelangt ist     

             vertikalBewegen(1);}
      else 
          if ((y >Fenster.HEIGHT-100)&&(x <Fenster.WIDTH-50))
            horizontalBewegen(1);
      else
          if((y >30) && (x ==Fenster.WIDTH-50 ))
          vertikalBewegen(-1);
    
       else 
          if (( y<=100) && (x> 50))
          horizontalBewegen(-1);
          
}

    }

public void Unfall(){

        Unfall= true;
      
             geschwindigkeit=0;

            horizontalBewegen(0);
             vertikalBewegen(0);
           
               if(SafetyCar == true){
                   SC_draussen = true;
                }
                 
            }
        
             
public double getX(){
           return this.x; 
        }
            
public void safetycar( ){

               Auto a= new Auto();//(0, 30, 60, "pkw");
               
               a.SafetyCar = true;
               a.farbeSetzen("gelb");
               a.SafetyCarZielx = this.x;
               a.SafetyCarZiely = this.y;
               if( ((this.x-SafetyCarZielx) *(this.x-SafetyCarZielx) + (this.y- SafetyCarZiely) * (this.y- SafetyCarZiely) )<2500){
                   a.fahren();
                   this.fahren();
                }
                 if(a.geschwindigkeit==0){
                 SC_draussen= true;
                 a. fahrtrichtung_aendern();
                }
                
            }

    

        }
 
S

SlaterB

Gast
puh, reichlich ungenau,
da kann man ja beliebiges simulieren

wie findet überhaupt Bewegung statt, gibt es eine Schleife die ständig fahren() aufruft usw.?
lasse nur noch das Safetycar (Abschlepper?) fahren, setze das andere Auto auf Zustand abgeschleppt, außerdem in einem Attribut das abschleppende Auto merken,

bei dem normalen fahren() aller Autos in der Welt in einer Runde den 'abgeschleppten' auslassen, nachgelager dann aber für diesen die neue Position berechnen, auf welchen Weg auch immer,
etwa genau anschauen, wer als Abschlepper zugeordnet ist, dessen Richtung , 30 Pixel 'dahinter' = neue Position, fertig

für physikalisch korrekte Kurvenfahrten ohne leicht unnatürliches Springen kann man den Aufwand natürlich beliebig hoch fahren,
im Detail kann man das hier aber kaum besprechen (icho sowieso nicht)


edit:
mit dem Safetycar überhaupt zu einem anderen Auto hinzufinden klingt für mich komplizierter
als diese Frage, Code nicht so genau angeschaut
 

noob38

Mitglied
Da ich ein Anfänger bin und eher unerfahren in dem Gebiet hab ich einige Probleme die ich nicht lösen kann. als erstes beispiel der Wagen ruft die ganze zeit die Methode fahren() auf ohne sie zu stoppen, egal ob eine if oder eine while schleife ich krieg den wagen in der Welt nicht zum stehen.
2. nachdem das Safetycar sozusagen beim Wagen angekommen ist sollen beide genau das selbe tun und von der Fahrbahn wegfahren, meine idee war beide zusammen zu einer Gruppe sozusagen zusammen zu fügen und dann das beide genau das selbe tun.

Danke für die Hilfe
 
T

TryToHelp

Gast
Ich hab mir zwar den code nicht so genau angeschaut, aber hast du irgendwo sowas wie deine controlierende schleife, also deine main-loop oder wie auch immer du sie nennst, die alles kontroliert?
in der rufst du wahrscheinlich dann in jedem schleifendurchlauf deine funktion fahren auf, egal ob unfall oder nicht.
Zwecks des abschleppens, entweder du rufst bei beiden fahrzeugen das selbe auf, oder du machst es wie von SlaterB vorgeschlagen.
Aber als Änfenger wie du dich selbst betittelst, weiß ich nicht, ob das der richtige einstieg ist, und des weiteren solltest du dir vor dem losprogramieren genauere gedanken machen, wer was macht, also vorher ein paar ideen machen, muss nicht mit zettel und stift seien, ist aber offt hilfreich ;-)
 
T

Trolllllll

Gast
ansonsten kannst du die 2 Fahrzeuge so in eine Gruppe stecken ;-)

Java:
class Gruppe{
Saftycar saftycar;
Auto auto;

public Gruppe(Saftycar saftycar, Auto auto){
this.saftycar=saftycar;
this.auto=auto;
}

...

}
 

noob38

Mitglied
Danke für die schnelle antwort, nur versteh ich nicht ganz was ihr damit meint. ich hab mir gedanken gemacht bevor ich drauf losprogrammiert habe ist ja nicht gestern entstanden ist für meine Seminararbeit. Könntet ihr mir vllt konkreteres sagen das ich einen besseren überblick darüber bekomme :S
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
A Einzelne Objekte und Unterobjekte einer ArrayList ausgeben Allgemeine Java-Themen 53
J Zugriff auf erstellte Objekte einer Klasse von einer Klasse ausserhalb Allgemeine Java-Themen 3
P mehrer Verschiedene Objekte in einer Klasse erstellen. Allgemeine Java-Themen 4
S Algorithmus um Objekte auf einer Flaeche mit gleichem Abstand anzuordnen..? Allgemeine Java-Themen 20
E Objekte in einer Liste suchen. Allgemeine Java-Themen 4
M 3D Objekte mit einer Linie Verbinden Allgemeine Java-Themen 3
D LinkedList anhand einer long-Variable der Objekte sortieren Allgemeine Java-Themen 5
K Suche alle Objekte einer bestimmten Klasse Allgemeine Java-Themen 2
H In Testklasse Objekte erzeugen und in einer Schleife ausgebe Allgemeine Java-Themen 4
C Objekte einer Klasse zählen Allgemeine Java-Themen 25
G Objekte in einer Schleife erzeugen? Allgemeine Java-Themen 10
schegga_B javax.crypto - Cipher Objekte - Sevice Provider matching? Allgemeine Java-Themen 1
berserkerdq2 Weiß jemand wie ich im Scenebuilder das Fenster so darstellen kann, dass beim Vollbildmodus die Objekte so angezeigt werden? Allgemeine Java-Themen 1
B Java Reflection Probleme beim wehcselseitigen Referenzieren zweier Klassen/Objekte Allgemeine Java-Themen 14
N einem Array Objekte hinzufügen die ihr Array position gespeichert haben Allgemeine Java-Themen 34
E Objekte in einen String packen und wieder laden Allgemeine Java-Themen 5
L Objekte in Set nicht gefunden Allgemeine Java-Themen 13
Avalon Data Transfer Objekte aus Datenbank erstellen Allgemeine Java-Themen 8
G Objekte mit Strings Aufrufen Allgemeine Java-Themen 8
H Objekte speichern und laden Allgemeine Java-Themen 10
H Objekte speichern und laden Allgemeine Java-Themen 1
MiMa Referenz auf Objekte und deren Inhalte Allgemeine Java-Themen 12
W Objekte reproduzieren Allgemeine Java-Themen 2
W Objekte per Reflexion instanziieren Allgemeine Java-Themen 7
W Unittest - Objekte simulieren Allgemeine Java-Themen 7
T OOP Objekte mit Erweiterung Initialisieren Allgemeine Java-Themen 6
O Erste Schritte Objekte als Datenelemente Allgemeine Java-Themen 14
J Equals Mock Objekte Allgemeine Java-Themen 5
J Mockito - Objekte miteinander vergleichen (equals) Allgemeine Java-Themen 6
N Bei Mouse Events nicht mehrere Objekte erstellen Allgemeine Java-Themen 13
J Java Objekte = null, Garbagecollector Allgemeine Java-Themen 12
F Listen - Mehrere Objekte Allgemeine Java-Themen 1
J Verständnis Frage zur Instanz, Objekte, Instanzierung, Referenz Allgemeine Java-Themen 14
F Objekte erzeugen Allgemeine Java-Themen 1
E Threads ThreadPoolExecutor remove mit callable Objekte Allgemeine Java-Themen 3
E OOP Objekte und Methoden Allgemeine Java-Themen 1
@SupressWarnings() Umgebungsvariable Objekte "gekoppelt" Allgemeine Java-Themen 6
C Objekte in Array List speichern? Allgemeine Java-Themen 1
OnDemand Objekte speichern Allgemeine Java-Themen 8
B Objekte anhand von Properties file Allgemeine Java-Themen 41
U Tiefe Objekte schreiben Allgemeine Java-Themen 1
R Abstrakte Basisklasse und instanzierte Objekte der abgeleiteten Klasse als Basisklasse übergeben Allgemeine Java-Themen 2
E 3D Objekte in 2D Bild finden Allgemeine Java-Themen 5
J Daten aus GUI auslesen und in Objekte umwandeln Allgemeine Java-Themen 6
F FileOutput/Input Objekte Allgemeine Java-Themen 6
OnDemand Objekte serialisieren Allgemeine Java-Themen 3
J unterschiedliche Objekte, selbe getter und setter Allgemeine Java-Themen 15
L Lib gesucht: Java-Objekte mit JSON Allgemeine Java-Themen 2
U Set erklären dass objekte gleich sind Allgemeine Java-Themen 12
E Best Practice Verdammt große Objekte Allgemeine Java-Themen 10
B Mehrere Objekte verschlüsselt serialisieren Allgemeine Java-Themen 6
G Liste anzahl der gleichen Objekte Allgemeine Java-Themen 6
N Objekte an eine andere Applikation übergeben Allgemeine Java-Themen 3
M Instanzierte Objekte in XML Dokument speichern Allgemeine Java-Themen 3
B Verschiedene Objekte in Abhängigkeit eines Typs instanziieren. Allgemeine Java-Themen 17
K Input/Output Im Programm instanzierte Objekte Speichern und laden Allgemeine Java-Themen 3
S OOP Objekte als Return-Werte: Einen Klon zurückgeben oder Instanz auf das Feld? Allgemeine Java-Themen 10
H Objekte Serialisiert speichern Allgemeine Java-Themen 10
L MouseListener für viele Objekte erstellen Allgemeine Java-Themen 16
5 Objekte Sortieren lassen Allgemeine Java-Themen 7
N Objekte aus Array Inhalt erzeugen Allgemeine Java-Themen 8
L Input/Output Textdatei in Objekte überführen? Allgemeine Java-Themen 4
R Input/Output Objekte speichern ohne überschreiben Allgemeine Java-Themen 7
A Collections HashMap.containsKey findet keine immutablen Objekte Allgemeine Java-Themen 3
H Threads Thread stirbt aber Objekte in ihm leben weiter?! Allgemeine Java-Themen 9
M Java Objekte in XML mit JAXB Allgemeine Java-Themen 9
C Strings und JSON Objekte so klein wie möglich im Speicher ablegen Allgemeine Java-Themen 5
H COM-Objekte/ AktiveX Objekte Allgemeine Java-Themen 4
C Script für Website mit Objekte Ausblenden Allgemeine Java-Themen 3
M Txt einlesen & Objekte erzeugen Allgemeine Java-Themen 2
X Objekte aus TableModel serialisieren und deserialisieren Allgemeine Java-Themen 4
T ObjectInputStream - Arrayliste, die unbekannte Objekte enthält Allgemeine Java-Themen 9
B class dateien "einlesen" und objekte erzeugen Allgemeine Java-Themen 6
D Grafische Objekte zeichnen Allgemeine Java-Themen 4
A Wie zur Laufzeit auf Objekte zugreifen Allgemeine Java-Themen 7
F Referenzen auf Objekte Allgemeine Java-Themen 5
H Eclipse und Objekte Allgemeine Java-Themen 6
S Objekte die Objekte enthalten: Keine Vererbung Allgemeine Java-Themen 4
I Über eine Liste iterieren und Objekte löschen. Wie löst man das sauber? Allgemeine Java-Themen 5
I Pattern zum Erweitern existierender Objekte Allgemeine Java-Themen 4
N Dynamische Objekte / DB Allgemeine Java-Themen 5
J Objekte binär speichern Allgemeine Java-Themen 10
TiME-SPLiNTER Unbekannte Anzahl serialisierter Objekte lesen Allgemeine Java-Themen 2
V Objekte in Kategorien einteilen. Allgemeine Java-Themen 6
F Wie zur Laufzeit ganz neue Objekte erzeugen? Allgemeine Java-Themen 5
A Dummy-Objekte für Webgui erzeugen Allgemeine Java-Themen 12
W Objekte speichern mit JFileChooser Allgemeine Java-Themen 8
D befehl auf mehrere objekte anwenden Allgemeine Java-Themen 7
L Objekte in Liste packen Allgemeine Java-Themen 2
S XML in Objekte wandeln. Euer Rat? Allgemeine Java-Themen 12
G Objekte serialisieren Allgemeine Java-Themen 2
L Parameter-Objekte verändern oder nicht? Allgemeine Java-Themen 6
D Objekte nur unter bestimmten Voraussetzungen erzeugen Allgemeine Java-Themen 4
S Objekte mit Arrays Allgemeine Java-Themen 9
F Objekte oder besser ID in Listen speichern? Allgemeine Java-Themen 2
S erzeugte objekte zählen Allgemeine Java-Themen 3
U auf Objekte mit variablem Namen zugreifen Allgemeine Java-Themen 4
Airwolf89 dynamischer Zugriff auf Variablen/ Objekte Allgemeine Java-Themen 4
Landei Objekte ohne Konstruktoraufruf erzeugen Allgemeine Java-Themen 7
E tiefe Kopie nicht serialisierbarer Objekte Allgemeine Java-Themen 3

Ähnliche Java Themen

Neue Themen


Oben