Đến nội dung


Hình ảnh
- - - - -

[Yêu cầu] Xin lisp xuất toàn bộ text trong bản vẽ vào file text


  • Please log in to reply
9 replies to this topic

#1 saycaphe

saycaphe

    biết vẽ circle

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

Đã gửi 13 June 2012 - 07:47 AM

Chào các bác.
Em nhờ các bác giúp em lisp xuất toàn bộ text của bản vẽ(em đính kèm theo) ra 1 file text có tên giống tên bản vẽ và nằm cùng thư mục với bản vẽ
Cảm ơn các bác :)
  • 0

#2 saycaphe

saycaphe

    biết vẽ circle

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

Đã gửi 13 June 2012 - 07:48 AM

http://www.cadviet.c...47200630300.dwg
  • 0

#3 ketxu

ketxu

    Copier - Paster - Editor

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

Đã gửi 13 June 2012 - 09:25 AM

File bạn gửi chẳng có ý nghĩa gì cho việc viết lisp cả :wacko:
  • 1

Thành viên nhóm CadMagic.
Mời bạn ghé thăm facebook nhóm - Page viết lisp theo yêu cầu  :
CAD MAGIC


#4 Doan Van Ha

Doan Van Ha

    biết lệnh adcenter

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

Đã gửi 13 June 2012 - 09:35 AM

Lisp xuất toàn bộ Text/Mtext trên bản vẽ ra file txt cùng tên với bản vẽ.

;Doan Van Ha - CADViet.com - Ngay 13/6/2012
;Muc dich: Xuat tat ca *Text tren ban ve ra file txt cung ten voi ban ve.
(defun C:HA( / lst fn pw)
(princ "\Chon cac Text/Mtext can xuat ra file...")
(setq lst (vl-remove-if 'listp (mapcar 'cadr (ssnamex (ssget '((0 . "*TEXT")))))))
(setq fn (strcat (getvar "dwgprefix") (vl-string-subst "txt" "dwg" (getvar "dwgname"))))
(setq pw (open fn "w"))
(foreach ent lst
(write-line (cdr (assoc 1 (entget ent))) pw))
(close pw)
(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.


#5 saycaphe

saycaphe

    biết vẽ circle

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

Đã gửi 13 June 2012 - 11:37 AM

Lisp xuất toàn bộ Text/Mtext trên bản vẽ ra file txt cùng tên với bản vẽ.


;Doan Van Ha - CADViet.com - Ngay 13/6/2012
;Muc dich: Xuat tat ca *Text tren ban ve ra file txt cung ten voi ban ve.
(defun C:HA( / lst fn pw)
(princ "\Chon cac Text/Mtext can xuat ra file...")
(setq lst (vl-remove-if 'listp (mapcar 'cadr (ssnamex (ssget '((0 . "*TEXT")))))))
(setq fn (strcat (getvar "dwgprefix") (vl-string-subst "txt" "dwg" (getvar "dwgname"))))
(setq pw (open fn "w"))
(foreach ent lst
(write-line (cdr (assoc 1 (entget ent))) pw))
(close pw)
(princ))

Cảm ơn bác nhiều lắm :D
  • 0

#6 saycaphe

saycaphe

    biết vẽ circle

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

Đã gửi 13 June 2012 - 04:14 PM

File bạn gửi chẳng có ý nghĩa gì cho việc viết lisp cả :wacko:

Đối với bản vẽ mình up lên thì phài explode all, rồi sau đó select all, rồi mới thực hiện lisp của bác Doan Van Ha được.

Cho mình hỏi thêm : khi thực hiện lệnh explode all, đối với những bản vẽ nhiều chi tiết, sẽ hiện ra cảnh báo :autocad alert "this operation may take a long time..." rồi lựa chọn yes or no, vậy có cách nào mặc định lựa chọn yes or no khi gặp những trường hợp như vậy ko?
  • 0

#7 saycaphe

saycaphe

    biết vẽ circle

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

Đã gửi 15 June 2012 - 08:50 AM

File bạn gửi chẳng có ý nghĩa gì cho việc viết lisp cả :wacko:

Trong bản vẽ mình up lên đó, có cái phần ghi tên và mã vật tư đó, hình như đc tạo bằng dynamic block, mình có cách nào xuất nội dung của nó ra text đc các bác ơi :(.
Bác bác giúp mình nhé.
Thanks:x
  • 0

#8 ketxu

ketxu

    Copier - Paster - Editor

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

Đã gửi 17 June 2012 - 01:05 AM

Sử dụng Code 2 bài này
  • 0

Thành viên nhóm CadMagic.
Mời bạn ghé thăm facebook nhóm - Page viết lisp theo yêu cầu  :
CAD MAGIC


#9 kaka105ht

kaka105ht

    biết vẽ circle

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

Đã gửi 19 June 2012 - 02:22 PM

Lisp xuất toàn bộ Text/Mtext trên bản vẽ ra file txt cùng tên với bản vẽ.


;Doan Van Ha - CADViet.com - Ngay 13/6/2012
;Muc dich: Xuat tat ca *Text tren ban ve ra file txt cung ten voi ban ve.
(defun C:HA( / lst fn pw)
(princ "\Chon cac Text/Mtext can xuat ra file...")
(setq lst (vl-remove-if 'listp (mapcar 'cadr (ssnamex (ssget '((0 . "*TEXT")))))))
(setq fn (strcat (getvar "dwgprefix") (vl-string-subst "txt" "dwg" (getvar "dwgname"))))
(setq pw (open fn "w"))
(foreach ent lst
(write-line (cdr (assoc 1 (entget ent))) pw))
(close pw)
(princ))

Bác có thể viết thêm được lips xuất các điểm cao độ từ bản vẽ khảo sát sang file text theo dạng "STT_ X_Y_0 cao do" để có thể chạy được trên HS không ạ?
  • 0

#10 kaka105ht

kaka105ht

    biết vẽ circle

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

Đã gửi 19 June 2012 - 02:23 PM

em up cho bác mẫu file bác chạy giúp em với http://www.cadviet.c...3/78855_mau.rar
  • 0