본문 바로가기
  • Welcome!
VBA For Creo

Model Operations

by ToolBOX01 2023. 10. 6.
반응형

□ 사용 가능 한 함수 ()

IpfcModel.Backup() 메모리의 개체를 지정된 디렉터리의 디스크에 백업합니다.
IpfcModel.Copy() 지정된 모델을 다른 파일에 복사합니다.
IpfcModel.CopyAndRetrieve() 모델을 다른 이름으로 복사하고 해당 새 모델을 세션으로 검색합니다.
IpfcModel.Rename() 지정된 모델의 이름을 바꿉니다.
IpfcModel.Save() 지정된 모델을 디스크에 저장합니다.
IpfcModel.Erase() 세션에서 지정된 모델을 지웁니다. 다른 모델에서 사용되는 모델은 해당 모델에 종속된 모델이 삭제될 때까지 삭제될 수 없습니다.
IpfcModel.EraseWithDependencies() 세션의 다른 항목에 종속성이 필요하지 않은 경우 세션에서 지정된 모델과 디스크에서 지정된 모델이 종속된 모든 모델을 지웁니다.
IpfcModel.Delete() 메모리와 디스크에서 지정된 모델을 제거합니다.
IpfcModel.Display() 지정된 모델을 표시합니다. IpfcDisplay 를 호출할 때까지 모델은 창에 표시되지 않으므로 모델에 대한 새 창을 만드는 경우 이 메서드를 호출해야 합니다 .
IpfcModel.CommonName 지정된 모델의 일반 이름을 검색합니다. Windchill PDMLink가 아직 소유하지 않은 모델에 대해 또는 구성 옵션 let_proe_rename_pdm_objects가 yes 로 설정된 경우 특정 상황에서 이 이름을 수정할 수 있습니다 . rename 기능 사용

 

▷ IpfcModel.Backup()

Sub	Backup (WhereTo as IpfcModelDescriptor)

현재 열려있는 모델을 백업하는 데 사용됩니다.IpfcModelDescriptor : 모델을 검색하고 조작하는 데 사용되는 인터페이스입니다. 이 인터페이스를 사용하면 모델 검색, 열기, 저장 및 다양한 모델 속성에 액세스하는 데 도움이 됩니다.

 

 

IpfcModel.backup()

IpfcModel.backup()은 3D / 2D 모델을 특정 폴더에 저장 할수 있습니다. 1) 2D 모델을 BACKUP 하면, 포함된 3D 모델도 함께 BackUP 됩니다 2) 어셈블 파일을 BackUP 하면, 포함된 3D 모델도 함께 Copy 됩니다 Sub PrintD

tool-2020.tistory.com

 

▷ IpfcModel.Copy()

모델을 복사하는 데 사용됩니다. 이 함수를 사용하면 기존 모델을 복제하여 새로운 모델을 생성할 수 있습니다. 이 새로운 모델은 기존 모델과 동일한 내용을 가지게 됩니다.

Sub	Copy (NewName as String, Instructions as IpfcCopyInstructions [optional])

 

 

IpfcModel.Copy()

Sub Copy (NewName as String, Instructions as IpfcCopyInstructions [optional]) - Session에 있는 모델의 파일을 사용자가 정의한 폴더에 파일로 복사합니다. 모델 사본은 세션으로 검색되지 않습니다. - 새로운 파일

tool-2020.tistory.com

 

▷ IpfcModel.Copy AndRetrieve()

모델을 복사하고 새로 생성된 모델을 반환하는 기능을 제공합니다. 이 함수는 기존 모델을 복제한 후, 이 복제본을 반환하여 새 모델에 대한 참조를 얻을 수 있게 합니다.

Function	CopyAndRetrieve (NewName as String, Instructions as IpfcCopyInstructions [optional]) as IpfcModel

주의) Instructions as IpfcCopyInstructions [optional] 기능은 Creo 9.0 이하에서는 제공하지 않습니다.
         덮어쓰기 기능을 제공 합니다.

Option Explicit
Sub filecopyretrive()

