مقدمة

نحن نطلق سراح Aspose.3D FOSS لـ Python,مكتبة بيوثون النقية للقراءة والكتابة وتحويل تنسيقات الملفات 3D الشائعة.المكتبت ينشر على PyPI ك aspose-3d-foss,يحمل ترخيص MIT ، ولديه صفر الاعتماد الخارجي.

إذا كنت قد حاولت من أي وقت مضى فحص أو تحويل ملفات 3D برمجة (إزالة المعدلات الخلفية، أنبوب OBJ الهندسة إلى سكريبت المعالجة، أو التحويل مجموعة من ملف STL إلى glTF لمشاهدة الويب)، يتم بناء هذه المكتبة لهذا الاستخدام حالة.


ما هو مدرجة

الرسوم البيانية المشهد

يتم تحميل كل ملف في A Scene الكائن الذي يظهر الهرم النودي للملف الأصلي. Transform (ترجمة، الدوران، مقياس) وواحدة أو أكثر من الكيانات المرتبطة مثل: Mesh, Camera,أو Light.الرسم البياني للمشهد هو نفسه بغض النظر عن تنسيق المصدر، لذلك الكود المكتوب للذهاب ومعالجة الهندسة العمل على جميع التنسيقات المدعومة دون تعديل.

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

Mesh الكائنات التي تظهر:

  • control_points:قائمة المواقف الورقية كما Vector4 ( x ، y ، z ، w )
  • polygons: قائمة من قوائم المؤشرات الوجهية (العدد المتعدي التناقض، وليس مجرد المثلثات)
  • get_element(VertexElementType): يستعيد طبقات البيانات العمودية المسمى للمعتادين والأشعة فوق البنفسجية والألوان العودية ومجموعات التخفيف

المواد

LambertMaterial و PhongMaterial تحمل الخصائص المادية التي قرأتها من OBJ .mtl المواد (البيئة، متفرقة، مرئية، انبعاثات، شفافية وضوء).المواد البقاء على قيد الحياة تحميل-إنقاذ رحلة الدائرة للأنماط التي تدعمها.

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

Vector2, Vector3, Vector4, FVector3, Quaternion, Matrix4,و ، و BoundingBox يتم تضمينها كأنواع قيمة خفيفة الوزن لحسابات الهندسة الجيومترية.

الرسوم المتحركة

وَالْمُتَّقِينَ AnimationClip, AnimationNode, KeyframeSequence,و ، و KeyFrame تتيح الفصول الوصول إلى بيانات الرسوم المتحركة من المفاتيح التي تحملها، مثل glTF و COLLADA.


بدء سريع

asposefoss/3d is not yet published — build from source until it ships. See the project README for build instructions.

تحميل ملف 3D وطباعة العد العمودي لكل مادة:

from aspose.threed import Scene
from aspose.threed.entities import Mesh

scene = Scene.from_file("model.obj")

def visit(node):
    for entity in node.entities:
        if isinstance(entity, Mesh):
            print(f"{node.name}: {len(entity.control_points)} vertices, "
                  f"{len(entity.polygons)} polygons")
    for child in node.child_nodes:
        visit(child)

visit(scene.root_node)

تحويل نفس الملف إلى glTF:

from aspose.threed import Scene
from aspose.threed.formats import GltfSaveOptions

scene = Scene.from_file("model.obj")
scene.save("model.gltf", GltfSaveOptions())

لا ملفات التكوين، لا مفاتيح API، ولا مكالمات الشبكة.


تنسيقات مدعومة

شكلExtension(s)تحميلحفظملاحظات
OBJ.objنعمنعم.mtl المواد المعدنية مدعومة
STL.stlنعمنعمالبنائية و ASCII؛ خيار التمرير من نظام المعايير
GLTF.gltf, .glbنعمنعم.glb (المحتوى الذاتي) مدعومة
COLLADA.daeنعمنعمColladaSaveOptions متوفر مع flip_coordinate_system, enable_materials, indented
3MF.3mfنعمنعممناسبة لعملية الطباعة 3D
FBX.fbxالجزءN/Aتوكينزر فقط؛ كاملة البارسر في التقدم

تُظهر تشكيلات التكيف من إضافات الملف.تحديد الشحن و خيارات حفظ (ObjLoadOptions, StlSaveOptions, GltfSaveOptions, ThreeMfSaveOptions( ) متوفرة للتحكم في الحبوب الدقيقة.


مفتوحة المصدر و مجانا

مجلة MIT مرخصة.يمكنك استخدامها في التطبيقات التجارية، وتعديلها، وإعادة توزيعها دون قيود.المصدر متاح على GitHub تحت Aspose المنظمة.

لا توجد أطراف الاستخدام، ولا حدود الرموز، وليس هناك تليمتريا.المكتبة تقوم بجميع المعالجة محليا.

الاعتماد:يتم تثبيت الحزمة كعجلة Python النقية مع لا توجد امتدادات C ولا متطلبات وقت التشغيل من طرف ثالث.


بدءاً من


استنتاجات

Aspose.3D FOSS for Python 26.1.0 يغطي أكثر تنسيقات الملفات 3D شيوعا المستخدمة في الأدوات، الأنابيب، وتطبيقات الويب (OBJ، STL، glTF، COLLADA، و 3MF) مع API متسقة من بايثون وليس هناك تهيج التثبيت.إذا كنت تواجه خطأ، أو حالة الحافة غير مدعومة،، أم تنموذج تحتاج إلى إضافة، يرجى فتح مشكلة على GitHub.نحن نشاطا الحفاظ على المكتبة ونرحب بالمشاركات.