01.07.2011 07:33    

k005
Merhaba arkadaşlar,,

Çizimde ki tüm dtext'leri seçip width factor'ü, istediğimiz değere nasıl getirebiliriz..


yardımcı olacak arkadaşlara şimdiden teşekkürler..

ProhibiT (01.07.2011 10:18 GMT)

01.07.2011 10:10    

ProhibiT
Öncelikle yanlış anlaşma olmasın, bir şeyi düzeltmek gerek. autocad'de dtext diye bir obje türü yok. text komutunu da kullansanız, dtext komutunu da kullansanız, elde edilen objenin türü "text"'tir. eğer kasdedilen "text" "mtext" ayrımı ise o başka.

filter selection kullanarak seçeceğiniz text objelerinin width factor'ünü properties (ya da quick properties) tablosundan değiştirebilirsiniz. aynı işlemi daha kontrollü olarak yapmak için aşağıdaki fonksiyonu kullanabilirsiniz.
Kod:

(write-line "\nHazırlayan M. Şahin Güvercin - www.autocadokulu.com")
(defun C:Tw (/ twe twn tob L n pvt)
  (setvar "cmdecho" 0) (command "undo" "group")
  (setvar "modemacro" "Prepared by:M. Şahin Güvercin")
  (setq twe (getreal "\nExisting Text Width Factor: ")
        twn (getreal "\n     New Text Width Factor: "))
  (princ "\nSelect Text object(s) to be changed Width Facor:")
  (setq tob (ssget (list (cons 0 "text") (cons 41 twe))) L (sslength tob) n -1)
  (while (< (setq n (1+ n)) L)
    (setq pvt (entget (ssname tob n)) pvt (subst (cons 41 twn) (assoc 41 pvt) pvt))
    (entmod pvt) (entupd (cdr (assoc -1 pvt))))
  (setvar "modemacro" "") (command "undo" "e") (prin1)
)

Kolay gelsin.

ProhibiT (01.07.2011 10:21 GMT)

01.07.2011 10:39    

k005
Alıntı
ProhibiT :
kastedilen kesinlikle : text - mtext. eski bir alışkanlıktan dolayı dtext kalmış dilimde..

gönderdiğini lisp kodu inceledim. ve çalıştırdım.. ama sorumun tam yanıtı değil.. çünkü bana mevcuttaki width factor genişliği soruyor.. ben ise tüm çizimde ki text objelerin width factor 1.0 olmasını istiyorum mesela.. yardımınız için teşekkürler.

01.07.2011 11:06    

ehya
Bunu lisp yerine modify penceresinden yapsan daha hızlı olmaz mı??

tüm çizimi seç.
modify pencesinde en üstten sadece text seçeneğini seç
width factor değerini 1 yap.

01.07.2011 11:07    

k005
Alıntı
ehya :
olmaz.. ;)

01.07.2011 15:36    

ProhibiT
Mevcut width factor sormayacaksa, fonksiyon yazmanın anlamı yok ki! filter ile seçip properties'den değiştirilir zaten.

01.07.2011 16:55    

yazgunesi
Aşağıdaki linklerde yer alan programları henüz test etmedim ama ilgimi çekti doğrusu.Incelemenizi öneriyorum..


how to change the width factor of an existing text?



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




reset mtext width factor automatically :



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

01.07.2011 18:45    

ehya
Alıntı
k005 :
Alıntı
ehya :
olmaz.. ;)




Anlamadım??? Neden olmaz?

Ben şunu hala anlamış değilim. bir işin daha kısa ve basit yolu varken kendimizi lisplerle sınırlandırmak ne kadar doğru?

tamam lisp ile 3 tıklama daha az yapabiliriz ama bu da fazla tembellik olur..

01.07.2011 20:18    

ProhibiT
Mehmet hocam, bence k005 arkadaşımız da anladı konuyu ve kabul etti. o mimik işaretini mahcubiyet gülümsemesi olarak anladım ben.

ilk yazdığım cevap masajında net ifade ettiğimi sanıyorum. "... properties (ya da quick properties) tablosundan değiştirebilirsiniz. aynı işlemi daha kontrollü olarak yapmak için aşağıdaki fonksiyonu kullanabilirsiniz." demişim.

