最近的協作平台活動

首頁‎ > ‎

11_顏色填充

   ◎顏色填充

【填滿】
  在AutoCAD 中,下指令“hatch”。可使封閉的區域,填滿顏色。


  用“hatch”指令填滿的type,用“solid”即可。
  重要的是‥這塊區域,必須是個「封閉區域」,要不然,會有嚴重的後果,因為‥用solid所佔的memory很大,一旦這區域,不是封閉區域,它會填到外面去,到時候,整台電腦,可能會當掉,故此區,你可用“pedit”,來將它連接在一起。


      *      *      *      *


 問‥在AUTOCAD當中,邊界圖案填充Bhatch,與圖案填充hatch的區別和聯繫是什麼?


 答‥都是填充。
  Bhatch,是直接根據圖形選擇,比較方便,快捷鍵是H。
  hatch,是要輸入命令。


參考資料:
  AutoCAD中,填充陰影線圖案(PAT檔),是一項十分有用的功能,在各種圖形中,都可能用到。我們在開發工程地質CAD軟體時,經常要在圖面上的指定區域內,填充岩性花紋圖案,而且填充區域不規則。在AutoCAD低版本中,填充花紋命令,僅有一條hatch,使用hatch時,需選擇圍成閉合區域的有關實體,若實體選擇不全,則會使填充出現混亂,特別是當填充區域,由若干線、弧、園等,實體交叉組合而成時,就要沿閉合區域的各點,繪製一條PLINE線,然後,以這條線,作為填充邊界線,在填充完成以後,還要將這條線刪除,比較麻煩。
  AutoCAD R12版新,增加了Bhatch命令,來補充和加強hatch命令功能。Bhatch命令,以視窗對話模式執行,它將自動以多義線,來定義邊界,然後,忽略全部或部分不是邊界的區域,完成填充後,自行刪除多義線,還可以使邊界內的圖形和文字,避開填充圖案。
  簡言之,填充時,只需要用滑鼠,點取閉合區域內一點,就可完成填充。
  為了更方便地,使用hatch和Bhatch這兩個命令,在R12版中,還新增加了一條命令BPOLY。
  使用BPOLY,可迅速生成一封閉曲線的邊界,即通過點取封閉區域內,任意一點,形成本區域的邊界線,根據返回的邊界線,可使用hatch填充花紋圖案,也可使用AREA來計算封閉區域的面積和周長。
  有關這兩條命令的操作,可參閱AutoCAD R12的使用說明書,通過簡單的練習就可以掌握。
  本文想就如何在AUTO LSP中,調用這兩個命令,進行編程的問題做一簡單介紹。
  Bhatch和BPOLY命令,不同於一般的AutoCAD命令,它們是用ADS應用程式開發的,如果想在圖形編輯狀態下,或在AUTO LISP中,使用這兩個命令,就要在AutoCAD初始化時,載入名為ACADAPP的ADS程式,方法是在當前搜索路徑上,是否有ACAD.ADS檔,這是一個純文本的ASCII碼檔,在這個檔中,如有一行為ACADAPP,那麼‥在進入ACAD圖形時自動載入ACADAPP,在AutoCAD的Command:提示符下,調用AUTO LISP函數(ADS),將得到當前已載入的全部ADS應用程式的資訊。
  如已載入ACADAPP,在“Command:”,就可以使用BPOLY和Bhatch了。


▃▃▃▃▃▃▃▃▃▃▃▃▃▃▃▃▃▃▃▃▃▃▃▃▃▃▃▃▃▃▃▃▃▃▃▃



  問‥在著色(harch,填滿)時,色塊會覆蓋其他圖層,所繪製的物件,怎麼辦?



  阿文想方設法,發現‥若將AutoCAD,所繪製的物件,複製~貼到「Microsoft 小畫家」裡,再利用小畫家的「填色」功能,倒是挺方便的——
