Copyright © 2004-2022 SQL: 1.625 saniye - Sorgu: 98 - Ortalama: 0.01658 saniye
18.09.2020 14:08
cherryhill |
merhaba,
elimde bir tane lisp var blokların isimlerini üstüne yazıyor. Bunun otomatik olarak bütün bloklara yazmasını istiyorum öyle bir lisp yapabilirmiyiz?
|
20.09.2020 20:17
Travaci |
Alıntı Eski isteklerde olması lazım.
|
21.09.2020 08:56
cherryhill |
Alıntı baktım ama göremedim eskilerde öyle bir istek. Birde bendeki o lispde yazı boyutunu çok küçük yapıyor ben ayarlardan büyüttüğüm zamanda blok ismi yerine sadece ''0'' yazıyor oraya.
|
21.09.2020 09:03
cherryhill |
Alıntı Elimde 3 tane lisp var . 1 tanesi blok açıklamasını ok ile gösterip balon içinde yazıyor yazıyor ,1 tanesi blok ismini yazıyor istediğni yere yazıyor , 1 taneside blok ismini parçanın içine yazıyor. Benim istediğim Blok açıklaması olursa daha iyi olur 1 kerede tüm parçalara içine veya balon gösterip yazması. Kod: ; places name of block as text via pick (defun C:blockn() (setvar "cmdecho" 0) (setq pt(cadr(entsel"\nSelect Block:"))) (setq e1(ssget pt)) (setq e2 (entget (ssname e1 0))) (setq blname (cdr(assoc 2 e2))) (setq pt1 (getpoint"\nSelect point for block title:")) (command "text" pt1 "" 0 blname) ) Kod: (defun c:TEST (/ #Entsel #InsPoint #Name #Desc #LandPoint) (if (setq #Entsel (AT:Entsel nil "\nSelect block: " '((0 . "INSERT")) nil) ) ;_ setq (progn ;; convert to vla-object (setq #Entsel (vlax-ename->vla-object (car #Entsel)) ;; insertion point #InsPoint (vlax-safearray->list (vlax-variant-value (vla-get-InsertionPoint #Entsel) ) ;_ vlax-variant-value ) ;_ vlax-safearray->list ;; block name #Name (vla-get-name #Entsel) ;; block description #Desc (vla-get-comments (vla-item (vla-get-blocks (vla-get-activedocument (vlax-get-acad-object)) ) ;_ vla-get-blocks #Name ) ;_ vla-item ) ;_ vla-get-comments ) ;_ setq (cond ;; no description in block ((eq "" #Desc) (princ (strcat "\nNo description for block: "" #Name """ ) ;_ strcat ) ;_ princ ) ;; specify leader landing location ((setq #LandPoint (getpoint #InsPoint "\nSpecify leader landing location: " ) ;_ getpoint ) ;_ setq (vl-cmdf "_.mleader" "_non" #InsPoint "_non" #LandPoint #Desc) ) ) ;_ cond ) ;_ progn ) ;_ if (princ) ) ;_ defun ;;; Entsel or NEntsel with options ;;; #Nested - Entsel or Nentsel (T for Nentsel, nil for Entsel) ;;; #Message - Selection message (if nil, "\nSelect object: " is used) ;;; #FilterList - DXF ssget style filtering, no cons (nil if not required) ;;; #Keywords - Keywords to match instead of object selection (nil if not required) ;;; Example: (AT:Entsel nil "\nSelect MText not on 0 layer [settings]: " '((0 . "MTEXT")(8 . "~0")) "Settings") ;;; Alan J. Thompson, 04.16.09 ;;; Updated: Alan J. Thompson, 06.04.09 (changed filter coding and added layer option) (defun AT:Entsel (#Nested #Message #FilterList #Keywords / #Count #Message #Choice #Ent ) (setvar "errno" 0) (setq #Count 0) (or #Message (setq #Message "\nSelect object: ")) (if #Nested (setq #Choice nentsel) (setq #Choice entsel) ) ;_ if (while (and (not #Ent) (/= (getvar "errno") 52) ) ;_ and (and #Keywords (initget #Keywords)) (cond ((setq #Ent (#Choice #Message)) (and #FilterList (vl-consp #Ent) (or (not (member nil (mapcar '(lambda (x) (wcmatch (if (eq (type (cdr (assoc (car x) (entget (car #Ent)))) ) ;_ type 'STR ) ;_ eq (strcase (cdr (assoc (car x) (entget (car #Ent)))) ) ;_ strcase (cdr (assoc (car x) (entget (car #Ent)))) ) ;_ if (cdr x) ) ;_ wcmatch ) ;_ lambda #FilterList ) ;_ mapcar ) ;_ member ) ;_ not (setq #Ent nil) ) ;_ or ) ;_ and ) ) ;_ cond (and (= (getvar "errno") 7) (not #Ent) (setq #Count (1+ #Count)) (prompt (strcat "\nNope, keep trying! " (itoa #Count) " missed pick(s)." ) ;_ strcat ) ;_ prompt ) ;_ and ) ;_ while #Ent ) ;_ defun Kod: (defun c:bnw (/ blk n dat)
(setq n 0 blk (ssget (list (cons 0 "insert")))) (setvar "cmdecho" 0) (command "_.undo" "be") (if blk (repeat (sslength blk) (setq dat (entget (ssname blk n)) n (1+ n)) (entmake (list (cons 0 "text") (cons 10 (cdr (assoc 10 dat))) (cons 11 (cdr (assoc 10 dat))) (cons 1 (cdr (assoc 2 dat))) (cons 40 (getvar "textsize")) (cons 72 1) (cons 73 2))))) (command "_undo" "end") (setvar "cmdecho" 1) (princ) )
|
21.09.2020 09:10
Travaci |
textsize ile yazı yüksekliğini değiştirebilirsin.
|
21.09.2020 09:44
cherryhill |
Alıntı Bir şey daha isteyeceğim ortada uzun olan komut Bloğun açıklamalar kısmını yazıyor. Benim istediğim o komutun bloğun merkezinde yazması ve açıklamalar yazması. Şuan ki hali istediğin yere seçiyorsun balon içinde yazıyor onu istemiyorum. En alttaki komut gibi ama açıklamalar kısmını yazmasını istiyorum. çünkü blok adı uzun montajda üst üste geliyor ve birbirine giriyor ben bunlara açıklamalarda kısa adlar ekleyeceğim birbirine çakışmasın diye. teşekkürler.
|
29.09.2020 12:16
neo_2558 |
merhabalar bir isteim olacak kısa isale hatlarında sorun yok ama uzun isale hatlarında ekte yapmak istediğim işlemi tek tek yapmak zaman alıyor elinizde bunun için bir lisp varmı yapmak istediğimi birde sözel yazayım isale hattında kazık no kot ve km yazmakta bunları bir doğru üzerinde bu bilgileri seçerek yazmazını istiyorum nasıl yapabilirim.
134594-istek.dwg
|
29.09.2020 22:20
sysf1453 |
Merhabalar, arşivinde Leader-Box ile Blok isimlerini obje üzerine yazacağım bir Lisp bulunur mu?
Şimdiden teşekkürler. ProhibiT (30.09.2020 21:24 GMT) |
02.10.2020 12:48
tuna- |
Öncelikle tüm çizim okulu ailesine sağlıklı, mutlu ve bol kazançlı günler dilerim.
Yaklaşık olarak bundan 9-10 sene önce edindiğim lisp kitabından faydalanarak, nokta ve koordinat tanımlama yöntemiyle o gün için ihtiyacımı karşılayacak bir autolisp yazmış, bunu Autocad 2007 versiyonun ile 1-2 sene kullanmıştım. Seneler sonra tekrar projecilik işine geri dönünce yazdığım lispleri test ettiğimde hata verdiği için ve ihtiyacım olmadığı için de kullanmayı bırakmıştım. (iş yoğunluğundan ve bilgi eksikliğinden dolayı hata aramak da o gün için bana zor gelmişti.) Bir haftadan beri yine lispe ihtiyacım oldu, fakat ne daha önce yazdığımı ne de ihtiyacıma yönelik örnek bir lisp bulabildim. Senelerdir pasifte kaldığım forumunuzdan ve üstatlardan bana kılavuz olabilecek bir lisp ricam olacak... Elimde 0 (sıfır) layeri ile çizilmiş layer tipleri ve layer renkleri değiştirilmiş çizimler var. Bu layerları her defasında tek tek filitre ederek değiştirmektense, sıfır layeri ile çizilmiş objeleri (line, circel, pline, arc, hatch, text vb. ) hem layer tipini hem de layer rengini ayrı ayrı istediğim renge ve tipe dönüştürmek istiyorum. Sizin değerli vaktinizi çalmamak için sizden bana örnek olabilecek herhangi bir objeyi seçip o objenin özelliklerini değiştirebileceğim bir lisp yazabilir misinizi rica ediyorum. Saygılarımla.
|
02.10.2020 14:50
Travaci |
Alıntı Layerları Laymrg ile çevirdikten sonra objeleri seçip propertiesten filtreleyip diğerlerini yapabilirsin.
|
02.10.2020 17:06
tuna- |
Alıntı Sn. Travaci hocam, öncelikle verdiğiniz cevap için teşekkür ederim. Laymrg komutuna daha önce hiç ihtiyacım olmadığı için kullanmamıştım. İhtiyacım olmadığı için böyle bir komuttan da haberim yoktu. Bu zamana kadar bütün işlerimi filter i kullanarak yaptım çok da memnunum ve diğer autocad kullanıcılarına da tavsiye ederim. Çizim o kadar karışık ki (kullanıcı hatası diyelim) Laymrg komutu ile seçim yaptığım zaman öncelikle properties açılmadığını belirtmek isterim. Ayrıca layer işaretledikten sonra hiçbir işlem yapmadan komuttan çıkıp move P komutuyla Laymrg komutunun hangi objeleri seçtiğine baktım, mübarek komut text, pline, line, circle ne bulduysa seçmiş dolayısıyla filter de olduğu gibi özellik belirtemiyorum. Laymrg komutuyla layer çevirme işleminde ise sadece layerın ismini değiştiriyor fakat renge ve çizgi tipine müdahale edildiği için değişiklik yapmıyor. İlginize tekrar tekrar çok teşekkür ederim. Saygılarımla
|
08.10.2020 15:06
elk21 |
https://www.youtube.com/watch?v=aWugO-XgxV8
https://www.youtube.com/watch?v=wDjZXZtTsA8 değerli forum üyeleri arkaşalarım ve dahi kıymetli üstadlarım linkte yer alan lisplere ihtiyacım var içinizde yardım edebilecek biri varmı saygılarımla
|
08.10.2020 18:19
mttlp |
Alıntı
|
22.11.2020 14:52
selimkydn |
Merhaba arkadaşlar,
Öncelikle hepinize sağlıklı günler diliyorum. İhtiyacım olan bir lisp var. Mevcutta hazırlanmış birçok lisp mevcut fakat benim ihtiyacım olan lispte biraz farklılıklar var. Daha doğrusu hazırlanmış fakat iki ayrı lisp olarak hazırlanmış. İhtiyacım olan lispin özellikleri; [[Başlangıç sayısını soracak, Artış miktarını soracak, Yazı yüksekliğini soracak, Text konumunu soracak(alarga, orta), Ön ek ister misin soracak, Son ek ister misin soracak, Nokta ister misin soracak( at dediğim zaman tıkladığım noktaya x-y-z nokta atacak), Balastro ister misin (at dediğim zaman tıkladığım noktaya balastro atacak), .xls dosyasına koordinalar yazılsın mı diye soracak( evet dersem nokta kot ve koordinatlarını excele dökecek), Koordinat için ondalık basamak soracak. İlgili noktayı seçin ve yeni noktayı seçin]] şeklinde devam eden bir lisp. Yardımlarınız için teşekkürler. (formdaki COUNT isimli lispin biraz geliştirilmesini istiyorum) selimkydn (23.11.2020 00:12 GMT) |
21.12.2020 05:17
adamet |
Merhaba arkadaşlar,
hepinize iyi günler Benim bir ihtiyacım var. Elimde boru metrajını excel'e döken Bome-1.lsp isimli bir dosya var. Acaba bu dosyada aşağıdaki gibi bir değişiklik yapabilir miyiz. Çizginin başlangıç ve bitiş noktasını seçtikten sonra seçili layera göre çizime polyline çizen bir ekleme yapabilirmiyiz. yani hem poz numarasını yazsın hemde ölçtüğüm yerleri polyline a çevirsin. Teşekkürler 423407-bome-1.lsp
|
25.02.2021 11:18
eagle3043 |
merhaba
iyi günler Bir lisp isteğim olacaktı.Bir paftadaki bütün blokları tabloya döksün sonra patlatınca içlerinden isaretlediğim blokları paftada da secmesini istiyorum.bu sectiğim blokları move komutu ile taşımak istiyorum şimdiden teşekkürler.
|
25.02.2021 13:25
asamet |
DATAEXTRACTION ve QSELECT komutları işinizi görmüyor mu?
|
03.03.2021 11:49
eagle3043 |
count lisp ile plandaki blokları tablo haline getirebiliyorum.Tabloyu xplode komutu ile patlatıyorum.blok finder (bf) lispi ile de tablodaki herhangi bir bir bloğu pafta içinde bulup 0 noktasından bloğa uzanan bir cizgi yapabiliyorum.Fakat ben bu seçilen bloğu move komutu taşımak istiyorum.Bu yüzden bir lisp gerekiyor.
teşekkürler
|
03.03.2021 15:17
asamet |
Bu söylediğinizden QSELECT komutunu denemediğiniz çıkarımını yapıyorum. Çünkü tarif ettiğiniz seçim işleminden daha da fazlasını yapabiliyor olduğunuzu görürdünüz.
İyi çalışmalar.
|
mantık85 |
Merhaba,
Elimde büyük bir proje alan hesabı yapıyorum ama üstüste aynı hatch gelmiş bazı alanlara. bunu teke düşürebileceğim bir komut var mı? ya da lisp?
|