Хотите импортировать F XML как сцену, а затем использовать камеру из FXML - PullRequest
1 голос
/ 19 февраля 2020

Я хочу сделать 3d-объекты (используя blender) и поместить их в javaFx, используя Interactive Me sh: Браузер моделей. Это выдает F XML со всей необходимой мне информацией. У меня есть камера в этом F XMl (которая в основном пришла из Blender), и я хочу, чтобы она использовала эту камеру в качестве ОСНОВНОЙ камеры.

Я попытался загрузить объект из f xml, используя lookup и getNamespace.

import javafx.application.Application;
import javafx.fxml.FXMLLoader;
import javafx.scene.Group;
import javafx.scene.*;
import javafx.stage.Stage;

import java.io.IOException;


public class main extends Application {
    public static void main(String[] args) {
        launch(args);
    }
    public void start(Stage stage){
        FXMLLoader loader = new FXMLLoader(getClass().getResource("ground.fxml"));
        Group base = new Group();
        PerspectiveCamera camera;
        Parent root=new Parent(){};
        try {
            root = loader.load();
        }catch (IOException e){
            e.printStackTrace();
        }
        base=(Group)root.lookup("#Full3DScene");
        camera= (PerspectiveCamera) base.lookup("#camera");
        Scene scene = new Scene(base,1920,1080);
        stage.setScene(scene);
        scene.setCamera(camera);
        stage.show();
        camera.getId();
    }
}

Заранее спасибо! Это вид с камеры с использованием InteractiveMe sh: ModelBrowserJFX 0.4.1

F XML Похоже:

<Group fx:id="Full3DScene" xmlns:fx="http://javafx.com/fxml/1" xmlns="http://javafx.com/javafx/8.0.121" fx:controller="Controller">
  <transforms>
    <Rotate angle="-90.0" pivotX="0.0" pivotY="0.0" pivotZ="0.0">
      <axis>
        <Point3D x="1.0" y="0.0" z="0.0" />
      </axis>
    </Rotate>
  </transforms>
  <children>
    //...all objects for the scene...
    //+
    <PerspectiveCamera fx:id="camera">
    </PerspectiveCamera>
  </children>
</Group>

Что я сделал Blender- > .dae (Collada) -> InteractiveMe sh: Браузер моделей-> F XML -> javaFx

...