XScaleFactor Example

Using Programming Languages other than VBA

Sub Example_XScaleFactor()
	' This example creates a block containing a circle.
	' It then inserts the block and changes the XScaleFactor.

	' Create the block
	Dim blockObj As AcadBlock
	Dim insertionPnt(0 To 2) As Double
	insertionPnt(0) = 0#: insertionPnt(1) = 0#: insertionPnt(2) = 0#
	Set blockObj = ThisDrawing.Blocks.Add(insertionPnt, "CircleBlock")

	' Add a circle to the block
	Dim circleObj As AcadCircle
	Dim center(0 To 2) As Double
	Dim radius As Double
	center(0) = 0: center(1) = 0: center(2) = 0
	radius = 1
	Set circleObj = blockObj.AddCircle(center, radius)
   
	' Insert the block
	Dim blockRefObj As AcadBlockReference
	insertionPnt(0) = 2#: insertionPnt(1) = 2#: insertionPnt(2) = 0
	Set blockRefObj = ThisDrawing.ModelSpace.InsertBlock(insertionPnt, "CircleBlock", 1#, 1#, 1#, 0)

	' Find the current XScaleFactor for the block reference
	Dim currXScaleFactor As Double
	currXScaleFactor = blockRefObj.XScaleFactor
	ZoomAll
	MsgBox "The current XScaleFactor for the block reference is " & blockRefObj.XScaleFactor, , "XScaleFactor Example"

	' Change the XScaleFactor for the block reference
	blockRefObj.XScaleFactor = currXScaleFactor + 2
	ZoomAll
	MsgBox "The new XScaleFactor for the block reference is " & blockRefObj.XScaleFactor, , "XScaleFactor Example"

End Sub

 

   Comments?