Aspose.3D Cloud SDK for Java به توسعه‌دهندگان امکان می‌دهد تا به‌صورت برنامه‌نویسی با فرمت‌های فایل 3D کار کنند و قابلیت‌های تبدیل، رندرینگ و دستکاری را از طریق یک کتابخانه قدرتمند مبتنی بر REST ارائه دهد. این آموزش نشان می‌دهد که چگونه می‌توان 3MF را به STL در جاوا تبدیل کرد، شامل تنظیمات SDK، پیاده‌سازی کد، استفاده از cURL برای API REST و نکات بهترین روش برای پردازش قابل اعتماد مدل‌های 3D.

پیش‌نیازها و راه‌اندازی

برای دنبال کردن این راهنما به موارد زیر نیاز دارید:

  • Java Development Kit (JDK) 8 یا بالاتر.
  • Maven 3.5+ نصب شده بر روی ماشین شما.
  • یک حساب Aspose Cloud با شناسه مشتری (client ID) و رمز عبور مشتری (client secret) معتبر.

آخرین بسته SDK را از این صفحه دانلود کنید.

SDK را به پروژه Maven خود اضافه کنید:

<dependency>
    <groupId>com.aspose</groupId>
    <artifactId>aspose-3d-cloud</artifactId>
    <version>23.12</version>
</dependency>

یا از طریق خط فرمان نصب کنید:

mvn install com.aspose:aspose-3d-cloud

پس از افزودن وابستگی، یک فایل پیکربندی (aspose3d.properties) با اعتبارهای خود ایجاد کنید:

client_id=YOUR_CLIENT_ID
client_secret=YOUR_CLIENT_SECRET

مراحل تبدیل 3MF به STL در جاوا

  1. مقداردهی اولیه مشتری API: از ApiClient برای تنظیم احراز هویت استفاده کنید.
    مثال: ApiClient client = new ApiClient();

  2. آپلود فایل 3MF: متد UploadFile از StorageApi را فراخوانی کنید.
    مستندات: Storage API Reference.

  3. پیکربندی گزینه‌های خروجی STL: یک شیء StlExportOptions ایجاد کنید تا فرمت باینری یا ASCII را مشخص کنید.

  4. اجرای تبدیل: از ThreeDApi.convert3D (یا مشابه) برای تبدیل 3MF بارگذاری شده به STL استفاده کنید.

  5. دانلود نتیجه STL: فایل تبدیل‌شده را از ذخیره‌سازی ابری بازیابی کنید و به‌صورت محلی ذخیره کنید.

ویژگی‌های کلیدی Aspose.3D Cloud SDK for Java

  • از بیش از ۵۰ فرمت فایل ۳D پشتیبانی می‌کند، از جمله 3MF، STL، OBJ، FBX، و موارد دیگر.
  • هر دو روش تبدیل همزمان و ناهمزمان را فراهم می‌آورد.
  • گزینه‌های صادرات دقیق مانند بهبود مش، تبدیل واحد و مدیریت بافت را ارائه می‌دهد.
  • بر پایه زیرساخت ابری مقیاس‌پذیر ساخته شده است و عملکرد بالا برای مدل‌های بزرگ را تضمین می‌کند.

گام به گام: تبدیل 3MF به STL با استفاده از Aspose.3D Cloud SDK for Java

SDK پیچیدگی پردازش 3D را انتزاع می‌کند. پس از بارگذاری یک فایل 3MF، به سادگی نقطه انتهایی تبدیل را با فرمت خروجی مورد نظر فراخوانی می‌کنید. سرویس فایل STL را که آماده چاپ 3D یا دستکاری بیشتر است، برمی‌گرداند.

پیکربندی گزینه‌های خروجی STL با Aspose.3D Cloud SDK

می‌توانید خروجی STL را با تنظیم ویژگی‌هایی مانند binary، solidName و scaleFactor سفارشی کنید. این گزینه‌ها زمانی مفید هستند که هدف‌گیری چاپگرهای سه‌بعدی خاص یا نرم‌افزاری که انتظارات خاصی از قراردادهای STL دارد، باشد.

بهینه‌سازی عملکرد برای تبدیل دسته‌ای 3MF به STL

هنگام تبدیل تعداد زیادی فایل، موارد زیر را در نظر بگیرید:

  • استفاده مجدد از یک نمونه ApiClient برای جلوگیری از هزینه‌های مکرر احراز هویت.
  • فعال‌سازی فشرده‌سازی برای فایل‌های بارگذاری‌شده به منظور کاهش مصرف پهنای باند.
  • پردازش فایل‌ها به صورت موازی با استفاده از ExecutorService جاوا.

مدیریت خطاها و عیب‌یابی مشکلات تبدیل

SDK برای خطاهای HTTP ApiException را پرتاب می‌کند. علل رایج شامل اعتبارهای نامعتبر، ویژگی‌های پشتیبانی‌نشده فایل یا عبور از محدودیت‌های اندازه است. برای دریافت اطلاعات دقیق خطا از getResponseBody() استثنا استفاده کنید.

