工程圖文檔裡的主要增強就是為更多的标注樣式(DimensionStyle)屬性提供了API。這樣将極大的友善開發者調整樣式以滿足需要。在API幫助手冊裡【What's New In the Inventor 2014 API】, 若用DimensionStyle搜尋将會看到這些增加屬性。到目前,幾乎所有屬性都可通路,大部分能進行修改。隻有【注釋和引線】選項下的屬性暫時還未提供API,因為這部分的功能太過複雜。我們會在未來提供。
![](https://img.laitimes.com/img/9ZDMuAjOiMmIsIjOiQnIsIyZuBnL0gjN181N1QjM5cjN2MTMvwFNy8CX0AzMxAjMvw1ckF2bsBXdvwFdl5mLuR2cj5Set1yZtl2Lc9CX6MHc0RHaiojIsJye.png)
屬性操作沒有什麼特别之處,即通路到DimensionStyle,然後通路或控制屬性。還是通過一個小例子看看,對所有新屬性進行了操作。屬性和使用者界面哪個選項對應,可以通過屬性名顧名思義。在下面代碼裡,我也粗略的做了解釋,更多詳細内容請檢視幫助手冊。
Sub DimStyleTest()
'擷取目前工程圖文檔
Dim oDrwDoc As DrawingDocument
Set oDrwDoc = ThisApplication.ActiveDocument
'擷取第一個标注樣式
Dim oDimS As DimensionStyle
Set oDimS = oDrwDoc.StylesManager.DimensionStyles(1)
'拷貝一份,并建立一個标注樣式
Dim oNewDimS As DimensionStyle
Set oNewDimS = oDimS.Copy("MyNewDim")
' 對齊标注的文字方向:平行于标注
oNewDimS.AlignedDimensionTextOrientation = kParallelDimensionText
'角度标注箭頭在外
oNewDimS.AngularArrowsInside = False
'角度标注顯示延伸線1
oNewDimS.AngularHideExtensionLineOne = False
'角度标注顯示延伸線2
oNewDimS.AngularHideExtensionLineTwo = False
'角度标注文字在标注線以外
oNewDimS.AngularTextModifier = kOutsideDimensionLine
'角度标注文字朝向和标注平行
oNewDimS.AngularTextOrientation = kParallelDimensionText
'基礎标注字首字尾在外
oNewDimS.BasicDimensionPrefixSuffixInside = False
'折彎注釋樣式
oNewDimS.BendNoteDualFormat = kBelowFormat
'倒角注釋樣式
oNewDimS.ChamferNoteDualFormat = kBelowFormat
'直徑标注箭頭在外
oNewDimS.DiameterArrowsInside = False
'直徑标注單條标注線
oNewDimS.DiameterDualDimensionLine = False
'直徑标注外側文字朝向平行于标注
oNewDimS.DiameterExternalTextOrientation = kParallelDimensionText
'直徑标注内側文字朝向平行于标注
oNewDimS.DiameterInternalTextOrientation = kParallelDimensionText
'直徑标注不從中心引線
oNewDimS.DiameterLeaderFromCenter = False
'直徑标注多線文字朝向樣式
oNewDimS.DiameterMultiLineTextOrientation = kFirstLineAboveLandingLine
'直徑标注不顯示直徑符号
oNewDimS.DiameterShowDiameterSymbol = False
'直徑标注的替代标注樣式
oNewDimS.DimensionDualFormat = kBelowFormat
'孔注釋替代标注樣式
oNewDimS.HoleNoteDualFormat = kBelowFormat
'水準标注樣式文字朝向
oNewDimS.HorizontalDimensionTextOrientation = kParallelDimensionText
'線性标注箭頭在外
oNewDimS.LinearArrowsInside = False
'線性标注顯示延長線1
oNewDimS.LinearHideExtensionLineOne = False
'線性标注顯示延長線2
oNewDimS.LinearHideExtensionLineTwo = False
'線性标注多線文字朝向
oNewDimS.LinearMultiLineTextOrientation = kFirstLineAboveLandingLine
'坐标标注對齊
oNewDimS.OrdinateAlignment = kOrdinateLeaderAligned
'坐标标注顯示原點标記
oNewDimS.OrdinateHideOriginIndicator = False
'不允許坐标标注多折線
oNewDimS.OrdinateJoggingAllowed = False
'不允許坐标标注兩坐标方向都顯示正值
oNewDimS.OrdinatePositiveBothDirections = False
'不顯示坐标标注方向
oNewDimS.OrdinateShowDirection = False
'不顯示使用者坐标記号
oNewDimS.OrdinateUseOriginIndicator = False
'沖孔注釋替代樣式
oNewDimS.PunchNoteDualFormat = kBelowFormat
'半徑标注箭頭在外
oNewDimS.RadialArrowsInside = False
'半徑标注無折線引線
oNewDimS.RadialJoggedLeader = False
'半徑标注無中心引線
oNewDimS.RadialLeaderFromCenter = False
'半徑标注多線文字朝向
oNewDimS.RadialMultiLineTextOrientation = kFirstLineAboveLandingLine
'半徑标注文字朝向
oNewDimS.RadialTextOrientation = kParallelDimensionText
'誤差對齊樣式
oNewDimS.ToleranceJustification = kAlignTextLower
'誤差顯示分秒
oNewDimS.ToleranceShowMinuteSecond = True
'誤差中零的處理
oNewDimS.ToleranceZeroToleranceDisplay = kZeroToleranceDisplayNoTrailingZeros
'垂直标注文字朝向
oNewDimS.VerticalDimensionTextOrientation = kInlineAlignedDimensionText
End Sub