|
CATIA V5 Programmierung : CATIA-Funktionsaufrufe aus CATScript-Makros
Steffen Hohmann am 28.10.2004 um 17:04 Uhr (0)
Hallo Ronny, in der exe-Datei steckt nichts weiter drin als: AppActivate( CATIA V5 ) SendKeys b: & CATIA_Befehl & Chr(13) Das funktioniert für interaktive Befehle in jedem Fall nur mit ExecuteBackgroundProcessus. Das habe ich auch schon oben beschrieben warum das so ist. Gruss Steffen
|
In das Form CATIA V5 Programmierung wechseln |
|
CATIA V5 Programmierung : Rechteck in einer Ansicht erzeugen im Makro
Steffen Hohmann am 05.01.2005 um 10:46 Uhr (0)
Hallo Torspezi, es gibt die Methode Indicate2D der Klasse Document , welche den Anwender auffordert, einen nicht vorhandenen Punkt anzuwählen. Zurückgegeben werden die Klick-Koordinaten x und y. Diese Methode kann in einer Drawing oder im Part verwendet werden, wobei sich im Part eine Skizze im Editiermodus befindet muss (Sketch.OpenEdition). Bsp: Dim oDoc As DrawingDocument Set oDoc = CATIA.ActiveDocument Dim aSelWindowPos(1) oDoc.indicate2D Bitte einen Punkt indizieren , aSelWindowPos Dim x,y As Dou ...
|
In das Form CATIA V5 Programmierung wechseln |
|
CATIA V5 Programmierung : Punkte bezogen auf Current Achsensystem
Steffen Hohmann am 10.02.2005 um 10:04 Uhr (0)
Hallo Joachim_R, das ist ein recht einfach zu lösendes Problem. Wenn die absoluten Punktkoordinaten vorliegen, dann ermittelt man die Ursprungskoordinaten des gewünschten Achsensystems und rechnet dann die Differenzwerte aus. So nun im Detail: Annahme: die absoluten Koordinaten sind des Punktes x,y und z die Ursprungs-Koordinaten des aktuellen Achsensystems sind xa,ya und za die relativen Punktkoordinaten sind xp,yp,zp Dann ist xp=x-xa ; yp=y-ya ; zp=z-za Wie ermittelt man xa, ya und za: Zuerst muss das ak ...
|
In das Form CATIA V5 Programmierung wechseln |
|
CATIA V5 Programmierung : Punkte bezogen auf Current Achsensystem
Steffen Hohmann am 10.02.2005 um 16:48 Uhr (0)
So jetzt die Lösung: Dim oAxis As AxisSystem Dim i As Variant Dim Coord_a(2) Array der Ursprungskoordinaten des aktiven Achsensystems Dim Vx_A(2), Vy_A(2), Vz_A(2) Richtungsvektoren des aktiven Achsensystems Dim x, y, z As Double absolute Koordinaten des Punktes Dim xa, ya, za As Double Ursprungskoordinaten des aktiven Achsensystems Dim xp, yp, zp As Double relative Koordinaten des Punktes zum aktuellen Achsensystem Ermi ...
|
In das Form CATIA V5 Programmierung wechseln |
|
CATIA V5 Programmierung : Bemaßung in Drawing per CATscript auslesen
Steffen Hohmann am 22.02.2005 um 15:34 Uhr (0)
Hallo Igor, für Bemaßungen gibt es folgenden Objektpfad: CATIA - DrawingDocument - DrawingSheets - DrawingSheet - DrawingViews - DrawingView - DrawingDimensions - DrawingDimension Gruß Steffen
|
In das Form CATIA V5 Programmierung wechseln |
|
CATIA V5 Programmierung : Drehen und kopieren
Steffen Hohmann am 09.06.2005 um 14:34 Uhr (0)
Hallo, das Drehen und Verschieben wird über das Ändern der Transformationsmatrix vorgenommen. Im unteren Beispiel ist ein CATProduct geöffnet, welches ein CATPart enthält. Die Matrix wird mit Werten gefüllt und angewendet. In diesem Fall wird die x-Position auf 100 gesetzt. iMatrix(0) bis (2) geben den Vektor der x-Achse an iMatrix(3) bis (5) geben den Vektor der x-Achse an iMatrix(6) bis (8) geben den Vektor der x-Achse an iMatrix(9) bis (11) geben den Nullpunkt an Sub CATMain() Dim oDoc As ProductDo ...
|
In das Form CATIA V5 Programmierung wechseln |
|
CATIA V5 Programmierung : Verschiebung XYZ sowie Drehung XYZ
Steffen Hohmann am 16.06.2005 um 17:37 Uhr (0)
Hallo vogy, da ist leider ein kleiner Fehler drin. Diese Berechnung basiert auf einem linkshändigen Achsensystem. CATIA rechnet aber mit rechtshändigen Achsensystemen. Du mußt das also noch umrechnen. Aber Du schaffst das schon. Gruß Steffen
|
In das Form CATIA V5 Programmierung wechseln |
|
CATIA V5 Programmierung : Verschiebung XYZ sowie Drehung XYZ
Steffen Hohmann am 17.06.2005 um 10:39 Uhr (0)
Ich habe noch was vergessen. Das Ganze in CATIA-Sprache sieht dan so aus: arrayOfVariantOfDouble1(0) = cos(Y)*cos(P) arrayOfVariantOfDouble1(1) = sin(Y)*cos(R)+cos(Y)*sin(P)*sin(R) arrayOfVariantOfDouble1(2) = sin(Y)*sin(R)-cos(Y)*sin(P)*cos(R) arrayOfVariantOfDouble1(3) = -sin(Y)*cos(P) arrayOfVariantOfDouble1(4) = cos(Y)*cos(R)-sin(Y)*sin(P)*sin(R) arrayOfVariantOfDouble1(5) = cos(Y)*sin(R)+sin(Y)*sin(P)*cos(R) arrayOfVariantOfDouble1(6) = sin(P) arrayOfVariantOfDouble1(7) = -cos(P)*sin(R) arrayOfVariant ...
|
In das Form CATIA V5 Programmierung wechseln |
|
CATIA V5 Programmierung : Erzeugen/Löschen von Dokumenten
Steffen Hohmann am 20.06.2005 um 15:23 Uhr (0)
Hallo schotti, ich würde mal sagen mit: CATIA.Documents.Item(XXX).Close Gruß Steffen
|
In das Form CATIA V5 Programmierung wechseln |
|
CATIA V5 Programmierung : VB dotNet Wertübergabe in CatScript ohen Benutzerinteraktion
Steffen Hohmann am 21.06.2005 um 09:12 Uhr (0)
Hallo MarcoW, einem CATScript kann man keinen Parameter mitgeben. Spontan fallen mir da zwei Wege ein: 1. eine temporäre Datei erzeugen, Wert reinschreiben, im CATScript den Wert auslesen, Datei löschen 2. in VB.Net aus der Windows-API die Funktion SetEnvironmentVariable verwenden, um eine Umgebungsvariable zu setzen und im CATScript mit Value = CATIA.SystemService.Environ(VariablenName) den Wert auslesen. Gruß Steffen
|
In das Form CATIA V5 Programmierung wechseln |
|
CATIA V5 Programmierung : Makros im Skizziermodus
Steffen Hohmann am 24.06.2005 um 12:35 Uhr (0)
Hallo, es gib eine Möglichkeit, in den Skizziermodus zukommen. Als erstes wird die Skizze über das Programm selektiert und dann über die StartCommand-Methode der Skizziermodus aufgerufen. Sub CATMain() Dim oDoc As PartDocument Set oDoc = CATIA.ActiveDocument Dim oPart As Part Set oPart = oDoc.Part Dim oBody As Body Set oBody = oPart.MainBody Dim oSketch As Sketch Set oSketch = oBody.Sketches.Item(1) Dim oSel As Selection Set oSel = oDoc.Selection oSel.Add oSketch ...
|
In das Form CATIA V5 Programmierung wechseln |
|
CATIA V5 Programmierung : Versionsnummer von CATIA in den Zeichnungskopf
Steffen Hohmann am 04.07.2005 um 15:43 Uhr (0)
Hallo, OS = CATIA.SystemConfiguration.OperatingSystem Version = CATIA.SystemConfiguration.Version Release = CATIA.SystemConfiguration.Release ServicePack = CATIA.SystemConfiguration.ServicePack Gruß Steffen
|
In das Form CATIA V5 Programmierung wechseln |
|
CATIA V5 Programmierung : Dateiname = TeileNummer
Steffen Hohmann am 05.07.2005 um 09:31 Uhr (0)
Hallo ducati916, ja das kann man machen. Man ließt man sich den Dateinamen aus und weist ihn der PartNumber zu. CATIA.ActiveDocument.Product.Partnumber = CATIA.ActiveDocument.Name Gruß Steffen
|
In das Form CATIA V5 Programmierung wechseln |