Cambiar nombres cuerpos solidos Inventor

Cambiar nombres cuerpos solidos Inventor

Mecanico14
Advisor Advisor
1.323 Vistas
10 Respuestas
Mensaje 1 de 11

Cambiar nombres cuerpos solidos Inventor

Mecanico14
Advisor
Advisor

Buenas a todos.

Tengo un ipt que está compuesto por varios cuerpo, es decir, es una pieza multicuerpo. Esta generado a partir de un fichero de Catia y hemos conseguido que los nombres internos del fichero de Catia, aparezcan.

Nombres-01.jpg

Aparecen en la parte inferior y en la carpeta de los cuerpos sólidos, nos aparece un nombre que no tienen nada que ver con el nombre que lleva dentro. Convertir este fichero ipt en un iam con los 6 componentes, es muy sencillo, pero perderíamos los nombres internos. En lugar de llamarse "Sup1", queremos que se llame "P0001_A__0210_000100", el nombre interno y así con todos los demás.

Si, ya se, copio el nombre interno y lo pego en donde pone Sup*, eso en este caso no sería mucho trabajo y sería sencillo. Pero es que tenemos mas ficheros como estos y alguno tiene 200 cuerpos. Esto ya sería muy laborioso y con muchas probabilidades de equivocación.

¿Se podría hacer de manera automática, bien con algún complemento o con una regla de iLogic?

 

Gracias de antemano.


-------------------------
Un saludo.

Mecanico14

Siempre parece imposible hasta que se hace.

0 Me gusta
Soluciones aceptadas (1)
1.324 Vistas
10 Respuestas
Respuestas (10)
Mensaje 2 de 11

Luis_Pacheco_3D
Advocate
Advocate
Solución aceptada

Si mal no estoy, no deberia aceptarte el mismo nombre ya que sale un error de "The new name is already used".

 

Por lo demas si puedes renombrarlo mediante ilogic pero el nuevo nombre debe diferir en algo.

 

Dim doc As PartDocument = ThisDoc.Document
Dim solidBodies As Inventor.SurfaceBodies = doc.ComponentDefinition.SurfaceBodies

For Each solidBody As Inventor.SurfaceBody In solidBodies
    Dim oFeature As String = solidBody.CreatedByFeature.Name
		solidBody.Name = oFeature & "_"
Next


iLogicVb.UpdateWhenDone = True
Mensaje 3 de 11

Mecanico14
Advisor
Advisor

Muchas gracias @Luis_Pacheco_3D , has acertado de pleno, eso es lo que necesitaba.

Somos conscientes de que no podemos ponerle el nombre interno, porque no puede haber dos cuerpos con el mismo nombre, pero esto de momento me vale.

Ahora pregunto, ¿no podríamos empezar la regla añadiendo un caracter al nombre interno (por ejemplo el "_") y después renombrar el externo, pero sin ese caracter? Vamos, que si se llama internamente P0001_A__0210_000100 le añada al final el "_" (P0001_A__0210_000100_) y renombremos el de fuera con el mismo nombre, pero sin el caracter final?

 

De todas formas, un lujo de regla.


-------------------------
Un saludo.

Mecanico14

Siempre parece imposible hasta que se hace.

0 Me gusta
Mensaje 4 de 11

Luis_Pacheco_3D
Advocate
Advocate

Si te entendi bien, debe ser algo asi.

 

Dim doc As PartDocument = ThisDoc.Document
Dim solidBodies As Inventor.SurfaceBodies = doc.ComponentDefinition.SurfaceBodies

For Each solidBody As Inventor.SurfaceBody In solidBodies
	Dim oFeature As String = solidBody.CreatedByFeature.Name
	
	solidBody.CreatedByFeature.Name = oFeature & "_"
	
	solidBody.Name = oFeature

Next

iLogicVb.UpdateWhenDone = True
Mensaje 5 de 11

Mecanico14
Advisor
Advisor

Umm, no me he debido de explicar bien, porque ejecuto esta última regla y no me hace nada, deja todo como estaba.

Voy a intentar ecplicarme.

Quiero que al ejecutar la regla, lea el nombre interno y le añada un caracter al final, el que sea. Pongo el "_" por poner, puede ser un *

Cuando termine de añadir ese caracter al nombre interno, leemos el nombre interno otra vez, le quitamos el caracter que hemos añadido al final y se lo ponemos al nombre externo, como lo has hecho en la primera regla.

A mano despliego los cuerpos solidos, accedo al nombre interno y le añado un caracter al final. Copio todo el nombre menos el último caracter, edito el nombre externo y le pego lo copiado.

A ver si he sido capaz de explicarme.

 

De todas formas, agradezco mucho tu ayuda. Gracias.


-------------------------
Un saludo.

Mecanico14

Siempre parece imposible hasta que se hace.

0 Me gusta
Mensaje 6 de 11

Luis_Pacheco_3D
Advocate
Advocate
Regalame una imagen de como esta originalmente y como deseas que quede al final para entederte un poco mejor.
Mensaje 7 de 11

Mecanico14
Advisor
Advisor

Déjalo, acabo de intentar hacerlo a mano y no me deja poner el nombre al de fuera, me dice que ya existe un cuerpo con ese nombre.

Creo que con la primera regla que me has preparado, nos podremos apañar. Menos es nada.

 

Gracias.


-------------------------
Un saludo.

Mecanico14

Siempre parece imposible hasta que se hace.

0 Me gusta
Mensaje 8 de 11

Luis_Pacheco_3D
Advocate
Advocate
Era lo que te comentaba inicialmente, no permite tener el mismo nombre. Lo que podrias hacer es reemplazar el "_" por " ", que seria un espacio en blanco y asi visualmente seria el mismo nombre.
Mensaje 9 de 11

fseguraJ7ND6
Enthusiast
Enthusiast

@Mecanico14 me gustaría preguntarte si no es mucha molestia, del porqué usáis dos programas de diseño Catia e Inventor. Gracias.

0 Me gusta
Mensaje 10 de 11

Mecanico14
Advisor
Advisor

No es ninguna molestia.

Tampoco he dicho que use dos programa, he dicho o he intentado decir, que nuestro cliente nos pasa su información en formato Catia, que es el formato que ellos usan. A partir de ahí nosotros nos las tenemos que ingeniar para convertirlo en nuestro formato, porque en este caso, NO dibujamos en Catia, dibujamos con Inventor.

Y claro, cuando se dibuja en Catia, los nombre de cuerpos, entidades y demás, no se "trasvasan" o no "aparecen" en Inventor, se pierden, de ahí mi consulta.

La conversión de un formato a otro genera sólidos "tontos", sin operaciones y SIN propiedades.

 

Espero haber contestado a tu pregunta.


-------------------------
Un saludo.

Mecanico14

Siempre parece imposible hasta que se hace.

Mensaje 11 de 11

fseguraJ7ND6
Enthusiast
Enthusiast
A nosotros también nos pasa los mismo pero de un STEP generado con programa
de cliente lo convertimos a Inventor, pero no desde una ipt sinó desde la
estructura del ensamblaje que ya creó el cliente para no perder las rutas.
A partir de ahí modificamos. De todas formas muchas veces no seguimos su
estructura, ya que no facilita su fabricación por partes. Y me parece una
idea muy buena hacer una conversión desde el IPT. Gracias por tu respuesta.
0 Me gusta