Scene — Aspose.3D FOSS for Java
Enumerations
Enumerations Scene class u Aspose.3D služi kao korijenski kontejner za 3D sadržaj, upravlja objektima najviše razine i omogućuje upravljanje odnosima roditelj/dijete za hijerarhiju scene. Omogućuje pristup korijenskim čvorovima i podscenama, čineći ulaznu točku za učitavanje, izgradnju i spremanje 3D scena.
import com.aspose.threed.Scene;
// Create an empty scene
Scene scene = new Scene();
// Access the root node via getter method
Node root = scene.getRootNode();Enumerations
Enumerations Scene class se može instancirati bez argumenata za stvaranje prazne scene, ili s opcionalnim parametrima.
| Enumerations | Enumerations | Enumerations |
|---|---|---|
entity | Entity | Opcionalni entitet koji se prilaže korijenskom čvoru pri stvaranju |
parentScene | Scene | Opcionalna nadređena scena (za podscene); zahtijeva naziv |
name | String | Naziv scene (koristi se samo s dvoargumentnim Scene(Scene, String) konstruktorom) |
import com.aspose.threed.Scene;
// Empty scene
Scene scene = new Scene();
// Scene with an initial entity
Scene scene = new Scene(new Mesh());
// Access the root node (getter method)
Node root = scene.getRootNode();Metode klase
| Enumerations | Tip povratka | Enumerations |
|---|---|---|
Scene.fromFile(String filePath) | Scene | Učitava scenu s navedenog puta do datoteke, automatski otkrivajući format. |
Scene.fromFile(String filePath, LoadOptions options) | Scene | Učitava scenu s opcijama učitavanja specifičnim za format. |
import com.aspose.threed.Scene;
// Load from file (format detected from extension)
Scene scene = Scene.fromFile("model.obj");
// Load with options
ObjLoadOptions opts = new ObjLoadOptions();
Scene scene = Scene.fromFile("model.obj", opts);Enumerations
Sva svojstva se pristupaju putem getter/setter metoda.
| Enumerations | Enumerations | Enumerations | Enumerations | Enumerations |
|---|---|---|---|---|
rootNode | Node | getRootNode() | – | Korijenski čvor hijerarhije scene |
subScenes | List<Scene> | getSubScenes() | – | Podscene ugniježdene u ovu scenu |
assetInfo | AssetInfo | getAssetInfo() | setAssetInfo(AssetInfo) | Metapodaci sredstva poput autora, datuma stvaranja i jedinica |
animationClips | List<AnimationClip> | getAnimationClips() | – | Animacijski isječci definirani u sceni |
currentAnimationClip | AnimationClip | getCurrentAnimationClip() | setCurrentAnimationClip(AnimationClip) | Trenutno aktivni animacijski isječak |
library | List<A3DObject> | getLibrary() | – | Korisnički definirani objekti metapodataka prikačeni na scenu |
name | String | getName() | setName(String) | Naziv objekta scene |
properties | PropertyCollection | getProperties() | – | Prilagođena svojstva pridružena sceni |
Enumerations
| Enumerations | Tip povratka | Enumerations |
|---|---|---|
save(String filePath) | void | Sprema scenu u datoteku; format se zaključuje iz ekstenzije |
save(String filePath, FileFormat format) | void | Sprema scenu u datoteku u navedenom FileFormat |
save(String filePath, SaveOptions options) | void | Spremi scenu koristeći opcije spremanja specifične za format |
open(String filePath) | void | Otvara datoteku u ovu scenu; format se zaključuje iz ekstenzije |
open(String filePath, LoadOptions options) | void | Otvara datoteku s opcijama učitavanja specifičnim za format |
getProperty(String name) | Object | Dohvaća vrijednost svojstva po imenu |
findProperty(String name) | Property | Pronalaže svojstvo po imenu |
createAnimationClip(String name) | AnimationClip | Stvara novi animacijski isječak s imenom i dodaje ga u scenu |
getAnimationClip(String name) | AnimationClip | Pronalaže postojeći animacijski isječak po imenu, ili null ako nije pronađen |
clear() | void | Čisti sav sadržaj iz scene |
Enumerations
Stvorite scenu, dodajte mesh čvor i spremite u GLB:
import com.aspose.threed.Scene;
import com.aspose.threed.FileFormat;
// Create scene and mesh
Scene scene = new Scene();
Mesh mesh = new Mesh();
mesh.getControlPoints().add(new Vector4(0, 0, 0, 1));
mesh.getControlPoints().add(new Vector4(1, 0, 0, 1));
mesh.getControlPoints().add(new Vector4(0.5, 1, 0, 1));
mesh.createPolygon(0, 1, 2);
// Add node to root
Node node = scene.getRootNode().createChildNode("triangle", mesh);
// Save as GLB
GltfSaveOptions glbOpts = new GltfSaveOptions();
glbOpts.setContentType(FileContentType.BINARY);
scene.save("triangle.glb", glbOpts);