Message 1 of 2
Measure Distance Between WorkPlane Main Assy with WorkPlane Component
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report
How to measure distance between Plane in Main Assembly with Plane in Component.
I've tried for write code as per below. But still can't work.
Sub Distance2Plane() Dim oAsmDoc As AssemblyDocument oAsmDoc = InvApp.ActiveDocument Dim AssBaseXY As WorkPlane = oAsmDoc.ComponentDefinition.WorkPlanes.Item(3) 'Dim oUOM As UnitsOfMeasure 'oUOM = InvApp.ActiveDocument.UnitsOfMeasure Dim oCompDef As ComponentDefinition oCompDef = oAsmDoc.ComponentDefinition Call GetPlanePosition(oCompDef.Occurrences, AssBaseXY) InvApp.ActiveDocument.Update() End Sub Sub GetPlanePosition(ByVal oOccs As ComponentOccurrences, ByVal AssBaseXY As WorkPlane) Dim oOcc As ComponentOccurrence Dim DistPoints As Double Dim OPt2 As Point = Nothing Dim XV2 As UnitVector = Nothing Dim YV2 As UnitVector = Nothing 'WorkPlane2.GetPosition(OPt2, XV2, YV2) 'Memeriksa Jenis File Apakah Berupa Part For Each oOcc In oOccs If (oOcc.DefinitionDocumentType = DocumentTypeEnum.kPartDocumentObject) Then Dim oPartDef As PartComponentDefinition oPartDef = oOcc.Definition 'Mendefinisikan parameter Dim BaseXY As WorkPlane BaseXY = oPartDef.WorkPlanes.Item(3) BaseXY.GetPosition(OPt2, XV2, YV2) 'Measure Distance for Two Plane DistPoints = AssBaseXY.Plane.DistanceTo(BaseXY) Debug.Print(DistPoints.ToString) ElseIf (oOcc.DefinitionDocumentType = DocumentTypeEnum.kAssemblyDocumentObject) Then Debug.Print(UCase(oOcc.Name)) Call GetPlanePosition(oOcc.SubOccurrences, AssBaseXY) End If Next End Sub