Hallo Forum,
ich habe festgestellt, dass es sehr lange dauern kann, bis der Befehl entmod auf einen Layer angewendet wurde. Ich habe eine Zeichnung mit drei Referenzen. Wenn ich da den folgenden Code ausführe, dauert es 0,70 Sekunden. Bei einer Leeren Zeichnung dauert es nur 0,02 Sekunden. Der Code gibt direkt die Zeit in Sekunden zurück. Es wird nur die Farbe des Layers "0" verstellt. Und zwar um eine Farbnummer nach oben.
Code:
(progn(setq zeit (getvar "cdate"))(entmod (subst (cons 62 (1+ (cdr (assoc 62 (tblnext "Layer" 'T))))) (assoc 62 (tblnext "Layer" 'T)) (tblnext "Layer" 'T)))(princ (rtos (* (- (getvar "cdate") Zeit) 1000000) 2 2))(princ))
Vielleicht kann jemand das mal mit einer Seiner Zeichnungen ausprobieren. Vielleicht im Vergleich dazu mit Autocad. Die 0,70 Sekunden sind schon happig. Vorallem wenn man wie in dieser Zeichnung über 70 Layern abarbeitet.
Wer hat eine Idee, wie man das ganze beschleuigen kann. Ein echter Zeitfaktor scheint das vorhanden sein von Xrefs zu sein. Vorallem wenn hier viele Objekte vorhanden sind. (Bei angehängten Katasterplänen sind 100.000 Objekte schnell mal zusammen). Aber ob die Xrefs auf dem betroffenen Layer liegen oder nicht scheint keine Rolle zu spielen.
Im LISP-Forum wollte ich es erst mal nicht probieren, da dann wieder die Unterschiede zwischen BCAD und ACAD der Knackpunkt sein könnten.
Gruß Stefan
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP