# 3D Gegenstand in einem 2D Koordinatensystem darstellen.



## AdrWgl (11. Mrz 2005)

Hallo Zusammen,

ich habe folgendes Problem, ich habe einen Gegenstand dessen einzelnen Punkte mir im Raum bekannt sind.

Beispiel:

1. Punkt (x=10,y=10,z=10)
2. Punkt (x=20,y=10,z=30)
...

Somit würde sich der zweite Punkt um x+10 und z+20 zum ersten Punkt verschieben. Diesen Gegenstand möchte ich nun in einem Fenster mit den Achsen x,y darstellen. Die dritte Achse z soll in diesem Fenster zusätzlich als Veränderung in der Farbe (Z+ = Farbe wird dunkler) dargestellt werden. Ich hoffe es kann sich jemand vorstellen, was ich meine  :wink: 

Im Beispiel eines Würfels, soll man eine Rechteckige Fläche sehen und die weiter hinten im Bild stehenden Flächen räumlich mit einer dunkleren Farbe dargestellt werden.

Hat jemand eine Idee wie man dieses Problem elegant realisieren könnte?

Vielen Dank im Voraus für eure Hilfe.


----------



## Grizzly (11. Mrz 2005)

Habe ich das richtig verstanden: Du willst eine Mini 3D Engine schreiben? :bahnhof:


----------



## AdrWgl (11. Mrz 2005)

also ich möchte lediglich eine viewer für das ein bildformat bauen, das seine bilder im folgenden format abspeichert:

x(16bit)/y(16bit)/z(16bit)/r(8-24bit)/g(8-24bit)/b(8-24bit)

x,y,z sind jeweils achsen. r,g,b die farbwerte für diesen punkt und für die daraus entsehende linie zum nächsten punkt.
das ganze könnte dann in einem Fenster so aussehen: 

http://www.laserfreak.net/scale.php?f=xxx/data/gallery/folder_lasershows/mixed/16.jpg

gruss


----------



## Bleiglanz (12. Mrz 2005)

nimm einfach das java graphics api, ist wahrscheinlich simpel

x y sind ja einfach die koordinaten (musst du eben auf ein JPanel skalieren)

r g b sind die Farbe

die z koordinate übersetzt du irgendwie in eine Farbänderung (grösser = dunkler)

z.B. z irgenwie skalieren und ein paarmal java.awt.Color

darker() 

aufrufen


----------

