29.01.2021 21:10    

alumina
Alıntı
kronx :

Sayimda, blok ismi listede varsa, blok sayisi yanindaki katsayi ile carpilir, yoksa mevcut blok sayisi alinir. Listede ahsap icin 5 ve celik icin 7 katsayilari var. Bu listeye istediginiz malzeme ve katsayilari ekleyebilirsiniz.

Kod:

(defun c:qw (/ bl ns z bn sr ls)
  (if (setq bl '(("Ahsap" 5) ("Celik" 7))
        ns (ssget '((0 . "insert"))))
    (progn
      (repeat (setq z (sslength ns))
        (setq z (1- z)
          bn (cdr (assoc 2 (entget (ssname ns z))))
          sr (vl-position bn (mapcar 'car ls))
          ls (if sr (subst (list (car
            (setq sr (nth sr ls)))
              (1+ (cadr sr))) sr ls)
                (cons (list bn 1) ls))))
      (foreach m ls
        (setq sr (vl-position (car m)
          (mapcar 'car bl)))
        (princ (strcat "\n" (car m)
          " = " (rtos (* (cadr m)
            (if sr (cadr (nth sr bl)) 1.)) 2 0)))
      )
    )
  ) (princ)
)

30.01.2021 17:16    

kronx
emeğiniz için çok teşekkürler

Alıntı
alumina :
Alıntı
kronx :

Sayimda, blok ismi listede varsa, blok sayisi yanindaki katsayi ile carpilir, yoksa mevcut blok sayisi alinir. Listede ahsap icin 5 ve celik icin 7 katsayilari var. Bu listeye istediginiz malzeme ve katsayilari ekleyebilirsiniz.

Kod:

(defun c:qw (/ bl ns z bn sr ls)
  (if (setq bl '(("Ahsap" 5) ("Celik" 7))
        ns (ssget '((0 . "insert"))))
    (progn
      (repeat (setq z (sslength ns))
        (setq z (1- z)
          bn (cdr (assoc 2 (entget (ssname ns z))))
          sr (vl-position bn (mapcar 'car ls))
          ls (if sr (subst (list (car
            (setq sr (nth sr ls)))
              (1+ (cadr sr))) sr ls)
                (cons (list bn 1) ls))))
      (foreach m ls
        (setq sr (vl-position (car m)
          (mapcar 'car bl)))
        (princ (strcat "\n" (car m)
          " = " (rtos (* (cadr m)
            (if sr (cadr (nth sr bl)) 1.)) 2 0)))
      )
    )
  ) (princ)
)


Önceki Sayfa [1] [2] > 3 <
Copyright © 2004-2022 SQL: 0.684 saniye - Sorgu: 46 - Ortalama: 0.01486 saniye