Class Scene
Paket: @aspose/3d (v24.12.0)
Scene, bir 3D sahne grafiği için kök kapsayıcıdır @aspose/3d. Düğüm hiyerarşisini, meta verileri ve animasyon kliplerini tutar ve 3D dosyalarını yüklemek ve kaydetmek için birincil G/Ç arayüzünü sağlar.
export class Scene extends SceneObjectEnumerations
A3DObject ← SceneObject ← Scene
Enumerations
Bir OBJ dosyası yükleyin ve sahne grafiğinin kökündeki alt düğüm sayısını yazdırın.
import { Scene } from '@aspose/3d';
const scene = new Scene();
scene.open('model.obj');
function countNodes(node: any): number {
let total = 1;
for (const child of node.childNodes) {
total += countNodes(child);
}
return total;
}
const nodeCount = countNodes(scene.rootNode);
console.log(`Total nodes in scene: ${nodeCount}`);Enumerations
| Enumerations | Enumerations | Enumerations |
|---|---|---|
rootNode | Node | Sahne grafiğinin kök düğümü. Tüm geometri, ışıklar, kameralar ve diğer nesneler bu düğümün altında bağlanır. |
assetInfo | AssetInfo | Varlık hakkında meta veriler, oluşturucu, oluşturulma zamanı, birim bilgisi ve koordinat sistemi dahil. |
animationClips | AnimationClip[] | Sahnede tanımlanan animasyon kliplerinin koleksiyonu. Her klip, düğümler ve özellikleri için animasyon eğrileri içerir. |
subScenes | Scene[] | Bu sahne içinde gömülü alt sahneler. Sahne hiyerarşilerini destekleyen FBX gibi formatlar tarafından kullanılır. Not: Bu özellik mevcut API yüzeyinde doğrulanmamıştır ve mevcut olmayabilir. |
Enumerations
open(fileOrStream, options?)
Bir dosya yolundan veya bir Buffer sahneye yükler, mevcut içeriği değiştirir.
open(fileOrStream: string | Buffer, options?: LoadOptions): voidEnumerations
fileOrStream string | Buffer
Kaynak dosyanın yolu, veya bir Buffer ham dosya verilerini içeren.
options LoadOptions (isteğe bağlı)
Biçime özgü yükleme seçenekleri. Geç undefined varsayılanları kullanmak için.
Enumerations
void
Enumerations
import { Scene } from '@aspose/3d';
const scene = new Scene();
scene.open('input.fbx');
console.log(`Loaded scene with root node: ${scene.rootNode.name}`);openFromBuffer(buffer, options?)
Bellekteki bir 3D dosyasını yükler Buffer. Dosya verileri zaten belleğe okunmuş olduğunda tercih edilen aşırı yüklemedir.
openFromBuffer(buffer: Buffer, options?: LoadOptions): voidEnumerations
buffer Buffer
Bir Node.js Buffer tam dosya içeriğini içeren.
options LoadOptions (isteğe bağlı)
Biçime özgü yükleme seçenekleri.
Enumerations
void
Enumerations
import { Scene } from '@aspose/3d';
import { readFileSync } from 'fs';
const data = readFileSync('model.glb');
const scene = new Scene();
scene.openFromBuffer(data);
console.log(`Animation clips: ${scene.animationClips.length}`);save(fileOrStream, formatOrOptions?, options?)
Sahneyi bir dosyaya kaydeder. Biçim dosya uzantısından çıkarılır, ya da bir biçim‑özel SaveOptions örnek (veya bir FileFormat tekil) ikinci argüman olarak.
save(fileOrStream: string, formatOrOptions?: FileFormat | SaveOptions, options?: SaveOptions): voidEnumerations
fileOrStream string
Hedef dosya yolu. Uzantı çıktı biçimini belirler (örneğin,., .glb → GLB, .gltf → glTF JSON, .stl → STL).
formatOrOptions FileFormat | SaveOptions (isteğe bağlı)
Ya bir biçim tekili (örneğin,., GltfFormat.getInstance()) SaveOptions alt sınıf.
options SaveOptions (isteğe bağlı)
Biçim-özel kaydetme seçenekleri bir FileFormat ikinci argüman olarak geçirildiğinde.
Enumerations
void
Enumerations
import { Scene } from '@aspose/3d';
const scene = new Scene();
scene.open('input.obj');
// Format inferred from extension
scene.save('output.glb');
console.log('Scene saved as GLB.');createAnimationClip(name)
Yeni adlandırılmış bir animasyon klibi oluşturur ve sahnenin animationClips koleksiyonuna.
createAnimationClip(name: string): AnimationClipEnumerations
name string
Yeni animasyon klibi için açıklayıcı bir ad.
Enumerations
AnimationClip
Yeni oluşturulan AnimationClip örnek.
Enumerations
import { Scene } from '@aspose/3d';
const scene = new Scene();
const clip = scene.createAnimationClip('WalkCycle');
console.log(`Created clip: ${clip.name}`);
console.log(`Total clips: ${scene.animationClips.length}`);