02.02.2009 10:09    

husamthekid1
Arkadaşlar merhaba.

2 boyutlu bir doğrunun eğimini ve boyunu üzerine yazdırmayı sağlayacak bir lisp ya da yöntem var mı acaba.
eğimi yazarken yönünü de belirebilen bir ok olursa çok daha hoş olur benim açımdan.

işin aslı site içerisinde 3 gündür arıyorum birçok lisp buldum bazılarını kullanmaya da başladım mesela eğimi ekranda gösteren bir lisp var ama onu obje üzerine yazdırmıyor.

İlginize şimdiden teşekkür ederim.

06.02.2009 22:14    

macapapazi
(DEFUN C:EG ()
(SETQ GETLINE (ENTSEL "\n LINE'I SEC..:"))
(SETQ P1_X (CAR (CDR(ASSOC 10 (ENTGET (CAR GETLINE))))))
(SETQ P1_Y (CADR (CDR(ASSOC 10 (ENTGET (CAR GETLINE))))))

(SETQ P2_X (CAR (CDR(ASSOC 11 (ENTGET (CAR GETLINE))))))
(SETQ P2_Y (CADR (CDR(ASSOC 11 (ENTGET (CAR GETLINE))))))
(SETQ EGIM (STRCAT "S=" (RTOS (ABS (/ (- P2_Y P1_Y) (- P2_X P1_X))))))

(SETQ GETTEXT (ENTGET (CAR (ENTSEL "\n DEGISECEK TEXT'I SECINIZ..:"))))
(SETQ GETTEXT (SUBST (CONS 1 EGIM) (ASSOC 1 GETTEXT) GETTEXT))
(ENTMOD GETTEXT)


)
.................................................................................................................................................................................
bu lisp sadece eğimi text olarak yazar..boyunu nasıl yazdıgını bilmiyorum...
komut ismi: eg dir.

07.02.2009 22:01    

yazgunesi
Örnek bir lisp hazırladım bir bakın derim arkadaşlar. Çizgi başlangıç ve bitiş noktalarını seçirerek boy değerini hesaplıyor ve istenilen yere yazdırıyor..

Kod:

; Çizgiyi boyunu ölçtürüp
;  yazı yazdırma lispi

(defun c:yz2 (/ nokta1 nokta2 yazi_yeri )
 
        (setq nokta1 (getpoint "\n Çizgi başlangıç noktası :"))
        (setq nokta2 (getpoint "\n Çizgi bitiş noktası :")) 
        (setq yazi_yeri (getpoint "\n Yazı nerede olsun ? :"))
        (setq boy_degeri (distance nokta1 nokta2)) 
        (command "._text" "_j" "_middle" yazi_yeri (/ boy_degeri 5)  boy_degeri)
        (princ)
     )

  (Princ "Lispi çalıştırmak için > yz2 < yazınız! ")


******** ****** ******* ******* ******* **** ****** ****** *****

(setq boy_degeri (distance nokta1 nokta2)

Distance komutu ile çizgi boyunu hesaplayıp boy_degeri değişkenine atadık..


(command "._text" "_j" "_middle" yazi_yeri (/ boy_degeri 5) boy_degeri)

satırındaki kırmızı renkli yer yazımızın yüksekliğidir.Yazı yüksekliği için çizgi boyunun 5 te biri kadar olsun dedik.

Kodları böyle yazdık ama aslında seçim seti oluşturmak bence daha iyi olur.Kastettiğim ssget kullanmak.. Herneyse metin kullanmak konusunda basit bir örnek yapmış olduk.

yazgunesi (08.02.2009 15:06 GMT)

09.02.2009 10:35    

husamthekid1
Sayın macapapazi ;
Elinize sağlık yazdığınız lisp egimi ölcüyor fakat ölçülen bu değeri mevcut bir tekstin içerisine yazıyor. Yani her işlemden önce oraya bir tekst kopyalamak gerekiyor.
Lisp'in kendisi bir tekst oluşturup da bu değeri obje üzerine vs. yazdırsaydı daha iyi olmaz mıydı.
Tekrar teşekkür ederim.

Sayin yazgunesi;
Size de tesekkür ederim yazdığınız lisp doğru uzunluğunu ölçüyor fakat kendisi bunu bir tekst olarak yazmıyor verilen bilgiyi el ile girip öyle yazdırabiliyorsunuz.
ben araştırlamarım sonucu şu lispi kullanmaya başlamıştım.



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



İhtiyacı olan arkadaşlar da deneyip kullanabilirler.
Size de tekrar teşekkür ederim.

İyi haberlerinizi bekliyorum.

husamthekid1 (09.02.2009 10:40 GMT)

> 1 <
Copyright © 2004-2022 SQL: 0.882 saniye - Sorgu: 50 - Ortalama: 0.01764 saniye