Đến nội dung


Hình ảnh

Các lệnh về Layer!


  • Please log in to reply
30 replies to this topic

#21 quickandfine

quickandfine

    biết lệnh copy

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

Đã gửi 07 September 2012 - 09:07 PM

Em chưa hiều lắm về lisp nên chủ yếu copy code của các bác về sửa (em cũng sửa theo cảm tính chứ cũng chưa hiểu bản chất gì mấy) theo mục đích dùng của mình là chính. về đoạn lisp trên em mới chỉnh sửa được một đoạn code như thế này, nhưng có điều là sau khi Lock toàn bộ layer, em muốn unlock một (hoặc một vài) layer khác thì đoạn lisp này bị lỗi chỗ nào đó nên nó cứ hỏi tùy chọn thêm mấy thứ nữa (cũng hơi lằng nhằng). Nhờ các bác xem và sửa hộ cho em thành sau khi gõ lệnh LKK rồi thì lisp sẽ cho mình tùy chọn layer(s) để unlock luôn ạ
LKK.lsp

(defun C:LKK()
(command "-Layer" "LO" "*" "")
(princ)
(command "-layer" "U" )
(princ)
)

  • 0

#22 ketxu

ketxu

    Copier - Paster - Editor

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

Đã gửi 07 September 2012 - 10:25 PM

Bạn gõ vào command như thế nào thì viết ở lisp như vậy ^^
  • 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


#23 quickandfine

quickandfine

    biết lệnh copy

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

Đã gửi 07 September 2012 - 11:23 PM

Bạn gõ vào command như thế nào thì viết ở lisp như vậy ^^

Em thử thao tác bằng lệnh. cụ thể như sau
1/ gõ -layer
2/ chọn U
3/ sau khi chọn được object thì Enter 2 lần
thao tác như vậy thì được. Nhưng với từng ấy em viết vào lisp thì lại không được như vậy. Đoạn lisp em sửa theo các thao tác đó em Up lại ở bài viết trên. Mr Ketxu và các bác có thể chỉ rõ cho em biết tại sao không ạ?
  • 0

#24 phamduyet89

phamduyet89

    Chưa sử dụng CAD

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

Đã gửi 08 September 2012 - 10:55 AM

Mình có phân layer thành từng nhóm chứ. Nhưng giả sử bạn cần stretch một đối tượng thuộc layer 1, mà đối tượng đó nằm sát cạnh các đối tương khác thuộc layer 2,3,4.. mà vẫn cần nhìn thấy các đối tượng khác kia thì dùng layiso để tắt các đối tượng kia đi thì không ổn.

vấn đề of b đâu cần phải khóa layer làm j cho cách rách thêm. Để stretch 1 đối tượng trong 1 đống layer bạn chỉ cần layiso đối tượng cần stretch ->chọn đối tượng cần stretch ---> layon-----> stretch --->>>> p (cái lệnh p này là lấy lại đối tượng mình vừa chọn). Bạn thử xem có nhanh hơn là khóa layer ko
  • 1

#25 quickandfine

quickandfine

    biết lệnh copy

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

Đã gửi 08 September 2012 - 11:05 AM

vấn đề of b đâu cần phải khóa layer làm j cho cách rách thêm. Để stretch 1 đối tượng trong 1 đống layer bạn chỉ cần layiso đối tượng cần stretch ->chọn đối tượng cần stretch ---> layon-----> stretch --->>>> p (cái lệnh p này là lấy lại đối tượng mình vừa chọn). Bạn thử xem có nhanh hơn là khóa layer ko

Cách này mình thấy cũng được nhưng hình như là khi dùng P để chọn lại đối tượng thì Cad hiểu là chọn toàn bộ đối tượng đó để stretch (tức là sẽ move đối tượng đi) thì phải.Mà mình chỉ muốn Strecth thôi.
  • 0

#26 quickandfine

quickandfine

    biết lệnh copy

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

Đã gửi 08 September 2012 - 11:50 PM

Mình đã sửa được đoạn lisp theo mong muốn. Update tại bài #21. Thanks All
  • 0

#27 Quang Duc Ha

Quang Duc Ha

    biết vẽ pline

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

Đã gửi 13 March 2013 - 03:12 PM

Chào các bác ạ
Em muốn nhờ các bác viết hộ một đoạn lisp gần giống như yêu cầu của bạn chủ topic này ạ. Tức là mình click chọn một đối lượng thuộc một layer, gõ lệnh (giả sử là KL) thì tất cả các layer khác trong bản vẽ đều bị khóa lại ạ. Nhưng chỉ khóa thôi chứ không tắt các layer đó đi ạ. Chả là vì em gặp phải trường hợp cần stretch một đối tượng trong một mớ các đối tượng cạnh nhau mà khi dùng chuột quét thì nó chọn toàn bộ các đối tượng nên Unselect thì hơi lâu. mà dùng Layiso thì lại không nhìn thấy phạm vi cần stretch đến đâu cả.
Em xin cảm ơn các bác nhiều và chúc các bác mạnh khỏe!

Mình mới cài Cad 2010 thấy có lệnh đúng theo yêu cầu của bạn (khóa tất cả các layer trừ layer được chọn, chỉ khóa thôi chứ ko tắt), bạn thử xem sao. Nhưng mình chưa biết dùng một lệnh mà mở khóa tất cả các layer là gì, bác nào biết chỉ giúp em với. Thanks! (lệnh unlck chỉ mở cho từng layer thôi)


  • 0

#28 Tue_NV

Tue_NV

    KS Võ Quang Tuệ

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

Đã gửi 13 March 2013 - 08:32 PM

Mình mới cài Cad 2010 thấy có lệnh đúng theo yêu cầu của bạn (khóa tất cả các layer trừ layer được chọn, chỉ khóa thôi chứ ko tắt), bạn thử xem sao. Nhưng mình chưa biết dùng một lệnh mà mở khóa tất cả các layer là gì, bác nào biết chỉ giúp em với. Thanks! (lệnh unlck chỉ mở cho từng layer thôi)

 

+ Đó là lệnh LAYER hoặc -LAYER


  • 0

#29 kslethanh

kslethanh

    biết vẽ arc

  • Members
  • PipPip
  • 45 Bài viết
Điểm đánh giá: 36 (tàm tạm)

Đã gửi 28 September 2013 - 10:28 AM

Lệnh Layuniso nhé


  • 0
905921755

#30 between42

between42

    Chưa sử dụng CAD

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

Đã gửi 31 August 2015 - 08:11 AM

Khoá layer : laylck
Mở khoá Layer : layulk


Ngoài ra để tắt layer trong 1 vùng bàn vẽ thì xem bài viết sau :
Lisp ẩn layer trong 1 vùng ANLAY

(lệnh Layoff tắt layer trên toàn bản vẽ còn Lisp ANLay thì ẩn Layer trên 1 vùng bản vẽ do user chọn )

cho mình hỏi lệnh layuniso là lệnh gì thế bạn


  • 0

#31 levietbao

levietbao

    Chưa sử dụng CAD

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

Đã gửi 06 April 2016 - 10:04 AM

Em chưa hiều lắm về lisp nên chủ yếu copy code của các bác về sửa (em cũng sửa theo cảm tính chứ cũng chưa hiểu bản chất gì mấy) theo mục đích dùng của mình là chính. về đoạn lisp trên em mới chỉnh sửa được một đoạn code như thế này, nhưng có điều là sau khi Lock toàn bộ layer, em muốn unlock một (hoặc một vài) layer khác thì đoạn lisp này bị lỗi chỗ nào đó nên nó cứ hỏi tùy chọn thêm mấy thứ nữa (cũng hơi lằng nhằng). Nhờ các bác xem và sửa hộ cho em thành sau khi gõ lệnh LKK rồi thì lisp sẽ cho mình tùy chọn layer(s) để unlock luôn ạ

LKK.lsp
 
(defun C:LKK()
   (command "-Layer" "LO" "*" "")
(princ)
   (command "-layer" "U" )
(princ)
)

Chào bạn. Mình cũng giống bạn, chỉ đọc lisp và chỉnh sửa lung tung thôi. Bạn thử code này thử. Mình chỉnh lại của bạn xíu. 

 

(defun C:111()

   (command "-Layer" "LO" "*" "")
(princ)
   (command "layulk")
(princ)
)
 

  • 0