-
Compteur de contenus
50 -
Inscription
-
Dernière visite
Type de contenu
Profils
Forums
Calendrier
Blogs
Tout ce qui a été posté par XGX4
-
Bonjour Thibault, est ce que tu connais la notion de Catalogue dans CATIA? je pense que c'est un bon moyen de gérer une base de donnée d'éléments std. Je te conseille de regarder ICI = ?
-
Salut, regarde dans Tools / References si certaines librairies ne sont pas 'MISSING' j'ai eu se problème, en reselectionnant les bonnes librairies tout est OK
-
Salut, c'est possible. Il faut: 1 Passer un argument dans le lancement de CATIA (avec -macro)qui lance un CATscript "%DIR_INSTALL%\code\bin\CNEXT.exe" %MODE% -env R20 -direnv "F:\CATEnv" -macro "F:\Macros\Version\entete.CATScript" 2 Dans ton CATScript Sub main() Dim param() Dim oFilePath, oFileName, oModule As String Dim oSystemService As Variant Set oSystemService = CATIA.SystemService oFilePath = "F:\Macro" 'chemin de ton vba oFileName = "Test.catvba" 'nom du projet vba oModule = "Module1" 'nom du module Dim ss As Variant Set ss = CATIA.SystemService ss.ExecuteScript oFilePath & oFileName, catScriptLibraryTypeVBAProject, oModule, "CATMain", param End Sub
-
Bonjour à tous, Voilà, je cherche à changer une entité de set geometrique. j'arrive à connaitre le nom du set en utilisant: Debug.Print hybridShapes2.Parent.Name le problème est que c'est du read only. Est ce quelqu'un peut me donner la solution? Merci d'avance
-
Bonjour et bonne année à tous! Safran Engineering Services cherche dessinateurs projeteurs Catia V5 sur la région Paloise maitrisant les modules Part Design, Generative Shape Design, Drafting et Assembly Design De niveau BAC +2 à BAC +3 en Génie mécanique, Productique, CAO/CFAO. Débutant possible avec au minimum un stage en BE mécanique/conception. Une expérience en construction mécanique acquise dans un bureau d'études à forte dominante mécanique, préférentiellement aéronautique faciliterait l’adaptation au poste. Merci de m’envoyer votre CV actualisé à guillaume.malere@safran-engineering.com
-
Bonjour et bonne année à tous! Safran Engineering Services cherche dessinateurs projeteurs Catia V5 maitrisant les modules Part Design, Generative Shape Design, Drafting et Assembly Design De niveau BAC +2 à BAC +3 en Génie mécanique, Productique, CAO/CFAO. Débutant possible avec au minimum un stage en BE mécanique/conception. Une expérience en construction mécanique acquise dans un bureau d'études à forte dominante mécanique, préférentiellement aéronautique faciliterait l’adaptation au poste. Merci de m’envoyer votre CV actualisé à guillaume.malere@safran-engineering.com
-
Au fait merci marc!!!
-
Résolu! si ça peut servir à quelqu'un, voici le bout de code. Dim param As Parameter For i = 1 To search_param.Count Set param = search_param.Item(i).Value Valeur = param.ValueAsString Nom_Param = param.Name MsgBox Nom_Param & "=" & Valeur ' ... Next i
-
Bonjour à tous, Je voudrais savoir comment on fait pour faire une boucle sur une recherche dans le cas ci dessous, je cherche tous les parametres commencant par AVP_* pour pouvoir les exporter. je les compte bien, mais catia me retourne aussi les parametres intrinseque a la CATPart. C'est pour cela que le i est incrementé de 40 Comment je peut faire? sub Catmain() Dim mon3ddoc As PartDocument Dim mon3d As Part Dim search_param As Selection Set search_param = mon3ddoc.Selection search_param.search "(Name=AVP_* & CATKnowledgeSearch.InternalParameter),all" 'MsgBox search_param.Count For i = 40 To search_param.Count + 38 'mon3d.Parameters.Count Set param = mon3d.Parameters.Item(i) Valeur = param.Value Nom_Param = param.Name next end sub merci d'avance
-
Bonjour Eag14 et les autres, En fait il faut que tu fasses une boucle sur les objets qui sont dans un repertoire. Sub CATMain() Dim documents1 As Documents Dim partDocument1 As PartDocument Dim windows1 As Windows Dim specsAndGeomWindow1 As SpecsAndGeomWindow Dim objFSO, objDossier, objFichier Dim Repertoire On Error Resume Next Repertoire = "F:\CATIAV5\Tempo\TUTU\" Set objFSO = CreateObject("Scripting.FileSystemObject") Set objDossier = objFSO.GetFolder(Repertoire) If (objDossier.Files.Count > 0) Then For Each objFichier In objDossier.Files Set documents1 = CATIA.Documents Set partDocument1 = documents1.Open(Repertoire & objFichier.Name) Next End If End Sub Je pense que cela repond à ta question
-
Tout est dans le titre. par avance merci
-
Bonjour le forum! J'ai la solution à mon problème, donc our ce que ça interesse: Dim ActDoc As Document Set ActDoc = CATIA.ActiveDocument Dim camIsoView As Camera3D Set camIsoView = ActDoc.Cameras.Item("* iso") Dim objIsoViewPoint As Viewpoint3D Set objIsoViewPoint = camIsoView.Viewpoint3D Dim ActWin As Window Set ActWin = CATIA.ActiveWindow Dim ActViewer As Viewer3D Set ActViewer = ActWin.ActiveViewer ActViewer.Viewpoint3D = objIsoViewPoint
-
Bonjour, je cherche comment, dans ma fenetre 3d, je peux orienter mon modele 3d en vue iso. si quelqu'un a une petite idée, elle serait la bien venue. par avance merci
-
Bonjour à tous, Lors de l’exécution d’une macro vba Catia, le résultat apparaît dans une msgbox. Mon problème est que je souhaiterais que cette fenêtre résultat soit non persistante. C a d que l’on puisse manipuler la fenêtre graphique CATIA en ayant toujours à l’écran la msgbox. Apparent ce n’est pas possible, il faut que je passe par une Userform non modale mais pour cela il faut charger les bibliothèques xls. Est-ce que c’est possible et si oui de quelle manière ? Par avance, merci
-
Bonjour Cloudy, Une fois que tu as appliquer le materiaux, il faut que tu fasses une mesure d'inertie (l'icone qui represente un poids à coté du pied à coulisse) ensuite, tu cliques sur personnaliser et tu selectionnes les infos que tu souhaites récuperer puis OK Tu cliques sue la tête de ta CATPart pour que le calucul d'inertie puis tu clique sur exporter et OK
-
Si c'est Ok n'oublie pas de cloturer ce post.
-
Salut, Le principe est le même. Il suffit de travailler sur une chaine de caractère. Sub CATMain() Dim drawingDocument1 As DrawingDocument Set drawingDocument1 = CATIA.ActiveDocument toto = Left(drawingDocument1.Name, Len(drawingDocument1.Name) - 11) 'on supprime l'extension .CATDrawing (11 caractères) drawingDocument1.ExportData drawingDocument1.Path & "\" & toto & ".pdf", "pdf" End Sub Je pense que cela répond à ta question.
-
Bonjour, Euh ! Il faut bien comprendre que le simple fait de changer l'extension d'un fichier ne lui donne pas automatiquement le droit d'être lu par l'appli qui est censée le lire. Change l'extension d'un fichier .xls en .doc tu verra que Word ne peut pas l'ouvir. Ben c'est pareil entre un CATDrawing et un pdf. Je te conseille de d'enregister une macro à l'aide de CATIA comme ça tu verras comment cela fonctionne (dans ton cas le code resultant est facile) et c'est le meilleur moyen d'apprendre.
-
Salut à tous, Après pal mal d'enervement et de noms d'oiseaux qui ont fusé dans tous les sens je suis arrivé à mes fins. voici le code: Prè-requis un paramètre "RAYON_CINTRAGE" type longueur un set Géom nommé POINTS avec des points créés avec la commande points ( pas de points déduits du style intersection, extraction...) Un set Géom nommé "FIBRE_NEUTRE" Set mon3ddoc = CATIA.ActiveDocument Set mon3d = mon3ddoc.part Dim hybridBodies1 As HybridBodies Set hybridBodies1 = mon3d.HybridBodies Dim paramdext As Parameters Set paramdext = mon3d.Parameters Dim paramdint As Parameters Set paramdint = mon3d.Parameters Dim relations1 As Relations Set relations1 = mon3d.Relations 'Dim cons As HybridBody 'Set cons = hybridBodies1.Item("CONSTRUCTION") Dim Fibre As HybridBody Set Fibre = hybridBodies1.Item("FIBRE_NEUTRE") 'Dim Fibre As HybridBody 'Set Fibre = mon3d.HybridBodies.Item("FIBRE_NEUTRE") Dim Points As HybridBody Set Points = mon3d.HybridBodies.Item("POINTS") Dim hybridShapeFactory1 As HybridShapeFactory Set hybridShapeFactory1 = mon3d.HybridShapeFactory Dim Polyline As HybridShapePolyline Set Polyline = hybridShapeFactory1.AddNewPolyline() Dim PointPoly As Point For i = 1 To Points.HybridShapes.Count Set PointPoly = Points.HybridShapes.Item(i) Set reference2 = mon3d.CreateReferenceFromObject(PointPoly) Polyline.InsertElement reference2, i If i <> 1 And i <> Points.HybridShapes.Count Then Polyline.SetRadius i, paramdext.Item("RAYON_CINTRAGE").Value Dim Formula3 As Formula Set Formula3 = relations1.CreateFormula("Formule Rayon." & i, "", paramdext.SubList(Polyline, False).Item(paramdext.SubList(Polyline, False).Count - 1), "RAYON_CINTRAGE") paramdext.SubList(Polyline, False).Item(paramdext.SubList(Polyline, False).Count - 1).Rename "Rayon." & i End If Next Fibre.AppendHybridShape Polyline Polyline.Name = "Fibre Neutre" mon3d.InWorkObject = Fibre mon3d.Update End Si cela peut aider quelqu'un ...
-
Salut, Voici de quoi récupérer le chemin et le nom de ton draw. Sub CATMain() Dim myDocs As Documents Dim myDoc As Document Dim drawingDocument1 As DrawingDocument Set drawingDocument1 = CATIA.ActiveDocument MsgBox drawingDocument1.Name & " Sous " & drawingDocument1.Path End Sub
-
bonjour, Je souhaiterais savoir comment je peux créer une mesure de longueur dans CATIA. J'arrive à l'afficher via une msgbox avec le code suivant: Dim ref1 As Reference Set ref1 = courbe Set spabench = CATIA.ActiveDocument.GetWorkbench("SPAWorkbench") Set longueur = spabench.GetMeasurable(ref1) result = longueur.Length MsgBox "FIBRE = " & result & " mm" mais comment faire pour que cette mesure soit un objet CATIA ? Par avance, merci
-
Bonjour, Je cherche à créer une polyligne avec rayon mais sans resultat. Tous mes points sont dans un set Géom et sont de different types ( isolé, de coordonnées, inersections etc. et dans un ordre non défini) nommés P1, P2... La valeur du rayon est un parametre. En lisant la doc V5automation, il y a la fonction que je recherche : HybShpPolyline.GetElement 1, HybShpPolylineElement,HybShpPolylineRadius mais je n'arrive pas à faire un boucle sur mon set Géom. Est ce que quelqu'un peut me donner la solution? merci d'avance
-
Bonjour, Voilà a quoi je suis arriver. Set Points = mon3d.HybridBodies.Item("POINTS") For i = 1 To Points.HybridShapes.Count If i < 10 Then Points.HybridShapes.Item(i).Name = "toto 0" & i Else Points.HybridShapes.Item(i).Name = "toto " & i End If Next sujet résolu
-
Résolu! je ne sais pas si c'est le top du codage mais cela fonctionne. Dim Degres, Minutes, Secondes As Integer Degres = (A(y)) if Degres < 0 then Degres = Degres1 Degres1 = Int(Abs(A(y))) Minutes1 = Int((Abs(A(y)) - Degres1) * 60) Minutes = ((Abs(A(y)) - Degres1) * 60) Secondes = cstr(round((Minutes - Int(Minutes)) * 60,2)) DMS= " -" & Degres1 & "° " & Minutes1 & "' " & Secondes+ Chr(34) xl.cells(5 + y, x + 1).Value = DMS else Degres = Int(A(y)) Minutes1 = Int((A(y) - Degres) * 60) Minutes = ((A(y) - Degres) * 60) Secondes =cstr(round((Minutes - Int(Minutes)) * 60,2)) DMS = " " & Degres &"° " & Minutes1 & "' " & Secondes + Chr(34) xl.cells(5 + y, x + 1).Value = DMS
