Ahoj, potřeboval bych poradit se zmenšením a posunem objektu po jeho
načtení z 3ds souboru. Používám následující kód:
Děkuji David


import java.awt.*;
import javax.swing.*;
import java.awt.BorderLayout;
import java.awt.GraphicsConfiguration;
import com.sun.j3d.utils.universe.*;
import javax.media.j3d.*;
import com.mnstarfire.loaders3d.Inspector3DS;
import javax.vecmath.Point3d;

public class Frame1
    extends JFrame {
  JPanel contentPane;
  BorderLayout borderLayout1 = new BorderLayout();

  public Frame1() {
    try {
      setDefaultCloseOperation(EXIT_ON_CLOSE);
      jbInit();
     // ZAVOLAT VLASTNÍ VYTVOŘENÍ 3D SCENE CONTENTPANE !!!
      Init();
     // NEVOLAT TENTO CONSTRUKTOR !!!
     // setLayout(new BorderLayout());


    }
    catch (Exception exception) {
      exception.printStackTrace();
    }
  }

public void Init(){
   GraphicsConfiguration config =
  SimpleUniverse.getPreferredConfiguration();

Canvas3D canvas3D = new Canvas3D(config);
  // add("Center", canvas3D); NAHRADIT VLASTNÍM getContentPane().add
("Center", canvas3D); !!!
  getContentPane().add("Center", canvas3D);

BranchGroup scene = createSceneGraph();
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);

     TransformGroup objSpin = new TransformGroup();
     objSpin.setCapability(TransformGroup.ALLOW_TRANSFORM_WRITE);

     Transform3D t3d = new Transform3D();
     t3d.setScale(0.2);
     objSpin.setTransform(t3d);

     objRoot.addChild(objSpin1);

     objRoot.addChild(objRotate);
     objRotate.addChild(objSpin);

    Inspector3DS loader = new Inspector3DS("mb.3ds"); // constructor
    loader.parseIt(); // process the file
    TransformGroup theModel = loader.getModel(); // načíst model jako
children

    objSpin.addChild(theModel); // model je moc  velký a proto ho nevidím
TADY S TÍM POTŘEBUJI PORADIT   >>>>>> DĚKUJI

     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(new Point3d(0.0,0.0,0.0), 100.0);
     rotator.setSchedulingBounds(bounds);
     objRoot.addChild(rotator);
     return objRoot;
 }

  private void jbInit() throws Exception {
  // NAHRADIT VLASTNÍM 3D SCENE CONTENTPANE !!!
  //contentPane = (JPanel) getContentPane();
  //contentPane.setLayout(borderLayout1);

    setSize(new Dimension(400, 400));
    setTitle("Frame Title");
  }
}

Odpovedet emailem