Đến nội dung


Hình ảnh
- - - - -

(Yêu Cầu) Nhờ Các Bác Viết Lisp Tính Theo Công Thức (Text Số A - Text Số B)/ Text Số C Sau Đó Dán Vào 1 Text Cho Trước.


  • Please log in to reply
13 replies to this topic

#1 trandangquang92

trandangquang92

    biết vẽ ellipse

  • Members
  • PipPip
  • 56 Bài viết
Điểm đánh giá: -17 (hơi kém)

Đã gửi 23 May 2016 - 06:28 PM

Nhờ Các Bác Viết Lisp Tính Theo Công Thức (Text Số A - Text Số B)/ Text Số C Sau Đó Dán Vào 1 Text Cho Trước. vd:( 2.5-2.1)/60=0.076. Em xin cảm ơn.

 

  • 0

#2 Doan Van Ha

Doan Van Ha

    biết lệnh adcenter

  • CADViet Team
  • PipPipPipPipPipPipPip
  • 5454 Bài viết
Điểm đánh giá: 2626 (tuyệt vời)

Đã gửi 23 May 2016 - 11:24 PM

Đây!

(defun C:HA(/ a b c )
 (vl-load-com)
 (setq a (distof (cdr (assoc 1 (entget (car (entsel "\nText a: ")))))))
 (setq b (distof (cdr (assoc 1 (entget (car (entsel "\nText b: ")))))))
 (setq c (distof (cdr (assoc 1 (entget (car (entsel "\nText c: ")))))))
 (vla-put-textstring (vlax-ename->vla-object (car (entsel "\nText ket qua: "))) (rtos (/ (- a b) c) 2 2))
 (princ))

  • 1

* Chỉ nên yêu cầu Lisp khi bạn làm việc đó mất cả ngày nhưng họ chỉ viết 1 giờ. Đừng nêu yêu cầu Lisp khi bạn chỉ làm 1 giờ nhưng bắt họ phải mất cả ngày.

* Nhờ viết lisp cũng như đi khám bệnh. Chỉ gởi căn cước và than sắp chết thì không bác sỹ nào cứu sống được.


#3 trandangquang92

trandangquang92

    biết vẽ ellipse

  • Members
  • PipPip
  • 56 Bài viết
Điểm đánh giá: -17 (hơi kém)

Đã gửi 24 May 2016 - 09:19 AM

 

Đây!

(defun C:HA(/ a b c )
 (vl-load-com)
 (setq a (distof (cdr (assoc 1 (entget (car (entsel "\nText a: ")))))))
 (setq b (distof (cdr (assoc 1 (entget (car (entsel "\nText b: ")))))))
 (setq c (distof (cdr (assoc 1 (entget (car (entsel "\nText c: ")))))))
 (vla-put-textstring (vlax-ename->vla-object (car (entsel "\nText ket qua: "))) (rtos (/ (- a b) c) 2 2))
 (princ))

EM CÁM ƠN ANH RẤT NHIỀU!


  • 0

#4 trandangquang92

trandangquang92

    biết vẽ ellipse

  • Members
  • PipPip
  • 56 Bài viết
Điểm đánh giá: -17 (hơi kém)

Đã gửi 24 May 2016 - 09:31 AM

anh ơi lisp nó làm tròn số. Vd: kết quả là 0.005 hoặc 0.02 nó làm tròn là 0 anh.


  • -1

#5 colombus

colombus

    biết vẽ ellipse

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

Đã gửi 24 May 2016 - 09:46 AM

anh ơi lisp nó làm tròn số. Vd: kết quả là 0.005 hoặc 0.02 nó làm tròn là 0 anh.

"(vla-put-textstring (vlax-ename->vla-object (car (entsel "\nText ket qua: "))) (rtos (/ (- a b) c) 2 2))" TRONG CÁI ĐOẠN NÀY, chỗ cuối you sửa 2 số 2 thành 2 số 3 thì nó sẽ lấy 3 số lẻ. Tôi đoán là vậy.


  • 1

#6 Doan Van Ha

Doan Van Ha

    biết lệnh adcenter

  • CADViet Team
  • PipPipPipPipPipPipPip
  • 5454 Bài viết
Điểm đánh giá: 2626 (tuyệt vời)

Đã gửi 24 May 2016 - 09:53 AM

Sửa:

(rtos (/ (- a b) c) 2 2)

Thành (nếu muốn lấy 3 số lẻ, tương tự cho 4; 5 số lẻ...):

(rtos (/ (- a b) c) 2 3)


  • 0

* Chỉ nên yêu cầu Lisp khi bạn làm việc đó mất cả ngày nhưng họ chỉ viết 1 giờ. Đừng nêu yêu cầu Lisp khi bạn chỉ làm 1 giờ nhưng bắt họ phải mất cả ngày.

* Nhờ viết lisp cũng như đi khám bệnh. Chỉ gởi căn cước và than sắp chết thì không bác sỹ nào cứu sống được.


#7 trandangquang92

trandangquang92

    biết vẽ ellipse

  • Members
  • PipPip
  • 56 Bài viết
Điểm đánh giá: -17 (hơi kém)

Đã gửi 24 May 2016 - 10:03 AM

em cảm ơn a.


  • 0

#8 trandangquang92

trandangquang92

    biết vẽ ellipse

  • Members
  • PipPip
  • 56 Bài viết
Điểm đánh giá: -17 (hơi kém)

Đã gửi 24 May 2016 - 10:06 AM

còn mình muốn có giá trị tuyệt đối, như kết quả -0.005 em muốn lấy giá trị là 0.005


  • -1

#9 Doan Van Ha

Doan Van Ha

    biết lệnh adcenter

  • CADViet Team
  • PipPipPipPipPipPipPip
  • 5454 Bài viết
Điểm đánh giá: 2626 (tuyệt vời)

Đã gửi 24 May 2016 - 10:14 AM

còn mình muốn có giá trị tuyệt đối, như kết quả -0.005 em muốn lấy giá trị là 0.005

Sửa cho bạn lắt nhắt suốt ngày à?

Sửa:

(rtos (/ (- a b) c) 2 2)

Thành:

(rtos (abs (/ (- a b) c)) 2 3)


  • 1

* Chỉ nên yêu cầu Lisp khi bạn làm việc đó mất cả ngày nhưng họ chỉ viết 1 giờ. Đừng nêu yêu cầu Lisp khi bạn chỉ làm 1 giờ nhưng bắt họ phải mất cả ngày.

* Nhờ viết lisp cũng như đi khám bệnh. Chỉ gởi căn cước và than sắp chết thì không bác sỹ nào cứu sống được.


#10 trandangquang92

trandangquang92

    biết vẽ ellipse

  • Members
  • PipPip
  • 56 Bài viết
Điểm đánh giá: -17 (hơi kém)

Đã gửi 24 May 2016 - 10:19 AM

hì hì giờ đã xong rồi anh. :D


  • 0

#11 trandangquang92

trandangquang92

    biết vẽ ellipse

  • Members
  • PipPip
  • 56 Bài viết
Điểm đánh giá: -17 (hơi kém)

Đã gửi 24 May 2016 - 01:49 PM

 anh ơi thay hàm abs như cách của anh cad báo lỗi " error: too many arguments"


  • -1

#12 Doan Van Ha

Doan Van Ha

    biết lệnh adcenter

  • CADViet Team
  • PipPipPipPipPipPipPip
  • 5454 Bài viết
Điểm đánh giá: 2626 (tuyệt vời)

Đã gửi 24 May 2016 - 02:11 PM

Kiểm tra dấu ngoặc 


  • -1

* Chỉ nên yêu cầu Lisp khi bạn làm việc đó mất cả ngày nhưng họ chỉ viết 1 giờ. Đừng nêu yêu cầu Lisp khi bạn chỉ làm 1 giờ nhưng bắt họ phải mất cả ngày.

* Nhờ viết lisp cũng như đi khám bệnh. Chỉ gởi căn cước và than sắp chết thì không bác sỹ nào cứu sống được.


#13 trandangquang92

trandangquang92

    biết vẽ ellipse

  • Members
  • PipPip
  • 56 Bài viết
Điểm đánh giá: -17 (hơi kém)

Đã gửi 24 May 2016 - 05:29 PM

em đã sửa dấu ngoặc nhiều lần vẫn chưa đc


  • -1

#14 Doan Van Ha

Doan Van Ha

    biết lệnh adcenter

  • CADViet Team
  • PipPipPipPipPipPipPip
  • 5454 Bài viết
Điểm đánh giá: 2626 (tuyệt vời)

Đã gửi 24 May 2016 - 06:21 PM

Đếm dòng trên như nào và dòng dưới như nào thì sửa như thế ấy. Tôi đã ghi rõ ở trên rồi. Tôi vừa lãnh 1 dislike rồi đó.


  • 1

* Chỉ nên yêu cầu Lisp khi bạn làm việc đó mất cả ngày nhưng họ chỉ viết 1 giờ. Đừng nêu yêu cầu Lisp khi bạn chỉ làm 1 giờ nhưng bắt họ phải mất cả ngày.

* Nhờ viết lisp cũng như đi khám bệnh. Chỉ gởi căn cước và than sắp chết thì không bác sỹ nào cứu sống được.