Class Scene
الحزمة: @aspose/3d (v24.12.0)
المشهد هو الحاوية الجذرية لرسم بياني ثلاثي الأبعاد في @aspose/3d. يحتوي على تسلسل العقد، والبيانات الوصفية، ومقاطع الرسوم المتحركة، ويوفر واجهة الإدخال/الإخراج الأساسية لتحميل وحفظ ملفات ثلاثية الأبعاد.
export class Scene extends SceneObjectEnumerations
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
| Enumerations | Enumerations | Enumerations |
|---|---|---|
rootNode | Node | العقدة الجذرية لرسم المشهد. جميع الهندسات، والإضاءات، والكاميرات، والكائنات الأخرى تُرفق تحت هذه العقدة. |
assetInfo | AssetInfo | البيانات الوصفية حول الأصل، بما في ذلك المُنشئ، وقت الإنشاء، معلومات الوحدة، ونظام الإحداثيات. |
animationClips | AnimationClip[] | مجموعة مقاطع الرسوم المتحركة المعرفة في المشهد. كل مقطع يحتوي على منحنيات تحريك للعقد وخصائصها. |
subScenes | Scene[] | المشاهد الفرعية المدمجة داخل هذا المشهد. تُستخدم من قبل صيغ مثل FBX التي تدعم تسلسلات المشاهد. ملاحظة: هذه الخاصية غير مؤكدة في واجهة برمجة التطبيقات الحالية وقد لا تكون متاحة. |
Enumerations
open(fileOrStream, options?)
يقوم بتحميل ملف ثلاثي الأبعاد من مسار ملف أو Buffer إلى المشهد، مستبدلاً أي محتوى موجود.
open(fileOrStream: string | Buffer, options?: LoadOptions): voidEnumerations
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): voidEnumerations
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): voidEnumerations
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): AnimationClipEnumerations
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}`);