Đến nội dung


Hình ảnh
- - - - -

[Nhờ Giúp] Lisp Cộng Trừ Text


  • Please log in to reply
2 replies to this topic

#1 jangboko

jangboko

    biết vẽ arc

  • Members
  • PipPip
  • 44 Bài viết
Điểm đánh giá: 3 (bình thường)

Đã gửi 10 August 2016 - 10:03 PM

http://www.cadviet.c...5_cong_text.lsp

 

+Nhờ các bác trong diễn đàn giúp em cái lisp cộng (trừ) tất cả giá trị text cho một số, rồi ghi kết quả ra luôn text cũ. Em muốn quét 1 lần tất cả các giá trị số của text rồi trừ luôn với 1 số có sẵn nhập từ vào, rồi ghi kết quả luôn trên nền text cũ.

+Trường hợp của em là do bên thi công yêu cầu điều chỉnh cao độ khảo sát, em cũng sưu tầm trên diễn đàn lisp cộng ( trừ ) text với 1 số, nhưng lisp này chỉ cộng trừ từng số 1, làm như vậy rất thủ công với trường hợp của em. Rất mong các bác giúp đỡ. em xin cảm ơn ạ. 

+ Đây là lisp cộng text của em: 

(defun c:a1()
(setvar "CMDECHO" 0)
;Lay gia tri cua text thu nhat:
(setq s (entget (car (entsel "\n Select Text number: "))))
(setq otext (assoc 1 s))
(setq ot (cdr otext))
(setq ot (read (substr ot 1)))


;Lay gia tri cua text thu hai:
(command "luprec" pre)
(if ot1 (setq ot2 (getreal (strcat "\n nhap so cong them: <" (rtos ot1) ">:")))
(setq ot1 (getreal "\nValue Add :" )))


(if ot2 (setq ot1 ot2))






(setq giatri (entget (car (entsel "\n Select Text to results: "))))
(command "luprec" "2")
(setq gia (assoc 1 giatri))
;(setq gia (rtos gia 0 0))
(setq nt1 (cons 1 (rtos (+ ot ot1) 2 2)))
(setq giatri (subst nt1 gia giatri))
(entmod giatri)
(princ)
) 

 

 


+Nhờ các bác trong diễn đàn giúp em cái lisp cộng (trừ) tất cả giá trị text cho một số, rồi ghi kết quả ra luôn text cũ. Em muốn quét 1 lần tất cả các giá trị số của text rồi trừ luôn với 1 số có sẵn nhập từ vào, rồi ghi kết quả luôn trên nền text cũ.

+Trường hợp của em là do bên thi công yêu cầu điều chỉnh cao độ khảo sát, em cũng sưu tầm trên diễn đàn lisp cộng ( trừ ) text với 1 số, nhưng lisp này chỉ cộng trừ từng số 1, làm như vậy rất thủ công với trường hợp của em. Rất mong các bác giúp đỡ. em xin cảm ơn ạ. 

+ Đây là lisp cộng text của em: 

(defun c:a1()
(setvar "CMDECHO" 0)
;Lay gia tri cua text thu nhat:
(setq s (entget (car (entsel "\n Select Text number: "))))
(setq otext (assoc 1 s))
(setq ot (cdr otext))
(setq ot (read (substr ot 1)))


;Lay gia tri cua text thu hai:
(command "luprec" pre)
(if ot1 (setq ot2 (getreal (strcat "\n nhap so cong them: <" (rtos ot1) ">:")))
(setq ot1 (getreal "\nValue Add :" )))


(if ot2 (setq ot1 ot2))






(setq giatri (entget (car (entsel "\n Select Text to results: "))))
(command "luprec" "2")
(setq gia (assoc 1 giatri))
;(setq gia (rtos gia 0 0))
(setq nt1 (cons 1 (rtos (+ ot ot1) 2 2)))
(setq giatri (subst nt1 gia giatri))
(entmod giatri)
(princ)
) 

 


  • 0

#2 quocmanh04tt

quocmanh04tt

    biết lệnh imageclip

  • Members
  • PipPipPipPipPipPipPip
  • 673 Bài viết
Điểm đánh giá: 315 (khá)

Đã gửi 10 August 2016 - 10:25 PM

Của bạn đây:
(defun c:tt (/ els ent i new sst str val)
(or #delta# (setq #delta# 0.))
(if (and (princ "\nQuet chon Text...!")
(setq sst (ssget '((0 . "*TEXT"))))
(setq #delta# (cond ((getreal (strcat "\nNhap so gia <" (rtos #delta# 2 2) ">: ")))
(#delta#))))
(repeat (setq i (sslength sst))
(setq ent (ssname sst (setq i (1- i)))
els (entget ent)
str (cdr (assoc 1 els)))
(and (setq val (distof str))
(setq new (+ val #delta#))
(setq els (subst (cons 1 (rtos new 2 2)) (assoc 1 els) els))
(entmod els))))
(princ))

  • 1

#3 jangboko

jangboko

    biết vẽ arc

  • Members
  • PipPip
  • 44 Bài viết
Điểm đánh giá: 3 (bình thường)

Đã gửi 10 August 2016 - 10:31 PM

Của bạn đây:

(defun c:tt (/ els ent i new sst str val)
(or #delta# (setq #delta# 0.))
(if (and (princ "\nQuet chon Text...!")
(setq sst (ssget '((0 . "*TEXT"))))
(setq #delta# (cond ((getreal (strcat "\nNhap so gia <" (rtos #delta# 2 2) ">: ")))
(#delta#))))
(repeat (setq i (sslength sst))
(setq ent (ssname sst (setq i (1- i)))
els (entget ent)
str (cdr (assoc 1 els)))
(and (setq val (distof str))
(setq new (+ val #delta#))
(setq els (subst (cons 1 (rtos new 2 2)) (assoc 1 els) els))
(entmod els))))
(princ))

toẹt vời ông mặt zời, cảm ơn bạn nhiều


  • 0