Chuyển đến nội dung
Diễn đàn CADViet
Đăng nhập để thực hiện theo  
hhhhgggg

Lisp đổi màu layer ?????????

Các bài được khuyến nghị

Bác Pro nào viết cho em cái Lisp đổi màu Layer " CAD Viet.COM" thành màu 08(đen mờ) với !!!!!!!

Đây

(defun c:dm ()

(command "-layer" "new" "CAD Viet.COM" "color" "8" "CAD Viet.COM" "")

)

Chia sẻ bài đăng này


Liên kết tới bài đăng
Chia sẻ trên các trang web khác
Đây

(defun c:dm ()

(command "-layer" "new" "CAD Viet.COM" "color" "8" "CAD Viet.COM" "")

)

Ko phải vậy ban Duy à. Ở đây là layer có sẵn từ trước, mình cần đổi màu nó.. Layer"PLINEDIACHAT"

Chia sẻ bài đăng này


Liên kết tới bài đăng
Chia sẻ trên các trang web khác
Ko phải vậy ban Duy à. Ở đây là layer có sẵn từ trước, mình cần đổi màu nó.. Layer"PLINEDIACHAT"

Không cần biết layer đó có chưa. Nó cứ tạo mới, nếu có thì nó đổi màu. Tên layer thì bạn tự thay vào (lưu ý tên layer không nhận khoảng trắng)

 

@Nếu đã viết lisp thì mình gợi ý bạn 1 lisp như này:

Hỏi chọn đối tượng thuộc lớp muốn đổi màu.

Hiện bảng màu để bạn chọn màu cần đổi 1 cách trực quan

Đổi màu layer chứa đối tượng thành màu vừa chọn

Chia sẻ bài đăng này


Liên kết tới bài đăng
Chia sẻ trên các trang web khác
Bác Pro nào viết cho em cái Lisp đổi màu Layer " CAD Viet.COM" thành màu 08(đen mờ) với !!!!!!!

cái này có đầy trên diễn đàn.cào lisp theo iu cầu mà kiếm.tui đang bực vì cái lisp này.tui đang sài lisp đổi layer nhanh.bị cái llisp đổi màu nó phá.bực.hai kiểu này các đại ca tao lisp để cách sài giống nhau nên chỉ sài được 1 cái thui.

Chia sẻ bài đăng này


Liên kết tới bài đăng
Chia sẻ trên các trang web khác
Không cần biết layer đó có chưa. Nó cứ tạo mới, nếu có thì nó đổi màu. Tên layer thì bạn tự thay vào (lưu ý tên layer không nhận khoảng trắng)

 

@Nếu đã viết lisp thì mình gợi ý bạn 1 lisp như này:

Hỏi chọn đối tượng thuộc lớp muốn đổi màu.

Hiện bảng màu để bạn chọn màu cần đổi 1 cách trực quan

Đổi màu layer chứa đối tượng thành màu vừa chọn

ko phải mà, do có Layer từ trước rùi nên khi chạy nó báo lỗi :

 

Layer "PLINEDIACHAT" already exists.

nil

Mình ko dùng tạo mới Layer được ! Bạn cứ thử mà xem !

Chia sẻ bài đăng này


Liên kết tới bài đăng
Chia sẻ trên các trang web khác
ko phải mà, do có Layer từ trước rùi nên khi chạy nó báo lỗi :

 

Layer "PLINEDIACHAT" already exists.

nil

Mình ko dùng tạo mới Layer được ! Bạn cứ thử mà xem !

Bạn thử dùng code này xem :

(defun c:dm ()
(setq mau (getint "\nNhap mau muon doi cho Layer PLINEDIACHAT :"))
(command "-layer" "m" "PLINEDIACHAT" "color" mau "" "")
(princ)
)

:cheers:

Chia sẻ bài đăng này


Liên kết tới bài đăng
Chia sẻ trên các trang web khác
Bạn thử dùng code này xem :

(defun c:dm ()
(setq mau (getint "\nNhap mau muon doi cho Layer PLINEDIACHAT :"))
(command "-layer" "m" "PLINEDIACHAT" "color" mau "" "")
(princ)
)

:cheers:

Bác Tuệ à. Lisp của bác thì chạy tốt , em cảm ơn bác nhé !

Chia sẻ bài đăng này


Liên kết tới bài đăng
Chia sẻ trên các trang web khác
ko phải mà, do có Layer từ trước rùi nên khi chạy nó báo lỗi :

 

Layer "PLINEDIACHAT" already exists.

nil

Mình ko dùng tạo mới Layer được ! Bạn cứ thử mà xem !

Mình hỏi thiệt nghen. Bạn chạy lisp xong có dòm thử cái màu nó đổi chưa hay không hay bạn thấy nó lên chữ nil thì kiu là bị lỗi.

-Tất nhiên lisp của bạn TUE-VN thì đúng y yêu cầu của bạn nhưng mình tính cả cho trường hợp layer đó của bạn chưa tồn tại.

Chia sẻ bài đăng này


Liên kết tới bài đăng
Chia sẻ trên các trang web khác

Nhân tiện hỏi về layer các bác cho em hỏi làm cách nào để lấy được giá trị màu của đổi tượng có màu Bylayer (ví dụ: 1 đường thẳng có màu Bylayer là màu đỏ thì làm sao gán biến "mau" = 1 được)?

Chia sẻ bài đăng này


Liên kết tới bài đăng
Chia sẻ trên các trang web khác
Nhân tiện hỏi về layer các bác cho em hỏi làm cách nào để lấy được giá trị màu của đổi tượng có màu Bylayer (ví dụ: 1 đường thẳng có màu Bylayer là màu đỏ thì làm sao gán biến "mau" = 1 được)?

Bạn sử dụng hàm tblsearch hoặc hàm tblobjname

  • Vote tăng 1

Chia sẻ bài đăng này


Liên kết tới bài đăng
Chia sẻ trên các trang web khác
Đây

(defun c:dm ()

(command "-layer" "new" "CAD Viet.COM" "color" "8" "CAD Viet.COM" "")

)

Nhờ đoạn lisp của bác minh có thể tạo được nhiều layer khác nhau. nhưng cho minh hỏi một chút: Nếu mình muốn thêm các /LWeight/MATerial/Plot/Freeze/ cho các layer này có được không? các giá trị này đều là bylayer hết.

 

VD như mình muốn tạo 1 layer cadviet123 / màu 1/ línstyle là Continuous/ LW là 0.25 thì phải làm thế nào?

Chia sẻ bài đăng này


Liên kết tới bài đăng
Chia sẻ trên các trang web khác
Nhờ đoạn lisp của bác minh có thể tạo được nhiều layer khác nhau. nhưng cho minh hỏi một chút: Nếu mình muốn thêm các /LWeight/MATerial/Plot/Freeze/ cho các layer này có được không? các giá trị này đều là bylayer hết.

 

VD như mình muốn tạo 1 layer cadviet123 / màu 1/ línstyle là Continuous/ LW là 0.25 thì phải làm thế nào?

Bạn vào cad gỏ lệnh -layer sau đó muốn làm gì thì ghi lại trình tự các bước và vào lisp viết lại y như vậy là được.

  • Vote tăng 1

Chia sẻ bài đăng này


Liên kết tới bài đăng
Chia sẻ trên các trang web khác
Bạn vào cad gỏ lệnh -layer sau đó muốn làm gì thì ghi lại trình tự các bước và vào lisp viết lại y như vậy là được.

MÌnh đã làm được rồi, thanks bác nhiều :bigsmile:

Chia sẻ bài đăng này


Liên kết tới bài đăng
Chia sẻ trên các trang web khác

Tạo một tài khoản hoặc đăng nhập để nhận xét

Bạn cần phải là một thành viên để lại một bình luận

Tạo tài khoản

Đăng ký một tài khoản mới trong cộng đồng của chúng tôi. Điều đó dễ mà.

Đăng ký tài khoản mới

Đăng nhập

Bạn có sẵn sàng để tạo một tài khoản ? Đăng nhập tại đây.

Đăng nhập ngay

Đăng nhập để thực hiện theo  

×