Đến nội dung


Hình ảnh

Đổi tên Block được chọn !


  • Please log in to reply
22 replies to this topic

#1 leejang

leejang

    biết lệnh move

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

Đã gửi 17 June 2011 - 07:41 AM

Em muốn đổi tên các Blog nào được chọn thì làm thế nào ạ ? Bác nào biết chỉ giúp em với ạ !
  • 0

#2 thanhduan2407

thanhduan2407

    biết lệnh adcenter

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

Đã gửi 17 June 2011 - 07:48 AM

Em muốn đổi tên các Blog nào được chọn thì làm thế nào ạ ? Bác nào biết chỉ giúp em với ạ !

Đổi tên Block thì dùng lệnh "Rename". Chọn vào block và tìm block nào cần thay thế. Gõ tên mới vào ô dưới là ok. Không biết có đúng ý bạn không? Vì cái từ các block được chọn nghe nó sao ý, không hiểu cho lắm
  • 0



Tôi là con kiến bò trên sa mạc kiến thức bao la. Biển học thật rộng lớn







#3 phamngoctukts

phamngoctukts

    biết lệnh adcenter

  • CADViet Team
  • PipPipPipPipPipPipPip
  • 1107 Bài viết
Điểm đánh giá: 696 (tốt)

Đã gửi 17 June 2011 - 07:58 AM

Em muốn đổi tên các Blog nào được chọn thì làm thế nào ạ ? Bác nào biết chỉ giúp em với ạ !

Bạn thử cái này xem

(defun c:dten(/ bl ten tm)
(setq bl (car(entsel "\nChon block muon doi: "))
ten (cdr(assoc 2 (entget bl)))
tm (getstring "\nNhap ten muon doi: ")
)
(command "rename" "b" ten tm)
)

  • 0
Tất cả vì sự phát triển của diễn đàn ...
Cám ơn đừng nói lời suông mà hãy nhấn Hình đã gửi!

#4 leejang

leejang

    biết lệnh move

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

Đã gửi 17 June 2011 - 08:16 AM

Bạn thử cái này xem


(defun c:dten(/ bl ten tm)
(setq bl (car(entsel "\nChon block muon doi: "))
ten (cdr(assoc 2 (entget bl)))
tm (getstring "\nNhap ten muon doi: ")
)
(command "rename" "b" ten tm)
)

hic. Không được rồi bác ơi. Em muốn chọn 1 lần cả trăm blog để đổi tên cơ ạ ? Cái này chỉ chọn từng cái 1. Mất thời gian lắm ạ. Bác chỉnh giúp em với !
  • 0

#5 thanhduan2407

thanhduan2407

    biết lệnh adcenter

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

Đã gửi 17 June 2011 - 08:18 AM

hic. Không được rồi bác ơi. Em muốn chọn 1 lần cả trăm blog để đổi tên cơ ạ ? Cái này chỉ chọn từng cái 1. Mất thời gian lắm ạ. Bác chỉnh giúp em với !

Hổng hiểu bạn này nói luôn.Pó tay
  • 0



Tôi là con kiến bò trên sa mạc kiến thức bao la. Biển học thật rộng lớn







#6 huyphan

huyphan

    biết dimbaseline

  • CADViet Team
  • PipPipPipPipPip
  • 368 Bài viết
Điểm đánh giá: 71 (tàm tạm)

Đã gửi 17 June 2011 - 08:32 AM

Blog khác Block trong AutoCAD đấy nhé, viết bài mà như thế thấy khó chịu lắm. Nên sửa lại cho đúng đi nhé!
  • 0

#7 leejang

leejang

    biết lệnh move

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

Đã gửi 17 June 2011 - 08:36 AM

Hic. E xin lỗi, ý của em là giả sử có 1000 cái Blog tên là A bi h e muốn đổi tên cả 1000 cái đó. Sau khi em đánh lệnh Lisp, nó cho phép chọn 1000 đối tượng trong 1 lần ý ạ !
  • 0

#8 phamngoctukts

phamngoctukts

    biết lệnh adcenter

  • CADViet Team
  • PipPipPipPipPipPipPip
  • 1107 Bài viết
Điểm đánh giá: 696 (tốt)

Đã gửi 17 June 2011 - 08:58 AM

Hic. E xin lỗi, ý của em là giả sử có 1000 cái Blog tên là A bi h e muốn đổi tên cả 1000 cái đó. Sau khi em đánh lệnh Lisp, nó cho phép chọn 1000 đối tượng trong 1 lần ý ạ !

Bó tay với bạn luôn. Nếu bạn có 1000 hay 1 tỉ cái block tên là A thì bạn chỉ cần đổi tên 1 cái block tên A là tất cả cái kia đổi theo luôn đó.
  • 0
Tất cả vì sự phát triển của diễn đàn ...
Cám ơn đừng nói lời suông mà hãy nhấn Hình đã gửi!

#9 leejang

leejang

    biết lệnh move

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

Đã gửi 17 June 2011 - 09:11 AM

Bó tay với bạn luôn. Nếu bạn có 1000 hay 1 tỉ cái block tên là A thì bạn chỉ cần đổi tên 1 cái block tên A là tất cả cái kia đổi theo luôn đó.

hic. Bạn không hiểu vấn đề rồi. E xin trình bày rõ là như thế này. Giả sử có 10 cái blog, Em chỉ muốn đổi tên 5 cái thôi, còn 5 cái để nguyên. Cái lisp hiện tại cho phép đổi tên từng đối tượng 1, mỗi lần chạy thì được đổi 1 đối tượng. Em muốn rằng 1 lần chạy có thể đổi tên được n đối tượng.
  • 0

#10 hoan2182

hoan2182

    biết lệnh adcenter

  • Members
  • PipPipPipPipPipPipPip
  • 2646 Bài viết
Điểm đánh giá: 832 (rất tốt)

Đã gửi 17 June 2011 - 09:39 AM

hic. Bạn không hiểu vấn đề rồi. E xin trình bày rõ là như thế này. Giả sử có 10 cái blog, Em chỉ muốn đổi tên 5 cái thôi, còn 5 cái để nguyên. Cái lisp hiện tại cho phép đổi tên từng đối tượng 1, mỗi lần chạy thì được đổi 1 đối tượng. Em muốn rằng 1 lần chạy có thể đổi tên được n đối tượng.

Blog khác Block trong AutoCAD đấy nhé, viết bài mà như thế thấy khó chịu lắm. Nên sửa lại cho đúng đi nhé!

Nếu muốn đổi tên nhiều tên file hãy dùng thử:

Flash Renamer v6.3 - Đổi tên nhiều file cùng lúc nhanh chóng

Hình đã gửi

Flash Renamer là một tiện ích tiết kiệm thời gian cho người dùng có một số lượng lớn file, chẳng hạn người dùng máy ảnh số, quản trị website và người thích sưu tập tranh ảnh, phim. Flash Renamer đặt tên lại nhiều file cùng một lúc, hay còn gọi là đặt tên hàng loạt. Với Flash Renamer bạn có thể tự động hóa quá trình đặt tên hàng ngàn file chỉ với 1 click .

Sử dụng Flash Renamer để thiết lập in hoa cho tên file của bạn, hay chữ thường hoặc kiểu chữ cho ký tự đầu tiên. Giải nén và đặt tên với tag Mp3 ID3 để dọn dẹp bộ sưu tập âm nhạc của bạn. Tìm và thay thế các chuỗi ký tự trong tên file. Thiết lập ngày và thuộc tính. Xóa bỏ các khoảng trống không mong muốn. Thêm và xóa ký tự tại một vị trí xác định.

Quá trình đặt tên theo chuỗi cho phép bạn thêm các chuỗi số vào file name. Bạn có thể xuất các thông tin hữu ích, như chiều rộng/cao, chiều dài, bitrate và framerate trong phim, nhạc & file ảnh, và đưa chúng vào tên file. Và nếu như thế là chưa đủ, Flash Renamer có thể nhận diện định dạng của file mà đuôi file không đúng. Bạn thậm chí có thể sắp xếp bộ sưu tập âm nhạc của bạn theo tên ca sĩ và album.

Flash Renamer xử lý cả file và thư mục và hoạt động với mọi phiên bản của Windows. Khung xem trước theo thời gian thực hiển thị tên file mới sẽ trông như thế nào, do đó bạn không phải lo lắng sẽ mắc lỗi. Đừng phí thời gian đặt tên file lại bằng cách thủ công.

Home Page: http://www.rlvision....shren/about.asp

(Sưu tầm)
  • 0

Gió đưa cây cải về trời

Rau răm ở lại chịu lời đắng cay...


#11 tinya1225

tinya1225

    biết lệnh copy

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

Đã gửi 17 June 2011 - 09:41 AM

hic. Bạn không hiểu vấn đề rồi. E xin trình bày rõ là như thế này. Giả sử có 10 cái blog, Em chỉ muốn đổi tên 5 cái thôi, còn 5 cái để nguyên. Cái lisp hiện tại cho phép đổi tên từng đối tượng 1, mỗi lần chạy thì được đổi 1 đối tượng. Em muốn rằng 1 lần chạy có thể đổi tên được n đối tượng.

Mình có 1 cách không dùng lisp hi vọng đáp ứng đc bạn.
Bạn chọn 1 cái block ( B ) nào đó muốn đổi tên, explore nó ra rùi B lại theo tên bạn muốn, dùng lệnh replace B with another B trong express tool là ok. chú ý vị trí base point của B trc và sau giống nhau để không phải chỉnh sửa sau khi replace.
B = block nhé.
Làm đc thì nhớ thanks + mình cái nha^^
  • 1
Thấy bài có ích thì ấn thật nhiều Thank + các bác nhé^^

#12 leejang

leejang

    biết lệnh move

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

Đã gửi 17 June 2011 - 10:50 AM

Mình có 1 cách không dùng lisp hi vọng đáp ứng đc bạn.
Bạn chọn 1 cái block ( B ) nào đó muốn đổi tên, explore nó ra rùi B lại theo tên bạn muốn, dùng lệnh replace B with another B trong express tool là ok. chú ý vị trí base point của B trc và sau giống nhau để không phải chỉnh sửa sau khi replace.
B = block nhé.
Làm đc thì nhớ thanks + mình cái nha^^

Không được bạn ạ ? Vì ở đây là mình không thay thế toàn bộ mà mình chỉ thay thế 1 phần. Lệnh đó không cho chọn vùng áp dụng ?
  • 0

#13 tinya1225

tinya1225

    biết lệnh copy

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

Đã gửi 17 June 2011 - 03:17 PM

Không được bạn ạ ? Vì ở đây là mình không thay thế toàn bộ mà mình chỉ thay thế 1 phần. Lệnh đó không cho chọn vùng áp dụng ?

uh nhỉ. sorry vì không giúp đc bạn.
có 1 cách nữa dù rất thủ công nhé. bạn copy base point những B muốn đổi tên sang bản vẽ khác, đổi tên rùi copy về đúng vị trí cũ.
nhưng cho mình hỏi bạn cần đổi tên để làm j vậy?
  • 0
Thấy bài có ích thì ấn thật nhiều Thank + các bác nhé^^

#14 ketxu

ketxu

    Copier - Paster - Editor

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

Đã gửi 17 June 2011 - 03:37 PM

Cái lisp hiện tại cho phép đổi tên từng đối tượng 1, mỗi lần chạy thì được đổi 1 đối tượng. Em muốn rằng 1 lần chạy có thể đổi tên được n đối tượng.

Nghe bạn nói câu này về lisp sử dụng lệnh Rename anh Tú viết mình bất ngờ quá ^^ Đúng là leejang đây rồi :)
Về vấn đề của bạn, bạn có thể làm qua 2 bước :
1- Tạo block tên mới từ block cũ (explode, tạo mới, hoặc block edit, save block as...)
2- Thay thế block mới vào chỗ các block cũ theo lựa chọn của bạn bằng lisp Matchprop block trong bộ ACV hoặc Vào đây để lấy cái tương tự
  • 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 phamngoctukts

phamngoctukts

    biết lệnh adcenter

  • CADViet Team
  • PipPipPipPipPipPipPip
  • 1107 Bài viết
Điểm đánh giá: 696 (tốt)

Đã gửi 17 June 2011 - 08:33 PM

hic. Bạn không hiểu vấn đề rồi. E xin trình bày rõ là như thế này. Giả sử có 10 cái blog, Em chỉ muốn đổi tên 5 cái thôi, còn 5 cái để nguyên. Cái lisp hiện tại cho phép đổi tên từng đối tượng 1, mỗi lần chạy thì được đổi 1 đối tượng. Em muốn rằng 1 lần chạy có thể đổi tên được n đối tượng.

Bạn thử cái này xem có đúng ý không nhé.
bước1: Chọn block điển hình
bước2: Chon các block muốn đổi tên.
bước3: Nhập tên block mới.

(defun c:dt ()
(setq oldos (getvar "osmode"))
(setvar "osmode" 0)
(command "undo" "be")
(setq ten (cdr(assoc 2 (entget(car(entsel "\nChon block dien hinh: "))))))
(princ "\nChon block can doi ten: ")
(setq ssc (ssget (list(cons 0 "INSERT")(cons 2 ten)))
tm (getstring "\nNhap ten moi: ")
)
(command "rename" "b" ten tm)
(command "copyclip" ssc "")
(command "block" "block_temp" "0,0" ssc "")
(command "insert" "block_temp" "0,0" 1 1 1 0 "")
(setq el (entlast))
(setq pt (car(acet-ent-geomextents el)))
(command "undo" "e"
"undo" 1)
(command "erase" ssc "")
(command "pasteclip" pt)
(setvar "osmode" oldos)
)

  • 1
Tất cả vì sự phát triển của diễn đàn ...
Cám ơn đừng nói lời suông mà hãy nhấn Hình đã gửi!

#16 gp14

gp14

    DO TUAN GIAP

  • Moderator
  • PipPipPipPipPipPipPip
  • 1860 Bài viết
Điểm đánh giá: 1120 (rất tốt)

Đã gửi 17 June 2011 - 09:08 PM

Lisp của bạn Tú sau khi đổi được tên thì các block đã bị di chuyển so với điểm chèn. Bạn check lại nhé.
  • 0

#17 phamngoctukts

phamngoctukts

    biết lệnh adcenter

  • CADViet Team
  • PipPipPipPipPipPipPip
  • 1107 Bài viết
Điểm đánh giá: 696 (tốt)

Đã gửi 17 June 2011 - 10:33 PM

Lisp của bạn Tú sau khi đổi được tên thì các block đã bị di chuyển so với điểm chèn. Bạn check lại nhé.

Chào Giáp!
Mình đã kiểm tra rồi lisp chay đúng đấy không bị sai đâu.
  • 0
Tất cả vì sự phát triển của diễn đàn ...
Cám ơn đừng nói lời suông mà hãy nhấn Hình đã gửi!

#18 leejang

leejang

    biết lệnh move

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

Đã gửi 18 June 2011 - 07:40 AM

Lisp chuẩn theo ý em. Thanks bác nhiều nhé !
  • 0

#19 790312

790312

    biết lệnh fillet

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

Đã gửi 20 June 2011 - 06:09 PM

Bác gp14 nói đúng đó bác ah,khi sửa tên block xong thì block đó bị di chuyển so với vị trí của block,tiện thể cho e hỏi hình như đối với block Att có liên quan tới block động thì không đổi tên được,bác xem lại sửa giúp e với.Thanks.
  • 0

#20 phamngoctukts

phamngoctukts

    biết lệnh adcenter

  • CADViet Team
  • PipPipPipPipPipPipPip
  • 1107 Bài viết
Điểm đánh giá: 696 (tốt)

Đã gửi 20 June 2011 - 09:02 PM

Bác gp14 nói đúng đó bác ah,khi sửa tên block xong thì block đó bị di chuyển so với vị trí của block,

Xin lỗi các bạn hôm trước mình đã sửa rồi quên up lại nên bị sai tí chút
code fix

(defun c:dt ()
(setq oldos (getvar "osmode"))
(setvar "osmode" 0)
(command "undo" "be")
(setq ten (cdr(assoc 2 (entget(car(entsel "\nChon block dien hinh: "))))))
(princ "\nChon block can doi ten: ")
(setq ssc (ssget (list(cons 0 "INSERT")(cons 2 ten)))
tm (getstring "\nNhap ten moi: ")
)
(command "rename" "b" ten tm)
(command "copyclip" ssc "")
(command "block" "block_temp" "0,0" ssc "")
(command "insert" "block_temp" "0,0" 1 1 0)
(setq el (entlast))
(setq pt (car(acet-ent-geomextents el)))
(command "undo" "e"
"undo" 1)
(command "erase" ssc "")
(command "pasteclip" pt)
(setvar "osmode" oldos)
)

  • 0
Tất cả vì sự phát triển của diễn đàn ...
Cám ơn đừng nói lời suông mà hãy nhấn Hình đã gửi!