|
CATIA V5 Programmierung : Mehrfachselektion unterschiedlicher Typen mit Hilfe eines Namens
YellowDevil am 08.05.2007 um 15:45 Uhr (0)
Mein Beispiel sah so aus:Sub CATMain()Dim selection1 As SelectionSet selection1=CATIA.ActiveDocument.Selectionselection1.Clearselection1.Search(" Part Design.Geometrical Set.Name=Test + Part Design.Body.Name=PartBody + Part Design.Geometrical Set.Name=Test1 ")End SubMan kann als Verbindung zwischen den einzelnen Suchanfragen +,- und & verwenden, soviel ich weiss.+ in die Suche mit einbeziehen- von der Suche ausschliessen& in Verbindung mitHoffe das ist richtig.Sonst schau einfach mal in CATIA unter EDIT be ...
|
In das Form CATIA V5 Programmierung wechseln |
|
CATIA V5 Programmierung : Mehrfachselektion unterschiedlicher Typen mit Hilfe eines Namens
YellowDevil am 08.05.2007 um 14:43 Uhr (0)
Geht sowas nicht?Dim selection1 As SelectionDim selection2 As SelectionSet selection1=CATIA.ActiveDocument.SelectionSet selection2=CATIA.ActiveDocument.Selectionselection1.Clearselection2.Clearselection1.Search(deine suchabfrage)If selection1.Count0 Then selection2.Add selection1.Item(1).ValueEnd IfAm Ende sollten doch eigentlich dann alle deine Ergebnisse im selection2 stehen.
|
In das Form CATIA V5 Programmierung wechseln |
|
CATIA V5 Programmierung : Mehrfachselektion unterschiedlicher Typen mit Hilfe eines Namens
Locke101 am 08.05.2007 um 15:36 Uhr (0)
Danke Proofin und YellowDevil,Proofin deine Methode klappt einwandfrei!!!!!!!YellowDevil könntest du mir das noch genauer erklären was da genau dahintersteckt?! Die Selection ist mich absolutes Neuland, ich blicke da nicht genau wie CATIA da tickt!!!!!!!!Gruß Locke101
|
In das Form CATIA V5 Programmierung wechseln |
|
CATIA V5 Programmierung : IsNumeric?
SirKlabauter am 08.05.2007 um 15:59 Uhr (0)
Danke Locke das du dir schon mal Gedanken gemacht hast. Bei dem Versuch was in die Textbox zu tippen wird nichts ungeloaded. Die Userform bleibt soll lange geöffnet bis sie der User schließt. Ich hab den Code auskommentiert und das Macro noch mal laufen lassen. Dann konnte ich eintragen was ich wollte, auch ein Minuszeichen.Private Sub TextBox_Delta1_Change()If Not IsNumeric(Me.TextBox_Delta1.Value) Then TextBox_Delta1.Value = "" Exit Sub End IfEnd SubKann es daran liegen, daß die Abfrage jedesmal durch ...
|
In das Form CATIA V5 Programmierung wechseln |
|
CATIA V5 Programmierung : IsNumeric?
SirKlabauter am 08.05.2007 um 16:05 Uhr (0)
Genau das was ich oben geschrieben hab ist der Fehler.Wenn ich eine Zahl eintippe und mit dem Pfeiltasten an die erste Stelle gehe und dann ein Minus eintrage gibt es keine Probleme.------------------Hinweise auf Rechtschreibfehler kann man sich bitte sparen.CATIA: V5R16Programmiersprache: VBA
|
In das Form CATIA V5 Programmierung wechseln |
|
CATIA V5 Programmierung : IsNumeric?
SirKlabauter am 10.05.2007 um 10:54 Uhr (0)
Proofin auch dir Danke für die Hilfe.Das Problem habe ich gelöst in dem ich einfachPrivate Sub TextBox_Beispiel_Change()inPrivate Sub TextBox_Beispiel_AfterUpdate()geändert habe.Druch deinen Beitrag habe ich aber auch wieder was gelernt. Man kann ja nie wissen, wann man das mal gebrauchen kann.SirKlabauter------------------Hinweise auf Rechtschreibfehler kann man sich bitte sparen.CATIA: V5R16Programmiersprache: VBA
|
In das Form CATIA V5 Programmierung wechseln |
|
CATIA V5 Programmierung : Drawing mit Product verknüpfen um es mit SendTo mitzukopieren
Florian Held am 02.05.2007 um 10:04 Uhr (0)
Eine Lösung wäre irgend ein Element von dem Drawing in des Produkt weiterzugeben mit Verknüpfung natürlich (z.B. einen Parameter).Allerdings habe ich des noch nicht hin bekommen. Wenn ich im 3D zu nem Parameter sage, beziehe dich auf einen Parameter der Zeichnung und auf die Rückfrage (Verknüpfung beigehalten) hat Catia alles Pflichtbewusst ignoriert und gar nix gemacht.Ich Sehe nur die Möglichkeit eines PDM-Ansatzes dass du irgenwie per Makro dem Produkt sagst welche Drawings zu ihm gehören.Allerdings mus ...
|
In das Form CATIA V5 Programmierung wechseln |
|
CATIA V5 Programmierung : Clipping Lines per Makro löschen
Manu_b am 08.05.2007 um 09:47 Uhr (0)
Ich habe mein Makro nun angepasst, bräuchte aber noch eine kleine Modifikation:Mit dem select-Befehl soll anstatt dem kompletten Zeichenblatt nur die aktuelle View geändert werden. Ich schätze ich muss eine der folgenden Zeilen ändern??Set drawingDocument1 = CATIA.ActiveDocumentSet selection1 = drawingDocument1.Selection selection1.search "(Dashed = 4 & Weight = 1),all"
|
In das Form CATIA V5 Programmierung wechseln |
|
CATIA V5 Programmierung : Clipping Lines per Makro löschen
Lusilnie am 09.05.2007 um 00:42 Uhr (0)
Hallo Manu_b,ich schlage mal folgendes vor:Code:Set drawingDocument1 = CATIA.ActiveDocumentSet selection1 = drawingDocument1.Selectionselection1.Clearselection1.Add drawingDocument1.Sheets.ActiveSheet.Views.ActiveViewselection1.Search "(Dashed = 4 & Weight = 1),sel"selection1.Clearmfg,Lusilnie------------------Alle Aussagen zu DassaultSystemes-Produkten sind sehr optimistisch, selbst diese!!!frei nach größeren Geistern
|
In das Form CATIA V5 Programmierung wechseln |
|
CATIA V5 Programmierung : Winkel zwischen 2 Linien messen
dabaeda am 08.05.2007 um 14:00 Uhr (0)
Hallo,vielleicht hat jmd ne Idee dazu:ich möchte den Winkel zwischen einer Linie(line) und einer anderen Linie(projection) messen, und dann in Excel abspeichern. Beide Linien sind nicht in einem Sketch, sondern als 3D-Geometrie in einem Geoset.1.Mit welchem Befehl kann man denn Winkel messen?2.Wie kann ich dann die Winkel weitergeben? Später muss ich viele Winkel (automatisch) messen, und diese dann als txt-File speichern.Beim speichern von koordinaten habe ich das bisher so gemacht: Zitat:Redim aCoord(2)d ...
|
In das Form CATIA V5 Programmierung wechseln |
|
CATIA V5 Programmierung : Winkel zwischen 2 Linien messen
YellowDevil am 08.05.2007 um 14:29 Uhr (0)
Dim TheSPAWorkbench As WorkbenchDim aTheMeasurable,bTheMeasurable As MeasurableDim angle1Dim reference1 As ReferenceDim reference2 As ReferenceSet reference1=part1.CreateReferenceFromObject(deine erste Linie)Set reference2=part1.CreateReferenceFromObject(deine zweite Linie)Set TheSPAWorkbench=CATIA.ActiveDocument.GetWorkbench("SPAWorkbench")Set aTheMeasurable=TheSPAWorkbench.GetMeasurable(reference1)angle1=aTheMeasurable.GetAngleBetween(reference2)Ich hoffe das hilft dir weiter.
|
In das Form CATIA V5 Programmierung wechseln |
|
CATIA V5 Programmierung : Winkel zwischen 2 Linien messen
dabaeda am 09.05.2007 um 11:26 Uhr (0)
Danke für den Tip, leider funkt das nicht ganz.Folgenden Code habe ich: Zitat:Dim angle1Dim TheSPAWorkbench As Workbench Set TheSPAWorkbench = CATIA.ActiveDocument.GetWorkbench ( "SPAWorkbench" ) Dim TheMeasurable As Measurable Set TheMeasurable = TheSPAWorkbench.Measurable(RefPtRichtung) Hier liegt der Fehlerangle1 = TheMeasurable.GetAngleBetween(RefProjektionNormale(0))Fehlerbewschreibung: Das Objekt unterstürtz diese Eigenschaft/Methode nicht.:TheSPAWorkbench.MeasurableStimmt das mit der referenz was n ...
|
In das Form CATIA V5 Programmierung wechseln |
|
CATIA V5 Programmierung : Fläche verschieben mit Formel - HybridShapeTranslate
Physimathi am 09.05.2007 um 11:52 Uhr (0)
Hallo,danke für die Anregung. Das man Werte Umwandeln kann, dass wusste ich noch nicht. Toll, doch mein Problem besteht immer noch und ich habe es auch schon weiter eingekreist.Es ist so:HybridShapeTranslate hat die Eigenschaft "Distance.Value As Length" (Read Only)Wenn ich es in Catia händisch eingebe, wird diesem Wert die Formel übergeben. Nur gelingt es mir nicht diesen Verschiebungsparameter mit der Formel zu belegen. -- Kann ja sein es geht nicht --Der neue Code, wenn ich ihn mal so nennen kann Bestim ...
|
In das Form CATIA V5 Programmierung wechseln |