tranduyquang25111 0 Báo cáo bài đăng Đã đăng Tháng 6 3, 2011 Bác nào có lisp chọn nhanh dim, layer, text về thành dim, layer, text hiện hành không, share em với. Em đã tìm với từ khóa chuyển dim bất kỳ về hiện hành nhưng không thấy. Mong các bác giúp hộ. 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
ketxu 2994 Báo cáo bài đăng Đã đăng Tháng 6 3, 2011 Bác nào có lisp chọn nhanh dim, layer, text về thành dim, layer, text hiện hành không, share em với. Em đã tìm với từ khóa chuyển dim bất kỳ về hiện hành nhưng không thấy. Mong các bác giúp hộ. Không hiểu ý bạn. Chọn ... về thành ? Bạn nói rõ hơn ý tưởng đi :) 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
tranduyquang25111 0 Báo cáo bài đăng Đã đăng Tháng 6 3, 2011 Không hiểu ý bạn. Chọn ... về thành ? Bạn nói rõ hơn ý tưởng đi :) Hì, lại gặp bạn Ket rồi. Ý mình là lisp chọn đối tượng dim hoặc layer, text bất kỳ. Và chuyển nó thành current. Ví dụ: lệnh doi, sẽ cho mình chọn 1 dim style, hoặc layer hoặc text style. Sau khi pick vào, thì nó lập tức chuyển thành dim style hoặc layer, text style hiện hà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
ketxu 2994 Báo cáo bài đăng Đã đăng Tháng 6 3, 2011 Hì, lại gặp bạn Ket rồi. Ý mình là lisp chọn đối tượng dim hoặc layer, text bất kỳ. Và chuyển nó thành current. Ví dụ: lệnh doi, sẽ cho mình chọn 1 dim style, hoặc layer hoặc text style. Sau khi pick vào, thì nó lập tức chuyển thành dim style hoặc layer, text style hiện hành. Hoặc là bạn vẫn chưa trình bày rõ ý đồ, hoặc là mình kém quá, đọc n hok hiểu ^^ Bạn chọn đối tượng Dim,Text thì ok rồi, còn chọn layer là sao nhỉ ?? Mình nói lại ý tưởng của bạn thế này, bạn xem có phải không : Chọn 1 đối tượng => Lấy Layer, Hoặc Dimstyle, Hoặc Text Style của đối tượng đó làm Layer/Dímtyle/Text Style hiện hành ? P/S : mình ra công trường, bạn chịu khó chờ, các bác khác đọc được sẽ giúp bạn ngay đấy :wub: 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
phamngoctukts 714 Báo cáo bài đăng Đã đăng Tháng 6 3, 2011 Hì, lại gặp bạn Ket rồi. Ý mình là lisp chọn đối tượng dim hoặc layer, text bất kỳ. Và chuyển nó thành current. Ví dụ: lệnh doi, sẽ cho mình chọn 1 dim style, hoặc layer hoặc text style. Sau khi pick vào, thì nó lập tức chuyển thành dim style hoặc layer, text style hiện hành. Bạn thử cái này xem (defun c:CLA()(command "clayer" (cdr(assoc 8 (entget(car(entsel "\nChon doi tuong lay layer hien hanh:"))))))) (defun c:CDI()(command "-dimstyle" "r" "")) (defun c:CTE()(command "textstyle" (cdr(assoc 7 (entget(car(entsel "\nChon doi tuong lay textstyle hien hanh:"))))))) 2 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
tranduyquang25111 0 Báo cáo bài đăng Đã đăng Tháng 6 3, 2011 Hoặc là bạn vẫn chưa trình bày rõ ý đồ, hoặc là mình kém quá, đọc n hok hiểu ^^ Bạn chọn đối tượng Dim,Text thì ok rồi, còn chọn layer là sao nhỉ ?? Mình nói lại ý tưởng của bạn thế này, bạn xem có phải không : Chọn 1 đối tượng => Lấy Layer, Hoặc Dimstyle, Hoặc Text Style của đối tượng đó làm Layer/Dímtyle/Text Style hiện hành ? P/S : mình ra công trường, bạn chịu khó chờ, các bác khác đọc được sẽ giúp bạn ngay đấy :wub: Đúng rồi, tại mình nói mơ hồ quá. Chính xác là như thế bạn Ket à. Bác hay pro nào viết giúp mình cái lisp đó được không. Thanks! 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
tranduyquang25111 0 Báo cáo bài đăng Đã đăng Tháng 6 3, 2011 Bạn thử cái này xem (defun c:CLA()(command "clayer" (cdr(assoc 8 (entget(car(entsel "\nChon doi tuong lay layer hien hanh:"))))))) Bác viết để pick dim style hoặc text style được không? Ý tưởng như bài viết trên của mình. Thanks! 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
phamngoctukts 714 Báo cáo bài đăng Đã đăng Tháng 6 3, 2011 Bác viết để pick dim style hoặc text style được không? Ý tưởng như bài viết trên của mình. Thanks! Bạn down lại code ở trên 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
tranduyquang25111 0 Báo cáo bài đăng Đã đăng Tháng 6 3, 2011 Bạn down lại code ở trên Cái text style hình như chưa được bác à. Em chọn mà nó không chuyển thành hiện hành. Hai cái dim và layer thì good rồi bá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
phamngoctukts 714 Báo cáo bài đăng Đã đăng Tháng 6 3, 2011 Cái text style hình như chưa được bác à. Em chọn mà nó không chuyển thành hiện hành. Hai cái dim và layer thì good rồi bác à. Mình nhầm chút bạn down lại code trên mình đã sửa rồ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
victor85 10 Báo cáo bài đăng Đã đăng Tháng 3 29, 2012 Các bạn có thể mở rộng thêm chọn nhanh đối tượng để lấy line type hiện hành nữa ko. Mình tìm trên diễn đàn mà ko thấy, hic! 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
ketxu 2994 Báo cáo bài đăng Đã đăng Tháng 3 29, 2012 (setvar "celtype" (cdr (assoc 6 (entget (car (entsel)))))) 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
Chiron 94 Báo cáo bài đăng Đã đăng Tháng 3 30, 2012 Hì, lại gặp bạn Ket rồi. Ý mình là lisp chọn đối tượng dim hoặc layer, text bất kỳ. Và chuyển nó thành current. Ví dụ: lệnh doi, sẽ cho mình chọn 1 dim style, hoặc layer hoặc text style. Sau khi pick vào, thì nó lập tức chuyển thành dim style hoặc layer, text style hiện hành. Chiron không hiểu tại sao phải viết lisp mới? Nếu cần chuyển đối tượng qua layer hiện hành có thể dùng lệnh laycur, còn để chuyển qua layer của đối tượng được chọn thì có thể dùng lệnh laymcur hoặc dùng lệnh ma để copy thuộc tính của đối tượng mà? 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
victor85 10 Báo cáo bài đăng Đã đăng Tháng 3 30, 2012 (setvar "celtype" (cdr (assoc 6 (entget (car (entsel)))))) (setvar "celtype" (cdr (assoc 6 (entget (car (entsel)))))) Cái này ketxu viết dùng ntn vậy? 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
phamthanhbinh 3147 Báo cáo bài đăng Đã đăng Tháng 3 30, 2012 Cái này ketxu viết dùng ntn vậy? Hề hề hề, Copy nó dán vào dòng command và nhấn Enter. 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
Tue_NV 3915 Báo cáo bài đăng Đã đăng Tháng 3 30, 2012 Cái này ketxu viết dùng ntn vậy? Bạn copy dòng này (setvar "celtype" (cdr (assoc 6 (entget (car (entsel)))))) và paste vào Command Hoặc là viết thành code như vầy : (defun c:Lty() (setvar "celtype" (cdr (assoc 6 (entget (car (entsel)))))) ) Hề hề hề,bác Bình post bài nhanh hơn em mấy mili giây. :D 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
Doan Van Ha 3205 Báo cáo bài đăng Đã đăng Tháng 3 30, 2012 Để ý lỗi nếu Linetype là bylayer. (setvar "celtype" (cdr (assoc 6 (entget (car (entsel)))))) Dùng cái này thì tránh được lỗi trên (vlax-get-property (vlax-ename->vla-object (car (entsel))) 'Linetype) 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
ketxu 2994 Báo cáo bài đăng Đã đăng Tháng 3 30, 2012 Cảm ơn bác ĐVH đã nhắc nhở ^^ : => (setvar "celtype" (cond ((cdr (assoc 6 (entget (car (entsel))))))("BYLAYER"))) hoặc (setvar "celtype" (vlax-get-property (vlax-ename->vla-object (car (entsel))) 'Linetype) ) 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
kloud7 0 Báo cáo bài đăng Đã đăng Tháng 3 31, 2012 Em copy lisp của bác vào thì một số lisp có sẵn của em (add cùng 1 lisp) bị lỗi, có bác nào biết tại sao ko. Hiện tượng này xảy ra với 1 số lisp khác nữa nhưng em vẫn chẳng biết khắc phục ntn :) 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
kloud7 0 Báo cáo bài đăng Đã đăng Tháng 3 31, 2012 Thiếu 01 dấu ngoặc ")" hjhj. 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
kloud7 0 Báo cáo bài đăng Đã đăng Tháng 4 2, 2012 Có bác nào có ý tưởng thế này chưa, chon một đối tượng thì setting mọi thuộc tính của nó về current, bao gồm: Layer, Linetype, Color, Text style (nếu là text) và Dim style (nếu là DIM). Các cao thủ autolisp chỉ giáo :D 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
Doan Van Ha 3205 Báo cáo bài đăng Đã đăng Tháng 4 3, 2012 Có bác nào có ý tưởng thế này chưa, chon một đối tượng thì setting mọi thuộc tính của nó về current, bao gồm: Layer, Linetype, Color, Text style (nếu là text) và Dim style (nếu là DIM). Các cao thủ autolisp chỉ giáo :D ;Doan Van Ha - CADViet.com - Ngay 03/4/2012 ;Muc dich: Set Curent theo doi tuong chon: Layer, Linetype, Colour, Textstyle (*text) or Dimstyle (dimension). (defun C:HA() (setq lst (entget (car (entsel "\nChon 1 doi tuong Text/Mtext/Dimension de Set Current: ")))) (setvar "CLAYER" (cdr (assoc 8 lst))) ;Layer (setvar "CELTYPE" (cond ((cdr (assoc 6 lst))) ("BYLAYER"))) ;Linetype (setvar "CECOLOR" (_GetColour lst)) ;Colour (cond ;TextStyle or DimStyle ((wcmatch (cdr (assoc 0 lst)) "*TEXT") (setvar "TEXTSTYLE" (cdr (assoc 7 lst)))) ((wcmatch (cdr (assoc 0 lst)) "DIMENSION") (command "DIMSTYLE" "r" (cdr (assoc 3 lst))))) (princ)) ;----- (defun _GetColour ( e / c ) (if (setq c (cdr (assoc 62 e))) (cond ((cdr (assoc c '((0 . "ByBlock") (1 . "Red") (2 . "Yellow") (3 . "Green") (4 . "Cyan") (5 . "Blue") (6 . "Magenta") (7 . "White"))))) ((itoa c))) "ByLayer")) 1 3 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
kloud7 0 Báo cáo bài đăng Đã đăng Tháng 4 3, 2012 ;Doan Van Ha - CADViet.com - Ngay 03/4/2012 ;Muc dich: Set Curent theo doi tuong chon: Layer, Linetype, Colour, Textstyle (*text) or Dimstyle (dimension). (defun C:HA() (setq lst (entget (car (entsel "\nChon 1 doi tuong Text/Mtext/Dimension de Set Current: ")))) (setvar "CLAYER" (cdr (assoc 8 lst))) ;Layer (setvar "CELTYPE" (cond ((cdr (assoc 6 lst))) ("BYLAYER"))) ;Linetype (setvar "CECOLOR" (_GetColour lst)) ;Colour (cond ;TextStyle or DimStyle ((wcmatch (cdr (assoc 0 lst)) "*TEXT") (setvar "TEXTSTYLE" (cdr (assoc 7 lst)))) ((wcmatch (cdr (assoc 0 lst)) "DIMENSION") (command "DIMSTYLE" "r" (cdr (assoc 3 lst))))) (princ)) ;----- (defun _GetColour ( e / c ) (if (setq c (cdr (assoc 62 e))) (cond ((cdr (assoc c '((0 . "ByBlock") (1 . "Red") (2 . "Yellow") (3 . "Green") (4 . "Cyan") (5 . "Blue") (6 . "Magenta") (7 . "White"))))) ((itoa c))) "ByLayer")) Thks bác, cái này mà bản vẽ nhiều dim nhiều linetype thì tiện phải biết cheer !! 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
NTD 11 Báo cáo bài đăng Đã đăng Tháng 8 1, 2012 ;Doan Van Ha - CADViet.com - Ngay 03/4/2012 ;Muc dich: Set Curent theo doi tuong chon: Layer, Linetype, Colour, Textstyle (*text) or Dimstyle (dimension). (defun C:HA() (setq lst (entget (car (entsel "\nChon 1 doi tuong Text/Mtext/Dimension de Set Current: ")))) (setvar "CLAYER" (cdr (assoc 8 lst))) ;Layer (setvar "CELTYPE" (cond ((cdr (assoc 6 lst))) ("BYLAYER"))) ;Linetype (setvar "CECOLOR" (_GetColour lst)) ;Colour (cond ;TextStyle or DimStyle ((wcmatch (cdr (assoc 0 lst)) "*TEXT") (setvar "TEXTSTYLE" (cdr (assoc 7 lst)))) ((wcmatch (cdr (assoc 0 lst)) "DIMENSION") (command "DIMSTYLE" "r" (cdr (assoc 3 lst))))) (princ)) ;----- (defun _GetColour ( e / c ) (if (setq c (cdr (assoc 62 e))) (cond ((cdr (assoc c '((0 . "ByBlock") (1 . "Red") (2 . "Yellow") (3 . "Green") (4 . "Cyan") (5 . "Blue") (6 . "Magenta") (7 . "White"))))) ((itoa c))) "ByLayer")) Thanks bác , Lisp hay quá , bác thêm cho trường hợp Linetype Scale đc ko ? . Tức là Global scale factor trong Linetype Manager vẫn ko thay đổi nhưng những đối tượng vẽ ra sau khi dùng Lisp của bác sẽ có Linetype Scale theo đối tượng đc chọn . Cảm ơn bác lần nữa 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
youme_215 0 Báo cáo bài đăng Đã đăng Tháng 11 9, 2015 Thanks bác , Lisp hay quá , bác thêm cho trường hợp Linetype Scale đc ko ? . Tức là Global scale factor trong Linetype Manager vẫn ko thay đổi nhưng những đối tượng vẽ ra sau khi dùng Lisp của bác sẽ có Linetype Scale theo đối tượng đc chọn . Cảm ơn bác lần nữa thật quá tuyệt vời ông mặt trờ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