以後,可利用這招,轉成其它圖檔;或從小畫家裡擷圖,直接貼到Word裡,去做文字編輯,完成後,再轉成PDF檔,也就能輕鬆搞定一份摺圖啦!





  ▲用小畫家來著色,真的是好簡單、好輕鬆啊!
   AutoCAD,不知何日,才能改善其功能?
   讓人方便使用,看了就會!


  後來,又發現‥在AutoCAD裡,只要把被色塊覆蓋的所有物件(連同色塊)標記(選取),再移到其它地方,或是將它「剪下」,再「貼上」,就會使被覆蓋的物件,全都顯現出來嘍!





  好啦!問題雖然得繞個圈子,才能解決,但總算是還能完成。
  繼續加油吧!

                    2009.01.24.六 15:34:36



▃▃▃▃▃▃▃▃▃▃▃▃▃▃▃▃▃▃▃▃▃▃▃▃▃▃▃▃▃▃▃▃▃▃▃▃


   ◎用Bhatch指令著色

  Bhatch,是直接根據圖形選擇,比較方便,快捷鍵是h。

一、在指令列上,鍵入“h”,會迸出【邊界剖面線與填實】的選項對話盒。



二、滑鼠點擊【樣本】,選取所欲填充的樣式。
  本範例選取“SOLID”(填實)。



三、選完後,【樣本】會先依圖層所設定的顏色而顯示,也可再選其它顏色。
  接著,本範例用【點選內部點】。

  用【點選內部點】著色,其它圖層所繪製的物件,就不會被圖塊覆蓋;
  若用【選取物件】,須選取整個物件,則色塊就會覆蓋其它圖層所繪的物件。



四、點選欲著色處,可一次點選多處,選完後,按下【Enter】。



五、迸出選項對話盒後,按下【確定】,那麼‥所欲著色處,也就完成嘍!
  也可以按【預覽】看看,若不滿意,則按【Esc】取消;
  若滿意,再按【Enter】即可。



六、重複以上的步驟,即可完成著色。



                 編製:2009.01.24.六 15:34:36



      *      *      *      *
  問題還是沒能澈底解決!
  阿文費心地,著色好了,後來,關閉檔案後,重新開啟,結果‥
全部的色塊,還是覆蓋了其它圖層,所有的物件……
  看了真是欲哭無淚呀!
  到底是什麼原因呢? 是版本的問題嗎? (阿文用的是AutoCAD  2004)
  不知AutoCAD  2008的,會不會有這種問題?
  到底該怎麼填充顏色,色塊才不會覆蓋其它圖層的物件呢?
  有哪個高手,能夠賜教一下呢? 感恩啊!


                  阿文
                    2009.02.14.六 23:36:05





      *      *      *      *


  感謝一位路過的網友,「不吝指教」——
  這「色塊會覆蓋其它圖層物件的問題」,已有解決的法子啦!
  原來‥有個“DrawOrder”(縮寫DR)指令,可以更改物件順序——

指令:draworder
選取物件:
輸入物件順序選項 [物件上方(A)/物件下方(U)/最上方(F)/最下方(B)] <最下方>:

  選擇“B”,按下【ENTER】,也就好啦!

  實驗結果,果然可行也!
  不過‥每個色塊,都得設一次,有夠費時的。
  後來想到‥啊就先關閉其它圖層,只剩色塊的圖層,再將色塊全部選取,如此,只要設一次,也就行啦!
  只是‥到【配置】時,竟發現‥色塊還是覆蓋其它圖層,所以‥得再設定一次。
  若先在【配置】裡設定,回到【模型】時,色塊同樣是覆蓋其它圖層的,因此‥【模型、配置】,兩邊都要設定。
  雖然手續多一道,但能解決這個問題,也就能節省好多工時,甚至可以接接在AutoCAD裡,加上文字說明呢!
  真感謝那位路過的網友!
                  阿文
                    2009.04.12.日 01:58:22



      *      *      *      *



  呵呵!今天發現‥其實不用那麼麻煩,設兩次“draworder”啦!

  只要在【模型】裡,設一次就可以啦!若在【配置】中,看到色塊還是覆蓋其它圖層,那就按一下【檢視】→【全部重生】,也就能看到啦! 
                  阿文
                    2009.04.13.一 22:56:30

Comments