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

Chuyển từ Model sang Title hàng loạt

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

Em chào Anh (Chị) trên diễn đàn,

Em có cái lisp chuyển từ Model sang Title hàng loạt như dưới,

Em mô tả cách hoạt động như sau:

Ban đầu em gọi lệnh :TaoTitle, thì nó sẽ hiện ra một folder để chọn bản vẽ trong folder đó, sau đó nó sẽ lưu  tất cả các tên bản vẽ vào file RunAll.scr để chay.

Em không biết sao nó chỉ chạy được 1 bảng mà không chạy được hàng loạt.

Mong Anh (Chị) giúp em tìm lỗi sai để em có thể chạy hàng loạt bản vẽ trong 1 folder ạ.

Em xin chân thành cảm ơn Anh (Chị).

Code của em đây ạ

====================

(defun c:TaoTitle nil
   (CK:Qick_change "CK_TaoTitle")
   (princ)
)
(defun CK:Qick_change (cmd / gfile lstdwg path scr)
   (grtext
      -1
      "Cao Thanh Kh\U+00E1nh - Ch\U+01B0\U+01A1ng tr\U+00ECnh ch\U+1EA1y ho\U+00E0ng lo\U+1EA1t b\U+1EA3n v\U+1EBD"
   )
   (setq gfile     (getfiled
                    "Kh\U+00E1nh \U+01A1i - Ch\U+1ECDn 1 file b\U+1EA5t k\U+1EF3 trong folder t\U+1ED5ng \U+0111\U+1EC3 ch\U+1EA1y title"
                    "D:\\"
                    "dwg"
                    0
                 )
         path     (vl-filename-directory gfile)
         lstdwg     (vl-directory-files path "*dwg")
         lstdwg     (acad_strlsort lstdwg)
         pathscr (strcat path "\\" "RunAll.scr")
         scr     (open pathscr "w")
   )
   (foreach    x lstdwg
      (write-line (strcat "OPEN " "\"" path "\\" x "\"" " " cmd " ") scr)
   )
   (close scr)
   (command "script" pathscr)
)
(Defun c:CK_TaoTitle    ()
   (setvar "tilemode" 0)
   (command "layout" "r" "" "Title")
   (command "erase" "all" "")
   (setvar "PSLTSCALE" 0)
   (command "-plot" "yes" "Title" "DWG To PDF.pc3" "ISO full bleed A1 (594.00 x 841.00 MM)" "m" "Landscape" "no" "Extents"  "fit" "center" "yes" "Standard.ctb" "y" "n" "n" "n" "n" "y" "n" "")
   (command "mview" "fit""")
   (command "mspace""")
   (command "zoom" "E""")
   (command "pspace""")
   (setq dsla (layoutlist))
   (setq solayout (length dsla))
   (foreach lay dsla
   (if (/= lay "Title")
   (command "layout" "d" lay"")))
   (setvar "tilemode" 1)
   (command "zoom" "e" "qsave" "close" "")
)

===================

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  

×