Scene — Aspose.3D FOSS for Java

Example

Example Scene class in Aspose.3D slúži ako koreňový kontajner pre 3D obsah, spravuje objekty najvyššej úrovne a umožňuje správu vzťahov rodič/dieťa v hierarchii scény. Poskytuje prístup ku koreňovým uzlom a podscénam, tvoriac vstupný bod pre načítanie, konštruovanie a ukladanie 3D scén.

import com.aspose.threed.Scene;

// Create an empty scene
Scene scene = new Scene();

// Access the root node via getter method
Node root = scene.getRootNode();

Example

Example Scene class je možné inštancovať bez argumentov na vytvorenie prázdnej scény, alebo s voliteľnými parametrami.

ExampleExampleExample
entityEntityVoliteľná entita, ktorá sa má pripojiť ku koreňovému uzlu pri vytvorení
parentSceneSceneVoliteľná nadradená scéna (pre podscény); vyžaduje názov
nameStringNázov scény (používa sa iba s dvojargumentovým 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();

Metódy triedy

ExampleNávratový typExample
Scene.fromFile(String filePath)SceneNačíta scénu zo zadaného súborového cesty, pričom automaticky detekuje formát.
Scene.fromFile(String filePath, LoadOptions options)SceneNačíta scénu s možnosťami načítania špecifickými pre formát.
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);

Example

Všetky vlastnosti sa pristupuje prostredníctvom metód getter/setter.

ExampleExampleExampleExampleExample
rootNodeNodegetRootNode()Koreňový uzol hierarchie scény
subScenesList<Scene>getSubScenes()Podscény vnorené v tejto scéne
assetInfoAssetInfogetAssetInfo()setAssetInfo(AssetInfo)Metadáta aktíva, ako je autor, dátum vytvorenia a jednotky
animationClipsList<AnimationClip>getAnimationClips()Animácie definované v scéne
currentAnimationClipAnimationClipgetCurrentAnimationClip()setCurrentAnimationClip(AnimationClip)Aktuálne aktívny animačný klip
libraryList<A3DObject>getLibrary()Užívateľom definované objekty metadát pripojené k scéne
nameStringgetName()setName(String)Názov objektu scény
propertiesPropertyCollectiongetProperties()Vlastné vlastnosti priradené scéne

Example

ExampleNávratový typExample
save(String filePath)voidUloží scénu do súboru; formát je odvodený od prípony
save(String filePath, FileFormat format)voidUloží scénu do súboru v určenom FileFormat
save(String filePath, SaveOptions options)voidUloží scénu pomocou špecifických možností ukladania pre daný formát
open(String filePath)voidOtvorí súbor v tejto scéne; formát je odvodený od prípony
open(String filePath, LoadOptions options)voidOtvorí súbor s možnosťami načítania špecifickými pre formát
getProperty(String name)ObjectZíska hodnotu vlastnosti podľa názvu
findProperty(String name)PropertyNájde vlastnosť podľa názvu
createAnimationClip(String name)AnimationClipVytvorí nový pomenovaný animačný klip a pridá ho do scény
getAnimationClip(String name)AnimationClipNájde existujúci animačný klip podľa názvu, alebo null ak nie je nájdený
clear()voidVymaže celý obsah scény

Example

Vytvorte scénu, pridajte uzol mesh a uložte do 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);

Pozri tiež

 Slovenčina