1. محصولات
  2.   Aspose.3D
  3.   Aspose.3D FOSS for Python

Aspose.3D FOSS برای Python

بارگذاری، ایجاد، تبدیل و استخراج صحنه‌های سه‌بعدی از Python — رایگان و منبع باز.

کتابخانه منبع باز Python برای پردازش فایل‌های سه‌بعدی

Aspose.3D FOSS برای Python یک کتابخانه تحت مجوز MIT، pure-Python برای کار با فرمت‌های فایل 3D است. آن را با یک فرمان pip نصب کنید و بلافاصله شروع به خواندن، ساخت و نوشتن صحنه‌های 3D کنید بدون اینکه نیاز به نصب هیچ runtime بومی، SDK خارجی یا رندرر شخص ثالثی داشته باشید.

این کتابخانه یک API صحنه‌گراف تمیز را که حول Scene، Node، Mesh، Camera، Light و Transform ساخته شده است، ارائه می‌دهد؛ همان مدل مفهومی که ابزارهای حرفه‌ای 3D استفاده می‌کنند. پشتیبانی از فرمت‌ها شامل OBJ (با بارگذاری مواد .mtl)، STL (دودویی و ASCII، تأیید شده برای roundtrip)، glTF 2.0 / GLB (مواد PBR)، COLLADA (DAE)، 3MF و FBX است. گزینه‌های بارگذاری و ذخیره‌سازی برای هر فرمت به شما امکان می‌دهد تا چرخش مختصات، مقیاس، نرمال‌سازی نرمال‌ها و بارگذاری مواد را بدون نوشتن کد تجزیه‌گر مخصوص فرمت کنترل کنید.

Aspose.3D FOSS از Python نسخه‌های 3.7 تا 3.12 پشتیبانی می‌کند و به‌صورت یکسان بر روی Windows، macOS و Linux CI runners، کانتینرهای Docker و محیط‌های serverless اجرا می‌شود. هیچ افزونه بومی برای کامپایل وجود ندارد و نیازی به نصب بسته سیستمی نیست.

پشتیبانی از فرمت‌های سه‌بعدی و API گراف صحنه

  • OBJ / MTL: بارگذاری فایل‌های Wavefront OBJ همراه با تعاریف مواد.
  • STL: خواندن و نوشتن هر دو نوع باینری و ASCII STL با تأیید کامل roundtrip.
  • glTF 2.0 / GLB: بارگذاری مواد PBR و خروجی باینری GLB از طریق GltfSaveOptions.
  • COLLADA, 3MF, FBX: پشتیبانی اضافی از فرمت‌ها با کلاس‌های گزینه مخصوص هر فرمت.
  • Scene-graph API: Scene، Node، Mesh، Camera، Light، Transform.

جایی که می‌توان از Aspose.3D FOSS استفاده کرد

  • پایپلاین‌های اعتبارسنجی دارایی: در CI دارایی‌های 3D را بررسی، جهت‌دهی مجدد و دوباره صادر کنید.
  • ابزارهای توسعه بازی: مش‌های OBJ/GLB را به صورت دسته‌ای پردازش کنید بدون نیاز به موتور بومی.
  • جریان‌های کاری چاپ 3D: فایل‌های STL و 3MF را بخوانید، اعتبارسنجی کنید و دوباره صادر کنید.
  • پشت‌سرهای وب: ارائهٔ نقاط انتهایی تبدیل 3D در Docker یا توابع بدون سرور.
  • مهاجرت محتوا: تبدیل بین خانواده‌های فرمت به‌صورت مقیاس‌پذیر.

گزینه‌های هر فرمت و کنترل مختصات

  • جهت‌گیری سیستم مختصات: محورها را معکوس کنید و مقیاس را بر حسب فرمت تنظیم کنید بدون کد سفارشی.
  • نرمال‌سازی: به‌صورت خودکار نرمال‌های راس‌ها را هنگام بارگذاری یا ذخیره‌سازی نرمال کنید.
  • کنترل بارگذاری مواد: برای تجزیه سریع‌تر، بارگذاری MTL/texture را فعال یا غیرفعال کنید.
  • خروجی باینری در مقابل JSON: از طریق گزینه‌ها، GLB فشرده یا glTF قابل خواندن برای انسان را انتخاب کنید.
  • دقت دورگرد: ساختار گراف صحنه در طول چرخه‌های بارگذاری و ذخیره‌سازی حفظ می‌شود (دقت حفظ گره‌ها به فرمت وابسته است و برای همه فرمت‌ها به‌صورت مستقل تأیید نشده است).

