13.03.2017 13:49    

alumina
Alıntı
kimx87 :


Kod:

(defun c:zd (/ dc m sl) (vl-load-com)
  (if (ssget '((0 . "*text") (1 . "*%%O%%C%%O*")))
    (progn
      (vla-startundomark (setq dc (vla-get-activedocument (vlax-get-acad-object))))
      (vlax-for m (setq sl (vla-get-activeselectionset dc))
        (vla-put-TextString m (vl-string-subst "Ø" "%%O%%C%%O" (vla-get-TextString m)))
      ) (vla-endundomark dc) (vla-delete sl)
    )
  ) (prin1)
)

16.03.2017 08:17    

k005
Merhaba arkadaşlar..;

örnek-a : (7.11+3.75)/2*4*0.3 =

örnek b : 7.11*0.50*0.25 =

örnek c : 2.8*0.15*0.25 + (2.8+1)/2*3.85*0.25 =


üç farklı yazılıştaki texleri Aritmetik işlem sırasına göre, sonucu nasıl alabilirim ?

* her örnek sadece bir text objeden oluşmaktadır.

Yardımcı ustalara şimdiden teşekkürler.

17.03.2017 08:21    

alumina
Alıntı
k005 :


Karakterleri ayirmaya kalkarsan icinden cikamazsin. En iyisi text value degerini alip basina "=" karakterini ekleyerek excele aktar, sonra oradaki sonucu alip ayni texti editle bitsin.

17.03.2017 11:27    

k005
Alıntı
alumina :



Üstad;

onuda düşündüm aslında.. Lisp ile yapamazsam, önermiş olduğunuz şekilde yapacağım.

Teşekkür ediyorum.

17.03.2017 12:41    

mikemoon
merhaba arkadaşlar bu resimdeki sorunu çözecek bir yöntem varmıdır.

17.03.2017 13:47    

alumina
Alıntı
k005 :
Bende sana lisple yapman icin soyledim zaten. Kopyala yapistir demedimki.

20.03.2017 06:21    

mikemoon
selamlar


resimdeki işlemi yapmak için bir yöntem vardımıdır.yada bir lisp varmıdır.
daire hariç sayfadaki tüm objeleri silmek değil.sadece maus ile seçtiğim objeler içinde daire haricini silmeli.
yada seçilen obje türü kalsın digerlerini silsin fakat mausla pencere içerisine alınmış objeler arasındaki objeler için geçerli


mikemoon (20.03.2017 06:40 GMT)

20.03.2017 08:00    

alumina
Alıntı
mikemoon :

silme isini manuel yap raskoln.
Kod:

(defun c:cs (/ ns)
  (if (setq ns (ssget '((0 . "~circle")))) (sssetfirst nil ns)) (princ)
)

20.03.2017 08:14    

Travaci
mikemoon


Kod:

(defun c:ss (/)
  (if (ssget '((0 . "~circle"))) (sssetfirst nil (ssget "_P"))) (princ)
)

:D

20.03.2017 10:04    

CAN123
Arkadaşlar merhaba,

Eğer mümkünse pozu ve çerçevesini seçtikten sonra belirleyeceğim 1. ve 2. noktaya göre quick leader çizip pozuda ucuna eleyecek bir lisp isteğim olacak.

Not: Eğer 2. nokta 1. noktanın sağında kalıyorsa 1. detaydaki gibi atmasını, eğer solunda ise 2. detaydaki gibi atmasını istiyorum. Birde işlemden sonra seçtiğim pozu ve çerçevesini de silmesini istiyorum.

Teşekkür ederim

CAN123 (06.09.2017 06:23 GMT)

20.03.2017 10:13    

mikemoon
teşekkürler

travaci ve alumina

biraz taksit taksit gibi oluyor ama kusura bakmayın
o circle yazısının yerine line,arc vs başka bir obje tipi yazsak yinede aynı işlemi yapmasını sağlayabilirmiyiz

mikemoon (20.03.2017 10:28 GMT)

20.03.2017 10:37    

alumina
Alıntı
mikemoon :



iste ogrenmeye basladin :) aynen oyle. mesela sadece arc icin "arc" yazabilirsin. arc ve line leri ayni anda "arc,line" yazabilirsin vs.
ya raskoln gozlerimi yasarttin ilk defa valla :)

21.03.2017 19:10    

tempuser
Arkadaşlar merhaba,
Seçtiğim dairelerin koordinatlarını komut satırınıda alt alta görmek istiyorum.
Böyle bir program yazabilirmisiniz.

21.03.2017 20:30    

alumina
Alıntı
tempuser :

Kod:

(defun c:ct (/ cr)
  (if (ssget ":s" '((0 . "circle")))
    (prompt (strcat "X= " (rtos (car (setq cr (cdr (assoc 10 (entget
      (ssname (ssget "_P") 0)))))) 2 2) "\nY= " (rtos (cadr cr) 2 2)
        "\nZ= " (rtos (caddr cr) 2 2)))) (princ)
)

21.03.2017 20:37    

tempuser
Alumina öncelikle teşekkür ederim,
küçük bir sorun var; seçtiğim nesneler birden fazla oluyor koordinatları bir nevi listelemek istiyorum,
(1570.29 1559.09 0.0)
(1561.04 1568.16 0.0)
(1532.58 1569.22 0.0)
... Bu şekilde sizi uğraştırmıyacaksa düzenlermisiniz.

21.03.2017 20:42    

alumina
Alıntı
tempuser :

Kod:

(defun c:cl (/ ns n)
  (if (setq ns (ssget '((0 . "circle"))))
    (repeat (setq n (sslength ns))
      (print (cdr (assoc 10 (entget (ssname ns (setq n (1- n))))))))) (princ)
)

21.03.2017 20:46    

tempuser
Teşekkürler şimdi tam istediğim gibi oldu işte :)

21.03.2017 21:08    

Travaci
tempuser



Okur yazar arkadaşlar için alışılmışın dışında döngü metodu kullanımı.

Kod:

(defun c:diaShow (/)
  (if (ssget (list (cons 0 "circle")))
    (mapcar
      '(lambda (x)
        (if (= 'ename (type (cadr x))) (print (cdr (assoc 10 (entget (cadr x))))))
      ) (ssnamex (ssget "_p"))
    )  
  ) (princ)
)

(defun c:diaShow (/)
  (if (ssget (list (cons 0 "circle")))
    (foreach x (ssnamex (ssget "_p"))
      (if (= 'ename (type (cadr x)))
        (print (cdr (assoc 10 (entget (cadr x)))))
      )
    )  
  ) (princ)
)

22.03.2017 06:04    

mikemoon
resimdeki plyline çizgiyi eşit aralıklar ile bölebilecek bir lisp veya yöntem varmıdır.
amaç şudur aslında çizgiyi seçmek ve kaç mm ara ile bölmek istiyorsun diye sormalı değeri kendim gireceğim ve break at poit komutunun yaptığı iş gibi çizgi bölmesi lazım

22.03.2017 06:38    

alumina
Alıntı
mikemoon :

"measure" komutuyla pointleri at, sonra forumda "polyline nesnelere vertex ekleyen lisp" i bulup koparma islemini yap.

Önceki Sayfa [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [15] [20] [25] [30] [35] [40] [45] [50] [55] [60] [65] [70] [75] > 79 < [80] [85] [90] [95] [100] Sonraki Sayfa
Copyright © 2004-2022 SQL: 1.223 saniye - Sorgu: 100 - Ortalama: 0.01223 saniye