Aspose.3D FOSS for TypeScript

مرجع API لـ @aspose/3d الإصدار 24.12.0. التثبيت عبر:

npm install @aspose/3d

بيئة التشغيل: Node.js 18، 20، 22+ · اللغة: TypeScript 5.0+ / JavaScript (CommonJS) · الترخيص: MIT


مخطط المشهد الأساسي

Methods

حاوية الجذر لمشهد ثلاثي الأبعاد. استدعِ scene.open() أو scene.openFromBuffer() لتحميل ملف، و scene.save() لإخراج المخرجات. يوفّر scene.rootNode كنقطة الدخول إلى تسلسل العقد.

Methods

عقدة مسماة في شجرة المشهد. تحتوي على Transform,، اختيارية entity (mesh, camera, light, أو غيرها SceneObject)، و صفر أو أكثر من العقد الفرعية يمكن الوصول إليها عبر childNodes.

Methods

الفئة الأساسية لجميع الكائنات التي يمكن إرفاقها بـ Node ككيانها الأساسي. تم إنشاء فئات فرعية بواسطة Mesh, Camera, Light,، وغيرها.

SceneObject

الفئة الأساسية المجردة للكائنات المسماة التي تنتمي إلى مشهد. توفر name خاصية وتعقب الانتماء للمشهد المشترك بين العقد، الكيانات، والكائنات على مستوى الأصول.

A3DObject

الفئة الأساسية الجذرية لجميع كائنات Aspose.3D. توفر نظام الخصائص (getProperty, setProperty) و name الحقل الموروث من قبل كل فئة عامة.


الهندسة والشبكة

Methods

يمثل شبكة مضلّعات. يحتوي على controlPoints مصفوفة من Vector4 رؤوس وتعريفات المضلّعات التي تم إنشاؤها عبر createPolygon(). استدعِ triangulate() لتحويل جميع المضلّعات إلى مثلثات قبل التصدير.

Methods

الفئة الأساسية لجميع أنواع الهندسة. تحتوي على controlPoints ومجموعة عناصر الرؤوس (العمليات العادية، UVs، الألوان) المرتبطة بالهندسة.

VertexElement

الفئة الأساسية لقنوات السمات لكل رأس المرتبطة بـ Geometry. الفئات الفرعية تحمل مصفوفات بيانات ذات نوع و mappingMode / referenceMode بيانات وصفية.

VertexElementNormal

أ VertexElement فئة فرعية تخزن المتجهات العمودية للسطح. يتم تخزين البيانات داخليًا كـ FVector4[] (موروث من VertexElementFVector). مطلوب من قبل معظم محركات العرض للإضاءة الصحيحة.

VertexElementUV

أ VertexElement فئة فرعية تخزن إحداثيات القوام ثنائية الأبعاد. قد يحتوي نموذج واحد على مجموعات UV متعددة لطبقات القوام المختلفة.

VertexElementVertexColor

أ VertexElement فئة فرعية تخزن قيم ألوان RGBA لكل رأس.

VertexElementType

تعداد لأنواع قنوات السمة التي يمكن لـ VertexElement تمثيلها (مثال،., NORMAL, UV, VERTEX_COLOR, TANGENT, BINORMAL).

MappingMode

تعداد يتحكم في كيفية ربط بيانات العنصر بالهندسة: CONTROL_POINT, POLYGON_VERTEX, POLYGON, EDGE, أو ALL_SAME.

ReferenceMode

تعداد يتحكم في كيفية إشارة مؤشرات العنصر إلى البيانات: DIRECT (واحد إلى واحد) أو INDEX_TO_DIRECT (عبر مصفوفة مؤشرات).

TextureMapping

تعداد لمعاني قناة القوام: DIFFUSE, SPECULAR, NORMAL, EMISSIVE, BUMP, وأكثر.


Transform و Spatial

Methods

يحفظ الموضع المحلي (translation), التدوير (rotation كـ Quaternion), والتحجيم (scaling) لـ a Node. التغييرات هنا تؤثر على العقدة وجميع أطفالها.

GlobalTransform

عرض للقراءة فقط لتحويل الفضاء العالمي للعقدة، يتم حسابه عن طريق تجميع جميع الأسلاف Transform القيم. الوصول عبر node.globalTransform.

