Huis Persoonlijke financiën Java-programmering: objecten toevoegen, animeren en verlichten in 3D - dummy's

Java-programmering: objecten toevoegen, animeren en verlichten in 3D - dummy's

Inhoudsopgave:

Video: Toemen Modelsport - Bedrijfsovername Jasper Toemen 2025

Video: Toemen Modelsport - Bedrijfsovername Jasper Toemen 2025
Anonim

Het maken van een virtuele 3D-wereld is eenvoudiger dan ooit in JavaFX. In dit voorbeeld leert u een bol aan uw JavaFX-programma toe te voegen, het te animeren en er een lichtbron aan toe te voegen.

Stap één: voeg een bol toe

Voeg eerst een bol toe, weergegeven door de bolklasse. De Sphere constructor accepteert slechts één parameter, die de straal van de bol aangeeft. Deze lijnen maken bijvoorbeeld een bol waarvan de straal 100 is, en vertaalt deze vervolgens om hem van het middelpunt van uw virtuele wereld te verwijderen:

Sfeerbol = nieuwe bol (100); gebied. setTranslateX (-180); gebied. setTranslateY (-100); gebied. setTranslateZ (100); wortel. getChildren (). toe te voegen (bol);

In plaats van hetzelfde blauwe Phong-materiaal op de bol toe te passen, kunt u iets interessants doen: breng een Phong-materiaal aan dat is opgebouwd uit een afbeelding van een cilindrische projectie van de aarde met behulp van deze code:

Image earthImage = new Image ("bestand: earth. jpg"); PhongMaterial earth Phong = nieuw PhongMaterial (); earthPhong. setDiffuseMap (earthImage); gebied. setMaterial (earthPhong);

Deze figuur toont de resulterende bol.

Een bol met een cilindrische projectie van de aarde toegepast als het Phong-materiaal.

Met deze techniek kunt u elke afbeelding rond een bol (of een ander 3D-object) wikkelen. U kunt de afbeelding voor dit programma ook verkrijgen via Wikipedia. Zoek gewoon naar Behrmann-projectie en download het bestand vervolgens. (Gebruik Windows Paint om de randen van de afbeelding een beetje bij te snijden omdat de afbeelding die beschikbaar is op Wikipedia een kleine rand rond de randen heeft.)

Stap twee: animeer de objecten

Whew! Je 3D virtuele wereld heeft nu een object: een bol die op de aarde lijkt. U kunt op dit moment ook andere objecten toevoegen.

Voeg in deze stap een animatie toe aan alle objecten om ze te laten draaien. Elk object krijgt een eenvoudige RotationTransition-animatie. Eerst de bol:

RotateTransition rt4 = nieuwe RotateTransition (); RT4. setNode (bol); RT4. setDuration (duur. millis (9000)); RT4. setAxis (roteren. Y_AXIS); RT4. setByAngle (360); RT4. setCycleCount (animatie INDEFINITE); RT4. setInterpolator (Interpolator, LINEAR); RT4. spelen();

Nadat de afspeelmethode is aangeroepen, begint de bol te draaien en wordt elke drie seconden een volledige draai rond de z-as gemaakt.

De bol draait rond de y-as, waardoor de indruk ontstaat dat de wereld ronddraait. Voor de bol wordt de snelheid ingesteld op één omwenteling om de 10 seconden.

Stap drie: voeg een lichtbron toe

De laatste stap in dit uitstapje naar de wereld van 3D-programmering is het toevoegen van een lichtbron.De lichtbron zal het hele uiterlijk van de scène wijzigen, zoals hier wordt weergegeven.

Gebruik de volgende code om de lichtbron toe te voegen:

Uw 3D-wereld met een lichtbron.
PointLight-lampje = nieuwe PointLight (kleur, wit); licht. setTranslateX (-1000); licht. setTranslateY (100); licht. setTranslateZ (-1000); wortel. getChildren (). voeg (licht);

De klasse PointLight definieert een lichtbron die afkomstig is van een specifiek punt in de scène en projecteert licht van de opgegeven kleur (in dit geval goed oud wit). Om het lichteffect te creëren, verplaatst u het licht door de coördinaten 1, 000 naar links, 100 omlaag en 1, 000 eenheden naar de gebruiker te vertalen. Het resultaat werpt mooie schaduwen op de achterkant van de draaiende objecten.

Java-programmering: objecten toevoegen, animeren en verlichten in 3D - dummy's

Bewerkers keuze

Het menu Blender View - dummies

Het menu Blender View - dummies

