본질적으로 장식 기능이있는 원통형 튜브 인 복잡한 굴뚝의 3D 모델이 있습니다. 그 길이에 따라 여러 지점에서 단면 특성을 찾는 VBA 스크립트를 작성하고 싶습니다만 어떻게해야하는지 잘 모르겠습니다.AutoCAD VBA : 개체 선택
온라인 검색을 통해 나는 마스크로프를 실행할 수있는 부분에 코드를 넣을 수 있었지만 그 코드를 어떻게 끝내야하는지 잘 모르겠다. 코드 한 줄 밖에 남지 않았습니다. 방금 만든 섹션을 선택하면됩니다.
거의 완전한 코드가 아래에 나와 있으며 도움이 필요한 행에 주석을 달았습니다.
Public Sub Section()
Dim SolidObject As Acad3DSolid
Dim NewRegionObject As AcadRegion
Dim PlaneOrigin As Variant
Dim PlaneXaxisPoint As Variant
Dim PlaneYaxisPoint As Variant
Dim PickedPoint As Variant
On Error Resume Next
With ThisDrawing.Utility
.GetEntity SolidObject, PickedPoint, vbCr & "Select solid to cut."
If Err Then
MsgBox "Selected solid must be a 3DSolid"
Exit Sub
End If
PlaneOrigin = .GetPoint(PickedPoint, vbCr & "Select point to define origin.")
PlaneXaxisPoint = .GetPoint(PickedPoint, vbCr & "Select point to define x-axis.")
PlaneYaxisPoint = .GetPoint(PickedPoint, vbCr & "Select point to define y-axis.")
Set NewRegionObject = SolidObject.SectionSolid(PlaneOrigin, PlaneXaxisPoint, PlaneYaxisPoint)
End With
ThisDrawing.SendCommand ("qaflags" & vbCr & "2" & vbCr) 'This is needed for the operation
ThisDrawing.SendCommand ("massprop" & vbCr)
'How do I select my NewRegionObject???
ThisDrawing.SendCommand (vbCr & vbCr & "y" & vbCr & vbCr & "y" & vbCr)
End Sub
내 새로 만든 섹션 MASSPROP를 실행하려면이 코드를 얻을 수 있다면 좋은 나는 굴뚝을 따라 여러 지점에서 자동으로 처리 할 적응할 수 있어야한다 그래서 내가의 한 줄 것 같아 코드를 끈다. 당신의 도움에 대한
감사합니다, 톰
당신은 정말 코드 들여 쓰기를해야한다. 'Sub ... End Sub'는 블록입니다. 'With ... With With '는 또 다른 것입니다. –
[API] (http://help.autodesk.com/view/ACD/2016/ENU/?guid=GUID-DFE47717-F7AF-443B-AD78-4E0BB60121C7)가 도움이 되었기를 바랍니다. .sendCommand에서 반환 된 객체이므로 어떤 방법 으로든 region 객체를 '찾거나' '찾는'함수로 다시 작성하십시오. –