kame2211982 0 Báo cáo bài đăng Đã đăng Tháng 8 21, 2014 Chào các anh chị! Xin các anh chị giúp cho em lisp hay code dùng để ghi lại các biến em vừa nhập bản vẽ này để sau khi tắt cad mở lại thì các biến đó được update theo giá trị mới nhập lúc nãy! Xin cảm ơ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
Tot77 508 Báo cáo bài đăng Đã đăng Tháng 8 21, 2014 Biến bạn nói là biến của cad hay biến riêng của bạn.? Bạn có thể cho ví dụ đượ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
kame2211982 0 Báo cáo bài đăng Đã đăng Tháng 8 21, 2014 Ah, biến riêng của mình, ví dụ như mình làm bên điện muốn vẽ co thang cáp (elbow) có bán kính cong (bán kính này thay đổi được nhé) là 300mm chẳng hạn. Mình viết xong lisp vẽ bằng cách nhập bán kính rồi. nhưng qua bản khác hoặc tắt cad mở lại thì biến đó bị reset về nil rồi. Mình muốn biến này luôn là giá trị sau cùng được nhập 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
Tot77 508 Báo cáo bài đăng Đã đăng Tháng 8 21, 2014 Vậy bạn phải có 1 cái lsp đưa biến đó ra 1 file txt để dùng chung cho các bản vẽ cùng thư mục. Và thêm 1 cái lsp khi mở bản vẽ mới thì load cái file đó vào. 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
kame2211982 0 Báo cáo bài đăng Đã đăng Tháng 8 21, 2014 Mình cũng nghĩ vậy nhưng không biết viết như thế nào! bạn giúp mình 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
Tot77 508 Báo cáo bài đăng Đã đăng Tháng 8 21, 2014 Khi đưa ra bạn viết (write-line (strcat (vl-princ-to-string 'bien1) "=" (rtos bien1)) file) với bien1 là tên biến . Chú ý là có dau ' trước bien1 Khi đưa vào bạn viết: (set (read (substr dong 1 (vl-string-search "=" dong))) (read (substr dong (+ 2 (vl-string-search "=" dong))))) Chú ý là hàm set chứ không phải setq. Dạng của 1 dòng trong file là bien1=300 Ở trên là các biến dạng integer, real, còn nếu là string thì hơi khác chút, chắc bạn cũng biết. (set (read (substr dong 1 (vl-string-search "=" dong))) (read (substr dong (+ 2 (vl-string-search "=" dong))))) 1 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
kame2211982 0 Báo cáo bài đăng Đã đăng Tháng 8 21, 2014 Khi đưa ra bạn viết (write-line (strcat (vl-princ-to-string 'bien1) "=" (rtos bien1)) file) với bien1 là tên biến . Chú ý là có dau ' trước bien1 Khi đưa vào bạn viết: (set (read (substr dong 1 (vl-string-search "=" dong))) (read (substr dong (+ 2 (vl-string-search "=" dong))))) Chú ý là hàm set chứ không phải setq. Dạng của 1 dòng trong file là bien1=300 Ở trên là các biến dạng integer, real, còn nếu là string thì hơi khác chút, chắc bạn cũng biết. (set (read (substr dong 1 (vl-string-search "=" dong))) (read (substr dong (+ 2 (vl-string-search "=" dong))))) Cám ơn bạn nhiều lắm. Mình hiểu code rồi. Giờ mình đang viết lại hoàn chỉnh xem sao! 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