Aller au contenu

Matthias31

Membres
  • Compteur de contenus

    45
  • Inscription

  • Dernière visite

Tout ce qui a été posté par Matthias31

  1. Bonjour, J'ai un petit problème pour créer la symétrie d'un Set géométrique. J'aimerais faire une symétrie en VB mais seulement le SelectElement3 ne marche pas, je sais pas pourquoi, pourtant il est dans V5automation de la version de CATIA (R14 ACE). Si je demande de symétrisé directemen le set géo. il comprend pas. Je n'ai pas envi d'utilisé le SelectElement2, trop long, c'est plus simple de le faire sans macro. Quelqu'un aurait-il une explication pour le SelectElement3 qui ne marche pas? Ou sinon une autre solution pour faire cette symétrie. Merci d'avance pour vos réponses.
  2. Matthias31

    CATIA ne veut plus!!!

    Salut, Content que ça t'ai aidé. Défois il faut pas chercher à comprendre, la plus part des buggs ont une exxplication, mais défois non, c'est CATIA il faut faire avec. Bon Courage.
  3. Salut, Il y a plusieur format, tout dépend ce que tu veut faire. Les DXF existe bien sur CATIA mais c'est pour du 2D. Pour le 3D il y a les STEP, IGES et STL, comme la précisé Clown. Moi j'utilise les STEP, je trouve que c'est le mieu, sa te donne un dolide. Les IGES donne des surfaces (pas très pratique). Et je connais pas les STL. Matt
  4. Matthias31

    CATIA ne veut plus!!!

    Salut, Alors, crée un autre module voir un autre projet et recopie tout ton code. Peu etre que sa peut marché.Moi sa a marcher assez souvent. A plus
  5. Matthias31

    Mesure d\'une longueur

    !Rebonjour., j'ai trouvé un pti bou de code. Mais je n'arrive pas à trouver commen fonctionne les lignes de code suivantes, ça bugg sur la ligne surlignée : Dim TheSPAWorkbench As Workbench [surligneur] Set TheSPAWorkbench = CATIA.ActiveDocument.GetWorkbench("SPAWorkbench")[/surligneur] Dim mesure1 As Measurable Set mesure1 = TheSPAWorkbench.GetMeasurable(reference1) Dim longueur1 As Double longueur1 = TheMeasurable.GetLength(mesure1) Pourquoi ça marche pas???
  6. Salut Qu'elles sont tes lois et comment les appliques-tu à tes points?
  7. Bonjour, J'aimerai savoir si il est possible de mesurer une longueur en macro VBA avec l'outil Mesure. Si c'est possible, quelles sont les lignes de codes approprié. L'enregistrement d'un macro ne donnant rien. Merci d'avance.
  8. Salut Yeard, Oui je suis sur que sa existe.C'est effectivement mon but, gérer les enregistrements sans passer en mode conception, pour ne pas avoir a charger toute l'arborescence quand on a un product qui contient beaucoup beaucoup de pièce. ouinamp, merci de ta réponse, mais c'est quoi la licence PX1 (PPR xPDM Gateway)? et l'object VB SendToService comment l'utiliser pour faire cette action? il me semble que je l'ai. [Edité le 9/5/2007 par Matthias31]
  9. Bonjour, J'aimerais savoir comment faire, lorsque l'on est en mode cache (mode visualisation) activation du CGR) pour avoir, dans le gestionnaire d'enregistrement (Save management), tous les produits, pièces sans avoir besoin de les charger (en double cliquant dessus ou clic droit-représentations-mode conception). Je sais qu'il est possible de le faire. mais seulement je trouve pas dans les options ou le faire. Quelqu'un pourrait-il m'aider?? Merci d'avance pour vos réponse.
  10. Merci bcp Naurel pour ta réponse, J'avais pas vu que l'on pouvais faire sa. A bientôt
  11. Bonjour, Je situe d'abord mon problème. J'ai un produit qui comprend deux sous-produits, le sous produit Environnement qui contient une pièce, et le deuxième sous-produit avec un nom quelconque. Je souhaite créé une piece en macro dans mon 2ème sous-produit. Cette pièce sera créé avec des références vennant de la pièce comprise dans mon environnement. Je vais créé par exemple le découpage d'une extrusion suivant un plan vennant de l'environnement. Le problème est que je n'arrive pas dans ma macros à utilisé les références vennant de l'environnement. Quelqu'un aurait-il une idée, une solution, pour ce problème?? Merci d'avance pour vos réponse. A bientôt Matthias
  12. J'ai trouver la solution. Si ils y en a qui veulent que je les éclaire sur ce sujet, qu'ils n'hésitent pas à me poser des question.
  13. Bonjour, J'essai de faire une macro qui copiera un Master Model V4 (.model) et qui le collera dans une nouvelle part. J'ai fais l'enregistrement de ma macro, mais lorsque je l'exécute il me mais un message d'erreur ("Compile Error : User-defined type not defined) sur la déclaration de variable "v4mastermodel" (voir le code ci-dessous). Sub CATMain() Dim document1 As Document Set document1 = CATIA.ActiveDocument Dim selection1 As Selection Set selection1 = document1.Selection selection1.Clear [surligneur] Dim v4mastermodel1 As v4mastermodel [/surligneur] Set v4mastermodel1 = document1.GetItem("*MASTER") selection1.Add v4mastermodel1 selection1.Add v4mastermodel1 selection1.Copy Quelqu'un serait-il pourquoi CATIA enregistre cette variable, mais ne sais pas la l'utiliser lors de l'exécution de la macro?? Pourtant il devrait la connaître, il l'a enregistré... Donc y aurait-il une personne qui serait résoudre mon problème, ou me donner une autre solution pour faire ce copier/coller? Merci d'avance pour vos réponse.
  14. Matthias31

    Comment ca marche ?

    Salut C'est du VBA pour AUTOCAD, et non pour CATIA, c'est pour mettre des nomenclature AUTOCAD sur une feuille excel.tu peut pas l'utiliser sur CATIA... Mais c'est surement possible de l'adapter à CATIA, a voir.
  15. Salut, J'ai peut être une solution pour toi, en tout cas elle marche sur la R16. Là ou tu veut faire la pause dans ton code, tu crées une UserFrom. Sub CATmain() ‘… ‘Ton code ‘… Userform1.show ‘… ‘Suite de ton code après la pause. ‘… End sub Dans Userform1 tu crées une zone de texte ou tu mets par exemple : « La macro est en pause, vous pouvez manipuler la pièce. Pour continuer la macro cliquez sur OK ». Tu crée donc un bouton OK qui aura le code suivant : Private Sub CommandButton1_Click() Unload Me End Sub Il ne faut surtout pas oublier de mettre, dans les propriétés de ton UserForm le ShowModal à FALSE. Voila une petite solution mais qui ne marche pas dans tout les cas. Que veut tu faire quand tu manipule la pièce ? Peut être qu’il existe d’autres solutions meilleures. [Edité le 18/4/2007 par Matthias31]
  16. OK merci pour l'info.
  17. Pourrais-tu alors me communiquer les commandes les plus importantes, ou toutes si possible... Si il existe un document récaputilatif de ces commandes [Edité le 16/4/2007 par Matthias31]
  18. Merci pour les explication Marc. Tu m'a bien éclairé. Je vais essayer si ça marche. A bientôt
  19. Est-ce que quelqu'un connait les commandes CATIA que l'on rentre dans la ptite zone de texte en bas à droite de la fenetre CATIA??? Merci d'avance sur vos réponses
  20. Un "regserver" sur le bon catia, comment on fait sa marc?
  21. Merci Naurel, sa marche...
  22. Bonjour, J'ai trouvé une macro qui réalise une capture d'écran et l'enregistre dans un dossier en ".BMP" J'ai réussi à faire marcher cette macro sous CATIA V5R14 version ACE (AIRBUS). Maintenant, j'essai de la faire marché sous CATIA V5R16 (classique) mais il m'affiche un message d'erreur : "Compile error: Can't find Project or library" en me surlignant une ligne comme dans le code ci-dessous: Private Sub Catmain() Dim MyViewer Set MyViewer = CATIA.ActiveWindow.ActiveViewer '-----Memorise le BackGround d'origine Dim color(2) Dim MyViewer_deb Set MyViewer_deb = MyViewer MyViewer_deb.GetBackgroundColor color '-----Passe en fond blanc 'MyViewer_deb.PutBackgroundColor Array(1, 1, 1) '-----Capture d'image MyViewer.CaptureToFile [surligneur]catCaptureFormatBMP[/surligneur], "C:\Capture.bmp" '-----Retour au fond d'écran d'origine MyViewer_deb.PutBackgroundColor (color) End Sub Seulement en me renseignant dans V5Automation, normalement c'est la bonne manière de procéder... Quelqu'un pourrait t'il me dire si j'ai fait une erreur quelquepart?Un oubli dans le Code, ou autres. Ou si le CATIA que j'ai veut simplement rien entendre? Merci d'avance pour vos réponses. A bientôt
  23. Salut tout le monde, Plus besoin de répondre a ce post. J'ai résolu tt mes problèmes. Merci V5Automation.chm....!!!!:cool: Donc si quelqu'un a besoin de conseil sur comment selectionner une droite, un point une esquisse, ..., lors de la macro et de les utilisés dans cette macro pour réalisé point, droite, plan, extrusion, ... Je peu aider également pour faire une pause dans une macro avec des UserForms pour pouvoir manipuler la pièce. [Edité le 4/4/2007 par Matthias31]
  24. Matthias31

    outil mesure en macro

    Salut, Pas d'idée pour le problème en lui même mais workbench en anglais veut dire établi. En fait, ça doit être l'ensemble des commandes qui peuvent être employées pour créer, modifier et éditer les objets...
  25. Bonjour, j'ai un petit problème. J'essai de faire marcher une macro qui a pour but de créé des droites suivant un point et une direction (en l'occurrence, une autre droite). Je suis dans un product où j’ai une part, dans laquelle je crée ma droite (dans un set géométrique appelé « Std ») et qui contient mes points de référence et dans ce product j’ai un autre product ou se trouve une autre part dans laquelle j’ai mes droites de référence. Product1 -------- Part1(point de ref.) .............--------- Product2 ------Part2(Droites de ref.) J’ai trouvé comment faire la sélection de mon point puis de ma droite pendant que ma macro tourne. Voici une partie du code de ma macro : Set documents1 = CATIA.Documents Set partDocument1 = documents1.Item("Part1.CATPart") Set part1 = partDocument1.Part Set hybridBodies1 = part1.HybridBodies Set hybridBody1 = hybridBodies1.Add() hybridBody1.Name = "Std" part1.InWorkObject = hybridBody1 CATIA.ActiveDocument.Selection.Clear Set partDocument1 = CATIA.ActiveDocument Dim mySel As Selection Set mySel = partDocument1.Selection '------------------------------------------------------------------ 'Selection du point. ReDim SelectionAtBeginning(mySel.Count) For SelectionObjectIndex = 0 To mySel.Count - 1 Set SelectionAtBeginning(SelectionObjectIndex) = mySel.Item(1).Value Next SelectionAtBeginningLength = mySel.Count InputObjectType(0) = "Point" Status = mySel.SelectElement2(InputObjectType, "Selectionner un Point", True) If ((Status = "Cancel") Or (Status = "Undo")) Then mySel.Clear For SelectionObjectIndex = 0 To SelectionAtBeginningLength - 1 mySel.Add SelectionAtBeginning(SelectionObjectIndex) Next Exit Sub ElseIf (Status = "Redo" And Not PointHasBeenAcquiredAtLeastOnce) Then Else If (Status <> "Redo") Then Set PointForhybridShapeLinePtDir = mySel.Item(1).Value PointHasBeenAcquiredAtLeastOnce = True '------------------------------------------------------------------- 'Création de la référence1 Set hybridShapes1 = hybridBody1.HybridShapes Set reference1 = part1.CreateReferenceFromObject(PointForhybridShapeLinePtDir) '------------------------------------------------------------------- Set partDocument1 = documents1.Item("Part2.CATPart") Dim part2 As Part Set part2 = partDocument1.Part 'Selection de la ligne. ReDim SelectionAtBeginning(Selection.Count) For SelectionObjectIndex = 0 To Selection.Count - 1 Set SelectionAtBeginning(SelectionObjectIndex) = Selection.Item(1).Value Next SelectionAtBeginningLength = Selection.Count InputObjectType(0) = "Line" Status = Selection.SelectElement2(InputObjectType, "Selectionner la direction", True) If ((Status = "Cancel") Or (Status = "Undo")) Then Selection.Clear For SelectionObjectIndex = 0 To SelectionAtBeginningLength - 1 Selection.Add SelectionAtBeginning(SelectionObjectIndex) Next Exit Sub ElseIf (Status = "Redo" And Not LineHasBeenAcquiredAtLeastOnce) Then Else If (Status <> "Redo") Then Set LineForhybridShapeLinePtDir = Selection.Item(1).Value LineHasBeenAcquiredAtLeastOnce = True '------------------------------------------------------------------ 'Création de la référence2 Set hybridShapeFactory1 = part2.HybridShapeFactory Set reference2 = part2.CreateReferenceFromObject(LineForhybridShapeLinePtDir) Set hybridShapeDirection1 = hybridShapeFactory1.AddNewDirection(reference2) '------------------------------------------------------------------ 'Création de la Droite Set hybridShapeFactory2 = part1.HybridShapeFactory Set hybridShapeLinePtDir2 = hybridShapeFactory2.AddNewLinePtDir(reference1, hybridShapeDirection1, -50#, 50#, False) hybridBody1.AppendHybridShape hybridShapeLinePtDir2 part1.InWorkObject = hybridShapeLinePtDir2 part1.Update End If End If End Sub Mon problème est que si je lance cette macro, ma droite se crée mais la référence2 (Droite, direction) n’est pas prise en compte. J’ai donc changé la fin de mon code pour celui-ci ("actication de la part2" en esperant que la référence2 soit prise en compte): ‘Création de la Droite Set partDocument2 = documents1.Item("Part2.CATPart") Dim part2 As Part Set part2 = partDocument2.Part Set hybridShapeFactory2 = part1.HybridShapeFactory Set hybridShapeLinePtDir2 = hybridShapeFactory2.AddNewLinePtDir(reference1, hybridShapeDirection1, -50#, 50#, False) hybridBody1.AppendHybridShape hybridShapeLinePtDir2 part1.InWorkObject = hybridShapeLinePtDir2 part1.Update End If End If End Sub Mais là le problème est inverse, la droite se crée bien dans le set géométrique « Std » de la Part1 mais maintenant la référence1 (point) n’est pas prise en compte. Quelqu’un aurait-il une solution pour que mes deux référence soient bien prises en compte ??? Merci d’avance pour vos réponse.
×
×
  • Créer...

Information importante

Nous avons placé des cookies sur votre appareil pour aider à améliorer ce site. Vous pouvez choisir d’ajuster vos paramètres de cookie, sinon nous supposerons que vous êtes d’accord pour continuer. Politique de confidentialité