JavaFX: Kamera perspektif pada widget khusus

Saya mencoba membuat "widget khusus" (extends HBox) yang menampilkan grafik 3D.

Masalahnya adalah semua contoh yang saya lihat untuk pengaturan kamera, menunjukkan bagaimana melakukannya di "adegan" utama yang termasuk dalam jendela utama.

Saya tidak ingin ada hubungannya dengan Jendela utama, saya ingin itu menjadi widget independen.

Apakah mungkin melakukan hal itu?

Saya akan senang jika Anda dapat membagikan beberapa contoh kode, karena saya merasa sangat bingung...


person SomethingSomething    schedule 04.08.2016    source sumber
comment
Saya belum pernah mencobanya, tapi coba bungkus konten Anda dalam SubScene. Anda dapat mengatur kamera pilihan Anda di SubScene, dan kode klien dapat menambahkannya ke grafik pemandangan lainnya.   -  person James_D    schedule 04.08.2016


Jawaban (1)


Saya tidak begitu yakin apakah saya memahami Anda dengan benar, tetapi jika Anda ingin kameranya dapat diubah, Anda dapat memasukkannya ke dalam Scene Graph di mana pun Anda mau. Anda dapat menambahkannya ke simpul grup seperti ini:

Group someGroup = new Group();
PerspectiveCamera camera = new PerspectiveCamera();
someGroup.getChildren().add(camera);

Scene s = new Scene(someGroup);
s.setCamera(camera);

Saat Anda memindahkan node Grup, kamera juga akan bergerak. Anda dapat menambahkan kamera ke node Grup mana pun yang Anda inginkan, tetapi saya tidak yakin apa yang terjadi jika Anda memasukkannya ke dalam node Grup yang menggunakan LayoutManagement seperti HBox.

Yang penting Anda harus selalu menambahkan kamera ke Scene yang ada di dalamnya.

person Jhonny007    schedule 25.08.2016