Está en la página 1de 17

1 2 Programacin en Catia v5

2 Programacin en CATIA v5.

En este captulo se pretende dar una idea general del


entorno de programacin Visual Basic for Applications en
el software de Catia v5.

Alejandro Martn Garrido Aplicacin para la generacin y exportacin CAD automtica de planos en
Catia V5 a partir de ficheros Part 25
Alejandro Martn Garrido
1 2 Programacin en Catia v5

2.1 Programacin en Catia v5

Como se ha comentado, CATIA (de sus siglas en ingls Computer Aided Three dimensional
Interactive Application) es un software de diseo CAD/CAE muy potente que, adems de poner
a nuestra disposicin una gran cantidad de herramientas de trabajo para el modelado de
slidos contiene herramientas para implementar los conceptos de KBE.

Una de las herramientas es la programacin en VBA y al plantearnos el desarrollo y uso de


esta opcin, estamos persiguiendo dos objetivos principales:

1. Conseguir que los procesos se realicen ms rpido (al ser trabajados por lotes).

2. Disminuir la probabilidad de error humano (al realizar procesos repetitivos que pueden
conllevar falta de atencin).

A continuacin se van a exponer algunos de los conceptos y principios que integran la


programacin en VBA para Catia.

2.1.1 El entorno de programacin para VB

Entorno de Desarrollo Integrado (Integrated Development Enviroment IDE) Se llama de


esta manera a la aplicacin que ayuda al desarrollador de software. Consiste en un editor de
cdigo, un analizador de fallos, herramientas de construccin automticas, un visualizador de
objetos y un compilador. El IDE de Catia nos permite adems acceder a la biblioteca de objetos
propios. De cmo usar este entorno se hablar posteriormente en el apartado 2.2.4.

Figura 2.1 Entorno de Desarrollo Integrado de Catia v5

Alejandro Martn Garrido Aplicacin para la generacin y exportacin CAD automtica de planos en
Catia V5 a partir de ficheros Part 26
Alejandro Martn Garrido
1 2 Programacin en Catia v5

Interfaz Grfica de Usuario (Graphical User Interface GUI) Es el conjunto de elementos


grficos que permite a las personas interactuar con la computadora. Estos elementos son los
que comnmente son susceptibles de interactuar a travs de un ratn, tales como ventanas,
iconos, barras de herramientas, etc. Nuestro sistema llevar formularios que hagan las veces
de GUI al pedir al usuario cierta informacin.

Component Object Manual (COM) Es una plataforma de Microsoft que permite compartir
cdigo a travs de diferentes aplicaciones y lenguajes de programacin. Son aquellos que,
relacionados con el apartado anterior, se desarrollan para funcionar como archivos DLL y se
guardan en el registro de Windows.

2.1.2 La configuracin de Catia

Para activar las funciones de los lenguajes de programacin, Catia tiene que ser
configurado para que las caractersticas propias de cada lenguaje sean tenidas en cuenta.

En Tools > Options encontramos el formulario de opciones de Catia. En el apartado


General > Macros seleccionamos el tipo de lenguaje que necesitemos para la creacin del
cdigo de programacin. En nuestro caso optaremos por la opcin MS VBA Visual Basic
Editor.

Figura 2.2 Opciones de Lenguaje de Macros

2.1.3 Los objetos de Catia

El lenguaje de programacin Visual Basic est basado en objetos, es decir, la mayora de


las entidades a las que podemos acceder a travs de l son otros objetos. Elementos tales
como documentos, ventanas grficas, Bodies, Pads, Sketches, planos, lneas, puntos

Alejandro Martn Garrido Aplicacin para la generacin y exportacin CAD automtica de planos en
Catia V5 a partir de ficheros Part 27
Alejandro Martn Garrido
1 2 Programacin en Catia v5

geomtricos... de Catia V5 son representados en Visual Basic como objetos con sus
propiedades y mtodos.

Ejemplo:

