Announcement

Collapse
No announcement yet.

kleine Frage zu Java (Bitte um schnelle Hilfe)

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • kleine Frage zu Java (Bitte um schnelle Hilfe)

    Hallo,

    ich lerne Java und Java3D Programmierung und ich habe kurze Fragen dazu.
    Deswegen suche ich nach schneller Hilfe dabei.

    Ich hoffe, hier Hilfe zu kriegen.

    Jetzt habe ich diese folgende kurze Frage:

    Ich habe bis jetzt das Programm (Read.java) geschrieben, damit ich
    ich eine bestimmte Editorseite in Java aufrufen kann.
    Dieses Programm steht im Anhang als .zip Datei. (Read.zip)

    Jetzt muss ich in diesem Programm ein Fenster öffnen und eine Editorseite wählen.

    Statt zu jeder Editorseite das Programm wieder zu schreiben und den Platz der Editorseite zu geben. Wie: ("F:/Aufgabe1/text.txt");.

    Bitte wenn jemand mir dabei helfen kann und will, bin ich sehr dankbar.

    Ich lerne ganz neu Programmierung vor allem Java3D und ich muss nach schneller Hilfe suchen.

    Für weitere Erklärungen stehe ich sofort zur Verfügung.

    Ich bin auch unter der folgenden e-Mail Adresse erreichbar:

    [email protected]


    Mit besten Grüßen

    Angelo
    Attached Files

  • #2
    Mahlzeit,

    ich weiß zwar net so genau was du mit Editorseite meinst (geht aus dem Source net so hervor (vor allem weil du pro Zeile der Datei nur 3 Punkte in einen 3dVector lädst ^^)), aber falls es darum geht, den Pfad der zu ladenden Datei zu ändern, benutze doch einfach Kommandozeilenparameter(Das String[] args Array der main Methode liefert diese).

    MfG
    hpf

    Comment


    • #3
      Hallo,

      diese Frage war alt von mir.

      Jetzt habe ich diese Frage gelöst, aber ich habe andere kurze neue Frage.

      Zunächst erkläre ich euch wieder die ganze Aufgabe, damit meine aktuellen Fragen verständlich sind.

      Die Editorseite im Anhang (Text1.txt) enthält 3 Komponenten Zahlen, die so näh beieinander liegen.

      Was ich bis jetzt gemacht habe, ist es:

      1- Zunächst habe ich die Editorseite aufgerufen, dann die Punkte als Kugeln mit kleinem Radius gezeichnet.

      2- Aber wie ich euch schon erzählt habe, die Zahlen von (Text1.txt) sind so näh beieinander. Deswegen haben die Kugeln davon am Anfang nur als eine Kugel erscheint. Dazu habe ich automatische Skalierung gemacht, damit die richtige Kugelform gekriegt habe.

      3- Das ist bis jetzt alles erledigt.

      Was mir jetzt fehlt, ist es:

      1- Die Kugeln der komplizierten Liste (Text1.txt) sehen zusammen als ein Rechteck aus. Aber ihre richtige Form ist Kubik und nicht Rechteck.
      Der Grund dafür ist:
      Der Fluchtpunkt steht in der Mitte der geometrischen Form (dieses Rechtecks). Deswegen sehen sie so aus und auch deswegen ist die aktuelle Projektion, die ich jetzt habe, Zentralprojektion.
      Um die richtige geometrische Form (kubische Form) zu haben, muss der Fluchtpunkt etwas fern von der geometrischen Form stehen (oben oder unten) und nicht auf der der geometrischen Form. Wie hier auf der Mitte.
      Somit wird die Projektion Parallelprojektion sein und nicht mehr Zentralprojektion. Damit kann ich die kubische Form haben.


      2- Auf anderer Seite habe ich die Kugeln auf roter Farbe gezeichnet und das weitere Bild ist schwarz.
      Was ich jetzt auch machen muss, ist es:
      Der Rand von jeder Kugel muss eine andere Farbe als Rot und schwarz haben. Wie blau.
      Ich kann selbst die Farbe der ganzen Kugel ändern, aber nur des Rands, weiße ich es noch nicht.

      Auf den folgenden Internetseiten stehen das ganze bis jetzt erledigte Programm (Project.zip) und die Editorseite zum Bearbeiten (Text1.txt).


      http://rapidshare.com/files/29601441/Project.zip.html

      http://rapidshare.com/files/29601568/Text1.txt.html

      Wir klicken auf Run As auf der Seite HelloJava3D.java, damit das ganze Programm aufgerufen wird.
      Dann wählen wir auf dem geöffneten Fenster die Editorseite und klicken wir auf Öffnen, damit die Zeichnung erzeugt wird.
      Ich habe es in Eclipse bearbeitet.

      Ich habe versucht es selbst zu lösen.

      Ich habe in Google gefunden, dass ich bei der ersten Frage mit TransformGroup createCamera; beschäftigen muss.
      Diese Teillösung steht im Anhang als Wordseite unter der folgenden Internetseite:

      http://rapidshare.com/files/30713301...amera.doc.html

      (TransformGroup createCamera.doc)

      Aber es hat sicht nicht geklappt.
      Ich kriege Fehlermeldung auf der letzten Linie:
      return transform;


      Ich habe dieses Teil nach diesem folgenden Teil geschrieben:

      Appearance createAppearance() {

      Color3f lColor1 = new Color3f(1.0f, 0.0f, 0.0f);
      ColoringAttributes caL1 = new ColoringAttributes();
      caL1.setColor(lColor1);
      Appearance appL1 = new Appearance();
      appL1.setColoringAttributes(caL1);
      return appL1;

      Vielleicht habt ihr bessere Idee für beide Fragen?

      Für weitere Erklärungen stehe ich sofort zur Verfügung.

      Ich bin auch unter der folgenden e-Mail Adresse verfügbar:

      [email protected]


      Mit besten Grüßen

      Angelo
      Zuletzt editiert von AngeloBa; 11.05.2007, 22:23.

      Comment


      • #4
        Mahlzeit,

        also, zur ersten Frage:
        Ich denke dass du mit einer Änderung des Viewports dein Ziel erreichen wirst, leider kann ich dir nicht genau sagen, wie man das unter JAVA 3D macht (bisher habe ich nur mit OpenGL unter C++ garbeitet) .

        zur zweiten Frage:
        Erste Idee:
        Da es sich um Kugel(die ja keine dierekten kanten3(Kreis) hat) handelt, wird
        es schwierig werden nur die ränder farblich zu verändern.
        Was du versuchen könntest, ist für die kugeln den Wireframe mit eizublenden,
        was allerdings zur Folge hat, dass alle Flächen der Kugel (im Wireframe) mit
        umrandet werden.
        Zweite Idee:
        Du könntest es mit einem Glow Effekt(z.B. Shader) versuchen, wobei ich nicht
        weiß in wieweit das mit Java3D funktioniert.

        mfg
        hpf

        Comment

        Working...
        X