lisp kullanmak hiçte kısa değil, aksine en iyimser bakışla bir tık fazla. fonksiyon yazmaktaki amacım; tüm text objelerini seçip, mesela width factor'ü 0.85 olanları tek seferde gene örnek olarak 1.25 yapabilmek idi. properties kullandığımızda, mevcut width factor ne olursa olsun hepsini yeni bir değere değiştirebiliyoruz.

herkese kolay gelsin.

02.07.2011 04:17    

k005
Ehya :

öncelikle iletileri yeni görüyorum.. dün oldukça yoğun bir gündü siteye bakamadım..

evt.Kendimizi lispler kısıtlamamalıyız.. kısıtlamıyoruz da zaten. saçma olur çünkü.. gelelim anlamadığınız konuya : sizin söylediğiniz yöntem benim sorduğum soruya sonuç olarak doğru cevap versede, benim aradığım cevap değil....

prohibit : ;) işareti kesinlikle mahcubiyet değil.. devam ediyoruz niteliğinde.... ayrıca yukarıda da ki satırlarda da belirttiğim gibi konuyu henüz kabul etmiş değilim.. yazmış olduğunuz kod güzel..


yazgüneşi : hocam sizede ayrıca teşekkürler.. gönderdiğiniz linki inceliyorum..

saygılarımla....

02.07.2011 06:00    

ehya
K005

dedin ki söylediğimiz yöntemler sonuç olarak doğru olsa da, aradığın cevap değil. derken nasıl bir cevap bekliyordun ki?
yapmak istediğin işlem istediğin gibi oluyor değil mi?

yada şöyle sorayım. bizim nasıl bir cevap vermemizi bekliyordun?

02.07.2011 06:12    

k005
Alıntı
ehya :

Farkındaysan konuyu autolisp başlığında sordum. ve cevap olarak ta, lisp ile ilgili bir cevap bekliyordum.. cevap prohibit hocadan geldi.. ama istediğim gibi değil.. bu zaten çok açık bir şekilde görünüyor.. nasıl bir cevap derken ? böyle bir cevap işte.. kod ile ilgili yani.. bunu bu şekilde yapacağım.. üzerinde çalışıyorum.

12.07.2011 10:17    

neden09
Hem istekte bulunuyorsunuz arkadaşlar yardımcı olmaya çalışıyorlar üstüne birde kalkıp ukalalık yapıyorsunuz. her sorduğun her istediğin şey yapılacak diye birşey yok tabii kii. lisp yazmayı kolay mı sanıyorsunuz. gereksiz yere isteklerde bulunup insanları meşgul etmeyin ve autocad tabanında bulunan özellikleri kullanın bu tamamen bir tembellik...

12.07.2011 12:28    

k005
Alıntı
neden09 :
ne kadar zamandır autocad kullanıyorsun acaba..? neyi nerden , nasıl kullanacağımız siz mi söyleyeceksiniz..? ukalalık konusuna gelince bugüne kadar hiç ukala olmadım şimdi değilim zaten.. ayrıca bugüne kadar gördüğüm en saçma iletiyi yazmışsın.. bence böyle saçma sapan iletiler yazmak tembellik...

13.07.2011 06:41    

neden09
14 yıldır autocad kullanıyorum ki bunun ne önemi var, saçma ileti görmek istiyorsanda yukarıda kendi yazdıklarına bak. neyi nerden nasıl kullanacağımız elbette biz söyleyeceğiz, o zaman buraya konu açıp neden yardım istiyorsun çok biliyorsan otur kendin lisp yaz. yada buradaki arkadaşların sana yardımcı olmalarına izin ver ve teşekkür et...

13.07.2011 07:46    

ehya
Arkadaşlar bu muhabbet hiç hoşuma gitmedi. istek-yanıt ve tepki. ancak biraz fazla oldu.
bu muhabbet uzar gider.

konu amacını aştığı için kilitliyorum.

> 1 <
Bu konu kilitli, yeni ileti kabul edilmiyor.
Copyright © 2004-2022 SQL: 1.9 saniye - Sorgu: 89 - Ortalama: 0.02134 saniye