public BranchGroup construitScene(String nomFichier) {
  TransformGroup vpTrans = null;
  BoundingSphere domaineInteractionSouris = null;

  vpTrans = univers.getViewingPlatform().getViewPlatformTransform();

  arbreContenus.addChild(new Axis());
  TransformGroup homothetieTG = new TransformGroup();
  Transform3D t3d = new Transform3D();
  t3d.setScale(0.7);
  homothetieTG.setTransform(t3d);
  arbreContenus.addChild(homothetieTG);
  arbreContenus.addChild(new Axis());

  TransformGroup navireTG = new TransformGroup();
  navireTG.setCapability(TransformGroup.ALLOW_TRANSFORM_WRITE);
  navireTG.setCapability(TransformGroup.ALLOW_TRANSFORM_READ);
  homothetieTG.addChild(navireTG);

  int flags = ObjectFile.RESIZE;

  ObjectFile f = new ObjectFile(flags);
  Scene s = null;
  try {
    s = f.load(nomFichier);
  }
  catch (FileNotFoundException e) {
    System.err.println(e);
    System.exit(1);
  }
  catch (ParsingErrorException e) {
    System.err.println(e);
    System.exit(1);
  }
  catch (IncorrectFormatException e) {
    System.err.println(e);
    System.exit(1);
  }

  navireTG.addChild(s.getSceneGroup());

  domaineInteractionSouris = new BoundingSphere(new Point3d(),
     1000.0);

  MouseRotate rotBtSourisGauche = new MouseRotate(MouseBehavior.INVERT_INPUT);
  rotBtSourisGauche.setTransformGroup(vpTrans);
  rotBtSourisGauche.setSchedulingBounds(domaineInteractionSouris);
  arbreContenus.addChild(rotBtSourisGauche);

  MouseTranslate transBtSourisDroit = new MouseTranslate(MouseBehavior.INVERT_INPUT);
  transBtSourisDroit.setTransformGroup(vpTrans);
  transBtSourisDroit.setSchedulingBounds(domaineInteractionSouris);
  arbreContenus.addChild(transBtSourisDroit);

  eclairage();
  return arbreContenus;
}