Innholdsfortegnelse:
Video: Technology Stacks - Computer Science for Business Leaders 2016 2025
Opprette en virtuell 3D-verden er enklere enn noensinne i JavaFX. I dette eksemplet lærer du å legge til et kule i JavaFX-programmet, animere det og legge til en lyskilde til den.
Trinn 1: Legg til en kule
Først legger du til en sfære, representert av Sphere-klassen. Sphere-konstruktøren aksepterer bare en enkelt parameter, som angir sfærens radius. For eksempel lager disse linjene en sfære som har en radius på 100, og oversetter den for å flytte den fra midtpunktet til din virtuelle verden:
Sphere sfære = ny Sphere (100); sfære. setTranslateX (-180); sfære. setTranslateY (-100); sfære. setTranslateZ (100); rot. getChildren (). legg (sfære);
I stedet for å bruke det samme blå Phong-materialet til sfæren, kan du gjøre noe mer interessant: Bruk et Phong-materiale laget av et bilde av en sylindrisk fremspring av jorden ved hjelp av denne koden:
Image earthImage = nytt bilde ("fil: jord. jpg"); PhongMaterial earthPhong = nytt PhongMaterial (); earthPhong. setDiffuseMap (earthImage); sfære. setMaterial (earthPhong);
Denne figuren viser den resulterende sfæren.
Du kan pakke inn et bilde rundt en sfære (eller et annet 3D-objekt, for den saks skyld) ved hjelp av denne teknikken. Du kan også få bildet for dette programmet fra Wikipedia. Bare søk etter Behrmann Projection og last ned filen. (Bruk Windows Paint til å beskjære kantene på bildet litt fordi bildet tilgjengelig på Wikipedia har en liten kant rundt kantene.)
Trinn to: Animer objektene
Whew! Din 3D virtuelle verden har nå et objekt: en kule som ser ut som jorden. Du kan også legge til andre objekter på dette tidspunktet.
I dette trinnet legger du til en animasjon for alle objekter for å få dem til å spinne. Hvert objekt får en enkel RotationTransition-animasjon. Først sfæren:
RotateTransition rt4 = ny RotateTransition (); RT4. setNode (sfære); RT4. setDuration (Varighet. millis (9000)); RT4. setAxis (Rotate. Y_AXIS); RT4. setByAngle (360); RT4. setCycleCount (Animasjon. INDEFINITT); RT4. setInterpolator (Interpolator. LINEAR); RT4. spille();
Etter at spillemetoden er kalt, begynner sfæren å spinne, slik at en fullstendig vri sin z-akse hvert tredje sekund.
Kula roterer rundt y-aksen, noe som skaper inntrykk av at verden er roterende. For sfæren er hastigheten satt til en revolusjon hvert 10. sekund.
Trinn tre: Legg til en lyskilde
Det siste skrittet i denne forgrunnen i 3D-programmeringen er å legge til en lyskilde.Lyskilden vil endre hele utseendet på scenen, som vist her.
For å legge til lyskilden, bruk følgende kode:
PointLight light = nytt PointLight (Color. WHITE); lys. setTranslateX (-1,000); lys. setTranslateY (100); lys. setTranslateZ (-1,000); rot. getChildren (). til (lett);
PointLight-klassen definerer en lyskilde som stammer fra et bestemt punkt i scenen og prosjekterer lys av den oppgitte fargen (i dette tilfellet god gammel hvit). For å skape lyseffekten, flytt lyset ved å oversette koordinatene 1 000 til venstre, 100 ned og 1 000 enheter mot brukeren. Resultatet gir gode skygger på baksiden av de spinnende objektene.