تجربهٔ توسعه‌دهنده

Aspose.3D FOSS برای نصب‌های Python با یک فرمان pip install aspose-3d-foss ارائه می‌شود. این کتابخانه کاملاً Python است، بدون افزونه‌های بومی برای کامپایل و بدون نیاز به نصب بسته‌های سیستمی.

API گراف صحنه مدل مفهومی ابزارهای حرفه‌ای 3D را بازتاب می‌دهد، بنابراین منحنی یادگیری برای هر کسی که با مدل داده Three.js یا Blender آشناست کوتاه است. این کتابخانه تحت مجوز MIT، منبع باز است و گزارش‌های باگ و مشارکت‌ها را در GitHub خوش‌آمد می‌گوید.

یک صحنهٔ OBJ را بارگذاری کنید و به‌صورت glTF صادر کنید

با pip نصب کنید، سپس Scene.open() را با ObjLoadOptions فراخوانی کنید تا فایل OBJ همراه با تعاریف مواد MTL آن بارگذاری شود. یک فراخوانی scene.save() با پسوند .gltf یک فایل JSON glTF 2.0 می‌نویسد، بدون نیاز به رجیستری فرمت یا شیء مبدل.

pip install aspose-3d-foss
from aspose.threed import Scene
from aspose.threed.formats import ObjLoadOptions

# بارگذاری یک فایل OBJ (با مواد .mtl)
scene = Scene()
scene.open("model.obj", ObjLoadOptions())

# خروجی به صورت glTF 2.0
scene.save("model.gltf")

STL را به Binary GLB تبدیل کنید با وارون‌سازی مختصات

برای تولید یک GLB باینری فشرده به جای JSON glTF پیش‌فرض، یک نمونهٔ GltfSaveOptions را با binary_mode = True پاس دهید. همان الگو برای تنظیمات سیستم مختصات اعمال می‌شود — کلاس گزینه‌ها را برای فرمت هدف خود تعویض کنید.

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

scene = Scene()
scene.open("mesh.stl")

# ذخیره به صورت باینری GLB
opts = GltfSaveOptions()
opts.binary_mode = True
scene.save("mesh.glb", opts)

سوالات متداول

Aspose.3D FOSS برای Python چیست؟

این یک کتابخانهٔ رایگان، تحت مجوز MIT، pure-Python برای بارگذاری، دستکاری و ذخیرهٔ صحنه‌های سه‌بعدی است که بدون نصب هیچ‌یک از زمان‌اجرای بومی یا SDK خارجی کار می‌کند.

کدام فرمت‌های 3D پشتیبانی می‌شوند؟

OBJ (با .mtl)، STL (دودویی و ASCII)، glTF 2.0 و GLB، COLLADA (DAE)، 3MF و FBX. هر قالب یک کلاس گزینه‌های بارگذاری/ذخیرهٔ اختصاصی دارد.

آیا به هیچ وابستگی بومی نیاز دارد؟

خیر. Aspose.3D FOSS برای Python یک Python خالص بدون هیچ افزونهٔ بومی است. این کتابخانه بر روی Windows، macOS و Linux بدون هیچ مرحلهٔ کامپایل اجرا می‌شود.

چگونه آن را نصب کنم؟

دستور pip install aspose-3d-foss را اجرا کنید. هیچ بستهٔ سیستمی اضافی یا افزونهٔ بومی لازم نیست.

آیا می‌توانم جهت‌گیری سیستم مختصات را کنترل کنم؟

بله. کلاس‌های گزینهٔ هر قالب به شما امکان می‌دهند محورها را معکوس کنید، مقیاس را تنظیم کنید و نرمال‌ها را نرمال‌سازی کنید بدون اینکه نیاز به نوشتن کد تجزیهٔ مخصوص به قالب داشته باشید.

کدام نسخه‌های Python پشتیبانی می‌شوند؟

Python 3.7 تا 3.12 پشتیبانی می‌شود. کتابخانه به‌صورت یکسان بر روی تمام سیستم‌عامل‌های اصلی اجرا می‌گردد.

آیا کد منبع در دسترس است؟

بله. کتابخانه تحت مجوز MIT است و در GitHub میزبانی می‌شود. گزارش‌های باگ و pull requests مورد استقبال هستند.

  

منابع پشتیبانی و آموزش

 فارسی