BoundingBox

صندوق احتواء محاذى للمحاور يُعرّف بـ minimum و maximum Vector3 زاوية. يُستخدم لوصف الامتداد المكاني لشبكة أو مشهد.


Methods

Material، LambertMaterial، PhongMaterial، PbrMaterial

Material هي الفئة الأساسية المجردة لجميع أنواع المواد. تتوفر ثلاث تطبيقات ملموسة:

  • LambertMaterial — فقط انتشار مع قنوات اللون المحيطي، الانتشاري، والملوث. مناسب للأسطح غير اللامعة.
  • PhongMaterial — يمتد LambertMaterial مع خصائص اللون الانعكاسي واللمعان لتظليل Phong.
  • PbrMaterial — مادة تصيير معتمدة على الفيزياء مع قنوات metallic, roughness, base-color، و normal‑map. تُطابق مباشرةً نموذج مادة glTF 2.0 PBR.

الكاميرا والإضاءة

Methods

كيان عقدة نقطة مشاهدة مع نوع الإسقاط، مجال الرؤية، مسافات القص القريبة/البعيدة، وخصائص نسبة العرض إلى الارتفاع.

Methods

كيان عقدة مصدر ضوء. يتم التحكم في النوع بواسطة LightType التعداد.

LightType

تعداد أنواع الضوء المدعومة: POINT, DIRECTIONAL, SPOT, AREA, VOLUME.

ProjectionType

تعداد أوضاع إسقاط الكاميرا: PERSPECTIVE و ORTHOGRAPHIC.


أدوات رياضية

Methods

متجه عائم ثلاثي المكوّن مع x, y, z حقول وطرق حسابية شائعة (dot, cross, normalize, minus, times). تم التصدير من @aspose/3d/utilities.

Methods

متجه عائم مكوّن من أربعة مكوّنات مع x, y, z, w حقول. يُستخدم كنوع للمدخلات في Mesh.controlPoints.

Methods

متجه مزدوج الدقة مكوّن من عنصرين مع x و y حقول. يُستخدم لإحداثيات القوام UV.

FVector3

متجه عائم أحادي الدقة ثلاثي المكوّنات مدمج يُستخدم في مصفوفات بيانات عناصر الرؤوس للمعايير (normals) واللمسات (tangents).

Methods

مصفوفة تحويل 4×4. تدعم الجمع، العكس، النقل، والتحليل إلى مكوّنات الإزاحة، الدوران، والقياس. تم التصدير من @aspose/3d/utilities.

Methods

رباعية وحدة لتمثيل الدورانات دون قفل الجيمبال. توفر slerp() للتقريب السلس والتحويل من/إلى زوايا إيلر و Matrix4. تم التصدير من @aspose/3d/utilities.


Methods

AnimationClip

مجموعة مسماة ومحدودة زمنياً من AnimationNode المسارات. الحاوية الأساسية لبيانات الرسوم المتحركة ذات الإطارات المفتاحية التي تم تحميلها من ملفات FBX أو COLLADA.

AnimationNode

مسار رسوم متحركة مسمى يستهدف مسار خاصية محدد على كائن المشهد. يحتوي على واحد أو أكثر من AnimationChannel الكائنات.

AnimationChannel

قناة خاصية متحركة واحدة داخل AnimationNode. يحتوي على KeyframeSequence من أزواج الوقت/القيمة.

KeyFrame

عينة وقت/قيمة واحدة في KeyframeSequence. تحمل الطابع الزمني (بالثواني)، القيمة، ومعلومات المماس للتقريب.

KeyframeSequence

قائمة مرتبة من KeyFrame عينات لقناة خاصية واحدة، إلى جانب الـ Interpolation و Extrapolation الإعدادات التي تتحكم في التشغيل.

Methods

تعداد أوضاع استيفاء الإطارات المفتاحية. الأعضاء المعروفون تشمل LINEAR و CONSTANT. أعضاء إضافيون مثل BEZIER قد تكون متاحة.

Methods

يحدد السلوك خارج نطاق الإطار المفتاحي (قبل المفتاح الأول وبعد المفتاح الأخير). يتم التحكم فيه بواسطة ExtrapolationType.

StepMode

تعداد يتحكم في كيفية تطبيق الاستيفاء المتدرج (الثابت) عند الحدود.

