05.11.2012 01:10    

mehmet_zaza
Değerli arkadaşlar ve adminler Altyapı'da iki baca arasında Akar gösteren oklu (yönlü) çizgi ve çizginin üstünde Boru Çapı ile Mesafe yazan Lisp lazım. Resimde ve dwg dosyasında gösterildiği gibi, kırmızı çizginin içindeki şekil ve yazıları yapabilen Lisp. Ölçüler örnek dwg dosyasının içindedir.
112143-ornekdosya.rar

mehmet_zaza (06.11.2012 23:30 GMT)

05.11.2012 07:12    

Travaci
Boyutları alabileceğimiz bir .dwg paylaşın.

10.11.2012 10:38    

Travaci
Yanlış veya eksik bir yer varsa banada öğretirseniz sevinirim
Kod:

(defun c:KnL (/ *error* )
(setvar "cmdecho" 0) (command "undo" "group")
(setq oosm (getvar "osmode")) (setq ola (getvar "clayer"))
(defun *error* (er) (setvar "osmode" oosm)
(setvar "clayer" ola) (command "undo" "e") (princ er))
(if (not (tblsearch "Layer" "AKAR_YONU"))
(entmake (list
    (cons 0 "Layer") (cons 100 "AcDbSymbolTableRecord")                                             
    (cons 100 "AcDbLayerTableRecord") (cons 2 "AKAR_YONU")                                              
    (cons 62 1) (cons 70 0)                                                                                                         
    (cons 290 1) (cons 370 0)                                                                                                       
)                                                           
)
)
(if (not (tblsearch "Layer" "AKAR_MESAFE"))
(entmake (list
(cons 0 "Layer") (cons 100 "AcDbSymbolTableRecord")                                           
(cons 100 "AcDbLayerTableRecord") (cons 2 "AKAR_MESAFE")                                           
(cons 62 30) (cons 70 0)                                                                                                   
(cons 290 1) (cons 370 0)                                                                                                 
)                                                           
)
)
(if (not (tblsearch "Layer" "AKAR_YAZI"))
(entmake (list
(cons 0 "Layer") (cons 100 "AcDbSymbolTableRecord")                                           
(cons 100 "AcDbLayerTableRecord")(cons 2 "AKAR_YAZI")                                          
(cons 62 30) (cons 70 0)                                                                                                   
(cons 290 1) (cons 370 0)                                                                                                 
)                                                           
)
)
(if (not yy) (setq yy 1))
(if (setq sn (getreal (strcat "\nYazı yüksekliği --> <" (rtos yy) "> :")))
(setq yy sn) (setq sn yy))
(if (not ePp) (setq ePp 200))
(if (setq ol (getreal (strcat "\nØ Değeri --> <" (rtos ePp) "> :")))
(setq ePp ol) (setq ol ePp))
(if (= kk nil) (setq kk "B.B.O"))
(setq aa (getstring (strcat "\nØ Sonrası yazılacak yazı --> < "kk" > :")))
(if (/= aa "")(setq kk aa))
(setq son (strcat "[%%c" (rtos epp 2 0) " " kk "]"))
(while (not (setq  n1  (getpoint "\nBaşlangıç noktası. "))))
(while (/= n1 nil)
(setq n2  (getpoint n1 "\nBitiş noktası. "))
(setq ac  (angle n1 n2))
(if (and (<= ac 4.71239) (> ac 1.5708))
(setq ca (+ (angtof "180.00") ac))
(setq ca ac)
)
(setq di  (distance n1 n2)
mdp (polar n1 (angle n1 n2) (/ (distance n1 n2) 2.0))
n3  (polar n2  (+ ac 0) (* sn -1))
y1  (polar mdp  (+ ca (/ pi 2)) (* sn 1))
y2  (polar y1  (+ ca (/ pi 2)) (* sn 1.25))
)
(setvar "clayer" "AKAR_YONU")
(setvar "osmode" 0)
(command  "pline" n2 "W" 0 (* sn 0.75) n3 "W" 0 0 n1 "")
(entmake
(list
(cons 0 "TEXT") 
(cons 100 "AcDbEntity")
(cons 100 "AcDbText")
(cons 10 y1)
(cons 11 y1)
(cons 1 son)
(cons 40 sn)
(cons 50 ca)
(cons 41 1)
(cons 72 1)
(cons 8 "AKAR_YAZI")
(cons 73 2)
)
)
(entmake
(list
(cons 0 "TEXT") 
(cons 100 "AcDbEntity")
(cons 100 "AcDbText")
(cons 10 y2)
(cons 11 y2)
(cons 1 (strcat "L=" (rtos di 2 2) "m" ))
(cons 40 sn)
(cons 50 ca)
(cons 41 1)
(cons 72 1)
(cons 8 "AKAR_MESAFE")
(cons 73 2)
)
)
(setvar "clayer" ola) (setvar "osmode" oosm) (command "_.undo" "e") (prin1)
(while (not (setq n1  (getpoint "\nBaşlangıç noktası. ")))))
)

Travaci (11.11.2012 13:43 GMT)

10.11.2012 23:11    

mehmet_zaza
Abi size nasıl TEŞEKÜR ETSEM bilmiyorum...ellerinize kolarınıza sağlık,tek kelimleyle SUPER olmuş çok saolun......

15.12.2012 11:01    

kral400
bana acilen buna benzer lisp lazım.
baca numaralarını ve baca ara mesafelerini excele aktaracak lisp gerekiyor.
örneğin;
A1-A2 22,50
A2-A3 35,00
A1-A4 70,00

baca numaralarını seceçeğim aradaki mesafeyi seçeceğim excele aktaracak.

çok acil şimdiden teşekkürler.

21.01.2015 20:53    

mistakey
arkadslar meraba bu altyapı lısp'inde Baca atmıyo ve KOTLAR YAZMIYOR

25.04.2015 13:11    

heikou
Yukarıdaki örnek çizim sanırım biraz standart dışı; uzunluk ve eğim bilgisinin çizginin altında yer alması gerekiyor. Ayrıca lisp eğim değerini yazmıyor. Ben düzenlemeye çalışıyorum ama başaramıyorum. Yardımcı olabilecek varsa şimdiden teşekkür ederim

> 1 <
Copyright © 2004-2022 SQL: 0.985 saniye - Sorgu: 60 - Ortalama: 0.01642 saniye