Dim MiDocumento As Document 'Declaramos un objeto tipo Document_


(documento).
Set MiDocumento = Catia.ActiveDocument Lo definimos como el_
documento activo.

Una propiedad es una parte del objeto que contribuir a definir cmo es ste. Por
ejemplo, la propiedad FullName de un objeto tipo Document devuelve el nombre completo
(incluyendo la ubicacin o path) del documento al que este apunta. En funcin del tipo de
objeto con el que estemos trabajando existirn propiedades que podrn modificarse y otras
que son de slo lectura. Para trabajar con cualquier propiedad tenemos que apuntar al objeto
a la que sta hace referencia.

Ejemplo:

Dim NombreDoc As String 'Declaramos una variable tipo String


NombreDoc = Midocumento.FullName Devuelve una cadena del tipo_
C:\PFC_Temp\Dr2_2.CATDrawing

Un mtodo es una accin que se ejecuta sobre un objeto determinado. As, el mtodo
Save aplicado sobre un objeto tipo Document guarda el documento.

Midocumento.Save

Un mtodo puede necesitar argumentos para que se ejecute, por ejemplo el mtodo
SaveAs aplicado sobre un documento requiere la ubicacin y el nombre con el que queremos
guardar dicho documento.

Midocumento.SaveAs C:\PFC_Temp\NombrePrueba.CATDrawing Guarda el_


documento como NombrePrueba en C:\PFC_Temp

Distinguiremos dos tipos distintos de mtodos:

a) Mtodo Sub: no devuelve ningn valor. Si un mtodo Sub requiere argumentos estos
no deben ir entre parntesis. La estructura general para usar este mtodo es:

Objeto.Sub argumento1, argumento2 , argumento3,

b) Mtodo Funcin: devuelve un valor o un objeto. Si un mtodo Funcin requiere


argumentos estos deben ir entre parntesis. La estructura general a utilizar es:

Objeto.Funcin (argumento1, argumento2 , argumento3, )

La partcula Set se emplea solamente si el valor devuelto es un objeto y no una cadena de


caracteres o un nmero (variables tipo String, Boolean, Double, Integer). En el caso de que el
valor devuelto sea almacenado como una propiedad de otro objeto no debemos usar dicha
partcula. La estructura general de uso es:

Alejandro Martn Garrido Aplicacin para la generacin y exportacin CAD automtica de planos en
Catia V5 a partir de ficheros Part 28
Alejandro Martn Garrido
1 2 Programacin en Catia v5

Set ObjetoDevuelto = ObjetoOrigen.Funcion (arg1,arg2,arg3,)


ObjetoDestino.Propiedad = ObjetoOrigen.Funcion (arg1,arg2,arg3,)

Una coleccin es un tipo especial de objeto que contiene otros objetos de la misma clase,
por ejemplo una coleccin de documentos (Documents) contiene objetos del tipo Document
(documento). En general las colecciones se denotan en plural para distinguirlas de los objetos
individuales. Para acceder a cualquier elemento de una coleccin utilizamos el mtodo Item
seguido del ndice (posicin del objeto dentro de la coleccin: 1,2) o del nombre del objeto
que queremos obtener.

Dim oDocS As Documents 'Declaramos una coleccin tipo Documents


Set oDocS = Catia.Documents Establecemos esta coleccin igual a la_
activa de Catia
Dim oDoc1 As Document 'Declaramos un objeto tipo Document
Set oDoc1 = oDocoS.Item(2) lo igualamos al segundo documento de la_
coleccin documentos

O bien:

Set Documento1 = documentos.Item(NombrePrueba.CATDrawing) siendo


NombrePrueba.CATDrawing el nombre exacto

Para obtener el nmero de objetos contenidos en cualquier tipo de coleccin utilizamos la


propiedad Count asociada a dicha coleccin. La estructura general para usar esta propiedad es:

Dim NumElem As Integer 'Declaramos una variable de tipo entero


