多重插入塊的制作分解(共8頁(yè))_第1頁(yè)
多重插入塊的制作分解(共8頁(yè))_第2頁(yè)
多重插入塊的制作分解(共8頁(yè))_第3頁(yè)
多重插入塊的制作分解(共8頁(yè))_第4頁(yè)
多重插入塊的制作分解(共8頁(yè))_第5頁(yè)
已閱讀5頁(yè),還剩3頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、精選優(yōu)質(zhì)文檔-傾情為你奉上:)制作·加密·解密cad文件·炸開多重插入塊:)所有人:劉世華怎么制作多重引用塊  AUTOCAD為了省內(nèi)存,省空間,提高效率,引進(jìn)了塊引用這一技術(shù)。你在當(dāng)前圖紙空間插入一個(gè)塊,它并不是把這個(gè)塊復(fù)制一遍,而是把這個(gè)塊的一些屬性描述引過(guò)來(lái),跟C+里面的引用極像。我現(xiàn)在討論的不是引用是怎么實(shí)現(xiàn)的,AUTOCAD最大的重頭就是塊,大家肯定是很了解的。    我想說(shuō)的是今天我和老韓研究的一個(gè)東西,AcDbMInsertBlock -多重插入塊。它其實(shí)就是對(duì)塊引用派生過(guò)來(lái)的一個(gè)新的東西,比普通塊引

2、用多了幾個(gè)屬性。具體是多了列數(shù),行數(shù),列距,行距。它可以用在什么地方呢?比如你現(xiàn)在要插入四個(gè)一樣的塊,就是位置不一樣,用普通的塊引用的話,要引四次。這樣還是很占資源的,效率不高。而如果用AcDbMInsertBlock ,你可以定義一個(gè)2列2行,多個(gè)插入點(diǎn)的AcDbMInsertBlock 。AUTOCAD內(nèi)部并沒(méi)有復(fù)制多份引用,我寫程序進(jìn)去把AcDbMInsertBlock 里面的每一個(gè)實(shí)體拷貝出來(lái)了,發(fā)現(xiàn)只有一份。當(dāng)然你不能炸開AcDbMInsertBlock ,如果可以炸開你就可以發(fā)現(xiàn)我說(shuō)的肯定是對(duì)的。    多重插入塊還有一個(gè)很有趣的是,它可以用來(lái)做加密,

3、當(dāng)然很容易破解掉的。大家都知道,無(wú)名塊是不能夠編輯的,所以可以用下面的步驟就可以生成一個(gè)只能看不能改的圖。    1)、把整個(gè)圖作成一個(gè)塊。    2)、把當(dāng)前圖紙空間的實(shí)體刪除了,用Minsert把剛才那個(gè)塊插入。    3)、把剛才那個(gè)塊的塊名改成*U。   到現(xiàn)在,這個(gè)圖不能分解,也不能編輯了,呵呵。當(dāng)然破解非常簡(jiǎn)單的,一個(gè)最直接的是把這個(gè)多重插入塊轉(zhuǎn)成單插入塊,然后炸開。還有一個(gè)就是把塊表名字改了,這樣就可以編輯塊了。當(dāng)然,你可以作得復(fù)雜一點(diǎn),進(jìn)入塊表記錄,把里面每個(gè)實(shí)體克隆一

4、遍。“多重插入引用”的制作:用minsert命令,提示塊名,在cad工作目錄下找一張圖,鍵入這個(gè)圖名,然后到提示行數(shù)或列數(shù)時(shí),輸入2以上,但行距或列距輸入0。這樣一個(gè)多重插入引用制作完成,無(wú)法用explode炸開了。多重塊不是重復(fù)定義塊,而是在矩形陣列中插入一個(gè)塊的多重引用。多重塊是由命令minsert插入一個(gè)塊而形成,其在正常情況下不能被分解。但若是用普通的方法構(gòu)建的多重塊,可以刪除掉,然后用insert再插入它原來(lái)引用的塊即可。不過(guò),若它原來(lái)引用的塊是匿名塊(即名稱前帶*的塊,只能用程序構(gòu)建),就不是那么簡(jiǎn)單的了。這是,你就需要程序(或者說(shuō)插件)來(lái)還原。vlx程序就是一個(gè)插件。也就是我上面

