開發(fā)IOS的朋友都知道IOS 貝塞爾曲線的重要性,由于經(jīng)常會用到這樣的東西,索性抽時間就把相應(yīng)所有的屬性,方法做一個總結(jié)。
創(chuàng)新互聯(lián)公司擁有十年成都網(wǎng)站建設(shè)工作經(jīng)驗(yàn),為各大企業(yè)提供成都網(wǎng)站設(shè)計、成都網(wǎng)站建設(shè)服務(wù),對于網(wǎng)頁設(shè)計、PC網(wǎng)站建設(shè)(電腦版網(wǎng)站建設(shè))、重慶App定制開發(fā)、wap網(wǎng)站建設(shè)(手機(jī)版網(wǎng)站建設(shè))、程序開發(fā)、網(wǎng)站優(yōu)化(SEO優(yōu)化)、微網(wǎng)站、域名注冊等,憑借多年來在互聯(lián)網(wǎng)的打拼,我們在互聯(lián)網(wǎng)網(wǎng)站建設(shè)行業(yè)積累了很多網(wǎng)站制作、網(wǎng)站設(shè)計、網(wǎng)絡(luò)營銷經(jīng)驗(yàn),集策劃、開發(fā)、設(shè)計、營銷、管理等網(wǎng)站化運(yùn)作于一體,具備承接各種規(guī)模類型的網(wǎng)站建設(shè)項(xiàng)目的能力。
UIBezierPath主要用來繪制矢量圖形,它是基于Core Graphics對CGPathRef數(shù)據(jù)類型和path繪圖屬性的一個封裝,所以是需要圖形上下文的(CGContextRef),所以一般UIBezierPath在drawRect中使用。
1.CGPath:將UIBezierPath類轉(zhuǎn)換成CGPath,類似于UIColor的CGColor
2.empty:只讀類型,路徑上是否有有效的元素
3.bounds:和view的bounds是不一樣的,它獲取path的X坐標(biāo)、Y坐標(biāo)、寬度,但是高度為0
4.currentPoint:當(dāng)前path的位置,可以理解為path的終點(diǎn)
5.lineWidth:path寬度
6.lineCapStyle:path端點(diǎn)樣式,有3種樣式
kCGLineCapButt:無端點(diǎn)
kCGLineCapRound:圓形端點(diǎn)
kCGLineCapSquare:方形端點(diǎn)(樣式上和kCGLineCapButt是一樣的,但是比kCGLineCapButt長一點(diǎn))
9.flatness:彎曲路徑的渲染精度,默認(rèn)為0.6,越小精度越高,相應(yīng)的更加消耗性能。
10.usesEvenOddFillRule:單雙數(shù)圈規(guī)則是否用于繪制路徑,默認(rèn)是NO
1.創(chuàng)建UIBezierPath對象:
2.創(chuàng)建在rect內(nèi)的矩形:
參數(shù):
1. rect-矩形的Frame
3.創(chuàng)建在rect里的內(nèi)切曲線:
參數(shù):
1. rect-矩形的Frame
4.創(chuàng)建帶有圓角的矩形,當(dāng)矩形變成正圓的時候,Radius就不再起作用:
參數(shù):
1. rect-矩形的Frame
2. cornerRadius-圓角大小
5.設(shè)定特定的角為圓角的矩形:
參數(shù):
1. rect-矩形的Frame
2. corners-指定的圓角
3. cornerRadii-圓角的大小
6.創(chuàng)建圓弧
參數(shù):
1. center-圓點(diǎn)
2. radius-半徑
3. startAngle-起始位置
4. endAngle-結(jié)束為止
5. clockwise-是否順時針方向
參數(shù):
1. CGPath-已有路徑
8.init方法:
9.initWiteCoder方法:
10.轉(zhuǎn)換成CGPath:
11.移動到某一點(diǎn):
參數(shù):
1. point-目標(biāo)位置
12.繪制一條線:
參數(shù):
1. point-目標(biāo)位置
13.創(chuàng)建三次貝塞爾曲線:
參數(shù):
14.創(chuàng)建二次貝塞爾曲線
參數(shù):
15.添加圓?。?/p>
參數(shù): 參看創(chuàng)建圓弧
16.閉合路徑,即在終點(diǎn)和起點(diǎn)連一根線:
17.清空路徑:
18.追加路徑:
參數(shù):
19.扭轉(zhuǎn)路徑,即起點(diǎn)變成終點(diǎn),終點(diǎn)變成起點(diǎn):
20.路徑進(jìn)行仿射變換:
- (void)applyTransform:(CGAffineTransform)transform;
參數(shù):transform-仿射變換
21.繪制虛線:
參數(shù):
22.填充:
23.描邊,路徑創(chuàng)建需要描邊才能顯示出來:
24.設(shè)置描邊顏色,需要在設(shè)置后調(diào)用描邊方法:
25.設(shè)置填充顏色,需要在設(shè)置后調(diào)用填充方法
26.設(shè)置描邊的混合模式:
參數(shù):
27.設(shè)置填充的混合模式:
參數(shù):
28.修改當(dāng)前圖形上下文的繪圖區(qū)域可見,隨后的繪圖操作導(dǎo)致呈現(xiàn)內(nèi)容只有發(fā)生在指定路徑的填充區(qū)域
Android中Math類中提供了三個與取整有關(guān)的方法:
分別是ceil、floor、round,這些方法的作用與它們的英文名稱的含義相對應(yīng)
ceil的英文解釋是天花板,該方法就表示向上取整,所以,Math.ceil(16.2)的結(jié)果為16,Math.ceil(-16.2)的結(jié)果是-16;
floor的英文解釋是地板,所以該方法就表示向下取整,那么Math.floor(16.6)的結(jié)果為16,Math.floor(-16.6)的結(jié)果是-17;
round方法比前兩個稍微復(fù)雜一點(diǎn),它表示“四舍五入”,算法為Math.floor(x+0.5),即將原來的數(shù)字加上0.5后再向下取整,所以,Math.round(16.2)的結(jié)果為17,Math.round(-16.2)的結(jié)果為-16.
不會出現(xiàn)像字符串類型轉(zhuǎn)float類型出現(xiàn)的錯誤。
打印結(jié)果:
該枚舉類型有四個值
NSRoundPlain:保留位數(shù)的下一位四舍五入
NSRoundDown:保留位數(shù)的下一位直接舍去
NSRoundUp:保留位數(shù)的下一位直接進(jìn)一位
NSRoundBankers:當(dāng)保留位數(shù)的下一位不是5時,四舍五入,當(dāng)保留位數(shù)的下一位是5時,其前一位是偶數(shù)直接舍去,是奇數(shù)直接進(jìn)位(如果5后面還有數(shù)字則直接進(jìn)位)
round:如果參數(shù)是小數(shù),則求本身的四舍五入.
ceil:如果參數(shù)是小數(shù),則求最小的整數(shù)但不小于本身.(簡單說就是向上取整)
floor:如果參數(shù)是小數(shù),則求最大的整數(shù)但不大于本身. (簡單說就是向下取整)
Example:
如何值是3.4的話,則3.4 -- round 3.000000 -- ceil 4.000000 -- floor 3.00000
補(bǔ)充:(iOS中絕對值函數(shù))
本文章內(nèi)容也是本人學(xué)習(xí)之互聯(lián)網(wǎng),僅作筆記之用。如有雷同,純屬抄襲!