Bonjour à tous ! Je suis étudiant en école d'ingénieur en Génie des Systèmes Mécaniques et j'essaie de programmer quelques macros CATIA. Après avoir longtemps cherché, je ne trouve pas de solution à mon problème : J'aimerai pouvoir sélectionner une arête de mon Corps Principal dans un Part et que mon programme me donne le nom de cette arête. Pour bien visualiser, lorsque l'on se sert de l'outil "Trou" de CATIA, il est possible de choisir une Direction ; une fois sélectionnée, une TextBox indique le nom de l'objet sélectionné, par exemple "Chanfrein.1\Arête.1" ; "Extrusion.1\Arête.2" ou encore "Chanfrein.2\Face.2". J'ai biens compris que le numéro de l'Arête, de la Face ou encore de l'Axe n'était pas significatif car il s'incrémente à chaque sélection de même type. Mais je n'arrive pas à récupérer le nom de l'opération où l'Arête a été crée (Extrusion.1 ; Chanfrein.2 ...). Voici mon code :
Sub CATMain()
Dim partDocument1 As PartDocument
Set partDocument1 = CATIA.ActiveDocument
Dim part1 As Part
Set part1 = partDocument1.Part
Dim bodies1 As Bodies
Set bodies1 = part1.Bodies
Dim body1 As Body
Set body1 = bodies1.Item("Corps principal")
Dim Document
Set Document = CATIA.ActiveDocument
Dim oselection
Set oselection = Document.selection
oselection.Clear
Dim InputObjectType(0)
Dim SelectedElement
InputObjectType(0) = "RectilinearTriDimFeatEdge"
Status = oselection.SelectElement2(InputObjectType, "Sélectionnez une Arête", True)
If ((Status = "Cancel") Or (Status = "Undo")) Then
' We restore the selection to its initial content
oselection.Clear
Exit Sub
Else
If (Status <> "Redo") Then Set SelectedElement = oselection.Item2(1).Value
End If
MsgBox oselection.Item2(1).Value.Parent.Parent.Name _
& "\" & oselection.Item2(1).Value.Parent.Name _
& "\" & oselection.Item2(1).Value.Name
End Sub
Tout ce que j'arrive à récupérer c'est cette chose horrible avec des Brp que je ne sais pas interpréter. Si quelqu'un avait une solution, j'en serais très heureux. J'ai eu beau chercher dans l'aide V5Automation et essayer tout ce qui me passait par la tête, mais je reste bloqué. Merci Romain [Edité le 15/6/2009 par morain]