|
CATIA V5 Programmierung : Parameter auslesen
IIYTII am 15.08.2009 um 17:22 Uhr (0)
Also ich kenne keinen Parameter, würde jedoch gerne alle Parameter (wie viele auch immer) MIT PFAD in eine Excel Tabelle speichern.ich habe jetzt folgenden Quelltext:Code:Sub CATMain()Dim partDocument1 As PartDocumentSet partDocument1 = CATIA.ActiveDocumentDim selection1 As SelectionSet selection1 = partDocument1.Selectionselection1.Search "Name=Parameter*,all"MsgBox (Selektion1.Item(1).Value)End SubMöchte zunächst nur versuchen, dass erste Ergebnis als MSGBox ausgeben zu lassen. Als Fehler bekomme ich gru ...
|
In das Form CATIA V5 Programmierung wechseln |
|
CATIA V5 Programmierung : Parameter auslesen
IIYTII am 15.08.2009 um 00:09 Uhr (0)
Danke dir, werde mal versuchen, ob ich damit zurechtkomme. Kannst du neben dem Buch Makroprogrammierung von R.Ziethen noch ein Kompendium empfehlen? Bzw. gibt es sowas überhaupt für CATIA?Habe anscheinend in der näheren Zukunft öfters mit sowas zu tun...
|
In das Form CATIA V5 Programmierung wechseln |
|
CATIA V5 Programmierung : Parameter auslesen
IIYTII am 16.08.2009 um 11:08 Uhr (0)
Ich hatte den Fehler gemacht, und den Inhalt des Parameters als String eingelesen:Code:oPart.Parameters.Item(I).ValueAsStringdann wird automatisch die Einheit mitgenommen. Benutzt man nur .Value, wird der Inhalt als Zahl übergeben bzw. auch TRUE und FALSE funktionieren. Deshalb hätte es auch Probleme gegeben, wenn ich die Ergebnisse als Integer gespeichert hätte.Es funktioniert, ich bin zufrieden. Muss jedoch nur noch an der Performance n bisschen arbeiten, wie Randle auch z.B. schon sagte, eine *.csv date ...
|
In das Form CATIA V5 Programmierung wechseln |
|
CATIA V5 Programmierung : Parameter auslesen
IIYTII am 13.08.2009 um 13:14 Uhr (0)
Hallo,ich würde gerne aus meinem Produkt die Parameter auslesen, die vom Benutzer angelegt werden. Ich bin leider blutiger Anfänger und versuche gerade die Ergebnisse des Suchergebnisses in ein Array oder ähnliches zu speichern.Code:Dim partDocument1 As PartDocumentSet partDocument1 = CATIA.ActiveDocumentDim selection1 As SelectionSet selection1 = partDocument1.Selectionselection1.Search "Name=Parameter*,all"Was kann ich mir unter selection1.search vorstellen? Welches Ergebnis liefert mir dieser Befehl zur ...
|
In das Form CATIA V5 Programmierung wechseln |
|
CATIA V5 Programmierung : CATScript Funktionen in CATVBA nutzen
IIYTII am 09.09.2009 um 09:53 Uhr (1)
Code:Sub main() Dim Was(1) Was(0) = "Pad" Was(1) = "Line" Dim Usersel As Object Set Usersel = CATIA.ActiveDocument.Selection Usersel.Clear Dim E As Object E = Usersel.SelectElement2(Was, "Pad oder Linie wählen!", False) If E = "Normal" Then MsgBox (Usersel.Item(1).Value.Name) Else MsgBox ("Abbruch") End If Usersel.Clear End SubDas wäre jetzt der Code 1:1 aus dem Buch von R.Ziethen, mit modifikationen anDim Usersel as O ...
|
In das Form CATIA V5 Programmierung wechseln |
|
CATIA V5 Programmierung : Filename = PartNumber?
IIYTII am 15.09.2009 um 14:50 Uhr (0)
Ich hatte jetzt daran gedacht, das du die neuen Teile, mit den geänderten Partnummern, bereits durch z.B. den CATIA Catalog Editor ausgeschüttet hattest und nun nur noch die alten Parts durch die neuen ersetzen musst. Oder war das jetzt die richtige Antwort zur falschen Frage von mir? :-DSave as sollte dir jedoch keinen Strich durch die Rechnung machen. Wenn du die UUID behalten willst, solltest du aber mit "Neu aus" arbeiten
|
In das Form CATIA V5 Programmierung wechseln |
|
CATIA V5 Programmierung : Filename = PartNumber?
IIYTII am 15.09.2009 um 14:32 Uhr (0)
Ja genau, mit replace habe ich mein Tabellenbaugruppenmakro auch aufgebaut. Ich glaube das Problem was du hast ist, dass du die neuen Teile nicht so einfach außerhalb von CATIA über die alten überschreiben kannst, wegen der UUID. Das Product sagt: Das heißt zwar wie das alte Teil, da ist aber nicht das alte drin?Der Befehl zum ersetzen lautet:Code:Dim Neu As ProductDim Alt As ProductSet Alt = Liste.Item(1) Set Neu = Liste.ReplaceComponent(Alt, Verzeichniseingabe & Teil(1) & Format(1), True)D ...
|
In das Form CATIA V5 Programmierung wechseln |
|
CATIA V5 Programmierung : Filename = PartNumber?
IIYTII am 15.09.2009 um 14:12 Uhr (0)
Hi Makronizer,geht das in die Richtung von Tabellenbauteilen? Du hast ja geschrieben, dass dein Makro die Partnumber des Produktes und Parts abändert. D.h. irgendwo müssen ja die Informationen stehen, wie das Part/Product heißen soll. Wenn du diese Nummer in einen String speicherst und dann die Funktion Catia.Savetofile benutzt mit der variablen Partnummer im Pfad, dann speichert es automatisch dein neues Part ab. Willst du einen haufen Parts/Producte umbenennen und abspeichern, dann musst du eine Schleife ...
|
In das Form CATIA V5 Programmierung wechseln |
|
CATIA V5 Programmierung : Achsenname auslesen mit Select2
IIYTII am 02.10.2009 um 14:42 Uhr (0)
Code:Sub main()Dim AchsennameDim Filter(0)Dim achsinfoDim userselSet usersel = CATIA.ActiveDocument.Selectionusersel.ClearFilter(0) = "AnyObject"achsinfo = usersel.SelectElement2(Filter, "Bitte Achse selektieren", False)Achsenname = usersel.Item(1).Value.NameMsgBox (Achsenname)End SubBringt die Fehlermeldung: Object variable or With block variable not setAber NUR, wenn ich eine Achse einer Bohrung anwähle. Warum? SelectElement4 etc. würde für mich nicht in Frage kommen
|
In das Form CATIA V5 Programmierung wechseln |
|
CATIA V5 Programmierung : Achsenname auslesen mit Select2
IIYTII am 02.10.2009 um 16:27 Uhr (0)
Also weder selectelement2,3 oder 4 konnte mir helfen, daher habe ich es jetzt so gemacht, dass ich die Mantelfläche auswähle. Nachdem ich den Birep Pfad bekommen habe, schreibe ich ein !Axis: (PFAD) in den String mit ein.Hintergrund ist scheinbar der, dass CATIA nicht mit dieser imaginären Achse arbeitet, sondern grundsätzlich über die Mantelfläche geht. Dem Anwender wird nur gezeigt, er würde die Achse anwählen. Der Pfad sieht dann nämlich so aus:Code:!Axis:(Selection_RSur:(Face:(Brp:(Rect ...
|
In das Form CATIA V5 Programmierung wechseln |
|
CATIA V5 Programmierung : Catia Pfad eines Parts auslesen
IIYTII am 02.10.2009 um 10:51 Uhr (0)
Hi,ich wollte nach dem command fragen, um den !kompletten! internen CATIA Pfad aus dem Strukturbaum auszulesen:Ergebnis sollte z.B. sein:Product/Part1.1/Kann mir da jemand helfen?
|
In das Form CATIA V5 Programmierung wechseln |
|
CATIA V5 Programmierung : Catia Pfad eines Parts auslesen
IIYTII am 02.10.2009 um 16:55 Uhr (0)
Ok, dass wusste ich schon. Wäre aber schöner wenn man die Pfade absolut auslesen könnte :-)Trotzdem danke dir!
|
In das Form CATIA V5 Programmierung wechseln |
|
CATIA V5 Programmierung : Achsenname auslesen mit Select2
IIYTII am 05.10.2009 um 11:02 Uhr (0)
Code:Sub main()Dim AchsennameDim Filter(0)Dim achsinfoDim userselSet usersel = CATIA.ActiveDocument.Selectionusersel.ClearFilter(0) = "AxisSystem"achsinfo = usersel.SelectElement2(Filter, "Bitte Achse selektieren", False)Achsenname = usersel.Item2(1).Value.NameMsgBox (Achsenname)End SubAlso ich hab es jetzt nochmal ausprobiert mit item2 und element2 und gleicher fehler ?!?Das Part muss in einem Product und das Product muss aktiv sein!
|
In das Form CATIA V5 Programmierung wechseln |