On Error GoTo RunError

    Dim asynconn As New pfcls.CCpfcAsyncConnection
    Dim conn As pfcls.IpfcAsyncConnection
    Dim BaseSession As pfcls.IpfcBaseSession
    Dim model As IpfcModel
    Dim newmodel As IpfcModel

    Set conn = asynconn.Connect("", "", ".", 5)
    Set BaseSession = conn.Session
    Set model = BaseSession.CurrentModel
    Set newmodel = model.CopyAndRetrieve("korea", Nothing)
    
    model.Erase
    newmodel.Display
    
    conn.Disconnect (2)
    
    '// Cleanup
    Set asynconn = Nothing
    Set conn = Nothing
    Set Session = Nothing
    Set model = Nothing
    
RunError:
    
        If Err.Number <> 0 Then
            MsgBox "Process Failed : Unknown error occurred." + Chr(13) + _
                    "Error No: " + CStr(Err.Number) + Chr(13) + _
                    "Error: " + Err.Description, vbCritical, "Error"

            If Not conn Is Nothing Then
                If conn.IsRunning Then
                    conn.Disconnect (2)
                End If
            End If
        End If
    
End Sub

 

▷  IpfcModel.Rename()

모델의 이름을 변경하는 데 사용됩니다. 이 함수를 사용하면 모델의 이름을 프로그래밍 방식으로 변경할 수 있습니다.

Sub	Rename (NewName as String, RenameFilesToo as Boolean [optional])

 

 

IpfcModel.Rename()

Sub Rename (NewName as String, RenameFilesToo as Boolean [optional]) - Renames the model. - RenameFilesToo Ignored: by default, this is false. Sub Rename() Dim asynconn As New pfcls.CCpfcAsyncConnection Dim conn As pfcls.IpfcAsyncConnection: Set conn = asy

tool-2020.tistory.com

 

IpfcModel.Save()

현재 열려 있는 모델을 저장하는 기능을 수행합니다. 이 함수를 사용하면 모델을 변경한 내용을 파일로 저장할 수 있습니다.

Sub	Save ()

 

 

#2 IpfcSession: 함수 UISaveFile 파일 선택 하기

■ UI로 파일 저장 새로운 파일을 생성하고, UI를 통해 현재 활성화된 파일을 저장 합니다. 다음과 같은 순서로 코드를 생성 합니다. ▷ Creo 연결 Sub UI_SAVE() Dim asynconn As New pfcls.CCpfcAsyncConnection Dim c

tool-2020.tistory.com

 

▷  IpfcModel.Erase()

현재 열려 있는 모델을 메모리에서 소멸시키는 기능을 수행합니다. 이 함수를 호출하면 모델이 메모리에서 제거되며, 해당 모델에 대한 모든 참조가 해제됩니다.

Sub	Erase ()

 

Option Explicit
Sub currenterase()

On Error GoTo RunError

    Dim asynconn As New pfcls.CCpfcAsyncConnection
    Dim conn As pfcls.IpfcAsyncConnection
    Dim BaseSession As pfcls.IpfcBaseSession
    Dim Session As IpfcSession
    Dim model As IpfcModel
    Dim newmodel As IpfcModel

    Set conn = asynconn.Connect("", "", ".", 5)
    Set BaseSession = conn.Session

    Set model = BaseSession.CurrentModel
   
    model.Erase
       
    conn.Disconnect (2)
    
    '// Cleanup
    Set asynconn = Nothing
    Set conn = Nothing
    Set Session = Nothing
    Set model = Nothing
    
RunError:
    
        If Err.Number <> 0 Then
            MsgBox "Process Failed : Unknown error occurred." + Chr(13) + _
                    "Error No: " + CStr(Err.Number) + Chr(13) + _
                    "Error: " + Err.Description, vbCritical, "Error"

            If Not conn Is Nothing Then
                If conn.IsRunning Then
                    conn.Disconnect (2)
                End If
            End If
        End If
    
End Sub

 

▷  IpfcModel.EraseWithDependencies ()

 현재 열려 있는 모델을 소멸할 때 해당 모델의 종속 요소 및 참조된 모든 데이터와 함께 소멸하는 기능을 수행합니다

