14.08.2022 12:44    

akcan
aşağıdaki kodlar seçilen linear veya aligned ölçünün ölçü aralığını 15 yapıyor.
kodlar çalışıyor ancak ölçünün yazı konumu manuel olarak değiştirildiğinde aşağıdaki kodlar etki etmiyor.
ölçü yazısı GRİP noktasındaki menü ile Reset Text Position yapılırsa kodlar düzgün çalışıyor.
sorun nedir? çözüm ne olabilir.

noktalar testi görselleştirmek için konuldu
Kod:

(setq om (getvar 'osmode))
(setvar 'osmode 0)
(setq ent (car(entsel)))
(setq data (entget ent)) ;nesne verileri
(setq prop (cdr data)) ;özellikler
(command "color" 1)
(command "POINT" (cdr(assoc 10 prop)))
(command "POINT" (cdr(assoc 11 prop)))
(command "POINT" (cdr(assoc 14 prop)))
(setq p1 (cdr(assoc 14 prop))) ;ölçü baz noktası koordinatı 2
(setq p2 (cdr(assoc 10 prop))) ;ölçü çizgisi noktası koordinatı
(setq yknm (polar p1 (angle p1 p2) 15)) ;yeni konum
(command "color" 2)
(command "POINT" yknm)
(setq data
   (subst (cons 10 yknm) ; data 10 daki değeri aralık kadar değiştir
       (assoc 10 data) data))
(entmod data) ; data verisi güncellenir
(entupd ent)
(setq data (entget ent)) ;nesne verileri
(setq prop (cdr data)) ;özellikler
(command "color" 3)
(command "POINT" (cdr(assoc 10 prop)))
(command "POINT" (cdr(assoc 11 prop)))
(command "POINT" (cdr(assoc 14 prop)))
(setvar 'osmode om)

16.08.2022 06:17    

ehya
Dimension text placement seçeneği resimdeki gibi olursa yazının yeri değiştirildiğinde 10 nolu dxf kodunu değiştiremezsiniz. yazı yeri değiştiğinde 70 nolu dxf kodu da etkilenir. Bu değerleri kontrol ederek yada düzenleyerek istediğinizi yapabilirsiniz.

16.08.2022 11:37    

akcan
70 no'lu dxf kodu 32 yaptım. bu değer yazı konumunu sıfırlıyor sanırım.
bu şekilde ölçü aralığı değişti.
Kod:

(setq ent  (car (entsel))
  data (entget ent) ;nesne verileri
  prop (cdr data) ;özellikler
  d14   (cdr (assoc 14 prop)) ;ölçü baz noktası koordinatı 2
  d10   (cdr (assoc 10 prop)) ;ölçü çizgisi noktası koordinatı
  _d10 (polar d14 (angle d14 d10) 15) ;yeni konum. aralık 15
  data (subst (cons 70 32) ; data 70 deki değer: 32
  (assoc 70 data)
  data
  )
  data (subst (cons 10 _d10) ; data 10 daki değeri aralık kadar değiştir
  (assoc 10 data)
  data
  )
  )
(entmod data) ; data verisi güncellenir
(entupd ent) ; nesne güncellenir

> 1 <
Copyright © 2004-2022 SQL: 0.963 saniye - Sorgu: 50 - Ortalama: 0.01927 saniye