Đến nội dung


Hình ảnh

Thay đổi tên block hàng loạt trong AutoCAD


  • Please log in to reply
30 replies to this topic

#1 Lam Boi Co

Lam Boi Co

    biết zoom

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

Đã gửi 27 December 2010 - 09:57 AM

Chào các anh chị,

Em mới tham gia diễn đàn. Em có một tình huống như sau, nhờ anh chị hướng dẫn dùm. Thanks.

Bản vẽ của em đang có khá nhiều Block có tên chứa đoạn text : *Cua phong*

Bây giờ em muốn chuyển hàng loạt các block đó thành tên : *Cua nha ve sinh*

Cho em hỏi lệnh RENAME của AutoCAD có đáp ứng được không? Cú pháp như thế nào? Đã sử dụng các wild-card characters như Help của AutoCAD, nhưng không được.

Hoặc anh chị nào có đoạn Lisp cho em xin với. Xin chân thành cám ơn.
  • 0

#2 duy782006

duy782006

    PHẠM QUỐC DUY

  • CADViet Team
  • PipPipPipPipPipPipPip
  • 2155 Bài viết
Điểm đánh giá: 1359 (rất tốt)

Đã gửi 27 December 2010 - 11:04 AM

Chào các anh chị,

Em mới tham gia diễn đàn. Em có một tình huống như sau, nhờ anh chị hướng dẫn dùm. Thanks.

Bản vẽ của em đang có khá nhiều Block có tên chứa đoạn text : *Cua phong*

Bây giờ em muốn chuyển hàng loạt các block đó thành tên : *Cua nha ve sinh*

Cho em hỏi lệnh RENAME của AutoCAD có đáp ứng được không? Cú pháp như thế nào? Đã sử dụng các wild-card characters như Help của AutoCAD, nhưng không được.

Hoặc anh chị nào có đoạn Lisp cho em xin với. Xin chân thành cám ơn.

*Được.
*Cách làm:
-Gỏ lệnh RENAME nó lên cái bảng.
-Tại mục Named ObJects bạn chọn blocks, ngó qua mục Items bạn thấy liệt kê tên các block có trong bảng vẻ bạn chọn tên block cần đổi tên.
-Tên block được chọn sẽ nhảy xuống nằm tại mục Old mane.
-Bạn gỏ tên mới vào ô Rename to, nhấn OK cái là xong.
  • 1

Cứ ngỡ trần gian là cõi thật.Cho nên tất bật đến bây giờ.
Tạo hộp thoại bằng lisp My blog QUY ĐỊNH ĐẶT TÊN TOPIC TRONG CHUYÊN MỤC LISPD http://ktsduy.wordpress.com/
Để cám ơn chỉ cần nhấn rep_up.png
(Là nhấn vào nút đó phía bài viết của người ta í chứ đừng có nhè cái hình này mà nhấn miết đi nha :-D


#3 hatieu

hatieu

    biết vẽ pline

  • Advance Member
  • PipPip
  • 67 Bài viết
Điểm đánh giá: 13 (tàm tạm)

Đã gửi 27 December 2010 - 11:05 AM

Chào các anh chị,

Em mới tham gia diễn đàn. Em có một tình huống như sau, nhờ anh chị hướng dẫn dùm. Thanks.

Bản vẽ của em đang có khá nhiều Block có tên chứa đoạn text : *Cua phong*

Bây giờ em muốn chuyển hàng loạt các block đó thành tên : *Cua nha ve sinh*

Cho em hỏi lệnh RENAME của AutoCAD có đáp ứng được không? Cú pháp như thế nào? Đã sử dụng các wild-card characters như Help của AutoCAD, nhưng không được.

Hoặc anh chị nào có đoạn Lisp cho em xin với. Xin chân thành cám ơn.


Trong cad có mà
-Gõ lệnh _rename
-Tại name object chọn Blocks
-Tại items chọn tên block mà bạn muốn sửa
-Tại rename to gõ tên block mới tên cần sửa
Chứ cần gì lisp
  • 0
Công ty cổ phần đầu tư và xây dựng AGA
Chuyên tư vấn, cung cấp, thi công hệ vách dựng nhôm kính khổ lớn, cửa nhôm kính,
kính cường lực, vách ngăn, lan can, cầu thang kinh, lam nhôm chăn nắng.
Hot: 0984.985.119

#4 Lam Boi Co

Lam Boi Co

    biết zoom

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

Đã gửi 27 December 2010 - 11:53 AM

Cám ơn 02 bạn hatieu và duy782006,

Để mình giải thích rõ hơn về nhu cầu của minh :

Giả sử bây giờ mình có 100 cái block tên lần lượt là : Cua phong 001, Cua phong 002................................ Cua phong 100

Nếu dùng lệnh Rename để sửa thành : Cua ve sinh 001, Cua ve sinh 002.......................... Cua ve sinh 100

Thì mình phải lập đi lập lại động tác trên 100 lần, rất mất thời gian. Còn nếu dùng lệnh -REN kết hợp với wild-card characters thì CAD lại không nhận diện được các block đó.

Mình đã thử cũng nhiều phương pháp rồi, cũng đã tham khảo trên mạng, nhưng chưa giải quyết được vấn đề.

Ý mình là nếu như mình chọn các block có tên "*Cua phong*" rồi nhập tên mới là "*Cua ve sinh*" thì tất cả các block có tên chứa "Cua phong" sẽ thay đổi hàng loạt thành "Cua ve sinh"

Thanks nhiều.
  • 0

#5 Lam Boi Co

Lam Boi Co

    biết zoom

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

Đã gửi 27 December 2010 - 08:22 PM

Cám ơn 02 bạn hatieu và duy782006,

Để mình giải thích rõ hơn về nhu cầu của minh :

Giả sử bây giờ mình có 100 cái block tên lần lượt là : Cua phong 001, Cua phong 002................................ Cua phong 100

Nếu dùng lệnh Rename để sửa thành : Cua ve sinh 001, Cua ve sinh 002.......................... Cua ve sinh 100

Thì mình phải lập đi lập lại động tác trên 100 lần, rất mất thời gian. Còn nếu dùng lệnh -REN kết hợp với wild-card characters thì CAD lại không nhận diện được các block đó.

Mình đã thử cũng nhiều phương pháp rồi, cũng đã tham khảo trên mạng, nhưng chưa giải quyết được vấn đề.

Ý mình là nếu như mình chọn các block có tên "*Cua phong*" rồi nhập tên mới là "*Cua ve sinh*" thì tất cả các block có tên chứa "Cua phong" sẽ thay đổi hàng loạt thành "Cua ve sinh"

Thanks nhiều.
  • 0

#6 duyhung

duyhung

    biết vẽ rectang

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

Đã gửi 27 December 2010 - 11:42 PM

Cám ơn 02 bạn hatieu và duy782006,

Để mình giải thích rõ hơn về nhu cầu của minh :

Giả sử bây giờ mình có 100 cái block tên lần lượt là : Cua phong 001, Cua phong 002................................ Cua phong 100

Nếu dùng lệnh Rename để sửa thành : Cua ve sinh 001, Cua ve sinh 002.......................... Cua ve sinh 100

Thì mình phải lập đi lập lại động tác trên 100 lần, rất mất thời gian. Còn nếu dùng lệnh -REN kết hợp với wild-card characters thì CAD lại không nhận diện được các block đó.

Mình đã thử cũng nhiều phương pháp rồi, cũng đã tham khảo trên mạng, nhưng chưa giải quyết được vấn đề.

Ý mình là nếu như mình chọn các block có tên "*Cua phong*" rồi nhập tên mới là "*Cua ve sinh*" thì tất cả các block có tên chứa "Cua phong" sẽ thay đổi hàng loạt thành "Cua ve sinh"

Thanks nhiều.

Thử dùng kết hợp filter or quick select được ko bạn?
  • 0
Song va chien dau!

#7 duy782006

duy782006

    PHẠM QUỐC DUY

  • CADViet Team
  • PipPipPipPipPipPipPip
  • 2155 Bài viết
Điểm đánh giá: 1359 (rất tốt)

Đã gửi 28 December 2010 - 08:57 AM

Cám ơn 02 bạn hatieu và duy782006,

Để mình giải thích rõ hơn về nhu cầu của minh :

Giả sử bây giờ mình có 100 cái block tên lần lượt là : Cua phong 001, Cua phong 002................................ Cua phong 100

Nếu dùng lệnh Rename để sửa thành : Cua ve sinh 001, Cua ve sinh 002.......................... Cua ve sinh 100

Thì mình phải lập đi lập lại động tác trên 100 lần, rất mất thời gian. Còn nếu dùng lệnh -REN kết hợp với wild-card characters thì CAD lại không nhận diện được các block đó.

Mình đã thử cũng nhiều phương pháp rồi, cũng đã tham khảo trên mạng, nhưng chưa giải quyết được vấn đề.

Ý mình là nếu như mình chọn các block có tên "*Cua phong*" rồi nhập tên mới là "*Cua ve sinh*" thì tất cả các block có tên chứa "Cua phong" sẽ thay đổi hàng loạt thành "Cua ve sinh"

Thanks nhiều.

Theo mình cái này dùng lisp là giải quyết ngon.
-Dùng vòng lặp cho lisp với lệnh -RENAME.
  • 0

Cứ ngỡ trần gian là cõi thật.Cho nên tất bật đến bây giờ.
Tạo hộp thoại bằng lisp My blog QUY ĐỊNH ĐẶT TÊN TOPIC TRONG CHUYÊN MỤC LISPD http://ktsduy.wordpress.com/
Để cám ơn chỉ cần nhấn rep_up.png
(Là nhấn vào nút đó phía bài viết của người ta í chứ đừng có nhè cái hình này mà nhấn miết đi nha :-D


#8 ketxu

ketxu

    Copier - Paster - Editor

  • Moderator
  • PipPipPipPipPipPipPip
  • 5685 Bài viết
Điểm đánh giá: 2606 (tuyệt vời)

Đã gửi 28 December 2010 - 11:08 AM

Ý,dùng Rename với các wild-card vẫn được mà bạn :undecided:.Nhớ là Rename để hiện hộp thoại,không dùng -rename nhé ^^
  • 0

Thành viên nhóm CadMagic.
Mời bạn ghé thăm facebook nhóm - Page viết lisp theo yêu cầu  :
CAD MAGIC


#9 shooter0o0

shooter0o0

    biết vẽ line

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

Đã gửi 28 December 2010 - 11:59 AM

nếu chỉ sửa đúng như những gì bạn nói thì dùng lênh Find sau đó thay tất cả các chữ "cửa phòng" thành "cửa vệ sinh" là được
  • 0

#10 Lam Boi Co

Lam Boi Co

    biết zoom

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

Đã gửi 28 December 2010 - 12:01 PM

Ý,dùng Rename với các wild-card vẫn được mà bạn :leluoi:.Nhớ là Rename để hiện hộp thoại,không dùng -rename nhé ^^


Chào bạn,

Đã thực hiện như hướng dẫn, nhưng không OK. CAD có thực hiện lệnh, nhưng sau đó vẫn giữ nguyên tên block ban đầu, không xi nhe. :undecided:
  • 0

#11 Lam Boi Co

Lam Boi Co

    biết zoom

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

Đã gửi 28 December 2010 - 12:04 PM

nếu chỉ sửa đúng như những gì bạn nói thì dùng lênh Find sau đó thay tất cả các chữ "cửa phòng" thành "cửa vệ sinh" là được


Chào bạn

Lệnh find không tác động lên tên block được, đã thử. Thanks. :undecided:
  • 0

#12 Lam Boi Co

Lam Boi Co

    biết zoom

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

Đã gửi 28 December 2010 - 12:06 PM

Theo mình cái này dùng lisp là giải quyết ngon.
-Dùng vòng lặp cho lisp với lệnh -RENAME.


Chào bạn,

Mình cũng đã suy nghĩ phương án như bạn. Nhưng trình độ về LISP của mình chỉ ở mức độ Công ty TNHH, nên bạn có thể gợi ý cho mình được không ? Thanks. :undecided:
  • 0

#13 funnyzui

funnyzui

    biết vẽ arc

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

Đã gửi 28 December 2010 - 10:53 PM

Đúng là lênh rename trong CAD có 1 cái rất dở là mỗi lần chỉ rename được 1 block. Còn dùng lisp thì có lẽ nhanh hơn. Hy vọng mọi người sẽ tạo ra lisp gì đó hay hay khắc phục vấn đề này
  • 0

#14 ketxu

ketxu

    Copier - Paster - Editor

  • Moderator
  • PipPipPipPipPipPipPip
  • 5685 Bài viết
Điểm đánh giá: 2606 (tuyệt vời)

Đã gửi 29 December 2010 - 08:18 PM

Chào Lam boi Co,mình đã test thử thì mới dám post lên đấy chứ ^^.Bạn post file của bạn lên đi :">
P/S : theo yêu cầu của bạn là cua phong* -> cua ve sinh * thì hoàn toàn được
  • 0

Thành viên nhóm CadMagic.
Mời bạn ghé thăm facebook nhóm - Page viết lisp theo yêu cầu  :
CAD MAGIC


#15 linhoreka

linhoreka

    biết lệnh erase

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

Đã gửi 31 December 2010 - 10:47 PM

Bạn thử dùng cái này xem MultiRenameBlock: đổi tên hàng loạt blocks.
1. App cả 2 file dvb và lisp vào autocad
2. Bạn gõ lệnh MRB (multirenameblock)
3. Bạn gõ "Cua phong" vào ô "Tên cũ", nhấn enter >>> gõ "Cua ve sinh" vào ô "Tên mới", nhấn enter >>> chọn những blocks được list ra trong danh sách và click button "Chuyển tên". Chú ý không dùng wildcard *
Có lỗi gì nhắn để tớ sửa nhé !
  • 2

#16 Lam Boi Co

Lam Boi Co

    biết zoom

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

Đã gửi 02 January 2011 - 08:39 AM

Chào Lam boi Co,mình đã test thử thì mới dám post lên đấy chứ ^^.Bạn post file của bạn lên đi :">
P/S : theo yêu cầu của bạn là cua phong* -> cua ve sinh * thì hoàn toàn được


Chào bạn,

Trước mình có tham khảo sách hướng dẫn của tác giả Nguyễn Hữu Lộc "Sử dụng AutoCAD 2008" tập 1 & 2, trong đó có đề cập đến phương pháp như bạn đã trình bày. Mình đã có thử qua rồi, nhưng không OK.

Bây giờ mình upload file co đường link sau đây, bạn ketxu và các bậc tiền bối CAD Việt xem lại giúp mình nha. Thanks. :D

http://www.cadviet.c...en_dia__003.dwg

Mình đang làm tại công ty Đài Loan, nên trên bản vẽ có nhiều nội dung tiếng Hoa, các bạn đừng quan tâm. Mình đang cố gắng Việt hóa các bản vẽ của Công ty để cho công nhân hạn chế vấn đề sai sót trong quá trỉnh sản xuất.

File trên là file đã chỉnh sửa hoàn thiện lần 003, với phần chi tiết bản lề cửa là dùng bản lề thiên địa. Nay mình có nhu cầu chuyển các thành phần bản lề thiên địa của các mặt cắt (dạng Block) thành bản lề cờ. Về phần nội dung thay đổi, mình dùng lệnh BlockReplace >>> OK. Nhưng về phần tên của các Block, mình không thể rename hàng loạt được. Lệnh Rename mỗi lần thực hiện chỉ có thể Rename 01 Block thôi.

Thao tác Rename mình đã thực hiện như sau :

Ren >>> Hộp thoại Rename >>> Chọn Named Objects : Blocks >>> Old Name : *Ban le thien dia* (Đồng ý là trong mục Items, các Block có tên chừa "Ban le thien dia" được đánh dấu) >>> Rename To : "Ban le co" (Lệnh vẫn thực thi, nhưng khi bạn kiểm tra lại trong phần Properties của Block thì Block vẫn giữ lại tên cũ).

Vì số lượng bản vẽ khá nhiều, mình mong là trong dịp nghỉ lẽ Tết sắp đến có thể tranh thủ sửa kịp, mong các bạn hỗ trợ. Thanks.
  • 0

#17 ketxu

ketxu

    Copier - Paster - Editor

  • Moderator
  • PipPipPipPipPipPipPip
  • 5685 Bài viết
Điểm đánh giá: 2606 (tuyệt vời)

Đã gửi 02 January 2011 - 09:49 AM

Nếu *-ký tự nào đó-* thì sẽ không (chưa) thực hiện được bạn ạ ^^
  • 0

Thành viên nhóm CadMagic.
Mời bạn ghé thăm facebook nhóm - Page viết lisp theo yêu cầu  :
CAD MAGIC


#18 linhoreka

linhoreka

    biết lệnh erase

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

Đã gửi 02 January 2011 - 10:54 AM

Sao có 2 topic về cùng một chủ đề à ? Tớ lại post reply bên kia ! Hic
  • 0

#19 Lam Boi Co

Lam Boi Co

    biết zoom

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

Đã gửi 02 January 2011 - 02:50 PM

Bạn thử dùng cái này xem MultiRenameBlock: đổi tên hàng loạt blocks.
1. App cả 2 file dvb và lisp vào autocad
2. Bạn gõ lệnh MRB (multirenameblock)
3. Bạn gõ "Cua phong" vào ô "Tên cũ", nhấn enter >>> gõ "Cua ve sinh" vào ô "Tên mới", nhấn enter >>> chọn những blocks được list ra trong danh sách và click button "Chuyển tên". Chú ý không dùng wildcard *
Có lỗi gì nhắn để tớ sửa nhé !


Chào bạn linhoreka,

MultiRenameBlock đúng là cái mà mình đang cần. Thanks nhiều lắm, sẽ giúp mình rút ngắn được rất nhiều thời gian trong công việc. Mình đã thử, tạm thời chưa phát hiện có vấn đề gì. :D

Nhân dịp năm mới 2011, xin chúc bạn và cộng đồng CAD Việt một năm mới an khang thịnh vượng, mọi điều may mắn. Diễn đàn CAD Việt lực lượng ngày càng hùng hậu.

Chúc mừng năm mới :D
  • 0

#20 Lam Boi Co

Lam Boi Co

    biết zoom

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

Đã gửi 02 January 2011 - 02:53 PM

Sao có 2 topic về cùng một chủ đề à ? Tớ lại post reply bên kia ! Hic


Chào bạn,

Do lúc đầu mới tham gia diễn đàn, chưa quen thao tác, lỡ post topic lên diễn đàn 02 lần. Sorry. :D
  • 0