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

Aspose.3D FOSS برای Python

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

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

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

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

Aspose.3D FOSS از Python 3.7 تا 3.12 پشتیبانی می‌کند و به‌صورت یکسان بر روی Windows، macOS و Linux CI runners، کانتینرهای Docker و محیط‌های بدون سرور اجرا می‌شود. برای ویژگی‌ها و پشتیبانی سازمانی، به Aspose.3D for Python — Enterprise Product مراجعه کنید.

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

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

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

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

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

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

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

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

API گراف صحنه مدل مفهومی ابزارهای حرفه‌ای سه‌بعدی را بازتاب می‌دهد، بنابراین منحنی یادگیری برای هر کسی که با 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
# Load an OBJ file (with .mtl materials)
scene = Scene()
scene.open("model.obj", ObjLoadOptions())
# Export as glTF 2.0
scene.save("model.gltf")

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

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

from aspose.threed import Scene
from aspose.threed.formats import GltfSaveOptions
scene = Scene()
scene.open("mesh.stl")
# Save as binary 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 بدون هیچ مرحلهٔ کامپایل اجرا می‌شود.

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

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

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

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

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

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

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

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

  

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

 فارسی