Aspose.3D FOSS for Java

مرجع API لـ aspose-3d-foss 26.1.0 (Java 21+, رخصة MIT).

جميع الفئات موجودة في com.aspose.threed الحزمة الجذرية. الاستيراد الجذري هو:

import com.aspose.threed.*;

هيكل الحزمة: تقريبًا جميع الفئات العامة موجودة في com.aspose.threed. الحزمة الفرعية الوحيدة التي تُستخدم عادةً هي com.aspose.threed.shadingPbrMaterial). الـ com.aspose.threed.formats الحزمة الفرعية تحتوي على مستوردين/مصدرين داخليين ولا يتم استيرادها عادةً مباشرةً.

اتفاقية تسمية Java: جميع الخصائص تستخدم أساليب getter/setter. على سبيل المثال، استخدم node.getTransform() بدلاً من node.transform, و transform.setTranslation(...) بدلاً من transform.translation = .... لاحظ أن Vector3, Vector4, Quaternion, Matrix4, و FVector الأنواع تستخدم الحقول العامة (v.x, v.y, v.z) بدلاً من getters للوصول إلى المكوّن.


الرسم البياني الأساسي للمشهد

EnumerationsEnumerations
Sceneحاوية المستوى الأعلى لجميع بيانات المشهد ثلاثي الأبعاد. تحتفظ بالعقدة الجذرية، وبيانات تعريف الأصول، ومقاطع الرسوم المتحركة. تكشف fromFile(), open(),، و save() كنقاط الدخول الأساسية للإدخال/الإخراج.
Nodeعقدة مسماة في تسلسل المشهد الهرمي. تمتلك قائمة من العقد الفرعية وقائمة من المرفقات Entity كائنات مثل meshes، والكاميرات، والأضواء. تحمل محلية Transform.
Entityفئة أساسية مجردة لجميع الكائنات التي يمكن إرفاقها بـ Node. توفر اسم وهوية ولكن لا تحتوي على هندسة خاصة بها.
SceneObjectفئة أساسية مشتركة بين Node و Entity. يوفر واجهة تجميع الخصائص المستخدمة للبيانات الوصفية المعرفة من قبل المستخدم.
A3DObjectالفئة الأساسية الجذرية لجميع Aspose.3D المدارة. تكشف عن خاصية الاسم و Properties المجموعة.
INamedObjectواجهة تضمن getName() طريقة. تم تنفيذها بواسطة Node, Entity,، وعدة أنواع موصّفات خاصة بالتنسيق.

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

EnumerationsEnumerations
Meshكيان شبكة مضلع. يخزن نقاط التحكم (مواقع الرؤوس ك Vector4)، قوائم أوجه المضلع (قوائم مؤشرات نقاط التحكم)، وطبقات عناصر الرؤوس (العموميات، UVs، ألوان الرؤوس).
Geometryقاعدة تجريدية لأنواع الهندسة الشبيهة بالشبكة. تعرف مصفوفة نقاط التحكم ومجموعة VertexElement الطبقات. Mesh يرث من Geometry.
VertexElementقاعدة تجريدية لطبقة بيانات مرفقة بالهندسة (السطوح، إحداثيات UV، الألوان، إلخ). تحمل getMappingMode(), getReferenceMode(),، وقائمة بيانات.
VertexElementNormalيخزن متجه عادي واحد لكل رأس أو لكل زاوية مضلع، حسب وضعية التعيين. قيم البيانات هي Vector4 نماذج مع w غير مستخدمة.
VertexElementUVيخزن أزواج إحداثيات النسيج (Vector2) لكل رأس أو لكل زاوية مضلع. قد يحمل الشبكة عدة طبقات UV لقنوات نسيج مختلفة.
VertexElementVertexColorيخزن بيانات لون RGBA لكل رأس أو لكل زاوية كـ Vector4 (r، g، b، a في النطاق 0–1).
VertexElementTypeتعداد يحدد الدور الدلالي لطبقة عنصر القمة: NORMAL, UV, VERTEX_COLOR, وغيرها. مرّر القيم إلى Mesh.getElement().
MappingModeتعداد يتحكم في أي بدائية يتم ربط قيمة عنصر القمة بها: CONTROL_POINT, POLYGON_VERTEX, أو POLYGON.
ReferenceModeتعداد يتحكم في طريقة فهرسة القيم: DIRECT (قيمة واحدة لكل بدائية ربط) أو INDEX_TO_DIRECT (مصفوفة القيم بالإضافة إلى مصفوفة مؤشرات منفصلة).

التحويل والفضائي

