作業-運用 UIBezierPath 繪製圖案

以直線來說,座標比較沒問題,但是畫曲線的話座標就變頑皮,跑進playground會走鐘。因為要呈現完美曲線,光座標位置就調整了好幾次,難怪黑盒子就算有座標,掉進海裡再加上有多項變數,也變得不好找了……

import UIKitvar rect = CGRect(x:0,y:0,width:499,height:499)let rectBackground = UIView(frame: rect)rectBackground.backgroundColor = UIColor(red:234/55, green: 0, blue: 0, alpha: 1)let image = UIImage(named: “m”)let imageView = UIImageView(image : image)let backgroundView = UIImageView(frame: imageView.frame)let mView = UIView(frame: CGRect(x: 0, y: 0, width: 499, height: 499))let mColor = UIColor(red: 255/255, green: 195/255, blue: 0, alpha: 1)mView.backgroundColor = mColorlet mPath = UIBezierPath()mPath.move(to: CGPoint(x: 109, y: 399)) mPath.addCurve(to: CGPoint(x: 256, y: 255), controlPoint1: CGPoint(x: 109, y: 229), controlPoint2: CGPoint(x: 182, y: 90))mPath.addCurve(to: CGPoint(x: 403, y: 399), controlPoint1: CGPoint(x: 329, y: 90), controlPoint2: CGPoint(x: 407, y: 229))mPath.addLine(to: CGPoint(x: 371,y:399))mPath.addCurve(to: CGPoint(x: 271, y: 377), controlPoint1: CGPoint(x: 372, y: 240), controlPoint2: CGPoint(x: 306, y: 50))mPath.addLine(to: CGPoint(x: 245,y:377))mPath.addCurve(to: CGPoint(x: 141, y: 399), controlPoint1: CGPoint(x: 205, y: 50), controlPoint2: CGPoint(x: 142, y: 240))mPath.close()let mShape = CAShapeLayer()mShape.path = mPath.cgPathmView.layer.mask = mShapemViewbackgroundViewrectBackground.addSubview(mView)

--

--