AutoCAD – Bản vẽ

Xóa layer trong CAD: năm lý do máy từ chối và cách xử lý từng cái

Xóa layer trong CAD bị từ chối vì năm lý do, bài đo đủ tám loại layer trên AutoCAD 2027. Khoá hay tắt layer không hề chặn việc xoá như nhiều nơi vẫn dạy.

  • TS. Đỗ Quốc Hoàng
  • 9 phút đọc
Tám loại layer đem thử xóa: ba loại xóa được, năm loại bị từ chối cùng một câu Ảnh: Sơ đồ của Viện Tin học Xây dựng

Bản vẽ nhận về có 180 layer, dùng thật chừng hai chục. Bấm chọn một layer thừa, bấm nút xóa, máy im lặng không làm gì. Bấm cái nữa, vẫn thế. Xóa layer trong CAD hoá ra không phải lúc nào cũng bấm là được.

Bài này dựng một bản vẽ có đủ tám loại layer khác nhau trên AutoCAD 2027, thử xóa từng cái, rồi ghi lại chính xác cái nào đi cái nào ở. Muốn học trọn cách tổ chức bản vẽ thì xem khoá AutoCAD cho xây dựng của Viện.

Ba cách xóa, và chúng không làm cùng một việc

Trước khi bấm gì cũng nên biết ba công cụ này khác nhau ra sao, vì chọn nhầm là hoặc không xóa được gì, hoặc mất cả phần bản vẽ.

CáchXóa cái gìAn toàn tới đâu
Nút Delete Layer trong bảng layerChỉ layer rỗngAn toàn nhất, layer còn nét thì nó từ chối
Lệnh PURGE, gõ tắt PUMọi layer không ai dùng, một lượtAn toàn, chỉ gỡ thứ không ai tham chiếu
Lệnh LAYDELCả nét lẫn layerNguy hiểm, mất hẳn một phần bản vẽ

Nói cách khác, xóa layer trong CAD không phải một thao tác mà là ba, và chúng khác nhau ở chỗ có làm mất nét hay không. Hai cách đầu không bao giờ làm mất hình. Cách thứ ba thì có, và đó chính là công dụng của nó.

Không xóa được layer trong CAD: năm lý do đo được

Thay vì kể chung chung, dựng hẳn một bản vẽ có đủ tám loại layer rồi thử xóa từng cái.

Layer loại nàoTrạng tháiKết quả
IIC-TRONGrỗng, không ai dùngxóa được
IIC-KHOAđang khoá, không có nétxóa được
IIC-TATđang tắt, không có nétxóa được
0layer của hệ thốngtừ chối
Defpointsmáy tự sinh khi ghi kích thướctừ chối
IIC-TUONGcòn nét nằm trên đótừ chối
IIC-HIEN-HANHđang là layer hiện hànhtừ chối
IIC-TRONG-BLOCKchỉ dùng bên trong một blocktừ chối

Năm trường hợp từ chối đều trả về đúng một câu, không phân biệt lý do.

Object is referenced by other object(s)
Tám loại layer đem thử xóa Ảnh: Tám loại layer đem thử xóa: ba loại xóa được, năm loại bị từ chối cùng một câu

Ba dòng đầu là chỗ đáng chú ý nhất. Layer đang khoá xóa được. Layer đang tắt cũng xóa được. Hai lời khuyên hay gặp nhất trên mạng, mở khoá trước và bật layer lên trước, đều không cần thiết. Điều quyết định chỉ là layer ấy có ai tham chiếu tới hay không.

Năm lý do từ chối, và cách xử lý từng cái:

Lý doCách xử lý
Layer 0DefpointsKhông xóa được, cũng không nên xóa; bỏ qua
Còn nét nằm trên layerChuyển nét sang layer khác, hoặc dùng LAYDEL
Đang là layer hiện hànhĐặt một layer khác làm hiện hành rồi xóa lại
Chỉ dùng bên trong một blockXóa hoặc sửa định nghĩa block ấy trước
Thuộc một tham chiếu ngoàiGỡ xref ra thì layer đi theo

Dòng thứ tư là cái bẫy khó chịu nhất. Layer ấy trông rỗng trên bản vẽ, bảng layer cũng không báo gì, nhưng bên trong một định nghĩa block có nét nằm trên nó. Cách tìm là phá thử một khối ra xem, hoặc đơn giản hơn là chấp nhận để nó ở lại. Việc quản lý block nằm ở bài block trong CAD.

Xóa layer không dùng trong CAD bằng PURGE

Khi cần dọn hàng loạt chứ không phải một cái, lệnh đúng là PURGE, gõ tắt PU. Bản dòng lệnh là -PURGE, tiện khi viết vào tệp kịch bản.

Phép đo trên bản vẽ ở trên, lúc ấy có 7 layer trong đó 2 layer thừa.

Lần chạySố layer trướcSố layer sauDọn được
Lần 1752 layer
Lần 2550 layer

Lần hai không dọn thêm được gì, đúng như mong đợi: lệnh chỉ gỡ những thứ không ai tham chiếu tới, và sau lần một thì không còn cái nào như thế nữa.

Đáng chú ý là lệnh không gỡ layer chỉ dùng bên trong block, dù layer ấy trông rỗng. Đó là bằng chứng nó xét tham chiếu thật chứ không xét bề ngoài. Muốn xóa layer không dùng trong CAD thì đây là lệnh an toàn nhất, vì nó không thể làm mất hình. Cách dọn bản vẽ cho nhẹ nằm ở bài làm nhẹ bản vẽ CAD.

Lệnh LAYDEL trong CAD xóa cả nét lẫn layer

Đây là lệnh dành cho trường hợp layer còn nét mà bạn muốn bỏ luôn cả nét. Autodesk mô tả trên trang LAYDEL bằng một câu gọn: "Deletes all objects on a layer and purges the layer."

Dòng nhắc chép nguyên văn từ bản 2027 trên máy.

Command: LAYDEL
Select object on layer to delete or [Name]:
Selected layers: IIC-TUONG.
Select object on layer to delete or [Name/Undo]:
******** WARNING ********
You are about to delete layer "IIC-TUONG" from this drawing.
Do you wish to continue? [Yes No] <No>:

Hai chi tiết đáng nhớ ở đoạn này. Thứ nhất, lệnh có hẳn một dòng WARNING và nêu đích danh tên layer sắp mất. Thứ hai, giá trị ngầm định là <No>, nên bấm Enter cho nhanh là lệnh không làm gì cả — một thiết kế cẩn thận đáng khen.

Kết quả đo sau khi trả lời Yes:

Đo cái gìTrướcSau
Số đối tượng trong Model32
Số layer54

Nét mất, layer mất. Đúng một câu mô tả của Autodesk, không hơn không kém. Vì thế lệnh LAYDEL trong CAD chỉ nên dùng khi bạn chắc chắn không cần phần hình đó nữa.

Cách xóa layer trong AutoCAD theo đúng thứ tự

Gộp lại thành một trình tự dùng được cho bản vẽ bất kỳ. Cách xóa layer trong AutoCAD nhanh nhất là đi từ an toàn tới nguy hiểm, không làm ngược.

BướcLàm gìVì sao đặt ở đây
1Chạy PU, chọn Layers, Purge AllDọn sạch phần không ai dùng, không rủi ro
2Đặt một layer khác làm hiện hànhGỡ lý do từ chối dễ sửa nhất
3Chạy PU lần nữaLayer hiện hành cũ giờ đã gỡ được
4Còn layer nào thì xem nó chứa gìĐến đây mới cần nhìn từng cái
5Chắc chắn không cần thì dùng LAYDELBước duy nhất làm mất hình

Bước 3 là bước hay bị bỏ. Chạy PURGE một lần thường chưa hết, vì gỡ xong lớp này lại lòi ra lớp khác không còn ai dùng. Chạy tới khi nó báo dọn được 0 thì mới thực sự sạch.

Xóa layer rác trong CAD nhận từ nơi khác

Bản vẽ nhận từ đơn vị khác thường mang theo hàng trăm layer lạ. Nhu cầu xóa layer rác trong CAD vì thế rất thực tế, nhưng có hai nhóm không đụng được bằng cách thông thường.

Layer của tham chiếu ngoài. Tên có dấu | ở giữa, kiểu XREF-A|TUONG. Chúng không thuộc bản vẽ này mà thuộc tệp được gọi tới, nên xóa thẳng không được. Gỡ xref ra là chúng đi theo. Cách quản lý tham chiếu nằm ở bài xref trong CAD.

Layer nằm trong block. Như đã đo ở trên, layer này trông rỗng mà vẫn bị từ chối. Nếu bản vẽ có nhiều block không dùng nữa thì cứ PURGE cả block trước, xong PURGE layer lần nữa sẽ gỡ được thêm một mớ.

Một lời khuyên thực dụng cuối cùng: đừng cố xóa cho bằng hết. Layer thừa không làm tệp nặng thêm đáng kể, cũng không làm bản vẽ in sai. Dọn cho danh sách dễ nhìn là đủ, còn những cái bướng thì để đấy.

Bốn điều hay nghe nhưng không đúng

Điều hay ngheĐo được gì trên bản 2027
Phải mở khoá layer mới xóa đượcLayer khoá mà rỗng vẫn xóa được bình thường
Phải bật layer lên mới xóa đượcLayer tắt mà rỗng vẫn xóa được bình thường
Layer trông rỗng thì chắc chắn xóa đượcLayer chỉ dùng trong một block vẫn bị từ chối
Chạy PURGE một lần là sạchLần một dọn 2 layer, phải chạy tới khi báo 0

Câu hỏi thường gặp

Xóa layer trong CAD mà bấm nút không ăn, vì sao?

Vì nút Delete Layer chỉ xóa được layer rỗng. Layer còn nét, đang hiện hành, hoặc là 0Defpoints thì nó từ chối.

Xóa hàng loạt layer thừa bằng cách nào?

PU, chọn mục Layers rồi Purge All. Chạy lại vài lần cho tới khi nó báo không dọn được gì nữa.

Layer trông rỗng mà vẫn không xóa được?

Nhiều khả năng nó đang được dùng bên trong một định nghĩa block, hoặc thuộc một tham chiếu ngoài. Cả hai trường hợp đều không hiện nét nào trên bản vẽ.

Muốn bỏ luôn cả nét lẫn layer thì dùng gì?

Dùng LAYDEL. Nhớ rằng lệnh này xóa hẳn mọi đối tượng trên layer đó, và giá trị ngầm định ở câu hỏi cuối là No.

Xóa nhầm layer thì lấy lại thế nào?

U để hoàn tác ngay, LAYDEL hoàn tác được như mọi lệnh khác. Nếu đã lưu và đóng bản vẽ thì phải lấy lại từ tệp sao lưu.

Layer 0Defpoints có nên cố xóa không?

Không. Cả hai là layer của hệ thống, phần mềm luôn từ chối, và bản vẽ nào cũng có chúng.

Về tác giả

TS. Đỗ Quốc Hoàng — Phó Viện trưởng Viện Tin học Xây dựng – Trường Đại học Xây dựng Hà Nội, chuyên gia lập trình phần mềm trong xây dựng