Android教程網
  1. 首頁
  2. Android 技術
  3. Android 手機
  4. Android 系統教程
  5. Android 游戲
 Android教程網 >> Android技術 >> 關於Android編程 >> android paint cap join 理解 圖示

android paint cap join 理解 圖示

編輯:關於Android編程

 

網上查了很多資料,對paint的裡面的枚舉類cap join講的不是很透徹。在這裡自己做一個比較深入的研究。

首先說Cap,比較形象的解釋就是 用來控制我們的畫筆在離開畫板時候留下的最後一點圖形,比如矩形,圓形等。不懂?那接著往下看。

先看看源碼:

 

    /**
     * The Cap specifies the treatment for the beginning and ending of
     * stroked lines and paths. The default is BUTT.
     */
    public enum Cap {
        /**
         * The stroke ends with the path, and does not project beyond it.
         */
        BUTT    (0),
        /**
         * The stroke projects out as a semicircle, with the center at the
         * end of the path.
         */
        ROUND   (1),
        /**
         * The stroke projects out as a square, with the center at the end
         * of the path.
         */
        SQUARE  (2);
        
        private Cap(int nativeInt) {
            this.nativeInt = nativeInt;
        }
        final int nativeInt;
    }

這是cap的源碼,從源碼我們看到BUTT是默認的設置,但是我們看不出BUTT、ROUND、SQUARE的區別。

 

下面看幾張圖片,我想足以理解Cap的用途。

 

BUTT \ ROUND \ SQUARE \

 

上表就是三種樣式的區別,豎線處即為畫筆結束處,圖中區別明顯,在此不再贅述。

 

接著我們看Join,Join的理解也很容易,他是用來控制畫的圖形接觸時候的樣式的。

看源碼:

 

    /**
     * The Join specifies the treatment where lines and curve segments
     * join on a stroked path. The default is MITER.
     */
    public enum Join {
        /**
         * The outer edges of a join meet at a sharp angle
         */
        MITER   (0),
        /**
         * The outer edges of a join meet in a circular arc.
         */
        ROUND   (1),
        /**
         * The outer edges of a join meet with a straight line
         */
        BEVEL   (2);
        
        private Join(int nativeInt) {
            this.nativeInt = nativeInt;
        }
        final int nativeInt;
    }

和Cap類似,看源碼也就看出了默認是MITER,其他具體形狀還是難以理解。接著看圖:

 

 

MITER \ ROUND \ BEVEL \

 

上表就是三種樣式的區別,區別明顯,在此不再贅述。

  1. 上一頁:
  2. 下一頁:
熱門文章
閱讀排行版
Copyright © Android教程網 All Rights Reserved