Chuyển đến nội dung
Diễn đàn CADViet
Đăng nhập để thực hiện theo  
c0ntructi0n

Lisp Rãi Thép Sàn

Các bài được khuyến nghị

Các cao thủ giúp mình cái lisp sau, mình xin giải thích như sau, cám ơn các bạn nhiều!

 

  1. Lệnh lisp là rrr
  2. Mình gõ lệnh, lisp sẽ hiện ra màn hình và mình click vào hai điểm 1 và 2 (2 điểm này cùng nằm ngang hoặc cùng thẳng đứng)è ta được con số, giả sử là 4000
  3. Tiếp lisp sẽ hỏi, khoảng cách rãi thép, giả sử 150
  4. Tiếp lisp sẽ hỏi đường kính thép là nhiêu, giả sử 10
  5. Tiếp lisp sẽ yêu cầu mình chọn text và nó sẽ ghi nội dung vào text mình đã chọn, kết quả là: 2710a150.
  6. Trong đó: 27=lấy phần nguyên của (4000/150)+1

http://www.cadviet.com/upfiles/6/149122_cad1.dwg

149122_cad1.jpg

  • Vote giảm 1

Chia sẻ bài đăng này


Liên kết tới bài đăng
Chia sẻ trên các trang web khác

Các cao thủ giúp mình cái lisp sau, mình xin giải thích như sau, cám ơn các bạn nhiều!

 

  1. Lệnh lisp là rrr
  2. Mình gõ lệnh, lisp sẽ hiện ra màn hình và mình click vào hai điểm 1 và 2 (2 điểm này cùng nằm ngang hoặc cùng thẳng đứng)è ta được con số, giả sử là 4000
  3. Tiếp lisp sẽ hỏi, khoảng cách rãi thép, giả sử 150
  4. Tiếp lisp sẽ hỏi đường kính thép là nhiêu, giả sử 10
  5. Tiếp lisp sẽ yêu cầu mình chọn text và nó sẽ ghi nội dung vào text mình đã chọn, kết quả là: 2710a150.
  6. Trong đó: 27=lấy phần nguyên của (4000/150)+1

http://www.cadviet.com/upfiles/6/149122_cad1.dwg

149122_cad1.jpg

mình cũng có lisp này. về mình up lên giúp bạn

  • Vote tăng 1

Chia sẻ bài đăng này


Liên kết tới bài đăng
Chia sẻ trên các trang web khác

mình cũng có lisp này. về mình up lên giúp bạn

(defun c:SL ( / a1 c)
(setq luu (getvar "osmode"))
(setq lay (getvar "clayer"))
;(command "layer" "s" "Defpoints" "")
;(command "osnap" "Perp,Near")
(setq a1 (getdist "\nCh\U+1ECDn kho\U+1EA3ng r\U+1EA3i th\U+00E9p: ")) 
(or (and a (or (= (type a) 'int) (= (type a) 'real))) (setq a 200))
(setq a (cond ((getdist (strcat "\nKho\U+1EA3ng c\U+00E1ch thanh th\U+00E9p <" (rtos a 2 2) ">:"))) (a)))
(or (and hbv (or (= (type hbv) 'int) (= (type hbv) 'real))) (setq hbv 10))
(setq hbv (cond ((getreal (strcat "\nduong kinh thep <" (rtos hbv 2 2) ">: "))) (hbv)))
(setq c (+ (/ a1 a) 1))
(while (setq ent (nentsel "\nCh\U+1ECDn ghi gi\U+00E1 tr\U+1ECB (Text ho\U+0103c ATT):" ))
(and (wcmatch (cdr (assoc 0 (entget (car ent)))) "ATTRIB,*TEXT")
(vla-put-textstring (vlax-ename->vla-object  (car ent)) (strcat (rtos c 2 0) "%%c" (rtos hbv 2 0) "a" (rtos a 2 0) ) )))
(SETVAR "clayer" lay)
(setvar "osmode" luu)
(princ)
)

  • Vote tăng 4

Chia sẻ bài đăng này


Liên kết tới bài đăng
Chia sẻ trên các trang web khác
(defun c:SL ( / a1 c)
(setq luu (getvar "osmode"))
(setq lay (getvar "clayer"))
;(command "layer" "s" "Defpoints" "")
;(command "osnap" "Perp,Near")
(setq a1 (getdist "\nCh\U+1ECDn kho\U+1EA3ng r\U+1EA3i th\U+00E9p: ")) 
(or (and a (or (= (type a) 'int) (= (type a) 'real))) (setq a 200))
(setq a (cond ((getdist (strcat "\nKho\U+1EA3ng c\U+00E1ch thanh th\U+00E9p <" (rtos a 2 2) ">:"))) (a)))
(or (and hbv (or (= (type hbv) 'int) (= (type hbv) 'real))) (setq hbv 10))
(setq hbv (cond ((getreal (strcat "\nduong kinh thep <" (rtos hbv 2 2) ">: "))) (hbv)))
(setq c (+ (/ a1 a) 1))
(while (setq ent (nentsel "\nCh\U+1ECDn ghi gi\U+00E1 tr\U+1ECB (Text ho\U+0103c ATT):" ))
(and (wcmatch (cdr (assoc 0 (entget (car ent)))) "ATTRIB,*TEXT")
(vla-put-textstring (vlax-ename->vla-object  (car ent)) (strcat (rtos c 2 0) "%%c" (rtos hbv 2 0) "a" (rtos a 2 0) ) )))
(SETVAR "clayer" lay)
(setvar "osmode" luu)
(princ)
)

Mình dùng font khi đánh phi phải đánh Alt+222 chứ không phải %%c thì sửa lisp như thế nào?

  • Vote tăng 1
  • Vote giảm 1

Chia sẻ bài đăng này


Liên kết tới bài đăng
Chia sẻ trên các trang web khác

Mình dùng font khi đánh phi phải đánh Alt+222 chứ không phải %%c thì sửa lisp như thế nào?

bạn thử xem tùy kiểu font có kiểu gõ phi: /g. ` , ~ hay j đấy thay vào chỗ %%C

  • Vote giảm 1

Chia sẻ bài đăng này


Liên kết tới bài đăng
Chia sẻ trên các trang web khác

Mình dùng font khi đánh phi phải đánh Alt+222 chứ không phải %%c thì sửa lisp như thế nào?

Dự là bạn dùng font VNI, nếu vậy bạn có thể thay "%%c" bằng: "\U+00DE" hoặc "\U+00FE"

Chia sẻ bài đăng này


Liên kết tới bài đăng
Chia sẻ trên các trang web khác

Tạo một tài khoản hoặc đăng nhập để nhận xét

Bạn cần phải là một thành viên để lại một bình luận

Tạo tài khoản

Đăng ký một tài khoản mới trong cộng đồng của chúng tôi. Điều đó dễ mà.

Đăng ký tài khoản mới

Đăng nhập

Bạn có sẵn sàng để tạo một tài khoản ? Đăng nhập tại đây.

Đăng nhập ngay

Đăng nhập để thực hiện theo  

×