|
CATIA V5 Programmierung : Ebene parallel zur Anzeige
geekv5 am 11.06.2012 um 11:08 Uhr (0)
Hallo zusammen!Möchte eine Ebene automatisiert erzeugen, welche parallel zur Anzeige liegt, also über eine Gleichung..Die Aufzeichnung hat folgenden Code ergeben, aber ich weiß nicht, wie ich die einzelnen Parameter ermittle, sodass die Ebene parallel ist..Jemand eine Idee? Wäre mMn ein sehr nützliches Feature mit einem Klick..Code:Sub CATMain()Dim partDocument1 As PartDocumentDim part1 As PartDim hybridShapeFactory1 As HybridShapeFactoryDim hybridShapePlaneEquation1 As HybridShapePlaneEquationDim bodies1 ...
|
In das Form CATIA V5 Programmierung wechseln |
|
CATIA V5 Programmierung : Ebene parallel zur Anzeige
geekv5 am 11.06.2012 um 12:34 Uhr (0)
Hallo Bernd,funktioniert wie immer einwandfrei, hier der lauffähige code:Code:Sub CATMain()Dim partDocument1 As PartDocumentDim part1 As PartDim hybridShapeFactory1 As HybridShapeFactoryDim hybridShapePlaneEquation1 As HybridShapePlaneEquationDim bodies1 As BodiesDim body1 As BodyDim viewers1 As viewersDim viewer1 As ViewerDim sight1(2)Dim adoc As DocumentOn Error Resume NextSet adoc = CATIA.ActiveDocumentIf Err.Number 0 Then Exit SubSet selection1 = adoc.Selection Select Case TypeName(adoc) Case "Par ...
|
In das Form CATIA V5 Programmierung wechseln |
|
CATIA V5 Programmierung : Ebene parallel zur Anzeige
HoBLila am 11.06.2012 um 16:56 Uhr (0)
Hatte da auch einmal eine Funktion geschrieben und lässt sich sicher auch als Funktion besser in den eigenen Code integrieren:Code: Erzeugt eine Ebene parallel zur AnsichtPrivate Function createPlaneParallelToScreen(ByRef i_partWork As MECMOD.Part, ByRef i_hybBodyWork As MECMOD.HybridBody) As HybridShapeTypeLib.HybridShapePlaneEquation Dim arrDblOrigin(2) As Variant Double Dim arrDblSightDirection(2) As Variant Double Dim axisSystemsWork As AxisSystems Dim axisSystemWork As AxisSystem Dim ...
|
In das Form CATIA V5 Programmierung wechseln |
|
CATIA V5 Programmierung : Sketches / External ref / Isloate
DanielFr. am 11.06.2012 um 20:14 Uhr (0)
Hallo,Die Objekte der HybridSketches-Collection lassen wie wie alle Objekte einer Collection über die .Item(x) Methode ansprechen, wobei "x" die Position des Objekts innerhalb der Collection ist.Ev. Kannst du ja hier dein bereits erstelltes Script anhängen damit die Forumsmitglieder dir auch bei deinem explizieten Problem weiterhelfen können PS: Reine Formsache ABER bitte könntest du ein wenig auf deine Rechschreibung achten?------------------MFG DanielSysteminformation | Inoffizielle CATIA Hilfeseite | C ...
|
In das Form CATIA V5 Programmierung wechseln |
|
CATIA V5 Programmierung : Aktive Skizze ermitteln
tberger am 12.06.2012 um 15:22 Uhr (0)
Du kannst das über einen kleinen Umweg schaffen, indem du die Suchfunktion im Code verwendest und z.B. nach der x-Achse oder dem Ursprung in der eigenen Skizze suchst. Diese Selektion dann auswerten über die .parent und du bekommst die Skizze.EDIT: hier ein BeispielcodeSub CATMain()Dim productDocument1 As ProductDocumentSet productDocument1 = CATIA.ActiveDocumentDim selection1 As SelectionSet selection1 = productDocument1.Selectionselection1.Search "CATSketchSearch.2DAxis_Origin,in"Dim selpoint As Point2DS ...
|
In das Form CATIA V5 Programmierung wechseln |
|
CATIA V5 Programmierung : Reihenfolge von Items
GrafKoks am 13.06.2012 um 15:39 Uhr (0)
Servus,ich habe ein Product mit mehreren Parts darunter. Wenn ich nun überCode: Set documents1 = CATIA.Documents Set partDocument1 = documents1.Item(7)das item(7) anwähle, ist das nicht das 7. von oben sondern irgendeins. Also die items werden nicht wie im Strukturbaum nacheinander aufgelistet.Jedoch wenn ich folgendes mache:Code: Set partDocument1 = CATIA.ActiveDocument Set product1 = partDocument1.Product Set products1 = product1.products MsgBox products1.Count For i = 1 To products1.Count ...
|
In das Form CATIA V5 Programmierung wechseln |
|
CATIA V5 Programmierung : Array Operationen
GrafKoks am 14.06.2012 um 13:49 Uhr (0)
Danke für die Antwort.das mit Leafproduct funktioniert, allerdings meine ich schon, dass ich da ein Array habe. Im Code befülle ich nur mit hilfe von selection.item(i).valueCode:Sub AS_select()----------Start im Werkzeug---------- Dim Was(0) Dim arrAS() Dim arrLocAS() Was(0) = "AxisSystem" Set selection1 = CATIA.ActiveDocument.Selection selection1.Clear Auswahl = selection1.SelectElement3(Was, "Bitte Achsensystem(e) auswählen. Auswahl bestätigen über Toolbox. Abbruch mit ESC!", False, CATMulti ...
|
In das Form CATIA V5 Programmierung wechseln |
|
CATIA V5 Programmierung : Array Operationen
geekv5 am 14.06.2012 um 14:16 Uhr (0)
Habe deinen Code teilweise korrigiert, allerdings nur bis zur Testausgabe:Code:Sub CATMain()----------Start im Werkzeug---------- Dim Was(0) Dim arrAS() Dim arrLocAS() Dim partdocument1 As PartDocument Dim product1 As Product Dim publications1 As Publications Was(0) = "AxisSystem" Set selection1 = CATIA.ActiveDocument.Selection selection1.Clear Auswahl = selection1.SelectElement3(Was, "Bitte Achsensystem(e) auswählen. Auswahl bestätigen über Toolbox. Abbruch mit ESC!", False, CATMultiSelTri ...
|
In das Form CATIA V5 Programmierung wechseln |
|
CATIA V5 Programmierung : Makro in FTA
demar am 14.06.2012 um 17:56 Uhr (0)
Hallo Leute,vielleicht kann mir jemand bei meinem Problem helfen. Ich will in Catia V5R20 in FTA einen Note erstellen mit 3 Werten eines Bauteils (Länge x Breite x Höhe). Ich will aber, dass sich die Werte immer bei der Änderung des Bauteils sich mit ändern. Gibt es irgend einen Makro dafür oder auch ne andere Möglichkeit?Danke schon mal. Grüße. Alex
|
In das Form CATIA V5 Programmierung wechseln |
|
CATIA V5 Programmierung : Selection.search referenz
pfannensepp am 15.06.2012 um 09:47 Uhr (0)
Hallo ich ahb ein Problem was in ähnlichen Posts schon besprochen wurde. Leider bin ich durhc die nicht auf meine Lösung gekommen. Eigentlich ist es trivial....Ich Suche mit selection.search nach einem Punkt (bzw. einer projection von einem punkt), welcher in einem Produkt beziehungsweise im enthaltenen Part vorhanden ist. In diesem Punkt will ich dann eine Line erstellen. Ich finde den Punkt. Wenn ich allerdings diesen bei derm AddnewLinePtDir angebe, erstellt er die Line, allerdings bleibt der Punkt leer ...
|
In das Form CATIA V5 Programmierung wechseln |
|
CATIA V5 Programmierung : Selection.search referenz
geekv5 am 15.06.2012 um 11:59 Uhr (0)
Kann man die Referenz denn so erstellen ("selektion.item(1).Reference")? Bei mir bringt er nämlich einen Fehler an der Stelle..Wenn ein PartDocument geöffnet ist, hätte ich es so gemacht:set partdocument1=CATIA.ActiveDocumentset part1=partdocument1.partset ref1=part1.CreateReferenceFromObject(Selection1.Item(1).Value)
|
In das Form CATIA V5 Programmierung wechseln |
|
CATIA V5 Programmierung : Win7 - Fensterproblem
geekv5 am 15.06.2012 um 15:05 Uhr (1)
Ist zwar schon etwas her, aber ich hatte das selbe Problem und hab das folgendermaßen unter Zuhilfenahme der Win32 API realisiert:Code:Public Declare Function FindWindow Lib "user32" Alias "FindWindowA" (ByVal lpClassName As String, ByVal lpWindowName As String) As LongPublic Declare Function GetClassName Lib "user32" Alias "GetClassNameA" (ByVal hwnd As Long, ByVal lpClassName As String, ByVal nMaxCount As Long) As LongPublic Declare Function EnumChildWindows Lib "user32" (ByVal hWndParent As Long, ByVal ...
|
In das Form CATIA V5 Programmierung wechseln |
|
CATIA V5 Programmierung : Win7 - Fensterproblem
Jens Hansen am 04.05.2012 um 08:35 Uhr (1)
Hallo Thomas,hast du daran gedacht die Fenster nach vorne zu holen? Dafür gibt es ja die entsprechende API "user32.dll".Des weiteren habe ich gute Erfahrungen damit gemacht, anstatt SEND den Befehl SENDWAIT zu verwenden. Dann kommt es auch bei Laufzeitunterschieden nicht zu Problemen.SGJens------------------Inoffizielle CATIA-HilfeseiteKochbuch - CATIA V5 automatisieren
|
In das Form CATIA V5 Programmierung wechseln |