La unión de una referencia externa con un dibujo mediante el método Bind hace que la referencia forme parte permanente del dibujo y deje de considerarse un archivo de referencia externa. La información referida externamente se convierte en un bloque. Al actualizar el dibujo referido externamente, no se actualiza la referencia externa unida. Este proceso une de forma completa la base de datos del dibujo, incluidos todos sus símbolos dependientes.
Los símbolos dependientes son objetos guardados, como por ejemplo bloques, estilos de cotas, capas, tipos de línea y estilos de texto. Al unir la referencia externa se pueden utilizar los objetos con nombre en el dibujo actual.
El método Bind sólo requiere la entrada de un parámetro: bPrefixName. Si se asigna a bPrefixName el valor TRUE, los nombres de símbolo del dibujo de la referencia externa aparecen en el dibujo actual con el prefijo <nombredebloque>$x$, donde x es un número entero que aumenta automáticamente para evitar que se reemplacen las definiciones de bloque existentes. Si se asigna al parámetro bPrefixName el valor FALSE, los nombres de símbolo del dibujo de la referencia externa se fusionan con el dibujo actual sin el prefijo. Si hay nombres duplicados, AutoCAD utiliza los símbolos definidos con anterioridad en el dibujo. Si no está seguro de si el dibujo contiene nombres de símbolos duplicados, es recomendable que asigne al prefijo bPrefixName el valor TRUE.
Para obtener más información acerca de la asignación de referencias externas, véase “Archivo de dibujos que contienen referencias externas (unión)“ en el Manual del usuario.
Unión de una definición de referencia externa
Este ejemplo enlaza una referencia externa y después la une al dibujo. Se utiliza el archivo 3D House.dwg del directorio de ejemplos. Si no tiene esta imagen o si está situada en un directorio diferente, escriba una ruta y un nombre de archivo válidos para la variable PathName.
Sub Ch10_BindingExternalReference()
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 2008/sample/3D House.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