Uzun yönelim metinleri hareket ettirin

  • Konuyu başlatan Konuyu başlatan Il filo
  • Başlangıç tarihi Başlangıç tarihi
  • Etiketler Etiketler
    autocad

Il filo

Guest
İyi sabah, herkes.

Ben bir mimarım, bu forum yıl önce katıldım ama çeşitli nedenlerle, uzun bir süre tasarım ve kadro dünyasından uzaktaydım.
Son dönemde, bu dünyaya temel olarak bir tasarımcı olarak yaklaştım ve eski ve tanıdık yazılımları alan sorunlarla karşılaşmama rağmen, bunu gerçekleştirmek istediğim bazı işlemleri zaten karşıladım ama bunu nasıl ve mümkün olup olmadığını bilmiyorum.

Birinin birden fazla otocad metinlerini bir kez yönlendirmesi için bir yol farkında olup olmadığını bilmek istedim.
Tüm birlikte yerel koordinatları boyunca daha fazla nesne taşımak istediğim 3d stüdyo max ile bir analog buluyorum.

Ne yazık ki (ve beklenmedik) Böyle bir operasyonda hiçbir şey bulamadım.

Hızlı bir çizerim, bir görüntü binlerce kelimeden daha değerli.

Cevap vermek isteyen herkese önceden teşekkürler.
 

Ekli dosyalar

  • schema.jpg
    schema.jpg
    48.3 KB · Görüntüleme: 6
Sadece yerel koordineli kavramı yok, bu yüzden bu operasyonları desteklemek için bir lisp veya benzer olmadıkça, otocad'ın yerli bir şekilde mümkün olduğundan şüpheliyim.
 
Her şeyden önce, cevap için teşekkür ederim.

Ne yazık ki şüpheliydim, problem şu ki, zaten bazı lisp kullanarak, şu anda onları yaratamazdım.
Bu yüzden ya da uygun bir lisp bulmayı ya da öğrenmek için zamanı bulmaya devam ediyorum. Göreceğiz.

Tartışma tekrar açabiliyor musunuz? Belki bazı diğer kullanıcılar benim problemime çözümü var... En azından umarım!
 
Gerçekten de metin normale (veya paralel) göre hareket etmek için doğrudan bir komuta sahip olmak özellikle sıkıcı bir şeydir.

Eğer açıyı biliyorsanız (sadece mülklere peek) uzun ve rotasyon+90 ayarlayarak bir göreceli değişim kullanabilirsiniz.
Uygulamada, göreceli koordinasyon türün bir şey olacaktır (bu durumda yüksek 90 kişi bunu aklınızda yapmak veya hesaplayıcı almak zorunda değildir):
@ mesafe < (+ açı 90)

Diğer çözüm, yazıyı seçerek nesne kuşunu ayarlamaktır. Bu noktada basit bir hareket ve bitmişsiniz ( önceki değere doğru sıfırlamanız gerekir).
 
Bu yöntemler iyi, ancak her zaman indirgenmiş bir element miktarı üzerinde.
Benim durumumda, alas, en çeşitli şekillerde dönen birkaç bin metin var:eek:

Şimdiye kadar kullanılan yöntem 10° metin aralığındaki selerapid ile seçildi, geçici olarak metinlerin yarısını değiştirir ve diğer aşağıların yarısını değiştirir ( komut bulguları ile filtrelenir), 36 kez tekrarladı.
Ancak bu yöntem bir şeyler arasında çalışır ve diğeri 40 ila 60 dakika arasında beni alır.

Ancak, metinleri tam olarak onların yönelimi boyunca taşımam gerekseydi (bu sadece benim için olmadı) Bu prosedürü 360 kez tekrarlamalıyım... son saatler olacak bir parça!

Ancak, cevap sayesinde, en azından bu soruyu koyan tek kişi değilim.:
 
