cadthanyeu 0 Báo cáo bài đăng Đã đăng Tháng 10 5, 2008 Tôi mới làm quen với lisp. Tôi xin hỏi các bạn là : tôi muốn thay đổi thuộc tính (Heihght = 5, textstyle= vnarial) tất cả các đối tượng text thuộc lớp "hoten" trong bản vẽ thì viết lisp như thế nào ? tôi đã viết lệnh sau nhưng không được. Tôi không biết dùng hàm gì để thay dổi được tất cả các text thuộc lớp "hoten" trong bản vẽ. các bạn xem giúp tôi nhé. (setq ent(ssget "x" (list (cons 8 "hoten")(cons 0 "TEXT")))) (setq n(sslength ent)) (command "text" "j" "C" "" "0" n ) 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
Tue_NV 3.912 Báo cáo bài đăng Đã đăng Tháng 10 6, 2008 Tôi mới làm quen với lisp. Tôi xin hỏi các bạn là : tôi muốn thay đổi thuộc tính (Heihght = 5, textstyle= vnarial) tất cả các đối tượng text thuộc lớp "hoten" trong bản vẽ thì viết lisp như thế nào ? tôi đã viết lệnh sau nhưng không được. Tôi không biết dùng hàm gì để thay dổi được tất cả các text thuộc lớp "hoten" trong bản vẽ.các bạn xem giúp tôi nhé. (setq ent(ssget "x" (list (cons 8 "hoten")(cons 0 "TEXT")))) (setq n(sslength ent)) (command "text" "j" "C" "" "0" n ) Mình nghĩ rằng không nhất thiết phải sử dụng Lisp, bạn hãy dùng lệnh filter trong AutoCad. Để thay đổi đối tượng thì đầu tiên bạn phải lựa chọn đối tượng Command : filter Bạn Add to list : layer = hoten Text Style name = vnarial Text Height = 5 Object = Text Bạn lưu cách chọn lựa này theo một tên nào đó trong hộp Save As sau đó Apply chọn đối tượng là xong 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
cadthanyeu 0 Báo cáo bài đăng Đã đăng Tháng 10 8, 2008 Mình nghĩ rằng không nhất thiết phải sử dụng Lisp, bạn hãy dùng lệnh filter trong AutoCad.Để thay đổi đối tượng thì đầu tiên bạn phải lựa chọn đối tượng Command : filter Bạn Add to list : layer = hoten Text Style name = vnarial Text Height = 5 Object = Text Bạn lưu cách chọn lựa này theo một tên nào đó trong hộp Save As sau đó Apply chọn đối tượng là xong Tôi cũng biết lệnh Change text (CHT) trong acad nhưng tôi muốn hỏi cách viết mã lisp để học hỏi về nhôn ngữ lisp. - ttôi đã biết được mã lisp để chọn tất cả các text trong lớp "HOten" nhưng không biết đoạn mã nào để thay đổi tất cả thuộc tính của chúng. Các bạn gíup tôi với nhé . 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
Tue_NV 3.912 Báo cáo bài đăng Đã đăng Tháng 10 9, 2008 Tôi cũng biết lệnh Change text (CHT) trong acad nhưng tôi muốn hỏi cách viết mã lisp để học hỏi về nhôn ngữ lisp.- ttôi đã biết được mã lisp để chọn tất cả các text trong lớp "HOten" nhưng không biết đoạn mã nào để thay đổi tất cả thuộc tính của chúng. Các bạn gíup tôi với nhé . Text có rất nhiều thuộc tính. Bạn nói chung chung quá. Bạn có thể nói rõ hơn được không? 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
ssg 1.102 Báo cáo bài đăng Đã đăng Tháng 10 9, 2008 Tôi mới làm quen với lisp. Tôi xin hỏi các bạn là : tôi muốn thay đổi thuộc tính (Heihght = 5, textstyle= vnarial) tất cả các đối tượng text thuộc lớp "hoten" trong bản vẽ thì viết lisp như thế nào ? tôi đã viết lệnh sau nhưng không được. Tôi không biết dùng hàm gì để thay dổi được tất cả các text thuộc lớp "hoten" trong bản vẽ.các bạn xem giúp tôi nhé. (setq ent(ssget "x" (list (cons 8 "hoten")(cons 0 "TEXT")))) (setq n(sslength ent)) (command "text" "j" "C" "" "0" n ) Bạn thử làm bài này trước đã: Thay đổi height của MỘT ĐỐI TƯỢNG TEXT bất kỳ nào đó đang có trên bản vẽ. 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
gia_bach 1.553 Báo cáo bài đăng Đã đăng Tháng 10 10, 2008 Tôi mới làm quen với lisp. Tôi xin hỏi các bạn là : tôi muốn thay đổi thuộc tính (Heihght = 5, textstyle= vnarial) tất cả các đối tượng text thuộc lớp "hoten" trong bản vẽ thì viết lisp như thế nào ? tôi đã viết lệnh sau nhưng không được. Tôi không biết dùng hàm gì để thay dổi được tất cả các text thuộc lớp "hoten" trong bản vẽ.các bạn xem giúp tôi nhé. ...................... Bạn thử LISP này xem sao : ;;;; Doi thuoc tinh chieu cao va kieu TEXT (defun C:doi_text (/ ss lst ent) (setq ss (ssget "X" (list (cons 8 "hoten")(cons 0 "TEXT"))) lst (ss2ent ss)) (if (not (tblsearch "style" "vnarial")) (command "-style" "vnarial" "" "" "" "" "" "" "") ) (repeat (length lst) (setq ent (entget (car lst)) lst (cdr lst) ent (subst (cons 40 5) (assoc 40 ent) ent) ent (subst (cons 7 "vnarial") (assoc 7 ent) ent) ) (entmod ent) ) (princ) ) (defun ss2ent (ss / sodt index lstent) (setq sodt (if ss (sslength ss) 0) index 0 ) (repeat sodt (setq ent (ssname ss index) index (1+ index) lstent (cons ent lstent) ) ) (reverse lstent) ) 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
cadthanyeu 0 Báo cáo bài đăng Đã đăng Tháng 10 17, 2008 Bạn thử LISP này xem sao : ;;;; Doi thuoc tinh chieu cao va kieu TEXT (defun C:doi_text (/ ss lst ent) (setq ss (ssget "X" (list (cons 8 "hoten")(cons 0 "TEXT"))) lst (ss2ent ss)) (if (not (tblsearch "style" "vnarial")) (command "-style" "vnarial" "" "" "" "" "" "" "") ) (repeat (length lst) (setq ent (entget (car lst)) lst (cdr lst) ent (subst (cons 40 5) (assoc 40 ent) ent) ent (subst (cons 7 "vnarial") (assoc 7 ent) ent) ) (entmod ent) ) (princ) ) (defun ss2ent (ss / sodt index lstent) (setq sodt (if ss (sslength ss) 0) index 0 ) (repeat sodt (setq ent (ssname ss index) index (1+ index) lstent (cons ent lstent) ) ) (reverse lstent) ) 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
cadthanyeu 0 Báo cáo bài đăng Đã đăng Tháng 10 17, 2008 Bạn ơi lisp này sao tôi chạy không được,bạn xem lại giúp tôi nhé. 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
gia_bach 1.553 Báo cáo bài đăng Đã đăng Tháng 10 17, 2008 Bạn ơi lisp này sao tôi chạy không được,bạn xem lại giúp tôi nhé. Khi chạy, CAD thông báo lỗi gì hả bạn ? Bạn kiểm tra : bản vẽ của bạn có Đối tượng Text trên lớp Hoten không ? 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