Scene — Aspose.3D FOSS for Java

Example

Example Scene class in Aspose.3D, 3D içeriği için kök kapsayıcı görevi görür, üst düzey nesneleri yönetir ve sahne hiyerarşisi için ebeveyn/çocuk ilişki yönetimini etkinleştirir. Kök düğümlere ve alt sahnelere erişim sağlar, 3D sahnelerin yüklenmesi, oluşturulması ve kaydedilmesi için giriş noktasını oluşturur.

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, boş bir sahne oluşturmak için argümansız örneklenebilir veya isteğe bağlı parametrelerle oluşturulabilir.

ExampleExampleExample
entityEntityOluşturulurken kök düğüme eklenecek isteğe bağlı varlık
parentSceneSceneİsteğe bağlı üst sahne (alt sahneler için); bir isim gerektirir
nameStringSahne adı (yalnızca iki argümanlı Scene(Scene, String) yapıcı)
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();

Sınıf Metodları

ExampleDönüş TipiExample
Scene.fromFile(String filePath)SceneBelirtilen dosya yolundan bir sahneyi yükler, formatı otomatik olarak algılar.
Scene.fromFile(String filePath, LoadOptions options)SceneFormat‑spesifik yükleme seçenekleriyle bir sahneyi yükler.
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

Tüm özelliklere getter/setter metodları aracılığıyla erişilir.

ExampleExampleExampleExampleExample
rootNodeNodegetRootNode()Sahne hiyerarşisinin kök düğümü
subScenesList<Scene>getSubScenes()Bu sahne içinde iç içe geçmiş alt sahneler
assetInfoAssetInfogetAssetInfo()setAssetInfo(AssetInfo)Yazar, oluşturma tarihi ve birimler gibi varlık meta verileri
animationClipsList<AnimationClip>getAnimationClips()Sahnede tanımlı animasyon klipleri
currentAnimationClipAnimationClipgetCurrentAnimationClip()setCurrentAnimationClip(AnimationClip)Şu anda aktif olan animasyon klibi
libraryList<A3DObject>getLibrary()Sahneye eklenmiş kullanıcı tanımlı meta veri nesneleri
nameStringgetName()setName(String)Sahne nesnesinin adı
propertiesPropertyCollectiongetProperties()Sahneye eklenmiş özel özellikler

Example

ExampleDönüş TipiExample
save(String filePath)voidSahneyi bir dosyaya kaydeder; format uzantıdan çıkarılır
save(String filePath, FileFormat format)voidSahneyi belirtilen bir dosyaya kaydeder FileFormat
save(String filePath, SaveOptions options)voidSahneyi biçim‑özel kaydetme seçeneklerini kullanarak kaydeder
open(String filePath)voidBu sahneye bir dosya açar; biçim uzantıdan çıkarılır
open(String filePath, LoadOptions options)voidBiçim‑özel yükleme seçenekleriyle bir dosya açar
getProperty(String name)ObjectAdına göre bir özellik değerini alır
findProperty(String name)PropertyAdına göre bir özelliği bulur
createAnimationClip(String name)AnimationClipYeni adlandırılmış bir animasyon klibi oluşturur ve sahneye ekler
getAnimationClip(String name)AnimationClipAdına göre mevcut bir animasyon klibini bulur, ya da null bulunamazsa
clear()voidSahneden tüm içeriği temizler

Example

Bir sahne oluşturun, bir mesh düğümü ekleyin ve GLB olarak kaydedin:

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);

Ayrıca Bakınız

 Türkçe