CATDEV
Messages postés8Date d'inscriptionsamedi 28 octobre 2006StatutMembreDernière intervention 4 février 2007
-
13 déc. 2006 à 16:41
CATDEV
Messages postés8Date d'inscriptionsamedi 28 octobre 2006StatutMembreDernière intervention 4 février 2007
-
14 déc. 2006 à 08:31
<hr />
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 :
<hr />
,
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
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