canvas繪製「海上公升明月」

2021-06-28 22:16:57 字數 470 閱讀 6817

核心內容

海浪的形狀有點像正弦函式,可以用canvas提供的三次貝賽爾曲線函式beziercurveto(x1,y1,x2,y2,x3,y3)

無論是arcto還是二次貝賽爾曲線quadraticcurveto,所謂的控制點就是切線的交點。海浪的動態效果通過改變控制點的縱座標實現的。

公升月包括兩個部分:彎月和公升起動畫。

公升起動畫比較簡單,改變彎月座標,橫座標:radius * math.cos(deg),縱座標:radius * math.sin(deg)。

彎月在於先用arc函式畫外弧,再用arcto畫內弧,畫內弧的時候需要選取弧外任意一點做控制點,然後通過相似三角形算出內弧半徑即可。同時填充顏色。

源**

海上公升明月 天涯共此時!

今天早上 哦 現在應該說是昨天早上了 因為我開啟編譯器的時候 時間已經的差不多凌晨一點了。早上我接到乙個 是以前警校的哥們給我的 說是今天要上貴陽來找我們玩。因為畢業後 他就在他們遵義桐梓工作!我們至此天各一方 本來以為 畢業後大家各奔東西 以後很難在有交集了 沒想到 他今天居然上來找我們玩!接到他...

Canvas繪製基礎

繪製畫素點 canvas.drawpoint float x,float y,paint paint canvas.drawpoints float pts,paint paint canvas.drawpoints f float pts,int offset,int count,paint pa...

Canvas 繪製文字

filltext text,x,y maxwidth 填充文字 stroketext text,x,y maxwidth 描邊文字 font font 10px sans serif 預設 text anchor start 預設,文字對齊界線開始的地方 左對齊指本地從左向右,右對齊指本地從右向左 ...