Đến nội dung


Hình ảnh
- - - - -

[Yêu cầu] Cần lisp kiểm tra dim bị edit


  • Please log in to reply
27 replies to this topic

#21 pphung183

pphung183

    biết dimstyle

  • Members
  • PipPipPipPipPip
  • 384 Bài viết
Điểm đánh giá: 425 (tốt)

Đã gửi 30 December 2014 - 03:24 PM

chỉnh thế thi mình bik nhưng thủ công. muốn gõ lệnh cái. tắt cả dim đã sửa lại đổi màu theo dimstyle :D

Ekk :wub: ... Không thủ công đâu bạn. Muốn edit thằng dim nào đã bi sửa lại ban đầu khi đã dùng Lisp ktd.lsp thì chọn các dim cần chỉnh đúng, trong hộp properties mục Text thì thằng Text color là chọn màu, thằng Text override thì xóa trắng là chỉnh lại Dim thật. Thế thì OK rồi còn gì nữa ^_^ . Sở dỉ tôi nói đến lệnh Find ở đây là nghệ thuật sử dụng nó, bạn nên nghiên cứu thử nghiệm thêm Find sẽ phát hiện ra nhiều cái hay liên quan đến chuỗi kí tự Text :)


  • 1

#22 phongtran86

phongtran86

    biết lệnh offset

  • Members
  • PipPipPip
  • 177 Bài viết
Điểm đánh giá: 22 (tàm tạm)

Đã gửi 31 December 2014 - 08:26 AM

Mình là gv dạy cad mà :)). Cái này mình biết rồi. Chỉ viết li sp thì chi viet dc cái đơn giản. Còn lệnh cad mình nắm chắc cái này rồi :D

Lệnh đấy là lệnh fillet. tắt là fi mà :D

Ekk :wub: ... Không thủ công đâu bạn. Muốn edit thằng dim nào đã bi sửa lại ban đầu khi đã dùng Lisp ktd.lsp thì chọn các dim cần chỉnh đúng, trong hộp properties mục Text thì thằng Text color là chọn màu, thằng Text override thì xóa trắng là chỉnh lại Dim thật. Thế thì OK rồi còn gì nữa ^_^ . Sở dỉ tôi nói đến lệnh Find ở đây là nghệ thuật sử dụng nó, bạn nên nghiên cứu thử nghiệm thêm Find sẽ phát hiện ra nhiều cái hay liên quan đến chuỗi kí tự Text :)


  • 0

#23 master_worse

master_worse

    biết lệnh offset

  • Advance Member
  • PipPipPip
  • 170 Bài viết
Điểm đánh giá: 87 (tàm tạm)

Đã gửi 31 December 2014 - 08:57 AM

Dùng 

 

(setq ss (ssget '((-4 . "<AND")(0 . "DIMENSION")(-4 . "<NOT")(1 . ",*<>*")(-4 . "NOT>")(-4 . "AND>"))))

 

để chọn các đường kích thước đã bị chỉnh sửa 

 

trong file lisp bên dưới:

 

layer MW-NOT_PLOT là không in.

các đường kích thước đã ở layer này sẽ không được chọn

 

file Lisp:

(defun c:ktd (/ ss cmdecho)
  (if (setq ss (ssget '((-4 . "<AND")
                        (0 . "DIMENSION")
                        (-4 . "<NOT")
                        (1 . ",*<>*")
                        (-4 . "NOT>")
                        (-4 . "<NOT")
                        (8 . "MW-NOT_PLOT")
                        (-4 . "NOT>")
                        (-4 . "AND>")
                       )
               )
      )
    (progn
      (princ (strcat "co " (itoa (sslength ss)) " duong kich thuoc da bi thay doi."))
      (or (tblsearch "LAYER" "MW-NOT_PLOT")
          (entmake (list '(0 . "LAYER")
                         '(100 . "AcDbSymbolTableRecord")
                         '(100 . "AcDbLayerTableRecord")
                         '(70 . 0)
                         (cons 2 "MW-NOT_PLOT")
                         (cons 62 203)
                         (cons 6 "Continuous")
                         (cons 290 0)
                   )
          )
      )
      (setq cmdecho (getvar 'cmdecho))
      (setvar 'cmdecho 0)
      (command "._change" ss "" "P" "LA" "MW-NOT_PLOT" "C" "BYLAYER" "")
      (setvar 'cmdecho cmdecho)
      (princ " cac doi tuong nay da duoc chuyen sang layer MW-NOT_PLOT")
    )
  )
  (princ)
)

 

(if (setq ss (ssget '((-4 . "<AND")
                        (0 . "DIMENSION")
                        (-4 . "<NOT")
                        (1 . ",*<>*")
                        (-4 . "NOT>")
                        (-4 . "<NOT")
                        (8 . "MW-NOT_PLOT")
                        (-4 . "NOT>")
                        (-4 . "AND>")
                       )
               )
      )
    (progn
      (princ (strcat "co " (itoa (sslength ss)) " duong kich thuoc da bi thay doi."))
      (or (tblsearch "LAYER" "MW-NOT_PLOT")
          (entmake (list '(0 . "LAYER")
                         '(100 . "AcDbSymbolTableRecord")
                         '(100 . "AcDbLayerTableRecord")
                         '(70 . 0)
                         (cons 2 "MW-NOT_PLOT")
                         (cons 62 203)
                         (cons 6 "Continuous")
                         (cons 290 0)
                   )
          )
      )
      (setq cmdecho (getvar 'cmdecho))
      (setvar 'cmdecho 0)
      (command "._change" ss "" "P" "LA" "MW-NOT_PLOT" "C" "BYLAYER" "")
      (setvar 'cmdecho cmdecho)
      (princ " cac doi tuong nay da duoc chuyen sang layer MW-NOT_PLOT")
    )
  )
  (princ)
 
(defun c:ktd (/ ss cmdecho)
  (if (setq ss (ssget '((-4 . "<AND")
                        (0 . "DIMENSION")
                        (-4 . "<NOT")
                        (1 . ",*<>*")
                        (-4 . "NOT>")
                        (-4 . "<NOT")
                        (8 . "MW-NOT_PLOT")
                        (-4 . "NOT>")
                        (-4 . "AND>")
                       )
               )
      )
    (progn
      (princ (strcat "co " (itoa (sslength ss)) " duong kich thuoc da bi thay doi."))
      (or (tblsearch "LAYER" "MW-NOT_PLOT")
          (entmake (list '(0 . "LAYER")
                         '(100 . "AcDbSymbolTableRecord")
                         '(100 . "AcDbLayerTableRecord")
                         '(70 . 0)
                         (cons 2 "MW-NOT_PLOT")
                         (cons 62 203)
                         (cons 6 "Continuous")
                         (cons 290 0)
                   )
          )
      )
      (setq cmdecho (getvar 'cmdecho))
      (setvar 'cmdecho 0)
      (command "._change" ss "" "P" "LA" "MW-NOT_PLOT" "C" "BYLAYER" "")
      (setvar 'cmdecho cmdecho)
      (princ " cac doi tuong nay da duoc chuyen sang layer MW-NOT_PLOT")
    )
  )
  (princ)
)
(defun c:ktd (/ ss cmdecho)
  (if (setq ss (ssget '((-4 . "<AND")
                        (0 . "DIMENSION")
                        (-4 . "<NOT")
                        (1 . ",*<>*")
                        (-4 . "NOT>")
                        (-4 . "<NOT")
                        (8 . "MW-NOT_PLOT")
                        (-4 . "NOT>")
                        (-4 . "AND>")
                       )
               )
      )
    (progn
      (princ (strcat "co " (itoa (sslength ss)) " duong kich thuoc da bi thay doi."))
      (or (tblsearch "LAYER" "MW-NOT_PLOT")
          (entmake (list '(0 . "LAYER")
                         '(100 . "AcDbSymbolTableRecord")
                         '(100 . "AcDbLayerTableRecord")
                         '(70 . 0)
                         (cons 2 "MW-NOT_PLOT")
                         (cons 62 203)
                         (cons 6 "Continuous")
                         (cons 290 0)
                   )
          )
      )
      (setq cmdecho (getvar 'cmdecho))
      (setvar 'cmdecho 0)
      (command "._change" ss "" "P" "LA" "MW-NOT_PLOT" "C" "BYLAYER" "")
      (setvar 'cmdecho cmdecho)
      (princ " cac doi tuong nay da duoc chuyen sang layer MW-NOT_PLOT")
    )
  )
  (princ)
)

Bài viết đã được chỉnh sửa nội dung bởi master_worse: 31 December 2014 - 10:44 AM

  • 0

Ngu dốt không đáng thẹn bằng thiếu ý chí học hỏi


Tri thức làm người ta khiêm tốn, ngu si làm người ta kiêu ngạo (Ngạn ngữ Anh)


#24 pphung183

pphung183

    biết dimstyle

  • Members
  • PipPipPipPipPip
  • 384 Bài viết
Điểm đánh giá: 425 (tốt)

Đã gửi 31 December 2014 - 11:31 AM

Liệu bạn có máy móc quá không (và cũng hơi cực đoan nữa) :D . Nếu đã vẽ bản vẽ để duyệt thì việc Edit dim là chẳng đặng đừng thôi bạn à. Do đó trong 1 bản vẽ chi tiết nếu có Edit dim thì tôi nghĩ chỉ tầm khoảng chục cái là cao. Bạn định dùng Lisp này để phát hiện và không cho những thằng đã bị Edit in ra :wacko: . Mục đích của Topic này chắc chủ Topic muốn kiểm tra Dim đã bị edit và sẽ cân nhắc cái nào nên chỉnh lại, cái nào nên giữ nguyên thôi bạn à :)


  • 0

#25 master_worse

master_worse

    biết lệnh offset

  • Advance Member
  • PipPipPip
  • 170 Bài viết
Điểm đánh giá: 87 (tàm tạm)

Đã gửi 31 December 2014 - 11:54 AM

Liệu bạn có máy móc quá không (và cũng hơi cực đoan nữa)

 

hơi cực đoan nên mới để ghi chú, chứ cực đoan là không thèm để ghi chú rồi. :P


  • 0

Ngu dốt không đáng thẹn bằng thiếu ý chí học hỏi


Tri thức làm người ta khiêm tốn, ngu si làm người ta kiêu ngạo (Ngạn ngữ Anh)


#26 hiepttr

hiepttr

    Edu level: li10

  • Members
  • PipPipPipPipPipPipPip
  • 1298 Bài viết
Điểm đánh giá: 518 (tốt)

Đã gửi 31 December 2014 - 04:45 PM

Mình là gv dạy cad mà :)). Cái này mình biết rồi. Chỉ viết li sp thì chi viet dc cái đơn giản. Còn lệnh cad mình nắm chắc cái này rồi :D

Lệnh đấy là lệnh fillet. tắt là fi mà :D

 

Online sau những ngày vất vả, mình định lặng thinh ko nói gì. Song, thiết nghĩ nếu mình nói điều này với bạn thì chắc bạn có cảm giác dễ chịu hơn khi học sinh của bạn nói :

(Nếu là Troll thì bạn post nhầm chổ :D  )

Phần tô đỏ >>> chưa đúng, fi là viết tắt của lệnh FILTER mà :D

Thân !


  • 0

Có vợ dù dữ dù hiền , bạn đều có lợi
_ Nếu vợ hiền, bạn sẽ là người đàn ông sung sướng
_ Nếu vợ dữ, bạn sẽ thành ... triết gia !

Bergson


#27 Tue_NV

Tue_NV

    KS Võ Quang Tuệ

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

Đã gửi 31 December 2014 - 04:48 PM

Online sau những ngày vất vả, mình định lặng thinh ko nói gì. Song, thiết nghĩ nếu mình nói điều này với bạn thì chắc bạn có cảm giác dễ chịu hơn khi học sinh của bạn nói :

(Nếu là Troll thì bạn post nhầm chổ :D  )

Phần tô đỏ >>> chưa đúng, fi là viết tắt của lệnh FILTER mà :D

Thân !

 

Cũng chưa đúng đâu bạn! Fi là viết tắt của lệnh do bạn đặt lệnh tắt. hề hề


  • 0

#28 phongtran86

phongtran86

    biết lệnh offset

  • Members
  • PipPipPip
  • 177 Bài viết
Điểm đánh giá: 22 (tàm tạm)

Đã gửi 31 December 2014 - 05:55 PM

Online sau những ngày vất vả, mình định lặng thinh ko nói gì. Song, thiết nghĩ nếu mình nói điều này với bạn thì chắc bạn có cảm giác dễ chịu hơn khi học sinh của bạn nói :

(Nếu là Troll thì bạn post nhầm chổ :D  )

Phần tô đỏ >>> chưa đúng, fi là viết tắt của lệnh FILTER mà :D

Thân !

ok. Mình nhầm chứ k troll :D. lệnh bộ lọc filter. [:D] đầu nghĩ 1 cái tay gõ cái khác. Cách mình thường dung thì sẽ bật mỗi layer dimed rồi chon->ctrl +1 chỉnh màu. hoặc dùng fi chọn dim rồi chỉnh màu text. còn chỉnh dim về kích thước mình hay dùng lệnh  dimreassoc là dc

Thực ra cũng k nhanh hơn nhau là mấy. lệnh find mình hay dùng để replace thôi.


  • 0