Catia V5 por el “Juanri”: El Sitio del Catia en Español

Link de Interes | Novedades | Mapa | Buscar
Mis Normas | Mis Cosas | Quiero aprender Catia | Historia de la web | ¿Como empiezo?
Simbología | Concursos | CATDUA | Trasferencia de ficheros
Indice Gral. | Drawing |Navigator | Entorno | Part Design | G.Shape D. | DMU_Assembly|Trucos
Indice de general | Ind. 3D | Ind. superficies | Ind. cinematica | Ind. engranajes | Ind. Otros
Indice gral. | Entorno | Alambrico | Solidos | Cinematica | Otros
Geometría Descriptiva
Power Copy, User Features y Aplicaciones
Juego: Ahorcado y Porra Americana
Cursos en IFES | Otros Cursos | Cursos Previstos

Está Vd. en: FAQ Hoja2 >>Part Design > 082_¿Macros?.

¿Macros? ¿Y que tal si empezamos por lo mas básico: Lineas, Power Copy’s y User Features?

  He recibido muchos correos electrónicos donde el personal dice cosas, que me ponen los pelos de punta, como esta:
Hola Juanri: Estoy empezando con esto del CATIA y quiero saber para que sirven y como se hace una macro”.
¡Pa haberse matáo!!!
  Claro, a mí me cabe la duda de si cuando dice: “Estoy empezando” lo dice “porque es por la mañana y está empezando HOY a trabajar, pero lleva muchos años en esto”..O es que hoy ha descubierto que existe el catia v5?.
  Yo pongo la siguiente analogía (nada que ver con ano):
  Es como si yo fuera “profe” de una escuela primaria (ya sabéis: esos seres pequeños de 5-8 años) y de pronto llegara uno de ellos y me dijera: “Juanri: ¿me va a enseñar hoy integrales dobles?” Y yo asustado le diría: “Si..las galletas que son integrales…jejeje”.
  Que no es que yo no sepa integrales, que debo saberlo (en mi cabeza estaban al menos…), pero que antes hay que aprender a sumar, restar y demás cosas para abordar con cierta base las integrales dobles (Gusanito, gusanito, palito cruzado, que decíamos entonces), no?
  Porque yo, al anónimo lector de esta página (y por ser anónimo desconozco sus conocimientos) le preguntaría:
A.- ¿Sabes que una macro es en el fondo (y sin fondo) un programa?
B.- ¿Sabes que para programar hay que tener unos estudios de programación, al menos básicos?
C.- ¿Sabes que estos programas tocan objetos que son features de catia mediante unas “digamos APIS” de catia?

  Si a todas estas preguntas has respondido “Si; se programar y conozco catia a fondo”, entonces pasamos a la segunda parte:

   Es el caso en que en la “escuela primaria que hablaba antes” se me ha “colado” un “niño con bigote, algo calvo y de 1,75 de altura” y quiere que yo le explique (entre tabla de 3 x 4 =12; 3x 5=15 …) como se lleva la contabilidad de un almacén que él tiene..
  Está claro que no tengo “capacidad para eso”… no “en esa escuela”.

  Pues es lo que digo: No es que no sepa; que sé. Es que este “lugar” no es el adecuado para eso, porque está pensado para el que empieza y tengo que sostener preguntas de un nivel mas sencillo.
  Además esta el tema que “algunos programas y utilidades enfocadas para automatizar” yo las hago para “ganar dinero” y enfocadas a empresas y no a particulares. Recordar que el contenido de esta web está acogido a las normas Creative Commons (http://creativecommons.org/licenses/by-nc-sa/2.5/es/) es decir:
“Usted es libre de:

Siempre que:

Y demás cosas que figuran en la licencia….

Pero algunos lectores insisten:
Es que como en ToolsflechaMacro.. hay un comando que es “Start Recording..” que graba una macro…

  Si: efectivamente. Pero te voy a explicar (y será lo único que haga en esta web) como funciona:
  Supongamos que tenemos una pieza como esta:

  Y queremos hacer una macro para dibujar una línea entre el origen y el vértice superior (donde está la mano). Veamos como se hace y cual es el resultado:

  1. Con la pieza en pantalla doy “ToolsflechaMacro..Start recording” y me aparece esta ventana donde yo selecciono donde lo voy a guardar y que tipo de macro quiero. La he llamado “MiMacro.CATScript” (porque la quiero grabar en ese lenguaje):
  2. Doy a OK y eso da lugar a que me aparezca en la zona gráfica un icono como este:  que sirve para detener el proceso de “copia” de la macro.
  3. Y empiezo a introducir “acciones” en mi macro: Doy al icono “Line” y selecciono la opción “Point-Point” pinchando el origen y el vértice indicado. Doy OK para cerrar el panel y crear la línea.
  4. Doy al icono que me apareció para parar de grabar.

Vamos a ver que ha grabado catia, en esta ocasión:

  1. Nos vamos a ToolsflechaMacrosflechaMacros ( o Alt+F8) y nos aparece el panel de las macros almacenadas en ese directorio.


Lista de macros

  1. Para ver lo escrito, con la macro seleccionada (en azul) damos al botón [Edit...] y vemos lo escrito:
    listado del programa

  ¿Quién entiende esto? Pues los programadores, porque si no hay que empezar por la A en la programación. ¡Ah, que eres programador!!. Bueno pues ya sabes: una serie de declaraciones de variables de tipos específicos de catia (As Part; As Bodies; etc..)
  Y después asocia a estas variables valores, por ejemplo:
Set reference1 = part1.CreateReferenceFromBRepName("FVertex:(Vertex:(Neighbours:(Face:(Brp:(AxisSystem.1;2);None:();Cf11:());Face:(Brp:(AxisSystem.1;3);None:();Cf11:());Face:(Brp:(AxisSystem.1;1);None:();Cf11:()));Cf11:());WithPermanentBody;WithoutBuildError;WithSelectingFeatureSupport;MFBRepVersion_CXR14)", axisSystem1)
Esta asocia a la Reference1, el vértice del origen de sistema de ejes AxisSystem.1.

Set assemble1 = shapes1.Item("Assemble.1")
Esta asocia a la variable assemble1, el Nodo llamado Assemble.1.

Set hybridBody1 = hybridBodies1.Item("Patata")
Esta asocia a la variable hybridBody1, el Geometrical Set llamado Patata.

  Y que pasa si damos Alt+F8 y damos al botón [Run]? Pues que creará una línea como esa tantas veces como le demos al botón Run.

¿Y si queremos que en vez de a ese vértice apunte a otro vértice?.
  Pues a ver quien es el guapo que averigua como se crea, a mano, este “chorizo”:
Set reference2 = part1.CreateReferenceFromBRepName("FVertex:(Vertex:(Neighbours:(Face:(Brp:(Pad.1;0:(Brp:(Sketch.1;5)));None:();Cf11:());Face:(Brp:(Pad.1;2);None:();Cf11:());Face:(Brp:(Pad.1;0:(Brp:(Sketch.1;4)));None:();Cf11:()));Cf11:());WithPermanentBody;WithoutBuildError;WithSelectingFeatureSupport;MFBRepVersion_CXR14)", assemble1)

Claro, para copiar una línea está el socorrido “Copy & Paste”. Y para un grupo de elementos geométricos está el Power Copy.

¿Y puedo utilizarlo para otra pieza, como esta?
otra pieza


Pues va ha ser que NO. ¿Por qué? Porque fallaría por ejemplo en esta sentencia:
Set assemble1 = shapes1.Item(“Assemble.1”)
Dado que este part no tiene la operación booleana “Assemble.1

Entonces: ¿para que sirven las macros?
  Pues a no ser que sean cosas genéricas, como: Seleccionar todos los puntos existentes en el Part y ocultarlos,
Solo sirven, para los programadores, para saber como se llama a la función Line Point-Point:
Set hybridShapeLinePtPt1 = hybridShapeFactory1.AddNewLinePtPt(reference1, reference2)

  Cosa que también se sabe con la ayuda que trae el programa, pero aquí se puede ver mas claro.

  Espero que esto deje claro el asunto de las macros y no volvamos “con la burra al carril” pasando

Volver al Indice Piense en sus nietos!! Dirija sus preguntas a: juanri@muchocatia.es CATIA V5 R16