WeightedMode

تعداد لمعالجة وزن المماس بيزيير: NONE, OUT_WEIGHT, NEXT_IN_WEIGHT, أو BOTH.

ExtrapolationType

تعداد سلوكيات خارج النطاق: CONSTANT, GRADIENT, CYCLE, CYCLE_RELATIVE, و OSCILLATE.


إدخال/إخراج الصيغة

FileFormat

الوصف الأساسي لتنسيق ملف ثلاثي الأبعاد. كل تنسيق مدعوم يوفر نسخة مفردة ملموسة عبر getInstance().

Methods

الفئة الأساسية لتطبيقات الاستيراد الخاصة بالتنسيق. لا يتم إنشاء مثيل لها مباشرة؛ تُستدعى داخليًا بواسطة scene.open().

Methods

الفئة الأساسية لتطبيقات التصدير الخاصة بالتنسيق. لا يتم إنشاء مثيل لها مباشرة؛ تُستدعى داخليًا بواسطة scene.save().

LoadOptions

الفئة الأساسية لكائنات خيارات التحميل الخاصة بالتنسيق. مرّر مثيل الفئة الفرعية إلى scene.open() أو scene.openFromBuffer().

SaveOptions

الفئة الأساسية لكائنات خيارات الحفظ الخاصة بالتنسيق. مرّر مثيل الفئة الفرعية إلى scene.save().

خدمة الإدخال/الإخراج

واجهة خدمة داخلية تجريدية لإدخال/إخراج نظام الملفات والذاكرة المؤقتة للمستوردين والمصدرين.


تنسيق OBJ

يدعم OBJ كلًا من الاستيراد والتصدير. عند الحفظ كـ OBJ، تُكتب مكتبة المواد (.mtl) تُكتب تلقائيًا إلى جانب ال .obj ملف.

ObjImporter

مستورد داخلي يقرأ ملفات Wavefront OBJ، يحل .mtl مكتبات المواد، ويملأ Scene. يتم استدعاؤه تلقائيًا عندما ObjLoadOptions يتم تمريره إلى scene.open().

ObjExporter

مصدّر داخلي يكتب ملفات Wavefront OBJ. مرفق .mtl مكتبة المواد تُكتب تلقائيًا. يتم استدعاؤه عندما scene.save() يستهدف .obj مسار.

ObjLoadOptions

خيارات التحميل لملفات OBJ. الخصائص الرئيسية: enableMaterials (boolean, الافتراضي true), flipCoordinateSystem (boolean), normalizeNormal (boolean, الافتراضي true), scale (number). انظر خيارات تحميل وحفظ الصيغة للتفاصيل الكاملة.

ObjSaveOptions

احفظ الخيارات لتصدير OBJ. مرّر إلى scene.save() للتحكم في سلوك إخراج OBJ. انظر خيارات تحميل وحفظ الصيغة للتفاصيل الكاملة.

ObjFormat

وصف تنسيق singleton لتنسيق OBJ. كلا canImport و canExport هي true.


تنسيق glTF

GltfImporter

يقرأ glTF 2.0 JSON (.gltf) وملف ثنائي GLB (.glb) ملفات. يتعامل مع مراجع المخزن المؤقت المدمجة والخارجية، ومواد PBR، والجلود، ومقاطع الرسوم المتحركة.

GltfExporter

يكتب مخرجات glTF 2.0. عندما GltfSaveOptions.binaryMode يكون true,، ينتج GLB ذاتي الاحتواء؛ وإلا يكتب JSON .gltf مع ملف مصاحب .bin مخزن مؤقت.

GltfLoadOptions

خيارات التحميل لملفات glTF/GLB. تتحكم في حل المخزن وسلوك تحميل القوام.

GltfSaveOptions

خيارات الحفظ لتصدير glTF/GLB. الخصائص الملحوظة: binaryMode (منطقي, true → GLB، الافتراضي false), flipTexCoordV (منطقي، يقلب محور UV العمودي، الافتراضي true). انظر خيارات تحميل وحفظ الصيغة للتفاصيل الكاملة.

GltfFormat

وصف تنسيق كائن مفرد. احصل عليه عبر GltfFormat.getInstance() وامره إلى scene.save() كوسيط ثانٍ.