NumElem = Coleccion.Count Se iguala al nmero de documentos de la_
coleccin

Comprendiendo el funcionamiento interno de estos objetos, mtodos y colecciones


podemos realizar prcticamente todas las accionas que un diseador hace mientras que
mueve el ratn a travs de cdigo programado. Sin embargo, poder repetir acciones no
obtiene nuevos diseos mejorados ni conceptos estticos.

2.1.4 Ayuda de Catia

Una de las herramientas principales que se van a utilizar para el desarrollo de macros o
scripts es la ayuda que ofrece Catia. En este aspecto, podemos encontrar todas las variables
que utiliza en lenguaje VBA, junto con descripciones de sus caractersticas, categora,
funcionamiento, propiedades, mtodos, En definitiva, una completa biblioteca de uso
indispensable.

Adems de contar con una valiosa informacin acerca de los objetos propios aplicados a
VBA, en la ayuda de Catia encontramos pequeas guas de sus respectivos mdulos. En ellas se
definen los conceptos bsicos, las interactuaciones que realizan sus mdulos y algunos
consejos para disear con mayor funcionalidad.

La ayuda se suministra a travs de formato HTML, lo que facilita en cierta medida el acceso
a la misma. Sin embargo, la estructura de Catia en la que est basada la ayuda, no permite una

Alejandro Martn Garrido Aplicacin para la generacin y exportacin CAD automtica de planos en
Catia V5 a partir de ficheros Part 29
Alejandro Martn Garrido
1 2 Programacin en Catia v5

bsqueda intuitiva de la informacin sino que nos obliga a navegar por una gran cantidad de
opciones y recursos hasta encontrar lo que deseamos.

Generalmente la mejor forma de interactuar con ella es a travs del explorador. Una vez
realizada una bsqueda podemos seleccionar las entradas a partir bloque al que pertenecen.
Para nuestro trabajo, generalmente estaremos interesados en los mdulos:

Programming Interface

DMU Navigator Journaling Task

Infrastructure Journaling Objects

Figura 2.3 Ayuda de Catia

A continuacin podemos ver un ejemplo resumido de la informacin obtenida a travs de


la ayuda de Catia para el objeto Line:

Line (Object)

Represents the hybrid shape Line feature object.

Role: Declare hybrid shape Line root feature object. All interfaces for different type of Line
derivates HybridShapeLine.

Property Index

FirstUptoElem Role: Gets the First upto element of the line.

SecondUptoElem Role: Gets the Second upto element of the line.

Method Index

GetDirection Role: Returns the unit-vector pointing in the direction of the line.

GetOrigin Role: Returns the origin of the line.

PutDirection Role: Sets the unit-vector pointing in the direction of the line.

Alejandro Martn Garrido Aplicacin para la generacin y exportacin CAD automtica de planos en
Catia V5 a partir de ficheros Part 30
Alejandro Martn Garrido
1 2 Programacin en Catia v5

Por otro lado, la informacin obtenida sobre las propiedades y mtodos en la ayuda de
Catia generalmente puede ser encontrada en el editor de VB. Para ello slo tenemos que

pulsar el botn del Object Browser (Examinador de Objetos) y buscar nuestro objeto o
mtodo deseado. Sin embargo, la informacin obtenida de esta manera no nos da una visin
global del objeto y de cmo funciona. Para realizar una pequea comparativa, en la imagen
podemos ver la informacin obtenida de la bsqueda del mismo objeto Line del prrafo
anterior:

Figura 2.4 Explorador de Objetos

2.1.5 Compatibilidad entre lenguajes

Desde comienzos de la versin 5 de Catia, se ha dado soporte para editar con lenguaje
vbscript en lugar del utilizado entonces CATScript. Con ello, se gan en compatibilidad aunque
se mantuvo la opcin del lenguaje CATScript para no tener que rehacer el trabajo previo. Sin
embargo, conocer las diferencias entre los lenguajes CATScript (con cierta tendencia a la
obsolescencia) y VBA es necesaria puesto que una de las herramientas que nos va a permitir
ahorrar tiempo en nuestro proceso de programacin est relacionada con el lenguaje
CATScript: El grabador de macros de Catia (2.2.3)

