Está en la página 1de 0

Programando en VB2005 y

AutoCAD

Es posible aprovechar el entorno grfico de AutoCAD programando desde aplicaciones
externas, con VB2005 ya no encontrar limitaciones como en vba. Seguidamente se
detalla la manera de integrar AutoCAD con Visual Basic 2005.

1.1 Integrar AutoCAD en VB.

Inicialmente se crea un proyecto y entre las opciones en Plantillas instaladas en visual
Studio elegir Aplicacin para Windows.
Este procedimiento generar
automticamente un formulario.

Para integrar AutoCAD en VB:
- Desde el Explorador de
Soluciones haga un clic derecho
sobre el proyecto creado, en este
caso el proyecto creado es
VBautocad2006, entre las opciones
elegir Agregar Referencia
- Otra manera es desde el men
Proyecto, elegir Agregar
referencia

Cualquiera de los procedimientos le mostrar la ventana Agregar referencias, en esta
ventana se debe elegir la opcin COM y entre los muchos elementos que existen se
elige Autocad 2006 Type Library.

Dependiendo a la versin de AutoCAD que se utiliza, en este caso indica claramente
que la versin es AutoCAD 2006.























Es posible obtener informacin adicional sobre los objetos que se encuentran en la
aplicacin, para este fin recurrir a la Ventana de Examinador de Objetos, para hacer
visible esta ventana Ctrl. + Alt +J, o desde el men Ver, elegir Examinador de Objetos
y veremos que ocupa casi todo el entorno.



La ventana cuenta con dos partes, a la izquierda est la lista de objetos y a la derecha
observamos la lista de miembros, pero aparte de esto tambin en esta ventana se pueden
visualizar la lista de mbitos y clases.

1.2 Creando El objeto AutoCAD

El programa AutoCAD para VB es simplemente un objeto, quiere decir que AutoCAD
debe estar asignado a una variable mediante el siguiente cdigo.

' decl ar ando obj et o
Di mObj Aut oCAD As Aut odesk. Aut oCAD. I nt er op. AcadAppl i cat i on

En adelante ObjAutoCAD(puede ser cualquier otro nombre) representa a la aplicacin
misma de AutoCAD. Entonces ya es posible inicializar la aplicacin, dibujar lneas
crculos, lo que sea con el adecuado uso de sus entornos grficos.

1.4 Iniciando la aplicacin.

1.4.1 Iniciando la Aplicacin AutoCAD Como archivo Nuevo

Las siguientes rdenes inicia AutoCAD como un archivo nuevo.

Sub OpenAut oCAD( )

' decl ar ando obj et o
Di mObj Aut oCAD As Aut odesk. Aut oCAD. I nt er op. AcadAppl i cat i on

' asi gnando l a apl i caci n al obj et o
Obj Aut oCAD = Cr eat eObj ect ( " Aut oCAD. Appl i cat i on" , " " )

' cambi ando pr opi edad
Obj Aut oCAD. Vi si bl e = Tr ue

End Sub

Como notar, CreateObject inicializa un nuevo archivo del tipo AutoCAD.

Generalmente, cuando inicia AutoCAD, su propiedad visible est en falso, debe ser
cambiado para poder ver la aplicacin

1.4.2 Apoderndose del Archivo en Ejecucin.

A menudo, por no decir siempre, es conveniente hacerse del archivo AutoCAD que est
en ejecucin, esto es, del documento actual activo. El cdigo siguiente realiza este
requerimiento.

Sub Capt ur eAut oCAD( )

' decl ar ando obj et o
Di mObj Aut oCAD As Aut odesk. Aut oCAD. I nt er op. AcadAppl i cat i on
Di macadCapt i on As St r i ng

' capt ur ando el ar chi vo Aut oCAD
Obj Aut oCAD = Get Obj ect ( , " Aut oCAD. Appl i cat i on" )

' muest r a el t t ul o del ar chi vo capt ur ado
acadCapt i on = Obj Aut oCAD. Capt i on
MsgBox( acadCapt i on, MsgBoxSt yl e. OkOnl y, " Aut oCAD" )

End Sub

La orden Get Obj ect captura el documento actual activo.

Es muy necesario que cuando se ejecute el cdigo anterior debe existir un archivo de
AutoCAD en ejecucin, caso contrario ocurrir error. El programa termina mostrando el
ttulo del archivo capturado.

1.4.3 Forma Compacta