Sub	EraseWithDependencies()

 

▷  IpfcModel. Delete ()

모델을 삭제하거나 제거하는 데 사용됩니다.모델을 삭제하는 경우 해당 모델과 관련된 데이터 및 파일도 함께 삭제될 수 있습니다. 이 기능은 모델을 프로젝트에서 제거하거나 더 이상 필요하지 않을 때 사용됩니다.일반적으로 모델을 삭제할 때는 주의해야 합니다. 모델을 삭제하기 전에 모든 필요한 데이터를 백업하고, 삭제되는 모델이 다른 작업이나 프로세스에 어떤 영향을 미칠 수 있는지 고려해야 합니다.

Sub	Delete()

 

▷  IpfcModel. Display()

모델을 화면에 표시하고 렌더링하는 목적으로 사용됩니다. IpfcModel.Display() 함수는 모델을 화면에 표시하는 역할을 하며, 사용자가 모델을 시각적으로 확인하고 조작할 수 있도록 합니다. 이 함수를 호출하면 모델이 그래픽 뷰포트에 나타납니다. 활성화된 모델을 creo 화면에 표시 합니다

Sub	Display()

 

▷  IpfcModel. CommonName()

이 함수는 모델의 "공통 이름" 또는 "Common Name"을 검색하는 데 사용됩니다.공통 이름은 모델을 식별하는 데 사용되는 사용자 정의 이름 또는 레퍼런스 이름입니다. 모델이나 다른 객체에 대한 고유한 이름을 설정하고 관리하는 데 도움이 되며, 다른 기능에서 모델을 검색하거나 식별하는 데 사용할 수 있습니다. PDM이 소유하지 않은 모델의 경우 수정할 수 있습니다. (rename 기능 사용)

Property	CommonName as String

주의) 모델 tree의 시스템 매개변수 " ptc_common_name"를 표시하여 값을 수정 할수 있습니다.

"ptc_common_name" 매개변수를 편집하는  방법은 rename 명령을 사용하는 것입니다. 이름 바꾸기 대화 상자에 있으면 "세션에서 이름 바꾸기" 라디오 버튼을 선택하십시오. 그러면 "일반 이름" 필드를 편집할 수 있습니다. 값을 변경한 후에는 실제로 파일 이름을 바꾸지 않고도 대화 상자에서 "확인"할 수 있습니다.

 

Option Explicit
Sub filecommonname()

On Error GoTo RunError

    Dim asynconn As New pfcls.CCpfcAsyncConnection
    Dim conn As pfcls.IpfcAsyncConnection
    Dim BaseSession As pfcls.IpfcBaseSession
    Dim Session As IpfcSession
    Dim model As IpfcModel
    
    Set conn = asynconn.Connect("", "", ".", 5)
    Set BaseSession = conn.Session
    Set model = BaseSession.CurrentModel
  
    MsgBox model.CommonName
  
    conn.Disconnect (2)
    
    '// Cleanup
    Set asynconn = Nothing
    Set conn = Nothing
    Set Session = Nothing
    Set model = Nothing
    
RunError:
    
        If Err.Number <> 0 Then
            MsgBox "Process Failed : Unknown error occurred." + Chr(13) + _
                    "Error No: " + CStr(Err.Number) + Chr(13) + _
                    "Error: " + Err.Description, vbCritical, "Error"

            If Not conn Is Nothing Then
                If conn.IsRunning Then
                    conn.Disconnect (2)
                End If
            End If
        End If
    
End Sub

영업문의 : lionkk@idt21c.com
카카오 채널 : http://pf.kakao.com/_fItAxb

'VBA For Creo' 카테고리의 다른 글

모델의 서피스 타입 구분 하기  (0) 2023.10.11
Model Information - IpfcModel  (0) 2023.10.09
Creo Template 프로그램 #2  (0) 2023.09.12
#1 IpfcAssembly  (0) 2023.08.20
IpfcModelItemOwner  (0) 2023.08.18