Conversin de CATScript a VB/VBA

En general, no debera de haber problemas al utilizar el cdigo extrado de un CATScript


(as es como lo obtenemos despus de grabar una macro) al usarlo para un proyecto VB/VBA.
Sin embargo, algunos procesos de escritura son incompatibles entre el BasicScript y el cdigo
en VBA.

Alejandro Martn Garrido Aplicacin para la generacin y exportacin CAD automtica de planos en
Catia V5 a partir de ficheros Part 31
Alejandro Martn Garrido
1 2 Programacin en Catia v5

Normalmente cuando un mtodo devuelve un objeto abstracto, el BasicScript considera a


la variable en la que el objeto va a ser almacenado del tipo necesario sin tener que ser
declarada especficamente. De esta manera, se pueden utilizar ciertas propiedades y mtodos
dentro de una variable general que englobe a otra especfica.

Dim oDoc As Document


Set oDoc = CATIA.ActiveDocument Devuelve un Documento genrico
Dim oParte As Part
Set oParte = oDoc.Part Asocia oDoc (documento genrico) a uno tipo_
Part

En cambio, en VB/VBA no es posible hacerlo de esta manera, hay que especificar


correctamente cada variable dentro de su objeto. De manera que el sistema no tenga que
averiguar cul es la naturaleza del mismo.

Dim oDoc As PartDocument


Set oDoc = CATIA.ActiveDocument Devuelve un Documento tipo_
PartDocument
Dim oParte As Part
Set oParte = oDoc.Part Asocia oDoc (PartDocument) a uno tipo Part

Por ello es necesario tener cuidado a la hora de generar cdigo en CATScript para convertirlo
en cdigo para VB/VBA.

Trabajar con matrices de parmetros

Es necesario tener cuidado a la hora de trabajar con matrices de parmetros ya que


algunas definiciones pueden hacer que sus mtodos no funcionen correctamente. Esto es
debido a que generalmente, definiciones provenientes de BasicScript, pueden tener mltiples
tipos de valores dentro de una matriz. Cuando se comete este tipo de error, el lenguaje
VB/VBA no es capaz de trabajar con los tipos de definiciones que soporta BasicScript.

Dim strParam1 As StrParam


Set strParam1 = parameters1.Item(STRING)

iSize = strParam1.GetEnumerateValuesSize()
Redim myArray(iSize-1)
strParam.GetEnumerateValues myArray

For i = 0 To iSize-1
msgbox myArray(i)
Next

Generalmente este error conlleva un mensaje de error del tipo:

Function or interface marked as restricted, or the function uses an


automation type not supported by Visual Basic.

La solucin sencilla es no definir en este caso la matriz, de modo que VB/VBA puedan
trabajar con ella segn los requerimientos necesarios.

Dim strParam1 ' As StrParam -


Set strParam1 = parameters1.Item(STRING)

iSize = strParam1.GetEnumerateValuesSize()

Alejandro Martn Garrido Aplicacin para la generacin y exportacin CAD automtica de planos en
Catia V5 a partir de ficheros Part 32
Alejandro Martn Garrido
1 2 Programacin en Catia v5

Redim myArray(iSize-1)
strParam.GetEnumerateValues myArray

For i = 0 To iSize-1
msgbox myArray(i)
Next

2.1.6 Compatibilidad entre releases

Las diferentes revisiones (releases) de Catia pueden dar problemas a la hora de funcionar
con macros. Esto ocurrir si intentamos migrar un cdigo realizado para una versin a otras. A
continuacin se exponen algunos de los errores ms que con ms frecuencia pueden aparecer.

Tablas de Funciones Virtuales

