STL은 “Standard Triangle Language” 및 “Standard Tessellation Language"와 같은 여러 백로님을 가지고 있으며, 스테레오리소그래피 CAD 소프트웨어의 기본 파일 형식입니다. STL 파일은 색상, 질감 또는 기타 속성 없이 3차원 객체의 표면 형상만 설명합니다. STL 파일을 보려면 다음 응용 프로그램 중 하나를 사용해야 합니다(예: Microsoft 3D Viewer, Microsoft Print 3D, IMSI TurboCAD Pro, GOM Inspect 등).이러한 응용 프로그램 중 일부는 라이선스 비용이 발생하며 수신자가 모바일 기기를 사용하는 경우 이러한 파일을 보고 빠른 피드백을 제공하기가 매우 어렵습니다. 따라서 빠르고 실행 가능한 솔루션은 이를 BMP와 같은 래스터 이미지 형식으로 변환하는 것입니다. 이제 REST API를 사용하여 C#에서 STL을 BMP로 변환하는 것에 대해 논의해 보겠습니다.

CAD 파일 처리 API

Aspose.CAD Cloud는 확장, 회전, 뒤집기, CAD 도면 편집 또는 AutoCAD 도면을 이미지(BMP, PNG, JPG) 및 고정 레이아웃(벡터 및 래스터로 PDF)과 같은 다른 지원 형식으로 내보낼 수 있는 기능을 제공하는 REST 기반 API입니다. 자세한 내용은 지원되는 파일 형식을 방문하세요. API는 REST 아키텍처에 따라 개발되었으므로 데스크톱, 모바일, 웹 및 클라우드 기반 애플리케이션에 통합할 수 있습니다.

고객의 편의를 위해, 저희는 여러분이 선호하는 프로그래밍 언어의 모든 기능/역량을 얻을 수 있도록 프로그래밍 언어별 SDK를 만들었습니다. 이 문서에서는 Aspose.CAD Cloud SDK for .NET의 활용을 강조할 것입니다. 이제 SDK를 사용하려면 먼저 시스템에 설치해야 합니다. 관련 세부 정보는 Aspose.Cloud SDK 설치 방법을 참조하세요.

C#에서 STL을 BMP로

Cloud에서 이미 사용 가능한 STL 파일을 변환하고 결과 BMP를 Cloud 저장소에 저장하려면 아래 지침을 따르세요. 변환 작업에는 PostDrawingBmp가 사용됩니다.

  • 먼저, ClientID와 ClientSecret 세부 정보를 인수로 전달하여 File.Createclass의 인스턴스를 생성합니다.
  • 둘째, 변환 작업에 대한 속성을 제공할 수 있는 BmpOptionsDTO 클래스의 객체를 생성합니다.
  • 셋째, 입력 STL 파일 이름과 BmpOptionsDTO 객체를 인수로 제공하여 PostDrawingBmpRequest 클래스의 인스턴스를 생성합니다.
  • 이제 PostDrawingBmp(…) 메서드를 호출하여 변환 작업을 시작합니다.
  • 마지막으로 File.Create 객체를 사용하여 Stream 인스턴스를 파일로 저장합니다.
// 전체 예제와 데이터 파일은 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.stlconverted.bmp에서 다운로드할 수 있습니다.

cURL을 사용하여 STL을 BMP로 변환

API의 REST 아키텍처 덕분에 모든 플랫폼에서 cURL 명령을 통해 쉽게 액세스할 수 있습니다. 그러나 전제 조건은 Aspose.Cloud 대시보드에서 지정된 ClientID 및 Client Secret 세부 정보를 기반으로 JWT 액세스 토큰을 생성하는 것입니다. 다음 명령을 실행하여 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"

자세한 내용은 클라이언트 ID 및 클라이언트 비밀 키를 사용하여 JWT 토큰을 얻는 방법을 참조하세요.

이제 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

결론

우리는 3자 구성 요소를 사용하지 않고 STL 파일을 BMP 래스터 이미지로 변환하는 방법에 대한 매우 간단한 몇 가지 단계를 논의했습니다. 또한 전체 변환 작업은 로컬 시스템에 부하를 주지 않고 클라우드에서 수행되었습니다. SDK는 MIT 라이선스에 따라 개발되었으므로 전체 소스 코드는 GitHub에서 다운로드할 수 있습니다. 문제가 발생하거나 관련 질문이 있는 경우 무료 제품 지원 포럼을 통해 언제든지 문의해 주십시오.

관련기사

또한, 다음 링크를 방문하여 자세히 알아보시기 바랍니다.