5、說(shuō)的編程實(shí)現(xiàn)。若不會(huì)編程,也沒(méi)有插件,下面的方法可以實(shí)現(xiàn)。怎么加密為多重塊1、 多重塊不是重復(fù)定義塊,而是在矩形陣列中插入一個(gè)塊的多個(gè)引用,多重塊是由命令minsert插入一個(gè)塊而形成,MINSERT插入的圖塊叫“多重插入塊”,有點(diǎn)象陣列一樣,把圖形一成成疊加在一起,疊加的間距可用0或1的間距,用0的話就是以0的間距疊加在一起。這種“多種插入塊”其在正常情況下不能被分解。但若是用普通的方法構(gòu)建的多重塊,你可以刪除掉,然后用insert再插入它原來(lái)引用的塊即可。不過(guò),若它原來(lái)引用的塊是匿名塊(即名稱前帶*的塊,只能用程序構(gòu)建),就不是那么簡(jiǎn)單分解了(這是,你就需要程序(或者說(shuō)插件)來(lái)還原。你的v

6、lx程序就是一個(gè)插件。也就是我上面說(shuō)的編程實(shí)現(xiàn)。若不會(huì)編程,也沒(méi)有插件,就可以用我說(shuō)的第一種辦法解決。至于為什么能這樣,你分別翻翻cad14和cad2002以上版本的幫助文件就知道了)。對(duì)稍有編程常識(shí)的用戶來(lái)說(shuō),ACAD命令不能解決,很自然就會(huì)去查這個(gè)對(duì)象的修改特性,可用命令MO或用ctrl+1打開修改特性,在修改特性窗口可以修改行列的疊加成數(shù)及行列間距等。也就是它的數(shù)據(jù)列表,原形畢露了尾巴露出來(lái)了,對(duì)付的辦法也就有了。編個(gè)小程序,對(duì)付它不費(fèi)吹灰之力。查看對(duì)象的特性,普通圖塊與多重插入塊差別在哪不是一目了然了嗎(1)命令行: minsert 輸入塊名或 ?: 輸入名稱(輸入你要插入的多重塊名稱

7、,就是圖紙的名稱,輸完回車,系統(tǒng)會(huì)自動(dòng)根據(jù)你輸入的圖紙名稱找到這張相同名稱的圖紙),(2)這時(shí)在桌面指定一個(gè)基點(diǎn)后。(3)命令行要求輸入XY軸的比例因子,在這直接以默認(rèn)的比例因子回車。 (4)這時(shí)要求你輸入旋轉(zhuǎn)角度,在桌面用光標(biāo)指定好后單擊鼠標(biāo),或者輸入角度。(5)回車后命令行要求輸入陣列疊加行數(shù)與列數(shù),在這里輸入的疊加成數(shù)越多,以后分解的時(shí)候分解的次數(shù)就越多次。 (6)回車后命令行要求輸入行間距和列間距在這里輸入0數(shù),行間距與列間距數(shù)字可以為0或1,如果輸入2的話就以間距2排列。(7)輸入 ? 表示列出圖形中當(dāng)前定義的塊,或輸入 表示顯示“選擇圖形文件”對(duì)話框。注意 在插入過(guò)程中,不能象使用

8、 INSERT 命令那樣在塊名前面使用星號(hào)來(lái)分解塊對(duì)象。指定插入點(diǎn)或 比例(S)/X/Y/Z/旋轉(zhuǎn)(R)/預(yù)覽比例(PS)/PX/PY/PZ/預(yù)覽旋轉(zhuǎn)(PR): 指定點(diǎn)或輸入選項(xiàng) ,在指定插入點(diǎn)位置之前,插入點(diǎn)處的選項(xiàng)將預(yù)置塊的比例和旋轉(zhuǎn)角。 當(dāng)使用 1 和 0 之外的比例因子和旋轉(zhuǎn)角來(lái)拖動(dòng)塊時(shí),預(yù)置非常有用。 如果輸入下列選項(xiàng)之一,通過(guò)為比例選項(xiàng)指定距離或?yàn)樾D(zhuǎn)角指定角度以響應(yīng)提示。不能分解使用 MINSERT 命令插入的塊。多重塊的分解,多個(gè)方法方法一:點(diǎn)擊這個(gè)多重引用,看它的名字,然后再用minsert命令,插入這個(gè)名字,只不過(guò)都按默認(rèn)的行數(shù)(1行)列數(shù)一直回車。這樣插入的這個(gè)塊就可以炸

9、開了。方法二:雙擊這個(gè)塊,出現(xiàn)參照編輯對(duì)話框,點(diǎn)確定,出現(xiàn)參照編輯工具條;用explode炸開;然后點(diǎn)擊參照編輯工具條從工作集刪除對(duì)象,選中所有圖形,回車;再點(diǎn)擊參照編輯工具條上的放棄對(duì)參照的修改。此時(shí)再用explode就可以炸開了。方法三:用天正軟件打開多重插入塊圖紙,用天正下的“圖紙保護(hù)”菜單,把多重塊再加密下(在加密中不要設(shè)密碼,直接回車確定),在使用天正圖紙保護(hù)命令功能,把不能編輯的多重插圖做一次保護(hù),加密好后(不用加密碼) ,可以使用天正分解對(duì)象功能+cad分解功能一步步的對(duì)圖形進(jìn)行了,直到把圖紙分解好后。具體介紹下步驟: (1)用天正打開加密的多重塊圖紙,選擇圖紙進(jìn)行分解,顯示為一

