/** A Java3D fejezet példaprogramjai.
A fejezetben a Java programozási nyelv és a háromdimenziós grafika kapcsolatát tárgyaljuk. Először megismerkedünk a háromdimenziós számítógépes grafika alapjaival, majd átfogó képet adunk a Java3D kialakulásáról, szerkezetéről, működési koncepciójáról, elsősorban elméleti síkon. A következő nagy részben részletes gyakorlati útmutatást adunk az API (Application Programming Interface) programozására. Az anyag terjedelmes, 7 interfészt és 164 osztályt definiáltak a {@code javax.media.j3d} csomagban, valamint 43 osztályt a {@code javax.vecmath} csomagban, ezért nem tudunk apró részletességgel foglalkozni minden osztállyal. A Java3D API bemutatása után röviden tárgyaljuk a vecmath csomag lehetőségeit, majd végül egy szójegyzéket találhatunk, amely a leggyakoribb 3D-vel, illetve Java3D-vel kapcsolatos fogalmak rövid definícióit tartalmazza.
Figyelem! A példaprogramok lefordításához és futtatásához telepíteni kell a Java 3D API-t!
Tartalomjegyzék a hivatkozott referenciákkal és felhasznált képekkel:
Bevezetés
A háromdimenziós számítógépes grafikáról
A modellezés
  • Képek:
    • Egy modellezőprogram (Maya) felhasználói felülete
Poligon modellezés
  • Képek:
    1. A kiindulási alakzat egy téglatest
    2. Az oldallapok kihúzása
    3. A kihúzott oldallapok újbóli kihúzása
    4. Az első és felső lapok kihúzása
    5. A kihúzott felső lap újbóli kihúzása
    6. Simítás felosztással
Magasságmezők
  • Képek:
    • Magasságmező mint szürkeárnyalatos kép, és a belőle származó felület
Parametrikus felületek
Szorzatfelületek
  • Képek:
    • Egy explicit felület paramétervonalai
NURBS felület, felületszobrászat
  • Képek:
    • A vezérlőpontok módosítása és felületszobrászat
Konstruktív tömörtest geometria alapú modellezés
  • Képek:
    • Egyesítés, különbség, metszet
    • Összetett objektum felépítése halmazműveletekkel
Térfogati modellek
  • Képek:
    • CT berendezéssel mért térfogati adatok megjelenítése
A képszintézis
  • Képek:
    • A képszintézis célja a valós világ illúziójának keltése
A képszintézis lépései
  • Képek:
    • Felületi anyagmodellek
Az árnyalási egyenlet egyszerűsített változata
Transzformációk
A Java3D felépítése
Színtér-gráf
  • Képek:
    • Színtér-gráf hierarchia
Renderelési modellek
  • Képek:
    • Egy lehetséges példa a részgráf optimalizálására
Megjelenítési modellek
A Java3D programozásáról
Kezdetek: {@link elte.java2_utikalauz5.java3d.HelloJava3D} alkalmazás
Térbeli alakzatok elhelyezése és attribútumai
3D-s testek: Shape3D, GeometryArray
  • Referenciák:
    • A {@link elte.java2_utikalauz5.java3d.PointArrayDemo} példaprogram
    • A {@link elte.java2_utikalauz5.java3d.LineArrayDemo} példaprogram
    • A {@link elte.java2_utikalauz5.java3d.LineStripArrayDemo} példaprogram
    • A {@link elte.java2_utikalauz5.java3d.TriangleArrayDemo} példaprogram
    • A {@link elte.java2_utikalauz5.java3d.TriangleFanArrayDemo} példaprogram
    • A {@link elte.java2_utikalauz5.java3d.TriangleStripArrayDemo} példaprogram
    • A {@link elte.java2_utikalauz5.java3d.QuadArrayDemo} példaprogram
  • Képek:
    • PointArray és LineArray
    • LineStrip és LineStripArray
    • TriangleArray és QuadArray
    • TriangleFan és TriangleStrip
3D-s szöveg: Text3D
  • Referenciák:
    • A {@link elte.java2_utikalauz5.java3d.Text3DDemo} példaprogram
  • Képek:
3D-s megjelenés: Appearance
  • Referenciák:
    • Az {@link elte.java2_utikalauz5.java3d.AppearanceDemo} példaprogram
  • Képek:
Transzformációk
Textúrázás
  • Referenciák:
    • A {@link elte.java2_utikalauz5.java3d.TextureDemo} példaprogram
  • Képek:
    • Textúrázás folyamata
A színtér-gráf rendszerezése
Csoportok: a Group csomópont
  • Referenciák:
    • A {@link elte.java2_utikalauz5.java3d.SwitchDemo} példaprogram
Osztott részgráfok
Kirajzolási alternatívák
Raster
  • Referenciák:
    • A {@link elte.java2_utikalauz5.java3d.RasterDemo} példaprogram
  • Képek:
A Java3D nézet modell programozása
Színtér elemek viselkedése
Viselkedési modell: Behavior csomópont
  • Referenciák:
    • A {@link elte.java2_utikalauz5.java3d.BehaviorDemo} példaprogram
Interpolátorok
  • Referenciák:
    • Az {@link elte.java2_utikalauz5.java3d.InterpolatorDemo} példaprogram
  • Képek:
    • Alpha függvény
Különleges Behavior osztályok
Morph
Interakció a színtérrel
Kijelölés: Pick
  • Referenciák:
    • A {@link elte.java2_utikalauz5.java3d.PickingDemo} példaprogram
Beviteli eszközök
A virtuális világ további elemei
Fényforrások
  • Referenciák:
    • A {@link elte.java2_utikalauz5.java3d.LightingDemo} példaprogram
  • Képek:
Háttér
  • Referenciák:
    • A {@link elte.java2_utikalauz5.java3d.BackgroundDemo} példaprogram
  • Képek:
Köd
  • Referenciák:
    • A {@link elte.java2_utikalauz5.java3d.FogDemo} példaprogram
  • Képek:
Java3D hangforrások
Akusztikus jellemzők
A VecMath csomag
Szójegyzék
@link.forrásfájl {@docRoot}/../data/java3d/src package-info.java @author Antal György */ package elte.java2_utikalauz5.java3d;