EnumerationsEnumerations
Transformتحويل محلي مرفق بـ Node. يوفر إزاحة، دوران (كـ Quaternion), ومكوّنات مقياس، بالإضافة إلى طرق مساعدة لزوايا أويلر.
GlobalTransformعرض للقراءة فقط لتحويل الفضاء العالمي للعقدة بعد تجميع جميع تحويلات الأسلاف. يتم الوصول إليه عبر node.getGlobalTransform().
AssetInfoكتلة بيانات التعريف المرفقة بـ Scene. يخزن اسم تطبيق الإنشاء، اسم الوحدة، معامل مقياس الوحدة، تعريفات محاور نظام الإحداثيات، وطوابع زمنية للإنشاء/التعديل.

المواد والتظليل

EnumerationsEnumerations
Materialفئة أساسية مجردة لجميع أنواع المواد. توفر اسمًا ومجموعة خصائص للمعلمات الرقمية واللون.
PbrMaterialمادة تجسيد معتمدة على الفيزياء. تخزن albedo، معامل المعدن، معامل الخشونة، اللون المنبعث، الشفافية، والملمس المرتبط. تُستخدم بواسطة glTF 2.0 وغيرها من الصيغ الداعمة لـ PBR. الاستيراد: com.aspose.threed.shading.PbrMaterial.

Enumerations

EnumerationsEnumerations
Cameraكيان الكاميرا. يرث من Entity. لا يتم كشف أي خصائص خاصة بالصيغ في نسخة Java FOSS بخلاف الاسم الموروث ومجموعة الخصائص. مرفق بـ Node لتحديد تحويلات نقطة المشهد.

ملاحظة: Enumerations Light الفئة غير متوفرة في نسخة Java من Aspose.3D FOSS. يتم تخزين بيانات إضاءة المشهد من الملفات المستوردة كـ generic Entity الكائنات.


أدوات الرياضيات

EnumerationsEnumerations
Vector2متجه ذو دقة مزدوجة مكوّن من عنصرين (x, y). يُستخدم لإحداثيات القوام UV.
Vector3متجه ذو دقة مزدوجة مكوّن من ثلاثة عناصر (x, y, z). يُستخدم للمواقع، الاتجاهات، والقياس.
Vector4متجه ذو دقة مزدوجة مكوّن من أربعة عناصر (x, y, z, w). يُستخدم لنقاط التحكم (المواقع المتجانسة) وبيانات العادية.
FVector3متجه عائم بدقة مفردة مكوّن من ثلاثة عناصر. يظهر في مصفوفات بيانات عناصر القمم للمتجهات العادية والماسية.
FVector4متجه عائم بدقة مفردة مكوّن من أربعة عناصر. نوع التخزين لـ VertexElementFVector البيانات.
Quaternionكواتيرنيون وحدة لتمثيل الدورانات (w, x, y, z). يُستخدم بواسطة Transform.getRotation().
Matrix44x4 double-precision transformation matrix. Used for world/local transform computations and can be constructed from TRS decompositions.
BoundingBoxصندوق احتواء محاذٍ للمحاور يُعرّف بـ getMinimum() و getMaximum() Vector3 زوايا. يُستخدم لاستعلامات الفضاء ومساعدي frustum culling.

Enumerations

EnumerationsEnumerations
AnimationClipحاوية مسماة لنطاق الرسوم المتحركة. A Scene قد تحتوي على مقاطع متعددة (مثل “Walk”, “Run”). قالب إعلان — بيانات الإطارات المفتاحية والتشغيل لم تُنفّذ بعد.

إدخال وإخراج الصيغ

EnumerationsEnumerations
Scene.fromFile(path)طريقة ثابتة. يفتح الملف في path,، يكتشف الصيغة من الامتداد، ويعيد كائنًا مُعبأً Scene. يطرح استثناء عند عدم العثور على الملف أو صيغة غير مدعومة.
Scene.open(path, options)طريقة كائن. يفتح ملفًا في كائن موجود Scene كائن، اختياريًا باستخدام format-specific LoadOptions فئة فرعية.
Scene.save(path, options)طريقة كائن. تسلسل المشهد إلى path باستخدام الصيغة المستنتجة من الامتداد، مع إمكانية استخدام format-specific SaveOptions فئة فرعية.
FileFormatسجل صيغ الملفات المدعومة. يحتوي على مدخلات مثل FileFormat.WAVEFRONT_OBJ(), FileFormat.GLTF2(), FileFormat.FBX7400ASCII().
IOServiceتجريد I/O داخلي يُستخدم من قبل مستوردي ومصدري الصيغ. عادةً لا يُستَخدم مباشرةً من قبل شفرة التطبيق.
LoadOptionsالفئة الأساسية لجميع كائنات خيارات التحميل الخاصة بالصيغة. يتم توريثها من قبل ObjLoadOptions, StlLoadOptions, GltfLoadOptions, FbxLoadOptions.
SaveOptionsالفئة الأساسية لجميع كائنات خيارات الحفظ الخاصة بالصيغة. يتم توريثها من قبل ObjSaveOptions, StlSaveOptions, GltfSaveOptions.

