專利名稱:毛筆電子畫刷設置裝置和毛筆電子畫刷的制作方法
技術領域:
本發明涉及計算機圖形處理技術,尤其涉及一種毛筆電子畫刷設置裝置、描繪類似毛筆筆跡的毛筆電子畫刷、描繪毛筆電子線條的方法及裝置。
背景技術:
計算機圖形學(Computer Graphics,簡稱CG)是一種使用數學算法將二維或三維圖形轉化為計算機顯示器的柵格形式的科學,其目的是利用計算機產生令人賞心悅目的真實感圖形。光柵圖形學是計算機圖形學的一個分支,其是用光柵顯示器來顯示圖形。光柵顯示器將圖形光柵化,并對光柵化的圖形進行處理。光柵顯示器可以看作是一個像素矩陣,在 光柵顯示器上顯示的任何一個圖形,實際上都是一些具有一種或多種顏色和灰度像素的集合。正由于這個原因,在光柵顯示器上繪制的非水平且非垂直的直線或多邊形的邊界,或多或少都會呈鋸齒狀,這種用光柵顯示器上的離散量(像素)表示連續量所引起的失真叫做走樣(aliasing)。用于減少或者消除這種效果的技術叫反走樣(antialiasing)。常見的反走樣手段有兩種方式,一是提高分辨率,二是區域采樣。其中提高分辨率的方式,硬件成本太高,并且只能減輕走樣效果,不能消除走樣,所以通常采用區域采樣的方式。在區域采樣中,目前反走樣畫線的方法有很多種,例如,可以采用圓形畫刷來畫一定寬度的線條,但是用這種畫刷繪制的線條在不同的方向上線條寬度都一致,比較單調,不符合用實際的筆所畫出的線條的軌跡,例如,不能真實地反映出毛筆所寫出的字的軌跡。現有的模擬毛筆筆跡的系統一般地都是從建立毛筆受力模型,根據筆在屏上寫字時的力量大小及方向來模擬毛筆與紙的接觸形狀,進而來模擬毛筆效果。這種系統因為要檢測到筆的壓力大小及方向,所以只能應用于帶有壓力感應并且能夠感知筆尖的方向的觸摸屏上。并且這種數學模型比較復雜,運算量比較大。
發明內容
本發明的發明目的是提供一種毛筆電子畫刷設置裝置、描繪電子線條的毛筆電子畫刷、毛筆電子線條描繪方法及裝置,其能繪制出類似毛筆筆跡的電子線條。根據本發明的第一方面,提供一種描繪電子線條的毛筆電子畫刷的設置裝置,其特征在于,包括形狀和中心位置設定模塊,用于設定毛筆電子畫刷的中心位置,并設定毛筆筆頭形狀的多邊形作為毛筆電子畫刷;寬度設定模塊,用于根據用戶的需要設定所述多邊形的寬度;寬度調節模塊,用于隨著毛筆電子畫刷移動的速度的變化而變化調節所述多邊形的寬度,該毛筆電子畫刷移動得越快,所述毛筆電子畫刷對應的多邊形越小。本發明的上述毛筆電子畫刷的設置裝置還可以包括顏色分布確定模塊。該顏色分布確定模塊進一步包括權值確定子模塊,當以水平方向上包含毛筆電子畫刷的最小正方形外接框中的每個像素點為起點的任一條射線與所述多邊形的各邊交點的總個數為偶數個時,該像素點的權值為O ;當為奇數個時,像素點的權值根據該像素點到毛筆電子畫刷的多邊形的各條邊的距離的最小值與一個常數的比值確定,所述常數根據經驗確定,當所述比值大于I時,像素點的權值為1,當所述比值小于I時,像素點的權值等于該常數;顏色分布子模塊,其通過如下公式計算出毛筆電子畫刷的顏色分布并顯示Vs = WsXVcu+(1-Ws) XVbg其中,Vs代表在水平方向上包含毛筆電子畫刷的最小正方形外接框中的任意一像素點S的R、G、B顏色分量,Vcu代表當前毛筆電子畫刷的R、G、B顏色分量,Vbg代表背景色的R、G、B顏色分量,Ws是像素點S的權值。在本發明的上述毛筆電子畫刷的設置裝置中,當所述毛筆電子畫刷從當前位置移動到下一個位置時,所述寬度調節模塊比較當前毛筆電子畫刷的寬度WCur和毛筆電子畫刷的目標寬度wDst并調節毛筆電子畫刷的寬度wCur 當 wCur > wDst+wStep 時,wCur = wCur-wStep ;當 wCur < wDst-wStep 時,wCur = wCur+wStep ;當wDst-wStep ^ wCur ^ wDst+wStep時,保持當前毛筆電子畫刷的寬度wCur不變,其中毛筆電子畫刷的目標寬度wDst由當前的采樣距離D所確定,該采樣距離D是指系統根據輸入設備移動以一定的時間間隔進行采樣而得到的當前采樣點與上一采樣點之間的距離,wStep表示毛筆電子畫刷寬度變化的步長,該步長是根據經驗確定的固定值。在本發明的上述毛筆電子畫刷的設置裝置中,所述毛筆電子畫刷的目標寬度wDst與所述采樣距離D之間的關系為當采樣距離D小于等于某一預設值時,wDst = wPen,其中wPen表示整個描繪過程中毛筆電子畫刷的最大寬度且為一固定值;當采樣距離D大于某一預設值時,wDst = k/D, k是根據經驗取值;當wDst < wMin時,wDst = wMin,其中wMin表示整個描繪過程中毛筆電子畫刷的最小寬度,為固定值。本發明的上述毛筆電子畫刷的設置裝置的顏色分布確定模塊還可以包括權值存儲子模塊,其將求得的毛筆電子畫刷的最小正方形外接框中的各像素點的權值存儲成為一個由數組構成的模板,所述數組中的各個元素對應于外接框中各個像素點的權值。在本發明的上述毛筆電子畫刷的設置裝置中,當毛筆電子畫刷移動,所述像素點權值確定模塊確定當前位置的毛筆電子畫刷的水平方向的最小正方形外接框,確定當前外接框中的各像素點的權值,并確定當前位置的毛筆電子畫刷的外接框與當前位置的前一位置的外接框的公共像素點和不屬于當前位置的前一位置的外接框的像素點,將在當前外接框中的像素點的權值和在當前位置的前一位置的外接框中的像素點的權值之和作為公共像素點的權值;所述權值存儲子模塊存儲所述像素點權值確定模塊求得的不屬于上一外接框的各像素點的權值、以及公共像素點的權值;所述顏色分布子模塊根據像素點權值存儲子模塊中存儲的不屬于當前外接框的各像素點的權值,并計算出各像素點的紅色分量、藍色分量和綠色分量,然后顯示。根據本發明的第二方面,提供一種毛筆電子畫刷,其由本發明的所述毛筆電子畫刷設置裝置設置而成。根據本發明的第三方面,提供一種描繪毛筆電子線條的裝置,其包括點選取模塊,采集用戶的輸入筆跡點中的四個點作為三次B樣條曲線所需的控制點;線條描繪模塊,利用三次B樣條曲線方程,基于點選取模塊選取的所述控制點確定并用反走樣線段連接待描繪電子線條上的數個點;采用所述毛筆電子畫刷描繪所述線條描繪模塊得到的反走樣線段。根據本發明的第四方面,提供一種描繪毛筆電子線條的方法,其包括點選取步驟,采集用戶的輸入筆跡點中的四個點作為三次B樣條曲線所需的四個控制點,線條描繪步驟,基于所述四個控制點,利用三次B樣條曲線方程,確定并用反走樣線段連接待描繪電子線條上的數個點,其中所述反走樣線段采用本發明的毛筆電子畫刷描繪。采用本發明的毛筆電子畫刷設置裝置、描繪電子線條的毛筆電子畫刷、毛筆電子線條描繪方法及裝置,其繪制的筆跡線條粗細有致,類似真實的毛筆筆跡;而且毛筆電子畫刷的顏色權值從中間向外層逐漸減小,使繪制的筆跡線條更美觀。
圖1示出了本發明的電子線條描繪方法的流程圖;
圖2示出了本發明的毛筆電子畫刷的示意圖;圖3示出了本發明的確定毛筆電子畫刷的像素點權值的方法流程圖;圖4示出了利用本發明的梯度權值方法給出的毛筆電子畫刷的顏色分布圖放大了 8倍的圖示;圖5示出了用本發明的方法寫出的毛筆字的樣子的圖示;圖6示出了確定本發明的毛筆電子畫刷的顏色分布的方法流程圖;圖7示出了根據本發明描繪毛筆電子線條的方法的一實施例的流程圖;圖8示出了根據鼠標移動得到的采樣點與所畫曲線之間的關系圖;圖9示出了本發明的毛筆電子畫刷設置裝置的結構方框圖;圖10示出了本發明的毛筆電子畫刷設置裝置中的顏色分布模塊的結構方框圖。
具體實施例方式下面通過具體實施方式
進一步詳細描述本發明,但本發明并不僅僅限于此。通常在計算機、手持移動終端、觸摸板等上用鼠標或者手指、或觸控筆等輸入裝置進行手寫輸入時,所述輸入裝置移動的筆跡在顯示裝置上顯示出的筆跡曲線,都是通過將無數個點用短線段依次連接而成,所取的點越密集,所描繪的曲線越精確、越平滑,越接近理想曲線。本發明的描繪毛筆電子線條的方法,首先求出要繪制的曲線的曲線方程,然后用短線段依次連接根據求得的曲線方程所確定的曲線上的點,從而得到所要繪制的曲線。其中要繪制的曲線的曲線方程采用B樣條方法求得。B樣條方法是描繪自由曲線和曲面的較為常用的方法。在B樣條方法中,用來描繪曲線的B樣條曲線方程通常是一個高階多項式。在使用時,為了減少計算量,希望曲線次數越低越好,但二次曲線是一條拋物線,不能反應曲線的拐點,所以一般使用三次B樣條曲線。三次B樣條曲線具有四個控制點Pi, Pi+1,Pi+2,Pi+3,其中i彡0,根據Pi, Pi+1,Pi+2,Pi+3各點的坐標、可以求出由該四個控制點所確定的三次B樣條曲線方程。公式(I)給出了通過三次B樣條曲線方程求B樣條曲線上的點的X坐標的表達式,其中x0、xl、x2、x3分別是如圖8所示的四個控制點Ptl, P1, P2, P3的橫坐標。關于B樣條曲線上的點的y坐標的表達式與上述關于X坐標的表達式公式(I)類似,只需將其中的x0、xl、x2、x3分別換成如圖8所示的四個控制點Ptl, P1, P2, P3的縱坐標y0、yl、y2、y3即可。公式⑴中的參數u的取值范圍為O彡u彡1,其具體取值可以根據情況設定,u的取值越小,則通過公式(I)所求出的B樣條曲線上的點越靠近起點,u的取值越多,則表明在曲線段上所選取的點越密集。
權利要求
1.一種描繪電子線條的毛筆電子畫刷的設置裝置,其特征在于,包括 形狀和中心位置設定模塊,用于設定毛筆電子畫刷的中心位置,并設定毛筆筆頭形狀的多邊形作為毛筆電子畫刷; 寬度設定模塊,用于根據用戶的需要設定所述多邊形的寬度; 寬度調節模塊,用于隨著毛筆電子畫刷移動的速度的變化而變化調節所述多邊形的寬度,該毛筆電子畫刷移動得越快,所述毛筆電子畫刷對應的多邊形越小。
2.根據權利要求1所述的毛筆電子畫刷設置裝置,其特征在于,還包括 顏色分布確定模塊,所述顏色分布確定模塊進一步包括 權值確定子模塊,當以水平方向上包含毛筆電子畫刷的最小正方形外接框中的每個像素點為起點的任一條射線與所述多邊形的各邊交點的總個數為偶數個時,該像素點的權值為O ;當為奇數個時,像素點的權值根據該像素點到毛筆電子畫刷的多邊形的各條邊的距離的最小值與一個常數的比值確定,所述常數根據經驗確定,當所述比值大于I時,像素點的權值為1,當所述比值小于I時,像素點的權值等于該常數; 顏色分布子模塊,其通過如下公式計算出毛筆電子畫刷的顏色分布并顯示Vs = WsX Vcu+(1-Ws) XVbg 其中,Vs代表在水平方向上包含毛筆電子畫刷的最小正方形外接框中的任意一像素點S的R、G、B顏色分量,Vcu代表當前毛筆電子畫刷的R、G、B顏色分量,Vbg代表背景色的R、G、B顏色分量,Ws是像素點S的權值。
3.根據權利要求1或2所述毛筆電子畫刷設置裝置,其特征在于, 當所述毛筆電子畫刷從當前位置移動到下一個位置時,所述寬度調節模塊比較當前毛筆電子畫刷的寬度《Cur和毛筆電子畫刷的目標寬度wDst并調節毛筆電子畫刷的寬度wCur 當 wCur > wDst+wStep 時,wCur = wCur-wStep ;當 wCur < wDst-wStep 時,wCur = wCur+wStep ; 當wDst-wStep < wCur ^ wDst+wStep時,保持毛筆電子畫刷的寬度wCur原寬度不變,其中毛筆電子畫刷的目標寬度wDst由當前的采樣距離D所確定,該采樣距離D是指系統根據輸入設備移動以一定的時間間隔進行采樣而得到的當前采樣點與上一采樣點之間的距離,wStep表示毛筆電子畫刷寬度變化的步長,該步長是根據經驗確定的固定值。
4.根據權利要求3所述的毛筆電子畫刷設置裝置,其特征在于, 所述毛筆電子畫刷的目標寬度wDst與所述采樣距離D之間的關系為 當采樣距離D小于等于某一預設值時,wDst = wPen,其中wPen表示整個描繪過程中毛筆電子畫刷的最大寬度且為一固定值; 當采樣距離D大于某一預設值時,wDst = k/D, k是根據經驗取值; 當wDst < wMin時,wDst = wMin,其中wMin表示整個描繪過程中毛筆電子畫刷的最小寬度,為固定值。
5.根據權利要求2所述的毛筆電子畫刷設置裝置,其特征在于,所述顏色分布確定模塊還包括, 權值存儲子模塊,其將求得的毛筆電子畫刷的最小正方形外接框中的各像素點的權值存儲成為一個由數組構成的模板,所述數組中的各個元素對應于外接框中各個像素點的權值。
6.根據權利要求5所述的毛筆電子畫刷設置裝置,其特征在于, 當毛筆電子畫刷移動,所述像素點權值確定模塊確定當前位置的毛筆電子畫刷的水平方向的最小正方形外接框,確定當前外接框中的各像素點的權值,并確定當前位置的毛筆電子畫刷的外接框與當前位置的前一位置的外接框的公共像素點和不屬于當前位置的前一位置的外接框的像素點,將在當前外接框中的像素點的權值和在當前位置的前一位置的外接框中的像素點的權值之和作為公共像素點的權值; 所述權值存儲子模塊存儲所述像素點權值確定模塊求得的不屬于上一外接框的各像素點的權值、以及公共像素點的權值; 所述顏色分布子模塊根據權值存儲子模塊中存儲的不屬于當前外接框的各像素點的權值,并計算出各像素點的紅色分量、藍色分量和綠色分量,然后顯示。
7.一種毛筆電子畫刷,其特征在于,由權利要求1-6所述的毛筆電子畫刷設置裝置設置而成。
8.一種應用如權利要求7所述毛筆電子畫刷描繪線條的裝置,其特征在于,包括 點選取模塊,采集用戶的輸入筆跡點中的四個點作為三次B樣條曲線所需的控制點; 線條描繪模塊,利用三次B樣條曲線方程,基于點選取模塊選取的所述控制點確定并用反走樣線段連接待描繪電子線條上的數個點; 采用所述毛筆電子畫刷描繪所述線條描繪模塊得到的反走樣線段。
9.根據權利要求8所述的裝置,其特征在于, 所述毛筆電子畫刷描繪所述線條描繪模塊得到的反走樣線段時,毛筆電子畫刷的中心從反走樣線段的起點開始,以一定的步長向反走樣線段的終點移動。
10.根據權利要求9所述的電子線條描繪裝置,其特征在于, 當毛筆電子畫刷以一定的步長P從反走樣線段的起點向其終點移動時,如果到達終點時多余一小段距離S,則畫下一段反走樣線段時毛筆電子畫刷的起點從下一段反走樣線段的起點向其終點側偏移一段距離Ρ-s,其中s < P。
11.一種應用如權利要求7所述毛筆電子畫刷描繪線條的方法,其特征在于,包括 點選取步驟,采集用戶的輸入筆跡點中的四個點作為三次B樣條曲線所需的四個控制點, 線條描繪步驟,基于所述四個控制點,利用三次B樣條曲線方程,確定并用反走樣線段連接待描繪電子線條上的數個點,其中所述反走樣線段所述毛筆電子畫刷描繪。
12.根據權利要求11所述的電子線條描繪方法,其特征在于, 所述反走樣線段采用毛筆電子畫刷描繪包括 所述毛筆電子畫刷的中心從反走樣線段的起點開始,以一定的步長向反走樣線段的終點移動。
13.根據權利要求11所述的電子線條描繪方法,其特征在于, 所述反走樣線段采用毛筆電子畫刷描繪還包括 當毛筆電子畫刷以一定的步長P從反走樣線段的起點向其終點移動時,如果到達終點時多余一小段距離S,則畫下一段反走樣線段時毛筆電子畫刷的起點從下一段反走樣線段的起點向其終點側偏移一段距離Ρ-s,其中s < P。
全文摘要
本發明提供一種毛筆電子畫刷的設置裝置,其包括形狀和中心位置設定模塊,用于設定毛筆電子畫刷的中心位置,并設定毛筆筆頭形狀的多邊形作為毛筆電子畫刷;寬度設定模塊,用于根據用戶的需要設定所述多邊形的寬度;寬度調節模塊,用于隨著毛筆電子畫刷移動的速度的變化而變化調節所述多邊形的寬度,該毛筆電子畫刷移動得越快,所述毛筆電子畫刷對應的多邊形越小。本發明還提供一種由該毛筆電子畫刷的設置裝置的毛筆電子畫刷。另外,本發明還提供一種使用所述毛筆電子畫刷描繪毛筆電子線條的裝置及方法。利用本發明,能夠繪制出類似于毛筆筆跡的電子線條。
文檔編號G06T11/80GK102999321SQ201110274499
公開日2013年3月27日 申請日期2011年9月15日 優先權日2011年9月15日
發明者肖超, 鄒明福 申請人:漢王科技股份有限公司