gruzin Opublikowano 10 Czerwca 2011 Zgłoś Udostępnij Opublikowano 10 Czerwca 2011 Mam problem z zapisam filtrów w w funkcji ssget (setq listawarstw (list "IS_PB_WL" "IS_PB_WZ+WC" );list );setq (foreach % listawarstw (setq linie (ssget "x" '((0 . "LINE")(8 . %))) );setq prubuję z tym % na różne sposobu i nie wiem jak powinno być poprawnie (8 . %) (8 . "%") nie działa, kombinacje z strcat też nie. Co robie nie tak? Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
kruszynski Opublikowano 10 Czerwca 2011 Zgłoś Udostępnij Opublikowano 10 Czerwca 2011 Jeden problem to jest taki, że konstrukcja ( 0 . "LINE") jest OK, bo "LINE" to jest stała. Jeśli chce Pan użyć zmiennej np % taka konstrukcja nie jest możliwa. trzeba w tym przypadku zamiast (0 . %) użyć (cons 0 %) Jeśli na tych elementach trzeba zrobić te same operacje można zrobić filtr wybierający elementy z dwu warstw. Filtr wówczas jest trochę bardziej skomplikowany, ale jednym wywołaniem funkcji mamy lepszy efekt. Dzięki temu wywołanie funkcji działa szybciej. Trzeba by to zrobić jakoś tak: (setq sel1 (ssget '((0 . "LINE") (-4 . "")))) Pisane z głowy (czyli z niczego) więc mogło mi się zapomnieć jakiś nawias zamknąć, ale koncepcja jakoś tak by wyglądała Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Rekomendowane odpowiedzi