10、個(gè)多重塊不能分解:(2)用天正只帶的功能“圖紙保護(hù)”命令,把多重塊圖紙加密下,(記住不要設(shè)密碼,直接確定就好)方法四:1、在任何版本中打開圖件(只要能打的開就行) 2、選中圖,打開屬性對(duì)話框,將行和列均改為1。 3、另存為R14以下(包括R14)版本格式。 4、打開R14,打開剛才另存的圖,保存。(記住,這步尤其重要,必須是R14不能是cad2002及以上版本)好了,你再用任何版本的cad打開看看。另外一種方法就是編程,直接炸開即可。方法五: 1、打開原文件后,輸出為*.wmf文件, 2、新建空*.DWG文件,插入*.wmf文件, 3、輸入另外一個(gè)炸開命令:xplode回車 4、選圖層(TA)

11、,大功告成。可惜的是文字都炸開了,填充也炸了,圖層只有一個(gè),而且文件比較大。附件為wmf文件方法六:輸入“CYN-”,將多重插入塊轉(zhuǎn)換為普通快,然后可以一步一步的炸開編輯!方法七:把以下內(nèi)容保存為lsp文件(如exm.lsp),加載后運(yùn)行exm既可把“多重插入塊”轉(zhuǎn)換為“普通塊”,然后既可用“explode”分解。加載后運(yùn)行l(wèi)ockb可把“普通塊”轉(zhuǎn)換為“多重插入塊”;-;轉(zhuǎn)換“多重插入塊”為“普通塊”。(DEFUN C:exm ()(setvar "cmdecho" 0)(SETQ STM (car (ENTSEL "n點(diǎn)取多重塊")(while st

12、m(setq e (entget stm)(setq stlx (cdr (assoc 0 e)(if (= stlx "INSERT")(PROGN(setq r_zm70 (assoc 70 e)(setq c_zm71 (assoc 71 e)(setq r_dist_zm44 (assoc 44 e)(setq c_dist_zm45 (assoc 45 e)(setq e (subst (cons 44 0) r_dist_zm44 e)(setq e (subst (cons 45 0) c_dist_zm45 e)(setq e (subst (cons 70

13、 0) r_zm70 e)(setq e (subst (cons 71 0) c_zm71 e)(setq e (subst (list 100"AcDbBlockReference") (list 100"AcDbMInsertBlock") e)(entmake e)(entdel stm)(SETQ STM (car (ENTSEL "n點(diǎn)取下一多重塊")(setvar "cmdecho" 1)方法八:有兩個(gè)好工具,可以輕松炸開。一個(gè)是AutoCAD 快速加載 AutoLISP 文件:wjjm;另一個(gè)cad

14、加密插件,請(qǐng)大家使用。 具體方法: AutoCAD 快速加載 AutoLISP 文件wjjm的使用:用cad打開需要炸開的文件,將wjjm直接拖入cad窗口,命令行輸入wjmm,回車后按提示操作即可。操作步驟: 于CAD中,選擇:“工具”菜單“加載應(yīng)用程序”選項(xiàng)。 于對(duì)話框中選擇文件“wjjm”,進(jìn)行應(yīng)用程序加載。 于CAD命令行中,輸入“wjjm”命令,然后選擇需要保護(hù)的圖塊,隨便點(diǎn)擊即可取消保護(hù)。方法四:(1)、先在圖層管理器里將鎖定圖層打開;(2)、選中該“多重插入塊”,在其屬性里將行、列均改為“1"(3)、將下段保存為"exm.lsp"轉(zhuǎn)換“多重插入塊”為

15、“普通塊”。(DEFUN C:exm ()(setvar "cmdecho" 0)(SETQ STM (car (ENTSEL "n點(diǎn)取多重塊")(while stm(setq e (entget stm)(setq stlx (cdr (assoc 0 e)(if (= stlx "INSERT")(PROGN(setq r_zm70 (assoc 70 e)(setq c_zm71 (assoc 71 e)(setq r_dist_zm44 (assoc 44 e)(setq c_dist_zm45 (assoc 45 e)(se

16、tq e (subst (cons 44 0) r_dist_zm44 e)(setq e (subst (cons 45 0) c_dist_zm45 e)(setq e (subst (cons 70 0) r_zm70 e)(setq e (subst (cons 71 0) c_zm71 e)(setq e (subst (list 100 "AcDbBlockReference") (list 100 "AcDbMInsertBlock") e)(entmake e)(entdel stm)(SETQ STM (car (ENTSEL "n點(diǎn)取下一多重塊")(setvar "cmdecho" 1);-(4)、在打開了含有多重插入塊的圖形文件里加載“exm.lsp”,運(yùn)行“exm”根據(jù)提示選中多重插入塊;(5)、運(yùn)行“explode”就可以將 多重插入塊分解,修改了。(6)、你試試用 (audit) 這個(gè)指令先用 “audit” 回車Command: audit 之后 “Y”回車Fix any errors detected? Yes/No <N>: Y無(wú)名塊便會(huì)自動(dòng)改名Invalid block n

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論