“Standard Triangle Language” ve “Standard Tessellation Language” gibi çeşitli kısaltmaları olan STL, stereolitografi CAD yazılımına özgü bir dosya biçimidir. STL dosyaları, renk, doku veya diğer nitelikler olmadan yalnızca üç boyutlu bir nesnenin yüzey geometrisini tanımlar. STL dosyasını görüntülemek için aşağıdaki uygulamalardan birini kullanmanız gerekir (yani Microsoft 3D Viewer, Microsoft Print 3D, IMSI TurboCAD Pro, GOM Inspect, vb.).Bu uygulamalardan bazılarının lisans maliyetleri vardır ve alıcı mobil bir cihazdaysa, bu dosyaları görüntülemek ve hızlı geri bildirim sağlamak oldukça zorlaşır. Bu nedenle hızlı ve uygulanabilir bir çözüm, bunları BMP gibi raster görüntü biçimlerine dönüştürmektir. Şimdi, REST API’yi kullanarak C#’ta STL’nin BMP’ye dönüştürülmesini tartışalım.

CAD Dosyaları İşleme API’si

Aspose.CAD Cloud, CAD çizimlerini ölçekleme, döndürme, çevirme, düzenleme veya hatta AutoCAD çizimlerini resimler (BMP, PNG, JPG) ve sabit düzen (vektör ve raster olarak PDF) gibi diğer desteklenen biçimlere aktarma yetenekleri sunan REST tabanlı API’mizdir. Daha fazla ayrıntı için lütfen desteklenen dosya biçimleri adresini ziyaret edin. API, REST mimarisine göre geliştirildiğinden, masaüstü, mobil, web ve bulut tabanlı uygulamalara dahil edebiliriz.

Müşterilerimize daha fazla kolaylık sağlamak için, tüm özellikleri/yetenekleri favori programlama dilinizde elde edebilmeniz için programlama diline özgü SDK’lar oluşturduk. Bu makale Aspose.CAD Cloud SDK for .NET kullanımını vurgulayacaktır. Şimdi, SDK’yı kullanmak için önce onu sistem üzerine kurmamız gerekiyor. İlgili ayrıntılar için lütfen Aspose.Cloud SDK’ları nasıl kurulur adresini ziyaret edin.

C#‘da STL’den BMP’ye

Lütfen Cloudta halihazırda mevcut olan STL dosyalarını dönüştürmek ve ortaya çıkan BMP’yi Cloud depolamasına kaydetmek için aşağıdaki talimatları izleyin. PostDrawingBmp dönüştürme işlemleri için kullanılır.

  • Öncelikle, ClientID ve ClientSecret ayrıntılarını argüman olarak geçirerek File.Createclass’ın bir örneğini oluşturun.
  • İkinci olarak, dönüştürme işlemleri için özellikler sağlayabileceğimiz BmpOptionsDTO sınıfının bir nesnesini oluşturalım.
  • Üçüncüsü, giriş STL dosya adını ve BmpOptionsDTO nesnesini argüman olarak sağlayarak PostDrawingBmpRequest sınıfının bir örneğini oluşturun.
  • Şimdi dönüştürme işlemini başlatmak için PostDrawingBmp(…) metodunu çağırın.
  • Son olarak Stream örneğini File.Create nesnesini kullanarak bir dosya olarak kaydedin.
// Tam örnekler ve veri dosyaları için lütfen https://github.com/aspose-cad-cloud/aspose-cad-cloud-dotnet adresine gidin.
// Müşteri kimlik bilgilerini https://dashboard.aspose.cloud/ adresinden alın
string clientSecret = "d757548a9f2558c39c2feebdf85b4c44";
string clientID = "4db2f826-bf9c-42e7-8b2a-8cbca2d15553";

// CADApi nesnesini oluştur
CadApi cadApi = new CadApi(clientSecret,clientID);

// giriş FBSTL dosyasının adı
String inputFileName = "galeon.stl";
// sonuç dosya biçimi
String newFormat = "bmp";
// sonuç dosyasının adı
String newFileName = "Converted.bmp";

try
{
    // bir örneğini oluştur 
    BmpOptionsDTO bmpOptionsDTO = new BmpOptionsDTO();
    
    // bir örneğini oluştur PostDrawingBmp class while providing input 
    // STL dosya adı ve BmpOptionsDTO nesneleri argüman olarak
    var response = new PostDrawingBmpRequest(inputFileName, bmpOptionsDTO);
    // dönüştürme işlemini başlat
    var responseStream = cadApi.PostDrawingBmp(response);
    
    saveToDisk(responseStream, @"C:\Users\shahbnay\Downloads\" + newFileName);
}catch (Exception ex)
{
    Console.WriteLine("error:" + ex.Message + "\n" + ex.StackTrace);
}

// Akış içeriğini dosya nesnesi olarak kaydetmek için özel yöntem
static void saveToDisk(Stream responseStream, String resultantFile)
{
    var fileStream = File.Create(resultantFile);
    responseStream.Seek(0, SeekOrigin.Begin);
    responseStream.CopyTo(fileStream);
    fileStream.Close();
}

Yukarıdaki örnekte kullanılan örnek dosyalar galeon.stl ve converted.bmp adreslerinden indirilebilir.

cURL kullanarak STL’yi BMP’ye dönüştürün

API’lerimizin REST mimarisi sayesinde, bunlara herhangi bir platformda cURL komutları aracılığıyla kolayca erişilebilir. Ancak, ön koşul, Aspose.Cloud panosu üzerinde belirtilen İstemci Kimliği ve İstemci Gizli ayrıntılarına dayalı JWT erişim belirtecini oluşturmaktır. Lütfen JWT belirtecini oluşturmak için aşağıdaki komutu yürütün.

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"

Daha fazla ayrıntı için İstemci Kimliği ve İstemci Gizli Anahtarı Kullanılarak JWT Belirteci Nasıl Elde Edilir sayfasını ziyaret etmeyi düşünebilirsiniz.

Artık JWT token’ını aldığımıza göre, STL dosyasını BMP formatına dönüştürmek ve çıktıyı belirtilen konuma kaydetmek için lütfen aşağıdaki komutu çalıştırın.

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

Çözüm

STL dosyalarının herhangi bir 3. parti bileşen kullanmadan BMP raster görüntüye nasıl dönüştürülebileceğine dair çok basit adımları tartıştık. Ayrıca, tüm dönüştürme işlemi yerel sisteme yük bindirmeden Cloudta gerçekleştirildi. SDK’larımız MIT lisansı altında geliştirildiğinden, tam kaynak kodu GitHub adresinden indirilebilir. Herhangi bir sorunla karşılaşırsanız veya ilgili bir sorunuz varsa lütfen ücretsiz ürün destek forumu aracılığıyla bizimle iletişime geçmekten çekinmeyin.

İlgili Makaleler

Ayrıca şu konularda bilgi edinmek için aşağıdaki bağlantıları ziyaret etmenizi öneririz: