Sık Sorulan Sorular
Download
İzle Öğren
Eğitim Videoları
AutoCAD Videoları
3ds Max Videoları
AutoCAD Kursu Ders Videoları
AutoCAD Kursu 2 Boyut Dersleri
AutoCAD Kursu 3 Boyut Dersleri
Proje Dökümanları
Çizimler
Mimari Çizimler
Elektrik
DoÄŸalgaz
Harita Çizimleri
Tesisat
Ferforje
Makine
3 Boyut
3ds Max
ArchiCAD
Solidworks
Diğer Çizimler
Lispler
Menüler
Fontlar
FreeMUST
Eğitim Dökümanları
Genel Kategori
Çizim Programları
IES Dökümanları
AutoCAD
AutoLISP
Konu Anlatımları
Örnek Lispler
Pline 'ları se.
Merdiven çizen.
Rectangle Solid.
2D Polyline 'ı.
Sürekli Kopya
Civata ve Somun.
Seçilen nesnen.
Z yönünde kop.
Z yönünde taÅ.
Daire ortasına.
Rakam sıralaya.
Artan sırayla .
Sırasıyla num.
Sayfadaki textl.
Yazıyı refera.
Seçilen nesnen.
...
Sürümler
Menüler
DWF Dosyaları
Programlama
AutoCAD Püfleri
EÄŸitim
AutoCAD EÄŸitimi
Karma 3 Boyut Dersleri
Adım Adım AutoCAD Eğitimi
01.Bölüm
02.Bölüm
03.Bölüm
04.Bölüm
05.Bölüm
06.Bölüm
07.Bölüm
08.Bölüm
09.Bölüm
10.Bölüm
11.Bölüm
12.Bölüm
Uygulamalar
Adım Adım 3 Boyut Eğitimi
Kariyer
3ds Max
Attribute lar
- aLd Fonksiyonu
- TCad Metraj
- FacadeCAD
- Cephe Kot
- HQ Library
- FreeMUST
- ALS/Pasdoc.A
- Excele Tablo Aktaran Lisp
- Nokta Koordinat Tablosu
- Plana İç Ölçü Verme
- Toplam Alanı Yazan Lisp
- Alan ve Çevre Yazan Lisp
- Koordinat, Alan ve Çevre Tablo Halinde Yazma
- AutoCAD'de Nokta Dökümü
- Hava Kanalı Metraj Fonksiyonu
- Boru Metrajı Fonksiyonu
- OptiCAD
- Özel Çizgi Tipi Oluşturmak
- AutoCAD te Koni Açılımı Nasıl Yapılır?
- PolyLine & Point Objelerinden Aplikasyon Çizelgesi
- Z değerini sıfırlama
- AutoCAD te Polyline üzerine uzunluk yazdırma
- Sıralı numaralandırma
- Yazı içindeki sayıları toplama
- Karmaşık Path ile Loft Uygulaması
- Çoklu Fillet Fonksiyonu
- Ölçekli Türk Bayrağı çizen lisp
- Duvar-Lento-Kapı-Pencere Metraj Programı
Yazı içindeki sayıları toplayan lisp
admin - 08.04.2020 14:03
- Toplanmak üzere seçilen text objelerinin içinde virgül varsa nokta olarak alınır.
- Söz konusu text objelerinin içinde nümerik olmayan karakterler varsa, gözardı edilir.
- Sonuçlar yazdırılmak üzere seçim yapmanız istendiğinde tıkladığınız noktada bir text ya da mtext varsa onun içeriği değiştirilerek toplam değer yazılır. eğer tıklanan noktada text veya mtext türü bir obje yoksa, yeni bir text objesi oluşturularak toplam yazılır.
Çalıştırmak için komut: tpLm
Lisple ilgili forum linki Ä°leti #62467
Bu lispi kodlayan ProhibiT 'e teşekkürler.
(command "undo" "group") (setvar "cmdecho" 0)
(defun *error* (er)
(setvar "dimzin" odz) (setvar "Luprec" oLp) (command "_.undo" "e"))
(if (not oLp) (setq oLp (getvar "luprec")))
(if (setq dpp (getint (strcat "nOndalık Basamak Sayısı <" (itoa oLp) ">: ")))
(setq oLp dpp) (setq dpp oLp)) (setq odz (getvar "dimzin"))
(setvar "luprec" dpp) (setvar "dimzin" 0)
(princ "n toplanacak sayıları seçiniz")
(setq tpLn (ssget (list (cons 0 "*text")))
L (sslength tpLn) n -1 rsLt nil
txh (cdr (assoc 40 (entget (ssname tpLn 0)))))
(while (< (setq n (1+ n)) L)
(setq pvt (cdr (assoc 1 (entget (ssname tpLn n)))) m (strlen pvt) o 0)
(while (<= (setq o (1+ o)) m)
(if (= (substr pvt o 1) (chr 44))
(setq pvt (strcat (substr pvt 1 (1- o)) (chr 46)
(substr pvt (1+ o) (- m o)))))
(if (or (< (ascii (substr pvt o 1)) 44) (> (ascii (substr pvt o 1)) 57))
(setq pvt (strcat (substr pvt 1 (1- o)) (substr pvt (1+ o) (- m o)))
m (strlen pvt) o (1- o))))
(if rsLt (setq rsLt (+ rsLt (atof pvt))) (setq rsLt (atof pvt))))
(princ "n toplamı seçiniz")
(while (/= 3 (car (setq sp (grread t 4 2)))))
(setq sp (cadr sp) np (list (car sp) (cadr sp)) tpLm (ssget np))
(if tpLm (progn (setq tpLm (entget (ssname tpLm 0)))
(if (or (= (cdr (assoc 0 tpLm)) "TEXT")
(= (cdr (assoc 0 tpLm)) "MTEXT"))
(progn (setq tpLm (subst (cons 1 (rtos rsLt)) (assoc 1 tpLm) tpLm))
(entmod tpLm) (entupd (cdr (assoc -1 tpLm))))))
(entmake (list (cons 0 "text") (cons 10 sp) (cons 50 0) (cons 40 txh)
(cons 1 (rtos rsLt)))))
(command "undo" "e") (setvar "dimzin" odz) (setvar "Luprec" oLp) (prin1)
)
Bu kodları nasıl kullanacağınızı bilmiyorsanız aşağıdaki linkten;
AutoLISP > Konu Anlatımları > Lisp Dosyalarının oluşturulması ve Yüklenmesi
konusunu inceleyiniz.
Yazar: ProhibiT
İçerik: LSP (Lisp) formatında AutoLISP dosyası
Tag: lisp, lsp, yazı, toplama, toplam, değer, sayı topla, text, sum, addition
TPLM LÄ°SP
Autolisp atof komutu nun içindeki boşluk hayat kurtarıyor.
Boşluk verisinden sonra hiç bir veriyi dikkate almıyor .
Bu durum çok iyi boşluktan sonra sayıda olsa dikkate almıyor.
not düzeltme klavye tuşuna yanlış basıldı.
"m2 deki dayının sonuna ekleniyor"="m2 deki Sayının sonuna ekleniyor" olacak
sayılar
Alan: 0.25 m2 , Alan: 11 m² " m2" boşluk varsa sorun yok. (sayı boşluk metin)
Alan: 0.25m2 , Alan: 11m2 "m2" boşluk yoksa sorun var. Veriler 0.252 , 112 ye dönüşüyor.
bu durunda hata meydana geliyor.
Konu: TPLM lisp i hakkında (yazı-ascii sayı toplamı)
Gönderen: recep_xyz
Tarih: 12.06.2024
ProhibiT Hocam ellerinize sağlık güzel bir çalışma olmuş.
Fakat bir öngörülemeyen sıkıntısı mevcut
Yazı Verisi "Toplam :125.35 m2" yazılarında değişken verisi 125.3520 olmakta
Yazı Verisi "Toplam :125 m2" yazılarında değişken verisi 1252 olmakta
Yazı Verisi "Toplam :125.0035 m2" yazılarında değişken verisi 125.00352 olmaktadır.
veri toplanınca GERCEKTE SONUÇ :375.3535 LİSP SONUÇ : 1502.35552
bu durumda lisp içinde m2 ve m3 leri işlem dışı nasıl biraktırırız ?
revize projelerde genellikle elle müdahelede bu durumda standart olmuyor.
m2 deki dayının sonuna ekleniyor 1ler hanesine eklenince sayı 10 kat artıyor vede
nereye eklendiği muammalı bu hata birler basamağıda olabilir.
Noktadan sonraki basamaklarda olabilir .
"m²" yerine "m2" yazılmış , "m³" yerine "m3" yazılmış bazı yazılar elle müdaheedilirken yazılmış
Bu durumda bu lisp yazıyı ayırarak gerekli kısmı işleme alınabilir mi ?
lisp yardımıyla hatanın önüne geçilebilir mi?
bu yazıları [ÖNBİLGİ]-[DEĞERİ]-[BİRİMİ] olarak geğişkenlere nasıl atayabiliriz.?????
merhaba öncelikelr çok teşekkür ederim bu lisp için.... yaklaşık 1 yıldır autocad 2019 ve 2020 de kullandığım lisp şuan autocad 2020 de çalışmamaya başladı. Şöyle bir hata veriyor...
; warning: unwind skipped on exception
; error: Exception occurred: 0xC0000005 (Access Violation)
Sorun ne olabilir acaba? Prohibit hocam yardımcı olurmusunuz?