|
CATIA V5 Programmierung : Handling von zwei CATIA Instanzen in VB
Axel.Strasser am 10.09.2009 um 10:34 Uhr (0)
Gibt es eine Möglichkeit innerhalb von VB die CATIA Instanzen "sauber" abzufangen? Wir haben eine Applikation in der CATIA gestartet wird, parallel dazu läuft bereits ein CATIA. Wir haben jetzt keine Möglichkeit gefunden um der Applikation zu sagen, nimm das zweite CATIA und nicht das bereits geöffnete (es wird immer das erste genommen).Axel------------------Inoffizielle deutsche CATIA Hilfeseite Netiquette von cad.de
|
In das Form CATIA V5 Programmierung wechseln |
|
CATIA V5 Programmierung : Handling von zwei CATIA Instanzen in VB
zoltan.bekesi am 10.09.2009 um 19:24 Uhr (0)
Hallo Daniel,es sieht vielversprechend aus, wie kommt man dann aber an die CATIA.Application einer beliebigen Instanz?Ich habe damit schon einige Stunden verbracht und bin eigentlich zu der Schlussfolgerung gekommen, dass es bei CATIA leider nicht möglich ist einen beliebigen Instanz anzusprechen.Kannst du diesen Teil noch verraten? Dein Beispiel hilft da leider nicht weiter.Gruß,Zoltan
|
In das Form CATIA V5 Programmierung wechseln |
|
CATIA V5 Programmierung : Makro für unterschiedliche Gewinde
Hosndrega am 11.09.2009 um 09:43 Uhr (0)
Hallo Zoltan,ich hoffe ja du irrst dich und man kann den Standard einer Bohrung auslesen. Trotzdem Danke für deinen Beitrag.Laut dem Buch "CATIA V5 Makroprogrammierung mit Visual Basic Script" sollte es jedenfalls gehen. Ich bin auh weiter am Befehle ändern aber zu einem Ergebnis bin ich immer noch nicht gekommen.
|
In das Form CATIA V5 Programmierung wechseln |
|
CATIA V5 Programmierung : 3D-Bemassung Farbe ändern
AndreasNilli am 11.09.2009 um 13:16 Uhr (0)
Hallo.Sowas habe vor paar Tagen gemacht.Jeweils für engl. und deutsche Version (Dimensions/Bemaßungen)Müsste eigentl funktionieren.Code:Sub CATMain()Dim partDocument1 As PartDocumentSet partDocument1 = CATIA.ActiveDocumentDim selection1 As SelectionSet selection1 = partDocument1.Selectionselection1.Search "(Name=*dimension* + Name=*bemaßung*),all"Dim visPropertySet1 As VisPropertySetSet visPropertySet1 = selection1.VisPropertiesvisPropertySet1.SetRealColor 0, 0, 0, 0selection1.ClearMsgBox ("Fertig!")End Sub
|
In das Form CATIA V5 Programmierung wechseln |
|
CATIA V5 Programmierung : PartFullName auslesen
AndreasNilli am 11.09.2009 um 10:59 Uhr (0)
Hallo, ich wieder Ich hänge gerade an der Stelle, dass ich mir den vollen Dateinamen incl. Pfad von jedem einzelnen Part im Produkt anzeigen lassen möchte.Den Partnumber-Namen bzw Instance-Namen auszulesen, weiß ich, bloß der bringt mir in der Hinsicht ja nicht weiter.Durch viele Veränderungen habe ich es versuch daraus mir was abzuleiten, aber Fehlanzeige.Code:Sub CATMain() Set oRoot = CATIA.ActiveDocument Set oProducts = oRoot.Product.Products SUB_ProdScan oProducts oPath = oRoot.Path & "" MsgBox oPath ...
|
In das Form CATIA V5 Programmierung wechseln |
|
CATIA V5 Programmierung : PartFullName auslesen
Jens Hansen am 11.09.2009 um 13:12 Uhr (0)
Hallo Andreas,schau mal in den Code folgendes Beitrags in der Unter-Routine "Fullname" - da stehts drin: http://ww3.cad.de/foren/ubb/Forum137/HTML/000890.shtml#000000 SGJens------------------Inoffizielle CATIA-HilfeseitePrivate SeiteXingKochbuch - CATIA V5 automatisieren
|
In das Form CATIA V5 Programmierung wechseln |
|
CATIA V5 Programmierung : PartFullName auslesen
AndreasNilli am 11.09.2009 um 13:20 Uhr (0)
Hallo Jens.Vielen Dank.Habe einfach folgendes geändert:*edit*So sieht nun der fertige Code aus.Und funktioniert sogar Code:Public oPath As StringSub CATMain() Set oRoot = CATIA.ActiveDocument Set oProducts = oRoot.Product.Products oPath = oRoot.Path MsgBox oPath SUB_ProdScan oProducts End SubSub SUB_ProdScan(oProducts) For i = 1 To oProducts.Count Dim product1 As Product Set product1 = oProducts.Item(i) Dim pPath As String pPath = product1.ReferenceProduct.Parent.Path Ms ...
|
In das Form CATIA V5 Programmierung wechseln |
|
CATIA V5 Programmierung : Bohrungen auf einer Fläche mit vorgegebenem Randabstand - Makro möglich?
DanielFr. am 12.09.2009 um 16:45 Uhr (0)
Hallo thomau96 ,na sicher lässt sich das automatisieren. IMHO gibt es hier nur zwei Probleme. Erstens dein Problem st doch ein wenig spezieller und mit dem Makrorecorder kommst du auf keinen Fall weiter.Jetzt beschreibe ich erstmal meine Vorgehensweise wie ich das lösen würde.1. Anwender startet das Makro2. Der Anwender gibt mit einer InputBox den X- und Y-Abstand der Kanten ein und optinal die Tiefe der Bohrung3. dies läuft in eine Schleife durch alle Produkte (also Parts eines Produkts)4. Innerhalb der ...
|
In das Form CATIA V5 Programmierung wechseln |
|
CATIA V5 Programmierung : Parameter auslesen
milburn am 12.09.2009 um 18:20 Uhr (0)
Hallo Zoltan,danke für die Links...genau was ich gesucht habe !!!!Jetzt wird alles gut ! ;-)Das Skript durchläuft jetzt alle Parts und nimmt noch den Teilenamen mit :-------------------------Sub CATMain()Dim i as IntegerDim prod As ProductDim m As Integer Exel öffnenSet objXL = CreateObject("Excel.Application")objXL.Visible = TrueSet oAWBook = objxl.Workbooks.AddBerechnungm=2 Zeile in Exeli = 0for i = 1 to CATIA.Documents.Count If (Right(CATIA.Documents.Item(i).Name,7) = "CATPart") then Set prod = ...
|
In das Form CATIA V5 Programmierung wechseln |
|
CATIA V5 Programmierung : Bohrungen auf einer Fläche mit vorgegebenem Randabstand - Makro möglich?
DanielFr. am 13.09.2009 um 12:59 Uhr (0)
Hallo,ich frage jetzt nochmal kurz nach weil ich das so wies aussieht morgen in meiner Mittagspause kurz runterprogrammieren werden.Da hast pro Block jeweils 4 Bohrungen? Oder meinst du du hast 2 Bohrungen mit Gewinden?Die Randabstände (also Abstand in X- und Abstand in Y-Richtung der selektierten Kanten) sind in allen Blöcken gleich (sprich du willst sie definitiv nicht für jeden Block einzeln eingeben können (nicht mal die Möglichkeit soll bestehen?)Das Makro läuft NUR auf Windows oder auch auf UNIX?Wie ...
|
In das Form CATIA V5 Programmierung wechseln |
|
CATIA V5 Programmierung : Bohrungen auf einer Fläche mit vorgegebenem Randabstand - Makro möglich?
tberger am 13.09.2009 um 22:23 Uhr (0)
Hallo Thomau96,ich habe zwar noch keine Geometrie von dir gesehen, aber der Beschreibung nach könnte das auch mit einer Power Copy, wie Bernd auch schon vorgeschlagen hat, gehen.Ich habe so eine Power Copy mit zwei Löchern (und auch einer spiegelbildlichen Tasche) für eine Clamp-Aussparung aufgebaut (siehe auch http://www.tobeplus.de/de/Zur%20Person/qualifications_BILDER.html und dort den Abschnitt PC_Clampaussparung im unteren Drittel der Seite)Diese PowerCopy benötigt als Input 2 Solid-Seitenflächen, kön ...
|
In das Form CATIA V5 Programmierung wechseln |
|
CATIA V5 Programmierung : right-Funktion bis zu einem Zeichen
AndreasNilli am 14.09.2009 um 08:03 Uhr (0)
Hi.Irgendwie ging mir die Sache nicht aus dem Kopf und so habe ich mich mal drangesetzt, es nicht mit dem win-basierenden Code (sofern ich das richtig verstanden habe?) löschen zu wollen.Hier ist mein VorschlagCode:Sub CATMain()Set productDocument1 = CATIA.ActiveDocument Dim Path As String Dim ActPath As String Dim ActExt As String Path = CATIA.ActiveDocument.Path ActPath = Path & "" ActExt = "*.cgr" Dim TempName As String TempName = Dir$(ActPath & "*.cgr") While Len(Dir( ...
|
In das Form CATIA V5 Programmierung wechseln |
|
CATIA V5 Programmierung : Parameter auslesen
DanielFr. am 13.09.2009 um 13:17 Uhr (0)
Hallo milburn,das was du da programmiert hast funktioniert aber ist nicht gut. Das Problem ist die Documents.Collection aus CATIA.Folgendes Szenario zur Verdeutlichung:Du öffnest ein Produkt mit 10 Part. Du schließt diese wieder (über File - Close oder über das X). Jetzt schaust du die Documents-Collection an. Du wirst in 50% der Fälle feststellen das sich die Dokumente des zuvor geschlossenen Produkts noch in der Collection befinden das Produkt aber schon geschlossen ist.Das heißt dein Makro ist extrem fe ...
|
In das Form CATIA V5 Programmierung wechseln |