ブロックまたは外部参照(xref)の Y 倍率を指定します。
サポートされているプラットフォーム: Windows のみ
VBA:
object.YScaleFactor
タイプ: BlockReference、ExternalReference、MInsertBlock
このプロパティが適用されるオブジェクト。
読み込み専用: いいえ
タイプ: 倍精度浮動小数点数型
ゼロでない実数
倍率の初期値は 1.0 です。
VBA:
Sub Example_YScaleFactor()
' This example creates a block containing a circle.
' It then inserts the block and changes the YScaleFactor.
' 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)
ZoomAll
' Find the current YScaleFactor for the block reference
Dim currYScaleFactor As Double
currYScaleFactor = blockRefObj.YScaleFactor
MsgBox "The current YScaleFactor for the block reference is " & blockRefObj.YScaleFactor, , "YScaleFactor Example"
' Change the YScaleFactor for the block reference
blockRefObj.YScaleFactor = currYScaleFactor + 2
ZoomAll
MsgBox "The new YScaleFactor for the block reference is " & blockRefObj.YScaleFactor, , "YScaleFactor Example"
End Sub
Visual LISP:
(vl-load-com)
(defun c:Example_YScaleFactor()
;; This example creates a block containing a circle.
;; It then inserts the block and changes the YScaleFactor.
(setq acadObj (vlax-get-acad-object))
(setq doc (vla-get-ActiveDocument acadObj))
;; Create the block
(setq insertionPnt (vlax-3d-point 0 0 0))
(setq blockObj (vla-Add (vla-get-Blocks doc) insertionPnt "CircleBlock"))
;; Add a circle to the block
(setq center (vlax-3d-point 0 0 0)
radius 1)
(setq circleObj (vla-AddCircle blockObj center radius))
;; Insert the block
(setq insertionPnt (vlax-3d-point 2 2 0))
(setq modelSpace (vla-get-ModelSpace doc))
(setq blockRefObj (vla-InsertBlock modelSpace insertionPnt "CircleBlock" 1 1 1 0))
;; Find the current YScaleFactor for the block reference
(setq currYScaleFactor (vla-get-YScaleFactor blockRefObj))
(vla-ZoomAll acadObj)
(alert (strcat "The current YScaleFactor for the block reference is " (rtos (vla-get-YScaleFactor blockRefObj) 2)))
;; Change the YScaleFactor for the block reference
(vla-put-YScaleFactor blockRefObj (+ currYScaleFactor 2))
(vla-ZoomAll acadObj)
(alert (strcat "The new YScaleFactor for the block reference is " (rtos (vla-get-YScaleFactor blockRefObj) 2)))
)