Copyright © 2004-2022 SQL: 1.241 saniye - Sorgu: 101 - Ortalama: 0.01229 saniye
26.02.2009 22:41
miyatu |
Alıntı ya omayan bir özelliği eklemek istiyorum yada bun yerine var olan bir özelliği editleyerek kendi amacıma uygun değerler atamak istiyorum benim atamak istediğim değerler 0,001 gibi değerler böyle bir değeri projemin görünümünü değiştirmeyecek bir şekilde atamak istiyorum bunu nasıl yapabilirim aslında benim yapmaya calıştığım şey şu bir tesisat borusunun kotunu çapını ve taşıdıgı yuku bir etikete otamatık olarak yazdırmak istiyorum... çap için cizgi tipi hazırladım borunun taşıdıgı yüke göre çizgi tipi değişecek ... kotu içinde çizerken z değerinide kullanarak çizeceğim için z değerinden çekeceğim... taşıdıgı yuku saklayabileceğim bir parametre arıyorum bunu line nesnesinin hangi parametresinde saklayabilirim
|
27.02.2009 07:27
ehya |
:) mevcut nesnelere böyle autolisp ile özellikl ekleyemezsin. Keşke eklebilse ama autolisp bu konuda çok ilkel kalır. Normalde eklenir mi sorusuna gelince, ileri düzey programlama dilleri ile eklenebilir hatta kendine özgü nesne bile oluşturabilirsin.
Ancak autolisp ile bu mümkün değil...
|
27.02.2009 15:13
miyatu |
yardımların için teşekkürler yuk için lts yi kullanmaya karar verdim istediğim değeri oraya yazabiliyorum kullandığım çizgi tipleride sürekli çizgi oldugu için sorun olmayacak sanırım...
tekrar teşekkürler... ------------------------------------------------------------------------------------------------------------------------------------------------ line cizerken bir alt menuye gecis yapan bir ornek verebilirmisiniz mesela command:nokta sec [Kot / Fittings]: gibi bir mesaj sirasinda bir nokta secersem line cizneye devam edecek k yada f girersem lispin ilgili kismi calismaya baslayacak getwork ile yapmam gerektigini biliyorum ama line icin nokta isterken getpointide kullanmam gerekiyor bu iliskiyi kuramadim... yardimlariniz icin simdiden tesekkurler... arkadaslar bu konuyla ilgili denemelerim devam ediyor... soyle bir yaklasima ulastim ama nasil yapabilicegimi bilmiyorum... getpoint fonksiyonu ile girdi yapilmasi istendiginde alfa numerik bir karakter girdigimizde ***invalid point*** hatasi veriyor ve tekrar nokta secmeni istiyor... eger bu hatanin ***errno*** kodunun ne oldugunu bulabilirsek ve bunu bir if dongusu ile kontrol edebilirsek nokta secerken bir alt menuye gecebilme olasiligimiz var... burda bir sorunla karsilasiliyor... sorun sozkonusu hatayi aldigimizda lisp bir alt satira gecmiyor ayni satirdan devam ediyor bunu engelleyecek sekilde degerlendirme yapmak lazim... yardimlariniz icin simdiden tesekkurler... miyatu (29.03.2009 09:40 GMT) |
01.04.2009 11:04
Harbi65 |
Bir liste içinde ki dize şeklinde rakamları küçükten büyüğe göre nasıl sıralatırız?
|
01.04.2009 12:44
ehya |
Kod: (setq aa (list "2" "5" "4" "8" "7" "1" "3" "6"))
(acad_strlsort aa)
|
01.04.2009 21:17
Harbi65 |
Teşekkür ederim Ehya.
("1" "133" "137" "2" "3" "5" "55" "6" "7" "81") Bu listede ilk basamağa göre bu rakamları sıralıyor... Bu listeyi aşağıda ki gibi nasıl sıralatırız?? ("1" "2" "3" "5" "6" "7" "55" "81" "133" "137")
|
02.04.2009 06:53
ehya |
bunu sıralı hale getirmen için sayısal değerler tırnak içinde olmamalı. Eğer olursa, bu bir rakam değil metin olarak geçer.
Bunu düzenlemelisin. Ona göre min komutunu kullanıp döngüye sokarak sıralayabilirsin.
|
02.04.2009 07:57
Harbi65 |
Sayısal değerler tırnak içinde olmalı derken...? Liste oluşturabilmek için mi diyorsun??
Eğer bunu kastettinse ben sıralama şeklini göstermek için sadece bu kısmını yazdım... Ama sıralatma mantığını kuramadım... Peki numerik bi listeyi sıralamak için yukarda verdiğin gibi bir komut var mı??
|
02.04.2009 08:15
ehya |
komut yok.
önceki mesajımda belirttiğim gibi, min komutunu kullanarak liste elemanı sayısı kadar döngüye sokarak yeni liste oluşturabilirsin.
|
02.04.2009 08:28
Harbi65 |
Anladım sağol...
bir soru daha... Kod: (sssetfirst nil SecimSet) Komutu ile seçim yaptırdığımızda nesneleri seçtiği halde ekranda seçildiği görülmüyor. Bunun nedeni ne olabilir?
|
02.04.2009 08:36
ehya |
Komut yazımında sorun yok.
SecimSet seçiminde nesne olup olmadığını kontrol et.
|
02.04.2009 09:24
Harbi65 |
Seçim setinde nesne var.
ve nesneler seçiliyor... ama bazen ekranda seçilmiş oldukları görünmüyor...
|
02.04.2009 09:47
ehya |
bazen diye birşey yok. Nesne var ise mutlaka seçili olur.
Tabi bu işlemden sonrasında bu seçim durumunu etkileyen bir komut yazmadıysan....
|
06.04.2009 12:48
Harbi65 |
entmod ile çizginin linetype'ını ya da Color'unu nasıl Bylayer yaparız?
Başka bir deyişle command kullanmadan nasıl Bylayer yaparız?
|
06.04.2009 13:51
ehya |
62 dxf kodu, nesnenin rengi değiştirildiyse görünür.
6 dxf kodu ise, çizgi tipi değiştirildiyse görünür. Eğer nesnenin dxf kodlarında bu numaralar açılmamış ise, bu nesneler bylayer'dır. Nesne rengini bylayer yapma Kod: (setq ent (car (entsel))) (setq data (entget ent)) (setq data (subst (cons 62 acbylayer)(assoc 62 data) data)) (entmod data) Nesne çizgi tipini bylayer yapma... Kod: (setq ent (car (entsel)))
(setq data (entget ent)) (setq data (subst (cons 6 "bylayer")(assoc 6 data) data)) (entmod data)
|
24.04.2009 19:39
miyatu |
slm arkadaşlar
reed-line fonksiyonu ile bir txt dosyasından okunan cümleyi read fonksiyonu ile kelimelere ayırmak istiyorum... ilk kelimeyi read fonksiyonu ile okuyorum (okunan deger bir hassasiyetli ondalıklı sayı) bu degerin kaç karakterden oluştugunu nasıl öğrenebilirim... not:strlen fonksiyonu hata veriyor. hatayı gidermek için okudugum degeri rtos ile dönüşütrdüm strlen sorunu düzeldi ama sayının virgülden sonraki değeri sıfır ise sayıyı tam sayı gibi veriyor ve bir sonraki kelimeyi sıfır gibi gösteriyor...
|
24.04.2009 21:12
ehya |
Kod: (setq abc 12.345678) (rtos abc 2 2) burada rtos fonksiyonunda 2 2 değeri var birinci 2 değeri ondalıklı olacağını ifade eder. ikinci 2 değeri ise virgülden sonraki 2 basamağı göstereğini ifade eder. Buna göre ikinci 2 sayısını istediğine göre artırabilirsin.
|
25.04.2009 09:32
miyatu |
Alıntı bende bu sekilde uyguladim ama sayinin ondalik kismi sifir ise sayiyi tam sayi gibi yapiyor yani benim okudugum karakter sayisi 5 ise sonuc bana 3 karakter gibi donuyor ... bunun sonucu olarak kalan kisimdaki yeni cumlenin ilk kelimesi sifir oluyor... benim sorunum read fonksiyonu ile okudugum kelimenin kac karakter oldugunu ogrenmek...
|
25.04.2009 10:13
ehya |
Burada bi yanlışın olmalı.
Read-line komutu ile bir dosyadaki değeri okuduğunda buradaki değer dizgi şeklinde gelecek ve kaç satır olduğunu bulabilirsin. Örnek olarak bir dosya oluşturdum. Bu dosyanın içine 125142.2552 sayısını yazdım. Kod olarak ise; (setq a (open "c:\\1.txt" "r")) #<file "c:\\1.txt"> (setq b (read-line a)) "125142.2552" (setq c (strlen b)) 11 Burada görüldüğü gibi değerin basamaklarını strlen ile rahatlıkla bulabiliyorum. Farklı bir yol izlediysen o yolu söylersen bi yol bulmaya çalışırız.
|
Harbi65 |
Küsüratlı bir değeri rtos ile dizeye çeviriyorum ve dcl ye aktarıyorum. değeri burdan alırkende atof ile sayıya çeviriyorum. işlemde sorun yok ama DCL de 5.50 şeklinde bir değeri giremiyorum. bu değeri 5.00 yapıyor.
bunun nedeni nedir?
|