CADsite forum

AutoCAD => Autolisp => Topic gestart door: gery op wo 17 10 2018, 20:13:32

Titel: OPGELOST - lijst met geopende tekeningen
Bericht door: gery op wo 17 10 2018, 20:13:32
Met LISP code (vlax-map-collection (vla-get-documents (vlax-get-acad-object)) '(lambda (x) (setq #lst (reverse (cons (vla-get-name x) #lst))))) kan ik een lijst maken met daarin alle op dat moment geopende tekeningen. Echter, deze staan in een willekeurige volgorde. Hoe kan ik diezelfde lijst bekomen maar met de tekeningen in de volgorde zoals ze geopend zijn?
Titel: Re: lijst met geopende tekeningen
Bericht door: roy_043 op do 18 10 2018, 09:09:50
In de lambda gebruik je reverse. Dus jouw code gooit e.e.a. door elkaar.
Titel: Re: lijst met geopende tekeningen
Bericht door: gery op do 18 10 2018, 09:46:06
Citaat van: roy_043 op do 18 10 2018, 09:09:50
In de lambda gebruik je reverse. Dus jouw code gooit e.e.a. door elkaar.
Inderdaad, was me nog niet opgevallen, normaal keert "reverse" de lijst gewoon om, maar dat blijkt niet zo te zijn.
Bedankt!
Titel: Re: lijst met geopende tekeningen
Bericht door: roy_043 op do 18 10 2018, 09:57:10
Reverse werkt naar behoren...
Titel: Re: lijst met geopende tekeningen
Bericht door: gery op do 18 10 2018, 10:39:01
Zonder "reverse" staan alle open tekeningen netjes opgelijst, maar in omgekeerde volgorde van opening. Met "reverse" wordt de lijst niet correct omgekeerd. Raar.
Titel: Re: lijst met geopende tekeningen
Bericht door: EddyBeerke op do 18 10 2018, 11:28:12
Heb je hier wat aan:
https://knowledge.autodesk.com/search-result/caas/CloudHelp/cloudhelp/2015/ENU/AutoCAD-AutoLISP/files/GUID-F3B27BD2-27FA-4185-B22C-85509175C171-htm.html
Titel: Re: lijst met geopende tekeningen
Bericht door: roy_043 op do 18 10 2018, 15:14:14
@Gery: Je stapelt reverse op reverse:

(setq lst (reverse (cons 1 lst))) => (1)
(setq lst (reverse (cons 2 lst))) => (1 2)
(setq lst (reverse (cons 3 lst))) => (2 1 3)
...


Probeer dit:
(reverse (vlax-for doc (vla-get-documents (vlax-get-acad-object)) (setq lst (cons (vla-get-name doc) lst))))
Titel: Re: lijst met geopende tekeningen
Bericht door: gery op vr 19 10 2018, 08:59:58
Klopt Roy, 'k had het ondertussen ook ontdekt.

Bedankt voor het meedenken allen!