Kullanıcı Adı: Şifre: Beni Hatırla?
 

Bu başlığı inceleyenler : 1 ziyaretçi, 0 üye : ---

4 kullanıcı bu konuya ileti yazdı : bor521137 (1) ehya (2) mhmtbal (3) ProhibiT (1)

> 1 <
Yazar İleti
mhmtbal

[1] Yeni üye

Online Durumu
Arkadaş Listeme Ekle

konu, 0 ileti
Meslek: elektrik ogretmeni
Yaş: (ankara)

#67297   05.01.2012 17:50 GMT      
ekteki blokları lamda pr de bir türlü göremiyorum isimsiz blok nasıl oluyor bilen var mı? 295831-blok.dwg

bor521137

[5] Müdavim

Online Durumu
Arkadaş Listeme Ekle

konu, 0 ileti
Meslek: Teknik Ressam
Yaş: 38 (Ankara)

#67311   06.01.2012 22:37 GMT      
Bloğu blok editörde açmayı dene sonra save et ismi de değiştir. Bedit komutu ile girebilirsin

_____________________________________________________________________________________

mhmtbal

[1] Yeni üye

Online Durumu
Arkadaş Listeme Ekle

konu, 0 ileti
Meslek: elektrik ogretmeni
Yaş: (ankara)

#67338   09.01.2012 13:03 GMT      
Alıntı
bor521137 :
Bloğu blok editörde açmayı dene sonra save et ismi de değiştir. Bedit komutu ile girebilirsin


SORUN ZATEN BLOK EDİTÖRDE AÇILAMAMASI YANİ BLOĞUN İSMİ YOK ÖLE BİR BLOK YOK AMA VAR BLOĞU AÇAMAYI DENEDİNİZ Mİ ?

ehya

[80] Yetkili

Online Durumu
Arkadaş Listeme Ekle

konu, 1864 ileti
Meslek: Teknik Ressam
Yaş: 31 (Ankara)

#67354   10.01.2012 09:12 GMT      
Aşağıdaki lispi kullanın. Bloklarınız düzelecektir.
Komut ismi UNANONALL




Kod:
;===============================================
;======================================
(setq uan_ nil lsp_file "UnAnon")

;================== For Automated Calling From Another Program =========
(defun uan_auto (ar1) (UnAnon ar1))

;================== Macros =============================================
(defun PDot ()(princ "."))

(PDot);++++++++++++ Set Modes & Error ++++++++++++++++++++++++++++++++++
(defun uan_smd ()
(SetUndo)
(setq olderr *error*
      *error* (lambda (e)
                (and (/= e "quit / exit abort")
                     (princ (strcat "\nError: *** " e " *** ")))
                (command "_.UNDO" "_END" "_.U")
                (uan_rmd))
       uan_var '(
  ("CMDECHO"   . 0) ("MENUECHO" . 0) ("MENUCTL"   . 0) ("MACROTRACE" . 0)
  ("OSMODE"    . 0) ("SORTENTS" . 119)("MODEMACRO" . ".")
  ("BLIPMODE"  . 0) ("EXPERT"   . 0) ("SNAPMODE"  . 1) ("PLINEWID"   . 0.0)
  ("ORTHOMODE" . 1) ("GRIDMODE" . 0) ("ELEVATION" . 0) ("THICKNESS"  . 0)
  ("FILEDIA"   . 0) ("FILLMODE" . 0) ("SPLFRAME"  . 0) ("UNITMODE"   . 0)
  ("TEXTEVAL"  . 0) ("ATTDIA"   . 0) ("AFLAGS"    . 0) ("ATTREQ"     . 1)
  ("ATTMODE"   . 1) ("UCSICON"  . 1) ("HIGHLIGHT" . 1) ("REGENMODE"  . 1)
  ("COORDS"    . 2) ("DRAGMODE" . 2) ("DIMZIN"    . 1) ("PDMODE"     . 0)
  ("CECOLOR"   . "BYLAYER") ("CELTYPE" . "BYLAYER")))
(foreach v uan_var
      (setq m_v (cons (getvar (car v)) m_v)
            m_n (cons (car v) m_n))
      (setvar (car v) (cdr v)))
(princ (strcat (getvar "PLATFORM") " Release " (substr (ver) 18 2)
   " -  Convert To Anonymous Blocks ....\n"))
(princ))

