Message 1 of 4
Unable to create dimension for flat pattern component(sheet metal) diameter with the help of attribute helper
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report
here is the code which i can able to generate dimension for part document when comes to flat pattern it is failing.
Public Function AHDim(docType As String,viewName As String ,dimType As String, intend As String, Layer As String,DimCondition As String, XYval As String) As Boolean Dim oDrawDoc As DrawingDocument oDrawDoc = ThisApplication.ActiveDocument Dim oSheet As Sheet oSheet = oDrawDoc.ActiveSheet Dim oView,oView2 As DrawingView oView = ActiveSheet.View(viewName).View Dim oRefDoc As PartDocument = oView.ReferencedDocumentDescriptor.ReferencedDocument Dim oTG As TransientGeometry oTG = ThisApplication.TransientGeometry Dim oObjs As ObjectCollection Dim aoEdges As Edge oObjs = oRefDoc.AttributeManager.FindObjects("iLogicEntityNameSet", "iLogicEntityName", intend ) aoEdges = oObjs.Item(1) Dim aoDrawCurves As DrawingCurve oDrawViewCurves = oView.DrawingCurves(aoEdges) aoDrawCurves = oDrawViewCurves.Item(1) Dim XYSplitVal As String() XYSplitVal = XYval.Split(",") Dim Xval, Yval As Double Xval = CType(XYSplitVal(0), Double) Yval = CType(XYSplitVal(1), Double) Dim viewCenter As Point2d =oView.Center Dim oTextPosition As Point2d = oTG.CreatePoint2d(viewCenter.X+Xval, viewCenter.Y+Yval) Dim oGeneralDims As GeneralDimensions oGeneralDims = oSheet.DrawingDimensions.GeneralDimensions Dim oDim As GeneralDimension Select Case dimType Case "RadI" oDim = oGeneralDims.AddRadius(oTextPosition, oSheet.CreateGeometryIntent(aoDrawCurves), True, False, , , oDrawDoc.StylesManager.Layers.Item(Layer)) Case "RadO" oDim = oGeneralDims.AddRadius(oTextPosition, oSheet.CreateGeometryIntent(aoDrawCurves), False, False, , , oDrawDoc.StylesManager.Layers.Item(Layer)) Case "Dia" oDim = oGeneralDims.AddDiameter(oTextPosition, oSheet.CreateGeometryIntent(aoDrawCurves), True, False, , ,oDrawDoc.StylesManager.Layers.Item(Layer)) End Select If DimCondition = "1" Then oDim.Tolerance.SetToBasic() ElseIf DimCondition = "2" Then oDim.Tolerance.SetToReference() End If End Function