Al cambiar la revisin, la biblioteca de objetos propios de Catia puede verse modificada de


manera que un objeto vare sus propiedades o el orden de stas. El origen de este problema
est en cmo se llama a los mtodos por parte de VB/VBA. Si se realiza una llamada con la
implementacin Invoke cuando no se ha especificado el tipo de objeto, el sistema busca este
mtodo entre los posibles y lo activa.

Dim oObjecto
oObjecto.DoThis

Sin embargo, al definir el objeto y variar debido al cambio de revisin:

Dim oObjecto As SpecificTypeOfObject


oObjecto.DoThat

Se realizar una llamada vinculante, la cual har que la descripcin en la tabla de funciones
virtuales de oObject se volver a crear a partir de la informacin disponible en la biblioteca de
tipos, describindose el tipo SpecificTypeOfObject con una llamada a la posicin en la tabla en
vez de al tipo o mtodo.

Si en una nueva release, el orden de los mtodos en esta tabla virtual de funciones cambia
(puede ocurrir cuando se aaden nuevos mtodos), la aplicacin har una llamada de mtodo
equivocado llevando a un problema que es difcil de identificar.

Adems, la descripcin extrada por VB/VBA de la biblioteca de tipos no suele estar


siempre actualizada cuando sta cambia. Esto quiere decir que recompilar el proyecto puede
no corregir un problema. A continuacin se muestra el mtodo que puede solucionar este
problema:

Abrir el proyecto VB o VBA

Eliminar todas las referencias a la biblioteca de tipos de V5 utilizando el


Project/References o los tems del men Tools/References

Guardar y cerrar el proyecto

Reabrir el proyecto y aadir de nuevo las referencias necesarias

Alejandro Martn Garrido Aplicacin para la generacin y exportacin CAD automtica de planos en
Catia V5 a partir de ficheros Part 33
Alejandro Martn Garrido
1 2 Programacin en Catia v5

Typelibs Obsoletas

Algunas bibliotecas de tipos pueden quedarse obsoletas y desaparecer con el lanzamiento


de una nueva release. Si los derechos de acceso permiten modificar el registro de Windows, las
referencias a esas bibliotecas sern automticamente eliminadas cuando se abra el archivo
CATVBA. Si este no es el caso, el siguiente mensaje podra aparecer cuando se abre el macro:

CNEXT CATScriptError Message Scripting ERR_1000


Execute the script XXXXX |XXXXX = The script entry point could not
be found.
XXXXX Define a CATMain procedure which will be the entry point of
the script

Para evitar esto, se debe abrir el VBA (Alt-F11) y utilizar el panel del men de tems
Tools/References. En este panel, se deselecciona la referencia concerniente a la biblioteca de
tipos y se hace clic en OK.

Este problema puedo tambin ocurrir en proyectos VBA que no tengan aplicaciones V5 o
VB6.

Aceptacin de la variable Boolean en CATVBA

Hay una limitacin conocida concerniente al uso del tipo Boolean en los procesos de
llamada de VBA a los procesos de V5 Automation. En las aplicaciones de V5, el tipo Boolean es
definido como un unsigned char donde las definiciones de VBA son cortas. Cuando un
proceso de V5 se vuelve True, el valor integer devuelto es 1, aunque VBA est esperando que
sea -1. Debido a esta diferencia, el siguiente cdigo VBA no funcionar como se esperaba

If myObj.boolMethod() = True Then // This test will fail...End If

Para corregir este problema, se debe escribir el cdigo de la siguiente forma:

If myObj.boolMethod() Then End If

O bien de la siguiente manera:

If myObj.boolMethod() != False Then ...End If

Por la misma razn, el mtodo Not no puede ser aplicado directamente en el valor
devuelto por el mismo, puesto que devolver True en vez de False.

Not(myObj.boolMethod())

Para usar este mtodo habr que almacenar el valor en una variable antes de aplicarlo:

