[分享]鎖圖
+2
ya198515
LUCAS_LAI
6 posters
AutoCAD顧問 :: 技術(發言等級:一般會員) :: :: 進階討論
第1頁(共1頁)
[分享]鎖圖
;;鎖圖
;;每5個圖元建立1個多重匿名圖塊
;;一半MINSERT轉到"Defpoints"層===>不能印圖
;;以上跑2次,最後再建成多重匿名圖塊
;;但對會編程的人,一點用都沒有,所以先炸開是基本功
;;保護智慧財產
https://www.autocad-tw.com/t131-topic?highlight=%E4%BF%9D%E8%AD%B7
;;低版本利用WMFOUT,WMFIN炸開圖檔
https://www.autocad-tw.com/t24947-topic
;;BY LUCAS_LAI
QMBLK1.LSP下載
[回覆可見]
;;每5個圖元建立1個多重匿名圖塊
;;一半MINSERT轉到"Defpoints"層===>不能印圖
;;以上跑2次,最後再建成多重匿名圖塊
;;但對會編程的人,一點用都沒有,所以先炸開是基本功
;;保護智慧財產
https://www.autocad-tw.com/t131-topic?highlight=%E4%BF%9D%E8%AD%B7
;;低版本利用WMFOUT,WMFIN炸開圖檔
https://www.autocad-tw.com/t24947-topic
;;BY LUCAS_LAI
- 代碼:
(vl-load-com)
(defun C:QMBLK1 (/ A AA AAA AAL BLKS
HOLDCLAYER HOLDECHO ;HOLDDIA HOLDREQ
N OBJ QQ STIME ETIME
)
(defun DO_IT ()
;;慢速(因為使用了COMMAND建BLOCK),用VLISP建BLOCK同COMMAND,ENTMAKE建BLOCK(快4倍)
(command "_.BLOCK" A "NON" '(0 0 0) AAA "")
(setq OBJ (vla-item BLKS A))
(vla-put-name OBJ "*U")
(entmake (list '(0 . "INSERT")
'(100 . "AcDbMInsertBlock")
(cons 2 (vla-get-name OBJ))
(cons 10 (trans '(0 0 0) 1 0))
'(70 . 1)
'(71 . 1)
)
)
)
(setq HOLDECHO (getvar "cmdecho"))
(setvar "cmdecho" 0)
(command "_.undo" "_group")
(setq STIME (getvar "date"))
(setvar 'QAFLAGS 0)
;;(setq HOLDDIA (getvar "ATTDIA"))
;;(setq HOLDREQ (getvar "ATTREQ"))
(setq HOLDCLAYER (getvar "CLAYER"))
(command "_.layer" "m" "Defpoints" "c" "7" "" "lt" "CONTINUOUS" "" "")
(setvar "CLAYER" "0")
(setq BLKS (vla-get-blocks
(vla-get-activedocument (vlax-get-acad-object))
)
)
;;(setvar "ATTDIA" 0)
;;(setvar "ATTREQ" 0)
(setq A (rtos (* (getvar "CDATE") 1E8)))
;;可多跑幾次,但太多次出圖就看不到東西
;;1次沒法達到不能印圖
;;至少2次才能達到不能印圖
(repeat 2
(if (setq AA (ssget "_X"
(list '(0 . "~VIEWPORT")
'(0 . "~ATTDEF")
(cons 410 (getvar "CTAB"))
)
)
)
(progn
(setq AAL (sslength AA))
(setq N 0)
(while (> AAL N)
(setq AAA (ssadd))
(repeat 5
(if (ssname AA N)
(ssadd (ssname AA N) AAA)
)
(setq N (1+ N))
)
(DO_IT)
(if (= (rem N 2) 1)
(progn
(setq QQ (entget (entlast)))
(setq QQ (subst '(8 . "Defpoints") (assoc 8 QQ) QQ))
(entmod QQ)
)
)
)
)
)
)
(setq AAA (ssget "_X"
(list '(0 . "~VIEWPORT")
'(0 . "~ATTDEF")
(cons 410 (getvar "CTAB"))
)
)
)
(DO_IT)
;;(setvar "ATTDIA" HOLDDIA)
;;(setvar "ATTREQ" HOLDREQ)
(setq ETIME (getvar "date"))
(prompt
(strcat
"\n程式共耗用時間: "
(rtos (* 86400.0 (- (- ETIME STIME) (fix (- ETIME STIME))))
2
3
)
"秒"
)
)
(setvar "CLAYER" HOLDCLAYER)
(vlax-release-object BLKS)
(command "_.undo" "_end")
(setvar "cmdecho" HOLDECHO)
(princ)
)
(princ
"\nType QMBLK1 COMMAND建圖塊鎖圖,BY LUCAS_LAI"
)
(princ)
QMBLK1.LSP下載
[回覆可見]
Tiger&蘋果爸 likes this post
回復: [分享]鎖圖
感謝分享,希望可以解決問題保護智慧財產權
ya198515- 一般會員
- 文章總數 : 30
年齡 : 39
來自 : 嘉義縣
職業 : 太陽光電
愛好 : 設計繪畫
個性 : 勤勞務實
使用年資 : 2年
使用版本 : 2018
經驗值 : 1812
威望值 : 6
注冊日期 : 2020-04-21
回復: [分享]鎖圖
所以還是有可能會被破解或炸開…
看來最好還是只提供pdf檔!!
看來最好還是只提供pdf檔!!
ianlcc- 一般會員
- 文章總數 : 160
年齡 : 49
來自 : 高雄市
職業 : 營建業
愛好 : 拍照、喝咖啡、看電演、上網
個性 : 平靜
使用年資 : 5
使用版本 : 2012
經驗值 : 5385
威望值 : 69
注冊日期 : 2012-06-24
回復: [分享]鎖圖
感謝大大無私地分享...感恩
rickyyang- 專屬會員
- 文章總數 : 196
年齡 : 45
來自 : 台北
職業 : 營建暨室內裝修工程管理
愛好 : 喜愛黃金獵犬、哈士奇
個性 : 誠信、正義、穩健
使用年資 : 17
使用版本 : AutoCAD 2023
經驗值 : 4590
威望值 : 36
注冊日期 : 2014-11-11
回復: [分享]鎖圖
感謝分享
sachindkini- 一般會員
- 文章總數 : 45
年齡 : 47
來自 : mumbai
職業 : architect
愛好 : photography
個性 : cool
使用年資 : senior member
使用版本 : autocad2018
經驗值 : 4684
威望值 : 6
注冊日期 : 2012-08-20
回復: [分享]鎖圖
感謝分享
Cher- 專屬會員
- 文章總數 : 111
年齡 : 47
來自 : 新竹
職業 : 建築工程
愛好 : 畫畫
個性 : 沈默寡言
使用年資 : 新手初學
使用版本 : Auto CAD 2022
經驗值 : 1322
威望值 : 24
注冊日期 : 2022-11-04
AutoCAD顧問 :: 技術(發言等級:一般會員) :: :: 進階討論
第1頁(共1頁)
這個論壇的權限:
您 無法 在這個版面回復文章