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 กัน

API การประมวลผลไฟล์ CAD

Aspose.CAD Cloud คือ API ที่ใช้ REST ของเรา ซึ่งมีความสามารถในการปรับขนาด หมุน พลิก แก้ไขภาพวาด CAD หรือแม้แต่ส่งออกภาพวาด AutoCAD ไปยังรูปแบบอื่นๆ ที่รองรับ เช่น รูปภาพ (BMP, PNG, JPG) และเลย์เอาต์คงที่ (PDF เป็นเวกเตอร์และแรสเตอร์) สำหรับรายละเอียดเพิ่มเติม โปรดไปที่ รูปแบบไฟล์ที่รองรับ เนื่องจาก API ได้รับการพัฒนาตามสถาปัตยกรรม REST เราจึงสามารถนำไปใช้ในแอปพลิเคชันบนเดสก์ท็อป มือถือ เว็บ และบนคลาวด์ได้

เพื่ออำนวยความสะดวกแก่ลูกค้ามากขึ้น เราจึงได้สร้าง SDK เฉพาะสำหรับภาษาการเขียนโปรแกรมเพื่อให้คุณได้รับฟีเจอร์/ความสามารถทั้งหมดในภาษาการเขียนโปรแกรมที่คุณชื่นชอบ บทความนี้จะเน้นย้ำถึงการใช้งาน Aspose.CAD Cloud SDK for .NET ขณะนี้ ในการใช้ SDK เราต้องติดตั้งบนระบบก่อน สำหรับรายละเอียดที่เกี่ยวข้อง โปรดไปที่ วิธีติดตั้ง Aspose.Cloud SDK

STL เป็น BMP ใน C#

โปรดปฏิบัติตามคำแนะนำด้านล่างเพื่อแปลงไฟล์ STL ที่มีอยู่แล้วในระบบคลาวด์และบันทึก BMP ที่ได้ในระบบจัดเก็บข้อมูลบนคลาวด์ PostDrawingBmp ใช้สำหรับการดำเนินการแปลง

  • ขั้นแรก ให้สร้างอินสแตนซ์ของ File.Createclass โดยส่งรายละเอียด ClientID และ ClientSecret เป็นอาร์กิวเมนต์
  • ประการที่สอง สร้างอ็อบเจ็กต์ของคลาส BmpOptionsDTO ซึ่งเราสามารถให้คุณสมบัติสำหรับการดำเนินการแปลงได้
  • ประการที่สาม สร้างอินสแตนซ์ของคลาส PostDrawingBmpRequest โดยระบุชื่อไฟล์ STL อินพุตและอ็อบเจ็กต์ BmpOptionsDTO เป็นอาร์กิวเมนต์
  • ตอนนี้เรียกวิธี PostDrawingBmp(…) เพื่อเริ่มการดำเนินการแปลง
  • สุดท้าย ให้บันทึกอินสแตนซ์ Stream เป็นไฟล์โดยใช้ File.Create object
// สำหรับตัวอย่างและไฟล์ข้อมูลแบบสมบูรณ์ โปรดไปที่ 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);
}

// วิธีการที่กำหนดเองเพื่อบันทึกเนื้อหาสตรีมเป็นวัตถุไฟล์
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 เป็น BMP โดยใช้ cURL

เนื่องจากสถาปัตยกรรม 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 โดยใช้ Client ID และ Client Secret Key

ตอนนี้เรามีโทเค็น 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 โดยไม่ต้องใช้ส่วนประกอบของบุคคลที่สาม นอกจากนี้ การดำเนินการแปลงทั้งหมดดำเนินการบนคลาวด์โดยไม่เพิ่มภาระให้กับระบบภายใน เนื่องจาก SDK ของเราได้รับการพัฒนาภายใต้ใบอนุญาต MIT จึงสามารถดาวน์โหลดซอร์สโค้ดทั้งหมดได้จาก GitHub หากคุณพบปัญหาใดๆ หรือมีคำถามที่เกี่ยวข้อง โปรดติดต่อเราผ่าน ฟอรัมสนับสนุนผลิตภัณฑ์ฟรี

บทความที่เกี่ยวข้อง

เราขอแนะนำให้เยี่ยมชมลิงค์ต่อไปนี้เพื่อเรียนรู้เกี่ยวกับ: