본문 바로가기
  • You find inspiration to create your own path !
업무 자동화/VBA, VB.NET For Creo

IpfcBaseSession : Method (Sub ExportCurrentRasterImage)

by ToolBOX01 2025. 11. 1.
반응형

◎ Sub ExportCurrentRasterImage (ImageFileName as String, Instructions as IpfcRasterImageExportInstructions)

이 함수는 PTC Creo Parametric의 .NET 기반 VB API (Visual Basic API)에서 제공되는 메서드로, 현재 활성 창(윈도우)의 래스터 이미지(Raster Image)를 표준 출력 파일 형식으로 내보내는 역할을 합니다. 주로 모델의 스크린샷이나 현재 뷰를 이미지 파일(JPG, BMP, TIFF 등)로 저장할 때 사용됩니다.

※ 참고 사이트

 

Part 파일을 jpg 이미지로 저장 하기

■ 함수 ExportCurrentRasterImage Sub ExportCurrentRasterImage (ImageFileName as String, Instructions as IpfcRasterImageExportInstructions) 표준 Creo Parametric 래스터 출력 파일(현재 Window 화면)을 출력합니다. Session 기준이 아닌

tool-2020.tistory.com


주요 특징:

  • 호출 위치: IpfcBaseSession 객체(세션 객체)에서 호출됩니다. 예: session.ExportCurrentRasterImage(...)
  • 입력 매개변수:
    • ImageFileName (String): 출력 파일 이름(경로 포함, 확장자 포함). 예: "C:\output\model.jpg"
    • Instructions (IpfcRasterImageExportInstructions):
      이미지 내보내기 설정 객체.
      이 객체를 통해 이미지의 해상도, DPI, 색상 깊이 등을 제어합니다.
      하위 클래스(예: IpfcJPEGImageExportInstructions, IpfcBMPImageExportInstructions 등)를 사용해 특정 형식(JPEG, BMP 등)을 지정합니다.
  • 출력: 지정된 파일 경로에 래스터 이미지 파일이 생성됩니다.
  • 예외 처리:
    • IpfcXToolkitNoPermission: 모델에 대한 권한이 없음 (DRM 또는 보안 제한으로 인해 발생 가능).
    • IpfcXToolkitBadContext: 디자인 테스트 모드에서 사용할 수 없음.
  • 제한 사항:
    Creo 세션이 실행 중이어야 하며, 현재 모델이 로드되어 있어야 합니다. 이미지 품질은 Instructions 설정에 따라 달라집니다.
  • 사용 시나리오:
    자동화 스크립트에서 모델 뷰를 캡처하거나, 배치 처리로 여러 모델의 이미지를 추출할 때 유용합니다.

sample code

Dim session As pfcls.IpfcBaseSession


'// 2. 이미지 내보내기 지시사항 설정 (JPEG 형식 예시) //'
Dim rasterWidth As Double: rasterWidth = 800   ' 이미지 너비 (인치 단위)
Dim rasterHeight As Double: rasterHeight = 600  ' 이미지 높이 (인치 단위)
    
Dim creJPEG As New pfcls.CCpfcJPEGImageExportInstructions
Dim jpegInstructions As pfcls.IpfcJPEGImageExportInstructions

Set jpegInstructions = creJPEG.Create(rasterWidth, rasterHeight)
    
Dim instructions As pfcls.IpfcRasterImageExportInstructions
Set instructions = jpegInstructions  '// 상위 클래스 캐스팅 '//


'// 추가 설정: DPI와 색상 깊이 //'
instructions.DotsPerInch = pfcls.EpfcDotsPerInch.EpfcRASTERDPI_300  '// 300 DPI //'
instructions.ImageDepth = pfcls.EpfcRasterDepth.EpfcRASTERDEPTH_24  '// 24비트 색상 //'
    
'// 3. 출력 파일 이름 지정 //'
Dim imageFileName As String
imageFileName = "C:\Temp\" & model.FileName & ".jpg"  '// 출력 경로 (확장자 포함) //'
    
'// 디렉토리 변경 (필요 시) '//
session.ChangeDirectory ("C:\Temp")
    
'// 4. 이미지 내보내기 실행 (세션 메서드 사용) '//
session.ExportCurrentRasterImage imageFileName, instructions
MsgBox "이미지 내보내기 완료: " & imageFileName

sample code

 

 

이미지 변환 프로그램 소스

■ jpg 변경 프로그램 Option Explicit Sub A3PartListJpgExport() On Error GoTo RunError Dim asynconn As New pfcls.CCpfcAsyncConnection Dim conn As pfcls.IpfcAsyncConnection: Set conn = asynconn.Connect("", "", ".", 5) Dim oSession As pfcls.IpfcBaseSes

tool-2020.tistory.com

 

by korealionkk@gmail.com


반응형