Af en toe wilt u weten hoe een model eruitziet wanneer het wordt bekeken rechtstreeks vanaf de voorkant, zijkant of bovenkant. Blender heeft een aantal handige snelkoppelingen om snel over te schakelen naar deze weergaven. De meest voor de hand liggende manier is om het menu Beeld in de kop van de 3D-weergave te gebruiken, zoals links in de afbeelding. ...

Test uw mobiele site met DeviceAnywhere - dummies

Test uw mobiele site met DeviceAnywhere - dummies

Een geweldige optie voor het testen van mobiele ontwerpen op een grote verscheidenheid van apparaten die een desktopcomputer gebruiken, geeft DeviceAnywhere u toegang tot meer dan 1, 500 handsets en test ze zoals ze zouden uitvoeren op providers in de Verenigde Staten, Canada, Engeland, Spanje, Duitsland, Frankrijk en Brazilië. De elektronische ingewanden van alle apparaten zijn aangesloten op ...

De add-onsopties in Blender's Gebruikersvoorkeuren - dummies

De add-onsopties in Blender's Gebruikersvoorkeuren - dummies

Blender wordt geleverd met een assortiment van uitbreidingen, add-ons genaamd, die gebruikers aanvullende mogelijkheden bieden binnen Blender. Als je bijvoorbeeld een oudgediende Blenderhead bent en je bent gewend aan het oude Spatiebalkmenu van veel eerdere versies van Blender, is er een add-on die die functie terugzet. Andere add-ons wijzigen de interface van Blender, voegen nieuwe primitieve objecten toe, ...

Bewerkers keuze

Football's Defence Team: The Linebackers - dummies

Football's Defence Team: The Linebackers - dummies

Door het ontwerp van de American football defense, zijn linebackers de leiders van die ploeg van elf man. De rest van de verdediging van een team kijkt op verschillende manieren naar de linebackers: Linebackers zijn de verdedigende quarterbacks en coaches op het veld en beginnen elk spel door de verdedigende call te geven. Ze bepalen de norm voor elke ...

Wat maakt een goede verdedigingslineman in het voetbal - Dummies

Wat maakt een goede verdedigingslineman in het voetbal - Dummies

Grote verdedigende linemen in het Amerikaanse voetbal hebben een combinatie nodig van grootte, snelheid, sterkte en duurzaamheid, die niet bij veel spelers wordt aangetroffen. Een goede verdedigende lineman heeft de meerderheid van deze kwaliteiten: Grootte: een defensieve lijnwachter moet 260 pond of groter zijn. Duurzaamheid: defensieve linemen moeten de bestraffing van een klap kunnen weerstaan ​​...

De positie in een secundaire baan - dummies

De positie in een secundaire baan - dummies

De secundaire is de naam van de spelersgroep op een Amerikaanse voetbalteam dat het verdedigende achterveld vormt. Alle spelers die deel uitmaken van het secundair worden verdedigende ruggen genoemd, maar die categorie is verder verdeeld. In een notendop: deze spelers zijn verantwoordelijk voor het voorkomen dat de ontvangers van de tegenstander de ...

Bewerkers keuze

Digitale SLR camerabesturing op de achterkant - dummy's

Digitale SLR camerabesturing op de achterkant - dummy's

Omdat u met een DSLR-camera zoveel verschillende dingen kunt doen , de leercurve is een beetje steil. Je bent echter een serieuzere fotograaf, dus die opties zijn waarschijnlijk de reden dat je in de eerste plaats een digitale spiegelreflexcamera hebt gekocht, zelfs als je al die bedieningselementen in eerste instantie ontmoedigend vindt. Deze lijst ...

4 Plaatsen om belichtingsinstellingen weer te geven op uw digitale SLR-camera - dummies

4 Plaatsen om belichtingsinstellingen weer te geven op uw digitale SLR-camera - dummies

Behalve dat u oplet voor de algemene belichting, weergegeven op de belichtingsschaal van uw digitale spiegelreflexcamera, moet u de drie belichtingsinstellingen volgen: diafragma, sluitertijd en ISO. Sluitertijd en diafragma zijn vaak gepaard; ISO heeft de neiging om alleen te zijn. Je kunt ze hier vinden:

9 Favoriete low-cost gadgets voor dSLR-fotografie - dummies

9 Favoriete low-cost gadgets voor dSLR-fotografie - dummies

Accessorizing van uw DSLR hoeft niet duur zijn. Hier zijn tien coole gadgets die minder dan $ 100 kosten en die je spek kunnen besparen in tijden van nood. (En wie vindt het niet leuk om af en toe een beetje bacon te waarderen?) Je zou de meeste van deze items in een kleine doos in de kofferbak van mijn auto kunnen bewaren - ...