Copyright © 2004-2022 SQL: 1.101 saniye - Sorgu: 101 - Ortalama: 0.0109 saniye
08.08.2016 08:44
tempuser |
Herkeze merhaba,
Elimdeki txt veya xls dosyasındaki alt alta yazılmış koordinatları okutup Ör; 500.445,855.447,664.888 20.2455,500.400 445.588,338.777,355.927 48.774,557.99 772.899,557.666 300.555,800.555,774.999 Bu koordinatlara point atmak istiyorum. Yardımcı olursanız sevinirim. Şimdiden teşekkür ederim. Travaci (08.08.2016 08:51 GMT) |
09.08.2016 09:52
Travaci |
|
09.08.2016 10:06
tempuser |
Merhaba, ilginiz için teşekkür ederim. Yukarıdaki kod z değeri olmayan koordinatlarda çalışmıyor. O sorunu giderebilirmisiniz acaba.
|
09.08.2016 14:12
Travaci |
tempuser Kod: (defun c:PntImp2 (/ fl pl ao) (vl-load-com)
(if (setq fl (getfiled "Coordinate file" (getvar 'dwgprefix) "" 0)) (progn (setq fl (open fl "r") ao (vla-get-activedocument (vlax-get-acad-object))) (vla-startundomark ao) (while (setq pl (read-line fl)) (vla-AddPoint (vla-get-modelspace ao) (vlax-3d-point (read (strcat "(" (vl-string-translate "," " " pl) ")"))))) (vla-endundomark ao) (close fl) ) ) (prin1) )
|
09.08.2016 14:20
tempuser |
Elinize sağlık çok güzel olmuş iki türlüde çalışıyor, teşekkürler.
|
09.08.2016 14:45
Travaci |
edilayk Merhaba, Açıkçası başkasının kodunu değiştirmek hiç keyifli deil. Baştan yazsak kısada deil ki : ) Bir gün Şahin Abi sahalara geri dönerse umarım senin için değiştirir :) Gerçi jubilesini yapmış gibi gözüküyor. Profilinde İnşaat Mühendisi yazarken boru metrajına anlam veremedim. Şöyle birşey versek işini görmezmi ? Linkleri görebilmek için ÜYE olmalısınız.
|
10.08.2016 08:21
miyatu |
Boru metrajı ıcın benım kullandıgım lısp
Kod: (defun c:bmt () (if (= cap nil) (progn (setq cap 15) ) ) (if (= sys nil) (progn (setq sys "Boru") ) ) (initget 1024 "Tablo") (setq p1 (getpoint "\nBaslangic noktasini sec [Tablo]:")) (initget 1024 "Cap System") (while (and (/= p1 "Tablo") (/= nil (setq p2 (getpoint p1 (strcat "\nIlk noktayi sec[Cap <" (rtos cap 2 0) ">/ System<" sys ">]:" ) ) ) ) ) (cond ((= p2 "Cap") (cap_al)) ((= p2 "System") (sys_al)) ((and (/= p2 "Cap") (/= p2 "System")) (ciz)) ) (initget 1024 "Cap System") ) (if (= p1 "Tablo") (progn (dls) ) ) ) (defun cap_al () (setq y_cap (getreal (strcat "\nYeni capi gir<" (rtos cap 2 0) ">:"))) (if (= nil y_cap) (progn y_cap cap) ) (setq cap y_cap) ) (defun sys_al () (setq y_sys (getstring (strcat "\nYeni system gir<" sys ">:"))) (if (= nil y_sys) (progn y_sys sys) ) (setq sys y_sys) ) (defun ciz () (setq layer (strcase (strcat "metraj_" sys "_" (rtos cap 2 0)))) (if (null (tblsearch "LAYER" layer)) (entmake (list (cons 0 "LAYER") (CONS 100 "AcDbSymbolTableRecord") (CONS 100 "AcDbLayerTableRecord") (cons 2 layer) (cons 70 0) (cons 62 155) (cons 6 "CONTINUOUS") ) ) ) (setvar "CLAYER" layer) (command "PLINE" p1 p2 "") (setq p1 p2) ) (defun dls () (setq data (dosya_adi "csv")) (setq f (open data "w")) (setq p1 (getpoint "\nTablo yerlesim yerini gosteriniz:")) (while (/= (setq l_adi (cdr (assoc 2 (tblnext "LAYER")))) nil) (setq d_kodu (substr l_adi 1 6)) (if (= d_kodu "METRAJ") (progn (secim1) ) ) ) (princ "\nmiyatu tool kullanildi...") (tblnext "LAYER" t) (PRINC) ) (PRINC "BORU METRAJ TABLOSU YAPAN LISP YUKLENDI... [BMT]") (defun topla () (vl-load-com) (if (= secim nil) (progn ) (progn (setq sayim (sslength secim)) (setq toplami 0 c 0 ) (while (< c sayim) (setq teksecim (ssname secim c)) (setq tanimi (cdr (assoc 0 (entget teksecim)))) (if (or (= tanimi "LINE") (= tanimi "LWPOLYLINE") (= tanimi "POLYLINE") ) (progn (setq data (vlax-ename->vla-object teksecim)) (setq uz-bul (vla-get-length data)) (setq toplami (+ toplami uz-bul)) ) ) (setq c (+ c 1)) ) (setq uzunluk (rtos (/ toplami 1000) 2 2)) ) ) (text_yaz l_adi p1 (strcat l_adi ";" uzunluk)) ) (defun secim1 () (setq secim (ssget "_X" (list (cons 0 "LWPOLYLINE") (cons 8 l_adi)))) (if (/= secim nil) (progn (setq p1 (polar p1 (dtr 270) 200)) (topla) ) ) ) (defun dosya_adi (#uzanti) (strcat (getvar "dwgprefix") (substr (getvar "dwgname") 1 (- (strlen (getvar "dwgname")) 3) ) #uzanti ) ) (defun text_yaz (#t8 #t10 #t1) (entmake (list (cons 0 "TEXT") (cons 100 "AcDbEntity") (cons 8 #t8) (cons 100 "AcDbMText") (cons 10 #t10) (cons 1 #t1) (cons 40 125) ) ) (write-line (strcat l_adi ";" uzunluk) f) ) (defun dtr (#aci) (* pi (/ #aci 180.0)) ) (defun secim2 () (setq secim (ssget "_X" (list (cons 0 "LWPOLYLINE") (cons 8 l_adi)))) (if (/= secim nil) (progn (setq p1 (polar p1 (dtr 270) 200)) (setq d_kodu d_kodu1) (topla) ) ) ) umarım işinize yarar.
|
15.08.2016 09:41
falkir |
Arkadaşlar merhaba
Sitede biraz araştırdım fakat bulamadım benim talep ettiğim lisp Farklı kotta iki veya ikiden fazla text-mtext'i referans gösterdiğim kotta justify noktasına göre yazı yüksekliğine oranla arada mesafe bırakarak(bu yazıların arasındaki mesafe kullanıcı tarafından girilebilirse çok daha iyi olur) hizalamasını istediğim bir lisp varmı yada yazabilirmisiniz. İlgilenen arkadaşlara şimiden teşekkürler.
|
17.08.2016 03:16
boldpilot70 |
merhabalar
seçilen iki çizginin ortasına centerline atan bir lisp lazım cizgi tipi center rengi kirmizi secilen cizgilerden 10 mm asagida ve yukarida olması gerekiyor.bu işlemi kesit alınmış deliklere uyguluyorum
|
17.08.2016 08:20
alumina |
Alıntı Boyle bir lisp yok, yazacak kimsede yok, mumkunse israr eden kimsede olmasin.
|
17.08.2016 11:11
boldpilot70 |
cok lazim oldugu icin biraz ısrarci olmustum
|
23.09.2016 14:55
BLack|E |
Selamlar.
Elimde poz no, malzeme ve boyun yazılı olduğu excel dosyam var. Bu liste de yazılı olan bildileri autoCAD'te aşağıdaki görünen resim örneğinde olduğu gibi çizdirmek istiyorum. Excel'den autoCAD'te bir ara yüze bu değerleri yapıştırdıktan sonra oluştur dediğimde her bir pozu tek tek oluşturacak ve bunları alt alta ya da yan yana tek bir dwg sayfasında hepsini tutacak. Not: Bu çizgiler PERI layer'i ile renk ise 4 numara cyan olacak. Saygılar...
|
23.09.2016 19:14
Travaci |
Emredersiniz,
Peki bunun karşılığı ne olucak !
|
24.09.2016 06:23
BLack|E |
Böyle bir istekte bulunmayacaktım zaten. Alumina hocamın haberi var bu lisp isteğini neden buraya yazdığımdan.
BLack|E (24.09.2016 07:15 GMT) |
26.09.2016 12:51
selcukkpr |
Arkadaşlar elimde bir lisp var. kimden veya nereden aldığımı hatırlamıyorum. Burada ki arkadaşlardan da almış olabilirim. Dediğim gibi hatırlamıyorum. Belki bi ihtiyacı olan vardır diye paylaşıyorum. Autocad de tıkladığın text i tıklama sırasına göre excel e yazıyor
(defun c:TExP (/ fL Tx n) (setvar "cmdecho" 0) (command "_.undo" "group") (setq fL (open (getfiled "Çıkış Kütüğü" "" "xls" 9) "w") Tx (ssget (list (cons 0 "*Text"))) n -1) (while (< (setq n (1+ n)) (sslength Tx)) (write-line (cdr (assoc 1 (entget (ssname Tx n)))) fL)) (close fL) (command "_.undo" "e") (prin1))
|
03.10.2016 11:21
boomerang078 |
Değerli arkadaşlarım sizden bir lisp talebim olacak.
çok sayıda bloğu seçtiğimizde arasında sadece farklı isimli olanlardan bir tanesini seçen lisp olabilir mi. Quick select in tersi aslında. Quick select ile seçilen bölgedeki aynı isimli olanları veya tüm blokları seçebiliyoruz. Benim isteğimde de farklı isimde olanlardan birer tanesini seçecek. Şimdiden teşekkür ederim.
|
03.10.2016 11:49
seboli61 |
Bu linkte ki lisp belki işine yarıyabilir
Linkleri görebilmek için ÜYE olmalısınız. Alıntı
|
03.10.2016 15:01
boomerang078 |
heyecanla girdim linke hocam :) . Ama bu değil teşekkürler.
Linkte belirlenen alanda select similar yapmışlar.
|
03.10.2016 21:32
alumina |
Alıntı Kod: (defun c:bs (/ ns ss n nm ob ls)
(if (setq ns (ssadd) ss (ssget '((0 . "insert")))) (progn (repeat (setq n (sslength ss)) (if (not (member (setq nm (cdr (assoc 2 (entget (setq ob (ssname ss (setq n (1- n)))))))) ls)) (setq ls (cons nm ls) ns (ssadd ob ns))) ) (sssetfirst nil ns) ) ) (princ) )
|
boomerang078 |
hocam harikasınız. çok iyi çalışıyor. Çok teşekkürler .
Böylece çizimde kendi lejantımızı bile oluşturabiliriz hızlıca.
|