Đến nội dung


Hình ảnh
- - - - -

[Yêu cầu]Lisp di chuyển text của dim


  • Please log in to reply
25 replies to this topic

#21 nhatquyelec

nhatquyelec

    biết vẽ line

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

Đã gửi 29 November 2011 - 10:32 AM

Bạn "Doan Van Ha" ơi,
Cái Lisp "ha" của bạn mình tải về rồi nhưng chạy sao khong được nơi,
Đánh "ha" vào rồi thì nó bảo chọn đối tượng, mình chọn các Aligned Dimension, sau đó enter, thì không thấy gì cả
?? sao vậy hè
  • 0

#22 bach1212

bach1212

    biết lệnh trim

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

Đã gửi 30 November 2011 - 11:51 AM

Hề hề hề,
1/- Cần gì thì hãy post bản vẽ lên.
2/- Ai cấm bạn thêm vào rồi sau khi add vào Excel lại xóa đi, bản vẽ vẫn gin.
3/- Bạn cần cách chi, mình có nhiều cách nên chả biết chọn cách chi cho phù hợp với sự khó tính của bạn.

Hic, cho em sory 2 bác phamthanhbinh ketxu nhé vì không post bản vẽ lên.
File bản vẽ của em đây ah:
http://www.cadviet.c...nh_do_tnm_2.rar
Em hứa sẽ bắt đầu học lisp để có thể.....lại được chào hỏi các bác nhiều hơn. :D. Hic, mấy câu lệnh với code để viết lisp là e dốt lém ah.
Yêu cầu em nêu ra vẫn là: không cần thêm bớt gì nữa cũng như không phải thao tác trên excel nữa bác ah, mà dùng lisp để thao tác trực tiếp trên cad để cho ra được tổng của các số sau chữ L trong chuỗi text có dạng: D600,L40
  • 0

Một môn tập luyện mang lại vô vàn lợi ích sức khỏe cho mọi người, nhiều bệnh tật nan y đều được chữa khỏi, hoàn toàn miễn phí. Hiệu quả chữa khỏi bệnh tật của nó lên đến hơn 90%.
Tài liệu tại đây: http://phapluan.org/

Rất vui được làm quen với mọi người trên facebook:
https://www.facebook...67946371&type=1

 

 


#23 Doan Van Ha

Doan Van Ha

    biết lệnh adcenter

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

Đã gửi 01 December 2011 - 10:15 AM

Bạn "Doan Van Ha" ơi,
Cái Lisp "ha" của bạn mình tải về rồi nhưng chạy sao khong được nơi,
Đánh "ha" vào rồi thì nó bảo chọn đối tượng, mình chọn các Aligned Dimension, sau đó enter, thì không thấy gì cả
?? sao vậy hè


Sau khi enter và bị lỗi, bạn bấm F2 và lấy kết quả đó paste lên đây xem lỗi gì, và Cad của bạn đã cài Express tool chưa hè?
  • 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.


#24 840244

840244

    biết zoom

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

Đã gửi 08 December 2011 - 12:41 PM

Chủ đề này rất hay, và rất hữu ích. Các anh trên diễn đàn viết lisp này để anh em cùng dùng được không ạ ?
  • 0

#25 gia_bach

gia_bach

    biết lệnh adcenter

  • CADViet Team
  • PipPipPipPipPipPipPip
  • 1433 Bài viết
Điểm đánh giá: 1426 (rất tốt)

Đã gửi 08 December 2011 - 02:49 PM

Hic, cho em sory 2 bác phamthanhbinh ketxu nhé vì không post bản vẽ lên.
File bản vẽ của em đây ah:
http://www.cadviet.c...nh_do_tnm_2.rar
Em hứa sẽ bắt đầu học lisp để có thể.....lại được chào hỏi các bác nhiều hơn. Hình đã gửi. Hic, mấy câu lệnh với code để viết lisp là e dốt lém ah.
Yêu cầu em nêu ra vẫn là: không cần thêm bớt gì nữa cũng như không phải thao tác trên excel nữa bác ah, mà dùng lisp để thao tác trực tiếp trên cad để cho ra được tổng của các số sau chữ L trong chuỗi text có dạng: D600,L40

Thường thì những yêu cầu "chen ngang" như vầy ít đuợc mọi nguời quan tâm.
Tuy nhiên để động viên bạn bắt đầu học lisp và hơn nữa .. nick của bạn có 1 phần giống nick của tui ... :)
Mời bạn tham khảo :

(defun c:ctext(/ e i kqua num obj ss ssle tmp str zero); Calculator
(vl-load-com)
(or ssle (setq ssle 2))
(setq tmp (getint (strcat "\nSo so le <" (itoa ssle) ">: ")))
(if tmp (setq ssle tmp))
(prompt "\nChon text de Cong:")
(if (setq ss (ssget (list (cons 0 "TEXT")(cons 1 "*L*"))))
(progn
(setq kqua 0 i -1)
(while (setq e (ssname ss (setq i (1+ i))))
(setq str (vla-get-TextString (vlax-ename->vla-object e) )
num (substr str (+ 2(vl-string-position (ascii"L") str nil t) )))
(if (setq num (distof num))
(setq kqua (+ kqua num))))
(setq zero (getvar "dimzin"))
(setvar "dimzin" 0)
(princ (strcat "\nKet qua = " (setq kqua (rtos kqua 2 ssle)) ""))
(if (and
(setq obj (entsel "\nChon text de ghi ket qua hay Enter de ket thuc."))
(setq obj (vlax-ename->vla-object (car obj)))
(eq (vlax-get obj 'ObjectName) "AcDbText") )
(vla-put-TextString obj kqua) )
(setvar "dimzin" zero)))
(princ))
Ps : Cách giữ lời hứa tốt nhất là 'Đừng hứa gì cả"
  • 1

#26 phamthanhbinh

phamthanhbinh

    biết lệnh adcenter

  • Moderator
  • PipPipPipPipPipPipPip
  • 6007 Bài viết
Điểm đánh giá: 3113 (tuyệt vời)

Đã gửi 08 December 2011 - 03:03 PM

Hic, cho em sory 2 bác phamthanhbinh ketxu nhé vì không post bản vẽ lên. File bản vẽ của em đây ah: http://www.cadviet.c...nh_do_tnm_2.rar Em hứa sẽ bắt đầu học lisp để có thể.....lại được chào hỏi các bác nhiều hơn. :D. Hic, mấy câu lệnh với code để viết lisp là e dốt lém ah. Yêu cầu em nêu ra vẫn là: không cần thêm bớt gì nữa cũng như không phải thao tác trên excel nữa bác ah, mà dùng lisp để thao tác trực tiếp trên cad để cho ra được tổng của các số sau chữ L trong chuỗi text có dạng: D600,L40

Hề hề hề,
Bạn dùng thủ cái này xem đã đúng ý chưa nhé.


(defun c:tko ( / sst L DK n els )
(command "undo" "be")
(setq sst (acet-ss-to-list (ssget (list (cons 0 "text") (cons 8 "chu_thich")))))
(setq L 0)
(setq DK (getstring "\n Nhap loai ong can tinh tong chieu dai: ")
n (strlen DK))
(foreach en sst
(setq els (entget en))
(cond
((= (substr (cdr (assoc 1 els)) 1 n) DK)
(setq L (+ L (atof (substr (cdr (assoc 1 els)) (+ n 3))))) )

(T nil)
)
)
(alert (strcat "\n Tong chieu dai ong duong kinh " DK " la: " (rtos L 2 2) "m"))
(if (= (strcase (getstring "\n Ban muon chon text ghi ket qua <y or n>: ")) "Y")
(progn
(setq els (entget (car (entsel "\n Chon text can thay the "))))
(entmod (subst (cons 1 (rtos L 2 2)) (assoc 1 els) els))
)
)
(command "undo" "e")
(princ)
)
Hề hề hề, nếu chưa đúng thì chớ có giận. hãy post chỗ chưa đúng lên.

Bài viết đã được chỉnh sửa nội dung bởi phamthanhbinh: 08 December 2011 - 03:39 PM
Bổ sung phần chọn tẽt ghi kết quả.

  • 1
Chúc các quý Anh trên diễn đàn luôn khỏe, đẻ thêm được nhiều thứ để mót.