Java3D ile Grafik Programlama 7

Oğuz~#>

Kıdemli Üye
5 Tem 2009
4,772
17
Bursa
Not: Bu yazıyı baya uzun bir süre önce(1 sene önce) java.sun.com sitesindeki bir bu tutoriallı açıklamaya çalıştım. Java3D o günden bugüne baya yenilikler gerçekleşti. Ama dökümanın genel anlamını kaybetmedigi düşünerek yayınlıyorum. Tabiki çevirideki eksikliklerden ve anlam bozukluklarından dolayı affola

Önceki tutorialda bundan iki önceki tutorialdaki yaptığımız static rotation ile bir önceki tutorialdaki continuous rotation birleştirelim.
Kod:
import java.applet.Applet; import java.awt.BorderLayout; import java.awt.Frame; import java.awt.event.*; import com.sun.j3d.utils.applet.MainFrame; import com.sun.j3d.utils.universe.*; import com.sun.j3d.utils.geometry.ColorCube; import javax.media.j3d.*; import javax.vecmath.*;  public class HelloJava3Da extends Applet {  public HelloJava3Da() {  setLayout(new BorderLayout());  Canvas3D canvas3D = new Canvas3D(null);   add("Center", canvas3D);  BranchGroup scene = createSceneGraph();  //Content kısmı compile edilir.  scene.compile();  SimpleUniverse simpleU = new SimpleUniverse(canvas3D);  simpleU.getViewingPlatform().setNominalViewingTransform();  simpleU.addBranchGraph(scene);  }     public BranchGroup createSceneGraph() {   BranchGroup objRoot = new BranchGroup();   Transform3D rotate = new Transform3D();   Transform3D tempRotate = new Transform3D();   rotate.rotX(Math.PI/4.0d);  tempRotate.rotY(Math.PI/5.0d);  rotate.mul(tempRotate);  TransformGroup objRotate = new TransformGroup(rotate);  objSpin.setCapability(TransformGroup.ALLOW_TRANSFORM_WRITE);   objRoot.addChild(objRotate);  objRotate.addChild(objSpin);  objSpin.addChild(new ColorCube(0.4));  Transform3D yAxis = new Transform3D(); Alpha rotationAlpha = new Alpha(-1, 4000);    RotationInterpolator rotator = new RotationInterpolator(rotationAlpha, objSpin, yAxis,  0.0f, (float) Math.PI*2.0f);  BoundingSphere bounds = new BoundingSphere(); rotator.setSchedulingBounds(bounds); objSpin.addChild(rotator);  return objRoot;  }    public static **** main(String[] args) {  Frame frame = new MainFrame(new HelloJava3Da(), 256, 256);  } }

java3d_7_1.gif


java3d_7_2.gif


Kaynak Kod: HelloJava3Dd.java

 
Üst

Turkhackteam.org internet sitesi 5651 sayılı kanun’un 2. maddesinin 1. fıkrasının m) bendi ile aynı kanunun 5. maddesi kapsamında "Yer Sağlayıcı" konumundadır. İçerikler ön onay olmaksızın tamamen kullanıcılar tarafından oluşturulmaktadır. Turkhackteam.org; Yer sağlayıcı olarak, kullanıcılar tarafından oluşturulan içeriği ya da hukuka aykırı paylaşımı kontrol etmekle ya da araştırmakla yükümlü değildir. Türkhackteam saldırı timleri Türk sitelerine hiçbir zararlı faaliyette bulunmaz. Türkhackteam üyelerinin yaptığı bireysel hack faaliyetlerinden Türkhackteam sorumlu değildir. Sitelerinize Türkhackteam ismi kullanılarak hack faaliyetinde bulunulursa, site-sunucu erişim loglarından bu faaliyeti gerçekleştiren ip adresini tespit edip diğer kanıtlarla birlikte savcılığa suç duyurusunda bulununuz.