isa911
Messages postés63Date d'inscriptionmercredi 28 février 2001StatutMembreDernière intervention25 novembre 2010
-
29 avril 2003 à 10:08
isa911
Messages postés63Date d'inscriptionmercredi 28 février 2001StatutMembreDernière intervention25 novembre 2010
-
18 juin 2007 à 09:06
Bonjour,
Je suis en train de faire un code permettant de créer des Part, Product et/ou Drawing en renseignant dès la création des documents un certain de nombre de propriétés.
Pour le Part, j'ai quelques problemes, je ne sais pas comment renseigner les propriétés comme Référence, Designation, etc....
Pour le Product j'y suis arrivée, pourquoi ces propriétées ne sont elles pas gérées de la meme facon ?
Comment faire pour le Part en CATScript?
Merci d'avance.
cs_Belec
Messages postés13Date d'inscriptionvendredi 21 mars 2003StatutMembreDernière intervention 6 mars 2008 15 mai 2003 à 18:27
salut
je prog également sur Catia en VBscript, Vba
pour l'instant y a pas trop de bouquin ladessus
un conseil :
il faut utiliser l'aide catia ( qui est merdique je te l'accorde)
ou enregistrer des manip sou catia le plus possible (quan sa marche) pour connaitre les propriété des parts, products, etc...
cs_DAHOKHAN
Messages postés20Date d'inscriptionmercredi 19 octobre 2005StatutMembreDernière intervention12 décembre 2005 5 janv. 2006 à 04:15
Salut je cherche comment utiliser l'editeur de script catia est ce que tu pourrai m'aider
merci
excuse pour le double poste mais y a un truc qui a foiré
isa911
Messages postés63Date d'inscriptionmercredi 28 février 2001StatutMembreDernière intervention25 novembre 2010 5 janv. 2006 à 08:35
En fait, moi, je l'utilise pas, je fait de l'Automation.
Je travaille sur les cartouches et les propriétés des fichiers, mon code est donc dans ma base de données Access.
mfaure
Messages postés48Date d'inscriptionmardi 28 mars 2006StatutMembreDernière intervention22 septembre 2011 28 mars 2006 à 14:23
Salut Isa911, le sujet dont tu parles est exactement sur lequel je suis en train de plancher... et de sécher ! J'ai besoin, dans le cadre de mon travail de créer un part, un product et 2 drawings, tout cela en fonction de un seul paramètre qui varie dans le part... Pour faire plus clair, il n'y a qu'une dimension qui change dans le part, dimension que j'ai passé en paramètre. Ce part est inclus dans un product, et le part et le body ont leur drawing, qui doit donc être mis à jour en fonction du paramètre qui a changé...
comme a priori tu as trouvé une solution, j'aimerais bien que tu m'aides un peu, si ça ne t'ennuie pas, voire que tu me fasses partager ta source.
isa911
Messages postés63Date d'inscriptionmercredi 28 février 2001StatutMembreDernière intervention25 novembre 2010 28 mars 2006 à 15:37
Il te faut les références suivantes :
CATIA V5 InfInterfaces Object Library : InfTypeLib.tlb
CATIA V5 DraftingInterfaces Object Library : DraftingTypeLib.tlb
CATIA V5 ProductStructureInterfaces Object Library : PSTypeLib.tlb
Pour la création d'un Part ou un Product via une base Access (fonction brute pour inspiration, me demander si besoin d'aide) :
Public Function CreaPart(Prems As Boolean)
Dim oProduct As Product
Dim ferme As Boolean
On Error GoTo err
ferme = False
If Module1.CatiaOuvert = False Then
Set AppCATIA = CreateObject("CATIA.Application")
' Rend la fenetre visible
AppCATIA.Visible = True
ferme = True
End If
'Si c'est le premier et non pas une copie à faire
If Prems = True Then
If Module1.Extension = ".CATProduct" Then
'Créé le Product spécifié
Set DrwDocument = AppCATIA.Documents.Add("Product")
'Ajoute un Part dans le Product
'oProduct.AddShapeRepresentation ( CATBSTR iShapePathName, CATBSTR iShapeName, CatRepType iRepBehavior, boolean iContext)
End If
If Module1.Extension = ".CATPart" Then
'Créé LE PART spécifié
Set DrwDocument = AppCATIA.Documents.Add("Part")
End If
Set oProduct = DrwDocument.Product
'Renseigne les propriétés
oProduct.Name = Module1.Reference
oProduct.PartNumber = Module1.desi
oProduct.Definition = Module1.Reference
oProduct.DescriptionRef = Module1.desidoc & " " & Module1.desi
Module1.RechercheRevision ("New")
Module1.NameFonc = "SerieCATIA"
oProduct.Revision = Module1.Revision
'Met à jour
oProduct.Update
'Enregistre le document
AppCATIA.DisplayFileAlerts = False
DrwDocument.SaveAs Module1.debchemin & Module1.Repertoire("Catia") & Left(Module1.ref, 4) & "-" & Right(Module1.ref, 4) & "-" & Module1.Doc & Module1.Indice & Extension
DrwDocument.Close
AppCATIA.DisplayFileAlerts = True
Else
Set DrwDocument = AppCATIA.Documents.Open(Module1.debchemin & Module1.Repertoire("Catia") & Left(Module1.ref, 4) & "-" & Right(Module1.ref, 4) & "-" & Module1.Doc & Module1.Indice & Extension)
Set oProduct = DrwDocument.Product
oProduct.Revision = Module1.Revision
'Met à jour
oProduct.Update
'Enregistre le plan
AppCATIA.DisplayFileAlerts = False
DrwDocument.Save
DrwDocument.Close
AppCATIA.DisplayFileAlerts = True
End If
If ferme = True Then
AppCATIA.Quit
End If
Set DrwDocument = Nothing
Set AppCATIA = Nothing
err:
If err.Number <> 0 Then
Module1.NameFonc = "CreaPart"
Module1.Recup_Erreurs
AppCATIA.DisplayFileAlerts = False 'If Module1.Indice "X1" Or Left(Module1.Indice, 1) "0" Then
If Prems = True Then
DrwDocument.SaveAs Module1.debchemin & Module1.Repertoire("Catia") & Left(Module1.ref, 4) & "-" & Right(Module1.ref, 4) & "-" & Module1.Doc & Module1.Indice & Extension
Else
DrwDocument.Save
End If
DrwDocument.Close
AppCATIA.DisplayFileAlerts = True
If ferme = True Then
AppCATIA.Quit
End If
Set DrwDocument = Nothing
Set AppCATIA = Nothing
End If
mfaure
Messages postés48Date d'inscriptionmardi 28 mars 2006StatutMembreDernière intervention22 septembre 2011 28 mars 2006 à 16:36
Merci beaucoup, mais outch !!!
je me retrouve assez vite perdu. En fait, je n'ai jamais fait de macro, et on me demande d'en faire une pour mon travail. J'ai réussi à faire l'interface graphique, mais n'arrive pas à faire le code qui va derrière, alors je vais y aller tout doucement avec mes questions :
- 1erement, tu parles de références à avoir, comment cela se passe-t-il concretement (il faut importer des fichiers qqpart, les appeler ?)
2èmement, je détaille un peu plus le cas auquel je suis confronté : j'ai un part, avec une cote qui peut changer. Il s'agit d'un part de base. Il faudrait qu'il soit ouvert opar la macro, que la valeur de la cote soit changée en fonction du paramètre donné en entrée. Ensuite, il faudrait que la macro ouvre le drawing associé à ce part, et le mette à jour, afin que toutes les côtes colent. Ensuite, la macro devra ouvrir un product qui contient 2 instances de ce part modifié, ainsi que 2 autres part. Mise à jour du product pour prendre en compte les modifs sur le part, ouvertire du drawing associé au product et mise à jour également, puis sauvegarde de ces 4 fichiers avec un nom "qui va bien" dans un répertoire "qui va bien", et impression des 2 drawings sur demande. Si j'arrive à avoir ça, c'est le pied, il faut quand même voir si c'est réalisable aussi.
Si ça ne te gène pas de me filer un coup de main, on peut peut être directement voir ça en privé.
MAT63000
Messages postés2Date d'inscriptionlundi 16 avril 2007StatutMembreDernière intervention17 avril 2007 17 avril 2007 à 15:46
Bon ok, mon post n'est pas tout à fait dans le sujet mais puisqu'il y a ici des pro des vbscripts sur catia je me lance!
Je voudrais juste savoir quel est la ligne de commande pour prendre une cote ("mesure entre" dans catia).
J'ai essayé en enregistrant une macro mais à chaque fois elle est vide, alors que d'autre fonction qu'une prise de mesure la remplissent.
D'autre part, existe-t-il un document spécialisé dans les commandes VBA de Catia?
S'il existe j'en serai friand..!!! et je pense que d'autres également!
Merci à vous!