Recommended Posts

Posted

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

Posted

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?

Posted

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 

 

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...