| |
| Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für Autodesk Produkte |
| |
| CIDEON Whitepaper: Collaboration mit optimiertem Daten- und Projektmanagement, ein Whitepaper
|
Autor
|
Thema: iLogic Regel aktualisieren (1867 / mal gelesen)
|
licht_und_schatten Mitglied Maschinenbauingenieur
Beiträge: 168 Registriert: 05.06.2003 Dell Prec.3630 Tower, i7-8700 3.2Ghz, 32GB WINDOWS10;IV2020 3D Connexion, NVIDIA Quadro P2000
|
erstellt am: 04. Nov. 2021 12:58 <-- editieren / zitieren --> Unities abgeben:
Liebes Forum, ich habe folgende Regel im Bauteil erstellt, um später in der Zeichnung den Blechstil und den k-Faktor automatisch darzustellen. iProperties.Value("Custom", "Blechstil") = SheetMetal.GetActiveStyle() iProperties.Value("Custom", "kFactor") = SheetMetal.ActiveKFactor Es ist auch der "Automatikmodus" und "abhängige Regeln sofort auslösen" angekreuzt. Funktioniert alles sehr gut, bis auf eine Ausnahme. Wenn ich eine Stepdatei von einem Blechteil öffne, den Blechstil und den k-Faktor entsprechend anpasse, wird es nicht automatisch aktualisiert. Erst wenn ich z.B. eine Lasche anbringe oder Regel ausführen mache, wird es aktualisiert. Ich würde mich gerne darauf verlassen, dass immer der richtige Wert in der Zeichnung ist. Kennt jemand das Problem, oder hat vielleicht jemand eine Lösung dafür? Gruß Kai
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
rkauskh Moderator Dipl.-Ing. (FH) Versorgungstechnik
Beiträge: 2630 Registriert: 15.11.2006 Windows 10 x64, AIP 2020-2025
|
erstellt am: 04. Nov. 2021 15:31 <-- editieren / zitieren --> Unities abgeben: Nur für licht_und_schatten
|
licht_und_schatten Mitglied Maschinenbauingenieur
Beiträge: 168 Registriert: 05.06.2003 Dell Prec.3630 Tower, i7-8700 3.2Ghz, 32GB WINDOWS10;IV2020 3D Connexion, NVIDIA Quadro P2000
|
erstellt am: 05. Nov. 2021 12:27 <-- editieren / zitieren --> Unities abgeben:
|
licht_und_schatten Mitglied Maschinenbauingenieur
Beiträge: 168 Registriert: 05.06.2003 Dell Prec.3630 Tower, i7-8700 3.2Ghz, 32GB WINDOWS10;IV2020 3D Connexion, NVIDIA Quadro P2000
|
erstellt am: 05. Nov. 2021 12:41 <-- editieren / zitieren --> Unities abgeben:
Anbei mal so ein Teil. Es ist eine Stepdatei in der ich eine kleine Bohrung gemacht habe. Dann funktioniert es. Wenn aber die von mir erzeugte Bohrung (oder Lasche o.ä.) nicht da ist (Bauteilende über die Bohrung schieben), wird die benutzerdef. i-Propertie nicht aktualisiert. So ein Mist. Daher ist das beim Testen nicht aufgefallen, da wir meistens irgendwelche Modifikationen vornehmen. Schönes Wochenende Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
rkauskh Moderator Dipl.-Ing. (FH) Versorgungstechnik
Beiträge: 2630 Registriert: 15.11.2006 Windows 10 x64, AIP 2020-2025
|
erstellt am: 05. Nov. 2021 22:04 <-- editieren / zitieren --> Unities abgeben: Nur für licht_und_schatten
Hallo Ihr erstellt ein neues Blechbauteil und importiert ein STEP. Der STEP "öffnen" Vorgang macht im Grunde auch diesen Ablauf. Wird an dem importierten STEP nichts gemacht außer die Datei zu speichern, werden die Auslöser für die Regel nicht ausgelöst. Fügt man ein Feature ein oder ändert man z.B. den Blechstil, wird auch der Auslöser ausgelöst und die Regel wird ausgeführt. Die Regel läuft übrigens bei einer beliebigen Modellparameteränderung, bei einer iProperty-Änderung und bei Änderung der Bauteilgeometrie. Zumindest sind diese drei Ereignisauslöser definiert (s. Bild) Ich denke es würde reichen wenn nur der Ereignisauslöser "Vor dem Speichern von Dokument" genutzt wird. Die anderen Events werden sehr oft und oft mehrfach hintereinander ausgelöst. ------------------ MfG Ralf RKW Solutions GmbH www.RKW-Solutions.com Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
licht_und_schatten Mitglied Maschinenbauingenieur
Beiträge: 168 Registriert: 05.06.2003 Dell Prec.3630 Tower, i7-8700 3.2Ghz, 32GB WINDOWS10;IV2020 3D Connexion, NVIDIA Quadro P2000
|
erstellt am: 08. Nov. 2021 09:43 <-- editieren / zitieren --> Unities abgeben:
Moin Ralf, vielen Dank für deine Antwort. Leider klappt es mit dem k-Faktor nicht. Alle anderen i-Properties werden sofort nach Änderungen auch übernommen. Auch die Blechgrenzen werden umgehend geändert. Nur der K-Faktor nicht. Da muss ich immer nochmal speichern oder eben ein zusätzliches Feature drin haben. Dann kann es passieren, dass nicht der geänderte k-faktor auf der Zeichnung ist, die ausgedruckt wird. Gruß Kai Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
rkauskh Moderator Dipl.-Ing. (FH) Versorgungstechnik
Beiträge: 2630 Registriert: 15.11.2006 Windows 10 x64, AIP 2020-2025
|
erstellt am: 08. Nov. 2021 15:15 <-- editieren / zitieren --> Unities abgeben: Nur für licht_und_schatten
Hallo Das ist seltsam. Ich kann den Fehler leider nicht reproduzieren. Sowohl das iProp Blechstil, als auch das iProp kFaktor werden aktualisiert sobald ich den Blechstil ändere. Oder ich mache irgendetwas im Ablauf anders. Ich überlege ob iLogic ein Problem bei dir hat, die internen Objekte zu erzeugen. Kannst du mal deine beiden Zeilen durch folgendes ersetzen und damit probieren? Macht das einen Unterschied? Hast du die bisherigen drei Ereignisauslöser noch drin oder auf "Vor dem Speichern" umgestellt? Ist das Verhalten gleich, wenn du die Regel von Hand auslöst? Die Abwicklungsmethode ist aber bei allen Blechregeln linear oder? Bei nicht linearen gibt's keinen k-Faktor. Dann bleibt bei der Umstellung der bisherige drin stehen. Das müsste man prüfen und das kFactor iProp entweder löschen oder mit einem eindeutig falschen Wert (z.B. -1) füllen. Code:
Dim oDoc As PartDocument = ThisApplication.ActiveDocument Dim oDef As SheetMetalComponentDefinition = odoc.ComponentDefinition Dim sStyle As String = oDef.ActiveSheetMetalStyle.Name Dim dKFaktor As Double If oDef.UnfoldMethod.UnfoldMethodType= UnfoldMethodTypeEnum.kLinearUnfoldMethod Then dKFaktor= oDef.ActiveSheetMetalStyle.UnfoldMethod.kFactor Else dKFaktor = -1 End IfDim oPropset As PropertySet = oDoc.PropertySets.Item("{D5CDD505-2E9C-101B-9397-08002B2CF9AE}") Dim oProp As Inventor.Property Try oPropset.Item("Blechstil").Value=sStyle Catch oPropset.Add(sStyle,"Blechstil") End Try Try oPropset.Item("kFactor").Value=dKFaktor Catch oPropset.Add(dKFaktor,"kFactor") End Try
------------------ MfG Ralf RKW Solutions GmbH www.RKW-Solutions.com Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
licht_und_schatten Mitglied Maschinenbauingenieur
Beiträge: 168 Registriert: 05.06.2003 Dell Prec.3630 Tower, i7-8700 3.2Ghz, 32GB WINDOWS10;IV2020 3D Connexion, NVIDIA Quadro P2000
|
erstellt am: 09. Nov. 2021 09:34 <-- editieren / zitieren --> Unities abgeben:
Hallo Ralf, Schon mal 1000 Dank für deine Bemühungen. Ich habe deine neuen Zeilen ersetzt. Das Verhalten bleibt gleich. Wenn ich die Regel von Hand auslöse, funktioniert es. Die Abwicklungsmethode ist linear. Ich glaube ich weiß jetzt woran es liegt. Wenn man den Blechstil ändert, quittiert man es mit OK. Wenn ich allerdings nur den k-Faktor ändere (auf dem Stift neben der Abwicklungsregel) kann ich diese Eingabe zwar speichern und schließen, bei den Blechvorgaben kann ich jedoch nur abbrechen klicken. Der k-faktor ist jetzt geändert aber noch nicht in den i-Properties. Kannst du mal versuchen nur den k-Faktor zu ändern? Hast du dann auch mein Verhalten? Gruß Kai
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
rkauskh Moderator Dipl.-Ing. (FH) Versorgungstechnik
Beiträge: 2630 Registriert: 15.11.2006 Windows 10 x64, AIP 2020-2025
|
erstellt am: 09. Nov. 2021 11:36 <-- editieren / zitieren --> Unities abgeben: Nur für licht_und_schatten
Hallo Brauch ich nicht probieren, weiß ich so das es bei mir auch nicht funktioniert. Das Ändern des KFaktors in der Abwicklungsregel ändert weder die Geometrie, noch ein iProperty und auch in den Modellparametern steht der KFaktor nicht drin. Daher kann keiner der Auslöser anspringen. a) Du kannst für jeden KFaktor eine eigene Blechregel erstellen, da die Blechregel Modellparameter ändert. b) Du kannst meinem Rat folgen und die Regel beim Speichern (und nur da) ausführen lassen. c) Du kannst ein eigenes Addin erstellen (lassen) und z.B. auf das OnStyleChange Event lauschen und da dann auch die Änderung der Abwicklungsregel als Auslöser benutzen.
------------------ MfG Ralf RKW Solutions GmbH www.RKW-Solutions.com Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
licht_und_schatten Mitglied Maschinenbauingenieur
Beiträge: 168 Registriert: 05.06.2003 Dell Prec.3630 Tower, i7-8700 3.2Ghz, 32GB WINDOWS10;IV2020 3D Connexion, NVIDIA Quadro P2000
|
erstellt am: 09. Nov. 2021 13:02 <-- editieren / zitieren --> Unities abgeben:
Die Geometrie der Abwicklung wird allerdings schon geändert. Nur in den I-properties ist es nicht aktuell. Da wir eigentlich immer ein Feature zusätzlich einbringen und wir jetzt sensibilisiert sind, können wir wohl damit leben. Es bleibt aber leider eine kleine Unsicherheit. Gruß Kai Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |