Autor
|
Thema: CATIA Refresh (10142 mal gelesen)
|
kpr Mitglied
Beiträge: 18 Registriert: 31.03.2005
|
erstellt am: 25. Apr. 2005 19:26 <-- editieren / zitieren --> Unities abgeben:
Hallo Ich habe ein Problem mit CATIA-VBA. Ich starte mein VBA-Programm ausserhalb CATIA und möchte Linien und Texte in einer laufenden CATIA-Session erzeugen. CATIA refreshed mir bei jedem Aufruf die ganze Session --> unendlich langsam. Ich habe es schon mit CATIA.RefreshDisplay = False versucht --> CATIA refreshed weiterhin. Kann mir jemand einen Tip geben? Danke.
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
prosper Mitglied Dipl.-Ing. -- Methoden und Prozessentwicklung Catia V5
Beiträge: 86 Registriert: 05.05.2004
|
erstellt am: 26. Apr. 2005 18:34 <-- editieren / zitieren --> Unities abgeben: Nur für kpr
Hallo, das Problem habe ich unter R14 auch, hat in R12 immer wunderbar funktionniert. Die Performance ist dadurch deutlich schlechter geworden. Ich habe in alle meine Sub-Routines ein Refresh=False eingebaut, das bringt zwar was, ist aber nicht optimal. Kann sein, dass DS/IBM es absichtlich bremssen wollten, da immer mehr Leuten Automation nutzen und sie keine Dollars einkassen, da man dafür keine spezielle Lizenz braucht! Wûrde mich nicht wundern. Falls jemanden trotzdem eine saubere Lösung hat... MfG Chris Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
kpr Mitglied
Beiträge: 18 Registriert: 31.03.2005
|
erstellt am: 27. Apr. 2005 18:35 <-- editieren / zitieren --> Unities abgeben:
Hallo, Ich habe bei Dassault einen PMR abgesetzt und folgende Antwort erhalten: Your reported problem has now been investigated. In our databases we found a problem that looks similar to yours. That problem is already closed with following solution/answer: Please provide feedback and allow to close the PMR. Here is the problem description that we find to be similar. ================================================== APAR HD31255 CLOSED AS A PERMANENT RESTRICTION PROBLEM SUMMARY: The RefreshDisplay property of the Application works correctly when run from a CATScript but not when run from a VB application. Correct Application : The RefreshDisplay property of the Application object is to be used for performance reasons : this property indeed enables or disables the update of the display DURING the script replay, that is to say between each macro method call. (To improve performance, this update can be temporarily disabled by setting this property to False in the script.) But this property does NOT prevent the V5 application to be refreshed when the script is finished. Running a CATScript macro inside the V5 process and running a VB macro outside the V5 process (from Microsoft Visual Basic for example) is not the same thing and do not have then the same behavior: - when you run a CATScript macro inside the V5 process, we know exactly when the script starts and when the script is over - when you run VB macro outside the V5 process, we cannot know when the script is over. The outprocess mechanism is based on the Microsoft COM message mechanism : each VB method call is done via an event fired to the V5 application but once the V5 application has handled this event, it is not considering itself as being under macro running and it then keeps on doing its own stuff (like refreshing its display on idle, waiting for user interactions, ...). You can see this difference when the MsgBox is displayed : - when you run a CATScript macro inside the V5 process, the MsgBox is blocking the display of the V5 application - when you run VB macro outside the V5 process, the MsgBox is NOT blocking the display of the V5 application since this is 2 different processes with their own message loop. Documentation Reference : Automation Getting Started VBScript Sagt alles. MfG René Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
prosper Mitglied Dipl.-Ing. -- Methoden und Prozessentwicklung Catia V5
Beiträge: 86 Registriert: 05.05.2004
|
erstellt am: 27. Apr. 2005 19:43 <-- editieren / zitieren --> Unities abgeben: Nur für kpr
Hallo René, jetzt ist alles klar. Bin mal gespannt ob es im R14-CATScript immer noch so gut funktionniert als unter R12. Das ist mir nur aufgefallen, weil ich mit den Editor entwickle, die Makros werden aber später alle als CATScript ausgeführt. Danke. chris Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
93Aero Mitglied Ing
Beiträge: 106 Registriert: 02.12.2004
|
erstellt am: 04. Mai. 2005 12:21 <-- editieren / zitieren --> Unities abgeben: Nur für kpr
|
matzehahn Mitglied Student
Beiträge: 19 Registriert: 11.08.2010 CATIAV5 R19 SP03
|
erstellt am: 22. Sep. 2010 10:23 <-- editieren / zitieren --> Unities abgeben: Nur für kpr
Ich denke das passt hier ganz gut rein. Ich habe in CATIA 32bit eine VBA Makro geschrieben das in einer Schleife (5000 Iteratione) Parameter verändert, ein Bauteil Update macht und Werte ausliest. Das selbe Makro in einer 64bit Umgebung läuft allerdings deutlich langsamer da CATIA ein Display Refresh macht (unter 32bit nicht). Ich denke das ist das oben beschriebene Problem mit VB. Gibt es dafür einen Workaround oder ist der Anwender gezwungen CATIA 32bit zu starten? Beispielsweise über das VBA Makro eine CATScript starten? Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
RSchulz Moderator² Head of CAD, Content & Collaboration / IT-Manager
Beiträge: 5541 Registriert: 12.04.2007 @Work Lenovo P510 Xeon E5-1630v4 64GB DDR4 Quadro P2000 256GB PCIe SSD 512GB SSD SmarTeam V5-6 R2016 Sp04 CATIA V5-6 R2016 Sp05 E3.Series V2019 Altium Designer/Concord 19 Win 10 Pro x64
|
erstellt am: 22. Sep. 2010 10:36 <-- editieren / zitieren --> Unities abgeben: Nur für kpr
|
matzehahn Mitglied Student
Beiträge: 19 Registriert: 11.08.2010 CATIAV5 R19 SP03
|
erstellt am: 22. Sep. 2010 10:54 <-- editieren / zitieren --> Unities abgeben: Nur für kpr
Genau das habe ich drin aber er refresht eben immer noch, wie beim Thread-Ersteller. Ich hatte die Zeilen auch schon an verschiedenen Positionen da es ja sein könnte, dass es durch eine Selection aufgehoben wird. Es handelt sich übrigens um R19SP3 64bit und ein .catvba Skript. Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
RSchulz Moderator² Head of CAD, Content & Collaboration / IT-Manager
Beiträge: 5541 Registriert: 12.04.2007 @Work Lenovo P510 Xeon E5-1630v4 64GB DDR4 Quadro P2000 256GB PCIe SSD 512GB SSD SmarTeam V5-6 R2016 Sp04 CATIA V5-6 R2016 Sp05 E3.Series V2019 Altium Designer/Concord 19 Win 10 Pro x64
|
erstellt am: 22. Sep. 2010 11:00 <-- editieren / zitieren --> Unities abgeben: Nur für kpr
|
matzehahn Mitglied Student
Beiträge: 19 Registriert: 11.08.2010 CATIAV5 R19 SP03
|
erstellt am: 22. Sep. 2010 11:20 <-- editieren / zitieren --> Unities abgeben: Nur für kpr
Also bei mir siehts jetzt so aus Code: User Interaktion CATIA.Interactive = False CATIA.RefreshDisplay = False ... Schleife ... CATIA.RefreshDisplay = True CATIA.Interactive = True User Interaktion
Aber eigentlicht sollte die Methode RefreshDisplay auch funktionieren. Geht es bei Ihnen explizit mit VBA? edit: mit CatScript geht es zumindestens bei dieser sehr einfachen Schleife: Code: Catia.Refreshdisplay = falsefor i =1 to 100 step 1 length1.Value = 101.000000 part1.Update length1.Value = 100.000000 part1.Update Next Catia.Refreshdisplay = true
[Diese Nachricht wurde von matzehahn am 22. Sep. 2010 editiert.] Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
RSchulz Moderator² Head of CAD, Content & Collaboration / IT-Manager
Beiträge: 5541 Registriert: 12.04.2007 @Work Lenovo P510 Xeon E5-1630v4 64GB DDR4 Quadro P2000 256GB PCIe SSD 512GB SSD SmarTeam V5-6 R2016 Sp04 CATIA V5-6 R2016 Sp05 E3.Series V2019 Altium Designer/Concord 19 Win 10 Pro x64
|
erstellt am: 22. Sep. 2010 11:28 <-- editieren / zitieren --> Unities abgeben: Nur für kpr
|
matzehahn Mitglied Student
Beiträge: 19 Registriert: 11.08.2010 CATIAV5 R19 SP03
|
erstellt am: 22. Sep. 2010 11:37 <-- editieren / zitieren --> Unities abgeben: Nur für kpr
|
matzehahn Mitglied Student
Beiträge: 19 Registriert: 11.08.2010 CATIAV5 R19 SP03
|
erstellt am: 22. Sep. 2010 15:23 <-- editieren / zitieren --> Unities abgeben: Nur für kpr
|
tobiley Mitglied Masterstudent
Beiträge: 59 Registriert: 15.02.2010 Win XP CatiaV5 R17, R18, R19 HD2-Lizenz VB2008
|
erstellt am: 24. Apr. 2012 19:41 <-- editieren / zitieren --> Unities abgeben: Nur für kpr
Hallo, ich habe folgendes Problem ich habe ein VB.NET Programm in dem ich das LateBinding benutze also keine .tlb Bibliotheken. Das Programm erstellt einen Zeichnungsrahmen. Wenn ich den Link oben richtig verstehe sollte der RefereshDisplay Befehl bei LateBinding Befehlen funktionieren, oder? Dies ist jedoch nicht der Fall. Kennt jmd. eine Lösung "RefreshDisplay" in einem VB.NET Programm zu deaktivieren? Habe schon ausprobiert das ganze mit einem Catscript zu machen, welches dann vom .NET Programm aufgerufen wird, dass funktioniert jedoch auch nicht! Vielen Dank für eure Hilfe! Grüße Tobias Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
HoBLila Mitglied Dipl.-Ing. (BA) praktische Informatik - Senior Entwickler CAx
Beiträge: 1118 Registriert: 29.05.2008 DELL PRECISION T3500 Intel(R) Xeon(R) CPU W3540 @ 2.93GHz 12285 MB RAM NVIDIA Quadro FX 1800 Microsoft Windows 7 Enterprise Service Pack 1 CATIA V5 R19 SP09 HF69 VB6.5 CAA RADE CDC
|
erstellt am: 26. Apr. 2012 12:36 <-- editieren / zitieren --> Unities abgeben: Nur für kpr
Mach mal ein neues Topic dafür auf und poste ein wenig Code, so kann ich gar nichts zu sagen. Ich gehe jetzt einfach einmal davon aus, dass im Code ein Fehler ist. Versuch zur Not mal den Aufruf mit Call vorweg, das hilft bei 64bit öfter mal. ------------------ Mit freundlichen Grüßen, Henry Schneider alias Lila Es gibt einen ewigen Wettkampf zwischen der Natur und den Ingenieuren: Die Ingenieure versuchen, immer idioten-sicherere Systeme zu bauen, die Natur versucht, immer bessere Idioten zu bauen Xing Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Peter91 Mitglied
Beiträge: 39 Registriert: 12.10.2015 Catia V5-6R2014 Windows 7 VBA 7.1
|
erstellt am: 30. Okt. 2015 11:02 <-- editieren / zitieren --> Unities abgeben: Nur für kpr
|
joehz Moderator Freiberuflicher Konstrukteur
Beiträge: 1057 Registriert: 25.11.2006 Win7 Pro 64 + Ubuntu + Irix6.5.20 Dell Precision M6600 i7-2960XM 2.7GHz 16GB NVidia Quadro M5010 Catia V5R19 VB6Pro.SP6/VBA 6.5.1053
|
erstellt am: 30. Okt. 2015 11:17 <-- editieren / zitieren --> Unities abgeben: Nur für kpr
|