Dim myBoolmyBool = myObj.boolMethod()Not(myBool)

Alejandro Martn Garrido Aplicacin para la generacin y exportacin CAD automtica de planos en
Catia V5 a partir de ficheros Part 34
Alejandro Martn Garrido
1 2 Programacin en Catia v5

2.2 Comenzando la creacin de macros

Para poder comenzar a desarrollar macros para Catia, adems de tener ciertos
conocimientos bsicos sobre, necesitamos conocer cmo aplicar ciertos procesos sencillos y el
entorno propio del editor.

A continuacin se propone una pequea muestra descriptiva de algunos de los procesos y


elementos ms relevantes.

2.2.1 El archivo catvba y las Bibliotecas de Macros

Este tipo de archivo con extensin *.catvba es la coleccin o proyecto que almacena los
elemento programados. En l podemos encontrar formularios, mdulos, funciones, clases,
colecciones... Bsicamente todo aquello que podamos programar para el entorno de Catia.

Para cada proyecto en el que deseemos trabajar hay que crear un archivo catvba nuevo e
indicar a Catia que tiene que usarlo para encontrar los mdulos en los que hemos trabajado. Al
igual que puede ocurrir con los otros archivos de Catia es fundamental que estn bien
localizados y en la misma ubicacin, para su correcto funcionamiento.

2.2.2 Crear una Biblioteca de Macros

Una Macro Library (biblioteca de macros) es un directorio donde las macros estn
ubicadas. Es la aplicacin del archivo catvba dentro del proceso de programacin para Catia.
Utilizando la biblioteca de macos el usuario puede tener un acceso rpido a todas las macros
que contiene el archivo.

Para crear una biblioteca de macros tenemos que acceder a travs de Tools > Macro >
Macros Una vez seleccionado, nos aparece la lista de las bibliotecas que ya se encuentran
activadas en el registro de Catia (as como los diferentes mdulos que la componen). Ahora,
seleccionando Macro Libraries entramos finalmente en la ventana de opciones.

Figura 2.5 Biblioteca de Proyectos

Alejandro Martn Garrido Aplicacin para la generacin y exportacin CAD automtica de planos en
Catia V5 a partir de ficheros Part 35
Alejandro Martn Garrido
1 2 Programacin en Catia v5

En esta ventana podremos seleccionar bibliotecas ya existentes (importarlas), crear nuevas


o borrar alguna previa. Adems podremos elegir el tipo de biblioteca que vamos a realizar. En
nuestro caso seleccionaremos VBA projects lo cual crear el archivo catvba asociado a este tipo
de biblioteca.

2.2.3 Grabar una macro

Esta utilidad permite grabar en cdigo fuente, de manera ordenada y automtica, todas las
acciones que realicemos durante el tiempo que dure el proceso de grabacin.

Para grabar una macro deberemos proceder de la siguiente forma:

Seleccionar Tools > Macro > Start Recording

Seleccionar la biblioteca (directorio o proyecto VBA) o el documento (CATPart,


CATDrawing, CATProduct,) donde queremos guardar la macro.

Figura 2.6 Men de grabacin de Macros

Pulsar sobre el botn Start y comenzamos a realizar las acciones en las que estamos
interesados.

Finalmente, cuando hayamos terminado pulsamos el botn Stop (que ha


aparecido previamente). Para encontrar la macro grabada, en el editor
encontraremos un nuevo mdulo con las lneas de comandos.

Las opciones ms importantes de este proceso estn relacionadas con el paso b anterior:
Dnde y cmo guardar la macro grabada. Para guardar la macro debemos seleccionar el men
desplegable correspondiente a la casilla Current macro library or document de la Figura 2.5
Biblioteca de Proyectos y seleccionar el destino. Para ello las tres opciones que nos ofrece el
sistema son:

Vinculada a alguno de los documentos abiertos de Catia (slo en lenguaje Catscript o


Vbscript). Relaciona dicho documento y el fichero que contiene la macro.

