iOS UIBezierPath 貝塞爾曲線
弧度=(角度/180) *PI
角度=(弧度/PI) * 180
//建立貝塞爾曲線
UIBezierPath *mPath = [UIBezierPath bezierPath];
[mPath moveToPoint:CGPointMake(100, 100)]; //建立一個點
[mPath addLineToPoint:CGPointMake(100, 300)]; // 加條線,從點移動到另一個點
[mPath addLineToPoint:CGPointMake(300, 300)]; // 加條線,從點移動到另一個點
[mPath closePath]; // 關閉貝塞爾線
UIColor *fillColor = [UIColor greenColor]; //設定顏色
[fillColor set]; //填充顏色
[mPath fill]; //貝塞爾線進行填充
UIColor *stroke = [UIColor redColor]; //設定紅色畫筆線
[stroke set]; //填充顏色
[mPath stroke]; //貝塞爾線進行畫筆填充
//建立一個橢圓的貝塞爾曲線 半徑相等 就是圓了
UIBezierPath *mPath1 = [UIBezierPath bezierPathWithOvalInRect:CGRectMake(60, 60, 10, 10)];
[mPath1 fill];
//建立一個矩形的貝塞爾線
UIBezierPath *mPath2 = [UIBezierPath bezierPathWithRect:CGRectMake(70,70, 10, 10)];
[mPath2 stroke];
//建立一個圓弧 傳的弧度
UIBezierPath *mPath3 = [UIBezierPath bezierPathWithArcCenter:CGPointMake(50, 100)
radius:10
startAngle:DEGREES_TO_RADIANS(0)
endAngle:DEGREES_TO_RADIANS(180)
clockwise:YES];
[mPath3 fill];
//建立一個 矩形的貝塞爾曲線, 帶圓角
UIBezierPath *mPath4 = [UIBezierPath bezierPathWithRoundedRect:CGRectMake(250, 15, 20, 20) cornerRadius:3];
[mPath4 fill];
//定義一個矩形 邊角會變成 設定的角度 方位/角度大小
UIBezierPath *mPath5 =[UIBezierPath bezierPathWithRoundedRect:CGRectMake(250, 45, 40, 40)
byRoundingCorners:UIRectCornerTopLeft
cornerRadii:CGSizeMake(10, 10)];
[mPath5 fill];
//定義一個二級的賽貝爾曲線 重點|拐彎點
UIBezierPath *mPath6 = [UIBezierPath bezierPath];
[mPath6 moveToPoint:CGPointMake(10,260)];
[mPath6 addQuadCurveToPoint:CGPointMake(200,260) controlPoint:CGPointMake(85, 240)];
[mPath6 setLineWidth:3];
[mPath6 stroke];
//定義一個三級的賽貝爾曲線 終點|拐點1|拐點2
UIBezierPath *mPath7 = [UIBezierPath bezierPath];
[mPath7 moveToPoint:CGPointMake(10,290)];
[mPath7 addCurveToPoint:CGPointMake(300, 290)
controlPoint1:CGPointMake(50, 270)
controlPoint2:CGPointMake(140, 340)];
[mPath7 stroke];
//當前貝塞爾的點
NSLog(@"mPath7 currentPoint is : %@",NSStringFromCGPoint(mPath7.currentPoint));
相關文章
- iOS UIBezierPath貝塞爾曲線常用方法iOSUI
- UIBezierPath貝塞爾曲線UI
- Android 貝塞爾曲線Android
- iOS開發之畫圖板(貝塞爾曲線)iOS
- 貝塞爾曲線基礎部分
- 貝塞爾曲線理解與應用
- 如何理解並應用貝塞爾曲線
- Android 自定義貝塞爾曲線工具Android
- 貝塞爾曲線開發的藝術
- canvas實現高階貝塞爾曲線Canvas
- canvas bezierCurveTo() 三次貝塞爾曲線Canvas
- 使用貝塞爾曲線裁圓優化tableView優化View
- Path從懵逼到精通(2)——貝塞爾曲線
- js控制貝塞爾曲線程式碼例項JS線程
- 安卓自定義 View 進階:貝塞爾曲線安卓View
- 貝塞爾曲線(Bezier curve)實現節點連線
- 用canvas繪製一個曲線動畫——深入理解貝塞爾曲線Canvas動畫
- 自定義View合輯(6)-波浪(貝塞爾曲線)View
- canvas 二次貝塞爾曲線quadraticCurveTo()Canvas
- SVG <path> C 指令 三次貝塞爾曲線SVG
- SVG <path> Q指令 二次貝塞爾曲線SVG
- webGL入門-四階貝塞爾曲線繪製Web
- html5中canvas繪製貝塞爾曲線HTMLCanvas
- 【Flutter高階玩法】 貝塞爾曲線的表象認知Flutter
- Flutter 自定義元件之貝塞爾曲線畫波浪球Flutter元件
- Android-貝塞爾曲線實現水波紋動畫Android動畫
- canvas基礎[二]教你編寫貝塞爾曲線工具Canvas
- SVG <path>元素C指令三次貝塞爾曲線SVG
- SVG <path>元素Q指令二次貝塞爾曲線SVG
- html5中canvas貝塞爾曲線繪製菊花HTMLCanvas
- bezierMaker.js——N階貝塞爾曲線生成器JS
- 貝塞爾曲線原理、推導及Matlab實現Matlab
- 一個貝塞爾曲線編輯工具(2d)
- 自定義View合輯(8)-跳躍的小球(貝塞爾曲線)View
- 包教包會-貝塞爾曲線的繪製原理與應用
- 簡易製作貝塞爾曲線動畫(JS+css3+canvas)動畫JSCSSS3Canvas
- SVG之Path路徑詳解(二),全面解析貝塞爾曲線SVG
- Android日常學習:OpenGL 實踐之貝塞爾曲線繪製Android