SpriteRenderer的Shader實現(xiàn)Image的Filled(二)

今天說說Radial90、Radial180和Radial360這三個模式的實現(xiàn)

實現(xiàn)原理

判斷當(dāng)前點是否顯示是判斷當(dāng)前點和選擇的旋轉(zhuǎn)中心點的向量和初始軸的夾角是否在顯示角度內(nèi)

如圖1:點A和旋轉(zhuǎn)中心點的向量和初始軸的夾角∠A在顯示度數(shù)a范圍內(nèi),所以點A顯示

? ? ? ? ? ? ?點B和旋轉(zhuǎn)中心點的向量和初始軸的夾角∠B不在顯示度數(shù)a范圍內(nèi)若专,所以點B不顯示


(圖1)

那么∠A和∠B怎么計算呢舱污?

圖2中伸但,選擇的旋轉(zhuǎn)中心點(0,0)血筑,旋轉(zhuǎn)軸為X軸,則點(x,y)和x軸的夾角a的計算

角度a=Mathf.Atan2(y,x)*Mathf.Rad2Deg

通過反正切獲得弧度赃绊,再轉(zhuǎn)換為度數(shù)


(圖2)


圖3是(1,1)、(-1,1)羡榴、(-1,-1)碧查、(1,-1)四個點與x軸根據(jù)公式計算出來的角度值

(圖3)

我們需要將計算的角度轉(zhuǎn)換為0°-360°的值,如圖5

if(a<0){a+=360;}

(圖4)


Radial90分別以(0,0)-(1,0)、(0,1)-(0,0)炕矮、(1,1)-(0,1)么夫、(1,1)-(1,0)四個為初始軸

以(0,0)、(0,1)肤视、(1,1)档痪、(1,0)四個旋轉(zhuǎn)中心點進(jìn)行角度判斷

(圖5)


Radial180分別以(0.5,0)-(1,0)、(0,0.5)-(0,0)邢滑、(0.5,1)-(0,1)腐螟、(1,0.5)-(1,0)四個為初始軸

以(0.5,0)、(0,0.5)困后、(0.5,1)乐纸、(1,0.5)四個旋轉(zhuǎn)中心點進(jìn)行角度判斷

(圖6)

Radial360分別以(0.5,0.5)-(0,-1)、(0.5,0.5)-(1,0)摇予、(0.5,0.5)-(0,1)汽绢、(0.5,0.5)-(-1,0)四個為初始軸

以(0.5,0.5)一個旋轉(zhuǎn)中心點進(jìn)行角度判斷


Shader中的具體實現(xiàn)就是以此原理實現(xiàn)的。



最后附上完整Shader文件

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末侧戴,一起剝皮案震驚了整個濱河市宁昭,隨后出現(xiàn)的幾起案子跌宛,更是在濱河造成了極大的恐慌,老刑警劉巖积仗,帶你破解...
    沈念sama閱讀 212,454評論 6 493
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件疆拘,死亡現(xiàn)場離奇詭異,居然都是意外死亡寂曹,警方通過查閱死者的電腦和手機哎迄,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,553評論 3 385
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來隆圆,“玉大人漱挚,你說我怎么就攤上這事∝以睿” “怎么了棱烂?”我有些...
    開封第一講書人閱讀 157,921評論 0 348
  • 文/不壞的土叔 我叫張陵,是天一觀的道長阶女。 經(jīng)常有香客問我颊糜,道長,這世上最難降的妖魔是什么秃踩? 我笑而不...
    開封第一講書人閱讀 56,648評論 1 284
  • 正文 為了忘掉前任衬鱼,我火速辦了婚禮,結(jié)果婚禮上憔杨,老公的妹妹穿的比我還像新娘鸟赫。我一直安慰自己,他們只是感情好消别,可當(dāng)我...
    茶點故事閱讀 65,770評論 6 386
  • 文/花漫 我一把揭開白布抛蚤。 她就那樣靜靜地躺著,像睡著了一般寻狂。 火紅的嫁衣襯著肌膚如雪岁经。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 49,950評論 1 291
  • 那天蛇券,我揣著相機與錄音缀壤,去河邊找鬼。 笑死纠亚,一個胖子當(dāng)著我的面吹牛塘慕,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播蒂胞,決...
    沈念sama閱讀 39,090評論 3 410
  • 文/蒼蘭香墨 我猛地睜開眼图呢,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起蛤织,我...
    開封第一講書人閱讀 37,817評論 0 268
  • 序言:老撾萬榮一對情侶失蹤拥娄,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后瞳筏,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 44,275評論 1 303
  • 正文 獨居荒郊野嶺守林人離奇死亡牡昆,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 36,592評論 2 327
  • 正文 我和宋清朗相戀三年姚炕,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片丢烘。...
    茶點故事閱讀 38,724評論 1 341
  • 序言:一個原本活蹦亂跳的男人離奇死亡柱宦,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出播瞳,到底是詐尸還是另有隱情掸刊,我是刑警寧澤,帶...
    沈念sama閱讀 34,409評論 4 333
  • 正文 年R本政府宣布赢乓,位于F島的核電站忧侧,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏牌芋。R本人自食惡果不足惜蚓炬,卻給世界環(huán)境...
    茶點故事閱讀 40,052評論 3 316
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望躺屁。 院中可真熱鬧肯夏,春花似錦、人聲如沸犀暑。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,815評論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽耐亏。三九已至徊都,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間苹熏,已是汗流浹背碟贾。 一陣腳步聲響...
    開封第一講書人閱讀 32,043評論 1 266
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留轨域,地道東北人袱耽。 一個月前我還...
    沈念sama閱讀 46,503評論 2 361
  • 正文 我出身青樓,卻偏偏與公主長得像干发,于是被迫代替她去往敵國和親朱巨。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 43,627評論 2 350

推薦閱讀更多精彩內(nèi)容