Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import com.sun.j3d.utils.universe.SimpleUniverse;
- import com.sun.j3d.utils.geometry.*;
- import javax.media.j3d.*;
- import javax.media.j3d.Canvas3D;
- import javax.media.j3d.Transform3D;
- import javax.swing.JFrame;
- import javax.vecmath.*;
- import java.awt.*;
- public class probny3d extends JFrame {
- private Transform3D TObrot1 = new Transform3D();
- private Transform3D TObrot2 = new Transform3D();
- probny3d(){
- super("Proba świata 3D");
- setDefaultCloseOperation(EXIT_ON_CLOSE);
- setResizable(false);
- setVisible(true);
- GraphicsConfiguration config = SimpleUniverse.getPreferredConfiguration();
- Canvas3D canvas = new Canvas3D(config);
- canvas.setSize(1000, 600);
- // add(canvas);
- pack();
- BranchGroup scena1 = tworcaSceny();
- scena1.compile();
- SimpleUniverse universe = new SimpleUniverse(canvas);
- Transform3D kamera = new Transform3D();
- kamera.set(new Vector3f(0.0f, 0.0f, 3.0f));
- universe.getViewingPlatform().getViewPlatformTransform().setTransform(kamera);
- universe.addBranchGraph(scena1);
- }
- BranchGroup tworcaSceny() {
- BranchGroup arena = new BranchGroup();
- ColorCube kostka = new ColorCube(0.2);
- TransformGroup TObracanie = new TransformGroup();
- TObracanie.setCapability(TransformGroup.ALLOW_TRANSFORM_WRITE);
- arena.addChild(TObracanie);
- TObracanie.addChild(kostka);
- TObracanie.addChild(rotuj(TObracanie));
- arena.compile();
- return arena;
- }
- private RotationInterpolator rotuj(TransformGroup TObracanie){
- RotationInterpolator rototargacz = new RotationInterpolator(new Alpha(-1, 9000), TObracanie);
- rototargacz.setAxisOfRotation(TObrotOKat());
- BoundingSphere granicaSferyczna = new BoundingSphere();
- rototargacz.setSchedulingBounds(granicaSferyczna);
- return rototargacz;
- }
- private Transform3D TObrotOKat(){
- TObrot1.rotX(Math.PI/8.0d);
- // TObrot2.rotY(Math.PI/4.0d);
- // TObrot1.mul(TObrot2);
- return TObrot1;
- }
- public static void main(String[] args) {
- new probny3d().setVisible(true);
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement