도면에 표시된 치수 값을 가져오는 코드 입니다. 아래 그림은 5개의 뷰를 가지고 있습니다. 전체 치수는 도면에서 생성한 치수 입니다. 5개의 치수를 가지고 있습니다. 도면은 3D를 뷰로 배치하고, Drawing Dimension을 추가 합니다.
Excel VBA Download
"Drawing Dimension" 버튼을 클릭하면 자동으로 도면이 가지고 있는 모든 치수를 표시합니다.
Set IpfcModelItems = IpfcModelItemOwner.ListItems(EpfcModelItemType.EpfcITEM_DIMENSION)
코드로 드로잉 뷰(정면도, 측면도 ...)가 가지고 있는 치수(3D, 2D)를 모두 표시 합니다.
"IpfcModelItemOwner"는 IpfcModel > IpfcDrawing > IpfcModel2D > IpfcView2D > Set oModel = oView2D.GetModel
순서로 적용되는 개체를 사용 합니다.
모든 치수 이름 및 값은 "IpfcBaseDimension. Symbol - 이름", "IpfcBaseDimension.DimValue - 치수 값" 으로 표시합니다.
Drawing Dimension은 "ad ~ "로 시작 합니다. 모든 치수에서 "ad ~"로 시작하는 치수만 표시 하면 됩니다.
If InStr(oDimensionName, "ad") = 1 Then 기능을 사용하여 "ad ~"로 시작하는 치수만 표시 합니다
■ 전체 코드 입니다
Sub Dim_2d()
Call Creo_Connect
Cells(4, "C") = oModel.Filename
Dim oDrawing As IpfcDrawing
Set oDrawing = oModel
Dim oModel2d As IpfcModel2D
Set oModel2d = oDrawing
Dim oView2Ds As IpfcView2Ds
Set oView2Ds = oModel2d.List2DViews
Dim oView2D As IpfcView2D
Dim oModelowner As IpfcModelItemOwner
Dim oModelitems As IpfcModelItems
Dim oModelitem As IpfcModelItems
Dim oBaseDimension As IpfcBaseDimension
Dim oDimension As IpfcDimension
Dim oDimensionName As String
Dim i As Integer, j As Integer
j = 0
Set oView2D = oView2Ds.Item(0)
Set oModel = oView2D.GetModel
Set oModelowner = oModel
Set oModelitems = oModelowner.ListItems(EpfcModelItemType.EpfcITEM_DIMENSION)
For i = 0 To oModelitems.Count - 1
Set oBaseDimension = oModelitems.Item(i)
Set oDimension = oBaseDimension
oDimensionName = oBaseDimension.Symbol
If InStr(oDimensionName, "ad") = 1 Then
j = j + 1
Cells(j + 5, "A") = j
Cells(j + 5, "B") = oBaseDimension.Symbol
Cells(j + 5, "C") = oBaseDimension.DimValue
End If
Next i
End Sub
■ 동영상
■ 참고 사이트
by lionkk@idt21c.com
'VBA For Creo' 카테고리의 다른 글
Creo 라이브러리 관리 프로그램 (0) | 2023.02.21 |
---|---|
부품 정보 리스트 프로그램 (0) | 2023.02.14 |
모델이 가지고 있는 치수 값을 가지고 오기 - 두번째 (0) | 2023.02.11 |
Creo Feature Type 시각화 하기 (0) | 2023.02.10 |
Get the parameter value in the feature (0) | 2023.02.08 |