Almacenar la macro dentro de un directorio existente (lenguaje Catscript y Vbscript).

Alejandro Martn Garrido Aplicacin para la generacin y exportacin CAD automtica de planos en
Catia V5 a partir de ficheros Part 36
Alejandro Martn Garrido
1 2 Programacin en Catia v5

Almacenar la macro como un mdulo dentro de un proyecto de VBA existente (solo


vlido para el lenguaje VBA). Esta opcin es la ms til para este proyecto puesto que
permite trabajar directamente con la informacin en el entorno de trabajo de VBA.

Si bien es cierto que el Grabador de Macros es una herramienta muy potente, hay que
tener en cuenta que slo sirve como base para el trabajo. Principalmente porque los
comandos almacenados slo realizan las acciones en el mismo orden y con las mismas
llamadas siempre que se encuentren en la misma configuracin. Es decir, copia las acciones en
el sentido ms literal. Es responsabilidad del programador reordenar, configurar y crear las
llamadas oportunas para que el cdigo cobre sentido y funcionalidad.

2.2.4 Editar una macro

Para editar una macro vamos a utilizar el entorno de desarrollo integrado, tambin
conocido como Visual Basic Editor (Editor de Visual Basic). Este editor consta de diferentes
ventanas que nos permiten acceder fcilmente a las herramientas suministradas.

Para poder editar una macro, hay que conocer al menos las ms importantes de ellas y las
opciones bsicas que nos permiten. En este apartado vamos a dar una visin global de estos
elementos.

Project Explorer

La ventana del Project Explorer (Explorador del Proyecto) recoge todos los archivos que
componen el proyecto de programacin en el que se est trabajando. Es decir, muestra qu
contiene el archivo catvba asociado (podramos entenderlo como el explorador de nuestra
biblioteca del proyecto). En l podemos ver los diferentes mdulos, formularios y clases que
componen el proyecto. Estos elementos pueden a su vez ser exportados o importados a travs
de archivos que se aaden al proyecto.

Los mdulos son los son programas o


rutinas independientes y se guardan para
su exportacin en ficheros con extensin
BAS.

Los formularios son rutinas asociados


a ventanas grficas donde se incorporan
objetos y eventos, si se desean exportar se
almacenan con extensin FRM.

Las clases son las definiciones de


nuevos objetos donde se encuentran las
propiedades y eventos de los mismos, a su
vez son almacenadas como CLS.

Figura 2.7 Ventana del explorador de Proyecto

Alejandro Martn Garrido Aplicacin para la generacin y exportacin CAD automtica de planos en
Catia V5 a partir de ficheros Part 37
Alejandro Martn Garrido
1 2 Programacin en Catia v5

Properties Window

La Ventana de Propiedades refleja en una


columna todas las propiedades del formulario que
se encuentre activado, en ese momento, en la
ventana de propiedades. Estas propiedades
pueden modificarse para conseguir la
configuracin deseada de los elementos que
componen el formulario.

Figura 2.8 Ventana de Propiedades

Ventana de Cdigo

Es la ventana en la que se van a guardar las lneas de comandos de nuestro cdigo. Posee
la capacidad de colorear las letras de forma automtica para poder distinguir con cierta
facilidad las caractersticas de la estructura del cdigo.

Figura 2.9 Ventana de Cdigo

Adems de estos elementos, encontramos el anteriormente comentado Object Browser y


las diferentes barras de herramientas:

Alejandro Martn Garrido Aplicacin para la generacin y exportacin CAD automtica de planos en
Catia V5 a partir de ficheros Part 38
Alejandro Martn Garrido
1 2 Programacin en Catia v5

Standard Contiene los botones comnmente utilizados. Con ella casi no es


necesario trabajar con las otras.

Debug Muestras las herramientas para encontrar los errores en el cdigo.

Edit Ofrece las herramientas de edicin del texto.

UserForm Facilita las acciones para editar el formulario de manera grfica.

