|
CATIA V5 Programmierung : Bug bei Suchfunktion in Baugruppen ?
u01dz am 20.09.2003 um 07:45 Uhr (0)
Hi, den Bug in der Search-Funktion gibt es auch unter V5R10S4. Ich war gezwungen, anstelle des Search den gesamten Konstruktionsbaum rekursiv zu durchsuchen und die Attribute der Products zu durchscannen. V5R10S4 zeichnet sich durch eine sehr unzuverlässige Count-Function aus (z.B. CATIA.Documents.Count liefert bei mehrfachem Aufrufen in einigen Fällen unterschiedliche Werte)! ------------------ Tschüß, Dieter
|
In das Form CATIA V5 Programmierung wechseln |
|
CATIA V5 Programmierung : Erstellung von geöffneten Körpern
u01dz am 20.09.2003 um 07:56 Uhr (0)
Hi, folgende Programmsequenz sollte funktionieren, wenn es sich nicht um einen CATIA-Bug handelt: Dim HauptK As Body Set HauptK = CATIA.ActiveDocument.Part.MainBody Dim HB As HybridBodies Set HB = HauptK.HybridBodies Dim MeinHB As HybridBody Set MeinHB = HB.Add Analog kann auch innerhalb eines HybridBody verfahren werden. Mehr Info findest Du im Buch CATIA V5 - Effiziente Konstruktion mit Makros , S. 65 f. ------------------ Tschüß, Dieter
|
In das Form CATIA V5 Programmierung wechseln |
|
CATIA V5 Programmierung : Product Structure nachbilden
u01dz am 31.08.2004 um 17:16 Uhr (0)
Hi, ich würde folgendes Vorgehen vorschlagen: Über die Selektion erhältst Du das PRODUCT Deines Knotens und darüber dessen PARTNUMBER. Mit folgendem Algorithmus kannst Du das passende Dokument finden und dann das CATPart einhängen: ... Set Doc2 = FindeDokument (DEIN_PRODUCT.PartNumber) Set Doc = CATIA.Documents.Open (DATEINAME_DEINES_CATPARTS) Set R = Doc2.Product.Products.AddExternalComponent (Doc) ... Function FindeDokument (SS As String) As Document Dim I, Richtig, S Richtig = False I = 0 ...
|
In das Form CATIA V5 Programmierung wechseln |
|
CATIA V5 Programmierung : Wie selktiere ich eine Fläche vom Solid???
u01dz am 03.09.2004 um 14:28 Uhr (0)
Hi Alexander, hierzu einen Tipp: Wenn Du in CATIA interaktiv selektierst, zeigt Dir das System links unten an, wie ein Element heißt. Die Lösung in Deinem Fall lautet: Dim WasSelektieren (0) WasSelektieren (0)= Face ------------------ Tschüß, Dieter
|
In das Form CATIA V5 Programmierung wechseln |
|
CATIA V5 Programmierung : Makroprogrammierung - Einarbeitung
u01dz am 01.12.2004 um 15:48 Uhr (0)
Hi, wenn CATIA so eingestellt ist, dass Parameter in Hochkommatas erscheinen, muss der Variablenname auch in Hochkommatas stehen: Tabelle.AddAssociation Dummy, `NameInCATIA` Vielleicht hilft das weiter? ------------------ Tschüß, Dieter
|
In das Form CATIA V5 Programmierung wechseln |
|
CATIA V5 Programmierung : Material zuweissen
u01dz am 01.12.2004 um 15:57 Uhr (0)
Hi, ich kann mir folgende Lösung vorstellen: 1. Du erstellst ein CATPart, in dem für jedes Material ein Body liegt, dem ein anderes Material zugewiesen ist. Dieses dient als Materialbibliothek. 2. Du öffnest neben Deinem CATProduct dieses CATPart in einem zweiten CATIA-Fenster und kopierst über die COPY&PASTE-Funktionalität die entsprechenden Materialien in Deine CATParts. Interaktiv funktioniert das und somit lässt es sich auch mit VBS oder CATScript automatisieren. Das Material würdest Du über die Search ...
|
In das Form CATIA V5 Programmierung wechseln |
|
CATIA V5 Programmierung : Rechteck in einer Ansicht erzeugen im Makro
u01dz am 04.01.2005 um 14:48 Uhr (0)
Hi, die Selektion der Punkte während der Laufzeit kannst Du gemäß des Beispiels 2.12 (Makrobuch von Ziethen, S. 50) programmieren. Die Linien im Drawing erzeugst Du dann über folgende Befehle: Set Factory2D = CATIA.ActiveDocument.Sheets.ActiveSheet.Views.ActiveView.Factory2D Set Line1 = Factory2D.CreateLine(0,0,100,100) ------------------ Tschüß, Dieter
|
In das Form CATIA V5 Programmierung wechseln |
|
CATIA V5 Programmierung : Catdua über Makro.
u01dz am 04.01.2005 um 15:19 Uhr (0)
Hi,das ist möglich, indem Du1. Die XML-Datei nachbaust, die der CATDUA verwendet. Du kannst Dir ein Muster über die Utilities von CATIA erzeugen lassen.2. In Deinem Script den CATDUA mit folgendem Befehl startest:CATUTIL -name CATDUAV5 "C:TempTest.xml"Die XML-Datei ist die, die Du unter Schritt 1 erzeugt hast.------------------Tschüß, Dieter
|
In das Form CATIA V5 Programmierung wechseln |
|
CATIA V5 Programmierung : Instance ID umbenennen
u01dz am 17.01.2005 um 12:40 Uhr (0)
Hi zusammen, ich habe das Problem, die Instance IDs einer Produktstruktur umbenennen zu wollen. Das geht normalerweise nur eine Ebene unter dem Root-Knoten eines geöffneten Fensters. Wie gehe ich allerdings vor, wenn ich die Instance IDs von Knoten umbenennen möchte, die in einer Komponente verbaut sind? Diese Knoten liegen zwangsweise immer auf der zweiten Ebene des Baumes. Zur Veranschaulichung habe ich zwei Bilder und ein Makro eingefügt. Das erste Bild (Forum01.jpg) zeigt den Baum vor dem Lauf des Makr ...
|
In das Form CATIA V5 Programmierung wechseln |
|
CATIA V5 Programmierung : Hide/Show-Status identifizieren
u01dz am 03.06.2005 um 17:36 Uhr (0)
Hi World, ich stehe vor der Herausforderung, den Visualisierungsstatus eines Objektes eines CATParts zu identifizieren. Z.B. Dim MeinObjekt Set MeinObjekt = CATIA.ActiveDocument.Part.MainBody Wie kann ich jetzt auf einfache Art abfragen, ob MeinObject im Show oder Noshow ist? Am schönsten wäre: If MeinObjekt.Hide = True Then ... Danke für Eure Hilfe! ------------------ Tschüß, Dieter
|
In das Form CATIA V5 Programmierung wechseln |
|
CATIA V5 Programmierung : Makros im Skizziermodus
u01dz am 23.06.2005 um 14:17 Uhr (0)
Hi, die Factory2D kann Skizzen bearbeiten. Probiere doch mal folgendes Beispiel aus: 1. Leeres CATPart öffnen 2. Im Hauptkörper eine Skizze mit dem Namen "Sketch.1" erzeugen 3. Die Skizze durch Doppelklicken im Sketcher öffnen 4. folgendes Makro starten: Sub CATMain() Set Skizze = CATIA.ActiveDocument.Part.MainBody.Sketches.Item("Sketch.1") Set F2D = Skizze.OpenEdition Set Linie = F2D.CreateLine(0,0,100,100) CATIA.ActiveDocument.Part.Update End Sub Es wird einwandfrei eine Linie erzeugt, während ich im Ski ...
|
In das Form CATIA V5 Programmierung wechseln |
|
CATIA V5 Programmierung : CATProduct nach CATPart
u01dz am 18.07.2005 um 17:48 Uhr (0)
Hi Mattu, wenn Du die englische Umgebung verwendest, funktioniert folgendes CATScript: Sub CATMain() CATIA.StartCommand("Generate CATPart from Product...") End Sub ------------------ Tschüß, Dieter
|
In das Form CATIA V5 Programmierung wechseln |
|
CATIA V5 Programmierung : Boundary einer beliebigen Flaechenkante
u01dz am 18.10.2005 um 09:52 Uhr (0)
Hi Alfa,ich könnte mir eine Lösung mit der Methode "AddNewExtract" vorstellen (Effiziente Konstruktion, S. 260):Sub CATMain()Dim Was(0)Dim UserSel As ObjectWas(0) = "Edge"Set UserSel= CATIA.ActiveDocument.SelectionUserSel.ClearE = UserSel.SelectElement(Was, "Bitte erste Kante auswählen!", false)If E = "Normal" Then Dim HF As HybridShapeFactory Dim Kante As HybridShapeExtract Dim MyBody As HybridBody Set MyBody = CATIA.ActiveDocument.Part.HybridBodies.Add MyBody.Name = "Neues Set" Set HF = CATIA.ActiveDocum ...
|
In das Form CATIA V5 Programmierung wechseln |