|
CATIA V5 Programmierung : Bohrungsdurchmesser bei Gewinden
bgrittmann am 10.10.2011 um 13:04 Uhr (0)
Servusich hab es jetzt mal selbst getestet. So sollte es funktionieren:Code:Sub CATMain() Dim productDocument1 As Document Set productDocument1 = CATIA.ActiveDocument Dim selection1 As Selection Set selection1 = productDocument1.Selection selection1.Search "CATPrtSearch.Hole.Threaded=TRUE,all"iAnzahlGew = selection1.CountMsgBox "AnzGew " & iAnzahlGewFor i = 1 To iAnzahlGew Set Hole = selection1.Item2(i).Value MsgBox CStr(Hole.Diameter.Value) MsgBox CStr(Hole.HoleThreadDescription.Value)NextSet visP ...
|
In das Form CATIA V5 Programmierung wechseln |
|
CATIA V5 Programmierung : Namen auslesen
bgrittmann am 07.10.2011 um 16:34 Uhr (0)
ServusDu könntest ach über das direkt ansprechen des Bodies per Name und einer Fehlerbehandlung, feststellen welcher Body schon vorhanden ist.Anbei ein Beispiel (für GeometrischeSets und einen anderen Namen/Nummerierung):Code:Sub CATMain()Dim partDocument1 As PartDocumentSet partDocument1 = CATIA.ActiveDocumentDim part1 As PartSet part1 = partDocument1.PartDim hybridBodies1 As HybridBodiesSet hybridBodies1 = part1.HybridBodiesDim hybridBody1 As HybridBodyDim i As IntegerDim Name As StringFehlerbehandlng au ...
|
In das Form CATIA V5 Programmierung wechseln |
|
CATIA V5 Programmierung : Nummer und Namen aus Teilenummer auslesen und ins Drawing schreiben
bgrittmann am 11.10.2011 um 16:16 Uhr (0)
ServusZunächst bist du dafür im falschen Unterforum.Dann solltest du dir ggf mal ein paar Bücher zum Thema programmieren besorgen (siehe catia.cad.de). Da du gleich eine Userform angehen willst wären Grundlagen in VBA auch kein Fehler.Grober Ablauf:- Userform starten- Click löst das "New from" abhängig von der Auswahl aus (siehe auch V5Automation)- Userfrom beendenGrußBernd------------------Warum einfach, wenn es auch kompliziert geht.
|
In das Form CATIA V5 Programmierung wechseln |
|
CATIA V5 Programmierung : selection aktives sheet
bgrittmann am 17.04.2015 um 19:39 Uhr (1)
ServuszB Sheet selektieren und dann nur in der Selektion suchen:Code:Set drwdocument = CATIA.ActiveDocumentSet DrwSheets = drwdocument.SheetsSet DrwSheet = DrwSheets.ActiveSheetDim selection1 As SelectionSet selection1 = drwdocument.Selectionselection1.clearselection1.add DrwSheetselection1.Search ("Name=*Test*,sel")GrußBernd------------------Warum einfach, wenn es auch kompliziert geht.
|
In das Form CATIA V5 Programmierung wechseln |
|
CATIA V5 Programmierung : CATIA window freezing during makro running
bgrittmann am 20.04.2015 um 11:33 Uhr (1)
Hi Lucas,Do you program in VBA? The you could show a Userform which blocks the Catia windows (Userform not modal).Or you could minimize the window or the applicationregrades,Bernd------------------Warum einfach, wenn es auch kompliziert geht.
|
In das Form CATIA V5 Programmierung wechseln |
|
CATIA V5 Programmierung : Nummer und Namen aus Teilenummer auslesen und ins Drawing schreiben
bgrittmann am 16.04.2015 um 15:58 Uhr (1)
ServusVersuch mal das Makro zu verstehen.Die Zeile (falls die noch in deinem Code enthalten ist) am Ende:Code:CATIA.ActiveDocument.CloseSchließt das Dokument.GrußBernd------------------Warum einfach, wenn es auch kompliziert geht.
|
In das Form CATIA V5 Programmierung wechseln |
|
CATIA V5 Programmierung : Benutzername und Datum
bgrittmann am 14.10.2011 um 17:05 Uhr (0)
ServusDu könntest die Collection aller Dokumente (CATIA.Documents) mit einer Schleife abarbeiten, wenn es sich um ein CATDrwaing handelt einen Text für den Stempel erzeugen (natürlich auf jedem Blatt) dann SaveAs (für pdf und dxf) und dann den Stempel wieder löschen.GrußBernd ------------------Warum einfach, wenn es auch kompliziert geht.
|
In das Form CATIA V5 Programmierung wechseln |
|
CATIA V5 Programmierung : Ansicht mit formel/script de/aktivieren
bgrittmann am 31.10.2011 um 16:04 Uhr (0)
ServusNach welchen Kriterien willst du die Ansichten ausblenden? Am Namen erkennen? alle Ansichten? alle Schnitte?Das Beispiel blendet alle Ansichten deren Namen mit "Test" beginnen aus:Code:Sub CATMain()Dim drawingDocument1 As DocumentSet drawingDocument1 = CATIA.ActiveDocumentDim selection1 As SelectionSet selection1 = drawingDocument1.Selectionselection1.Search "(Name=Test* & CATDrwSearch.DrwView),all"Dim selection2 As SelectionSet selection2 = drawingDocument1.SelectionDim visPropertySet1 As VisPropert ...
|
In das Form CATIA V5 Programmierung wechseln |
|
CATIA V5 Programmierung : Hilfe beim Makroprogrammieren
bgrittmann am 01.11.2011 um 09:39 Uhr (0)
ServusZu deinen Fragen:- Buchempfehlungen: Kochbuch CATIA V5 automatisieren - Jens Hansen CATIA V5 - Makroprogrammierung mit Visual Basic Script - Dieter R. Ziethen- GetSet umbenennen: zB hybridBody.name = "Neuername"- du könntest (falls die Lizenz vorhanden ist) auch direkt eine Translation mit einem Kreisprofil erstellen (AddNewSweepCircle), diese danach im PartDesign nur AufdickenzB (etwas nachbereitete Aufnahme des Makrorecorders zr Erstellng der Translation):Code:....Dim reference1 As Re ...
|
In das Form CATIA V5 Programmierung wechseln |
|
CATIA V5 Programmierung : Ansicht mit formel/script de/aktivieren
bgrittmann am 01.11.2011 um 14:29 Uhr (0)
ServusAlso in R19 klappt es so obwohl ich auch CATIA auf deutsch eingestellt habe:Code:if opara.value = 0 thenvisPropertySet1.SetShow 1elsevisPropertySet1.SetShow 0end ifGrußBernd------------------Warum einfach, wenn es auch kompliziert geht.
|
In das Form CATIA V5 Programmierung wechseln |
|
CATIA V5 Programmierung : indicateorselectelement3d Problem
bgrittmann am 07.11.2011 um 21:02 Uhr (0)
ServusWillkommen im Form. Bitte Systeminfo ausfüllen.Die Funktion "IndicateorselectElement3D" ist irgendwie zum Projizieren des Punktes auf eine Ebene (ganz blicke ich dies auch nicht). Versuch es mal mit "GetCoordinates" der Selection.Code:Sub CATMAin()Dim oDoc As DocumentDim oSel As SelectionDim filter(0)Dim dblLength1(2)Dim Status As StringSet oDoc = CATIA.ActiveDocumentSet oSel = oDoc.Selectionfilter(0) = "AnyObject"Status = oSel.SelectElement2(filter, "Bitte 1. Punkt auswählen", False)If Status "Norm ...
|
In das Form CATIA V5 Programmierung wechseln |
|
CATIA V5 Programmierung : GeoSet eines Parts im Product kopieren
bgrittmann am 22.04.2016 um 16:07 Uhr (1)
ServusBeim ansprechen der Einzelteile in einer Baugruppe musst du den Exemplarnamen verwenden (zB "Keine Ahnung.1").Oder dann gleich auf das PartDokument zugreifen.zB (Code in VBA (einfach so runter geschrieben)):Code:sub CatMain()dim myPartDocument as PartDocumentdim oSel as Selectiondim myPart as Partdim myHybridBody as HybridBodySet myPartDocument = catia.documents.item("Keine Ahnung.CATPart")Set myPart = myPartDocument.PartSet oSel = myPartDocument.SelectionSet myHybridBody = myPart.HybridBodies.Item(" ...
|
In das Form CATIA V5 Programmierung wechseln |
|
CATIA V5 Programmierung : Textfeld suchen und löschen, aber nur auf aktuellem Blatt
bgrittmann am 15.11.2011 um 18:32 Uhr (0)
ServusIch sehe da zwei Lösungsmöglichkeiten:- Background selektieren, und mit der Suche nur im Hintergrund suchen/selektieren lassen.- eine Schleife über alle Texte im Background laufen lassen, falls der Name des Textes dem Suchkriterium entspricht der Selektion hinzuzufügen, selektierte Elemente löschen.EDIT: Beispiel zur 1, Lösung ungetestet):Code:Public Function DeletTxtFeld(varTextfeldName As String) Dim intDocObj As Document Dim intObjTypeStr As String ***Background View zugänglich machen Dim ...
|
In das Form CATIA V5 Programmierung wechseln |