كيف تبدأ مع 3D في Python

كيف تبدأ مع 3D في Python

المعايير

  • Python 3.7 أو أحدث
  • مدير حزمة Pip

الخطوة 1 - تثبيت الحزمة

تثبيت Aspose.3D FOSS لـ Python من PyPI:

pip install aspose-3d-foss

تحقق من التثبيت :

import aspose.threed as a3d
scene = a3d.Scene()
print("Aspose.3D FOSS is working, version:", a3d.Scene.VERSION)

الخطوة 2 - إنشاء أول مشهد 3D الخاص بك

أ أ Scene هو حاوية الجذر لجميع الأشياء 3D.المصنع يقبل خيارا الكيان، ومسرح الوالد، والاسم:

import aspose.threed as a3d

# Create an empty scene (CLM-3d-35d727)
scene = a3d.Scene()

# Access the root node of the scene (CLM-3d-859ac2)
root = scene.root_node  # root_node is a property, not a method — no ()
print("Root node:", root)

الخطوة 3 - إضافة ميتش إلى المشهد

Mesh يقدم الهندسة الجيولوجية المتعددة. Node يرفع الكيانات إلى الرسم البياني للمشهد:

import aspose.threed as a3d

scene = a3d.Scene()

# Create a named mesh (CLM-3d-529c11)
mesh = a3d.Mesh("my_mesh")

# Create a node and attach the mesh (CLM-3d-0edae8)
node = a3d.Node("my_node", mesh)

# Add the node as a child of the root (CLM-3d-a403f5)
scene.root_node.add_child_node(node)  # root_node is a property, not a method — no ()

الخطوة 4 - تحميل ملف 3D موجود

Scene.open() تحميل ملف 3D من القرص أو التدفق. يقبل مسار واختيار خيارات الشحن :

import aspose.threed as a3d

# Load an OBJ file (CLM-3d-d84964)
scene = a3d.Scene()
scene.open("model.obj")

# Inspect the loaded scene
root = scene.root_node  # root_node is a property, not a method — no ()
print("Child nodes:", len(root.child_nodes))  # child_nodes is a property, not a method — no ()

لتحديد تنسيق الملف قبل تحميل:

import aspose.threed as a3d

# Detect the format from a file name (CLM-3d-d2de62)
fmt = a3d.FileFormat.detect(None, "model.fbx")
if fmt:
    print("Detected format:", fmt.extension)  # extension is a property, not a method — no ()

الخطوة 5 - حفظ النتيجة إلى ملف

Scene.save() يُستخرج المشهد إلى أي شكل مدعوم.النهج الموصى به هو التمديد القائم على الكشف الذاتي: Aspose.3D يزيل النموذج من ملحق الملفات (CLM-3d-8051bd، CLM 3d-b28d7a، KLM3d-8e1a):

import aspose.threed as a3d

scene = a3d.Scene()
# ... populate scene ...

# Save as Wavefront OBJ — extension auto-detects the format
scene.save("output.obj")

# Save as glTF 2.0 binary — .glb extension triggers binary GLB output
scene.save("output.glb")

يمكنك أيضًا إرسال تنسيق واضح باستخدام أساليب المصنع. FileFormat.WAVEFRONT_OBJ() أو FileFormat.GLTF2(),ولكن التمديد الكشف الذاتي هو أسهل وأكثر قابلية للنقل.

الخطوات التالية

 العربية