Class Scene

الحزمة: @aspose/3d (v24.12.0)

المشهد هو الحاوية الجذرية لرسم بياني ثلاثي الأبعاد في @aspose/3d. يحتوي على تسلسل العقد، والبيانات الوصفية، ومقاطع الرسوم المتحركة، ويوفر واجهة الإدخال/الإخراج الأساسية لتحميل وحفظ ملفات ثلاثية الأبعاد.

export class Scene extends SceneObject

Enumerations

A3DObject ← SceneObject ← Scene

Enumerations

حمّل ملف OBJ واطبع عدد العقد الفرعية في جذر مخطط المشهد.

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

EnumerationsEnumerationsEnumerations
rootNodeNodeالعقدة الجذرية لرسم المشهد. جميع الهندسات، والإضاءات، والكاميرات، والكائنات الأخرى تُرفق تحت هذه العقدة.
assetInfoAssetInfoالبيانات الوصفية حول الأصل، بما في ذلك المُنشئ، وقت الإنشاء، معلومات الوحدة، ونظام الإحداثيات.
animationClipsAnimationClip[]مجموعة مقاطع الرسوم المتحركة المعرفة في المشهد. كل مقطع يحتوي على منحنيات تحريك للعقد وخصائصها.
subScenesScene[]المشاهد الفرعية المدمجة داخل هذا المشهد. تُستخدم من قبل صيغ مثل FBX التي تدعم تسلسلات المشاهد. ملاحظة: هذه الخاصية غير مؤكدة في واجهة برمجة التطبيقات الحالية وقد لا تكون متاحة.

Enumerations

open(fileOrStream, options?)

يقوم بتحميل ملف ثلاثي الأبعاد من مسار ملف أو Buffer إلى المشهد، مستبدلاً أي محتوى موجود.

open(fileOrStream: string | Buffer, options?: LoadOptions): void

Enumerations

fileOrStream string | Buffer

مسار الملف المصدر، أو Buffer يحتوي على بيانات الملف الخام.

options LoadOptions (اختياري)

خيارات تحميل خاصة بالتنسيق. مرّر undefined لاستخدام الإعدادات الافتراضية.

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

يقوم بتحميل ملف ثلاثي الأبعاد من الذاكرة Buffer. هذا هو التحميل المفضل عندما تكون بيانات الملف قد قرئت بالفعل إلى الذاكرة.

openFromBuffer(buffer: Buffer, options?: LoadOptions): void

Enumerations

buffer Buffer

Node.js Buffer يحتوي على محتوى الملف الكامل.

options LoadOptions (اختياري)

خيارات التحميل الخاصة بالتنسيق.

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

يحفظ المشهد إلى ملف. يتم استنتاج الصيغة من امتداد الملف، أو يمكنك تمرير صيغة محددة SaveOptions كائن (أو FileFormat singleton) كوسيط ثانٍ.

save(fileOrStream: string, formatOrOptions?: FileFormat | SaveOptions, options?: SaveOptions): void

Enumerations

fileOrStream string

مسار ملف الوجهة. الامتداد يحدد تنسيق الإخراج (مثال،., .glb → GLB, .gltf → glTF JSON،, .stl → STL).

formatOrOptions FileFormat | SaveOptions (اختياري)

إما كائن تنسيق منفرد (مثال،., GltfFormat.getInstance()) أو محدد للتنسيق SaveOptions فئة فرعية.

options SaveOptions (اختياري)

خيارات الحفظ الخاصة بالتنسيق عندما يكون FileFormat يتم تمريره كوسيط ثانٍ.

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)

ينشئ مقطع رسوم متحركة مسمى جديد ويضيفه إلى animationClips المجموعة.

createAnimationClip(name: string): AnimationClip

Enumerations

name string

اسم وصفي للمقطع الحركي الجديد.

Enumerations

AnimationClip

المُنشأ حديثًا AnimationClip مثيل.

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}`);
 العربية