تنسيق STL

StlImporter

يقرأ ملفات STL بنسق ASCII وbinary إلى Scene تحتوي على عنصر واحد Mesh كيان.

StlExporter

يكتب STL ثنائي. يحتوي الناتج على الشبكة المثلثية من المشهد؛ يتم تحويل الأشكال غير المثلثية إلى مثلثات تلقائيًا.

StlLoadOptions

خيارات التحميل لملف STL. تتحكم فيما إذا كان المستورد يقلب الاتجاهات (normals) أثناء الاستيراد.

StlSaveOptions

خيارات الحفظ لتصدير STL. الخاصية الأساسية: binaryMode (منطقي، الافتراضي false). يتحكم فيما إذا كان الإخراج ASCII أو STL ثنائي. راجع خيارات تحميل وحفظ الصيغة للتفاصيل الكاملة.

StlFormat

وصف التنسيق ككائن مفرد. احصل عليه عبر StlFormat.getInstance().


3MF Format

ThreeMfImporter

يقرأ أرشيفات Open Packaging Convention 3MF ويملأ Scene بكائنات الشبكة، الألوان، وخصائص المواد.

ThreeMfExporter

يكتب أرشيف 3MF صالح من المشهد الحالي. مناسب لتدفقات عمل الطباعة ثلاثية الأبعاد.

ThreeMfLoadOptions

خيارات التحميل لملفات 3MF.

ThreeMfSaveOptions

خيارات الحفظ لتصدير 3MF.

ThreeMfFormat

وصف التنسيق ككائن مفرد. احصل عليه عبر ThreeMfFormat.getInstance().


تنسيق FBX

FbxImporter

يقرأ ملفات FBX الثنائية وASCII بما في ذلك الهندسة، المواد، الهياكل العظمية، أشكال الدمج، ومقاطع الرسوم المتحركة.

FbxExporter

يكتب ملفات FBX من المشهد الحالي. يتم دعم كل من الإخراج الثنائي وASCII لـ FBX حسب الخيارات.

FbxLoadOptions

خيارات التحميل لـ FBX. تتحكم فيما إذا كانت الرسوم المتحركة، الجلود، وأشكال الدمج تُستورد.

FbxSaveOptions

خيارات الحفظ لتصدير FBX. الخاصية الأساسية: embedTextures (منطقي، الافتراضي false) خيارات تحميل وحفظ الصيغة للتفاصيل الكاملة.

FbxFormat

وصف تنسيق المفرد. احصل عبر FbxFormat.getInstance().


تنسيق COLLADA

استيراد وتصدير COLLADA يتطلبان الـ xmldom اعتماد النظير، الذي يتم تثبيته تلقائيًا مع @aspose/3d.

ColladaImporter

يقرأ COLLADA (.dae) ملفات XML باستخدام xmldom. يتعامل مع الهندسة، المواد، الكاميرات، الأضواء، والرسوم المتحركة.

ColladaExporter

يكتب مخرجات XML لـ COLLADA من المشهد الحالي. مناسب للتبادل مع أدوات DCC (Blender، Maya، إلخ).

ColladaFormat

وصف تنسيق المفرد. احصل عبر ColladaFormat.getInstance().


نظام الخصائص

Methods

زوج اسم/قيمة مُعَرَّف بنوع يمكن إرفاقه بأي A3DObject. يدعم أنواع القيم السلمية والمتجهية.

PropertyCollection

حاوية مرتبة من Property الكائنات. يمكن الوصول إليها على أي A3DObject عبر الـ properties المستخرج.

CustomObject

حقيبة خصائص حرة الشكل تُوسِّع A3DObject. تُستخدم لتخزين بيانات وصفية عشوائية لا تتطابق مع فئة قياسية.


معلومات الأصل

AssetInfo

يحمل بيانات وصفية على مستوى المشهد تم تحميلها من ملف المصدر: المؤلف، اسم التطبيق، تاريخ الإنشاء، مقياس الوحدة، ومعلومات محور الإحداثيات.

ImageRenderOptions

خيارات تتحكم في كيفية حل القوام والصور وترميزها عند الحفظ إلى صيغ تُضمّن بيانات الصورة (مثال: GLB مع binaryMode: true).


انظر أيضًا

 العربية