Hallo Community,
ich habe ein Problem. Ich habe mit der SuM-Bibliothek eine CAD-Zeichnung entworfen. Wenn man z.B. auf der Tastatur w drückt wird eine Wand gezeichnet, wenn man auf t drückt eine Tür und so weiter. Das funktioniert auch. Jetzt möchte ich die Zeichnung die man erstellet als Bild speichern (z.B. beim schliessen), oder in einer Variable speichern. Wie kann ich das realisieren?
CAD Hauptprogramm:
Alles anzeigen
Planstift (Vordefinierte Zeichnung der Wand, der Tür...):
Alles anzeigen
Vielen Dank schon mal im vorraus.
Gast1255
ich habe ein Problem. Ich habe mit der SuM-Bibliothek eine CAD-Zeichnung entworfen. Wenn man z.B. auf der Tastatur w drückt wird eine Wand gezeichnet, wenn man auf t drückt eine Tür und so weiter. Das funktioniert auch. Jetzt möchte ich die Zeichnung die man erstellet als Bild speichern (z.B. beim schliessen), oder in einer Variable speichern. Wie kann ich das realisieren?
CAD Hauptprogramm:
Quellcode
- import sum.kern.*;
- /**
- * @author
- * @version
- */
- public class CAD
- {
- // Objekte
- Tastatur dieTastatur;
- Maus dieMaus;
- Bildschirm derBildschirm;
- Planstift meinStift;
- boolean stop = false;
- // int i;
- // Konstruktor
- public CAD()
- {
- derBildschirm = new Bildschirm();
- dieMaus = new Maus();
- dieTastatur = new Tastatur();
- meinStift = new Planstift();
- fuehreAus();
- }
- // Dienste
- public void fuehreAus()
- {
- meinStift.bewegeBis(100,150);
- meinStift.runter();
- while(stop==false)
- {
- if(dieTastatur.wurdeGedrueckt())
- {
- if(dieTastatur.zeichen()=='w')
- {
- meinStift.zeichneWand();
- }
- if(dieTastatur.zeichen()=='f')
- {
- meinStift.zeichneFenster();
- }
- if(dieTastatur.zeichen()=='t')
- {
- meinStift.zeichneTuer();
- }
- if(dieTastatur.zeichen()=='l')
- {
- meinStift.zeichneLinkeEcke();
- }
- if(dieTastatur.zeichen()=='r')
- {
- meinStift.zeichneRechteEcke();
- }
- dieTastatur.weiter();
- }
- //Leerlauf
- while(dieMaus.istGedrueckt())
- {}
- }
- // Aufraeumen
- dieTastatur.gibFrei();
- meinStift.gibFrei();
- derBildschirm.gibFrei();
- }
- }
Planstift (Vordefinierte Zeichnung der Wand, der Tür...):
Quellcode
- import sum.kern.*;
- /**
- * @author Kevin & Yifan
- * @version 08.03.2012
- */
- public class Planstift extends Buntstift
- {
- // Bezugsobjekte
- // Attribute
- // Konstruktor
- public Planstift()
- {
- super();
- }
- public void zeichneWand()
- {
- this.runter();
- this.bewegeUm(20);
- this.hoch();
- this.dreheUm(-90);
- this.bewegeUm(5);
- this.runter();
- this.dreheUm(90);
- this.bewegeUm(-20);
- this.hoch();
- this.bewegeUm(20);
- this.dreheUm(90);
- this.bewegeUm(5);
- this.dreheUm(-90);
- }
- public void zeichneFenster()
- {
- this.dreheUm(-90);
- this.runter();
- this.bewegeUm(5);
- this.dreheUm(180);
- this.bewegeUm(2.5);
- this.dreheUm(-90);
- this.bewegeUm(20);
- this.dreheUm(-90);
- this.bewegeUm(2.5);
- this.dreheUm(180);
- this.bewegeUm(5);
- this.dreheUm(-90);
- this.hoch();
- }
- public void zeichneLinkeEcke()
- {
- this.bewegeUm(5);
- this.runter();
- this.dreheUm(-90);
- this.bewegeUm(5);
- this.dreheUm(-90);
- this.bewegeUm(5);
- this.hoch();
- this.dreheUm(-90);
- this.bewegeUm(5);
- }
- public void zeichneRechteEcke()
- {
- this.runter();
- this.bewegeUm(5);
- this.dreheUm(-90);
- this.bewegeUm(5);
- this.hoch();
- }
- public void zeichneTuer()
- {
- this.dreheUm(-90);
- this.runter();
- this.bewegeUm(5);
- this.dreheUm(180);
- this.bewegeUm(2.5);
- this.dreheUm(-105);
- this.bewegeUm(20);
- this.dreheUm(180);
- this.bewegeUm(20);
- this.dreheUm(105);
- this.bewegeUm(2.5);
- this.dreheUm(90);
- this.hoch();
- this.bewegeUm(20);
- this.runter();
- this.dreheUm(90);
- this.bewegeUm(5);
- this.dreheUm(-90);
- this.hoch();
- }
- }
Vielen Dank schon mal im vorraus.
Gast1255