begin process at 2012 02 13 22:52:35
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Visual Basic 6

 > 

Langages dérivés

 > 

VBA

 > 

[CATIA VBA] Pièce symétrique


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

[CATIA VBA] Pièce symétrique

mercredi 13 décembre 2006 à 16:41:53 | [CATIA VBA] Pièce symétrique

CATDEV


Bonjour,

Je développe aujourd'hui un outil qui permet de réaliser la pièce symétrique (toto_201.CATPart) d'une originale (tata_200.CATPart)

Contenu de l'originale :
1 - Un à plusieurs Open body,
2 - un à plusieurs Holes, final Holes, etc.
3 - Un à plusieurs Geometrical set
4 - En plus du trièdre de la pièce, il y a un trièdre qui sert de plan de symétrie (x,z) ce trièdre doit être détruis à la fin du processus dans la pièce original

L'outil fait :

1 - ouvre la pièce sélectionnée,
2 - créer un nouveau part et génère son nom en fonction de la pièce originale. (ici je n'arrive pas à faire des copier coller depuis la pièce originale vers la nouvelle pièce) PasteSpecial As result
Donc pour le moment je suis obligé de fermer ma pièce 201.
3 - je sélectionne le premier open body et je le copie.
4 - j'essaye de le coller et CATIA plante.
"Command Interruped"

Si quelqu'un peu m'aider à comprendre?

Voici mon code actuel :



Function fPart(PartFile As String)
'Dim intCountItem As Integer
'Dim CourantObject As String
CATIA.RefreshDisplay = False
CATIA.DisplayFileAlerts = False


'Renomme les fichiers PRODUCT, replace les PART et sauvegarde ceux-ci dans le répertoire temporaire OUT

'-------------------------------------
'
' Open a part 200
'
'-------------------------------------

Language = "VBSCRIPT"

Set Documents1 = CATIA.Documents

Dim partDocument1 As Document
Set partDocument1 = Documents1.Open(PartFile)

' Retrieving a Part HybridBodies collection to attaching OpenBodies (Geometrical set)
Dim hybridBodies1 As HybridBodies
Set hybridBodies1 = partDocument1.Part.HybridBodies

Dim partBodies1 As Bodies
Set partBodies1 = partDocument1.Part.Bodies

Dim partBody As Body

Dim strNameBody As String
strNameBody = partDocument1.Part.InWorkObject.Name

Set partBody = partDocument1.Part.Bodies.Item(strNameBody)

Dim str201PartName As String
str201PartName = Replace(PartFile, "200", "201")

'-------------------------------------
'
' Create a new part for 201
'
'-------------------------------------


Dim intPosition As Integer
intPosition = InStrRev(PartFile, "\")

Dim strShortFileOpenName As String
strShortFileOpenName = Mid(PartFile, intPosition + 1)
Dim str201Name As String

str201Name = Replace(strShortFileOpenName, "20000", "20100", 1, vbTextCompare)

'MsgBox str201Name, vbCritical, "New Part Name"

Dim intDotPosition As Integer
intDotPosition = InStrRev(str201Name, ".")

Dim strNewFile201 As String
strNewFile201 = Left(str201Name, intDotPosition - 1)

Set documents2 = CATIA.Documents
Set partDocument2 = documents2.Add("Part")

' renomme le fichier standard part en part 201 -------------------------------------

Set product2 = partDocument2.Product
product2.PartNumber = Replace(partDocument2.Name, partDocument2.Name, strNewFile201)


partDocument2.Close
'-------------------------------------
'
'From 200 / copy / paste to 201
'
'-------------------------------------

Set specsAndGeomWindow2 = CATIA.ActiveWindow

Set partDocument1 = CATIA.ActiveDocument
Dim selection1 As Selection
Set selection1 = partDocument1.Selection

If Selection = True Then
selection1.Clear
Else
End If

Dim part1 As Part
Set part1 = partDocument1.Part
Dim bodies1 As Bodies
Dim body1 As Body
Set bodies1 = part1.Bodies
Set body1 = bodies1.Item(strNameBody)
selection1.Add body1
selection1.Copy

' Fait planter CATIA !!!!!!!

'CATIA.ActiveDocument.Selection.PasteSpecial "CATIA_RESULT"

'Set specsAndGeomWindow2 = CATIA.ActiveWindow
'Set viewerpoint3D2 = specsAndGeomWindow2.ActiveViewer
'Set viewpoint3D2 = viewerpoint3D2.Viewpoint3D
'
''Dim partDocument2 As Document
'Set partDocument2 = CATIA.ActiveDocument
'
'Dim part2 As PartDocument
'Set part2 = partDocument2
'
'part2.Activate
'
'Set bodies2 = part2.Selection


'Set body2 = bodies1.Item("Res")
'partBodies1.Add
'selection1.PasteSpecial (fgfd)
'CATIA.ActiveDocument.Selection.PasteSpecial "CATIA_RESULT"


'******************************
' Updating CATIA PArt
'partDocument1.Part.Update


partDocument2.SaveAs str201PartName
partDocument2.Close
End Function



Cordialement,
CATIADEV
mercredi 13 décembre 2006 à 21:25:11 | Re : [CATIA VBA] Pièce symétrique

TMONOD

Bonsoir,
C'est du vb6 d'un univers parallèle oubien tu t'es trompé de forum ?

Jcbé[^]
jeudi 14 décembre 2006 à 08:31:52 | Re : [CATIA VBA] Pièce symétrique

CATDEV

Bonjour Jcbé,

Ben comme vous vous en douter, si je "post" ici, c'est bien parce que je suis dans :

Thèmes / Visual Basic 6 / Langages dérivés / VBA / ...
Cela veut bien dire que CATIA a un éditeur VBA comme dans Excel
Pour information, sur ce lien vous trouverez un fichier d'aide pour récupérer les objets CATIA (Propriétés et Méthodes).


[ Lien ]

Donc, je reste ouvert à toutes propositions qui pourrait m'aider à corriger mon problème.

Cordialement,
Patrick



Cette discussion est classée dans : set, pièce, catia, part, partdocument1


Répondre à ce message

Sujets en rapport avec ce message

VBA CATIA : Copier/coller dans un Product (d'une Part A vers une Part B) [ par nazgul64 ] Bonjour,J'automatise certaines opérations dans CATIA via le langage VBA et je me heurte à un problème d'activation de Part au sein de mon Product.J'es Capture catia depuis excel [ par 3dflix ] Bonjour, Je m'adresse au connaisseur CATIA.Je souhaite faire une capture d'écran de catia en vba (Jusque la pas de probleme, une source est dispo sur Prob sur Macro sous Catia V5R14 [ par xtremiste ] Bonjour, Je développe une macro en VBA pour CATIA V5R14. La macro effectue des opérations sur un document de type " Drafting " et je rencontre des pr Gestion des propriétés sous CATIA en VB Script [ par isa911 ] 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 Macro Catia v5 - Probleme de mise a jour de la Part [ par skalou313 ] Bonjour, Je crée une macros sur Catia v5 qui consiste a instancier une Part contenant une esquisse, et de modifier les parametres (contraintes) de l'e Macro de repèrage de pièce dans un plan CATIA [ par Constant72 ] Depuis des années la question du repérage revient régulièrement dans les forums sur les macros Catia. Voici le [url=https://sites.google.com/site/mac Blocage msgbox [ par gouzou44 ] Bonjour,Je créer une macro pour catia. Je voulais savoir si l'on pouvait débloquer catia lors de l'apparition d'une msgbox pour tourner la vue de la p Aide débutant [ par lapinou68 ] Bonsoir à tous, Voila dans le cadre d'un stage je suis amené à créer des macros avec le logiciel de CAO Catia et notamment avec EXCEL pour de l'impor simple clique [ par abdo78 ] salut je suis entrain de programmer un petit programme de comptabilité , je travail avec vb6 et base access . généralement pour saisir une pièce comp Controls [ par Galactus13 ] Bonjour a tous, Sa faisait un moment que je n'étais passé, IRL oblige ! Ma question est simple,mais je m'y perds ! Set ObjCombo = Me.Controls(I).Name


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Février 2012
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
272829    

Consulter la suite du CalendriCode

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 2,402 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales