jarekw90

Użytkownik forum
  • Postów

    10
  • Dołączył

  • Ostatnia wizyta

Aktywność reputacji

  1. Upvote
    jarekw90 przyznał(a) reputację dla kruszynski w problem repeat + getkword   
    Proponuję tak:
     
    (defun ZWCAD:GetKWord (init Prompt DefVal / ans OutVal *error*) (defun *error* ( msg / ) (if (not (null msg ) ) (progn (princ "\n ZWCAD:GetKWord : *error*: " ) (princ msg ) (princ "\n") ) ) ) (initget 2 init) (setq ans(vl-catch-all-apply 'getkword (list Prompt))) (if (not(vl-catch-all-error-p ans)) (if ans (progn (if (equal ans "") (setq OutVal DefVal) (setq OutVal ans) ) ) (setq OutVal DefVal) ) ) OutVal ) (setq wybrane (ZWCAD:GetKWord "T N" "Kontynuowac? [T/N] <T>" "T" ) )  
  2. Upvote
    jarekw90 otrzymał(a) reputację od kruszynski w Średnia punktów   
    Już wiem gdzie był błąd. Działa ;) Chyba zrozumiałem już mniej więcej o co chodzi.
    (defun c:aaaaa()
    (setq ss (ssget '((0 . "POINT"))))
    (setq n (sslength ss))
    (setq nss 0)
    (princ "zaznaczonych:")
    (princ n)
    (setq pkt1 (list 0 0 0))
    (while (< nss n);nss mniejsze poniewaz numeracja od zera
    (setq ssnam (ssname ss nss)) ; ze zbioru wskazań ss pobiera element o indeksie nr, elementy liczone są od 0
    (setq entgi (entget ssnam )); wybór opisu elementu jako listy dla podanej nazwy elementu
    (setq pkt0 (cdr (assoc 10 entgi)));10 kod punktu wstawienia dla punktu dxf
    (setq pkt1 (list (+(car pkt0) (car pkt1)) (+(cadr pkt0) (cadr pkt1)) (+(caddr pkt0) (caddr pkt1))))
    (setq nss (+ nss 1))
    );end while
    (princ pkt1)
    (setq pkt2 (list (/(car pkt1) n) (/(cadr pkt1) n) (/(caddr pkt1) n)))
    (command "_erase" "_si" ss)
    (command "_point" pkt2)
    );end prog