Lệnh MH (MergeHatch)
Lệnh có tác dụng Gộp 2 hay nhiều Hatch thành 1.
1 Thêm class MH_MergeHatch_V2.lsp
Lưu mã sau dưới dạng tệp tin MH_MergeHatch_V2.lsp
Code:
;; © Juan Villarreal 11.20.2011 ;; ;; massoc (Jaysen Long) ;; ;; Minor Modification by Jvillarreal ;; ;; Extracts info from list by key ;; ;; Found @ http://www.theswamp.org/index.php?topic=40149.0 (defun massoc (key alist / x nlist) (foreach x alist (if (eq key (car x)) (setq nlist (cons x nlist)) ) ) (reverse nlist) );defun (defun c:MergeHatch ( / hentinfo ss i ent ent# seedpt# entinfo entinfo2 ent# seedpt# seedpts MergedHatchList) (while (/= (cdr (assoc 0 hentinfo)) "HATCH") (setq hentinfo (car (entsel "\nSelect Hatch Pattern to use:"))) (If hentinfo (setq hentinfo (entget hentinfo)) (princ "\nMissed. Try again."))) (while (not ss) (princ "\nSelect hatch entities to merge:")(setq ss (ssget '((0 . "HATCH"))))) (setq MergedHatchList (list (cons 0 "HATCH") (cons 100 "AcDbEntity") (assoc 8 hentinfo) (cons 100 "AcDbHatch") (assoc 10 hentinfo) (assoc 210 hentinfo) (assoc 2 hentinfo) (assoc 70 hentinfo) (assoc 71 hentinfo) (cons 91 (sslength ss)) ) i -1 seedpt# 0 ent# 0) (repeat (sslength ss) (setq n -1 entinfo (entget (ssname ss (setq i (1+ i)))) entinfo2 (member (assoc 92 entinfo) entinfo) entinfo2 (reverse (cdr (member (assoc 75 entinfo2)(reverse entinfo2)))) ent# (+ ent# (cdr (assoc 91 entinfo))) seedpt# (+ seedpt# (cdr (assoc 98 entinfo))) seedpts (append seedpts (vl-remove-if '(lambda (pair)(/= (car pair) 10))(cdr (member (assoc 98 entinfo) entinfo)))) MergedHatchList (append MergedHatchList entinfo2) ) (entdel (ssname ss i)) ) (setq MergedHatchList (subst (cons 91 ent#)(assoc 91 MergedHatchList) MergedHatchList) MergedHatchList (append MergedHatchList (append (reverse (cdr (member (assoc 98 hentinfo)(reverse (member (assoc 75 hentinfo) hentinfo))))) (cons (cons 98 seedpt#) seedpts)))) (if (= (cdr (assoc 70 hentinfo)) 1)(setq MergedHatchList (append MergedHatchList (member (assoc 450 hentinfo) hentinfo)))) (entmake MergedHatchList) (setq ent (entlast)) (if (= (cdr (assoc 71 hentinfo)) 1) (mapcar '(lambda (x / entlist) (setq entlist (entget (cdr x))) (entmod (subst (cons 330 ent) (assoc 330 entlist) entlist)) ) (massoc 330 MergedHatchList) ) ) ) (defun c:MH () (c:MergeHatch))
Link tải MH (MediaFire)
Hạn chế
Nếu 2 Hatch bị trùng đè, kết quả sinh ra 1 lỗ thủng
Giải pháp - HME trả phí
AJS phát triển phiên bản trả phí, cho phép tạo hatch gộp từ các đối tượng Hatch phức tạp, trùng đè.
Báo giá ứng dụng HME
Thông tin Ứng dụng:📢 THÔNG BÁO GIÁ ỨNG DỤNG HME
💰 Giá: 150K / 1 máy
🖥 Bản quyền cố định theo phần cứng:
✅ CPU, Mainboard, Ổ cứng
⚠ Lưu ý quan trọng:
🔄 Thay phần cứng 👉 Mất bản quyền 🚫
🔄 Cài lại Windows 👉 Chạy lại Setup.exe 🔄
💻 Cấu hình tối thiểu:
🔹 AutoCAD 2018 trở lên
🔹 Windows 8 trở lên
Mọi thông tin chi tiết xin vui lòng liên hệ fanpage AutoLisp thật là đơn giản.
Cảm ơn các bạn đã theo dõi!
Thông tin Ứng dụng:
📢 THÔNG BÁO GIÁ ỨNG DỤNG HME 💰 Giá: 150K / 1 máy 🖥 Bản quyền cố định theo phần cứng: ✅ CPU, Mainboard, Ổ cứng ⚠ Lưu ý quan trọng: 🔄 Thay phần cứng 👉 Mất bản quyền 🚫 🔄 Cài lại Windows 👉 Chạy lại Setup.exe 🔄 💻 Cấu hình tối thiểu: 🔹 AutoCAD 2018 trở lên 🔹 Windows 8 trở lên
Mọi thông tin chi tiết xin vui lòng liên hệ fanpage AutoLisp thật là đơn giản.
Cảm ơn các bạn đã theo dõi!
Link tải HME (MediaFire)
---------------------------------------------------------------------------------------------
Mọi thông tin xin liên hệ Fanpage AutoLISP Thật là đơn giản!
Cảm ơn bạn đã theo dõi!

Không có nhận xét nào:
Đăng nhận xét