|
CATIA V5 Programmierung : eigenartiger Automatisierungsfehler
DanielFr. am 06.08.2010 um 10:31 Uhr (0)
Hallo ,das was du versucht MUSS zu einem Laufzeitfehler respektive Software-Interrupt führen. CATIA.ActiveWindow ist das Fensterobjekt eines CATIA Fensters. Ein CATIA Fenster ist aber kein PopUp-Dialog Fenster (wie z.B. die Messfunktion). Um diese PopUp Fenster zu schließen bedarf es ein wenig mehr Code und auch ein bisschen VBA Erfahrung und KnowHow. Die PopUp Fenster von CATIA sind ChildWindows des Desktops. Auf diese hast du mit den Windows API´s GetDesktopWindow, GetChildWindows und GetWindowText Zugri ...
|
In das Form CATIA V5 Programmierung wechseln |
|
CATIA V5 Programmierung : Untergeordnete Baumstruktur
DanielFr. am 06.08.2010 um 10:38 Uhr (0)
Hallo,IMHO gibt es keine Möglichkeit dies mit VBA bzw. CATScript Mitteln zu bewerkstelligen. Das liegt einfach daran das das keine öffentliche CATIA-Funktion ist. Das siehst du daran das es NICHT in der CommandList geführt wird. Und somit hast du keinen Zugriff darauf ------------------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 : Kurze Linien in View auf einen bestimmten Layer schieben
DanielFr. am 11.08.2010 um 12:49 Uhr (0)
Hallo Reimund ,das Probelm bei deinem Code ist das sich die VisProperties Eigenschaft nur auf die Selection anwenden lässt aber nicht auf ein SelecedElement. Durch deine Zuweisung erhält das Objekt "select_line" aber den Datentyp SelectedElement. Dies verursacht den Fehler. Die Lösung ist recht einfach. Du erstellt dir ein weiteres Array (oder Collection in VBA). In diese Array verschiebst du noch vor deiner Schleife alle selektierten Linien. Jetzt läufst du mit deiner Schleife nicht innerhalb der Selektio ...
|
In das Form CATIA V5 Programmierung wechseln |
|
CATIA V5 Programmierung : Kleine Linien löschen
DanielFr. am 01.12.2009 um 07:03 Uhr (0)
Hallo,IMHO gibt es dafür kein Programm. Ist bleibt auch die Frage wie das *.dxf File erstellt wurde. Es muss nicht zwingend sein das Radien und Bögen in Polylinies zerlegt werde. Das *.dxf Format kann auch Splines exportieren .Ich denke man könnte sich dennoch ein solches Makro zusammenbauen. ABER es bleibt für mich die Frage wie siehts mit der Performance aus wenn ein Skript alle möglichen Linien (und das können extrem viele sein beim *.dxf Import mit Polylinies (ich sage nur Schrift!!!)) messen und kontr ...
|
In das Form CATIA V5 Programmierung wechseln |
|
CATIA V5 Programmierung : Kleine Linien löschen
DanielFr. am 11.08.2010 um 13:03 Uhr (0)
Hallo Homer ,was willst du genau im 2D realisieren? Das ersetzen von kleinen Linien durch Kreisbögen? Wenn ja dann ist du Antwort immer noch die selbe. Es geht bestimmt ist aber keine einfacher Algorithmus. Des weiteren denke ich das die Performance mit VBA bzw. CATSCript nicht gut sein wird. D.h. du brauchst dann IMHO ein externen Programm (z.B. .NET bzw. gleich CAA) aber das wird dir keiner unentgeltlich schreiben .Wenn es nur darum geht kleine Linien in einer Zeichnung zu löschen dann ist das kein Probl ...
|
In das Form CATIA V5 Programmierung wechseln |
|
CATIA V5 Programmierung : Kleine Linien löschen
DanielFr. am 30.11.2009 um 12:01 Uhr (0)
Hallo,du brauchst ein CreateReferenceFromObject in dem du den das Selektions-Objekt übergibst. In deinem Beispiel wird eine Fläche selektiert die als interne Referenz eine Linie besitzt. Deswegen hat das selektierte Flächenobjekt auch eine Methode namens .reference. Diese Methode besitzen Linien jedoch nicht. Von dem her musst du dir die Referenz die du zum Messen brauchst über die MethodeCode:Dim oPart as PartDim myRef as ReferenceSet oPart = CATIA.PartSet myRef = oPart.CreateReferenceFromObject(Selection ...
|
In das Form CATIA V5 Programmierung wechseln |
|
CATIA V5 Programmierung : Kleine Linien löschen
DanielFr. am 30.11.2009 um 16:21 Uhr (0)
Hallo,ich habe auch schnell eine Version gebastelt. An deiner hab ich ein wenig konstruktive Kritik.Erstens du suchst alle Linien in allen Sketchen. Das halte ich für sehr gefährlich. Vielleicht brauchst du ja genau in einer Skizze eine Linie die kürzer als 1mm ist und nach dem Lauf ist die Linie weg. Führt jemand anders das Script aus kann er den Fehler überhaupt nicht nachvollziehen. Bzw. ist ist sogar für dich irgendwann sehr schwer nachzuvollziehen warum plötzlich ein Fehler auftritt.Zweitens solltest ...
|
In das Form CATIA V5 Programmierung wechseln |
|
CATIA V5 Programmierung : eigenartiger Automatisierungsfehler
DanielFr. am 13.08.2010 um 08:46 Uhr (0)
Hallo ,warte ich gebe dir noch schnell meine Bankverbindung...fürs erste würden 1000€ reichen . Spaß bei Seite. Ich werde es raussuchen und hier veröffentlichen ------------------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 : Catia Parameter aus Excel heraus steuern
DanielFr. am 13.08.2010 um 08:42 Uhr (0)
Hallo ,erst mal ein paar Grundlegende Informationen:VB, VBA, VBS oder CATScript würde ich wenn es komplexer wird NICHT einsetzen. Erstens wird VB (und somit VBA) nicht mehr weiterentwickelt und supportet. Zweitens ist es von der Performance her deutlich schlechter als z.B. VB.NET.Jetzt kommen meiner ersten Fragen:1. Willst du das Makro (respektive die neu entstehende Software) in deinem Institut jedem zu Verfügung stellen der an diesem Projekt arbeitet?2. Soll das Makro eine Benutzeroberfläche besitzen? (D ...
|
In das Form CATIA V5 Programmierung wechseln |
|
CATIA V5 Programmierung : array.add
DanielFr. am 13.08.2010 um 12:59 Uhr (0)
Hallo,kannst du das Problem etwas konkretisieren? Also willst du auf dem Array Item 1 (also oArraySUB(1)) die Strings einfach anhängen oder willst du das Array einfach erweitern? Wenn ja muss das Array dynamisch erweitert werden?Code:Dim M1, M2, M3Dim oArray()M1 = "Das"M2 = "ist"M3 = "schön"Redim oArray(2)oArray(0) = M1 oArray(1) = M2oArray(2) = M3Anmerkung: Wenn du mit VBA arbeitet dann nehme doch eine Collection her. Hier gibt es die Methode .add.------------------MFG DanielSysteminformation | Inoffiziel ...
|
In das Form CATIA V5 Programmierung wechseln |
|
CATIA V5 Programmierung : Datei Kopieren und Öffnen
DanielFr. am 17.09.2010 um 08:14 Uhr (0)
Hallo,1. Dateien im Windows Explorer zu verschieben ist ein absolutes NoGo beim arbeiten mit einem CAD Programm. Die Produkte und Part enthalten im Dateiquelltext die Links ihrer Kinder. Werden Dateien auf Windows-Ebene verschoben so kann die Änderung des Pfades nicht in den Quelltext aufgenommen werden! Versuche das Ganze mal mit einem internen SendTo Befehl zu implementieren.2. Wie willst du mit einem Script eine Datei öffnen von der du keine Randbedingungn kennst. Du kannst ja auch nicht per Hand eine D ...
|
In das Form CATIA V5 Programmierung wechseln |
|
CATIA V5 Programmierung : Auf CATEnv zugreifen
DanielFr. am 22.09.2010 um 18:59 Uhr (0)
Hallo ,mit der API Shell32.dll ist es möglich die Argumente einer Verknüpfung auszulesen. Somit könntest du den String der zum Starten von CATIA an die CNEXT.exe bzw. CATSTART.exe übergeben wird auslesen und mit SplitStrings zerlegen um an den Namen und Pfad des Environmet´s zu bekommen.------------------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 : Feature Name von Body mit Parameter füttern?
DanielFr. am 28.09.2010 um 08:14 Uhr (0)
Hallo Uwe,das geht wenn du eine KWA Lizenz hast. Dann kannst du eine Reaction erstellen die dann ein Script auslöst. Der Event wird, je nach Einstellung, bei jeder Änderung deiner Parameters abgefeuert und löst das Umbenennung-Script aus.------------------MFG DanielSysteminformation | Inoffizielle CATIA Hilfeseite | CATIA FAQ | Suche | TraceParts (Normteile...) | 3D Content Central (noch mehr Normteile...)
|
In das Form CATIA V5 Programmierung wechseln |