|
CATIA V5 Programmierung : Performance Makro
richter2 am 15.08.2011 um 13:35 Uhr (0)
Hallo,konnte ja sein, dass noch irgendwer Tricks kennt um Catia zu beschleunigen. Hat den noch jemand eine Idee warum Catia.RefreshDisplay = False nicht funktioniert? Wie gesagt, alle Interaktionen werden bereit im modalen Dialog durchgeführt.@Lila: Derartige Makros einfach als caa abzubilden ist ohne entsprechende caa Entwicklungsumgebung nicht möglich oder?Vielen Dank und viele GrüßeKlaus
|
In das Form CATIA V5 Programmierung wechseln |
|
CATIA V5 Programmierung : 2D-Zeichnung - Maße in Klammern setzen
John-117 am 06.04.2010 um 12:03 Uhr (0)
Hallo,Ich habe das mal versucht, wie du gesagt hast.Doch wenn ich ich das unten aufgeführte Makro ausfühe bekomme ich die Meldung:"Object requiered"Kann es sein das ich mich da irgendwie vertan hab?-------------------------------------------------Sub CATMain()Dim drawingDocument1 As DrawingDocumentSet drawingDocument1 = CATIA.ActiveDocumentSet oSelection = CATIA.ActiveDocument.SelectionDim InputObjectType(0)InputObjectType(0) = "AnyObject"Status = oSelection.SelectElement2(InputObjectType, "Wählen Sie die ...
|
In das Form CATIA V5 Programmierung wechseln |
|
CATIA V5 Programmierung : 2D-Zeichnung - Maße in Klammern setzen
DanielFr. am 06.04.2010 um 12:07 Uhr (0)
Hallo John,ändere mal die fett markierte Zeile in deinem Code Code:Sub CATMain()Dim drawingDocument1 As DrawingDocumentSet drawingDocument1 = CATIA.ActiveDocumentSet oSelection = CATIA.ActiveDocument.SelectionDim InputObjectType(0)InputObjectType(0) = "AnyObject"Status = oSelection.SelectElement2(InputObjectType, "Wählen Sie die Bemaßung aus", False)If (Status "Normal") Then MsgBox "Abbruch" Exit SubElseSet dimension1 = oSelection.Item(1).ValueSet DrawingDimValue1 = dimension1.GetValueDrawingDimValue1. ...
|
In das Form CATIA V5 Programmierung wechseln |
|
CATIA V5 Programmierung : Code übersichtlicher mit Unterroutinen
Zwenne12 am 07.04.2010 um 14:39 Uhr (0)
Hallo,ich habe ein Makro geschrieben, welches aus einer Baugruppe heraus selektierte Parts und Products in eine neu erstellte Baugruppe kopiert. Parts werden dabei über die Methode Paste eingefügt und Products über PasteSpecial "CATSpecBreakLink".Das ganze funktioniert auch wunderbar, jedoch würde ich das Makro gerne übersichtlicher gestalten und mit Unterroutinen versehen. Z.B. könnte man den Code unter ---Filter in einer Unterroutine zusammenfassen, ich weiß jedoch nicht wie man das Ganze dann deklariert ...
|
In das Form CATIA V5 Programmierung wechseln |
|
CATIA V5 Programmierung : Code übersichtlicher mit Unterroutinen
DanielFr. am 07.04.2010 um 15:48 Uhr (0)
Hallo ,anbei mal mein Code. Die Änderungen habe ich gleich im Code reingeschrieben. Bei Fragen kannst du dich einfach melden. Die Filteroutine ist jetzt eine Funktion. Das Array ist global deklariert da die Sub und die Funktion darauf zugreifen müssen.Schönheitsfehler (Einrücken, Schleifeende, etc.) habe ich auch verbessert. ICh denke so lässt sich der Code schon ein wenig besser lesen. Des weiteren ist er ein wenig performanter geworden Code:Option Explicit***DAS ARRAY WIRD GLOBAL DEFINIERT SO KANN DIE F ...
|
In das Form CATIA V5 Programmierung wechseln |
|
CATIA V5 Programmierung : Selektion auf Baum beschränken
DanielFr. am 08.04.2010 um 09:51 Uhr (0)
Hallo ,dann lass doch vor der Auswahl des Anwenders eine MsgBox hochkommen in der du beschreibst das der Körper DIREKT AUS DEM SPEZIFIKATIONSBAUM auszuwählen ist. Etweilige Fehler von Anwender die alles mit OK bestätigen und nichts lesen fängst du dann halt später im Script ab.------------------MFG DanielSysteminformation | Inoffizielle CATIA Hilfeseite | CATIA FAQ | Suche | TraceParts (Normteile...) | 3D Content Central (noch mehr Normteile...)
|
In das Form CATIA V5 Programmierung wechseln |
|
CATIA V5 Programmierung : Selektion auf Baum beschränken
Hannes12 am 27.05.2010 um 11:30 Uhr (0)
Klasse! Mit...Code:Sub CATMain() Set myDoc = CATIA.ActiveDocument Set ActivePart = CATIA.ActiveDocument.Part Selektion definieren und leeren ---- Dim UserSel As Object Set UserSel = myDoc.Selection UserSel.Clear UserSel.Search "CATPrtSearch.BodyFeature,all" UserSel.VisProperties.SetPick catVisPropertyNoPickAttr UserSel.Clear Auswahl festlegen ------------------- Dim Was1(0) Was1(0) = "Body" -------------------------------------- Dim Auswahl Auswahl = UserSel.SelectElement2 ...
|
In das Form CATIA V5 Programmierung wechseln |
|
CATIA V5 Programmierung : Code übersichtlicher mit Unterroutinen
Zwenne12 am 08.04.2010 um 14:02 Uhr (0)
Hallo Daniel,erstmal besten Dank für die Mühe. Die Verbesserung hat super funktioniert , ich musste allerdingsdie Variablendeklaration noch ändern, weil mir nur CATvbs zur Verfügung steht.Ich habe dann für die ***Kopieren und Einfügen Sektion noch eine Unterroutine erstellt (Müsste doch eigentlich Sinn machen).Code:Private aArray()Private oSelPrivate oProduct2Sub CATMain() ---Selektierte Elemente Set oSel = CATIA.ActiveDocument.Selection If oSel.Count = 0 Then MsgBox ("Kein Dokument Selektiert") ...
|
In das Form CATIA V5 Programmierung wechseln |
|
CATIA V5 Programmierung : Wie ruft man ein CATScript oder VBScript aus VBA heraus auf?
davidhess am 08.04.2010 um 14:15 Uhr (0)
Hallo Daniel,ich habe ein ähnliches Problem und komm einfach nicht weiter. Ich habe mit Punkten eine Polyline erstellt und möchte die Koordinatenwerte in einer Datei ausgeben. Leider kann ich auf die Werte nicht zugreifen, vermutlich weil die Punkte als PointOnCurve deklariert sind.Hier mein Code, vielleicht hast du/ihr eine Idee!Vielen Dank!Sub PolyPktAusgabe()Dim partDocument1 As PartDocumentSet partDocument1 = CATIA.ActiveDocumentDim selection1Set selection1 = partDocument1.Selectionselection1.ClearDim ...
|
In das Form CATIA V5 Programmierung wechseln |
|
CATIA V5 Programmierung : Item in Array speichern
DanielFr. am 08.04.2010 um 14:02 Uhr (0)
Hallo,also so ganz verstehe ich die Frage nicht. Du kannst doch das gesamte Partobjekt in ein Array schreiben. Zur Auswahl nimmst du dann eine ComboBox. Der Inhalt füllst du mit den Namen der Parts aus dem Array.------------------MFG DanielSysteminformation | Inoffizielle CATIA Hilfeseite | CATIA FAQ | Suche | TraceParts (Normteile...) | 3D Content Central (noch mehr Normteile...)
|
In das Form CATIA V5 Programmierung wechseln |
|
CATIA V5 Programmierung : Werte aus Excel importieren
Sven2010 am 07.05.2010 um 19:21 Uhr (0)
Hallo zusammen,ich versuche gerade ein Script zu schreiben, welches aus einem vorhandenen Attribut eines Part oder Produkt den Wert ausliest, damit in Excel geht und dort nach dem Wert sucht. Wird er gefunden, werden die entsprechenden weiteren Werte aus Excel gelesen und weiterverabreitet in Catia (Füllen weiterer Attribute mit den Werten aus Excel).Mein Script sieht bislang so aus:...Dim Excel As ObjectDim WB As WorkbookDim WS As Worksheet On Error Resume Next Set Excel = GetObject(, ...
|
In das Form CATIA V5 Programmierung wechseln |
|
CATIA V5 Programmierung : Wie ruft man ein CATScript oder VBScript aus VBA heraus auf?
DanielFr. am 09.04.2010 um 09:39 Uhr (0)
Hallo David,schau dir mal das CATScript im Anhang an. Das Script kannst du nur in einem Part ausführen. Der Anwender MUSS eine Polyline selektieren. Aus dieser werden dann die Punkte ausgelesen. Es ist hierbei egal in welchen geometrischen Set sich die Punkte und die Polyline befinden ------------------MFG DanielSysteminformation | Inoffizielle CATIA Hilfeseite | CATIA FAQ | Suche | TraceParts (Normteile...) | 3D Content Central (noch mehr Normteile...)
|
In das Form CATIA V5 Programmierung wechseln |
|
CATIA V5 Programmierung : VBA dynamischer
elativer Pfad
DanielFr. am 12.04.2010 um 10:52 Uhr (0)
Hallo Jan ,ich denke dir Beitrag hier wird dir weiterhelfen------------------MFG DanielSysteminformation | Inoffizielle CATIA Hilfeseite | CATIA FAQ | Suche | TraceParts (Normteile...) | 3D Content Central (noch mehr Normteile...)
|
In das Form CATIA V5 Programmierung wechseln |