28.04.2010 07:49    

cetinerdal
Arkadaşlar line üzerine uzunluk yazan lispi kullanıyorum öncelikle yapan arkadaşa çok teşekkür ederim..Benim isteğim acaba bu üzerine uzunluğunu yazdığımız line ile aynı renkte yapabilirmi texti bunu öğrenmek istiyorum..

cetinerdal (28.04.2010 08:08 GMT)

28.04.2010 08:31    

ehya
Kod:

(defun c:uy ()
(setq uy_os (getvar "osmode"))
(setq uy_sec nil)
(setq uy_sec (ssget (list (cons 0 "LINE"))))
(if (= uy_sec nil)
(progn
(princ "
Nesne seçimi yok. Komut bitirildi..."))
(progn
(if (= uy_yaz_yuk nil)(setq uy_yaz_yuk 12))
(initget 2)
(setq uy_yaz_y (getdist (strcat "
Yazılacak yazının Yüksekliği:<" (rtos uy_yaz_yuk) ">:")))
(if (= uy_yaz_y nil)(setq uy_yaz_y uy_yaz_yuk))
(setq uy_yaz_yuk uy_yaz_y)
(setq uy_c 0)
(setq uy_say (sslength uy_sec))
(while (< uy_c uy_say)
(setq uy_sec_tek (ssname uy_sec uy_c))
(setq uy_sec_tek_10 (cdr (assoc 10 (entget uy_sec_tek)))
uy_sec_tek_11 (cdr (assoc 11 (entget uy_sec_tek))))
  (setq uy_renk (cdr (assoc 62 (entget uy_sec_tek))))
  (setq uy_katman (cdr (assoc 8 (entget uy_sec_tek))))
(setq uy_sec_tek_mes (distance uy_sec_tek_10 uy_sec_tek_11))
(setq uy_sec_tek_10_x (car uy_sec_tek_10)
uy_sec_tek_10_y (cadr uy_sec_tek_10)
uy_sec_tek_11_x (car uy_sec_tek_11)
uy_sec_tek_11_y (cadr uy_sec_tek_11))
(setq uy_yaz_x (/ (+ uy_sec_tek_10_x uy_sec_tek_11_x) 2.00)
uy_yaz_y (/ (+ uy_sec_tek_10_y uy_sec_tek_11_y) 2.00)
uy_yaz (list uy_yaz_x uy_yaz_y))
(if (< uy_sec_tek_10_x uy_sec_tek_11_x)
(progn
(setq uy_sec_aci_bas uy_sec_tek_10)
(setq uy_sec_aci_son uy_sec_tek_11)
)
(progn
(setq uy_sec_aci_bas uy_sec_tek_11)
(setq uy_sec_aci_son uy_sec_tek_10)))
(setq uy_sec_tek_aci (angle uy_sec_aci_bas uy_sec_aci_son))
(command "style" "cizgiyazi" "" "" "" "" "" "" "")
(command "osnap" "node")
(command "text" "j" "bc" uy_yaz uy_yaz_yuk (angtos uy_sec_tek_aci) (rtos uy_sec_tek_mes))
  (setq las (entlast))
  (if (/= uy_renk nil)
  (command "_.change" las "" "p" "color" uy_renk "")
  (command "_.change" las "" "p" "layer" uy_katman ""))
(setq uy_c (+ uy_c 1))
)))(setvar "osmode" uy_os)(princ))
(princ "
Komutu çalıştırmak için [UY] yazın")(princ)

ehya (28.04.2010 09:22 GMT)

28.04.2010 08:49    

cetinerdal
Olmadı ehya... Emeğin için teşekkür ederim ama olmadı :(

Anladığım kadarıyla layer ı alıyo ama benim istediğim rengi çünkü tek layer çok renk var o yüzden böyle bişey istiyorum...

cetinerdal (28.04.2010 09:04 GMT)

28.04.2010 09:22    

ehya
katman kullanmadığınızı baştan belirtmelisiniz.
neyse alıştık artık böyle şeylere..

lispi tekrar alabilirsin.

28.04.2010 09:30    

cetinerdal
çok teşekkür ederim ehya :) bir öncekini sildim acaba onuda gönderirimisin tekrar oda katmanlı olanda işime ileride yarar...eline sağlık tekrar

28.04.2010 10:18    

ehya
bu lisp ikisini de yapıyor.
çizginin rengi var ise öncelikle renk seçeneğini dikkate alıyor.
eğer rengi Bylayer ise katmanı dikkate alıyor.

28.04.2010 12:08    

cetinerdal
Anladım teşekkür ederim.

> 1 <
Copyright © 2004-2022 SQL: 1.003 saniye - Sorgu: 61 - Ortalama: 0.01644 saniye