Robert11 Opublikowano 13 Września Zgłoś Opublikowano 13 Września Dla mniejszej ilości argumentów plik działa prawidłowo. Nazwy są przypadkowe do celowo mam mieć różne nazwy bloków. Ten fragment pliku lisp powtarza się 30 razy ale nie musi się powtarzać: (setq sset (ssget "x" (list (cons 2 B1)))) (if (= sset nil)(setq l 0)) (setq l (sslength sset)) (setq i 0) (repeat l (setq iBLK (ssname sset i)) (SETQ VALUE (GET-ATT FROMatt iBLK)) (PUT-ATT iBLK TOatt VALUE) (setq i (1+ i)) ) Długość kodu nie ma znaczenia ważne żeby się wykonywał. Ważna informacja na końcu pliku program zwraca błąd że nie może znaleźć właściwego bloku; ten błąd może być. Wcale mi nie przeszkadza, ale nie musi. Ponieważ w docelowym dwg nie zawsze są wszystkie bloki z wymienionej listy. W programie.PRZYKŁADOWY PLIK - Standard.zipPRZYKŁADOWY PLIK.dwg 30 bloków.lsp PRZYKŁADOWY PLIK.dwg PRZYKŁADOWY PLIK - Standard.zip Cytuj
kojacek Opublikowano 14 Września Zgłoś Opublikowano 14 Września Po co kopiujesz ten sam kod 30 razy? Czegoś nie rozumiem? W wątku: masz gotowe działające rozwiąznie dla 30... czy 666 bloków (właściwie dla nieograniczonej ich liczby). W czym tam jest problem? Cytuj
Robert11 Opublikowano 14 Września Autor Zgłoś Opublikowano 14 Września Niestety nie potrafię zadekralować argumentów jako listy z której by sobie pobierał dane. Po za tym mój plik przepisuje wartość symbol do wartość lps przykładowo mamy symbol wu1 i lps br1 do w ostatecznym rachunku otrzymujemy symbol wu1 lps wu1. Kopiowałem ten plik 30 razy ponieważ tą metodą dla dwóch zadziała. Jednak dla 30 argumentów wyskakuje mi komunikat za duża ilość argumentów. Muszę się przyznać że jestem nowicjuszem automatyzacj rysowania za pomocą aut lisp Cytuj
Rekomendowane odpowiedzi
Dołącz do dyskusji
Możesz dodać zawartość już teraz a zarejestrować się później. Jeśli posiadasz już konto, zaloguj się aby dodać zawartość za jego pomocą.