VBA, VB.NET For Creo315 IpfcViewOwner ■ IpfcViewOwner 모델에 저장된 보기(VIEW) 리스트들을 핸들링 할 수 있습니다. logical screen coordinates (화면의 좌측 하단)기준으로 모델을 회전을 할수 있습니다. >> 기본 코드 Dim oSession As pfcls.IpfcBaseSession Dim oViewOwner As IpfcViewOwner Set oViewOwner = oSession.CurrentModel ■ IpfcViewOwner.CurrentViewRotate - logical screen coordinates 의 X, Y 또는 Z축을 기준으로 현재 보기에서 모델을 회전 시킵니다. EpfcCOORD_AXIS_X -> "0" EpfcCOORD_AXIS_Y -> "1" EpfcCOORD_AXIS_Z.. 2023. 1. 16. IpfcWindow ■ Creo Window 사이즈 IpfcWindow.Height , IpfcWindow.Width , IpfcWindow.XPos 및 IpfcWindow.YPos 속성 은 각각 창의 높이, 너비, x 위치 및 y 위치를 검색합니다. 이러한 매개변수의 값은 0에서 1로 정규화됩니다. IpfcWindow.GraphicsAreaHeight 및 IpfcWindow.GraphicsAreaWidth 속성 은 테두리가 없는 Creo Parametric 그래픽 영역 창의 높이와 너비를 각각 검색 합니다. 이러한 매개변수의 값은 0에서 1로 정규화됩니다. >> 코드 Dim oSession As pfcls.IpfcBaseSession: Set oSession = conn.Session Dim oWindows As Ipfc.. 2023. 1. 16. 엑셀에서 치수값을 입력 하여 모델 변경 하기 모델이 가지고 있는 치수 값을 불러오고, 사용자는 엑셀에서 치수 값을 변경 합니다. ■ "치수 값 불러오기" 버튼 - 모델에서 치수 값을 불러옵니다 ■ "치수 변경" 버튼 - 엑셀에 입력한 치수 값을 모델에 반영 합니다. >> 치수 변경 코드 Option Explicit Sub Main() Application.EnableEvents = False On Error GoTo RunError Dim asynconn As New pfcls.CCpfcAsyncConnection Dim conn As pfcls.IpfcAsyncConnection: Set conn = asynconn.Connect("", "", ".", 5) Dim oSession As pfcls.IpfcBaseSession: Set oSessi.. 2023. 1. 14. 모델이 가지고 있는 치수 값을 가지고 오기 모델이 가지고 있는 특정 이름을 갖는 치수의 값을 가져오는 코드 입니다. FOR 문을 사용 하면 간결하고, 치수 이름이 추가되어도 대응이 가능 합니다. 초보적인 내용을 올립니 ○ 모델의 치수 이름 ○ 엑셀 Sheet Option Explicit Sub Main() Application.EnableEvents = False On Error GoTo RunError Dim asynconn As New pfcls.CCpfcAsyncConnection Dim conn As pfcls.IpfcAsyncConnection: Set conn = asynconn.Connect("", "", ".", 5) Dim oSession As pfcls.IpfcBaseSession: Set oSession = conn.Sessi.. 2023. 1. 14. Creo VBA 시작 코드 Creo VBA를 시작 하는 코드 입니다. 매번 프로그램을 개발 때마다 새로운 이름으로 Save As 하여 사용 합니다. Option Explicit Sub Main() Application.EnableEvents = False On Error GoTo RunError Dim asynconn As New pfcls.CCpfcAsyncConnection Dim conn As pfcls.IpfcAsyncConnection: Set conn = asynconn.Connect("", "", ".", 5) Dim oSession As pfcls.IpfcBaseSession: Set oSession = conn.session Dim oModel As IpfcModel: Set oModel = oSession.Cur.. 2023. 1. 14. Coordinate Systems and Transformations Coordinate Systems : VB API 에서 액세스할 수 있는 Creo의 다양한 좌표계 있습니다. ■ Solid Coordinate System - 솔리드 좌표계는 Creo Parametric 솔리드 모델 의 형상을 설명하는 데 사용되는 3차원 데카르트 좌표계 입니다. - 부품에서 솔리드 좌표계는 표면과 모서리의 형상을 설명 - 셈블리에서 솔리드 좌표계는 어셈블리 멤버의 위치와 방향도 설명 >> 데카르트 좌표계 - 3D에서 많이 사용하는 방법은 위(up) 방향으로 Y축을 지정하고, Z축을 시선 방향, X축을 좌우 방향으로 쓰는 것이다. 이렇게 Y축을 위 방향으로 사용하는 소프트웨어나 라이브러리로는 DirectX , OpenGL , 유니티를 들 수 있다. 이들은 Z축으로 시선 방향을 결정한다는 .. 2023. 1. 13. Part List & BOM & Access DB ToolBOX VBA의 "Part List" 기능은 모델이 가지고 있는 특성 값을 가져올수 있고, 수정 할수 있습니다. 모델의 무게, 사이즈, 측정한 Parameter, 사용자가 선택한 Dimension, JPG 이미지 파일등을 가져올수 있습니다. 또한 파일 변환 기능도 추가 할수 있습니다. 관성 모우멘트 값도 가져올수 있습니다. "Part List" 기능은 리포트 Sheet를 사용 합니다. 그런데 리포트는 사용 용도에 따라 달라집니다. 빠르고 쉽게 다양한 엑셀 파일을 만들수 있는 방법은 없을까요? 모델의 특성값을 파일에 저장 하고, 필요 따라 불러오면 가능 할수 있습니다. 저장 하는 곳을 데이터 베이스라 합니다. 그런데 적은 비용으로, 제한된 사용자만 활용 할수 있는 방법은 없을까요? 가장 손쉬운 방법.. 2023. 1. 12. BOM LEVEL 표시 방법 ■ BOM 레벨 표시는 CELL이 변경 됩니다. "L1", "L2" . . . 는 변경 됩니다. for ~ next 문을 사용 하여 어셈블이 가지고 있는 모델의 레벨 표시 하기 위한 cells를 자동으로 만듭니다. >> 코드 Option Explicit Sub level() Dim i As Long For i = 0 To 4 Columns(i + 2).Insert Cells(7, i + 2) = "L" & i + 1 Cells(7, i + 2).ColumnWidth = 3 Next i End Sub >> 엑셀 VBA를 사용해야 하는 이유 엑셀 매크로 프로그램(1) 아주 오래 전에 제가 4차 산업혁명과 MS 엑셀과 관련한 내용을 포스팅해 드린 적이 있습니다. 그런데 내... blog.naver.com ■ .. 2023. 1. 6. Template Model] 자동으로 치수 변경 ■ 모델의 치수 값 불러오기 >> "DIM" 버튼 코드 Option Explicit Public asynconn As New pfcls.CCpfcAsyncConnection Public conn As pfcls.IpfcAsyncConnection Public oSession As pfcls.IpfcBaseSession Public oModel As IpfcModel Sub DIM_TEST01() Application.EnableEvents = False On Error GoTo RunError '// Make an asynchronous connection with Creo Set conn = asynconn.Connect("", "", ".", 5) Set oSession = conn.Session S.. 2023. 1. 4. 라이브러리 관리 프로그램 #2 라이브러리 관리 프로그램 입니다. 엑셀의 필터링을 이용하여 특성 값을 검색 할수 있습니다. 관리자 메뉴와 사용자 메뉴가 같이 있습니다. 구글 드라이버와 같은 공유 폴더를 이용하여 다른 설계자 또는 원거리에 있는 설계자와 공유 하여 사용 하십시요 엑셀의 "screw" Sheet를 복사하여 라이브러리 그룹 카테고리를 추가 또는 삭제 합니다. 런타임 오류가 발생 합니다. 이것은 cell의 이름이 자동으로 sheet이름에 적용 됩니다. "screw"이름이 중복 되어 발생 하는 오류 입니다. 별도의 "폼" 메뉴를 개발이 필요 합니다. "종료"를 클릭합니다. "screw" 이름을 "Spring" 변경 합니다. 맨 앞의 "screw"탭을 선택하면 "Spring"으로 이름이 변경 됩니다. 다양한 라이브러리 그룹을 만들.. 2023. 1. 3. Family Table Part 하드 디스크에 저장된 Family Table Part의 Instance 이름을 표시 합니다 by PTC Sub Main2() ' ' This routine will open a Pro/ENGINEER file from your WorkingDirectory in a new window: ' Dim asynconn As New pfcls.CCpfcAsyncConnection Dim conn As pfcls.IpfcAsyncConnection Dim session As pfcls.IpfcBaseSession Dim oModel As pfcls.IpfcModel 'Make an asynchronous connection with Pro/ENGINEER Set conn = asynconn.Connect("", .. 2023. 1. 1. 라이브러리 관리 프로그램 #1 라이브러리 특성 값을 사용 하여, 어셈블 파일에 적용할 파일을 선택 할 수 있습니다. 관리자는 동일한 Class의 라이브러리 파일들을 특정 폴더에 저장 합니다 >> 관리자 모드 1. List - Creo에서 라이브리 파일이 모여 있는 "Folder"를 작업 Directory 으로 설정 합니다. - "List" 버튼을 클릭 하면 "Folder" 항목에 작업 Directory가 입력 됩니다. 작업 Directory의 모든 파일들의 "번호" 와 "Creo File Name" 항목에 표시합니다. 2. IMG - 표시된 "Creo File Name" 모델의 이미지를 생성 합니다. - 이미지 저장은 작업 Directory에 표시됩니다 3. 특성 값 "Maker", "Size", "Length", "DIA" 값을 입.. 2022. 12. 28. 이전 1 ··· 12 13 14 15 16 17 18 ··· 27 다음 반응형