Đến nội dung


Hình ảnh
- - - - -

Lỗi lisp cad


  • Please log in to reply
4 replies to this topic

#1 tranthuong

tranthuong

    biết vẽ line

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

Đã gửi 08 May 2013 - 02:58 PM

chào tất cả mọi ng!

tôi là 1 thành viên mới của diễn đàn, là 1 ng mới học cad có thắc mắc mog mọi ng giúp đỡ.

trong bản vẽ tôi có sử dụng lisp cad để chỉnh lại chiều cao của chữ số ghi kích thước, sau khi viết lệnh chọn và điền trị số chiều cao mới thì cad báo là nil và chiều cao của chữ số kích thước k thay đổi. Mong mọi ng giải đáp giúp.

Cảm ơn!!!


  • 0

#2 quansla

quansla

    biết lệnh xclip

  • Members
  • PipPipPipPipPipPipPip
  • 641 Bài viết
Điểm đánh giá: 223 (khá)

Đã gửi 09 May 2013 - 07:07 AM

chào tất cả mọi ng!

tôi là 1 thành viên mới của diễn đàn, là 1 ng mới học cad có thắc mắc mog mọi ng giúp đỡ.

trong bản vẽ tôi có sử dụng lisp cad để chỉnh lại chiều cao của chữ số ghi kích thước, sau khi viết lệnh chọn và điền trị số chiều cao mới thì cad báo là nil và chiều cao của chữ số kích thước k thay đổi. Mong mọi ng giải đáp giúp.

Cảm ơn!!!

Phải có lisp thì mới chuẩn đoán được, mò thế này không tiện, up file lisp+ up file mà lisp không có tác dụng nhé, cũng nên kiểm tra xem nếu là lisp không có tác dụng với mọi file, mọi Dimstyle thì chắc là ..chẹp chẹp.. 


  • 1

#3 tranthuong

tranthuong

    biết vẽ line

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

Đã gửi 09 May 2013 - 06:34 PM

Phải có lisp thì mới chuẩn đoán được, mò thế này không tiện, up file lisp+ up file mà lisp không có tác dụng nhé, cũng nên kiểm tra xem nếu là lisp không có tác dụng với mọi file, mọi Dimstyle thì chắc là ..chẹp chẹp.. 

cảm ơn bạn! bạn giúp t với, lisp đây.

http://www.cadviet.c...9309_hdim_1.lsp

t đã kiểm tra với file # và thực hiện đc.  :) 
sao lại như đấy hả bạn???


  • 0

#4 Song Nhi

Song Nhi

    biết vẽ rectang

  • Members
  • PipPip
  • 83 Bài viết
Điểm đánh giá: 52 (tàm tạm)

Đã gửi 09 May 2013 - 09:23 PM

Ủa LISP của bạn xài tốt mà, không biết bạn áp dụng vào bản vẽ ntn, và áp dụng như thế nào mà không được nhỉ?!!!

Sau khi bạn pick một DIM, Height text sẽ thay đổi đối với các DIM: cùng DIMstyle và cùng chiều cao nữa.

 

Tuy nhiên, mình thấy rằng trong một bản vẽ thống nhất, mặc dù có nhiều DIMstyle khác nhau về Scale Factor, nhưng Height text của các DIMstyle phải bằng nhau chứ? (thường bằng 2.5; 3 hay 3.5 gì đó, trong LISP sau, mình để sẵn giá trị tham chiếu là 3)

Vì vậy mình nghĩ, ý bạn là chuyển tất cả DIM trong bản vẽ (mặc dù khác DIMstyle và khác chiều cao) về cùng một Height text do bạn nhập vào, nếu vậy bạn xài thử LISP sau đây:

 

 
(defun c:HDA (/ th)
(command "undo" "be")
(defun tab (s / d r)
(while   (setq d (tblnext s (null d)))
(setq r  (cons (cdr (assoc 2 d)) r))))
(setq th (getreal "\nNhap chieu cao moi <3.0>:\n")) (if (= th nil) (setq th 3.0))
(setvar "cmdecho" 0)
(mapcar '(lambda(x) (command "DIMSTYLE" "R" x) (setvar "DIMTXT" th) (command "DIMSTYLE" "S" x "Y")) (tab "DIMSTYLE"))
(command "undo" "en") (command "-dimstyle" "A" "all" "")
(prompt (strcat "\nDa thay chieu cao DimText thanh: [" (rtos th) "]\n")))
(defun c:HDA (/ th);;; Height Dimensions All ;;;
(command "undo" "be")
(defun tab (s / d r)
(while   (setq d (tblnext s (null d)))
(setq r  (cons (cdr (assoc 2 d)) r))))
(setq th (getreal "\nNhap chieu cao moi <3.0>:\n")) (if (= th nil) (setq th 3.0))
(setvar "cmdecho" 0)
(mapcar '(lambda(x) (command "DIMSTYLE" "R" x) (setvar "DIMTXT" th) (command "DIMSTYLE" "S" x "Y")) (tab "DIMSTYLE"))
(command "undo" "en") (command "-dimstyle" "A" "all" "")
(prompt (strcat "\nDa thay chieu cao DimText thanh: [" (rtos th) "]\n")))
[/lisp]
(defun c:HDA (/ th)   ;;; Height Dimensions All ;;;
(command "undo" "be")
(defun tab (s / d r)
(while   (setq d (tblnext s (null d)))
(setq r  (cons (cdr (assoc 2 d)) r))))
(setq th (getreal "\nNhap chieu cao moi <3.0>:\n")) (if (= th nil) (setq th 3.0))
(setvar "cmdecho" 0)
(mapcar '(lambda(x) (command "DIMSTYLE" "R" x) (setvar "DIMTXT" th) (command "DIMSTYLE" "S" x "Y")) (tab "DIMSTYLE"))
(command "undo" "en") (command "-dimstyle" "A" "all" "")
(prompt (strcat "\nDa thay chieu cao DimText thanh: [" (rtos th) "]\n")))
[/lisp]
 
Chúc bạn vui!

  • 1

#5 tranthuong

tranthuong

    biết vẽ line

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

Đã gửi 10 May 2013 - 02:22 PM

Ủa LISP của bạn xài tốt mà, không biết bạn áp dụng vào bản vẽ ntn, và áp dụng như thế nào mà không được nhỉ?!!!

Sau khi bạn pick một DIM, Height text sẽ thay đổi đối với các DIM: cùng DIMstyle và cùng chiều cao nữa.

 

Tuy nhiên, mình thấy rằng trong một bản vẽ thống nhất, mặc dù có nhiều DIMstyle khác nhau về Scale Factor, nhưng Height text của các DIMstyle phải bằng nhau chứ? (thường bằng 2.5; 3 hay 3.5 gì đó, trong LISP sau, mình để sẵn giá trị tham chiếu là 3)

Vì vậy mình nghĩ, ý bạn là chuyển tất cả DIM trong bản vẽ (mặc dù khác DIMstyle và khác chiều cao) về cùng một Height text do bạn nhập vào, nếu vậy bạn xài thử LISP sau đây:

 

 

(defun c:HDA (/ th);;; Height Dimensions All ;;;
(command "undo" "be")
(defun tab (s / d r)
(while   (setq d (tblnext s (null d)))
(setq r  (cons (cdr (assoc 2 d)) r))))
(setq th (getreal "\nNhap chieu cao moi <3.0>:\n")) (if (= th nil) (setq th 3.0))
(setvar "cmdecho" 0)
(mapcar '(lambda(x) (command "DIMSTYLE" "R" x) (setvar "DIMTXT" th) (command "DIMSTYLE" "S" x "Y")) (tab "DIMSTYLE"))
(command "undo" "en") (command "-dimstyle" "A" "all" "")
(prompt (strcat "\nDa thay chieu cao DimText thanh: [" (rtos th) "]\n")))
(defun c:HDA (/ th)   ;;; Height Dimensions All ;;;
(command "undo" "be")
(defun tab (s / d r)
(while   (setq d (tblnext s (null d)))
(setq r  (cons (cdr (assoc 2 d)) r))))
(setq th (getreal "\nNhap chieu cao moi <3.0>:\n")) (if (= th nil) (setq th 3.0))
(setvar "cmdecho" 0)
(mapcar '(lambda(x) (command "DIMSTYLE" "R" x) (setvar "DIMTXT" th) (command "DIMSTYLE" "S" x "Y")) (tab "DIMSTYLE"))
(command "undo" "en") (command "-dimstyle" "A" "all" "")
(prompt (strcat "\nDa thay chieu cao DimText thanh: [" (rtos th) "]\n")))
[/lisp]
 
Chúc bạn vui!

Cảm ơn bạn!!!
cái lisp ban đầu của tôi áp dụng với bản vẽ đầu tiên thì k đc, t thử với bản vẽ # và đã thực hiện đc.


  • 0