日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

iOS开发 贝塞尔曲线UIBezierPath

發布時間:2025/4/16 编程问答 23 豆豆
生活随笔 收集整理的這篇文章主要介紹了 iOS开发 贝塞尔曲线UIBezierPath 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

2019獨角獸企業重金招聘Python工程師標準>>>

UIBezierPath基礎

UIBezierPath對象是CGPathRef數據類型的封裝。每一個直線段或者曲線段的結束的地方是下一個的開始的地方。每一個連接的直線或者曲線段的集合成為subpath。一個UIBezierPath對象定義一個完整的路徑包括一個或者多個subpaths。

創建和使用一個path對象的過程是分開的。創建path是第一步,包含一下步驟:

(1)創建一個Bezier path對象。

(2)使用方法moveToPoint:去設置初始線段的起點。

(3)添加line或者curve去定義一個或者多個subpaths。

(4)改變UIBezierPath對象跟繪圖相關的屬性。

UIBezierPath 代碼示例:

- (void)drawRect:(CGRect)rect {#pragma mark - 1. 畫一個紅色五角形// 創建bezierPath對象UIBezierPath *aPath = [UIBezierPath bezierPath];// 設置顏色[[UIColor redColor] set];// 定義線條寬度aPath.lineWidth = 3;/** stroke時候線條終點的效果** kCGLineCapButt,* kCGLineCapRound,* kCGLineCapSquare*/aPath.lineCapStyle = kCGLineCapRound;/** stroke時候線條連接處的效果** kCGLineJoinMiter,* kCGLineJoinRound,* kCGLineJoinBevel*/aPath.lineJoinStyle = kCGLineJoinMiter;// 設置形狀的起點[aPath moveToPoint:CGPointMake(100, 10)];// 畫四條線[aPath addLineToPoint:CGPointMake(200.0, 50.0)];[aPath addLineToPoint:CGPointMake(160, 150)];[aPath addLineToPoint:CGPointMake(40.0, 150)];[aPath addLineToPoint:CGPointMake(10.0, 50.0)];// 第五條線通過 closePath 得到[aPath closePath];// 根據坐標將線畫出來[aPath stroke];[[UIColor yellowColor] set];[aPath fill];#pragma mark - 2. 創建矩形UIBezierPath *aPath2 = [UIBezierPath bezierPathWithRect:CGRectMake(10, 160, 100, 30)];aPath2.lineWidth = 2;aPath2.lineCapStyle = kCGLineCapRound;aPath2.lineJoinStyle = kCGLineJoinRound;[[UIColor blackColor] set];[aPath2 stroke];[aPath2 removeAllPoints];aPath2 = [UIBezierPath bezierPathWithRoundedRect:CGRectMake(120, 160, 100, 30) cornerRadius:5];[aPath2 stroke];#pragma mark - 3. 創建圓形或者橢圓形/** 使用如下方法創建內切圓或者內切橢圓* + (UIBezierPath *)bezierPathWithOvalInRect:(CGRect)rect * 當傳入的rect是一個正方形時,繪制的圖像是一個內切圓;當傳入的rect是一個長方形時,繪制的圖像是一個內切橢圓。*/UIBezierPath *aPath3 = [UIBezierPath bezierPathWithOvalInRect:CGRectMake(10, 200, 100, 100)];[aPath3 moveToPoint:CGPointMake(60, 250)];[aPath3 stroke];[aPath3 removeAllPoints];[aPath3 addArcWithCenter:CGPointMake(60, 250) radius:4 startAngle:0 endAngle:M_PI*2 clockwise:YES];[aPath3 fill];#pragma mark - 4. 使用UIBezierPath創建一段弧線// 參數 closewise: 順時針方向UIBezierPath *aPath4 = [UIBezierPath bezierPathWithArcCenter:CGPointMake(60, 250) radius:70 startAngle:M_PI_4 endAngle:M_PI_4+M_PI_2 clockwise:YES];aPath4.lineWidth = 3;[aPath4 stroke];#pragma mark - 5. 繪制 二次/三次 貝塞爾曲線UIBezierPath *aPath5 = [UIBezierPath bezierPath];[aPath5 moveToPoint:CGPointMake(10, 330)];[aPath5 addQuadCurveToPoint:CGPointMake(130, 330) controlPoint:CGPointMake(10, 400)];// 三次貝塞爾曲線[[UIColor redColor] set];[aPath5 addCurveToPoint:CGPointMake(320, 330) controlPoint1:CGPointMake(140, 400) controlPoint2:CGPointMake(320, 100)];[aPath5 stroke];/// 讓控件在 path上面移動的效果. ****************************************CAKeyframeAnimation *moveAnim = [CAKeyframeAnimation animationWithKeyPath:@"position"];moveAnim.path = aPath5.CGPath;moveAnim.removedOnCompletion = YES;[self.imageView.layer addAnimation:moveAnim forKey:nil];#pragma mark - 6. 將文字和圖片畫在畫布上去.//將文字畫在畫布上[@"Walden" drawAtPoint:CGPointMake(10, 10) withAttributes:nil];UIImage *image = [UIImage imageNamed:@"image1.png"];[image drawInRect:CGRectMake(10, 400, 100, 100)];}

轉載于:https://my.oschina.net/whforever/blog/700375

總結

以上是生活随笔為你收集整理的iOS开发 贝塞尔曲线UIBezierPath的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 麻豆精品在线观看 | 人妻丰满熟妇无码区免费 | 美女日批视频在线观看 | gav在线 | 久久久欧洲 | 四季av中文字幕一区 | 123超碰 | 涩涩涩999| 黄色免费毛片 | 国产女人在线观看 | 91精品人妻一区二区三区蜜桃欧美 | 亚洲国产精品激情在线观看 | 狂野欧美性猛交xxxx巴西 | 久热精品在线观看视频 | 亚洲国产欧美精品 | 国产精品视频h | 肉性天堂 | 国产日韩欧美精品 | 精品日韩av | 亚洲码国产精品高潮在线 | 深夜网站在线 | 国产v亚洲v天堂无码久久久 | 亚洲在线观看一区二区 | 天天综合网入口 | 伊人三区 | 丝袜毛片 | 91人人视频 | 国产精品国产三级国产aⅴ9色 | 老湿机69福利区午夜x片 | 亚洲欧美日韩国产一区二区三区 | 国产激情av一区二区三区 | 天天色婷婷 | 小萝莉末成年一区二区 | 国产真实夫妇交换视频 | 四虎精品永久在线 | 日日摸日日添日日碰9学生露脸 | www.黄色网址.com | 午夜欧美福利 | 欧美一区二区在线看 | 色综合天天综合综合国产 | 国产九九在线 | 久久r精品 | 国产精品无码人妻一区二区在线 | 锕锕锕锕锕锕锕锕 | 国产一区二区三区精品愉拍 | 国产精品一区二区久久 | 好爽…又高潮了毛片免费看 | 国产欧美日韩亚洲 | 亚洲精品国产精品乱码 | 日韩欧美精品国产 | 国产精品2区 | 兔费看少妇性l交大片免费 日韩高清不卡 | 亚洲激情一区二区 | 伊人久综合 | 91九色丨porny丨国产jk | 久久综合婷婷国产二区高清 | 国产第一页在线观看 | 偷偷操av | 特黄特色大片免费播放器使用方法 | 人人看人人澡 | 日本一级视频 | 久久久久久片 | 日韩一区二区三免费高清在线观看 | 精品少妇人妻av一区二区三区 | 都市激情亚洲色图 | 欧美老肥妇做.爰bbww视频 | 香港av在线 | 99午夜视频 | 可以免费看的av网站 | 和漂亮岳做爰3中文字幕 | 福利网址在线 | jvid乐乐 | 天堂网在线观看视频 | 日韩免费专区 | 蜜臀久久精品久久久久久酒店 | 婷婷五月精品中文字幕 | 四虎影院永久地址 | 日本jizz在线观看 | 九九精品影院 | 华人在线视频 | 黄色激情四射 | 黄色动漫免费在线观看 | 日韩一区二区三区久久 | 18被视频免费观看视频 | 中文字幕av一区二区三区谷原希美 | 精品久久久999 | 国产成人无码精品久久久久 | 亚洲永久精品在线观看 | av精选| 91在线免费网站 | 亚洲精品欧美日韩 | 国产麻豆免费观看 | 日韩精品免费观看 | 人人玩人人干 | 欧美国产一区二区 | 亚洲区视频 | 激情综合图区 | 久久久久久逼 | 婷婷午夜天 |