| |
| Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für Autodesk Produkte |
Autor
|
Thema: Regelausführung schneller machen? (2766 mal gelesen)
|
Simon Buquet Mitglied Praktikant
Beiträge: 18 Registriert: 14.10.2013 Inventor 2013
|
erstellt am: 04. Nov. 2013 09:12 <-- editieren / zitieren --> Unities abgeben:
Hallo zusammen, ich habe arbeite gerade an einer Baugruppe und die Ausführung bestimmter iLogic Regeln benötigt 90 Sekunden, was mir für meine Zwecke zu lange dauert. Ich tue mich auch relativ schwer in den Hilfeoptionen Möglichkeiten zu finden, um dieses Zeit zu reduzieren. Ist es daher möglich, z.B. das aktualisieren der einzelnen Komponenten während der Regelausführung zu unterdrücken oder gibt es generelle Sachen die man beachten könnte? Diese Frage lässt jetzt vielleicht großen Spielraum aufkommen aber für ein zwei konkrete Antworten wäre ich sehr dankbar =) MfG Simon Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Chris 31 Mitglied Konstrukteur und Mädchen für alles
Beiträge: 575 Registriert: 23.04.2013 Inventor 2013 Windows 7 64 bit 16GB RAM nVidia Quadro 600
|
erstellt am: 04. Nov. 2013 10:23 <-- editieren / zitieren --> Unities abgeben: Nur für Simon Buquet
Hallo Simon, eine Frage vorweg: ist es eine Regel, oder mehrere? Was genau bewirken denn diese Regeln? Es kommt ja darauf an, was denn in den Regeln angesprochen wird, wie lange es dauert, diese aus zu führen. Generell würde ich versuchen jegliche Regeln schlank zu halten. Ich habe bei mir gemerkt, dass längere Zeiten zustande kommen, wenn Regeln auf andere Regeln zugreifen oder abhängige Regeln auslösen. Solche Regeln habe ich dann zu einer Regel zusammengefasst, wenn es möglich war. Das hat mir teilweise erhebliche Zeitersparnis gebracht. Gruß Chris
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Simon Buquet Mitglied Praktikant
Beiträge: 18 Registriert: 14.10.2013 Inventor 2013
|
erstellt am: 04. Nov. 2013 10:44 <-- editieren / zitieren --> Unities abgeben:
Hallo Chris, ich habe 5 Regeln (3 davon mit ca. 1200Zeilen Code), welche aber nicht aufeinander verweisen oder zugreifen. Hauptsächlich werden mit ChangeRow iParts geschaltet und mit ComponentisActive und ConstraintisActive Abhängigkeiten und Teile ein- bzw. ausgeschaltet... Gruß Simon Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Lothar Boekels Ehrenmitglied V.I.P. h.c. Dipl.-Ing. Maschinenbau und CAD-Trainer
Beiträge: 3823 Registriert: 15.02.2001 DELL Precision 7520 Win10Pro-64 Inventor mit Vault Professional 2024 --------------------- Während man es aufschiebt, verrinnt das Leben. Lucius Annaeus Seneca (ca. 4 v. Chr - 65 n. Chr.)
|
erstellt am: 04. Nov. 2013 11:01 <-- editieren / zitieren --> Unities abgeben: Nur für Simon Buquet
Hallo Simon, ohne geneu den Code zu kennen, ist eine Aussage nur pauschal möglich: Die iLogic-Regeln werden während der Laufzeit interpretiert laufen damit langsamer ab, als wenn durch die iLogic-Regel ein schon kompiliertes Programm angestoßen wird. Ansonsten kann man auch je nach Progrmmierungsart schneller und langsamer laufene Programme erstellen. ------------------ mit freundlichem Gruß aus Mönchengladbach Lothar Boekels ----------------------------------------------------- Wir unterstützen die Arbeit der Rettungshundestaffel des DRK in Viersen Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Chris 31 Mitglied Konstrukteur und Mädchen für alles
Beiträge: 575 Registriert: 23.04.2013 Inventor 2013 Windows 7 64 bit 16GB RAM nVidia Quadro 600
|
erstellt am: 04. Nov. 2013 11:15 <-- editieren / zitieren --> Unities abgeben: Nur für Simon Buquet
genau, wenn es so lange Regeln sind, versuche sie in VBA zu schreiben und dann nur per iLogic drauf zu zu greifen. Dann sollte es deutlich schneller gehen. Ansonsten, so wie Lothar es sagte ist es schwierig mehr zu sagen, ohne die Struktur der Regeln zu kennen. Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
rkauskh Moderator Dipl.-Ing. (FH) Versorgungstechnik
Beiträge: 2428 Registriert: 15.11.2006 Windows 10 x64, AIP 2023
|
erstellt am: 04. Nov. 2013 19:34 <-- editieren / zitieren --> Unities abgeben: Nur für Simon Buquet
Hallo Ich orakel mal das dein Code nicht die Bremse ist, sondern die Berechnungszeit der Aktualisierungen nach jedem Schritt. Aktivier mal in den Anwendungsoptionen auf dem Reiter "Baugruppe" die Option "Aktualisierung aufschieben" und teste dann mal. Die Option kann man auch über die API setzen --> ThisApplication.AssemblyOptions.DeferUpdate=true/false ------------------ MfG Ralf Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Simon Buquet Mitglied Praktikant
Beiträge: 18 Registriert: 14.10.2013 Inventor 2013
|
erstellt am: 05. Nov. 2013 07:56 <-- editieren / zitieren --> Unities abgeben:
Hallo, danke für den Hinweis 'Aktualisieren aufschieben'. Leider ändert sich dadurch zeitlich nichts und es sieht so aus, als würde die Baugruppe immer noch aktualisieren. Für die anderen habe ich hier noch einen Auschnitt aus dem Quellcode. Gruß Simon Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Chris 31 Mitglied Konstrukteur und Mädchen für alles
Beiträge: 575 Registriert: 23.04.2013 Inventor 2013 Windows 7 64 bit 16GB RAM nVidia Quadro 600
|
erstellt am: 05. Nov. 2013 08:27 <-- editieren / zitieren --> Unities abgeben: Nur für Simon Buquet
Guten Morgen, wie viele Bauteile hast du denn verbaut in deiner Baugruppe? Ist es vielleicht möglich, mehrere Unterbaugruppen zu erstellen und diese komplett zu unterdrücken? Das würde evtl eine Zeitersparnis bringen. Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Simon Buquet Mitglied Praktikant
Beiträge: 18 Registriert: 14.10.2013 Inventor 2013
|
erstellt am: 05. Nov. 2013 09:00 <-- editieren / zitieren --> Unities abgeben:
Unterbaugruppen klingen gar nicht schlecht, allerdings habe ich nur noch eine Woche Praktikum...^^ Ich kann ja auch mehrere Teile in einen Ordner packen und den Ordner manuell unterdrücken. Gibt es dafür vielleicht auch ein Snippet? Das würde mir glaube ich enorm helfen, ich finds aber gerade nicht.. Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
axi92 Mitglied Konstrukteur
Beiträge: 685 Registriert: 20.02.2010 Inventor 2014 64bit SP2 Build 246 Vault Basic 2014 64bit SP2 Update 7 HP Z200 Win 7 64bit 16GB RAM CPU: i5 3,2GHz GPU: Nvidia Quadro K600
|
erstellt am: 05. Nov. 2013 09:17 <-- editieren / zitieren --> Unities abgeben: Nur für Simon Buquet
|
Chris 31 Mitglied Konstrukteur und Mädchen für alles
Beiträge: 575 Registriert: 23.04.2013 Inventor 2013 Windows 7 64 bit 16GB RAM nVidia Quadro 600
|
erstellt am: 05. Nov. 2013 10:07 <-- editieren / zitieren --> Unities abgeben: Nur für Simon Buquet
|
Simon Buquet Mitglied Praktikant
Beiträge: 18 Registriert: 14.10.2013 Inventor 2013
|
erstellt am: 05. Nov. 2013 10:21 <-- editieren / zitieren --> Unities abgeben:
|
Chris 31 Mitglied Konstrukteur und Mädchen für alles
Beiträge: 575 Registriert: 23.04.2013 Inventor 2013 Windows 7 64 bit 16GB RAM nVidia Quadro 600
|
erstellt am: 05. Nov. 2013 11:29 <-- editieren / zitieren --> Unities abgeben: Nur für Simon Buquet
|
Simon Buquet Mitglied Praktikant
Beiträge: 18 Registriert: 14.10.2013 Inventor 2013
|
erstellt am: 05. Nov. 2013 11:38 <-- editieren / zitieren --> Unities abgeben:
Okay, danke erstmal für die ganze Mühe. Das war mein erstes Projekt mit Inventor, im nachhinein würde ich jetzt natürlich einiges anders aufbauen und programmieren, es geht nur noch darum etwas Zeit rauszuholen, große Änderungen kann ich jetzt nicht mehr vornehmen.. Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Chris 31 Mitglied Konstrukteur und Mädchen für alles
Beiträge: 575 Registriert: 23.04.2013 Inventor 2013 Windows 7 64 bit 16GB RAM nVidia Quadro 600
|
erstellt am: 05. Nov. 2013 11:38 <-- editieren / zitieren --> Unities abgeben: Nur für Simon Buquet
Habe deine Frage glaube ich falsch verstanden gehabt. Du kannst den Code einfach in eine iLogic Regel einfügen und bei Optionen den Haken bei reiner vb.net Code setzen. Dann läuft es auch schon. Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Chris 31 Mitglied Konstrukteur und Mädchen für alles
Beiträge: 575 Registriert: 23.04.2013 Inventor 2013 Windows 7 64 bit 16GB RAM nVidia Quadro 600
|
erstellt am: 05. Nov. 2013 11:41 <-- editieren / zitieren --> Unities abgeben: Nur für Simon Buquet
Zitat: Original erstellt von Simon Buquet: Okay, danke erstmal für die ganze Mühe.Das war mein erstes Projekt mit Inventor, im nachhinein würde ich jetzt natürlich einiges anders aufbauen und programmieren, es geht nur noch darum etwas Zeit rauszuholen, große Änderungen kann ich jetzt nicht mehr vornehmen..
Als kleiner Tipp für das nächste Mal: ich hatte gesehen, dass du Schrauben unterdrückst. Wenn nicht unbedingt nötig, dann verbau die Schrauben nicht im Modell, sondern gib sie in der Zeichnungsableitung nur an. Das spart dir einiges an Rechenleistung. Gerade, wenn es unheimlich viele Schrauben sind. Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Simon Buquet Mitglied Praktikant
Beiträge: 18 Registriert: 14.10.2013 Inventor 2013
|
erstellt am: 05. Nov. 2013 11:41 <-- editieren / zitieren --> Unities abgeben:
|
Chris 31 Mitglied Konstrukteur und Mädchen für alles
Beiträge: 575 Registriert: 23.04.2013 Inventor 2013 Windows 7 64 bit 16GB RAM nVidia Quadro 600
|
erstellt am: 05. Nov. 2013 12:11 <-- editieren / zitieren --> Unities abgeben: Nur für Simon Buquet
|
Simon Buquet Mitglied Praktikant
Beiträge: 18 Registriert: 14.10.2013 Inventor 2013
|
erstellt am: 05. Nov. 2013 12:34 <-- editieren / zitieren --> Unities abgeben:
|
Chris 31 Mitglied Konstrukteur und Mädchen für alles
Beiträge: 575 Registriert: 23.04.2013 Inventor 2013 Windows 7 64 bit 16GB RAM nVidia Quadro 600
|
erstellt am: 05. Nov. 2013 13:27 <-- editieren / zitieren --> Unities abgeben: Nur für Simon Buquet
|
Simon Buquet Mitglied Praktikant
Beiträge: 18 Registriert: 14.10.2013 Inventor 2013
|
erstellt am: 05. Nov. 2013 14:04 <-- editieren / zitieren --> Unities abgeben:
|
Chris 31 Mitglied Konstrukteur und Mädchen für alles
Beiträge: 575 Registriert: 23.04.2013 Inventor 2013 Windows 7 64 bit 16GB RAM nVidia Quadro 600
|
erstellt am: 05. Nov. 2013 14:17 <-- editieren / zitieren --> Unities abgeben: Nur für Simon Buquet
oje, bei mir bekomme ich nur noch Fehlermeldungen. Let und Set Anweisungen funktionieren nicht mehr. Dann kann ich dir leider auch nicht weiter helfen, so tief bin ich im VBA selbst auch noch nicht drin. Tut mir leid... Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Simon Buquet Mitglied Praktikant
Beiträge: 18 Registriert: 14.10.2013 Inventor 2013
|
erstellt am: 05. Nov. 2013 14:19 <-- editieren / zitieren --> Unities abgeben:
|