بهترین روش‌ها برای مدیریت و ذخیره‌سازی فایل‌ها

  • فایل‌های منبع 3MF را در یک پوشه اختصاصی درون ذخیره‌سازی Aspose Cloud ذخیره کنید.
  • پس از دانلود، فایل‌های موقت STL را حذف کنید تا هزینه‌های ذخیره‌سازی کم بماند.
  • زمان‌بندی‌ها و نتایج تبدیل را برای ردپای حسابرسی ثبت کنید.

تبدیل 3MF به STL در Java - مثال کامل کد

مثال زیر یک تبدیل کامل end‑to‑end را نشان می‌دهد که شامل احراز هویت، بارگذاری، تبدیل و دانلود است.

Note: این مثال کد عملکرد اصلی را نشان می‌دهد. قبل از استفاده از آن در پروژه خود، مطمئن شوید مسیرهای فایل (input.3mf, output.stl) را به مکان‌های واقعی خود به‌روزرسانی کنید، اطمینان حاصل کنید تمام وابستگی‌های مورد نیاز به‌درستی نصب شده‌اند، و به‌طور کامل در محیط توسعه خود تست کنید. اگر با مشکلی مواجه شدید، لطفاً به مستندات رسمی مراجعه کنید یا برای دریافت کمک به تیم پشتیبانی مراجعه نمایید.

تبدیل 3MF به STL از طریق REST API با cURL

اگر ترجیح می‌دهید SDK را نصب نکنید، می‌توانید مستقیماً از Aspose 3D Cloud REST API استفاده کنید. مراحل زیر از cURL استفاده می‌کنند و فرض می‌شود که curl نصب شده است.

1. احراز هویت و دریافت توکن دسترسی

curl -X POST "https://api.aspose.cloud/connect/token" \
     -H "Content-Type: application/x-www-form-urlencoded" \
     -d "grant_type=client_credentials&client_id=YOUR_CLIENT_ID&client_secret=YOUR_CLIENT_SECRET"

پاسخ شامل مقدار access_token است.

۲. بارگذاری فایل منبع 3MF

curl -X PUT "https://api.aspose.cloud/v3.0/3d/storage/file/3mf-input/input.3mf" \
     -H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
     -H "Content-Type: application/octet-stream" \
     --data-binary @input.3mf

3. اجرای تبدیل

curl -X POST "https://api.aspose.cloud/v3.0/3d/convert" \
     -H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
     -H "Content-Type: application/json" \
     -d '{
           "sourcePath": "3mf-input/input.3mf",
           "outputPath": "stl-output/output.stl",
           "format": "stl",
           "options": {
               "binary": true,
               "solidName": "ConvertedModel"
           }
         }'

4. دانلود نتیجه STL

curl -X GET "https://api.aspose.cloud/v3.0/3d/storage/file/stl-output/output.stl" \
     -H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
     -o output.stl

برای دریافت فهرست کامل نقاط انتهایی و پارامترها، به مرجع API مراجعه کنید.

نتیجه‌گیری

تبدیل 3MF به STL در جاوا به‌سادگی با Aspose.3D Cloud SDK for Java انجام می‌شود. این کتابخانه بارگذاری فایل، تبدیل فرمت و دانلود را مدیریت می‌کند، در حالی که REST API گزینه‌ای سبک‌وزن برای جریان‌های کاری مبتنی بر اسکریپت ارائه می‌دهد. به‌خاطر داشته باشید که برای استفاده در محیط تولید، یک لایسنس مناسب تهیه کنید؛ جزئیات قیمت‌گذاری در صفحه محصول موجود است و می‌توانید یک لایسنس موقت را از صفحه لایسنس موقت دریافت کنید. با کد و مثال‌های cURL بالا، می‌توانید تبدیل قابل اعتماد مدل‌های 3D را در هر برنامه جاوا یا خط لوله خودکارسازی ادغام کنید.

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

چگونه می‌توانم یک دسته بزرگ از فایل‌های 3MF را به‌صورت کارآمد تبدیل کنم؟
یک نمونهٔ ApiClient ایجاد کنید، فایل‌ها را به یک پوشهٔ مشترک بارگذاری کنید و بر روی فهرست فایل‌ها تکرار کنید و متد تبدیل را صدا بزنید. اجرای موازی با ExecutorService می‌تواند زمان پردازش کلی را بیشتر کاهش دهد.

کدام فرمت‌های STL پشتیبانی می‌شوند (باینری در مقابل ASCII)؟
SDK به شما امکان انتخاب را از طریق ویژگی StlExportOptions.setBinary(true/false) می‌دهد. STL باینری کوچکتر و سریع‌تر برای نوشتن است، در حالی که STL ASCII قابل خواندن برای انسان است.

آیا می‌توانم مستقیماً از یک URL بدون بارگذاری ابتدا تبدیل کنم؟
بله، API یک URL راه‌دور را به عنوان مسیر منبع می‌پذیرد. URL را در فیلد sourcePath درخواست تبدیل قرار دهید.

کجا می‌توانم مثال‌ها و پروژه‌های نمونه بیشتری پیدا کنم؟
مخزن رسمی Aspose 3D GitHub repository و سایت سایت مستندات را برای آموزش‌های بیشتر و قطعه‌های کد بررسی کنید.

بیشتر بخوانید