陳新龍

圖1:Scratch的顏色選取面板

圖2:Phomshop的亮度立方體顏色面板
在使用繪圖軟件時,我們常常通過軟件的“顏色面板”來選擇所需的顏色,軟件為了方便我們快速準確地選取顏色會提供多種顏色選取方式。比如Scratch提供的顏色、飽和度、亮度滑塊方式(如圖1)和Photoshop提供的色相立方體模式或亮度立方體模式的顏色面板(如圖2)。
今天我們就用Scratch模擬出Photoshop的亮度立方體模式的顏色面板來,并且可以從這個顏色面板提取顏色用于繪畫。
首先觀察Photoshop的顏色面板的顏色的分布情況,畫布為正方形,顏色從紅色、紫色、藍色、綠色向黃色、橙色逐漸變化,這種顏色模式使用的是RGB色,即色板中所有的顏色都是通過Red(紅色)Green(綠色)Blue(藍色)混合而成,右邊的單色帶用來控制亮度,也就是說整個方形區域的顏色亮度不變,變化的只有顏色和飽和度。仔細觀察后我們知道編程的目標就是繪制出一個顏色和飽和度漸變的正方形區域。
第一步:繪制一塊正方形的顏色面板,這要用到畫筆工具,新建一個空白角色,將初始位置定位在(0,0),畫筆的顏色和飽和度初始值都為0,亮度初始值為100。然后增加自制積木模塊“顏色畫板”,在自制積木模塊中,用雙重嵌套循環來繪制顏色面板,外層的循環控制Y坐標的變化,內層的循環控制X坐標的變化,X軸的寬度和Y軸的高度都限制在100,這是根據畫筆參數取值范圍確定的,每次循環增加1;畫筆的顏色在內層循環過程增加100次,同時畫筆的飽和度在外層循環過程中增加1;每當繪制完一行,要將X坐標恢復到初始值0,并且Y坐標增加1;特別需要注意落筆和抬筆的狀態。繪制完成后便可以看到舞臺中出現了顏色調料板(如圖3)。

繪制完顏色調料板,剩下的事情就從色板中提顏色用來繪畫,增加新的積木模塊“手動畫筆”,在模塊中重復執行檢測,判斷鼠標落在色板的哪個位置,當按下鼠標時,系統會根據畫筆落下的位置判斷顏色(鼠標的X坐標)和亮度(鼠標的Y坐標),然后按下空格鍵畫筆便可以根據我們鼠標方向進行繪制了(如圖4)。

這個程序簡單又有趣,我們竟然可以用Scratch自制出一個顏色面板,還可以提取顏色。有興趣的同學還可以結合我們之前學過的知識,將色板和幾何圖案結合在一起,制作出與眾不同的特色圖案花紋,趕緊動手試試看吧。