Reklam

* E Posta Adresiniz:
* Kodu Girin:

Önceki Sayfa [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [15] [20] [25] [30] [35] [40] [45] [50] [55] [60] [65] [70] [75] [80] > 85 <
İleti Yazar
26.03.2018 10:12
86182    
mimarimetraj

[2] Girişimci

Online Durumu

4 ileti

merhaba.
En son 2008 de lisp kullanmıştım. ben hakediş yaparken verileri elle girer ve excel formülleri ile yapardım. fakat şu an tip olmayan duvar metrajları için lisp e ihtiyacım var. 1 haftadır bakınıyorum netten, birçok lisp buldum, sitenizden de olduukça faydalandım (böyle paylaşımlar yaparak o kadar hayır duası alıyorsunuzdur ki...) ama tam olarak istediğim lisp i bulamadım.

1. seçilen line veya polyline ların uzunluklarını başında benim belirttiğim bir poz ismi ile birlikte verecek, ve işaret ettiğim yerde yazacak..
2. her defasında istediğim sıralamadan başlayacak.
3. ve bu verileri (layer, poz, kod, uzunluk) excel e, mümkünse online aktaracak.
(3. aktif şekilde aktaramaz ise bütün yazıları seçtiğimde, ismini benim verdiğim bir excel veya txt dosyası olurtacak. excelde poz ismine göre sıralamayı değiştirebilirim.)
4. uzunluk değerlerini noktada sonra en fazla 2 karakter ile gösterecek.

buna benzer bir lisp buldum ama o alan olarak işliyor, uzunluk değil.

böyle bir lisp mümkün mü bilmiyorum ama zamanım iyice daraldı. yardım edebilirseniz çok sevinirim.

iyi çalışmalar.

26.03.2018 10:44
86183    
mimarimetraj

[2] Girişimci

Online Durumu

4 ileti

Alıntı
mimarimetraj :
merhaba.
En son 2008 de lisp kullanmıştım. ben hakediş yaparken verileri elle girer ve excel formülleri ile yapardım. fakat şu an tip olmayan duvar metrajları için lisp e ihtiyacım var. 1 haftadır bakınıyorum netten, birçok lisp buldum, sitenizden de olduukça faydalandım (böyle paylaşımlar yaparak o kadar hayır duası alıyorsunuzdur ki...) ama tam olarak istediğim lisp i bulamadım.

1. seçilen line veya polyline ların uzunluklarını başında benim belirttiğim bir poz ismi ile birlikte verecek, ve işaret ettiğim yerde yazacak..
2. her defasında istediğim sıralamadan başlayacak.
3. ve bu verileri (layer, poz, kod, uzunluk) excel e, mümkünse online aktaracak.
(3. aktif şekilde aktaramaz ise bütün yazıları seçtiğimde, ismini benim verdiğim bir excel veya txt dosyası olurtacak. excelde poz ismine göre sıralamayı değiştirebilirim.)
4. uzunluk değerlerini noktada sonra en fazla 2 karakter ile gösterecek.

buna benzer bir lisp buldum ama o alan olarak işliyor, uzunluk değil.

böyle bir lisp mümkün mü bilmiyorum ama zamanım iyice daraldı. yardım edebilirseniz çok sevinirim.

iyi çalışmalar.



BU LISP in autocad dosyası üzerinde de uzunluk ve poz numarasını gösterdiği versiyon. ben başka başka lispleri birlieştirerek oluşturmaya çalıştım ama hepsini bozdum


(Defun c:plb ()
(setvar "cmdecho" 0)
(setq dosyaadı (getstring "data dosyası adı giriniz : "))
(setq dosyayeri (strcat (getvar "dwgprefix") dosyaadı ".txt")) ; 1
(terpri)
(setq txt (open dosyayeri "w")) ; 2
(write-line
(strcat "Sıra No" "\t" "Renk" "\t" "Layer" "\t" "Çevre" "\t" "Alan")
txt
) ; 3
(close txt) ; 4
(setq sırano 0)
(while
(setq ent (entsel "\n .......Polyline Seçiniz : ")) ; 5
(setq en (car ent))
(setq enlist (entget en))
(setq objetipi (cdr (assoc 0 enlist))) ; 6
(if (or
(= objetipi "LWPOLYLINE")
(= objetipi "POLYLINE")
) ; 7
(progn
(command "area" "o" en) ; 8
(setq a (getvar "area")) ; 9
(setq per (getvar "perimeter")) ; 10
(setq layer (cdr (assoc 8 enlist))) ; 11
(setq renk (cdr (assoc 62 enlist))) ; 12
(if (= renk nil)
(setq renk 256)
)
(setq txt (open dosyayeri "a")) ; 13
(write-line
(strcat (rtos (+ sırano 1) 2 0)
"\t"
(rtos renk 2 0)
"\t"
layer
"\t"
(rtos per 2 2)
"\t"
(rtos a 2 2)
)
txt
) ; 14
(close txt) ; 15
(setq sırano (+ sırano 1))
)
)
)
)
(Defun cks ()
(alert (strcat dosyayeri " dosyası oluşturuldu"))
)

26.03.2018 11:23
86184    
mimarimetraj

[2] Girişimci

Online Durumu

4 ileti

Alıntı
mimarimetraj :
Alıntı
mimarimetraj :
merhaba.
En son 2008 de lisp kullanmıştım. ben hakediş yaparken verileri elle girer ve excel formülleri ile yapardım. fakat şu an tip olmayan duvar metrajları için lisp e ihtiyacım var. 1 haftadır bakınıyorum netten, birçok lisp buldum, sitenizden de olduukça faydalandım (böyle paylaşımlar yaparak o kadar hayır duası alıyorsunuzdur ki...) ama tam olarak istediğim lisp i bulamadım.

1. seçilen line veya polyline ların uzunluklarını başında benim belirttiğim bir poz ismi ile birlikte verecek, ve işaret ettiğim yerde yazacak..
2. her defasında istediğim sıralamadan başlayacak.
3. ve bu verileri (layer, poz, kod, uzunluk) excel e, mümkünse online aktaracak.
(3. aktif şekilde aktaramaz ise bütün yazıları seçtiğimde, ismini benim verdiğim bir excel veya txt dosyası olurtacak. excelde poz ismine göre sıralamayı değiştirebilirim.)
4. uzunluk değerlerini noktada sonra en fazla 2 karakter ile gösterecek.

buna benzer bir lisp buldum ama o alan olarak işliyor, uzunluk değil.

böyle bir lisp mümkün mü bilmiyorum ama zamanım iyice daraldı. yardım edebilirseniz çok sevinirim.

iyi çalışmalar.



BU LISP in autocad dosyası üzerinde de uzunluk ve poz numarasını gösterdiği versiyon. ben başka başka lispleri birlieştirerek oluşturmaya çalıştım ama hepsini bozdum


(Defun c:plb ()
(setvar "cmdecho" 0)
(setq dosyaadı (getstring "data dosyası adı giriniz : "))
(setq dosyayeri (strcat (getvar "dwgprefix") dosyaadı ".txt")) ; 1
(terpri)
(setq txt (open dosyayeri "w")) ; 2
(write-line
(strcat "Sıra No" "\t" "Renk" "\t" "Layer" "\t" "Çevre" "\t" "Alan")
txt
) ; 3
(close txt) ; 4
(setq sırano 0)
(while
(setq ent (entsel "\n .......Polyline Seçiniz : ")) ; 5
(setq en (car ent))
(setq enlist (entget en))
(setq objetipi (cdr (assoc 0 enlist))) ; 6
(if (or
(= objetipi "LWPOLYLINE")
(= objetipi "POLYLINE")
) ; 7
(progn
(command "area" "o" en) ; 8
(setq a (getvar "area")) ; 9
(setq per (getvar "perimeter")) ; 10
(setq layer (cdr (assoc 8 enlist))) ; 11
(setq renk (cdr (assoc 62 enlist))) ; 12
(if (= renk nil)
(setq renk 256)
)
(setq txt (open dosyayeri "a")) ; 13
(write-line
(strcat (rtos (+ sırano 1) 2 0)
"\t"
(rtos renk 2 0)
"\t"
layer
"\t"
(rtos per 2 2)
"\t"
(rtos a 2 2)
)
txt
) ; 14
(close txt) ; 15
(setq sırano (+ sırano 1))
)
)
)
)
(Defun cks ()
(alert (strcat dosyayeri " dosyası oluşturuldu"))
)




BU LISP alanları poz kod u ile autocad te gösteriyor. bu ikisinin karışımı diyebilirim benim ihtiyacım olan yazılım.


(defun hafo_alan_m2 ()
(if (= cizim_birim nil)
(progn
(initget 1 "mEtre Cm Mm")
(setq cizim_birim (getkword "Cizim birimimiz ne? [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 "Yazi yuksekligi ne olsun? :< " (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:alan_topla ()
(setvar "modemacro" "Hafzullah YILDIRIM 2016")
(setvar "cmdecho" 0)
(hafo_alan_m2)
(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 "Peki aciklama olarak ne yazayim? :"))
(setq m2_yer (getpoint "Son olarak nereye yazayim yer goster bana ?:"))
(if (= m2_yer nil)
(progn
(princ "Yer gostermezsen bende yazmam."))
(progn
(command "text" m2_yer "0" m2_aciklama)
(command "text" "" (strcat (rtos m2_toplam 2 2) " m2"))
(princ (strcat "\nToplam alan "(rtos m2_toplam 2 2)" m2"))
(princ)
))))(princ))
(PRINC "Yukleme tamamlandi. Hafzullah YILDIRIM")

26.03.2018 16:55
86185    
ehya

[90] Yönetici

Online Durumu

3178 ileti
Teknik Ressam
Ankara

Benim yazdığım lispin altına ismini yazıp sahiplenen Hafzullah YILDIRIM kimdir?

26.03.2018 17:58
86186    
Travaci

[70] Editör

Online Durumu

2077 ileti
Teknik Ressam
Konstantinopol

ehya


Abi sen yanlış anladın, bu versiyon 2016 ama : )

26.03.2018 18:14
86187    
ehya

[90] Yönetici

Online Durumu

3178 ileti
Teknik Ressam
Ankara

Ben zaten hep bu yanlış anlamalardan kaybediyorum
Şahsı hatırladım. Sitesinde bu lispi yayınlamıştı. O zaman uyarıda bulunmuştum. Şimdi tekrar baktım hala silmemiş.
Artık gereken bir şekilde uyarımı burdan da yapayım.

Hafzullah YILDIRIM adlı şahıs kendi yazmadığı lisplere adını yazarak sahtekarlık yapmakta ve bu konuda kendi reklamını yapmaktadır.

28.03.2018 09:35
86192    
mimarimetraj

[2] Girişimci

Online Durumu

4 ileti

Tanımam kendisini.
yalnız yukarıdaki mesajda yazdığım Lisp için yardımcı olabilecek misiniz??? konu saptı

Alıntı
ehya :
Benim yazdığım lispin altına ismini yazıp sahiplenen Hafzullah YILDIRIM kimdir?

28.03.2018 10:37
86193    
Travaci

[70] Editör

Online Durumu

2077 ileti
Teknik Ressam
Konstantinopol

Alıntı
mimarimetraj

İsteğin Buradaki gibi birşey olabilirmi ?

Herzaman sitede tam istediğinizi bulamayabilirsiniz, elimizden geldiğince zaman zaman kod paylaşıyoruz, genele değilde kişiye hitap eden programlar ücret karşılığı yazılır.

07.06.2018 16:03
86385    
oezcan

[2] Girişimci

Online Durumu

11 ileti

Seçtiğimiz kapalı Polyline'ın merkezinde nokta oluşturan şöyle bir lisp var,

(defun c:CnTr (/ vLo x y z m n)
(vl-load-com) (princ "\nMerkezi bulunacak LwPolyline objesi seçiniz: ")
(setq vLo (vlax-ename->vla-object
(ssname (ssget ":s" (list (cons 0 "LwPoLyLine"))) 0))
x 0 y 0 z (vlax-get-property vLo 'Elevation)
pLs (vlax-safearray->list
(vlax-variant-value
(vlax-get-property vLo 'Coordinates)))
m (length pLs) n (/ m 2))
(while (not (minusp (setq m (- m 2))))
(setq x (+ x (nth m pLs)) y (+ y (nth (1+ m) pLs))))
(entmake (list (cons 0 "Point") (cons 10 (list (/ x n) (/ y n) z)))))


Sorunum bunu toplu olarak uygulayamamak.Yüzlerce polyline var çizimimde her birinin merkezine nokta koymak istyorum.Buna uygun bir değişiklik yapmanız mümkün olur mu?

(Yukarıdaki lisp'i cizimokulundan bulmustum ancak sahibini hatırlamıyorum)

Teşekkürler

08.06.2018 03:01
86386    
alumina

[70] Editör

Online Durumu

599 ileti
Insaat Muhendisi
Istanbul

Alıntı
oezcan :


Kod:

(defun c:pt (/ dc ms ns m n) (vl-load-com)
  (if (setq dc (vla-get-activedocument (vlax-get-acad-object))
        ms (vla-get-modelspace dc) ns (ssget
          '((0 . "lwpolyline") (70 . 1))))
    (progn (vla-startundomark dc)
      (repeat (setq m (sslength ns))
        (vlax-invoke ms 'addregion (list (vlax-ename->vla-object
          (ssname ns (setq m (1- m))))))
        (vla-addpoint ms (vlax-3d-point (vlax-get (setq n
          (vlax-ename->vla-object (entlast))) 'Centroid)))
        (vla-delete n)) (vla-endundomark dc)
    )
  ) (prin1)
)

08.06.2018 11:12
86387    
oezcan

[2] Girişimci

Online Durumu

11 ileti

Alıntı
alumina :
Alıntı
oezcan :


Kod:

(defun c:pt (/ dc ms ns m n) (vl-load-com)
  (if (setq dc (vla-get-activedocument (vlax-get-acad-object))
        ms (vla-get-modelspace dc) ns (ssget
          '((0 . "lwpolyline") (70 . 1))))
    (progn (vla-startundomark dc)
      (repeat (setq m (sslength ns))
        (vlax-invoke ms 'addregion (list (vlax-ename->vla-object
          (ssname ns (setq m (1- m))))))
        (vla-addpoint ms (vlax-3d-point (vlax-get (setq n
          (vlax-ename->vla-object (entlast))) 'Centroid)))
        (vla-delete n)) (vla-endundomark dc)
    )
  ) (prin1)
)




Cevabınız için teşekkür ederim öncelikle.Malesef seçim yapamıyorum.Çizimleri daha iyi anlatabilmek adına şöyle bir görsel var.Şekillerin hepsi polyline, 3D modunda.

Önceki Sayfa [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [15] [20] [25] [30] [35] [40] [45] [50] [55] [60] [65] [70] [75] [80] > 85 <
Copyright © 2004-2018 | Tüm Hakları Saklıdır | 3116 | Site haritası | İstatistikler | Hakkımızda | Kadromuz | Gizlilik | Reklam