(PDot);++++++++++++ Return Modes & Error +++++++++++++++++++++++++++++++
(defun uan_rmd ()
  (setq *error* olderr)
  (mapcar 'setvar m_n m_v)
  (command "_.UNDO" "_END")
  (prin1))

(PDot);++++++++++++ Set And Start An Undo Group ++++++++++++++++++++++++
(defun SetUndo ()
(and (zerop (getvar "UNDOCTL"))
      (command "_.UNDO" "_ALL"))
(and (= (logand (getvar "UNDOCTL") 2) 2)
      (command "_.UNDO" "_CONTROL" "_ALL"))
(and (= (logand (getvar "UNDOCTL") 8) 8)
      (command "_.UNDO" "_END"))
(command "_.UNDO" "_GROUP"))

(PDot);++++++++++++ Get Entity Name ++++++++++++++++++++++++++++++++++++
(defun GetOne (/ st os)
(setq os (getvar "SNAPMODE") s nil)
(setvar "SNAPMODE" 0)
(while (not st)
        (setq st (ssget)))
(while (> (sslength st) 1)
        (setq st nil)
        (princ "\nOnly 1 At A Time Please\n")
        (while (not st)
               (setq st (ssget))))
(setvar "SNAPMODE" os)
(setq s (ssname st 0)))

(PDot);++++++++++++ Convert An Anonymous Block To Named Block ++++++++++
(defun UnAnon (b / tdef en ed bc bn bd in)          ;Supply ename
  (setq bn "TEMP1" bc 1)
  (while (tblsearch "BLOCK" bn)
         (setq bc (1+ bc) bn (strcat "TEMP" (itoa bc))))
  (and (= (type b) 'ENAME)
       (setq bd (entget b)
             in (cdr (assoc 2 bd))))
  (if (or (not bd)
          (not in)
          (/= "INSERT" (cdr (assoc 0 bd)))
          (/= "*U" (substr in 1 2))
          (= (logand (cdr (assoc 70 (tblsearch "BLOCK" in)))  4)  4)
          (= (logand (cdr (assoc 70 (tblsearch "BLOCK" in))) 16) 16)
          (= (logand (cdr (assoc 70 (tblsearch "BLOCK" in))) 32) 32))
       (progn
         (princ "*** Not An Anonomymous Block *** ")
         (setq bn nil bc nil bd nil in nil b nil)
         (exit)))
  (setq tdef (tblsearch "BLOCK" in)
          en (cdr (assoc -2 tdef))
          ed (entget en))
  (entmake (list (cons 0 "BLOCK")
                 (cons 2 bn)
                 (cons 70 0)
                 (cons 10 (cdr (assoc 10 tdef)))))
  (entmake ed)
  (while (setq en (entnext en))
         (setq ed (entget en))
         (entmake ed))
  (entmake (list (cons 0 "ENDBLK")))
  (setq bd (subst (cons 2 bn) (assoc 2 bd) bd))
  (entmod bd)
  (entupd b)
  (princ (strcat "\n" bn)))

(PDot);************ Main Program ***************************************
(defun uan_ (/ m_v m_n olderr uan_var s)
  (uan_smd)
  (GetOne)
  (UnAnon s)
  (uan_rmd))

(defun c:UnAnonall (/ ss i)
(setq ss (ssget "X" (list (cons 0 "INSERT")(cons 67 (if (= (getvar "TILEMODE") 1) 0 1)))))
(and ss
   (setq i (sslength ss))
   (while (not (minusp (setq i (1- i))))
          (setq en (ssname ss i))
          (if (= "*U" (substr (cdr (assoc 2 (entget en))) 1 2))
              (UnAnon en))))
(prin1))

(PDot);************ Load Program ***************************************
(defun C:UnAnon () (uan_))
(if uan_ (princ "\nUnAnon Loaded\n"))
(prin1)
;================== End Program ========================================

mhmtbal

[1] Yeni üye

Online Durumu
Arkadaş Listeme Ekle

konu, 0 ileti
Meslek: elektrik ogretmeni
Yaş: (ankara)

#67409   12.01.2012 10:35 GMT      
teşekkürler çok işime yaradı peki bir soru daha bu bloklar nasıl yapılmış ?

ehya

[80] Yetkili

Online Durumu
Arkadaş Listeme Ekle

konu, 1864 ileti
Meslek: Teknik Ressam
Yaş: 31 (Ankara)

#67410   12.01.2012 10:55 GMT      
nasıl yapıldığı konusunda net bir bilgiye sahip değilim. *U ile başlayan bloklar "Anonim Blok" diye geçiyor. Autodesk sisteminin kendi bir ürünü. Araştırmak lazım.

ProhibiT

[70] Editör

Online Durumu
Arkadaş Listeme Ekle

konu, 42 ileti
Meslek: İnşaat Mühendisi
Yaş: 54 (Ankara)

#67611   24.01.2012 19:23 GMT      
Merhaba arkadaşlar. Bu konuyu daha önce okumuş, cevap yazma fırsatı bulamamıştım. Bazı arkadaşlarımızın işine yarayabilir, en kötü ihtimalle kafalarındaki soru işaretlerini giderebilirim düşüncesiyle, Anonymous BLock'larla ilgi bazı detayları paylaşmak istiyorum.

Öncelikle daha önce de pek çok kereler bahsettiğim bir detayı tekrar hatırlatmak istiyorum. AutoCAD'de bLock objesi ile insert objesi farklıdır. Genelde insanlar ikisinden de bLock diye bahsediyorlar. BLock AutoCAD Drawing dosyasının Tables bölümünde yer alan bLock tanımıdır. Bu tanım çizim nesneleri içermekle birlikte kendisi çizim nesnesi değildir. Doğru adıyla bLock Reference yani insert objeleri ise Tables bölümünde yer alan bLock tanımını refere eden çizim objeleridir.

Tables bölümündeki bLock tanımları (BLock Definition) Anonymous Block (unnamed yani isismsiz bLock) lar içerebilir. Anonymous bLocklar'ı 3 gurup halinde görüyoruz. Bunlar, *Dnnn şeklindeki Associative Dimension'lar, *Xnnn şeklindeki Hatch Pattern bLockları ve *Unnn şeklindeki kullanıcı bLock'larıdır. Her üçünde de nnn kısmı AutoCAD tarafından otomatik olarak verilen numaralardır.

Bunlardan *Dnnn ve *Xnnn blocklarının nasıl oluştuğunu tahmin etmek zor değil. Dimension ve Hatch komutları bunları oluşturuyor. Peki *Unnn bLock'ları nasıl oluşuyor? Bunları da AutoLisp veya ObjectARX fonksiyonları oluşturuyor.

*Dnnn, *Xnnn ve *Unnn şeklindeki blokların sonunda nnn ile ifade ettiğimiz numaralar sabit değillerdir. Drawing dosyası her açıldığında AutoCAD bunlara farklı bir numara verir. Ama bLock tanımı ile refere edildikleri insert objeleri arasındaki bağ korunur.

Anonymous BLock'ları insert komutuyla kullanamazsınız. AutoLisp fonksiyon içinde entmake fonksiyonu ile "INSERT" objesi oluşturup, bunları *Unnn tanımına refere edebilirsiniz. benzer şekilde entmake kullanarak block tanımını değiştirebilir, redefine edebilirsiniz. Gene AutoLisp içinden entmod fonksiyonuyla Anonymous BLock tanımını değil ama tanım altındaki objeleri değiştirip güncelleyebilirsiniz.

Anonymous BLock'ların Association List'inde 70 anahtarlı değer 1 dir (70 . 1) yukarıda ehya hocamın verdiği fonksiyonda da, Anonymous bLock'lar Named bLock'lara dönüştürülürken (assoc 70'lerinin 0 yapıldığına dikkatinizi çekmek isterim.

Demek oluyor ki, Associative Dimension ve Hatch kullandığınızda çizim içinde her biri yalnızca bir kere refere edilmiş bLock'lar oluşacaklardır. Çok verimli bir yöntem gibi gelmiyor bunun esbab-ı mucibesinin ne olduğunu ilgili ve meraklı arkadaşlarımızın ferasetine bırakıyorum.

Purge komutunu kullandığınızda, diğer kullanılmayan (insert edilmemiş) bLocklarla birlikte Anonymous BLock'lar da (purge edilebilecek bLock'lar listesinde görünür ve) temizlenirler.

Drawing dosyası açıldığında, kulanılmamış (insert edilmemiş) Anonymous BLock'lar otomatik olarak purge edilip temizlenirler. Diğer bLock tanımları ise Purge komutu uygulanıncaya kadar kalırlar. Bu nedenledir ki; uyanık kullanıcıların hemen farkettiği gibi, çizim içinde çok sayıda Associative Dimension ve Hatch objeleri silinir ve dosya save edip çıkılırsa, dosya boyutu değişmez. Aynı dosya tekrar açılır, herhangi bir işlem yapılmaksızın tekrar save edilirse, hissedilir derecede dosya boyutu küçülür.

Normal bir bLock'u Anonymous bLock'a dönüştürmek için (vl-load-com)(vla-convertToAnonymousBLock (vlax-ename->vla-object (car (entsel)))) şeklinde Diesel Expression kullanabilirsiniz.

Herkese kolay gelsin.

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

> 1 <
Bilgisayar Ögreniyorum
2012 Web Tasarim Temelleri Corel Draw X5 WPF (Windows Presentation
Foundation) Algoritma (Uygulamali Algoritma Klavuzu) Android (Profesyonel Uygulamalarla Android
Programlama) PARDUS 2011 (DVD Hediyeli)
26.25TL
26.25TL 18.37TL 18.75TL 22.13TL 24.00TL 14.63TL
Yukarı Çık
Site haritası | Forum Kuralları | İstatistikler | Hakkımızda | Referanslarımız | Kadromuz | Gizlilik | Yasal Uyarı | Reklam İstatistikleri | Reklam | cizimokulu.com
Copyright © 2004-2012 Akpınar Eğitim ve Yazılım Merkezi | Tüm Hakları Saklıdır | 3410 | megaaritmetiksahrayicedid.com | megaaritmetikerenkoy.com | İnşaat & Yapı Haberleri | FAQ
Mega Aritmetik Dahi Çocuk Merkezi SQL toplam zamanı: 4.672 saniyede oluşturuldu. - SQL sorgusu: 292 - Ortalama SQL zamanı: 0.016 saniyede oluşturuldu.