|
CATIA V5 Programmierung : Part in Produktstruktur lokalisieren
tomtom1972 am 16.04.2007 um 10:56 Uhr (0)
Hallo,das ist klar: Das Part, welches du auswählst, ist ein .Item der CATIA.Documents. Und das Parent.Parent... der selbigen ist die CATIA.Installation, also die CNEXT.exeWenn du in deiner Rotine nur Parts selektieren können möchtest, musst du erst wieder von .Document (dem CATPart) auf die Instanz des selbigen (.Product) und von da aus übers .Partent.Parent.... das .CATProduct suchen. Also so:Sub CATMain()Set oSelection = Catia.ActiveDocument.SelectionDim InputObjectType(0)InputObjectType(0) = "Part"Statu ...
|
In das Form CATIA V5 Programmierung wechseln |
|
CATIA V5 Programmierung : Part in Produktstruktur lokalisieren
tomtom1972 am 16.04.2007 um 11:41 Uhr (0)
Noch mal Hallo,im Anhang (pdf) findest du mal zur Veranschaulichung ein paar Screenshots von VB-WatchWindow (CATIA Sturuktur).1 Seite: Selection wenn InputObjectType(0) = "Part":Das .Parent der Selektion ist das Document, und das ist ein Item der CATIA.Documents. Von da aus kommst du über .Parent auf die Application selbst (CNext).2 Seite: Links oben: InputObjectType(0) = "Part", aber über .FindObject wieder auf die zugehörige Instanz ist das gleiche wie (rechts unten im Bild) von oben durch den Tree gewan ...
|
In das Form CATIA V5 Programmierung wechseln |
|
CATIA V5 Programmierung : Part in Produktstruktur lokalisieren
tomtom1972 am 16.04.2007 um 13:01 Uhr (0)
Hallo,"FindObject" ist eine Methode die zur Selection gehört.Damit kannst du Objekte ausfindig machen, zu welchen das selektierte Elemente gehört. Oder anders gesagt: Dein selektiertes Element ist immer auch Teil verschiedener anderer Objekte, die du dir mit Hilfe dieser Methode ausgeben lassen kannst.Bsp.: Teilfläche(BRep) ist Teil einer Surface ist Teil eines Parts gehört zu einer Instance etc. ....Immer den Automation Typ mit dem prefix "CATIA". Also z.B.:Suchst du das Solid, dann .FindObject("CATIAS ...
|
In das Form CATIA V5 Programmierung wechseln |
|
CATIA V5 Programmierung : ParameterSets finden
Proofin am 17.04.2007 um 14:25 Uhr (0)
Moin Legat,ich weiß nicht ob es dir hilft aber unter den Objekt Parameters gibt es die Methode SubList(). Dieser Funktion kannst du ein Objekt übergeben und bekommst denn alle Parameter unter diesem Objekt.z.BDim oParams as Parametersdim SubParams as Parametersset oParams = CATIA.ActiveDocument.Part.Parametersset SubParams = oParams.SubList(irgendeinBody, true)GrußProofin
|
In das Form CATIA V5 Programmierung wechseln |
|
CATIA V5 Programmierung : Gesucht: .uppercase oder Ähnliches für String-Bearbeitung
der-quest am 17.04.2007 um 16:55 Uhr (0)
Hallo zusammen,die CATIA-Hilfe und dieses Forum konnten mir bislang nicht helfen. Gibt es eine Funktion für CATScript, um einen String aus Groß- und Kleinbuchstaben komplett in Großbuchstaben zu erhalten (myString.Uppercase), oder muss man wirklich ein eigenes Makro schreiben, das Buchstaben für Buchstaben ersetzt via Replace?Gruß & Dankder-quest
|
In das Form CATIA V5 Programmierung wechseln |
|
CATIA V5 Programmierung : ParameterSets finden
Legat am 18.04.2007 um 07:04 Uhr (0)
Hallo zusammen,das mit der SubList ist schon klar.An "FindObject" habe ich auch schon gedacht. Nur leider muss ich vorher einen Parameter direkt ansprechen, was auch nicht gerade schnell geht.Ich hatte gehofft das in R16 jetzt eine Methode geschaffen wurde um auch diesen Fall abzudecken. CATIA macht es einem halt nicht gerade leicht. Trotzdem besten Dank.Gruß Legat
|
In das Form CATIA V5 Programmierung wechseln |
|
CATIA V5 Programmierung : Punkt selektieren und als Referenz weitergeben
dabaeda am 18.04.2007 um 11:41 Uhr (0)
Hallo zusammen,als Anfänger im Programmieren, wollte ich zunächst einmal folgendes Problem lösen: Benutzer soll Punkt selektieren, dieser soll dann als Referenz für eine Ebene dienen.Nun habe ich folgendes programmiert:Sub CATMain()3D-Werkzeugkasten deklarieren-----------------------------Dim MeinPart as Partset MeinPart=CATIA.ActiveDocument.PartDim Wzk3D as HybridshapeFactorySet Wzk3D=MeinPart.HybridShapeFactoryGeöffneten Körper deklarien------------------------------dim Hbody as hybridbodyset Hbody=MeinP ...
|
In das Form CATIA V5 Programmierung wechseln |
|
CATIA V5 Programmierung : MultiOutput Elemente
dc_tke am 19.04.2007 um 11:31 Uhr (0)
Hallo,ich habe von einem MultiOutput Element (Intersect - 2 Punkte) eine Referenz ezeugt und davon wieder ein PointDatum. Nun möchte ich an die Koordinaten des PointDatum kommen. Mit Measurable bekomme ich den Typ 0=CATMeasurableUnknown.Hat jemand eine Idee? Mit beiliegendem Skript kann man das Scenario aufbauen:Sub CATMain() Set documents1 = CATIA.Documents Set partDocument1 = documents1.Add("Part") Set part1 = partDocument1.Part Set hybridBodies1 = part1.HybridBodies Set hybridBody1 = hybridBodies1.Add() ...
|
In das Form CATIA V5 Programmierung wechseln |
|
CATIA V5 Programmierung : MultiOutput Elemente
tomtom1972 am 20.04.2007 um 20:28 Uhr (0)
Hallo dc_tke,du musst das Datum anders erzeugen und das Measurable des Punktes in deinem Code ist auch falsch.zu (1)Die Funktion zum Isolieren des Multi-Elemets, die du benötigst ist AddNewDatums(CATIAReference iElem) As CATSafeArrayVariant zu (2)Die Funktion zum Messen des Punktes ist GetPoint( CATSafeArrayVariant oCoordinates) Code:Sub CATMain()Set documents1 = CATIA.DocumentsSet partDocument1 = documents1.Add("Part")Set part1 = partDocument1.PartSet hybridBodies1 = part1.HybridBodiesSet hybridBod ...
|
In das Form CATIA V5 Programmierung wechseln |
|
CATIA V5 Programmierung : Auflisten *.CATDrawing u. Ausgabe in Datei
Wahl am 23.04.2007 um 11:46 Uhr (0)
Hallo, für mein Batch-Plot Programm möchte ich alle CATDrawings einesVerzeichnisses in eine Datei ausgeben. Der Anwender soll diese Datei anschliessend noch mit Notpad barbeiten können für die Feinauswahl. Dieser Teil funktioniert schon. Ich bekomme aber die Ausgabeumlenkung wie folgt nicht gebacken: CmdLine = "dir "+folderinput+"*.CATDrawing 1 "+folderinput+"liste"msgbox CmdLine Ergebnis = CATIA.SystemService.ExecuteProcessus(CmdLine)msgbox Ergebnis Hat jemand eine besser Idee ? mfG Wahl
|
In das Form CATIA V5 Programmierung wechseln |
|
CATIA V5 Programmierung : 5000 Linien mit Makro erzeugen
doeberc am 24.04.2007 um 17:09 Uhr (0)
Hallo,das hier ist ein Makro um einfach nur eine Linie aus 2 Punkten (*Pt1 und *Pt2) zu erzeugen. Da ich 5001 solcher Punkte habe (durchnummeriert in einem Geom. Set) würde ich gerne 5000 Linien mit dem Makro erzeugen, dh. es müsste eine Schleife her die den Punktenamen etc immer um eins erhöht. Also Linie2 aus *Pt2 und *Pt3, Linie3 aus *Pt3 und *Pt4...Leider hab ich keine VBA Kenntnisse. Weiss jemand vielleicht wie man solch eine Schleife programmiert?Danke vorab,CorneliusLanguage="VBSCRIPT"Sub CATMain()S ...
|
In das Form CATIA V5 Programmierung wechseln |
|
CATIA V5 Programmierung : Parameter aus Catia in eine Exceltabelle
SirKlabauter am 24.04.2007 um 16:19 Uhr (0)
Einen schönen guten Tag an alle,ich möchte aus Catia Parameter über VBA auslesen und in eine Exceltabelle schreiben. Funktioniert alles soweit.Hier mal der Code:Private Sub Fehler()Dim XLS As ObjectDim objxls As ObjectSet objxls = GetObject("", "excel.application")Set XLS = objxls.workbooks.Open("C: empFehler.xls")XLS.ActiveSheet.ActivateXLS.ActiveSheet.range("a1").SelectXLS.ActiveSheet.range("A1").Value = Kante1.ValueXLS.workbook.SaveXLS.CloseEnd SubDer Hacken an der ganzen Sache ist, das ich nicht eine s ...
|
In das Form CATIA V5 Programmierung wechseln |
|
CATIA V5 Programmierung : Parameter aus Catia in eine Exceltabelle
tomtom1972 am 25.04.2007 um 07:03 Uhr (0)
Hi Sir Klabauter,Sub CATMain()Set objXL = CreateObject("Excel.Application")objXL.Visible = TrueSet oAWBook = objxl.Workbooks.Addwenn du die Zellen direkt ansprichst, geht das besser (=schneller) als über die SelektionobjXL.Cells(1,1).Value = "Test"sFileName = "C: est.xls"oAWBook.SaveAs sFileNameobjXL.QuitEnd SubGruß------------------tomtom1972[Diese Nachricht wurde von tomtom1972 am 25. Apr. 2007 editiert.]
|
In das Form CATIA V5 Programmierung wechseln |