|
CATIA V5 Programmierung : Probleme äußerster Punkt/Ebenen zwischen
zoltan.bekesi am 19.04.2009 um 21:10 Uhr (0)
Hallo Breitinger,1)Hier könntest du auf den Extrememum eine Messung mit SPAWorkbench machen und vom Measurable die GeometryName abfragen. Da steht drin, ob es sich um ein Punkt oder was anderes handelt. Wenn es kein Punkt ist, kannst du eine Mittelpunkt auf der Kurve erstellen, dann hast du mit Sicherheit ein Punkt.2)Du hast im Relation im String Variablen aus der Skript, welche CATIA so nicht interpretieren kann: " * z / ( count +1 ) "Gruß,Zoltan
|
| In das Form CATIA V5 Programmierung wechseln |
|
CATIA V5 Programmierung : Länge eines Joins aus Linien messen
zoltan.bekesi am 17.06.2009 um 18:54 Uhr (0)
Hallo theshadog,also bei mir funktioniert folgender Code (deines um ein Paar Zeilen ergänzt) einwandfrei:Code:Sub catmain() Dim Part1 As Part Set Part1 = CATIA.ActiveDocument.Part Dim hybridShapes1 As HybridShapes Set hybridShapes1 = Part1.HybridBodies.Item(5).HybridShapes LBjoin vermessen Dim LBjoin As HybridShapeAssemble Set LBjoin = hybridShapes1.Item("LBJoin") Dim MessRef As Reference Set MessRef = Part1.CreateReferenceFromObject(LBjoin) Dim SPAWb As SPAWorkbench evtl diesen Datentyp löschen ...
|
| In das Form CATIA V5 Programmierung wechseln |
|
CATIA V5 Programmierung : Parameter im Parameter
zoltan.bekesi am 24.03.2009 um 18:41 Uhr (0)
Hallo Manrok,folgendes Code erstellt ein Parameterset. Es darf nur ein Part geöffnet sein.Code:Sub CATMain()Dim partDocument1 As PartDocumentSet partDocument1 = CATIA.ActiveDocumentDim part1 As PartSet part1 = partDocument1.PartDim parameters1 As ParametersSet parameters1 = part1.ParametersDim parameterSet1 As ParameterSetSet parameterSet1 = parameters1.RootParameterSet.ParameterSets.CreateSet("MySet")End SubWenn du es anderswo erstellen wirst, geht es ähnlich.Gruß,Zoltan
|
| In das Form CATIA V5 Programmierung wechseln |
|
CATIA V5 Programmierung : Parts aus Produkt Löschen
zoltan.bekesi am 29.05.2008 um 17:47 Uhr (0)
Hallo Knut,verstehe zwar deine Frage nicht ganz, löschen könnte aber wie folgt funktionieren (nicht getestet, für VBA):Code:Dim oActiveDoc as DocumentSet oActiveDoc = CATIA.ActiveDocumentDim oSel as SelectionSet oSel = oActiveDoc.SelectionoSel.Clearab hier musst du dann die zu löschende Dokumente zur Selection addieren: oSel.Add oProdToDelete1 oSel.Add oProdToDelete2 ...oSel.DeleteoSel.ClearIch hoffe, du hast sowas gesucht!Gruß,Zoltan
|
| In das Form CATIA V5 Programmierung wechseln |
|
CATIA V5 Programmierung : Fehlermeldung beim ändern eines Punktes im Raum
zoltan.bekesi am 30.09.2010 um 21:34 Uhr (0)
Hallo cChris,mit einen Makro wird dein Vorhaben leider nicht funktionieren können, da CATIA für Makros (VBA, VBScript, CATScript) den Ereignis "Modell geändert" nicht weitergibt.Den Ereignis die du hier verwenden möchtest steht dir als Auslösen nur in den schon genannten Fällen von Check/Reaction zur Verfügung.Was du höchstenst machen kannst ist, dass der Benutzer auf einen Knopf drücken muss und somit die Kontrolle veranlasst.Gruß,Zoltan
|
| In das Form CATIA V5 Programmierung wechseln |
|
CATIA V5 Programmierung : Koordinaten von HybridShapePointOnCurve auslesen
zoltan.bekesi am 28.05.2008 um 19:49 Uhr (0)
Hallo koopi01,mein Beispiel war aus VBA, da waren die Deklarationen in der Form passend.Die Koordinaten beziehen sich auf den Part Urspung.Evtl. könntest Du noch mit Messen im Product Ursprung die Koordinaten haben, aber soweit ich weiß kannst du es in CATIA aus Makros nicht in ein beliebiges Koordinatensystem abfragen/messen lassen.Da musst du wahrscheinlich hergehen und die Koordinaten in die richtige Achsensystem transformieren.Da kann dir folgender Beitrag z.B. weiterhelfen:Forumbeitrag - Punktkoordina ...
|
| In das Form CATIA V5 Programmierung wechseln |
|
CATIA V5 Programmierung : Koordinatensysteme kongruent setzen
zoltan.bekesi am 19.02.2010 um 18:30 Uhr (0)
Hallo wulfgang,das was du tun willst geht einwandfrei mit CATIA, du musst dir nur was anderes ausdenken, um die Parts anzusprechen.Als erstes anbei der aufgezeichneter Code (VBA), um 2 Koordinatensysteme koinzident zu definieren (mit Kommentare ergänzt):Code:Sub CATMain()Dim productDocument1 As ProductDocumentSet productDocument1 = CATIA.ActiveDocumentProduct, indem du die 2 Parts hastDim product1 As ProductSet product1 = productDocument1.ProductDim constraints1 As ConstraintsSet constraints1 = product1.Co ...
|
| In das Form CATIA V5 Programmierung wechseln |
|
CATIA V5 Programmierung : Formula; auf bestehenden Parameter zugreifen und in Formel verwenden
zoltan.bekesi am 05.02.2009 um 19:35 Uhr (0)
Hallo Zusammen,anbei die Ergänzung der Code von denyo_1 so, dass die Parameter mit Hilfe der Kugelobjekte bestimmt werden.Im Modell ist nur ein GeoSet mit 2 Kugel vorhanden, getestet nur für ein Part geöffnet.Code:Sub Catmain() Dim oDoc As Document Dim oPart As Part Dim oRel As Relations Dim oPara As Parameters Dim oForm As Formula Dim Box Set oDoc = CATIA.ActiveDocument On Error Resume Next Set oPart = oDoc.Part If Err.Number 0 Then Box = MsgBox("Es ist kein Part geladen!" + Chr(10) + "Das M ...
|
| In das Form CATIA V5 Programmierung wechseln |
|
CATIA V5 Programmierung : Bestehenden Text in einer Deawing editieren und ändern.
zoltan.bekesi am 03.07.2009 um 18:41 Uhr (0)
Hallo ZORG,Ich habe dein Code etwas optimiert:Code:Sub CATMain() Dim dDoc1 As DrawingDocument Set dDoc1 = CATIA.ActiveDocument Dim dSheets1 As DrawingSheets Set dSheets1 = dDoc1.Sheets Dim dSheet1 As DrawingSheet hier sollte man auch was ähnliches machen, wie beim Text Set dSheet1 = dSheets1.Item("Sheet.1") Dim oViews As DrawingViews Set oViews = dSheet1.Views Dim oView As DrawingView Set oView = oViews.Item(2) oView.Activate Dim dTexts1 As DrawingTexts Set dTexts1 = oView.Texts Dim dText1 ...
|
| In das Form CATIA V5 Programmierung wechseln |
|
CATIA V5 Programmierung : Properties auslesen
zoltan.bekesi am 06.09.2010 um 19:23 Uhr (0)
Hallo linuxer,ich würde dich auf folgende Beiträge hinweisen:Rekursiv durch das BaumParameter im Parameterset (inkl. weiteres über rekursive Sachen)In letzteres habe ich auch versucht zu erklären, wie die ganze Objektstruktur von CATIA Products aufgebaut ist.Von den beiden Scripts sind die Zeilen ab 12 bis 41 redundant. Die kannst du mit einer klugen Funktion ersetzen, wenn du die Sachen aus den zweiten Beitrag begriffen hast.Dein Skript würde etwa folgender Struktur haben:-Hauptroutine *ActiveDocument prü ...
|
| In das Form CATIA V5 Programmierung wechseln |
|
CATIA V5 Programmierung : Flächen ersetzten oder in einem Join Fläche austauschen
zoltan.bekesi am 03.07.2009 um 18:48 Uhr (0)
Hallo Animexx,für Alternative 1) habe ich auch nur den Wissen, dass es so generell nicht geht, wie mit der RMT.Für Alternative 2) sieht es schon besser aus. Ein Join ist ein Objekt von Typ HybridShapeAssemble. Suche mal in V5Automation.chm in der CATIA Verzeichnis auf diesen Wort, es hat Add/Remove/ReplaceSubElement Methoden.Auf den Join kannst du auf einige Wege zugreifen:-über Name: FindObjectByName-über den Platz im Strukturbaum: oPart.Hybridbodies.Item(1).Hybridshapes.Item(2)-über die Suchfunktion: sel ...
|
| In das Form CATIA V5 Programmierung wechseln |
|
CATIA V5 Programmierung : Element einfäreben ohne selection
zoltan.bekesi am 01.07.2009 um 20:09 Uhr (0)
Hallo Niko,einfärben geht leider nur durch Selection.Anbei aber die Lösung (Code nicht getestet):Code:möglichst noch außerhalb der Schleife. Reicht einmal irgendwo ganz am Anfang:dim userSelection as Selectionset userSelection = CATIA.Activedocument.SelectionDim visPropertySet1 As VisPropertySetSet visPropertySet1 = userSelection.VisPropertiesCodeteil, wie du an deine Fläche zum Offsettieren kommstSet oSurfaceToOffset = dein CodeEinfärbenuserSelection.ClearuserSelection.Add oSurfaceToOffset visPropertySet1 ...
|
| In das Form CATIA V5 Programmierung wechseln |
|
CATIA V5 Programmierung : Ableitung einer Seite durch Teilfläche (Tangentenstetig)
zoltan.bekesi am 24.06.2009 um 19:08 Uhr (0)
Hallo Maetes,ich kenne mich mit Perl nicht aus, im VBA-Editor existiert aber ein Watch-Fenster, wo man ganz gut die Objekte auf Struktur und Inhalt analysieren kann.Was man bei welchen Objekt hat, kann man aus V5Automation.chm (im bin Verzeichnis von CATIA), bzw. im Object Browser im VBA-Editor nachsehen. DisplayName gibt es nicht überall. Bei einen Referenz ist es aber gar nicht so trivial anzugeben, worum es sich handelt. Wenn du es unbedingt visualisieren willst, dann würde ich es in ein Selection mit A ...
|
| In das Form CATIA V5 Programmierung wechseln |