Đến nội dung


Hình ảnh
- - - - -

[Giúp đỡ] Chỉnh sửa lisp offset


  • Please log in to reply
10 replies to this topic

#1 conghoa

conghoa

    biết lệnh attdef

  • Members
  • PipPipPipPipPipPip
  • 411 Bài viết
Điểm đánh giá: 88 (tàm tạm)

Đã gửi 17 February 2014 - 02:06 PM

;/Day la lenh OFFSET dac biet, sau khi OFFSET xong tu dong doi sang lop hien hanh.
;/Day la lenh OFFSET dac biet, sau khi OFFSET xong tu dong doi sang lop hien hanh.
;***********
(defun C:OO (/ lay lt os kc msg1 p1 msg2)
        (setq   os (getvar "Osmode")
	 lt (getvar "celtype")
                lay (getvar "Clayer")
                msg1 "\nVao khoang cach offset: "
                kc (getreal msg1)
                msg2 (strcat "Chon vat the muon offset:*" (rtos kc) "*")
        );het setq
        (setvar "OSMODE" 512)
        (setq   p1 (getpoint msg2))
(while p1
(command "offset" kc p1 pause "" "chprop" "l" "" "la" lay "lt" lt "")
        (setq   p1 (getpoint msg2))
);het while
        (setvar "OSMODE" os)
)

 

- Mình có cái lisp offset này nhưng mỗi lần chạy lisp lại phải nhập khoảng cách để offset. Mình nhờ các bạn chỉnh giúp mình lisp này có thể lưu lại thông số đã nhập cho lần thực hiện sau (nếu mình không nhập khoảng cách mới thì nó sẽ lấy số được nhập lần trước)

 

Cảm ơn các bạn nhiều!

;/Day la lenh OFFSET dac biet, sau khi OFFSET xong tu dong doi sang lop hien hanh.
;***********
(defun C:OO (/ lay lt os kc msg1 p1 msg2)
        (setq   os (getvar "Osmode")
lt (getvar "celtype")
                lay (getvar "Clayer")
                msg1 "\nVao khoang cach offset: "
                kc (getreal msg1)
                msg2 (strcat "Chon vat the muon offset:*" (rtos kc) "*")
        );het setq
        (setvar "OSMODE" 512)
        (setq   p1 (getpoint msg2))
(while p1
(command "offset" kc p1 pause "" "chprop" "l" "" "la" lay "lt" lt "")
        (setq   p1 (getpoint msg2))
);het while
        (setvar "OSMODE" os)

 

)
;/Day la lenh OFFSET dac biet, sau khi OFFSET xong tu dong doi sang lop hien hanh.
;***********
(defun C:OO (/ lay lt os kc msg1 p1 msg2)
        (setq   os (getvar "Osmode")
lt (getvar "celtype")
                lay (getvar "Clayer")
                msg1 "\nVao khoang cach offset: "
                kc (getreal msg1)
                msg2 (strcat "Chon vat the muon offset:*" (rtos kc) "*")
        );het setq
        (setvar "OSMODE" 512)
        (setq   p1 (getpoint msg2))
(while p1
(command "offset" kc p1 pause "" "chprop" "l" "" "la" lay "lt" lt "")
        (setq   p1 (getpoint msg2))
);het while
        (setvar "OSMODE" os)
 
;/Day la lenh OFFSET dac biet, sau khi OFFSET xong tu dong doi sang lop hien hanh.
;***********
(defun C:OO (/ lay lt os kc msg1 p1 msg2)
        (setq   os (getvar "Osmode")
lt (getvar "celtype")
                lay (getvar "Clayer")
                msg1 "\nVao khoang cach offset: "
                kc (getreal msg1)
                msg2 (strcat "Chon vat the muon offset:*" (rtos kc) "*")
        );het setq
        (setvar "OSMODE" 512)
        (setq   p1 (getpoint msg2))
(while p1
(command "offset" kc p1 pause "" "chprop" "l" "" "la" lay "lt" lt "")
        (setq   p1 (getpoint msg2))
);het while
        (setvar "OSMODE" os)

 

)
;/Day la lenh OFFSET dac biet, sau khi OFFSET xong tu dong doi sang lop hien hanh.
;***********
(defun C:OO (/ lay lt os kc msg1 p1 msg2)
        (setq   os (getvar "Osmode")
lt (getvar "celtype")
                lay (getvar "Clayer")
                msg1 "\nVao khoang cach offset: "
                kc (getreal msg1)
                msg2 (strcat "Chon vat the muon offset:*" (rtos kc) "*")
        );het setq
        (setvar "OSMODE" 512)
        (setq   p1 (getpoint msg2))
(while p1
(command "offset" kc p1 pause "" "chprop" "l" "" "la" lay "lt" lt "")
        (setq   p1 (getpoint msg2))
);het while
        (setvar "OSMODE" os)
 
;***********
(defun C:OO (/ lay lt os kc msg1 p1 msg2)
        (setq   os (getvar "Osmode")
lt (getvar "celtype")
                lay (getvar "Clayer")
                msg1 "\nVao khoang cach offset: "
                kc (getreal msg1)
                msg2 (strcat "Chon vat the muon offset:*" (rtos kc) "*")
        );het setq
        (setvar "OSMODE" 512)
        (setq   p1 (getpoint msg2))
(while p1
(command "offset" kc p1 pause "" "chprop" "l" "" "la" lay "lt" lt "")
        (setq   p1 (getpoint msg2))
);het while
        (setvar "OSMODE" os)

 

)
;/Day la lenh OFFSET dac biet, sau khi OFFSET xong tu dong doi sang lop hien hanh.
;***********
(defun C:OO (/ lay lt os kc msg1 p1 msg2)
        (setq   os (getvar "Osmode")
lt (getvar "celtype")
                lay (getvar "Clayer")
                msg1 "\nVao khoang cach offset: "
                kc (getreal msg1)
                msg2 (strcat "Chon vat the muon offset:*" (rtos kc) "*")
        );het setq
        (setvar "OSMODE" 512)
        (setq   p1 (getpoint msg2))
(while p1
(command "offset" kc p1 pause "" "chprop" "l" "" "la" lay "lt" lt "")
        (setq   p1 (getpoint msg2))
);het while
        (setvar "OSMODE" os)
 
;/Day la lenh OFFSET dac biet, sau khi OFFSET xong tu dong doi sang lop hien hanh.
;***********
(defun C:OO (/ lay lt os kc msg1 p1 msg2)
        (setq   os (getvar "Osmode")
lt (getvar "celtype")
                lay (getvar "Clayer")
                msg1 "\nVao khoang cach offset: "
                kc (getreal msg1)
                msg2 (strcat "Chon vat the muon offset:*" (rtos kc) "*")
        );het setq
        (setvar "OSMODE" 512)
        (setq   p1 (getpoint msg2))
(while p1
(command "offset" kc p1 pause "" "chprop" "l" "" "la" lay "lt" lt "")
        (setq   p1 (getpoint msg2))
);het while
        (setvar "OSMODE" os)
 
;/Day la lenh OFFSET dac biet, sau khi OFFSET xong tu dong doi sang lop hien hanh.
;***********
(defun C:OO (/ lay lt os kc msg1 p1 msg2)
        (setq   os (getvar "Osmode")
lt (getvar "celtype")
                lay (getvar "Clayer")
                msg1 "\nVao khoang cach offset: "
                kc (getreal msg1)
                msg2 (strcat "Chon vat the muon offset:*" (rtos kc) "*")
        );het setq
        (setvar "OSMODE" 512)
        (setq   p1 (getpoint msg2))
(while p1
(command "offset" kc p1 pause "" "chprop" "l" "" "la" lay "lt" lt "")
        (setq   p1 (getpoint msg2))
);het while
        (setvar "OSMODE" os)
 
;****************************************************************************
;/Day la lenh OFFSET dac biet, sau khi OFFSET xong tu dong doi sang lop hien hanh.
;***********
(defun C:OO (/ lay lt os kc msg1 p1 msg2)
        (setq   os (getvar "Osmode")
lt (getvar "celtype")
                lay (getvar "Clayer")
                msg1 "\nVao khoang cach offset: "
                kc (getreal msg1)
                msg2 (strcat "Chon vat the muon offset:*" (rtos kc) "*")
        );het setq
        (setvar "OSMODE" 512)
        (setq   p1 (getpoint msg2))
(while p1
(command "offset" kc p1 pause "" "chprop" "l" "" "la" lay "lt" lt "")
        (setq   p1 (getpoint msg2))
);het while
        (setvar "OSMODE" os)

 

)
;/Day la lenh OFFSET dac biet, sau khi OFFSET xong tu dong doi sang lop hien hanh.
;***********
(defun C:OO (/ lay lt os kc msg1 p1 msg2)
        (setq   os (getvar "Osmode")
lt (getvar "celtype")
                lay (getvar "Clayer")
                msg1 "\nVao khoang cach offset: "
                kc (getreal msg1)
                msg2 (strcat "Chon vat the muon offset:*" (rtos kc) "*")
        );het setq
        (setvar "OSMODE" 512)
        (setq   p1 (getpoint msg2))
(while p1
(command "offset" kc p1 pause "" "chprop" "l" "" "la" lay "lt" lt "")
        (setq   p1 (getpoint msg2))
);het while
        (setvar "OSMODE" os)
 
;/Day la lenh OFFSET dac biet, sau khi OFFSET xong tu dong doi sang lop hien hanh.
;***********
(defun C:OO (/ lay lt os kc msg1 p1 msg2)
        (setq   os (getvar "Osmode")
lt (getvar "celtype")
                lay (getvar "Clayer")
                msg1 "\nVao khoang cach offset: "
                kc (getreal msg1)
                msg2 (strcat "Chon vat the muon offset:*" (rtos kc) "*")
        );het setq
        (setvar "OSMODE" 512)
        (setq   p1 (getpoint msg2))
(while p1
(command "offset" kc p1 pause "" "chprop" "l" "" "la" lay "lt" lt "")
        (setq   p1 (getpoint msg2))
);het while
        (setvar "OSMODE" os)
)
;/Day la lenh OFFSET dac biet, sau khi OFFSET xong tu dong doi sang lop hien hanh.
;***********
(defun C:OO (/ lay lt os kc msg1 p1 msg2)
        (setq   os (getvar "Osmode")
lt (getvar "celtype")
                lay (getvar "Clayer")
                msg1 "\nVao khoang cach offset: "
                kc (getreal msg1)
                msg2 (strcat "Chon vat the muon offset:*" (rtos kc) "*")
        );het setq
        (setvar "OSMODE" 512)
        (setq   p1 (getpoint msg2))
(while p1
(command "offset" kc p1 pause "" "chprop" "l" "" "la" lay "lt" lt "")
        (setq   p1 (getpoint msg2))
);het while
        (setvar "OSMODE" os)

 

)
;/Day la lenh OFFSET dac biet, sau khi OFFSET xong tu dong doi sang lop hien hanh.
;***********
(defun C:OO (/ lay lt os kc msg1 p1 msg2)
        (setq   os (getvar "Osmode")
lt (getvar "celtype")
                lay (getvar "Clayer")
                msg1 "\nVao khoang cach offset: "
                kc (getreal msg1)
                msg2 (strcat "Chon vat the muon offset:*" (rtos kc) "*")
        );het setq
        (setvar "OSMODE" 512)
        (setq   p1 (getpoint msg2))
(while p1
(command "offset" kc p1 pause "" "chprop" "l" "" "la" lay "lt" lt "")
        (setq   p1 (getpoint msg2))
);het while
        (setvar "OSMODE" os)
 
;/Day la lenh OFFSET dac biet, sau khi OFFSET xong tu dong doi sang lop hien hanh.
;***********
(defun C:OO (/ lay lt os kc msg1 p1 msg2)
        (setq   os (getvar "Osmode")
lt (getvar "celtype")
                lay (getvar "Clayer")
                msg1 "\nVao khoang cach offset: "
                kc (getreal msg1)
                msg2 (strcat "Chon vat the muon offset:*" (rtos kc) "*")
        );het setq
        (setvar "OSMODE" 512)
        (setq   p1 (getpoint msg2))
(while p1
(command "offset" kc p1 pause "" "chprop" "l" "" "la" lay "lt" lt "")
        (setq   p1 (getpoint msg2))
);het while
        (setvar "OSMODE" os)

 

)
;/Day la lenh OFFSET dac biet, sau khi OFFSET xong tu dong doi sang lop hien hanh.
;***********
(defun C:OO (/ lay lt os kc msg1 p1 msg2)
        (setq   os (getvar "Osmode")
lt (getvar "celtype")
                lay (getvar "Clayer")
                msg1 "\nVao khoang cach offset: "
                kc (getreal msg1)
                msg2 (strcat "Chon vat the muon offset:*" (rtos kc) "*")
        );het setq
        (setvar "OSMODE" 512)
        (setq   p1 (getpoint msg2))
(while p1
(command "offset" kc p1 pause "" "chprop" "l" "" "la" lay "lt" lt "")
        (setq   p1 (getpoint msg2))
);het while
        (setvar "OSMODE" os)
 
;/Day la lenh OFFSET dac biet, sau khi OFFSET xong tu dong doi sang lop hien hanh.
;***********
(defun C:OO (/ lay lt os kc msg1 p1 msg2)
        (setq   os (getvar "Osmode")
lt (getvar "celtype")
                lay (getvar "Clayer")
                msg1 "\nVao khoang cach offset: "
                kc (getreal msg1)
                msg2 (strcat "Chon vat the muon offset:*" (rtos kc) "*")
        );het setq
        (setvar "OSMODE" 512)
        (setq   p1 (getpoint msg2))
(while p1
(command "offset" kc p1 pause "" "chprop" "l" "" "la" lay "lt" lt "")
        (setq   p1 (getpoint msg2))
);het while
        (setvar "OSMODE" os)

 

)
;****************************************************************************
;/Day la lenh OFFSET dac biet, sau khi OFFSET xong tu dong doi sang lop hien hanh.
;***********
(defun C:OO (/ lay lt os kc msg1 p1 msg2)
        (setq   os (getvar "Osmode")
lt (getvar "celtype")
                lay (getvar "Clayer")
                msg1 "\nVao khoang cach offset: "
                kc (getreal msg1)
                msg2 (strcat "Chon vat the muon offset:*" (rtos kc) "*")
        );het setq
        (setvar "OSMODE" 512)
        (setq   p1 (getpoint msg2))
(while p1
(command "offset" kc p1 pause "" "chprop" "l" "" "la" lay "lt" lt "")
        (setq   p1 (getpoint msg2))
);het while
        (setvar "OSMODE" os)
 
;/Day la lenh OFFSET dac biet, sau khi OFFSET xong tu dong doi sang lop hien hanh.
;***********
(defun C:OO (/ lay lt os kc msg1 p1 msg2)
        (setq   os (getvar "Osmode")
lt (getvar "celtype")
                lay (getvar "Clayer")
                msg1 "\nVao khoang cach offset: "
                kc (getreal msg1)
                msg2 (strcat "Chon vat the muon offset:*" (rtos kc) "*")
        );het setq
        (setvar "OSMODE" 512)
        (setq   p1 (getpoint msg2))
(while p1
(command "offset" kc p1 pause "" "chprop" "l" "" "la" lay "lt" lt "")
        (setq   p1 (getpoint msg2))
);het while
        (setvar "OSMODE" os)
)

  • 0

#2 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 17 February 2014 - 03:21 PM

;/Day la lenh OFFSET dac biet, sau khi OFFSET xong tu dong doi sang lop hien hanh.
;/Day la lenh OFFSET dac biet, sau khi OFFSET xong tu dong doi sang lop hien hanh.
;***********
(defun C:OO (/ lay lt os kc msg1 p1 msg2)
        (setq   os (getvar "Osmode")
	 lt (getvar "celtype")
                lay (getvar "Clayer")
                msg1 "\nVao khoang cach offset: "
                kc (getreal msg1)
                msg2 (strcat "Chon vat the muon offset:*" (rtos kc) "*")
        );het setq
        (setvar "OSMODE" 512)
        (setq   p1 (getpoint msg2))
(while p1
(command "offset" kc p1 pause "" "chprop" "l" "" "la" lay "lt" lt "")
        (setq   p1 (getpoint msg2))
);het while
        (setvar "OSMODE" os)
)

 

- Mình có cái lisp offset này nhưng mỗi lần chạy lisp lại phải nhập khoảng cách để offset. Mình nhờ các bạn chỉnh giúp mình lisp này có thể lưu lại thông số đã nhập cho lần thực hiện sau (nếu mình không nhập khoảng cách mới thì nó sẽ lấy số được nhập lần trước)

 

Cảm ơn các bạn nhiều!

;/Day la lenh OFFSET dac biet, sau khi OFFSET xong tu dong doi sang lop hien hanh.
;***********
(defun C:OO (/ lay lt os kc msg1 p1 msg2)
        (setq   os (getvar "Osmode")
lt (getvar "celtype")
                lay (getvar "Clayer")
                msg1 "\nVao khoang cach offset: "
                kc (getreal msg1)
                msg2 (strcat "Chon vat the muon offset:*" (rtos kc) "*")
        );het setq
        (setvar "OSMODE" 512)
        (setq   p1 (getpoint msg2))
(while p1
(command "offset" kc p1 pause "" "chprop" "l" "" "la" lay "lt" lt "")
        (setq   p1 (getpoint msg2))
);het while
        (setvar "OSMODE" os)

 

)
;/Day la lenh OFFSET dac biet, sau khi OFFSET xong tu dong doi sang lop hien hanh.
;***********
(defun C:OO (/ lay lt os kc msg1 p1 msg2)
        (setq   os (getvar "Osmode")
lt (getvar "celtype")
                lay (getvar "Clayer")
                msg1 "\nVao khoang cach offset: "
                kc (getreal msg1)
                msg2 (strcat "Chon vat the muon offset:*" (rtos kc) "*")
        );het setq
        (setvar "OSMODE" 512)
        (setq   p1 (getpoint msg2))
(while p1
(command "offset" kc p1 pause "" "chprop" "l" "" "la" lay "lt" lt "")
        (setq   p1 (getpoint msg2))
);het while
        (setvar "OSMODE" os)
 
;/Day la lenh OFFSET dac biet, sau khi OFFSET xong tu dong doi sang lop hien hanh.
;***********
(defun C:OO (/ lay lt os kc msg1 p1 msg2)
        (setq   os (getvar "Osmode")
lt (getvar "celtype")
                lay (getvar "Clayer")
                msg1 "\nVao khoang cach offset: "
                kc (getreal msg1)
                msg2 (strcat "Chon vat the muon offset:*" (rtos kc) "*")
        );het setq
        (setvar "OSMODE" 512)
        (setq   p1 (getpoint msg2))
(while p1
(command "offset" kc p1 pause "" "chprop" "l" "" "la" lay "lt" lt "")
        (setq   p1 (getpoint msg2))
);het while
        (setvar "OSMODE" os)

 

)
;/Day la lenh OFFSET dac biet, sau khi OFFSET xong tu dong doi sang lop hien hanh.
;***********
(defun C:OO (/ lay lt os kc msg1 p1 msg2)
        (setq   os (getvar "Osmode")
lt (getvar "celtype")
                lay (getvar "Clayer")
                msg1 "\nVao khoang cach offset: "
                kc (getreal msg1)
                msg2 (strcat "Chon vat the muon offset:*" (rtos kc) "*")
        );het setq
        (setvar "OSMODE" 512)
        (setq   p1 (getpoint msg2))
(while p1
(command "offset" kc p1 pause "" "chprop" "l" "" "la" lay "lt" lt "")
        (setq   p1 (getpoint msg2))
);het while
        (setvar "OSMODE" os)
 
;***********
(defun C:OO (/ lay lt os kc msg1 p1 msg2)
        (setq   os (getvar "Osmode")
lt (getvar "celtype")
                lay (getvar "Clayer")
                msg1 "\nVao khoang cach offset: "
                kc (getreal msg1)
                msg2 (strcat "Chon vat the muon offset:*" (rtos kc) "*")
        );het setq
        (setvar "OSMODE" 512)
        (setq   p1 (getpoint msg2))
(while p1
(command "offset" kc p1 pause "" "chprop" "l" "" "la" lay "lt" lt "")
        (setq   p1 (getpoint msg2))
);het while
        (setvar "OSMODE" os)

 

)
;/Day la lenh OFFSET dac biet, sau khi OFFSET xong tu dong doi sang lop hien hanh.
;***********
(defun C:OO (/ lay lt os kc msg1 p1 msg2)
        (setq   os (getvar "Osmode")
lt (getvar "celtype")
                lay (getvar "Clayer")
                msg1 "\nVao khoang cach offset: "
                kc (getreal msg1)
                msg2 (strcat "Chon vat the muon offset:*" (rtos kc) "*")
        );het setq
        (setvar "OSMODE" 512)
        (setq   p1 (getpoint msg2))
(while p1
(command "offset" kc p1 pause "" "chprop" "l" "" "la" lay "lt" lt "")
        (setq   p1 (getpoint msg2))
);het while
        (setvar "OSMODE" os)
 
;/Day la lenh OFFSET dac biet, sau khi OFFSET xong tu dong doi sang lop hien hanh.
;***********
(defun C:OO (/ lay lt os kc msg1 p1 msg2)
        (setq   os (getvar "Osmode")
lt (getvar "celtype")
                lay (getvar "Clayer")
                msg1 "\nVao khoang cach offset: "
                kc (getreal msg1)
                msg2 (strcat "Chon vat the muon offset:*" (rtos kc) "*")
        );het setq
        (setvar "OSMODE" 512)
        (setq   p1 (getpoint msg2))
(while p1
(command "offset" kc p1 pause "" "chprop" "l" "" "la" lay "lt" lt "")
        (setq   p1 (getpoint msg2))
);het while
        (setvar "OSMODE" os)
 
;/Day la lenh OFFSET dac biet, sau khi OFFSET xong tu dong doi sang lop hien hanh.
;***********
(defun C:OO (/ lay lt os kc msg1 p1 msg2)
        (setq   os (getvar "Osmode")
lt (getvar "celtype")
                lay (getvar "Clayer")
                msg1 "\nVao khoang cach offset: "
                kc (getreal msg1)
                msg2 (strcat "Chon vat the muon offset:*" (rtos kc) "*")
        );het setq
        (setvar "OSMODE" 512)
        (setq   p1 (getpoint msg2))
(while p1
(command "offset" kc p1 pause "" "chprop" "l" "" "la" lay "lt" lt "")
        (setq   p1 (getpoint msg2))
);het while
        (setvar "OSMODE" os)
 
;****************************************************************************
;/Day la lenh OFFSET dac biet, sau khi OFFSET xong tu dong doi sang lop hien hanh.
;***********
(defun C:OO (/ lay lt os kc msg1 p1 msg2)
        (setq   os (getvar "Osmode")
lt (getvar "celtype")
                lay (getvar "Clayer")
                msg1 "\nVao khoang cach offset: "
                kc (getreal msg1)
                msg2 (strcat "Chon vat the muon offset:*" (rtos kc) "*")
        );het setq
        (setvar "OSMODE" 512)
        (setq   p1 (getpoint msg2))
(while p1
(command "offset" kc p1 pause "" "chprop" "l" "" "la" lay "lt" lt "")
        (setq   p1 (getpoint msg2))
);het while
        (setvar "OSMODE" os)

 

)
;/Day la lenh OFFSET dac biet, sau khi OFFSET xong tu dong doi sang lop hien hanh.
;***********
(defun C:OO (/ lay lt os kc msg1 p1 msg2)
        (setq   os (getvar "Osmode")
lt (getvar "celtype")
                lay (getvar "Clayer")
                msg1 "\nVao khoang cach offset: "
                kc (getreal msg1)
                msg2 (strcat "Chon vat the muon offset:*" (rtos kc) "*")
        );het setq
        (setvar "OSMODE" 512)
        (setq   p1 (getpoint msg2))
(while p1
(command "offset" kc p1 pause "" "chprop" "l" "" "la" lay "lt" lt "")
        (setq   p1 (getpoint msg2))
);het while
        (setvar "OSMODE" os)
 
;/Day la lenh OFFSET dac biet, sau khi OFFSET xong tu dong doi sang lop hien hanh.
;***********
(defun C:OO (/ lay lt os kc msg1 p1 msg2)
        (setq   os (getvar "Osmode")
lt (getvar "celtype")
                lay (getvar "Clayer")
                msg1 "\nVao khoang cach offset: "
                kc (getreal msg1)
                msg2 (strcat "Chon vat the muon offset:*" (rtos kc) "*")
        );het setq
        (setvar "OSMODE" 512)
        (setq   p1 (getpoint msg2))
(while p1
(command "offset" kc p1 pause "" "chprop" "l" "" "la" lay "lt" lt "")
        (setq   p1 (getpoint msg2))
);het while
        (setvar "OSMODE" os)
)
;/Day la lenh OFFSET dac biet, sau khi OFFSET xong tu dong doi sang lop hien hanh.
;***********
(defun C:OO (/ lay lt os kc msg1 p1 msg2)
        (setq   os (getvar "Osmode")
lt (getvar "celtype")
                lay (getvar "Clayer")
                msg1 "\nVao khoang cach offset: "
                kc (getreal msg1)
                msg2 (strcat "Chon vat the muon offset:*" (rtos kc) "*")
        );het setq
        (setvar "OSMODE" 512)
        (setq   p1 (getpoint msg2))
(while p1
(command "offset" kc p1 pause "" "chprop" "l" "" "la" lay "lt" lt "")
        (setq   p1 (getpoint msg2))
);het while
        (setvar "OSMODE" os)

 

)
;/Day la lenh OFFSET dac biet, sau khi OFFSET xong tu dong doi sang lop hien hanh.
;***********
(defun C:OO (/ lay lt os kc msg1 p1 msg2)
        (setq   os (getvar "Osmode")
lt (getvar "celtype")
                lay (getvar "Clayer")
                msg1 "\nVao khoang cach offset: "
                kc (getreal msg1)
                msg2 (strcat "Chon vat the muon offset:*" (rtos kc) "*")
        );het setq
        (setvar "OSMODE" 512)
        (setq   p1 (getpoint msg2))
(while p1
(command "offset" kc p1 pause "" "chprop" "l" "" "la" lay "lt" lt "")
        (setq   p1 (getpoint msg2))
);het while
        (setvar "OSMODE" os)
 
;/Day la lenh OFFSET dac biet, sau khi OFFSET xong tu dong doi sang lop hien hanh.
;***********
(defun C:OO (/ lay lt os kc msg1 p1 msg2)
        (setq   os (getvar "Osmode")
lt (getvar "celtype")
                lay (getvar "Clayer")
                msg1 "\nVao khoang cach offset: "
                kc (getreal msg1)
                msg2 (strcat "Chon vat the muon offset:*" (rtos kc) "*")
        );het setq
        (setvar "OSMODE" 512)
        (setq   p1 (getpoint msg2))
(while p1
(command "offset" kc p1 pause "" "chprop" "l" "" "la" lay "lt" lt "")
        (setq   p1 (getpoint msg2))
);het while
        (setvar "OSMODE" os)

 

)
;/Day la lenh OFFSET dac biet, sau khi OFFSET xong tu dong doi sang lop hien hanh.
;***********
(defun C:OO (/ lay lt os kc msg1 p1 msg2)
        (setq   os (getvar "Osmode")
lt (getvar "celtype")
                lay (getvar "Clayer")
                msg1 "\nVao khoang cach offset: "
                kc (getreal msg1)
                msg2 (strcat "Chon vat the muon offset:*" (rtos kc) "*")
        );het setq
        (setvar "OSMODE" 512)
        (setq   p1 (getpoint msg2))
(while p1
(command "offset" kc p1 pause "" "chprop" "l" "" "la" lay "lt" lt "")
        (setq   p1 (getpoint msg2))
);het while
        (setvar "OSMODE" os)
 
;/Day la lenh OFFSET dac biet, sau khi OFFSET xong tu dong doi sang lop hien hanh.
;***********
(defun C:OO (/ lay lt os kc msg1 p1 msg2)
        (setq   os (getvar "Osmode")
lt (getvar "celtype")
                lay (getvar "Clayer")
                msg1 "\nVao khoang cach offset: "
                kc (getreal msg1)
                msg2 (strcat "Chon vat the muon offset:*" (rtos kc) "*")
        );het setq
        (setvar "OSMODE" 512)
        (setq   p1 (getpoint msg2))
(while p1
(command "offset" kc p1 pause "" "chprop" "l" "" "la" lay "lt" lt "")
        (setq   p1 (getpoint msg2))
);het while
        (setvar "OSMODE" os)

 

)
;****************************************************************************
;/Day la lenh OFFSET dac biet, sau khi OFFSET xong tu dong doi sang lop hien hanh.
;***********
(defun C:OO (/ lay lt os kc msg1 p1 msg2)
        (setq   os (getvar "Osmode")
lt (getvar "celtype")
                lay (getvar "Clayer")
                msg1 "\nVao khoang cach offset: "
                kc (getreal msg1)
                msg2 (strcat "Chon vat the muon offset:*" (rtos kc) "*")
        );het setq
        (setvar "OSMODE" 512)
        (setq   p1 (getpoint msg2))
(while p1
(command "offset" kc p1 pause "" "chprop" "l" "" "la" lay "lt" lt "")
        (setq   p1 (getpoint msg2))
);het while
        (setvar "OSMODE" os)
 
;/Day la lenh OFFSET dac biet, sau khi OFFSET xong tu dong doi sang lop hien hanh.
;***********
(defun C:OO (/ lay lt os kc msg1 p1 msg2)
        (setq   os (getvar "Osmode")
lt (getvar "celtype")
                lay (getvar "Clayer")
                msg1 "\nVao khoang cach offset: "
                kc (getreal msg1)
                msg2 (strcat "Chon vat the muon offset:*" (rtos kc) "*")
        );het setq
        (setvar "OSMODE" 512)
        (setq   p1 (getpoint msg2))
(while p1
(command "offset" kc p1 pause "" "chprop" "l" "" "la" lay "lt" lt "")
        (setq   p1 (getpoint msg2))
);het while
        (setvar "OSMODE" os)
)

Hề hề hề,

Bác thử sửa dòng code: 

   kc (getreal msg1)

 thành:

   kc (if msg1 (getreal msg1) kc)

và xóa biến kc ở trong dòng liệt kê biến cục bộ đi 

Sau đó bác test lại coi sao.


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

#3 conghoa

conghoa

    biết lệnh attdef

  • Members
  • PipPipPipPipPipPip
  • 411 Bài viết
Điểm đánh giá: 88 (tàm tạm)

Đã gửi 17 February 2014 - 04:48 PM

;/Day la lenh OFFSET dac biet, sau khi OFFSET xong tu dong doi sang lop hien hanh.
;/Day la lenh OFFSET dac biet, sau khi OFFSET xong tu dong doi sang lop hien hanh.
;***********
(defun C:OO (/ lay lt os msg1 p1 msg2)
        (setq   os (getvar "Osmode")
	 lt (getvar "celtype")
                lay (getvar "Clayer")
                msg1 "\nVao khoang cach offset: "
                kc (if msg1 (getreal msg1) kc)
                msg2 (strcat "Chon vat the muon offset:*" (rtos kc) "*")
        );het setq
        (setvar "OSMODE" 512)
        (setq   p1 (getpoint msg2))
(while p1
(command "offset" kc p1 pause "" "chprop" "l" "" "la" lay "lt" lt "")
        (setq   p1 (getpoint msg2))
);het while
        (setvar "OSMODE" os)
)

Mình đã chỉnh sửa như trên nhưng khi dùng lệnh nó vẫn bắt nhập khoảng cách mới.

;***********
(defun C:OO (/ lay lt os msg1 p1 msg2)
        (setq   os (getvar "Osmode")
lt (getvar "celtype")
                lay (getvar "Clayer")
                msg1 "\nVao khoang cach offset: "
                kc (if msg1 (getreal msg1) kc)
                msg2 (strcat "Chon vat the muon offset:*" (rtos kc) "*")
        );het setq
        (setvar "OSMODE" 512)
        (setq   p1 (getpoint msg2))
(while p1
(command "offset" kc p1 pause "" "chprop" "l" "" "la" lay "lt" lt "")
        (setq   p1 (getpoint msg2))
);het while
        (setvar "OSMODE" os)
)

  • 0

#4 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 17 February 2014 - 09:58 PM

;/Day la lenh OFFSET dac biet, sau khi OFFSET xong tu dong doi sang lop hien hanh.
;/Day la lenh OFFSET dac biet, sau khi OFFSET xong tu dong doi sang lop hien hanh.
;***********
(defun C:OO (/ lay lt os msg1 p1 msg2)
        (setq   os (getvar "Osmode")
	 lt (getvar "celtype")
                lay (getvar "Clayer")
                msg1 "\nVao khoang cach offset: "
                kc (if msg1 (getreal msg1) kc)
                msg2 (strcat "Chon vat the muon offset:*" (rtos kc) "*")
        );het setq
        (setvar "OSMODE" 512)
        (setq   p1 (getpoint msg2))
(while p1
(command "offset" kc p1 pause "" "chprop" "l" "" "la" lay "lt" lt "")
        (setq   p1 (getpoint msg2))
);het while
        (setvar "OSMODE" os)
)

Mình đã chỉnh sửa như trên nhưng khi dùng lệnh nó vẫn bắt nhập khoảng cách mới.

;***********
 

 



Hề hề hề,

 

Hề hề hề,

Rất xin lỗi bác. Đúng là không được thật vì mình không đọc kỹ code 

Cái cấu trúc (setq msg1 "\n Vao khoang cach offset: ") này mình chưa gặp nên hiểu sai về nó.

Bác hãy thay đổi lại một chút cấu trúc này nhé.

Thay vì :

msg1 "\nVao khoang cach offset: "
kc (if msg1 (getreal msg1) kc)

bác hãy đổi thành:

msg1 (getreal  "\nVao khoang cach offset: ")
kc (if msg1 msg1 kc)

 

Hy vọng nó đáp ứng đúng yêu cầu của bác Một lần nữa mong bác tha lỗi.


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

#5 conghoa

conghoa

    biết lệnh attdef

  • Members
  • PipPipPipPipPipPip
  • 411 Bài viết
Điểm đánh giá: 88 (tàm tạm)

Đã gửi 18 February 2014 - 08:48 AM

;/Day la lenh OFFSET dac biet, sau khi OFFSET xong tu dong doi sang lop hien hanh.
;***********
(defun C:OO (/ lay lt os msg1 p1 msg2)
        (setq   os (getvar "Osmode")
	 lt (getvar "celtype")
                lay (getvar "Clayer")
                msg1 (getreal  "\nVao khoang cach offset: ")
		kc (if msg1 msg1 kc)
                msg2 (strcat "Chon vat the muon offset:*" (rtos kc) "*")
        );het setq
        (setvar "OSMODE" 512)
        (setq   p1 (getpoint msg2))
(while p1
(command "offset" kc p1 pause "" "chprop" "l" "" "la" lay "lt" lt "")
        (setq   p1 (getpoint msg2))
);het while
        (setvar "OSMODE" os)
)

Bác phambinhminh xem lại giúp, :D lisp vẫn bắt nhập khoảng cách


  • 0

#6 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 18 February 2014 - 09:05 AM

Ri nè!

(defun C:OO (/ lay lt os p1 msg2)
 (setq os (getvar "Osmode")
  lt (getvar "celtype")
       lay (getvar "Clayer"))
 (or kc (setq kc 100))
 (setq kc (cond ((getdist (strcat "\nVao khoang cach offset <" (rtos kc 2 2) ">: "))) (kc)))
 (setq msg2 (strcat "Chon vat the muon offset:*" (rtos kc) "*"))
 (setvar "OSMODE" 512)
 (setq p1 (getpoint msg2))
 (while p1
  (command "offset" kc p1 pause "" "chprop" "l" "" "la" lay "lt" lt "")
  (setq p1 (getpoint msg2)))
 (setvar "OSMODE" os))
 


  • 2

* 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.


#7 conghoa

conghoa

    biết lệnh attdef

  • Members
  • PipPipPipPipPipPip
  • 411 Bài viết
Điểm đánh giá: 88 (tàm tạm)

Đã gửi 18 February 2014 - 09:18 AM

Thanks bác Hà :D, lisp chạy ngon rồi!


  • 0

#8 Tue_NV

Tue_NV

    KS Võ Quang Tuệ

  • Moderator
  • PipPipPipPipPipPipPip
  • 4296 Bài viết
Điểm đánh giá: 3804 (đỉnh cao)

Đã gửi 18 February 2014 - 09:30 AM

Lệnh Offset của CAD 2008 cũng đã có tính năng "đặc biệt" theo như lisp của bạn chủ topic rồi

Day la lenh OFFSET dac biet, sau khi OFFSET xong tu dong doi sang lop hien hanh.


  • 2

#9 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 18 February 2014 - 10:02 AM

;/Day la lenh OFFSET dac biet, sau khi OFFSET xong tu dong doi sang lop hien hanh.
;***********
(defun C:OO (/ lay lt os msg1 p1 msg2)
        (setq   os (getvar "Osmode")
	 lt (getvar "celtype")
                lay (getvar "Clayer")
                msg1 (getreal  "\nVao khoang cach offset: ")
		kc (if msg1 msg1 kc)
                msg2 (strcat "Chon vat the muon offset:*" (rtos kc) "*")
        );het setq
        (setvar "OSMODE" 512)
        (setq   p1 (getpoint msg2))
(while p1
(command "offset" kc p1 pause "" "chprop" "l" "" "la" lay "lt" lt "")
        (setq   p1 (getpoint msg2))
);het while
        (setvar "OSMODE" os)
)

Bác phambinhminh xem lại giúp, :D lisp vẫn bắt nhập khoảng cách

Hề hề hề,

Bác xem lại chứ, vì mình test rồi mà. Lần sau mặc dầu vẫn xuất hiện dòng chữ Vao khoang cach offset trên màn hình nhưng bác đâu cần nhập gì, chỉ nhấn enter là nó chạy tiếp ngon lành, giữ nguyên giá trị nhập lần trước mà. Mình đã test cả với CÁD2004 và CAD2008 cơ mà. Không nhẽ lại có chuyện rắc rối gì khác sao.

Mình cũng đã test lisp của bác DoanVanHa. về cơ bản cũng giống như kết quả của mình có điều bác ấy giải quyết thêm đượic hai trường hợp là khi bắt đầu chưa có biến kc thì đặt nó là 100 và có hiển thị giá trị của kc nhập lần trước trên dòng nhắc nhập khoảng cach offset mà thôi.

điều này nếu muốn thì trên lisp của mình cũng có thể bổ sung dễ dàng mà.


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

#10 conghoa

conghoa

    biết lệnh attdef

  • Members
  • PipPipPipPipPipPip
  • 411 Bài viết
Điểm đánh giá: 88 (tàm tạm)

Đã gửi 18 February 2014 - 01:30 PM

sorry bác Bình, mình không để ý bên dưới dòng command mà chỉ để ý hiển thị trên con chuột là nó không ghi kích thước nhập trước lên đó nên cứ tưởng là ko được.

 

@bác Hà: công nhận Cad mới update nhiều thứ mà mình không biết :D


  • 0

#11 nguyenbd1

nguyenbd1

    biết lệnh text

  • Members
  • PipPipPipPip
  • 276 Bài viết
Điểm đánh giá: 13 (tàm tạm)

Đã gửi 02 March 2014 - 08:09 AM

lại vấn đề offset. em có 1 lisp offset thông minh rất hay... nó hay ở chỗ nó không thực hiện offset như thông thường.... cụ thể như sau.

nó có 2 tác dụng offset 1 bên và cả 2 bên... ví dụ có 1 đường thẳng..bây gờ em mún offset 20. gõ tai command : 020 sau đó là chọn doi tuong va cuoi cung la  phía cần offset. nếu mun offset cả 2 bên thì gõ enter 2 lần.. tất cả đều rất ổn.. chỉ nhờ các bák chỉnh dùm... lúc chọn phía offset nếu là đương tròn thì ok. nhưng khi đối tượng là đường thẳng, pl thì chọn phía bên trái nó  lại offset bên phải.. bên trên nó lại offset bên dưới. nó ngược so với bình thường.. cảm ơn các bác trước ạhttp://www.cadviet.c...2369_offset.lsp


  • 0