Todos los elementos anteriores tienen las caractersticas comunes de los editores de
programacin en VBA. Por ello, una persona acostumbrada a programar en este lenguaje lo
encontrar familiar. Para los usuarios nuevos, es adems un sistema intuitivo en el que con un
poco de prctica podemos hacer las primeras aplicaciones.

2.2.5 Script Debugger

Catia nos da la oportunidad de utilizar el Microsoft Script Debbugger. Este programa nos
permite utilizar el depurador de errores cuando se encuentre una orden de Stop en el
programa o cuando se encuentre un error.

Adems ofrece informacin relativa al error ocurrido y a la ubicacin de la lnea de


comandos en el texto, por lo que es una herramienta fundamental para solucionar posibles
problemas de forma rpida y eficiente.

Figura 2.10 Mensaje de Error generado por el Script Debugger

Alejandro Martn Garrido Aplicacin para la generacin y exportacin CAD automtica de planos en
Catia V5 a partir de ficheros Part 39
Alejandro Martn Garrido
1 2 Programacin en Catia v5

2.2.6 Ejecutar una macro

A la hora de ejecutar una macro previamente creada, tenemos que acceder a la misma de
la siguiente manera:

1.- Seleccionar [Tools > Macro > Macros]

2.- Seleccionar la macro deseada y pulsar el botn [Run]

Si la macro no tiene ningn error de edicin (es nuestra responsabilidad no involucrarla en


un bucle infinito), se puede observar los resultados de la misma tras su ejecucin.

En el caso de que exista el error, siempre que Catia pueda detectarlo nos ofrecer
informacin relacionada con el mismo, de manera que facilita nuestra correccin.

Hay otros mtodos que permiten, a travs de cdigo o ejecucin de comandos, activar una
macro. La finalidad de este proyecto es poder dar una mayor facilidad al usuario, por lo que se
propone utilizar un mtodo ms sencillo a la vez que familiar: La ejecucin a travs de iconos
en las barras de herramientas.

2.2.7 Aadir una macro a la barra de herramientas

Se puede aadir un icono a la barra de herramientas de manera que al pulsarlo active


inmediatamente la macro. Esto es de gran utilidad para los usuarios que desconocen qu se
encuentra detrs del icono y slo quieren utilizar la herramienta proporcionada. Adems
permite la opcin de tener una gran cantidad de macros organizadas segn la funcionalidad
deseada, consiguiendo as un mayor nivel de eficacia.

Para realizar este proceso tenemos que asegurarnos primero de que la macro va a ser
reconocida por CATIA. Para ello comprobamos que est incluida en alguna biblioteca:

Seleccionar
Tools > Macro >
Macros

Figura 2.11 Biblioteca de Mdulos

Alejandro Martn Garrido Aplicacin para la generacin y exportacin CAD automtica de planos en
Catia V5 a partir de ficheros Part 40
Alejandro Martn Garrido
1 2 Programacin en Catia v5

Una vez que hemos comprobado que est y que su ruta es correcta comenzamos el
proceso para crear el icono.

Vaya a Tools > Customize, luego en la pestaa de Comands seleccione Macros

Pinche la macro seleccionada y arrstrela a la barra de herramientas donde quiera


que est disponible. Aparecer un icono con la forma genrica.

Se pueden cambiar las propiedades del icono, el nombre, el formato en el botn de


propiedades.

Adicionalmente podemos crear barras de herramientas para que contengan un conjunto


de botones asociados a las macros que desarrollemos. Esto se realiza en cada entorno de
trabajo a travs de las diferentes opciones de Tools > Customize > Toolbars y seleccionando en
New. Finalmente, para asignar botones a esta barra de herramientas seleccionamos Add
Commands.

Alejandro Martn Garrido Aplicacin para la generacin y exportacin CAD automtica de planos en
Catia V5 a partir de ficheros Part 41
Alejandro Martn Garrido

También podría gustarte