25.11.2010 08:10    

SENDUR
arkadaşlar seçtiğim alanda 0,90,180,270 derecede olmayan çizgileri secebilecek bir lisp yazılabilir mi?


aslında tam olarak seçmek istediğim 0,90,180,270 derece gibi görünen ama olamayan çizgileri seçmek.

şimdiden teşekürler

25.11.2010 10:00    

ehya
Komut adı CSEC

Kod:

(defun c:csec ()
  (vl-load-com)
  (setq ciz_sec (ssget (list (cons 0 "LINE"))))
  (if (= ciz_sec nil)
    (progn
      )
    (progn
      (setq c 0 c_say (sslength ciz_sec))
      (setq secim (ssadd))
      (while (< c c_say)
(setq c_tek (ssname ciz_sec c))
(setq c-data (vlax-ename->vla-object c_tek))
(setq c-aci (vla-get-angle c-data))
(if (and (/= c-aci 0.0)
(/= c-aci (/ pi 2.00))
(/= c-aci pi)
(/= c-aci (* pi 1.50)))
  (progn
  (setq secim (ssadd c_tek secim)))
  (progn))
(setq c (+ c 1)))
      (sssetfirst nil secim)))(princ))

25.11.2010 11:50    

SENDUR
teşekürler eyha eline sağlık

yalnız bi sey soracam sanırım autocad de virgülden sonra 8 basamaktan sonrası ölçemiyor yada propertiesde göremiyoruz. bu lisp virgülden sonra 9 yada 15 ci basamakta hata olan çizgileride seçiyor.

mevcut çizdiğim resimdeki çizgilerde lispi kullanıyorum ve doğru gözüken ( yatay yada dikey ) çizgileri de seçiyor.
9.cu basamaktan sonraki hataları göremese daha iyi olur diye düşüyorum

SENDUR (25.11.2010 12:58 GMT)

25.11.2010 11:55    

ehya
lisp içinde öyle bi ayar yok. Dediğin dereceleri tam olarak algılar. Pas geçmemesi için yeniden yazmak lazım...

25.11.2010 14:01    

SENDUR
0,90,180,270 derecedeki çizgileri pass geçsin istiyorum (seçmesin) bu açı dışında kalan çizgileri seçsin.

yalnız bu lisp yatay yada dikey çizgileride seçiyor. (dikey bir çizgiyi eğik bir çizgiden trim yapınca onun dikeyliği bozulmuyor ama lisp onu dikey olarak algılamıyor ve seciyor)

teşekürler

25.11.2010 14:14    

ehya
sadece dik ve yatay haricindekileri seçer. Çok küçük de olsa bir eğim sapması var ise onu düz-yatay olarak kabul etmez.

> 1 <
Copyright © 2004-2022 SQL: 0.832 saniye - Sorgu: 57 - Ortalama: 0.0146 saniye