STL که دارای چندین نام پس زمینه مانند “Standard Triangle Language” و “Standard Tessellation Language” است یک فرمت فایل بومی برای نرم افزار استریولیتوگرافی CAD است. فایل های STL فقط هندسه سطح یک جسم سه بعدی را بدون رنگ، بافت یا سایر ویژگی ها توصیف می کنند. برای مشاهده فایل STL، باید از یکی از برنامه های زیر استفاده کنید (یعنی Microsoft 3D Viewer، Microsoft Print 3D، IMSI TurboCAD Pro، GOM Inspect و غیره).برخی از این برنامه ها دارای هزینه های مجوز هستند و اگر گیرنده در دستگاه تلفن همراه باشد، مشاهده این فایل ها و ارائه بازخورد سریع بسیار دشوار می شود. بنابراین یک راه حل سریع و عملی تبدیل آنها به فرمت های تصویر شطرنجی مانند BMP است. حالا بیایید در مورد تبدیل STL به BMP در C# با استفاده از REST API بحث کنیم.

CAD Files Processing API

Aspose.CAD Cloud API مبتنی بر REST ما است که قابلیت‌هایی را برای مقیاس، چرخش، چرخش، ویرایش نقشه‌های CAD یا حتی صادرات نقشه‌های اتوکد به فرمت‌های پشتیبانی‌شده دیگر، مانند تصاویر (BMP، PNG، JPG) ارائه می‌کند. و چیدمان ثابت (PDF به صورت برداری و شطرنجی).برای جزئیات بیشتر، لطفاً از [فرمت‌های فایل پشتیبانی شده4 دیدن کنید. از آنجایی که API بر اساس معماری REST توسعه یافته است، بنابراین می‌توانیم آن را در دسکتاپ، موبایل، وب و برنامه‌های مبتنی بر Cloud استفاده کنیم.

برای تسهیل بیشتر مشتریان خود، ما SDK های مخصوص زبان برنامه نویسی را ایجاد کرده ایم تا شما تمام ویژگی ها/قابلیت های زبان برنامه نویسی مورد علاقه خود را دریافت کنید. این مقاله بر استفاده از Aspose.CAD Cloud SDK برای دات نت تأکید می کند. حال برای استفاده از SDK باید ابتدا آن را روی سیستم نصب کنیم. برای جزئیات مرتبط، لطفاً به نحوه نصب Aspose.Cloud SDKs مراجعه کنید.

STL به BMP در C#

لطفاً دستورالعمل‌های زیر را دنبال کنید تا فایل‌های STL را که قبلاً در Cloud موجود است تبدیل کنید و BMP حاصل را در فضای ذخیره‌سازی ابری ذخیره کنید. PostDrawingBmp برای عملیات تبدیل استفاده می شود.

  • در ابتدا، یک نمونه از File.Createclass ایجاد کنید و جزئیات ClientID و ClientSecret را به عنوان آرگومان ارسال کنید.
  • در مرحله دوم، یک شی از کلاس BmpOptionsDTO ایجاد کنید که در آن بتوانیم خصوصیات عملیات تبدیل را ارائه کنیم.
  • سوم، یک نمونه از کلاس PostDrawingBmpRequest با ارائه نام فایل STL ورودی و شی BmpOptionsDTO به عنوان آرگومان ایجاد کنید.
  • اکنون متد PostDrawingBmp(…) را برای شروع عملیات تبدیل فراخوانی کنید.
  • در نهایت، نمونه Stream را به عنوان یک فایل با استفاده از شی File.Create ذخیره کنید.
// برای نمونه‌های کامل و فایل‌های داده، لطفاً به https://github.com/aspose-cad-cloud/aspose-cad-cloud-dotnet مراجعه کنید.
// دریافت اعتبار مشتری از https://dashboard.aspose.cloud/
string clientSecret = "d757548a9f2558c39c2feebdf85b4c44";
string clientID = "4db2f826-bf9c-42e7-8b2a-8cbca2d15553";

// یک شی از CADApi ایجاد کنید
CadApi cadApi = new CadApi(clientSecret,clientID);

// نام فایل FBSTL ورودی
String inputFileName = "galeon.stl";
// فرمت فایل حاصل
String newFormat = "bmp";
// نام فایل حاصل
String newFileName = "Converted.bmp";

try
{
    // ایجاد یک نمونه از 
    BmpOptionsDTO bmpOptionsDTO = new BmpOptionsDTO();
    
    // ایجاد یک نمونه از PostDrawingBmp class while providing input 
    // نام فایل STL و اشیاء BmpOptionsDTO به عنوان آرگومان
    var response = new PostDrawingBmpRequest(inputFileName, bmpOptionsDTO);
    // عملیات تبدیل را آغاز کنید
    var responseStream = cadApi.PostDrawingBmp(response);
    
    saveToDisk(responseStream, @"C:\Users\shahbnay\Downloads\" + newFileName);
}catch (Exception ex)
{
    Console.WriteLine("error:" + ex.Message + "\n" + ex.StackTrace);
}

// روش سفارشی برای ذخیره محتوای Stream به عنوان شی فایل
static void saveToDisk(Stream responseStream, String resultantFile)
{
    var fileStream = File.Create(resultantFile);
    responseStream.Seek(0, SeekOrigin.Begin);
    responseStream.CopyTo(fileStream);
    fileStream.Close();
}

فایل های نمونه استفاده شده در مثال بالا را می توان از galeon.stl و converted.bmp دانلود کرد.

STL را با استفاده از cURL به BMP تبدیل کنید

با توجه به معماری REST API های ما، می توان به راحتی از طریق دستورات cURL در هر پلتفرمی به آنها دسترسی داشت. با این حال، یک پیش نیاز این است که توکن دسترسی JWT بر اساس ClientID و جزئیات Client Secret مشخص شده روی Aspose.Cloud dashboard ایجاد شود. لطفا دستور زیر را برای تولید توکن JWT اجرا کنید.

curl -v "https://api.aspose.cloud/connect/token" \
-X POST \
-d "grant_type=client_credentials&client_id=4ccf1790-accc-41e9-8d18-a78dbb2ed1aa&client_secret=caac6e3d4a4724b2feb53f4e460eade3" \
-H "Content-Type: application/x-www-form-urlencoded" \
-H "Accept: application/json"

برای جزئیات بیشتر، می‌توانید به [چگونگی دریافت رمز JWT با استفاده از شناسه مشتری و کلید مخفی مشتری12 مراجعه کنید.

اکنون که توکن JWT را دریافت کردیم، لطفاً دستور زیر را برای تبدیل فایل STL به فرمت BMP اجرا کنید و خروجی را در مکان مشخص شده ذخیره کنید.

curl -X GET "https://api.aspose.cloud/v3.0/cad/galeon.stl/saveAs/bmp" \
-H  "accept: application/json" \
-H  "authorization: Bearer <JWT Token>" \
-o Converted.bmp

نتیجه گیری

ما چند مرحله بسیار ساده را در مورد چگونگی تبدیل فایل های STL به تصویر شطرنجی BMP بدون استفاده از اجزای شخص ثالث مورد بحث قرار داده ایم. همچنین کل عملیات تبدیل در Cloud بدون بارگذاری روی سیستم محلی انجام شده است. از آنجایی که SDK های ما تحت مجوز MIT توسعه یافته اند، بنابراین کد منبع کامل را می توان از GitHub دانلود کرد. اگر با مشکلی مواجه شدید یا سؤال مرتبطی دارید، لطفاً از طریق تالار گفتمان پشتیبانی رایگان محصول با ما تماس بگیرید.

مقالات مرتبط

همچنین توصیه می کنیم برای کسب اطلاعات بیشتر به لینک های زیر مراجعه کنید: