Advertisement
Guest User

Untitled

a guest
May 30th, 2015
286
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 2.45 KB | None | 0 0
  1.  
  2. import com.sun.j3d.utils.universe.SimpleUniverse;
  3. import com.sun.j3d.utils.geometry.*;
  4. import javax.media.j3d.*;
  5. import javax.media.j3d.Canvas3D;
  6. import javax.media.j3d.Transform3D;
  7. import javax.swing.JFrame;
  8. import javax.vecmath.*;
  9. import java.awt.*;
  10.  
  11.  
  12. public class probny3d extends JFrame {
  13.    
  14.     private Transform3D TObrot1 = new Transform3D();
  15.     private Transform3D TObrot2 = new Transform3D();
  16.    
  17.     probny3d(){
  18.         super("Proba świata 3D");
  19.         setDefaultCloseOperation(EXIT_ON_CLOSE);
  20.         setResizable(false);
  21.         setVisible(true);
  22.        
  23.         GraphicsConfiguration config = SimpleUniverse.getPreferredConfiguration();
  24.         Canvas3D canvas = new Canvas3D(config);
  25.         canvas.setSize(1000, 600);
  26.       //  add(canvas);
  27.        
  28.         pack();
  29.        
  30.         BranchGroup scena1 = tworcaSceny();    
  31.         scena1.compile();
  32.        
  33.         SimpleUniverse universe = new SimpleUniverse(canvas);
  34.        
  35.             Transform3D kamera = new Transform3D();
  36.             kamera.set(new Vector3f(0.0f, 0.0f, 3.0f));
  37.        
  38.         universe.getViewingPlatform().getViewPlatformTransform().setTransform(kamera);
  39.         universe.addBranchGraph(scena1);
  40.                
  41.     }  
  42.    
  43.     BranchGroup tworcaSceny() {
  44.         BranchGroup arena = new BranchGroup();
  45.        
  46.         ColorCube kostka = new ColorCube(0.2);
  47.        
  48.         TransformGroup TObracanie = new TransformGroup();
  49.             TObracanie.setCapability(TransformGroup.ALLOW_TRANSFORM_WRITE);
  50.             arena.addChild(TObracanie);
  51.             TObracanie.addChild(kostka);
  52.             TObracanie.addChild(rotuj(TObracanie));
  53.            
  54.         arena.compile();
  55.         return arena;
  56.     }
  57.    
  58.     private RotationInterpolator rotuj(TransformGroup TObracanie){
  59.        
  60.         RotationInterpolator rototargacz = new RotationInterpolator(new Alpha(-1, 9000), TObracanie);
  61.             rototargacz.setAxisOfRotation(TObrotOKat());
  62.        
  63.         BoundingSphere granicaSferyczna = new BoundingSphere();
  64.             rototargacz.setSchedulingBounds(granicaSferyczna);
  65.        
  66.         return rototargacz;  
  67.     }
  68.    
  69.     private Transform3D TObrotOKat(){
  70.         TObrot1.rotX(Math.PI/8.0d);
  71.   //      TObrot2.rotY(Math.PI/4.0d);
  72.   //      TObrot1.mul(TObrot2);
  73.         return TObrot1;
  74.                 }
  75.    
  76.    
  77.     public static void main(String[] args) {
  78.         new probny3d().setVisible(true);
  79.     }
  80.    
  81. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement