Chuyển đến nội dung
Diễn đàn CADViet

Bảng xếp hạng


Nội dung phổ biến

Hiển thị nội dung có danh tiếng cao nhất vì 26/06/2021 trong tất cả các lĩnh vực

  1. 3 điểm
    Cái này dùng để tạo ảnh cho button, Nhưng cũng có thể chụp màn hình post lên diễn đàn cho tiện. CopyScreen.rar
  2. 2 điểm
    Để khỏi phát sinh việc mất bắt điểm khi dừng lisp giữa chừng nên dùng entmake để tạo đối tượng cad.
  3. 2 điểm
  4. 2 điểm
  5. 1 điểm
    Code này lấy height là height của style current
  6. 1 điểm
    Nhắm chừng thằng bạn xử lý dc. Được thì liên hệ mình qua Zalo để hỏi kỹ càng thêm. 0986370918
  7. 1 điểm
    Đọc qua cái này đi bạn. Nhưng mình nghĩ app đọc, ghi dữ liệu độc lập, chỉ khi cần export dữ liệu sang dwg mới gọi Cad lên. https://through-the-interface.typepad.com/through_the_interface/2009/05/interfacing-an-external-com-application-with-a-net-module-in-process-to-autocad-redux.html
  8. 1 điểm
    Làm ngược lại. Lấy bản vẽ 1 xóa sạch rồi chen bàn vẽ 2 vào. Nếu sửa nhiều block. Còn không thì wblock đó ra rồi các bàn vẽ khác kéo thả block đó vào. Còn có 1 cách nữa là nhấn Ctrl+2. mở tới bản vẽ 1 - blocks . Nhán nút phải trên block đã sửa chọn redefine only
  9. 1 điểm
  10. 1 điểm
    Cái này cần file cad thực tế bạn nhé liên hệ zalo 0848998045
  11. 1 điểm
  12. 1 điểm
    ✅ Nhận Code GamVip G88 Vin Miễn Phí Chiến Thắng G88,R88,M88,W88,V88 Vin. Đại Gia Game Bài 88Vin Gift Code GOLD & Vip Code 88Vin 365Win Cập nhật theo ngày. Các Bạn Có Thể Truy Cập https://88code.weebly.com/ Để Biết Thêm Chi Tiết Về Gift Code 88Vin & Vip Code 365Win. Hướng Dẫn Chơi Và Chiến Thắng 88 Vin 365 Win ✅ Click Đăng Nhập Tại Đây ✅ Chiến Thắng Tài Xỉu 88Vin 365Win ✅ Nhận Ưu Đãi Vòng Quay Vip 88Vin 365Win ✅ Nhận Ưu Đãi Vòng Quay Vip 88Vin 365Win ĐĂNG NHẬP HẰNG NGÀY NHẬN GIFTCODE G365 Win,R365 Win,M365 Win,W365 Win ✅ Đăng Nhập Nhận Code ✅ Cách Quay Nổ Hũ 88Vin 365 Win ✅ Hỗ Trợ OTP APP VinChat Telesafe 88Vin 365Win ✅ Hỗ Trợ DownLoad Game Đa Nền Tảng ✅ [MEDIA=youtube]fCfBy2RuUAE[/MEDIA] Chúc Các Bạn May Mắn
  13. 1 điểm
  14. 1 điểm
    Bạn thay dòng (ở đầu lisp MIDLEN): (setq fmt "%lu6") thành: (setq fmt "%lu2%pr0%ps[L = ,0]%ct8[0.1]") Rồi test thử xem sao.
  15. 1 điểm
    Cũng quên mất. Không update kiến thức về Cad.
  16. 1 điểm
    Dựa theo lisp MIDLEN.lsp của LEEMAC, Thiep ra lisp LENGFIELD.lsp phù hợp với ý của bạn Nhớ là cách chọn đối tượng là kiểu Fence nhe bạn, mục đích của mình là đối tượng polyline nào "dính" hàng rào trước thì lisp sẽ tạo ra 1 text gắn field trước, như vậy sẽ pick điểm chèn text cho phù hợp theo trật tự. ;;-------------------=={ Length *POLYLINE _ field }==-------------------;; ;; ;; ;; This program prompts the user for a selection of objects to be ;; ;; labelled and proceeds to generate an MText object located at ;; ;; the midpoint of each object displaying a Field Expression ;; ;; referencing the length of the object. ;; ;; ;; ;; The program is compatible for use with *Polylines, and under ;; ;; all UCS & View settings. ;; ;; The MText will have a background mask ;; ;; enabled and will use the active Text Style and Text Height settings ;; ;; at the time of running the program. ;; ;;----------------------------------------------------------------------;; ;; Author: Trân Thiêp base lisp midlen.lsp by Lee Mac, Copyright © 2013 - www.lee-mac.com ;; ;;----------------------------------------------------------------------;; ;; - Modified LM:objectid function to account for 64-bit AutoCAD 2008. ;; ;;----------------------------------------------------------------------;; (defun c:lengfield (/ *error* ent fmt idx ins ocs par sel spc txt typ uxa) (setvar "textsize" (getvar "DIMTXT")) (defun *error* (msg) (LM:endundo (LM:acdoc)) (if (not (wcmatch (strcase msg t) "*break,*cancel*,*exit*")) (princ (strcat "\nError: " msg)) ) (princ) ) (if (setq sel (ssget "F" (acet-ui-fence-select) (list '(0 . "*POLYLINE") '(-4 . "<NOT") '(-4 . "<AND") '(0 . "POLYLINE") '(-4 . "&") '(70 . 80) '(-4 . "AND>") '(-4 . "NOT>") (if (= 1 (getvar 'cvport)) (cons 410 (getvar 'ctab)) '(410 . "Model") ) ) ) ) (progn (setq spc (vlax-get-property (LM:acdoc) (if (= 1 (getvar 'cvport)) 'paperspace 'modelspace ) ) ) (setq ocs (trans '(0.0 0.0 1.0) 1 0 t) uxa (angle '(0.0 0.0) (trans (getvar 'ucsxdir) 0 ocs t)) ) (LM:startundo (LM:acdoc)) (repeat (setq idx (sslength sel)) (setq ent (ssname sel (setq idx (1- idx))) par (vlax-curve-getparamatdist ent (/ (vlax-curve-getdistatparam ent (vlax-curve-getendparam ent)) 2.0) ) ins (vlax-curve-getpointatparam ent par) typ (cdr (assoc 0 (entget ent))) ) (setq txt (vlax-invoke spc 'addmtext ins 0.0 (strcat "L=" "%<\\AcObjProp Object(%<\\_ObjId " (LM:objectid (vlax-ename->vla-object ent)) ">%).Length \\f \"%lu2%pr0%ps[,0]%ct8[0.1]\">%" ) ) ) (vla-put-backgroundfill txt :vlax-true) (vla-put-attachmentpoint txt acattachmentpointmiddlecenter) (vla-put-insertionpoint txt (vlax-3D-point (getpoint "\pick a point for inserttext_field")) ) ) (LM:endundo (LM:acdoc)) ) ) (princ) ) ;; Readable - Lee Mac ;; Returns an angle corrected for text readability. (defun LM:readable ( a ) ( (lambda ( a ) (if (and (< (* pi 0.5) a) (<= a (* pi 1.5))) (LM:readable (+ a pi)) a ) ) (rem (+ a pi pi) (+ pi pi)) ) ) ;; ObjectID - Lee Mac ;; Returns a string containing the ObjectID of a supplied VLA-Object ;; Compatible with 32-bit & 64-bit systems (defun LM:objectid ( obj ) (eval (list 'defun 'LM:objectid '( obj ) (if (wcmatch (getenv "PROCESSOR_ARCHITECTURE") "*64*") (if (vlax-method-applicable-p (vla-get-utility (LM:acdoc)) 'getobjectidstring) (list 'vla-getobjectidstring (vla-get-utility (LM:acdoc)) 'obj ':vlax-false) '(LM:ename->objectid (vlax-vla-object->ename obj)) ) '(itoa (vla-get-objectid obj)) ) ) ) (LM:objectid obj) ) ;; Entity Name to ObjectID - Lee Mac ;; Returns the 32-bit or 64-bit ObjectID for a supplied entity name (defun LM:ename->objectid ( ent ) (LM:hex->decstr (setq ent (vl-string-right-trim ">" (vl-prin1-to-string ent)) ent (substr ent (+ (vl-string-position 58 ent) 3)) ) ) ) ;; Hex to Decimal String - Lee Mac ;; Returns the decimal representation of a supplied hexadecimal string (defun LM:hex->decstr ( hex / foo bar ) (defun foo ( lst rtn ) (if lst (foo (cdr lst) (bar (- (car lst) (if (< 57 (car lst)) 55 48)) rtn)) (apply 'strcat (mapcar 'itoa (reverse rtn))) ) ) (defun bar ( int lst ) (if lst (if (or (< 0 (setq int (+ (* 16 (car lst)) int))) (cdr lst)) (cons (rem int 10) (bar (/ int 10) (cdr lst))) ) (bar int '(0)) ) ) (foo (vl-string->list (strcase hex)) nil) ) ;; Start Undo - Lee Mac ;; Opens an Undo Group. (defun LM:startundo ( doc ) (LM:endundo doc) (vla-startundomark doc) ) ;; End Undo - Lee Mac ;; Closes an Undo Group. (defun LM:endundo ( doc ) (while (= 8 (logand 8 (getvar 'undoctl))) (vla-endundomark doc) ) ) ;; Active Document - Lee Mac ;; Returns the VLA Active Document Object (defun LM:acdoc nil (eval (list 'defun 'LM:acdoc 'nil (vla-get-activedocument (vlax-get-acad-object)))) (LM:acdoc) ) (vl-load-com) (princ (strcat "\n:: Lengfield.lsp | by TranThiep | " (menucmd "m=$(edtime,0,yyyy)") ", based lisp midlen.lsp \\U+00A9 Lee Mac " "\n:: Type \"lengfield\" to Invoke ::" ) ) (princ) ;;----------------------------------------------------------------------;; ;; End of File ;; ;;----------------------------------------------------------------------;; Thân ái, chúc bạn thành công. TranThiep tel:0918841230
  17. 1 điểm
    ;;----------------------=={ Length at Midpoint }==----------------------;; ;; ;; ;; This program prompts the user for a selection of objects to be ;; ;; labelled and proceeds to generate an MText object located at ;; ;; the midpoint of each object displaying a Field Expression ;; ;; referencing the length of the object. ;; ;; ;; ;; The program is compatible for use with Arcs, Circles, Lines, ;; ;; LWPolylines, 2D & 3D Polylines, and under all UCS & View settings. ;; ;; ;; ;; The program will generate MText objects positioned directly over ;; ;; the midpoint of each object, and aligned with the object whilst ;; ;; preserving text readability. The MText will have a background mask ;; ;; enabled and will use the active Text Style and Text Height settings ;; ;; at the time of running the program. ;; ;;----------------------------------------------------------------------;; ;; Author: Lee Mac, Copyright © 2013 - www.lee-mac.com ;; ;;----------------------------------------------------------------------;; ;; Version 1.0 - 2013-11-12 ;; ;; ;; ;; - First release. ;; ;;----------------------------------------------------------------------;; ;; Version 1.1 - 2016-01-16 ;; ;; ;; ;; - Modified LM:objectid function to account for 64-bit AutoCAD 2008. ;; ;;----------------------------------------------------------------------;; (defun c:midlen ( / *error* ent fmt idx ins ocs par sel spc txt typ uxa ) (setq fmt "%lu6") ;; Field Formatting (setq pr "%pr0") ;; Precision (setq sca1 (getvar "DIMTXT")) (setq sca2 (getvar "DIMSCALE")) (setq sca3 (* sca1 sca2)) (setvar "textsize" sca3) (defun *error* ( msg ) (LM:endundo (LM:acdoc)) (if (not (wcmatch (strcase msg t) "*break,*cancel*,*exit*")) (princ (strcat "\nError: " msg)) ) (princ) ) (if (setq sel (ssget (list '(0 . "ARC,CIRCLE,LINE,*POLYLINE") '(-4 . "<NOT") '(-4 . "<AND") '(0 . "POLYLINE") '(-4 . "&") '(70 . 80) '(-4 . "AND>") '(-4 . "NOT>") (if (= 1 (getvar 'cvport)) (cons 410 (getvar 'ctab)) '(410 . "Model") ) ) ) ) (progn (setq spc (vlax-get-property (LM:acdoc) (if (= 1 (getvar 'cvport)) 'paperspace 'modelspace ) ) ) (setq ocs (trans '(0.0 0.0 1.0) 1 0 t) uxa (angle '(0.0 0.0) (trans (getvar 'ucsxdir) 0 ocs t)) ) (LM:startundo (LM:acdoc)) (repeat (setq idx (sslength sel)) (setq ent (ssname sel (setq idx (1- idx))) par (vlax-curve-getparamatdist ent (/ (vlax-curve-getdistatparam ent (vlax-curve-getendparam ent)) 2.0)) ins (vlax-curve-getpointatparam ent par) typ (cdr (assoc 0 (entget ent))) ) (setq txt (vlax-invoke spc 'addmtext ins 0.0 (strcat "L=" "%<\\AcObjProp Object(%<\\_ObjId " (LM:objectid (vlax-ename->vla-object ent)) ">%)." (cond ( (= "CIRCLE" typ) "Circumference") ( (= "ARC" typ) "ArcLength") ( "Length" ) ) " \\f \"" fmt pr "\">%" ) ) ) (vla-put-backgroundfill txt :vlax-true) (vla-put-attachmentpoint txt acattachmentpointmiddlecenter) (vla-put-insertionpoint txt (vlax-3D-point ins)) (vla-put-rotation txt (LM:readable (- (angle '(0.0 0.0 0.0) (trans (vlax-curve-getfirstderiv ent par) 0 ocs t)) uxa))) ) (LM:endundo (LM:acdoc)) ) ) (princ) ) ;; Readable - Lee Mac ;; Returns an angle corrected for text readability. (defun LM:readable ( a ) ( (lambda ( a ) (if (and (< (* pi 0.5) a) (<= a (* pi 1.5))) (LM:readable (+ a pi)) a ) ) (rem (+ a pi pi) (+ pi pi)) ) ) ;; ObjectID - Lee Mac ;; Returns a string containing the ObjectID of a supplied VLA-Object ;; Compatible with 32-bit & 64-bit systems (defun LM:objectid ( obj ) (eval (list 'defun 'LM:objectid '( obj ) (if (wcmatch (getenv "PROCESSOR_ARCHITECTURE") "*64*") (if (vlax-method-applicable-p (vla-get-utility (LM:acdoc)) 'getobjectidstring) (list 'vla-getobjectidstring (vla-get-utility (LM:acdoc)) 'obj ':vlax-false) '(LM:ename->objectid (vlax-vla-object->ename obj)) ) '(itoa (vla-get-objectid obj)) ) ) ) (LM:objectid obj) ) ;; Entity Name to ObjectID - Lee Mac ;; Returns the 32-bit or 64-bit ObjectID for a supplied entity name (defun LM:ename->objectid ( ent ) (LM:hex->decstr (setq ent (vl-string-right-trim ">" (vl-prin1-to-string ent)) ent (substr ent (+ (vl-string-position 58 ent) 3)) ) ) ) ;; Hex to Decimal String - Lee Mac ;; Returns the decimal representation of a supplied hexadecimal string (defun LM:hex->decstr ( hex / foo bar ) (defun foo ( lst rtn ) (if lst (foo (cdr lst) (bar (- (car lst) (if (< 57 (car lst)) 55 48)) rtn)) (apply 'strcat (mapcar 'itoa (reverse rtn))) ) ) (defun bar ( int lst ) (if lst (if (or (< 0 (setq int (+ (* 16 (car lst)) int))) (cdr lst)) (cons (rem int 10) (bar (/ int 10) (cdr lst))) ) (bar int '(0)) ) ) (foo (vl-string->list (strcase hex)) nil) ) ;; Start Undo - Lee Mac ;; Opens an Undo Group. (defun LM:startundo ( doc ) (LM:endundo doc) (vla-startundomark doc) ) ;; End Undo - Lee Mac ;; Closes an Undo Group. (defun LM:endundo ( doc ) (while (= 8 (logand 8 (getvar 'undoctl))) (vla-endundomark doc) ) ) ;; Active Document - Lee Mac ;; Returns the VLA Active Document Object (defun LM:acdoc nil (eval (list 'defun 'LM:acdoc 'nil (vla-get-activedocument (vlax-get-acad-object)))) (LM:acdoc) ) (vl-load-com) (princ (strcat "\n:: MidLen.lsp | Version 1.1 | \\U+00A9 Lee Mac " (menucmd "m=$(edtime,0,yyyy)") " www.lee-mac.com ::" "\n:: Type \"midlen\" to Invoke ::" ) ) (princ) ;;----------------------------------------------------------------------;; ;; End of File ;; ;;----------------------------------------------------------------------;; Mình giúp bạn đến đây nhé! test thử xem.
  18. 1 điểm
  19. 1 điểm
    đọc ko hiểu yêu cầu của chủ thớt là gì cả
  20. 1 điểm
    Chia sẻ là đáng quý! Nếu ai dùng Win10 có thể dùng tổ hợp phím "Windows key + Shift + S", khỏi cần tool.
  21. 1 điểm
  22. 1 điểm
    Nay cuối tuần, giới thiệu với những bạn có nhu cầu về in ấn trong CAD một tiện ích mới - công dụng cũ. Mặc dù hiện nay có khá nhiều công cụ in hàng loạt miễn phí và chất lượng nhưng bạn có thể tham khảo, đặc biệt là những bạn có nhu cầu cao/thường xuyên làm việc với CAD. Lưu ý Tool có phí [giá bình dân] và hiện mình đang chỉ build trên CAD 20-22 (nếu có yêu cầu sẽ phục vụ trên phiên bản thấp hơn) Bạn nào muốn sử dụng thử có thể liên hệ Zalo: 0886.083.080 /Email: Khanhdd101@gmail.com hoặc nhắn tin thông qua tài khoản này. Sau đó đăng nhập bằng cách điền tên User/Password để sử dụng. Sau đây là giới thiệu sơ lược về Tool cũng như các tính năng chính được cung cấp: I. Giao diện tinh gọn / thân thiện / dễ sử dụng: - Form được build tương đồng với hộp thoại Plot [Ctrl+P] trong CAD với những chức năng thường xuyên sử dụng trong quá trình In. - Có thể [Creat hoặc Import pagesetup] cho cùng bản vẽ để sử dụng các thiết lập này cho hộp thoại. - Mặc định thông số quan trọng được lưu cho các quá trình sau. II. Hỗ trợ đa dạng đối tượng khung in + kiểu in + kiểu xuất và có thể tùy biến/update theo yêu cầu 1. Đối tượng xác định khung in được chọn bao gồm: Block reference/ Block Dynamic [visibility] chứa hoặc không chứa Attribute. Xref Pline là Rectangular hoặc các đường Line chéo . Các Khung in được phép đặt vị trí và khoảng cách tùy ý nhưng cần được đặt theo hướng sort mong muốn. Trường hợp in nhiều Files/Folders chỉ cần tạo 1 template bản vẽ chứa khung in và load danh sách Files/Folders để in. 2. Kiểu in: Khi bản vẽ nằm ngang và dọc đồng thời, khuyến nghị đặt chế độ xoay Auto (để bản vẽ xuất fit khổ giấy). Cung cấp nhiều chế độ Sort khung phổ biến nhất và có thể kiểm tra thông số Sort trực tiếp thông qua nút View DWG cũng như PrintPreview (Quy ước Model là 1 layout) Cho phép in trên Layout hiện hành , nhiều layouts ,nhiều Files hoặc Folders (bằng cách chọn nút Custom) Trong quá trình thiết lập, các bản vẽ sẽ được xác định các thông số phù hợp để tối ưu tốc độ in. 3. Kiểu xuất. - Quy ước đặt tên: Nếu in trong phạm vi 1 File -> được tùy chỉnh tên file xuất Nếu in nhiều File (Tên được đặt với quy ước theo tên File + vị trí Layout) - Quá trình Merge Pdf (file xuất được merge trực tiếp mà không cần bước trung gian): Nếu Không merge: File xuất được đặt tên PrintFile_1.1.pdf -> PrintFile/Model/Bản vẽ 1. Chọn merge Layout để gộp tất cả bản vẽ trong 1 layout (File xuất: PrintFile_1.pdf -> PrintFile/Model Chọn merge File để gộp tất cả bản vẽ trong File xếp theo thứ tự từng Layout. PrintFile.pdf - Có thể Remove File sau merge nhưng cần đảm bảo tắt chế độ File tự động mở sau khi in (chọn PdfOption) III. Tốc độ cao [High perform] Video Gif minh họa in Layout hiện hành (cho cả Model hoặc Layout) - Trường hợp in nhiều Layouts/Files/Folders thực hiện tương tự. Xem video HD. - Trong trường hợp lỗi, nếu được vui lòng ghi video chi tiết và gửi lại mình. Các lỗi sẽ được cố gắng khắc phục sớm. Cuối cùng, Cảm ơn các bạn đã đọc! Thân ái & Quyết .. -))
  23. 1 điểm
    Mình có làm được lisp quản lý Sheet set manager có chức năng: - Chỉnh sửa, tăng số thứ tự của sheet number ( và sheet title ) rất nhanh, ko phải mất công mở từng sheet ra rồi gõ lại - Thay đổi đường dẫn file Dwg cho nhiều sheet cùng lúc ( dùng khi file cad bị đổi tên hoặc bị xóa ) https://youtu.be/Y6yJ3y9l8oY - Tạo mới hàng loạt các custom property sheet set và sheet, mặc định của cad là phải nhập từng cái - Chỉnh sửa value của các custom property sheet cho nhiều sheet cùng lúc (đang cập nhật...) - Tạo danh mục với tùy chỉnh vị trí bố trí sheet number và sheet title, mặc định của Cad là theo từng cột nên hơi đơn điệu (đang cập nhật...) * Thông tin cập nhật truy cập: Facebook BietVeCad hoặc bietvecad@gmail.com * Lisp in nhanh bản vẽ: https://www.youtube.com/playlist?list=PL05frYPpT5LLRHAE9W-osYor9Jbe7nOg- * Các tiện ích hay: https://www.youtube.com/channel/UC1hTw22snwp1H47Y1DzmoHA/playlists?view_as=subscriber **Video:
  24. 1 điểm
    Chao cac anh chi tren dien dan. xin nhờ các cao thủ viết dùm tôi cái lisp sau: Tôi có block ban vẽ sau(xem bản vẽ đính kèm), nhờ các bác viết hộ lisp để thống kê tên các bản vẽ(danh mục bản vẽ)lâu nay tôi toan làm thủ công mất thời gian quá. Xin chân thành cảm ơn. http://www.cadviet.com/upfiles/2/bang_danh_muc_bv.dwg
  25. 1 điểm
Bảng thành tích này được đặt thành Tp. Hồ Chí Minh /GMT +07:00


  • Newsletter

    Want to keep up to date with all our latest news and information?

    Sign Up
×