Finalmente el programa debe ser capaz de evaluar una u otra alternativa y ejecutar el
procedimiento adecuado oportunamente. Fjese en el cdigo siguiente:

Sub OpenAut oCAD( )

' decl ar ando obj et o
Di mObj Aut oCAD As Aut odesk. Aut oCAD. I nt er op. AcadAppl i cat i on
Di macadCapt i on As St r i ng

On Er r or Resume Next
' capt ur ando el ar chi vo Aut oCAD
Obj Aut oCAD = Get Obj ect ( , " Aut oCAD. Appl i cat i on" )
' si no est uvo en ej ecuci n
I f Er r . Number <> 0 Then
Er r . Cl ear ( )
' cr eando l a apl i caci n
Obj Aut oCAD = Cr eat eObj ect ( " Aut oCAD. Appl i cat i on" , " " )
Obj Aut oCAD. Vi si bl e = Tr ue
I f Er r . Number <> 0 Then
' si ocur r i er a er r or
MsgBox( Er r . Number , MsgBoxSt yl e. Cr i t i cal , " Fal t al
Er r or " )
Er r . Cl ear ( ) : Exi t Sub
End I f
End I f
' muest r a el t t ul o del ar chi vo act ual
acadCapt i on = Obj Aut oCAD. Capt i on
MsgBox( acadCapt i on, MsgBoxSt yl e. OkOnl y, " Aut oCAD" )

End Sub

El programa inicia tratando de capturar el archivo en ejecucin de AutoCAD, si ningn
archivo de AutoCAD se encuentra activo ocurrir error, entonces se crea un archivo
nuevo.

ObjAutoCAD como objeto que es, posee propiedades y mtodos. Entre sus propiedades
tenemos.

- ActiveDocument: Obtiene el objeto del documento activo. Esta propiedad es
muy importante ya que a la hora de realizar alguna accin sobre AutoCAD
debemos referirnos al documento actual activo.
- Caption: Obtiene el texto de la barra de ttulo de la aplicacin.
- FullName: Obtiene el nombre de la aplicacin y su ruta de acceso completo.
- LocaleID: obtiene el ID(identificador) local para la sesin actual de AutoCAD.
- Etc.

Veremos ahora los mtodos de este objeto.

- Quit: cierra la aplicacin AutoCAD.
- Etc.

Un ejemplo que dibuja lneas en el espacio modelo del documento actual activo de
AutoCAD

Sub Dr awi ngLi ne( )

' decl ar ando obj et o
Di mObj Aut oCAD As Aut odesk. Aut oCAD. I nt er op. AcadAppl i cat i on
Di mAcadLi ne As Aut odesk. Aut oCAD. I nt er op. Common. AcadLi ne
Di mPi ( 2) As Doubl e : Di mPf ( 2) As Doubl e

' capt ur ando el ar chi vo Aut oCAD
Obj Aut oCAD = Get Obj ect ( , " Aut oCAD. Appl i cat i on" )

' punt os
Pi ( 0) = 100 : Pi ( 1) = 100 : Pi ( 2) = 0

' di buj ar l nea en el espaci o model o
Di mi As Doubl e
For i = 0 To 2 * Mat h. PI St ep 0. 1
Pf ( 0) = 100 + 20 * Mat h. Cos( i ) : Pf ( 1) = 100 + 20 *
Mat h. Si n( i )
AcadLi ne =
Obj Aut oCAD. Act i veDocument . Model Space. AddLi ne( Pi , Pf )
AcadLi ne. col or =
Aut odesk. Aut oCAD. I nt er op. Common. ACAD_COLOR. acYel l ow
Next

End Sub


Lo que resulta lneas alrededor del punto P(x,y,z)=P(100,100,0). Antes de ejecutar el
prorama debe existir un archivo AutoCAD en ejecucin, la aplicacin se apodedrar del
documento actual activo y dibujar lneas en su espacio modelo alrededor del punto
P(100, 100, 0).

Los interesados pueden encontrar demasiada informacin en los manuales orientados a
vba(Visual Basic Para Aplicaciones) y AutoCAD. Aunque en VB2005 cambian alguno
de los procedimientos que se usa en VBa, ste cambio no es ningn complicado.

El resultado del programa anterior se muestra en la captura.








Visite: http://cgedmundo.googlepages.com

Comentarios: cgedmundo@gmail.com

También podría gustarte