Eğer çalışırsa görün.?
Kod:
(defun c:ttt (/txt t1 p1)
(vla-startundomark (vla-get-activedocument))
(princ "\selezionare ve testi da smailre")
(setq txt (sget '(0 . "text"))))
(setq d (cond
(Ücretçi (strcat "\ndistanza di spostamento" (if d (strcat " <" (rtos d 2 2) ">: "))))
( d)
)
(eğer (ve txt d)
(s)
(vla-move (vlax-ename->vla-object (setq t1 (ssname txt)))
(vlax-3d-point (setq p1 (cdr)
(vlax-3d-point (polar p1 (+ (cdr (assoc 50 (entget t1)) (/pi 2))))
)
)
(vla-endundomark (vla-get-activedocument))
(princ)
)
 
Eğer çalışırsa görün.?
Kod:
(defun c:ttt (/txt t1 p1)
(vla-startundomark (vla-get-activedocument))
(princ "\selezionare ve testi da smailre")
(setq txt (sget '(0 . "text"))))
(setq d (cond
(Ücretçi (strcat "\ndistanza di spostamento" (if d (strcat " <" (rtos d 2 2) ">: "))))
( d)
)
(eğer (ve txt d)
(s)
(vla-move (vlax-ename->vla-object (setq t1 (ssname txt)))
(vlax-3d-point (setq p1 (cdr)
(vlax-3d-point (polar p1 (+ (cdr (assoc 50 (entget t1)) (/pi 2))))
)
)
(vla-endundomark (vla-get-activedocument))
(princ)
)
Wow!
Kesinlikle elimden geldiğince kanıtlayacağım, şu anda otocad önünde değilim.

Süper teşekkürler!
Ne zaman çalıştığımı bilmeme izin vereceğim.
 
İşte buradayım.

Tamam, makro, lisp ve genel olarak programlama konusunda oldukça cahil olduğumu kabul ediyorum.

Tüm bu kod bunu komuta çizgisine yapıştırmaya çalıştım ama bunun çalışma olup olmadığını ya da yapmadığımı fark edemiyorum.
Bu dizeler orada yapıştırılamaz mı?
 
Bir metin dosyası oluşturmanız gerekir, lsp uzantı (e.g. tt.lsp) ve tüm kodu kopyalayın. Tasarruf ettikten sonra, appload tarafından otomatik olarak yükleyin
O andan itibaren, onu başlatmak için, klavyeden posta yoluyla takip etmek.
.gp. Tabii ki (Yaptığım şey) tam olarak istediği bir iplik olarak çalışır, tek mol sadece saf metinler üzerinde çalışıyor, mtext (farklı varlık türü? Daha problemli? Ya da sadece bir ssget sorusu? )
 
@cristalloDelucidasyon için teşekkürler, kristal. Bu tam olarak kaçırdığım şeydi.
.gp. Size teşekkür etmediğim şeyi bilmiyorum!
Tam olarak istediğim gibi çalışır.
Sizi okumak ve sorunumu zaman geçirmek için çok teşekkür ederim.

Birkaç testten sonra herkes için biraz bilgi:
  • Ayrıca mtext ile denedim ve işe yaramadığını doğruladım, sadece normal metinlerle (bu, bencilce konuşurdum) ilgilendiklerim şeydi.
  • Farklı nedenlerle birkaç metin taşımaya çalıştım ve bu ultratime en az etkisini etkilemez.
  • Hem olumlu hem de olumsuz hareket edebilirim.
Muhtemelen biraz işe yaramaz bir kanıt, ama yine de yaptım.
 
.gp.Size son bir şey soracağım.
Bu soruyu başka bir forumda da formüle ettim, ancak diğer kullanıcılarla sonuç olmadan.
Şimdi bir çözüm var olduğundan, orada paylaşmak için bana izin verecek misiniz?
Belki de benden başka birine hizmet edebilirdi.

ps. Tabii ki çantamın ununu soyamadım, eh!
 

Forum İstatistikleri

Konular
58,521
Mesajlar
499,056
Kullanıcılar
104,110
Son Üye
ChristianR

Çevrimiçi Üyeler

Şu anda çevrimiçi üye yok.
Geri
Üst