* E Posta Adresiniz:
* Kodu Girin:

İleti Yazar
13.04.2011 12:26
63862    
ProhibiT

[80] Yetkili

Online Durumu

1469 ileti
İnşaat Mühendisi
Ankara

Çok basit aslında
Kod:

;;;==============================================
;;;  Hazırlayan, M. Şahin Güvercin - 13-04-2011 
;;;==============================================
(write-line "\nHazırlayan, M. Şahin Güvercin - www.autocadokulu.com")
(defun c:BboX (/ fLo n obj mnp mxp ebat)
  (setvar "cmdecho" 0) (command "undo" "group") (vl-load-com)
  (setq fLo (open (getfiled "Çıkış Kütüğü" "" "csv" 9) "w") n 0)
  (write-line "PARÇA NO;Delta X;Delta Y;Delta Z" fLo)
  (while (setq obj (car (entsel "\nSelect 3DSoLid Object...")))
    (if (= "3DSOLID" (cdr (assoc 0 (entget obj))))
      (progn
        (setq obj (vlax-ename->vla-object obj))
        (vla-getboundingbox obj 'mnp 'mxp)
        (setq mnp (vlax-safearray->list mnp)
              mxp (vlax-safearray->list mxp)
              ebat (mapcar '(lambda (p1 p2) (abs (- p1 p2))) mnp mxp))
        (write-line (strcat (itoa (setq n (1+ n))) ";"
                      (rtos (nth 0 ebat)) ";"
                      (rtos (nth 1 ebat)) ";"
                      (rtos (nth 2 ebat))) fLo))
      (write-line "\n*** Seçilen obje 3DSoLid olmalıdır. ***")))
  (write-line (strcat "\n  " (itoa n) " tane obje boyutu yazıldı."))
  (close fLo) (setvar "modemacro" "") (command "undo" "e") (prin1)
)
Obje seçmeye devam ettiğiniz sürece dosyaya ebat yazmaya devam eder.

kolay gelsin.

düzenleme:
bu fonksiyonu bir de böyle deneyin. dosyayı excel ile açarken, bir hata mesajı alırsanız "evet" seçip devam etmelisiniz.
Kod:

;;;==============================================
;;;  Hazırlayan, M. Şahin Güvercin - 13-04-2011 
;;;==============================================
(write-line "\nHazırlayan, M. Şahin Güvercin - www.autocadokulu.com")
(defun c:BboX (/ fLo n obj mnp mxp ebat)
  (setvar "cmdecho" 0) (command "undo" "group") (vl-load-com)
  (setq fLo (open (getfiled "Çıkış Kütüğü" "" "xls" 9) "w") n 0)
  (write-line "PARÇA NO\tDelta X\tDelta Y\tDelta Z" fLo)
  (while (setq obj (car (entsel "\nSelect 3DSoLid Object...")))
    (if (= "3DSOLID" (cdr (assoc 0 (entget obj))))
      (progn
        (setq obj (vlax-ename->vla-object obj))
        (vla-getboundingbox obj 'mnp 'mxp)
        (setq mnp (vlax-safearray->list mnp)
              mxp (vlax-safearray->list mxp)
              ebat (mapcar '(lambda (p1 p2) (abs (- p1 p2))) mnp mxp))
        (write-line (strcat (itoa (setq n (1+ n))) "\t"
                      (rtos (nth 0 ebat)) "\t"
                      (rtos (nth 1 ebat)) "\t"
                      (rtos (nth 2 ebat))) fLo))
      (write-line "\n*** Seçilen obje 3DSoLid olmalıdır. ***")))
  (write-line (strcat "\n  " (itoa n) " tane obje boyutu yazıldı."))
  (close fLo) (setvar "modemacro" "") (command "undo" "e") (prin1)
)

ProhibiT (13.05.2011 06:28 GMT)

Where there is a will, there is a way... Beğenmek için anlamak lazım...

13.04.2011 17:51
63869    
yst

[2] Girişimci

Online Durumu

5 ileti
mimar
Muğla

Sn. prohibit,
teşekkür ederim ilginize, tıklayıp seçmek yerine tüm bloklar için aynı işlemi yapması ve blok adlarını da numaraların yanına yazması mümkün olabilir mi acaba.
saygılarımla...

yst (13.04.2011 18:22 GMT)

13.04.2011 18:56
63871    
ProhibiT

[80] Yetkili

Online Durumu

1469 ileti
İnşaat Mühendisi
Ankara

Blok diye bahsettiğiniz 3dsolid olsa gerek. autocad'de block kavramı bambaşka bir şeydir. 4-5 tane objeden bahsettiğiniz için böyle seçerek çalışmayı tercih ettim. ve aslına bakarsanız örnek olması için yazdım. bahsettiğiniz şekilde toplu işlem yapacak şekilde düzenlemeler yapmak maksadı aşan işlerle uğraşmak olur benim için... kolay gelsin.

Where there is a will, there is a way... Beğenmek için anlamak lazım...

13.04.2011 19:49
63873    
yst

[2] Girişimci

Online Durumu

5 ileti
mimar
Muğla

Sn.Prohibit,
yardımlarınız için teşekkür ederim, bana bir başlangıç verdiniz, üzerinde çalışacağım ve yardım gerekirse yine yazacağım.
amacım, maksadını aşan işler değil, sizin de dediğiniz gibi, "ıf there is a will, there is a way."
size de kolay gelsin.
saygılarımla.

15.04.2011 05:48
63894    
makifyayan

[2] Girişimci

Online Durumu

1 ileti
elektrik mühendisi
antalya

Slm bana öle bi lisp lazım ki çizm yaptıgım dwgdeki offset degeri ile fillet-r degeri dwg yi sonradan acıtıgmda aynı kalsın.?

15.04.2011 14:05
63897    
HIPHOP

[5] Uzman

Online Durumu

72 ileti
TEKNİK RESSAM
İSTANBUL

Spline'ı line'a çeviren bir lisp var mı? veya yöntem.

__________________________________

old school is cool

15.04.2011 14:12
63898    
ehya

[90] Yönetici

Online Durumu

3273 ileti
Teknik Ressam
Ankara

Alıntı
HIPHOP :
Spline'ı line'a çeviren bir lisp var mı? veya yöntem.



Yeni sürümlerde PEDIT komutu ile pline nesnesine çevir. sonra patlat.

eski sürümlerde ise flatten komutu ile aynı şekilde pline nesnesine çevirip patlatabilirsin.

18.04.2011 18:42
63960    
cordoba205

[2] Girişimci

Online Durumu

1 ileti
öğrenci
mersin

Linye numarası lispi varmı.Otomatik olarak linye numarası vermek için

23.04.2011 16:58
64005    
yst

[2] Girişimci

Online Durumu

5 ileti
mimar
Muğla

Selamlar,
yaklaşık 20 blok ile oluşturduğum, 100 civarında çizimim var. 20 blokta yapacağım değişiklikleri bu 100 çizime teker teker açıp blok güncellemesi yapmadan, daha kısa bir yoldan yapabilmek mümkün mü acaba? (blok ve çizimler 3 boyutludur.)
ilginize teşekkürler.

23.04.2011 18:35
64006    
ProhibiT

[80] Yetkili

Online Durumu

1469 ileti
İnşaat Mühendisi
Ankara

100 çizminize 20 block'u xref ile insert etmiş olsaydınız, her açılışında çiziminizdeki blocklar kendiliğinden güncellenecekti. eğer iş işten geçti böyle yapmadınızsa, biraz daha detay yazarsanız, başka çözüm yolları da bulunabilir. kolay gelsin.

Where there is a will, there is a way... Beğenmek için anlamak lazım...

23.04.2011 19:48
64007    
yst

[2] Girişimci

Online Durumu

5 ileti
mimar
Muğla

Sn. prohibit,
iyi akşamlar. dün itibariyle çizimleri oluşturmaya başladım. ileride değişklik gerekirse ne yaparım diye aklıma geldi bugün. az önce de 50.Yi tamamladım. blok dosyalarını açsam, xref verebilirmiyim?
ınsert ederken mi xref vermek gerekiyor? blok adı zaten belli ama...
blok dosyalarında 3b solid nesneleri var. çizimlerde de blok olarak duruyorlar.
size de kolay gelsin. teşekkür ederim.

30.04.2011 23:18
64108    
sersa34

[2] Girişimci

Online Durumu

2 ileti
Teknik Ressam
sakarya

Iyi günler ben alüminyum profil imalatındayım...Burdan bulduğum lisp büyük ve küçük polyline seçimini öngörüyordu..Ben ise dışını seçtikten sonra içinde 2-3-4-5 obje daha olabilecek parçalar için kesit alanını hesaplayacak birim mm2 olacak ve alüminyum özgül ağırlığı olarak2.71 olacak şekilde 1 m (1000 mm olarak) ağırlığını verecek şekilde lisp yapılırmı bunu öğrenmek istiyorum yardımcı olursanız sevinirim saygılarımla
ayrıca bu değerleri otomatik olarak bir antete koyabilirmiyiz bir yolu varmı teşekkürler...

ProhibiT (01.05.2011 02:54 GMT)

01.05.2011 03:24
64112    
ProhibiT

[80] Yetkili

Online Durumu

1469 ileti
İnşaat Mühendisi
Ankara

Bazı durumlarda burada istek üzerine autolisp veya visula lisp fonksiyonlar yazıp paylaşıyoruz. bunu okur yazar arkadaşların yetişmesine yardımcı olmak amacıyla yapıyoruz. bazen de konu genel geçer bir ihtiyaca cevap verdiğinde yazabiliyoruz. bahsettiğiniz konuda bir fonksiyon yazmanın sanat değeri olacağına inanmıyorum affınıza mağruren.

bahsettiğiniz konuyu standart autocad komutlarıyla çok kolaylıkla halledebilirsiniz.

- area komutunun add ve subtract area özelliklerini kullanarak profilinizin alanını tek komutla bulabilirsiniz.

- bahsettiğiniz polyline gurubunu ele alıp, "bpoly" komutunu kullanarak ve pick point olarak dolu kısımda bir nokta seçerek bir "region" oluşturun. daha sonra da "massprop" komutuyla doğrudan doğruya dolu kısmınızın alanını bulabilirsiniz.

kolay gelsin.

Where there is a will, there is a way... Beğenmek için anlamak lazım...

01.05.2011 09:46
64113    
sersa34

[2] Girişimci

Online Durumu

2 ileti
Teknik Ressam
sakarya

Sayın prohibit zaten bende dediğiniz şekilde kullanmaktayım ama yeni arkadaşlar var ve işlerimiz yoğun bazen bu tip hatalar yapılıyor yazıya dökerken bu nedenle hataların önüne bir nebze olsun geçebilmek adına böyle bir istekde bulunmuştum saygılarımla emeğinize sağlık

ProhibiT (01.05.2011 11:25 GMT)

12.05.2011 06:47
64292    
reckaraca

[2] Girişimci

Online Durumu

11 ileti
Mobilya ve Dekorasyon Teknikeri
ÇORUM

Çok basit aslında
Kod:

;;;==============================================
;;;  hazırlayan, m. şahin güvercin - 13-04-2011
;;;==============================================
(write-line "\nhazırlayan, m. şahin güvercin - www.autocadokulu.com")
(defun c:bbox (/ flo n obj mnp mxp ebat)
  (setvar "cmdecho" 0) (command "undo" "group") (vl-load-com)
  (setq flo (open (getfiled "çıkış kütüğü" "" "csv" 9) "w") n 0)
  (write-line "parça no;delta x;delta y;delta z" flo)
  (while (setq obj (car (entsel "\nselect 3dsolid object...")))
    (if (= "3dsolıd" (cdr (assoc 0 (entget obj))))
      (progn
        (setq obj (vlax-ename->vla-object obj))
        (vla-getboundingbox obj 'mnp 'mxp)
        (setq mnp (vlax-safearray->list mnp)
              mxp (vlax-safearray->list mxp)
              ebat (mapcar '(lambda (p1 p2) (abs (- p1 p2))) mnp mxp))
        (write-line (strcat (itoa (setq n (1+ n))) ";"
                      (rtos (nth 0 ebat)) ";"
                      (rtos (nth 1 ebat)) ";"
                      (rtos (nth 2 ebat))) flo))
      (write-line "\n*** seçilen obje 3dsolid olmalıdır. ***")))
  (write-line (strcat "\n  " (itoa n) " tane obje boyutu yazıldı."))
  (close flo) (setvar "modemacro" "") (command "undo" "e") (prin1)
)

obje seçmeye devam ettiğiniz sürece dosyaya ebat yazmaya devam eder.

kolay gelsin.

düzenleme:
bu fonksiyonu bir de böyle deneyin. dosyayı excel ile açarken, bir hata mesajı alırsanız "evet" seçip devam etmelisiniz.
Kod:

;;;==============================================
;;;  hazırlayan, m. şahin güvercin - 13-04-2011
;;;==============================================
(write-line "\nhazırlayan, m. şahin güvercin - www.autocadokulu.com")
(defun c:bbox (/ flo n obj mnp mxp ebat)
  (setvar "cmdecho" 0) (command "undo" "group") (vl-load-com)
  (setq flo (open (getfiled "çıkış kütüğü" "" "xls" 9) "w") n 0)
  (write-line "parça no;delta x\tdelta y\tdelta z" flo)
  (while (setq obj (car (entsel "\nselect 3dsolid object...")))
    (if (= "3dsolıd" (cdr (assoc 0 (entget obj))))
      (progn
        (setq obj (vlax-ename->vla-object obj))
        (vla-getboundingbox obj 'mnp 'mxp)
        (setq mnp (vlax-safearray->list mnp)
              mxp (vlax-safearray->list mxp)
              ebat (mapcar '(lambda (p1 p2) (abs (- p1 p2))) mnp mxp))
        (write-line (strcat (itoa (setq n (1+ n))) "\t"
                      (rtos (nth 0 ebat)) "\t"
                      (rtos (nth 1 ebat)) "\t"
                      (rtos (nth 2 ebat))) flo))
      (write-line "\n*** seçilen obje 3dsolid olmalıdır. ***")))
  (write-line (strcat "\n  " (itoa n) " tane obje boyutu yazıldı."))
  (close flo) (setvar "modemacro" "") (command "undo" "e") (prin1)
)


sayın saygıdeğer prohibit abicim; üstteki lispler çok işime yaradı. ayrıca tekrar teşekkür ederim. sizden alttaki lispe biraz düzenleme yapmanızı rica edeceğim. öncelikle 3d solid leri tek tek seçmek biraz zahmetli oluyor. bir çizimde bazen 50 ila 100 adet 3dsolid oluyor. bunu tek tek seçmek yerine çerceve ( dikdörtgen ) içine alarak tek seferde seçebilirmiyiz. bir de aynı ölçüde çizilen 3dsolidleri tek tek listemek yerine aynı ölçüde olan 3dsolidleri bir sefer yazıp sayılarını artırabilirmi? yardımlarınız için çok teşekkür ederim.

ProhibiT (13.05.2011 06:18 GMT)

Çorumdan sevgi ve saygılarımla.Rıdvan KARACA

20.05.2011 16:58
64392    
sisecam

[2] Girişimci

Online Durumu

13 ileti
teknik ressam
mersin

Selamlar benim bir ricam olacaktı, tabi ki mümkünse.

malzeme listesi düşünün bu malzeme listesi satırlar ve sütunlar içinde ve en solda ağırlıklar var..Toplam 45 poz diyelim ( bu 45 değişken ) .. ben bütün pozların ağırlıklarını seçip "enter" yapacağım sonra bana toplamı nereye yazmak istediğimi soracak, malzeme listesinin en altındaki toplam ağırlık kısmına tıkladığımda hepsinin toplamını oraya yazacak tekrar "enter" yaptığımda komut sonlanmış olacak. bu arada benim ağırlıklarımın küsuratları da olabileceği için küsurat ayrımları "." yada "," olabilecek. her ikisinide yapabilecek yani..

yardımcı olursanız sevinirim..

20.05.2011 18:29
64394    
ProhibiT

[80] Yetkili

Online Durumu

1469 ileti
İnşaat Mühendisi
Ankara



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

linkinde paylaştığım c:cem fonksiyonu bahsettiğiniz işlemi kısmen yapar. seçilen gurup içindeki text objelerinin içeriklerindeki nümerik değerlerinin toplamını hesaplar.

ama, sizin bahsettiğiniz gibi gösterilen yere yazmak başka bir iş.


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

linkinde paylaştığım başka bir fonksiyon, bahsettiğiniz işlemi yapar. burada da ondalık ayracı (decimal separator) olarak nokta kabul eder. ondalık ayracı olarak virgül kullanılması ile ilgili olarak forumumuzda epeyce tartışıldı ve açıkçası bu konu benim canımı sıktı, o konuya hiç girmek istemiyorum.

kolay gelsin.

Where there is a will, there is a way... Beğenmek için anlamak lazım...

21.05.2011 14:15
64396    
sisecam

[2] Girişimci

Online Durumu

13 ileti
teknik ressam
mersin

Prohibit hocam sen sağ ol var ol

bazı projelerde ayıraçlar "," ile ayrılmış ama benim için önemli olan virgülüde noktayıda hesaplamasıydı .. 2. verdiğiniz lisp işimi gördü . bayada aramıştım forumda ama bakmakla görmek arasında fark varmış kusura bakmayın görememişim..

teşekkür ediyorum.
iyi çalışmalar.

21.06.2011 13:39
64739    
kevin8686

[2] Girişimci

Online Durumu

2 ileti
projeci
bursa

Merhaba autocadokulu üyeleri...

sizden bir ricada bulanacaktım. seçtiğim bir nesnenin ait olduğu tüm layerlerı seçebilen lisp varmıdır acaba. ehya kardeşim bir lisp paylmış bununla ilgili ama ben uygulayamadım. yardımcı olabilecek arkadaşlara teşekkür ediyorum şimdiden. iyi çalışmalar..

21.06.2011 14:45
64741    
ProhibiT

[80] Yetkili

Online Durumu

1469 ileti
İnşaat Mühendisi
Ankara



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

linkindeki sellayer fonksiyonunu bir deneyin.

Where there is a will, there is a way... Beğenmek için anlamak lazım...

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