x11start
Guest
um Listen zu bestellen gibt es 2 Befehle:
- die "alteste" (die nur Stringlisten bestellt) heißt acad_strlsort
- während die jüngste (weil mit allen anderen vl-xxx Befehlen aus Version 2000 eingeführt wird oder so...), wird es vl-sort genannt.
Letzteres hat den Vorteil, dass die Neuordnung auch der ganzen und realen Zahlen ermöglicht wird und die Bestellung vom Minderjährigen zum Großen oder umgekehrt ausgewählt wird; was mit acad-strlsort, können Sie es nur tun (reverse (acad-strlsort nomelista).
Es scheint daher, dass vl-sort ist definitiv besser als der Vorgänger... aber eine lisp in autocad gemacht und dann auf gstarcad gestartet.... Ich hatte eine (nur angenehm!) Überraschung:
z.B. (Setq-Liste '("3" "0" "2" "1" "0" "2")
auf autocad tun:
(Akad-Strlsort-Liste)
Ich verstehe:
"("0" "0" "1" "2" "2" "2" "3"
das gleiche Ergebnis, das ich mit dem Befehl bekomme:
(vl-sort list <)
.... aber wenn ich vl-sort in gstarcad benutze, wird das Ergebnis:
"("0" "1" "2" "3")
praktisch der Befehl "deletes the doubles"... und die Sache kann ernsthafte Bedienprobleme an der Lisp!
Leider, wie ich bereits erwähnt, erlaubt der Befehl acad-strlsort nicht, die Zahlen neu zu bestellen, sondern nur die Strings, so werde ich heute versuchen, meine "Modul" lisp für die Ordinationen zu ändern, um sicherzustellen, dass die n. Reals werden in Strings umgewandelt, vor der Bestellung... darauf achten, sie "0" vorzustellen; dies, weil sonst die Liste...
("10" "1" "8") würde ("1" "10" "8") werden
statt mit opportuni "0" vorn..
("10" "01" "08") wird ("01" "08" "10")... die insgesamt umgeformt ist die richtige Sequenz..
letzte Anmerkung:
Es gibt auch einen Befehl namens vl-sort-i, der dazu dient, eine Liste "Aufnahme" der Reihenfolge zu bestellen, in der eine andere Liste bestellt werden soll.
Nun: dieser Befehl funktioniert sehr gut auf gstarcad.... in dem Sinne, dass Sie in diesem Fall nicht "essen" Indizes, falls die Referenzliste bearbeitet werden, haben doppelte Werte!
- die "alteste" (die nur Stringlisten bestellt) heißt acad_strlsort
- während die jüngste (weil mit allen anderen vl-xxx Befehlen aus Version 2000 eingeführt wird oder so...), wird es vl-sort genannt.
Letzteres hat den Vorteil, dass die Neuordnung auch der ganzen und realen Zahlen ermöglicht wird und die Bestellung vom Minderjährigen zum Großen oder umgekehrt ausgewählt wird; was mit acad-strlsort, können Sie es nur tun (reverse (acad-strlsort nomelista).
Es scheint daher, dass vl-sort ist definitiv besser als der Vorgänger... aber eine lisp in autocad gemacht und dann auf gstarcad gestartet.... Ich hatte eine (nur angenehm!) Überraschung:
z.B. (Setq-Liste '("3" "0" "2" "1" "0" "2")
auf autocad tun:
(Akad-Strlsort-Liste)
Ich verstehe:
"("0" "0" "1" "2" "2" "2" "3"
das gleiche Ergebnis, das ich mit dem Befehl bekomme:
(vl-sort list <)
.... aber wenn ich vl-sort in gstarcad benutze, wird das Ergebnis:
"("0" "1" "2" "3")
praktisch der Befehl "deletes the doubles"... und die Sache kann ernsthafte Bedienprobleme an der Lisp!
Leider, wie ich bereits erwähnt, erlaubt der Befehl acad-strlsort nicht, die Zahlen neu zu bestellen, sondern nur die Strings, so werde ich heute versuchen, meine "Modul" lisp für die Ordinationen zu ändern, um sicherzustellen, dass die n. Reals werden in Strings umgewandelt, vor der Bestellung... darauf achten, sie "0" vorzustellen; dies, weil sonst die Liste...
("10" "1" "8") würde ("1" "10" "8") werden
statt mit opportuni "0" vorn..
("10" "01" "08") wird ("01" "08" "10")... die insgesamt umgeformt ist die richtige Sequenz..
letzte Anmerkung:
Es gibt auch einen Befehl namens vl-sort-i, der dazu dient, eine Liste "Aufnahme" der Reihenfolge zu bestellen, in der eine andere Liste bestellt werden soll.
Nun: dieser Befehl funktioniert sehr gut auf gstarcad.... in dem Sinne, dass Sie in diesem Fall nicht "essen" Indizes, falls die Referenzliste bearbeitet werden, haben doppelte Werte!