صيغة OBJ

EnumerationsEnumerations
ObjImporterفئة المستورد الداخلية التي تقوم بتحليل ملفات Wavefront OBJ و MTL. تُستدعى تلقائيًا بواسطة Scene.fromFile() لـ .obj الامتدادات.
ObjLoadOptionsخيارات التحميل لملفات Wavefront OBJ. الخصائص الرئيسية: setFlipCoordinateSystem(), setScale(), setEnableMaterials(), setNormalizeNormal().
ObjSaveOptionsخيارات الحفظ لإخراج Wavefront OBJ. تتحكم في normals، UVs، مراجع المواد، ووضع point‑cloud mode.
ObjFormatوصف الصيغة لـ Wavefront OBJ. يمكن الوصول إليه كـ FileFormat.WAVEFRONT_OBJ().

صيغة STL

EnumerationsEnumerations
StlImporterالمستورد الداخلي الذي يقرأ ملفات STL الثنائية و ASCII. يتم اختياره تلقائيًا حسب الامتداد.
StlExporterمُصدِّر داخلي يكتب ملفات STL.
StlLoadOptionsخيارات التحميل لملفات STL. يدعم setFlipCoordinateSystem(), setRecalculateNormal(),، و setContentType().
StlSaveOptionsخيارات الحفظ لإخراج STL. يتحكم setFlipCoordinateSystem(), setAxisSystem(),، و setContentType().
StlFormatوصف التنسيق لـ STL.

صيغة glTF

EnumerationsEnumerations
GltfLoadOptionsخيارات التحميل لملفات glTF 2.0 و GLB. الخصائص الرئيسية: setFlipCoordinateSystem(), setPrettyPrint().
GltfSaveOptionsخيارات الحفظ لإخراج glTF 2.0 و GLB. استخدم setContentType(FileContentType.BINARY) لإنتاج حزمة مستقلة .glb حزمة.
GltfFormatوصف تنسيق لـ glTF 2.0 / GLB. يمكن الوصول إليه كـ FileFormat.GLTF2().

تنسيق FBX

يتم دعم FBX لـ استيراد فقط. تصدير إلى FBX غير متوفر في نسخة Java FOSS.

EnumerationsEnumerations
FbxLoadOptionsخيارات التحميل لملفات FBX. الخاصية الرئيسية: setFlipCoordinateSystem().
FbxFormatوصف تنسيق لـ FBX. يمكن الوصول إليه كـ FileFormat.FBX7400ASCII().

Enumerations

EnumerationsEnumerations
Axisيحدد محور إحداثي: X_AXIS, Y_AXIS, Z_AXIS. يُستخدم في خيارات إعادة تعيين نظام الإحداثيات.
CoordinateSystemيحدد اتفاقية اليد: RIGHT_HANDED أو LEFT_HANDED.
TextureMappingيحدد كيفية ربط النسيج بالهندسة: DIFFUSE, SPECULAR, EMISSIVE, NORMAL, AMBIENT, إلخ.
BooleanOperationنوع عملية بوليانية CSG: UNION, DIFFERENCE, INTERSECTION.

نظام الخصائص

EnumerationsEnumerations
Propertyخاصية واحدة مسماة ومُعرفة النوع على A3DObject. يخزن اسم الخاصية، ووصف النوع، والقيمة الحالية.
PropertyCollectionمجموعة قابلة للتكرار من Property كائنات مرفقة بـ A3DObject. يدعم البحث بالاسم والتكرار على جميع الخصائص المعرفة.
CustomObjectخفيفة الوزن A3DObject فئة فرعية تحمل فقط اسمًا وـ PropertyCollection. يُستخدم لتخزين البيانات الوصفية المعرفة من قبل المستخدم على كائنات المشهد.

الصورة والتصيير

EnumerationsEnumerations
ImageRenderOptionsخيارات software rasterisation عند تصيير مشهد إلى image buffer. يخزن لون الخلفية، أبعاد الصورة، وإشارة الكاميرا. هذه الميزة متاحة في التكوينات المدعومة.

انظر أيضًا

 العربية