外部参照を図面にバインドします。
サポートされているプラットフォーム: Windows のみ
VBA:
object.Bind bPrefixName
タイプ: Block
このメソッドが適用されるオブジェクト。
アクセス: 入力のみ
タイプ: ブール型
戻り値はありません。
外部参照を図面にバインドすると、外部参照は永続的に図面の一部として組み込まれ、外部参照ファイルではなくなります。外部参照情報はブロックになります。外部参照図面が更新されても、バインドした外部参照は更新されません。このメソッドは、従属シンボルを含む図面のデータベース全体をバインドします。従属するシンボルとは、ブロック、寸法スタイル、画層、線種、および文字スタイルなどの、名前の付いたオブジェクトです。外部参照をバインドすると、外部参照からの名前の付いたオブジェクトが現在の図面で使用できるようになります。
bPrefixName パラメータを False に設定すると、現在の図面内では外部参照図面のシンボル名の先頭に <blockname>$x$ が付きます。ここで、x は既存のブロック定義の変更を避けるため自動的にインクリメントされた整数です。bPrefixName パラメータが True に設定されると、外部参照図面のシンボル名には先頭に何も付かずに現在の図面に合成されます。重複する名前が存在する場合は、AutoCAD ではローカル図面内で既に定義されているシンボルが使用されます。重複したシンボル名が含まれているかどうかがはっきりしない場合は、bPrefixName を False に設定することを推奨します。
VBA:
Sub Example_Bind()
On Error GoTo ERRORHANDLER
' Define external reference to be inserted
Dim xrefHome As AcadBlock
Dim xrefInserted As AcadExternalReference
Dim insertionPnt(0 To 2) As Double
Dim PathName As String
insertionPnt(0) = 1
insertionPnt(1) = 1
insertionPnt(2) = 0
PathName = "c:/AutoCAD/sample/City map.dwg"
' Add the external reference
Set xrefInserted = ThisDrawing.ModelSpace. _
AttachExternalReference(PathName, "XREF_IMAGE", _
insertionPnt, 1, 1, 1, 0, False)
ZoomAll
MsgBox "The external reference is attached."
' Bind the external reference definition
ThisDrawing.Blocks.Item(xrefInserted.name).Bind False
MsgBox "The external reference is bound."
Exit Sub
ERRORHANDLER:
MsgBox Err.Description
End Sub
Visual LISP:
(vl-load-com)
(defun c:Example_Bind()
(setq acadObj (vlax-get-acad-object))
(setq doc (vla-get-ActiveDocument acadObj))
;; Define external reference to be inserted
(setq insertionPnt (vlax-3d-point 1 1 0)
pathName (findfile ".\\Sample\\Sheet Sets\\Architectural\\Res\\STAIR1.dwg"))
;; Add the external reference
(setq modelSpace (vla-get-ModelSpace doc))
(setq xrefInserted (vla-AttachExternalReference modelSpace pathName "XREF_IMAGE" insertionPnt 1 1 1 0 :vlax-false))
(vla-ZoomAll acadObj)
(alert "The external reference is attached.")
;; Bind the external reference definition
(vla-Bind (vla-Item (vla-get-Blocks doc) (vla-get-Name xrefInserted)) :vlax-false)
(alert "The external reference is bound.")
)