HorizontalTextPosition Example

Using Programming Languages other than VBA

Sub Example_HorizontalTextPosition()
	' This example creates an aligned dimension in model space
	' and cycles the dimension text through different
	' horizontal alignments

	Dim dimObj As AcadDimAligned
	Dim point1(0 To 2) As Double, point2(0 To 2) As Double
	Dim location(0 To 2) As Double
	Dim CurrentValue As String

	' Define the dimension
	point1(0) = 5: point1(1) = 5: point1(2) = 0
	point2(0) = 9: point2(1) = 5: point2(2) = 0
	location(0) = 5: location(1) = 7: location(2) = 0

	' Create an aligned dimension object in model space
	Set dimObj = ThisDrawing.ModelSpace.AddDimAligned(point1, point2, location)
	ThisDrawing.Application.ZoomAll

	' Read and display current text position
	Select Case dimObj.HorizontalTextPosition
		Case acHorzCentered:		CurrentValue = "centered"
		Case acFirstExtensionLine:  CurrentValue = "aligned to first extension line"
		Case acSecondExtensionLine: CurrentValue = "aligned to second extension line"
		Case acOverFirstExtension:  CurrentValue = "aligned over first extension line"
		Case acOverSecondExtension: CurrentValue = "aligned over second extension line"
	End Select

	MsgBox "The dimension is " & CurrentValue

	' Force the alignment of the dimension text to the first extension line
	dimObj.HorizontalTextPosition = acFirstExtensionLine
	ThisDrawing.Regen acAllViewports
	MsgBox "Dimension text is now aligned to the first extension line"
   
	' Force the alignment of the dimension text to the second extension line
	dimObj.HorizontalTextPosition = acSecondExtensionLine
	ThisDrawing.Regen acAllViewports
	MsgBox "Dimension text is now aligned to the second extension line"

End Sub

 

   Comments?