26.03.2009 16:28    

admin
Seçilen nesnelerin alanlarını toplayıp istenilen bi açıklama ile ekranda istediğiniz yere yazdırabileceğiniz bir lisp...

Aşağıdaki lisp kodlarını kullanmak için komut: m2

Kod:

(defun m2_br_sec ()
  (if (= cizim_birim nil)
  (progn
(initget 1 "mEtre Cm Mm")   
(setq cizim_birim (getkword "
Çizim Birimini seçiniz [mEtre / Cm / Mm]:")))))
(defun m2_stil ()
    (setq m2_stil_ara (tblsearch "style" "m2"))
    (if (= m2_stil_ara nil)
      (progn
(setq m2_yaz_yuk 12)
(setq m2_yaz_y (getdist (strcat "
Yazı Yüksekliği:< " (rtos m2_yaz_yuk) ">:")))
(if (= m2_yaz_y nil)
  (setq m2_yaz_y m2_yaz_yuk))
(setq m2_yaz_yuk m2_yaz_y)
(command "style" "m2" "arial.ttf" m2_yaz_yuk  "0.8" "" "" ""))))
(defun c:m2 ()
(setvar "modemacro" "Archme Design 2008 © by --> EhYa <--")
(setvar "cmdecho" 0)
(m2_br_sec)
    (if (= cizim_birim "mEtre")
      (progn
      (setq m2_bol 100)))

(if (= cizim_birim "Cm")
      (progn
      (setq m2_bol 10000)))
  (if (= cizim_birim "Mm")
      (progn
      (setq m2_bol 1000000)))
(setq m2_secim (ssget '((-4 . "<OR")
      (0 . "LWPOLYLINE")
      (0 . "POLYLINE")
      (0 . "CIRCLE")
      (0 . "ELLIPSE")
      (0 . "SPLINE")
      (0 . "REGION")
      (0 . "3DSOLID")
      (-4 . "OR>"))))
(if (= m2_secim nil)
  (progn
    (princ))
  (progn
    (setq m2_secim_say (sslength m2_secim))
    (setq m2_c 0)
    (setq m2_toplam 0)
    (while (< m2_c m2_secim_say)
      (setq m2_secim_tek (ssname m2_secim m2_c))
      (command "area" "e" m2_secim_tek)
      (setq m2_tek_alan (/ (getvar  "area") m2_bol))
      (setq m2_toplam (+ m2_toplam m2_tek_alan))
      (setq m2_c (+ m2_c 1)))
(m2_stil)
(setq m2_aciklama (getstring t "
Yazılacak metni yazınız:"))
(setq m2_yer (getpoint "
Yer Gösterin:"))
(if (= m2_yer nil)
(progn
  (princ "
Yer gösterilmediği için komut bitirildi !!!..."))
  (progn
    (command "text" m2_yer "0" m2_aciklama)
    (command "text" "" (strcat (rtos m2_toplam 2 2) " m2"))
  ))))(princ))
(PRINC "--> 'www.autocadokulu.com' Çizim yardımları yüklendi !")

Bu kodları nasıl kullanacağınızı bilmiyorsanız aşağıdaki linkten;
AutoLISP > Konu Anlatımları > Lisp Dosyalarının oluşturulması ve Yüklenmesi


Linkleri görebilmek için ÜYE olmalısınız.


konusunu inceleyiniz.

admin (09.04.2009 20:56 GMT)

09.04.2009 16:11    

sgadarkelf
ya lipslerin nasıl çalışacağına dair kodu yazmamışınız
ne yazcazda çalışcak bu lisp?

09.04.2009 20:42    

ehya
Lisp içerisinde (defun c:m2 () bölümü bulun. Burada koyu olarak belirttiğim gibi "c:" den sonraki yazı lispi çalıştırma komutudur. Bu lispi çalıştırma komutu M2 dir

09.04.2009 20:58    

admin
Lisp in komutunu yazmayı unutmuşum, konuyu düzelterek lispin kullandığı kısayolu ekledim :)

03.07.2009 13:33    

rodymyccc
sağol kanki

02.09.2009 14:46    

lostswordfish
hepsi tamamda alanları toplamını nasıl gösteriyor onu yapamadım.

20.05.2010 11:22    

matasi
topladıgı alanı nerey yazar bu komut yardım arkadaşlar

18.08.2010 05:39    

bud_0782
teşekkürler

23.11.2010 10:21    

handanturan
ben yükleyemedim ya. orjinalini doğrusunu bi daha gönderirimisin. yemek tarifi gibi olmasın. tam olarak yaz biz öyle yükleyelim.

23.02.2011 22:52    

mimarzeki
Arkadaslar biurturlu alan hesaplama lispini yukleyemedim.
2009 ingilizce autocad im var ama bir turlu yukleyemedim.

command: _appload area.Lsp successfully loaded.
command: ; error: bad character read (octal): 0

hep bu hatayi veriyor.
yardimci olabilir misiniz?

25.03.2011 09:18    

fk7878
Teşekkürler :)))

07.05.2011 07:09    

oguzhangirgin
Ya çok iyi oldu tamda aradığım buydu valla..
bununla birlikte seçili nesnelerin alanını autocad yerine excele yazan bişey olsa o zaman benim için "yemede yanında yat" gibi bişey olacaktı :))
ellerine sağlık çok teşekkür ederizz..

06.07.2011 08:35    

hsyn-06
Arkadaşım lisp sounsuz çalışıyor yanlız 15.10 m2 olaması gereken yere 15.1 m2 atıyor yanı '' 0 '' yok sayıyor bunla ılgılı bi düzeltme yapabilirmiyiz acil yardım



şimdiden emeklerinizden dolayı tşk.

06.07.2011 08:43    

ehya
dimzin değerini 0 yap

06.07.2011 09:20    

hsyn-06
Alıntı
ehya :
dimzin değerini 0 yap



( ehya )

kardeşim bana yardımcı olabilirmisin daha yeni öğrenmekteyim söylemiş olduğunu tam anlamıyla yapamadım burdan göstermen mümkünmü ??? tşk emeklerinden dolayı




(defun m2_br_sec ()
(if (= cizim_birim nil)
(progn
(initget 1 "mEtre Cm Mm")
(setq cizim_birim (getkword "
Çizim Birimini seçiniz [mEtre / Cm / Mm]:")))))
(defun m2_stil ()
(setq m2_stil_ara (tblsearch "style" "m2"))
(if (= m2_stil_ara nil)
(progn
(setq m2_yaz_yuk 12)
(setq m2_yaz_y (getdist (strcat "
Yazı Yüksekliği:< " (rtos m2_yaz_yuk) ">:")))
(if (= m2_yaz_y nil)
(setq m2_yaz_y m2_yaz_yuk))
(setq m2_yaz_yuk m2_yaz_y)
(command "style" "m2" "arial.Ttf" m2_yaz_yuk "0.8" "" "" ""))))
(defun c:m2 ()
(setvar "modemacro" "archme design 2008 © by --> ehya <--")
(setvar "cmdecho" 0)
(m2_br_sec)
(if (= cizim_birim "metre")
(progn
(setq m2_bol 100)))

(if (= cizim_birim "cm")
(progn
(setq m2_bol 10000)))
(if (= cizim_birim "mm")
(progn
(setq m2_bol 1000000)))
(setq m2_secim (ssget '((-4 . "<or")
(0 . "lwpolylıne")
(0 . "polylıne")
(0 . "cırcle")
(0 . "ellıpse")
(0 . "splıne")
(0 . "regıon")
(0 . "3dsolıd")
(-4 . "or>"))))
(if (= m2_secim nil)
(progn
(princ))
(progn
(setq m2_secim_say (sslength m2_secim))
(setq m2_c 0)
(setq m2_toplam 0)
(while (< m2_c m2_secim_say)
(setq m2_secim_tek (ssname m2_secim m2_c))
(command "area" "e" m2_secim_tek)
(setq m2_tek_alan (/ (getvar "area") m2_bol))
(setq m2_toplam (+ m2_toplam m2_tek_alan))
(setq m2_c (+ m2_c 1)))
(m2_stil)
(setq m2_aciklama (getstring t "
yazılacak metni yazınız:"))
(setq m2_yer (getpoint "
yer gösterin:"))
(if (= m2_yer nil)
(progn
(princ "
yer gösterilmediği için komut bitirildi !!!..."))
(progn
(command "text" m2_yer "0" m2_aciklama)
(command "text" "" (strcat (rtos m2_toplam 2 2) " m2"))
))))(princ))
(prınc "--> 'www.autocadokulu.com' çizim yardımları yüklendi !")

06.07.2011 09:25    

ehya
kod içine yazmana gerek yok
komut olarak kendin de yazabilirsin
ama illa kod içine yazacağım diyorsan

ikinci satıra
(setvar "dimzin" 0)
kodunu yaz.

06.07.2011 09:30    

hsyn-06
Alıntı
ehya :
kod içine yazmana gerek yok
komut olarak kendin de yazabilirsin
ama illa kod içine yazacağım diyorsan

ikinci satıra
(setvar "dimzin" 0)
kodunu yaz.



kardeşim emeğine sağlık çok tşk

(+ birşey daha isteyebilirmiyim ''m2'' olan kısmı sembol olarak ''m²'' olmasını itiyorum m üstü kare şeklinde )

06.07.2011 09:46    

ehya
Aşağıdaki satırda m2 ifadesi var. onu kod içinde bul ve istediğin gibi değiştir.

(command "text" "" (strcat (rtos m2_toplam 2 2) " m2"))

06.07.2011 10:15    

hsyn-06
Alıntı
ehya :
Aşağıdaki satırda m2 ifadesi var. onu kod içinde bul ve istediğin gibi değiştir.

(command "text" "" (strcat (rtos m2_toplam 2 2) " m2"))



EMEĞİNE SAĞLIK KARDEŞİM SAĞOLASIN YANLIZ AUTO CAD DOSYAMI KAPAYIP AÇTIKTAN SONRA LİSP BİRDAHA KULLANAMIYORUM TEKRAR YÜKLEMEM GEREKİYE NEDEN ACABA ????? NERDE YANLIŞ YAPIYORUM

06.07.2011 10:38    

ehya
Alıntı
hsyn-06 :
Alıntı
ehya :
Aşağıdaki satırda m2 ifadesi var. onu kod içinde bul ve istediğin gibi değiştir.

(command "text" "" (strcat (rtos m2_toplam 2 2) " m2"))



EMEĞİNE SAĞLIK KARDEŞİM SAĞOLASIN YANLIZ AUTO CAD DOSYAMI KAPAYIP AÇTIKTAN SONRA LİSP BİRDAHA KULLANAMIYORUM TEKRAR YÜKLEMEM GEREKİYE NEDEN ACABA ????? NERDE YANLIŞ YAPIYORUM





Teşekkür ederim de, bu forumda kardeşim, bilader v.S. gibi kelimelerin kullanılmaması daha uygun olur.. malum yaşı büyük abilerimiz ve hocalarımızda forumda katkıda bulunuyor.

az önce bu isteğin ile ilgili konu açtın ve bende sildim. sebebi ise konuyu açmadan 2dk önce bir önceki konuya sorununun cevabını yazmıştım. bi zahmet en azından ana sayfadaki konulara göz atarsanız sorunuzun cevabını bulacaksınız.

Copyright © 2004-2022 SQL: 1.558 saniye - Sorgu: 100 - Ortalama: 0.01558 saniye