BTUIKLargeAmExVectorArtView.m 31 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446
  1. #import "BTUIKLargeAmExVectorArtView.h"
  2. @implementation BTUIKLargeAmExVectorArtView
  3. - (void)drawArt {
  4. //// General Declarations
  5. CGColorSpaceRef colorSpace = CGColorSpaceCreateDeviceRGB();
  6. CGContextRef context = UIGraphicsGetCurrentContext();
  7. //// Color Declarations
  8. UIColor* gradientColor = [UIColor colorWithRed: 0.356 green: 0.685 blue: 0.877 alpha: 1];
  9. UIColor* gradientColor2 = [UIColor colorWithRed: 0.029 green: 0.27 blue: 0.7 alpha: 1];
  10. UIColor* fillColor2 = [UIColor colorWithRed: 1 green: 1 blue: 1 alpha: 1];
  11. UIColor* fillColor3 = [UIColor colorWithRed: 1 green: 1 blue: 1 alpha: 1];
  12. //// Gradient Declarations
  13. CGFloat gradientLocations[] = {0, 1};
  14. CGGradientRef gradient = CGGradientCreateWithColors(colorSpace, (__bridge CFArrayRef)@[(id)gradientColor.CGColor, (id)gradientColor2.CGColor], gradientLocations);
  15. //// Group
  16. {
  17. CGContextSaveGState(context);
  18. CGContextBeginTransparencyLayer(context, NULL);
  19. //// Clip Clip
  20. UIBezierPath* clipPath = [UIBezierPath bezierPath];
  21. [clipPath moveToPoint: CGPointMake(13.85, 13.67)];
  22. [clipPath addLineToPoint: CGPointMake(13.85, 67.4)];
  23. [clipPath addLineToPoint: CGPointMake(67.39, 67.4)];
  24. [clipPath addLineToPoint: CGPointMake(67.39, 49.67)];
  25. [clipPath addCurveToPoint: CGPointMake(67.71, 48.48) controlPoint1: CGPointMake(67.6, 49.36) controlPoint2: CGPointMake(67.71, 48.97)];
  26. [clipPath addLineToPoint: CGPointMake(67.71, 48.48)];
  27. [clipPath addCurveToPoint: CGPointMake(67.39, 47.31) controlPoint1: CGPointMake(67.71, 47.94) controlPoint2: CGPointMake(67.6, 47.59)];
  28. [clipPath addLineToPoint: CGPointMake(67.39, 47.31)];
  29. [clipPath addLineToPoint: CGPointMake(67.39, 13.67)];
  30. [clipPath addLineToPoint: CGPointMake(13.85, 13.67)];
  31. [clipPath closePath];
  32. [clipPath addClip];
  33. //// Bezier Drawing
  34. UIBezierPath* bezierPath = [UIBezierPath bezierPath];
  35. [bezierPath moveToPoint: CGPointMake(13.85, 13.67)];
  36. [bezierPath addLineToPoint: CGPointMake(13.85, 67.4)];
  37. [bezierPath addLineToPoint: CGPointMake(67.39, 67.4)];
  38. [bezierPath addLineToPoint: CGPointMake(67.39, 49.67)];
  39. [bezierPath addCurveToPoint: CGPointMake(67.71, 48.48) controlPoint1: CGPointMake(67.6, 49.36) controlPoint2: CGPointMake(67.71, 48.97)];
  40. [bezierPath addLineToPoint: CGPointMake(67.71, 48.48)];
  41. [bezierPath addCurveToPoint: CGPointMake(67.39, 47.31) controlPoint1: CGPointMake(67.71, 47.94) controlPoint2: CGPointMake(67.6, 47.59)];
  42. [bezierPath addLineToPoint: CGPointMake(67.39, 47.31)];
  43. [bezierPath addLineToPoint: CGPointMake(67.39, 13.67)];
  44. [bezierPath addLineToPoint: CGPointMake(13.85, 13.67)];
  45. [bezierPath closePath];
  46. CGContextSaveGState(context);
  47. [bezierPath addClip];
  48. CGContextDrawRadialGradient(context, gradient,
  49. CGPointMake(23.4, 22.66), 0,
  50. CGPointMake(23.4, 22.66), 46.22,
  51. kCGGradientDrawsBeforeStartLocation | kCGGradientDrawsAfterEndLocation);
  52. CGContextRestoreGState(context);
  53. CGContextEndTransparencyLayer(context);
  54. CGContextRestoreGState(context);
  55. }
  56. //// Bezier 3 Drawing
  57. UIBezierPath* bezier3Path = [UIBezierPath bezierPath];
  58. [bezier3Path moveToPoint: CGPointMake(18.67, 36.92)];
  59. [bezier3Path addLineToPoint: CGPointMake(17.64, 34.41)];
  60. [bezier3Path addLineToPoint: CGPointMake(16.62, 36.92)];
  61. [bezier3Path addLineToPoint: CGPointMake(18.67, 36.92)];
  62. [bezier3Path closePath];
  63. [bezier3Path moveToPoint: CGPointMake(41.36, 35.92)];
  64. [bezier3Path addCurveToPoint: CGPointMake(40.62, 36.05) controlPoint1: CGPointMake(41.16, 36.04) controlPoint2: CGPointMake(40.91, 36.05)];
  65. [bezier3Path addLineToPoint: CGPointMake(38.79, 36.05)];
  66. [bezier3Path addLineToPoint: CGPointMake(38.79, 34.65)];
  67. [bezier3Path addLineToPoint: CGPointMake(40.64, 34.65)];
  68. [bezier3Path addCurveToPoint: CGPointMake(41.36, 34.76) controlPoint1: CGPointMake(40.91, 34.65) controlPoint2: CGPointMake(41.18, 34.66)];
  69. [bezier3Path addCurveToPoint: CGPointMake(41.67, 35.32) controlPoint1: CGPointMake(41.55, 34.86) controlPoint2: CGPointMake(41.67, 35.05)];
  70. [bezier3Path addCurveToPoint: CGPointMake(41.36, 35.92) controlPoint1: CGPointMake(41.67, 35.6) controlPoint2: CGPointMake(41.56, 35.81)];
  71. [bezier3Path closePath];
  72. [bezier3Path moveToPoint: CGPointMake(54.4, 36.92)];
  73. [bezier3Path addLineToPoint: CGPointMake(53.36, 34.41)];
  74. [bezier3Path addLineToPoint: CGPointMake(52.33, 36.92)];
  75. [bezier3Path addLineToPoint: CGPointMake(54.4, 36.92)];
  76. [bezier3Path closePath];
  77. [bezier3Path moveToPoint: CGPointMake(30.09, 39.63)];
  78. [bezier3Path addLineToPoint: CGPointMake(28.55, 39.63)];
  79. [bezier3Path addLineToPoint: CGPointMake(28.54, 34.71)];
  80. [bezier3Path addLineToPoint: CGPointMake(26.36, 39.63)];
  81. [bezier3Path addLineToPoint: CGPointMake(25.04, 39.63)];
  82. [bezier3Path addLineToPoint: CGPointMake(22.85, 34.7)];
  83. [bezier3Path addLineToPoint: CGPointMake(22.85, 39.63)];
  84. [bezier3Path addLineToPoint: CGPointMake(19.79, 39.63)];
  85. [bezier3Path addLineToPoint: CGPointMake(19.22, 38.23)];
  86. [bezier3Path addLineToPoint: CGPointMake(16.08, 38.23)];
  87. [bezier3Path addLineToPoint: CGPointMake(15.5, 39.63)];
  88. [bezier3Path addLineToPoint: CGPointMake(13.86, 39.63)];
  89. [bezier3Path addLineToPoint: CGPointMake(16.55, 33.34)];
  90. [bezier3Path addLineToPoint: CGPointMake(18.79, 33.34)];
  91. [bezier3Path addLineToPoint: CGPointMake(21.35, 39.3)];
  92. [bezier3Path addLineToPoint: CGPointMake(21.35, 33.34)];
  93. [bezier3Path addLineToPoint: CGPointMake(23.81, 33.34)];
  94. [bezier3Path addLineToPoint: CGPointMake(25.78, 37.61)];
  95. [bezier3Path addLineToPoint: CGPointMake(27.59, 33.34)];
  96. [bezier3Path addLineToPoint: CGPointMake(30.09, 33.34)];
  97. [bezier3Path addLineToPoint: CGPointMake(30.09, 39.63)];
  98. [bezier3Path closePath];
  99. [bezier3Path moveToPoint: CGPointMake(36.24, 39.63)];
  100. [bezier3Path addLineToPoint: CGPointMake(31.21, 39.63)];
  101. [bezier3Path addLineToPoint: CGPointMake(31.21, 33.34)];
  102. [bezier3Path addLineToPoint: CGPointMake(36.24, 33.34)];
  103. [bezier3Path addLineToPoint: CGPointMake(36.24, 34.65)];
  104. [bezier3Path addLineToPoint: CGPointMake(32.72, 34.65)];
  105. [bezier3Path addLineToPoint: CGPointMake(32.72, 35.78)];
  106. [bezier3Path addLineToPoint: CGPointMake(36.16, 35.78)];
  107. [bezier3Path addLineToPoint: CGPointMake(36.16, 37.08)];
  108. [bezier3Path addLineToPoint: CGPointMake(32.72, 37.07)];
  109. [bezier3Path addLineToPoint: CGPointMake(32.72, 38.33)];
  110. [bezier3Path addLineToPoint: CGPointMake(36.24, 38.33)];
  111. [bezier3Path addLineToPoint: CGPointMake(36.24, 39.63)];
  112. [bezier3Path closePath];
  113. [bezier3Path moveToPoint: CGPointMake(43.33, 35.04)];
  114. [bezier3Path addCurveToPoint: CGPointMake(42.27, 36.71) controlPoint1: CGPointMake(43.33, 36.04) controlPoint2: CGPointMake(42.66, 36.56)];
  115. [bezier3Path addCurveToPoint: CGPointMake(43.01, 37.25) controlPoint1: CGPointMake(42.6, 36.84) controlPoint2: CGPointMake(42.88, 37.06)];
  116. [bezier3Path addCurveToPoint: CGPointMake(43.27, 38.4) controlPoint1: CGPointMake(43.23, 37.55) controlPoint2: CGPointMake(43.27, 37.84)];
  117. [bezier3Path addLineToPoint: CGPointMake(43.27, 39.63)];
  118. [bezier3Path addLineToPoint: CGPointMake(41.75, 39.63)];
  119. [bezier3Path addLineToPoint: CGPointMake(41.74, 38.84)];
  120. [bezier3Path addCurveToPoint: CGPointMake(41.5, 37.62) controlPoint1: CGPointMake(41.74, 38.47) controlPoint2: CGPointMake(41.78, 37.92)];
  121. [bezier3Path addCurveToPoint: CGPointMake(40.41, 37.35) controlPoint1: CGPointMake(41.28, 37.39) controlPoint2: CGPointMake(40.95, 37.35)];
  122. [bezier3Path addLineToPoint: CGPointMake(38.79, 37.35)];
  123. [bezier3Path addLineToPoint: CGPointMake(38.79, 39.63)];
  124. [bezier3Path addLineToPoint: CGPointMake(37.29, 39.63)];
  125. [bezier3Path addLineToPoint: CGPointMake(37.29, 33.34)];
  126. [bezier3Path addLineToPoint: CGPointMake(40.75, 33.34)];
  127. [bezier3Path addCurveToPoint: CGPointMake(42.57, 33.64) controlPoint1: CGPointMake(41.51, 33.34) controlPoint2: CGPointMake(42.08, 33.36)];
  128. [bezier3Path addCurveToPoint: CGPointMake(43.33, 35.04) controlPoint1: CGPointMake(43.05, 33.92) controlPoint2: CGPointMake(43.33, 34.33)];
  129. [bezier3Path closePath];
  130. [bezier3Path moveToPoint: CGPointMake(45.74, 39.63)];
  131. [bezier3Path addLineToPoint: CGPointMake(44.21, 39.63)];
  132. [bezier3Path addLineToPoint: CGPointMake(44.21, 33.34)];
  133. [bezier3Path addLineToPoint: CGPointMake(45.74, 33.34)];
  134. [bezier3Path addLineToPoint: CGPointMake(45.74, 39.63)];
  135. [bezier3Path closePath];
  136. [bezier3Path moveToPoint: CGPointMake(63.55, 39.63)];
  137. [bezier3Path addLineToPoint: CGPointMake(61.42, 39.63)];
  138. [bezier3Path addLineToPoint: CGPointMake(58.57, 34.91)];
  139. [bezier3Path addLineToPoint: CGPointMake(58.57, 39.63)];
  140. [bezier3Path addLineToPoint: CGPointMake(55.51, 39.63)];
  141. [bezier3Path addLineToPoint: CGPointMake(54.92, 38.23)];
  142. [bezier3Path addLineToPoint: CGPointMake(51.79, 38.23)];
  143. [bezier3Path addLineToPoint: CGPointMake(51.23, 39.63)];
  144. [bezier3Path addLineToPoint: CGPointMake(49.46, 39.63)];
  145. [bezier3Path addCurveToPoint: CGPointMake(47.28, 38.94) controlPoint1: CGPointMake(48.73, 39.63) controlPoint2: CGPointMake(47.8, 39.47)];
  146. [bezier3Path addCurveToPoint: CGPointMake(46.48, 36.53) controlPoint1: CGPointMake(46.75, 38.4) controlPoint2: CGPointMake(46.48, 37.68)];
  147. [bezier3Path addCurveToPoint: CGPointMake(47.29, 34.07) controlPoint1: CGPointMake(46.48, 35.6) controlPoint2: CGPointMake(46.64, 34.75)];
  148. [bezier3Path addCurveToPoint: CGPointMake(49.57, 33.34) controlPoint1: CGPointMake(47.78, 33.57) controlPoint2: CGPointMake(48.54, 33.34)];
  149. [bezier3Path addLineToPoint: CGPointMake(51.03, 33.34)];
  150. [bezier3Path addLineToPoint: CGPointMake(51.03, 34.69)];
  151. [bezier3Path addLineToPoint: CGPointMake(49.61, 34.69)];
  152. [bezier3Path addCurveToPoint: CGPointMake(48.44, 35.06) controlPoint1: CGPointMake(49.06, 34.69) controlPoint2: CGPointMake(48.74, 34.77)];
  153. [bezier3Path addCurveToPoint: CGPointMake(48.01, 36.49) controlPoint1: CGPointMake(48.19, 35.33) controlPoint2: CGPointMake(48.01, 35.83)];
  154. [bezier3Path addCurveToPoint: CGPointMake(48.43, 37.97) controlPoint1: CGPointMake(48.01, 37.16) controlPoint2: CGPointMake(48.14, 37.65)];
  155. [bezier3Path addCurveToPoint: CGPointMake(49.47, 38.29) controlPoint1: CGPointMake(48.66, 38.21) controlPoint2: CGPointMake(49.08, 38.29)];
  156. [bezier3Path addLineToPoint: CGPointMake(50.15, 38.29)];
  157. [bezier3Path addLineToPoint: CGPointMake(52.27, 33.34)];
  158. [bezier3Path addLineToPoint: CGPointMake(54.53, 33.34)];
  159. [bezier3Path addLineToPoint: CGPointMake(57.07, 39.29)];
  160. [bezier3Path addLineToPoint: CGPointMake(57.07, 33.34)];
  161. [bezier3Path addLineToPoint: CGPointMake(59.37, 33.34)];
  162. [bezier3Path addLineToPoint: CGPointMake(62.01, 37.72)];
  163. [bezier3Path addLineToPoint: CGPointMake(62.01, 33.34)];
  164. [bezier3Path addLineToPoint: CGPointMake(63.55, 33.34)];
  165. [bezier3Path addLineToPoint: CGPointMake(63.55, 39.63)];
  166. [bezier3Path closePath];
  167. [bezier3Path moveToPoint: CGPointMake(13.85, 40.87)];
  168. [bezier3Path addLineToPoint: CGPointMake(16.42, 40.87)];
  169. [bezier3Path addLineToPoint: CGPointMake(17, 39.47)];
  170. [bezier3Path addLineToPoint: CGPointMake(18.3, 39.47)];
  171. [bezier3Path addLineToPoint: CGPointMake(18.87, 40.87)];
  172. [bezier3Path addLineToPoint: CGPointMake(23.93, 40.87)];
  173. [bezier3Path addLineToPoint: CGPointMake(23.93, 39.8)];
  174. [bezier3Path addLineToPoint: CGPointMake(24.39, 40.88)];
  175. [bezier3Path addLineToPoint: CGPointMake(27.01, 40.88)];
  176. [bezier3Path addLineToPoint: CGPointMake(27.46, 39.79)];
  177. [bezier3Path addLineToPoint: CGPointMake(27.46, 40.87)];
  178. [bezier3Path addLineToPoint: CGPointMake(40.03, 40.87)];
  179. [bezier3Path addLineToPoint: CGPointMake(40.03, 38.58)];
  180. [bezier3Path addLineToPoint: CGPointMake(40.27, 38.58)];
  181. [bezier3Path addCurveToPoint: CGPointMake(40.49, 38.88) controlPoint1: CGPointMake(40.44, 38.58) controlPoint2: CGPointMake(40.49, 38.6)];
  182. [bezier3Path addLineToPoint: CGPointMake(40.49, 40.87)];
  183. [bezier3Path addLineToPoint: CGPointMake(46.99, 40.87)];
  184. [bezier3Path addLineToPoint: CGPointMake(46.99, 40.34)];
  185. [bezier3Path addCurveToPoint: CGPointMake(49.4, 40.87) controlPoint1: CGPointMake(47.52, 40.62) controlPoint2: CGPointMake(48.34, 40.87)];
  186. [bezier3Path addLineToPoint: CGPointMake(52.14, 40.87)];
  187. [bezier3Path addLineToPoint: CGPointMake(52.73, 39.47)];
  188. [bezier3Path addLineToPoint: CGPointMake(54.03, 39.47)];
  189. [bezier3Path addLineToPoint: CGPointMake(54.6, 40.87)];
  190. [bezier3Path addLineToPoint: CGPointMake(59.87, 40.87)];
  191. [bezier3Path addLineToPoint: CGPointMake(59.87, 39.54)];
  192. [bezier3Path addLineToPoint: CGPointMake(60.67, 40.87)];
  193. [bezier3Path addLineToPoint: CGPointMake(64.89, 40.87)];
  194. [bezier3Path addLineToPoint: CGPointMake(64.89, 32.09)];
  195. [bezier3Path addLineToPoint: CGPointMake(60.71, 32.09)];
  196. [bezier3Path addLineToPoint: CGPointMake(60.71, 33.13)];
  197. [bezier3Path addLineToPoint: CGPointMake(60.13, 32.09)];
  198. [bezier3Path addLineToPoint: CGPointMake(55.84, 32.09)];
  199. [bezier3Path addLineToPoint: CGPointMake(55.84, 33.13)];
  200. [bezier3Path addLineToPoint: CGPointMake(55.3, 32.09)];
  201. [bezier3Path addLineToPoint: CGPointMake(49.51, 32.09)];
  202. [bezier3Path addCurveToPoint: CGPointMake(46.99, 32.6) controlPoint1: CGPointMake(48.54, 32.09) controlPoint2: CGPointMake(47.68, 32.22)];
  203. [bezier3Path addLineToPoint: CGPointMake(46.99, 32.09)];
  204. [bezier3Path addLineToPoint: CGPointMake(43, 32.09)];
  205. [bezier3Path addLineToPoint: CGPointMake(43, 32.6)];
  206. [bezier3Path addCurveToPoint: CGPointMake(41.3, 32.09) controlPoint1: CGPointMake(42.56, 32.21) controlPoint2: CGPointMake(41.96, 32.09)];
  207. [bezier3Path addLineToPoint: CGPointMake(26.69, 32.09)];
  208. [bezier3Path addLineToPoint: CGPointMake(25.7, 34.36)];
  209. [bezier3Path addLineToPoint: CGPointMake(24.7, 32.09)];
  210. [bezier3Path addLineToPoint: CGPointMake(20.1, 32.09)];
  211. [bezier3Path addLineToPoint: CGPointMake(20.1, 33.13)];
  212. [bezier3Path addLineToPoint: CGPointMake(19.59, 32.09)];
  213. [bezier3Path addLineToPoint: CGPointMake(15.67, 32.09)];
  214. [bezier3Path addLineToPoint: CGPointMake(13.85, 36.26)];
  215. [bezier3Path addLineToPoint: CGPointMake(13.85, 40.87)];
  216. [bezier3Path closePath];
  217. [fillColor2 setFill];
  218. [bezier3Path fill];
  219. //// Bezier 4 Drawing
  220. UIBezierPath* bezier4Path = [UIBezierPath bezierPath];
  221. [bezier4Path moveToPoint: CGPointMake(67.39, 45.51)];
  222. [bezier4Path addLineToPoint: CGPointMake(64.64, 45.51)];
  223. [bezier4Path addCurveToPoint: CGPointMake(64.04, 45.63) controlPoint1: CGPointMake(64.37, 45.51) controlPoint2: CGPointMake(64.18, 45.53)];
  224. [bezier4Path addCurveToPoint: CGPointMake(63.81, 46.08) controlPoint1: CGPointMake(63.88, 45.73) controlPoint2: CGPointMake(63.81, 45.88)];
  225. [bezier4Path addCurveToPoint: CGPointMake(64.15, 46.55) controlPoint1: CGPointMake(63.81, 46.32) controlPoint2: CGPointMake(63.95, 46.48)];
  226. [bezier4Path addCurveToPoint: CGPointMake(64.73, 46.62) controlPoint1: CGPointMake(64.3, 46.61) controlPoint2: CGPointMake(64.47, 46.62)];
  227. [bezier4Path addLineToPoint: CGPointMake(65.54, 46.64)];
  228. [bezier4Path addCurveToPoint: CGPointMake(67.25, 47.15) controlPoint1: CGPointMake(66.36, 46.67) controlPoint2: CGPointMake(66.91, 46.81)];
  229. [bezier4Path addCurveToPoint: CGPointMake(67.39, 47.31) controlPoint1: CGPointMake(67.3, 47.2) controlPoint2: CGPointMake(67.35, 47.26)];
  230. [bezier4Path addLineToPoint: CGPointMake(67.39, 45.51)];
  231. [bezier4Path closePath];
  232. [bezier4Path moveToPoint: CGPointMake(67.39, 49.67)];
  233. [bezier4Path addCurveToPoint: CGPointMake(65.34, 50.47) controlPoint1: CGPointMake(67.02, 50.21) controlPoint2: CGPointMake(66.31, 50.47)];
  234. [bezier4Path addLineToPoint: CGPointMake(62.44, 50.47)];
  235. [bezier4Path addLineToPoint: CGPointMake(62.44, 49.12)];
  236. [bezier4Path addLineToPoint: CGPointMake(65.33, 49.12)];
  237. [bezier4Path addCurveToPoint: CGPointMake(65.94, 48.97) controlPoint1: CGPointMake(65.62, 49.12) controlPoint2: CGPointMake(65.82, 49.08)];
  238. [bezier4Path addCurveToPoint: CGPointMake(66.12, 48.56) controlPoint1: CGPointMake(66.04, 48.87) controlPoint2: CGPointMake(66.12, 48.73)];
  239. [bezier4Path addCurveToPoint: CGPointMake(65.94, 48.14) controlPoint1: CGPointMake(66.12, 48.37) controlPoint2: CGPointMake(66.04, 48.22)];
  240. [bezier4Path addCurveToPoint: CGPointMake(65.41, 48) controlPoint1: CGPointMake(65.82, 48.04) controlPoint2: CGPointMake(65.67, 48)];
  241. [bezier4Path addCurveToPoint: CGPointMake(62.23, 46.05) controlPoint1: CGPointMake(64, 47.95) controlPoint2: CGPointMake(62.23, 48.04)];
  242. [bezier4Path addCurveToPoint: CGPointMake(64.39, 44.17) controlPoint1: CGPointMake(62.23, 45.14) controlPoint2: CGPointMake(62.81, 44.17)];
  243. [bezier4Path addLineToPoint: CGPointMake(67.39, 44.17)];
  244. [bezier4Path addLineToPoint: CGPointMake(67.39, 42.92)];
  245. [bezier4Path addLineToPoint: CGPointMake(64.6, 42.92)];
  246. [bezier4Path addCurveToPoint: CGPointMake(62.72, 43.44) controlPoint1: CGPointMake(63.76, 42.92) controlPoint2: CGPointMake(63.15, 43.12)];
  247. [bezier4Path addLineToPoint: CGPointMake(62.72, 42.92)];
  248. [bezier4Path addLineToPoint: CGPointMake(58.6, 42.92)];
  249. [bezier4Path addCurveToPoint: CGPointMake(56.8, 43.44) controlPoint1: CGPointMake(57.94, 42.92) controlPoint2: CGPointMake(57.17, 43.09)];
  250. [bezier4Path addLineToPoint: CGPointMake(56.8, 42.92)];
  251. [bezier4Path addLineToPoint: CGPointMake(49.44, 42.92)];
  252. [bezier4Path addLineToPoint: CGPointMake(49.44, 43.44)];
  253. [bezier4Path addCurveToPoint: CGPointMake(47.41, 42.92) controlPoint1: CGPointMake(48.86, 43.02) controlPoint2: CGPointMake(47.87, 42.92)];
  254. [bezier4Path addLineToPoint: CGPointMake(42.56, 42.92)];
  255. [bezier4Path addLineToPoint: CGPointMake(42.56, 43.44)];
  256. [bezier4Path addCurveToPoint: CGPointMake(40.44, 42.92) controlPoint1: CGPointMake(42.1, 42.99) controlPoint2: CGPointMake(41.07, 42.92)];
  257. [bezier4Path addLineToPoint: CGPointMake(35.01, 42.92)];
  258. [bezier4Path addLineToPoint: CGPointMake(33.77, 44.27)];
  259. [bezier4Path addLineToPoint: CGPointMake(32.61, 42.92)];
  260. [bezier4Path addLineToPoint: CGPointMake(24.49, 42.92)];
  261. [bezier4Path addLineToPoint: CGPointMake(24.49, 51.71)];
  262. [bezier4Path addLineToPoint: CGPointMake(32.45, 51.71)];
  263. [bezier4Path addLineToPoint: CGPointMake(33.73, 50.35)];
  264. [bezier4Path addLineToPoint: CGPointMake(34.94, 51.71)];
  265. [bezier4Path addLineToPoint: CGPointMake(39.84, 51.72)];
  266. [bezier4Path addLineToPoint: CGPointMake(39.84, 49.65)];
  267. [bezier4Path addLineToPoint: CGPointMake(40.33, 49.65)];
  268. [bezier4Path addCurveToPoint: CGPointMake(42.42, 49.34) controlPoint1: CGPointMake(40.98, 49.65) controlPoint2: CGPointMake(41.75, 49.63)];
  269. [bezier4Path addLineToPoint: CGPointMake(42.42, 51.71)];
  270. [bezier4Path addLineToPoint: CGPointMake(46.47, 51.71)];
  271. [bezier4Path addLineToPoint: CGPointMake(46.47, 49.42)];
  272. [bezier4Path addLineToPoint: CGPointMake(46.67, 49.42)];
  273. [bezier4Path addCurveToPoint: CGPointMake(46.94, 49.68) controlPoint1: CGPointMake(46.92, 49.42) controlPoint2: CGPointMake(46.94, 49.43)];
  274. [bezier4Path addLineToPoint: CGPointMake(46.94, 51.71)];
  275. [bezier4Path addLineToPoint: CGPointMake(59.23, 51.71)];
  276. [bezier4Path addCurveToPoint: CGPointMake(61.28, 51.15) controlPoint1: CGPointMake(60.01, 51.71) controlPoint2: CGPointMake(60.83, 51.51)];
  277. [bezier4Path addLineToPoint: CGPointMake(61.28, 51.71)];
  278. [bezier4Path addLineToPoint: CGPointMake(65.18, 51.71)];
  279. [bezier4Path addCurveToPoint: CGPointMake(67.39, 51.31) controlPoint1: CGPointMake(65.99, 51.71) controlPoint2: CGPointMake(66.78, 51.6)];
  280. [bezier4Path addLineToPoint: CGPointMake(67.39, 49.67)];
  281. [bezier4Path closePath];
  282. [bezier4Path moveToPoint: CGPointMake(61.38, 47.15)];
  283. [bezier4Path addCurveToPoint: CGPointMake(61.83, 48.48) controlPoint1: CGPointMake(61.68, 47.46) controlPoint2: CGPointMake(61.83, 47.84)];
  284. [bezier4Path addCurveToPoint: CGPointMake(59.47, 50.47) controlPoint1: CGPointMake(61.83, 49.84) controlPoint2: CGPointMake(60.99, 50.47)];
  285. [bezier4Path addLineToPoint: CGPointMake(56.54, 50.47)];
  286. [bezier4Path addLineToPoint: CGPointMake(56.54, 49.12)];
  287. [bezier4Path addLineToPoint: CGPointMake(59.46, 49.12)];
  288. [bezier4Path addCurveToPoint: CGPointMake(60.07, 48.97) controlPoint1: CGPointMake(59.75, 49.12) controlPoint2: CGPointMake(59.95, 49.08)];
  289. [bezier4Path addCurveToPoint: CGPointMake(60.25, 48.56) controlPoint1: CGPointMake(60.18, 48.87) controlPoint2: CGPointMake(60.25, 48.73)];
  290. [bezier4Path addCurveToPoint: CGPointMake(60.07, 48.14) controlPoint1: CGPointMake(60.25, 48.37) controlPoint2: CGPointMake(60.17, 48.22)];
  291. [bezier4Path addCurveToPoint: CGPointMake(59.53, 48) controlPoint1: CGPointMake(59.95, 48.04) controlPoint2: CGPointMake(59.79, 48)];
  292. [bezier4Path addCurveToPoint: CGPointMake(56.36, 46.05) controlPoint1: CGPointMake(58.12, 47.95) controlPoint2: CGPointMake(56.36, 48.04)];
  293. [bezier4Path addCurveToPoint: CGPointMake(58.51, 44.17) controlPoint1: CGPointMake(56.36, 45.14) controlPoint2: CGPointMake(56.94, 44.17)];
  294. [bezier4Path addLineToPoint: CGPointMake(61.53, 44.17)];
  295. [bezier4Path addLineToPoint: CGPointMake(61.53, 45.51)];
  296. [bezier4Path addLineToPoint: CGPointMake(58.77, 45.51)];
  297. [bezier4Path addCurveToPoint: CGPointMake(58.17, 45.63) controlPoint1: CGPointMake(58.49, 45.51) controlPoint2: CGPointMake(58.32, 45.53)];
  298. [bezier4Path addCurveToPoint: CGPointMake(57.94, 46.08) controlPoint1: CGPointMake(58, 45.73) controlPoint2: CGPointMake(57.94, 45.88)];
  299. [bezier4Path addCurveToPoint: CGPointMake(58.27, 46.55) controlPoint1: CGPointMake(57.94, 46.32) controlPoint2: CGPointMake(58.08, 46.48)];
  300. [bezier4Path addCurveToPoint: CGPointMake(58.85, 46.62) controlPoint1: CGPointMake(58.43, 46.61) controlPoint2: CGPointMake(58.6, 46.62)];
  301. [bezier4Path addLineToPoint: CGPointMake(59.67, 46.64)];
  302. [bezier4Path addCurveToPoint: CGPointMake(61.38, 47.15) controlPoint1: CGPointMake(60.48, 46.67) controlPoint2: CGPointMake(61.04, 46.81)];
  303. [bezier4Path closePath];
  304. [bezier4Path moveToPoint: CGPointMake(47.8, 46.76)];
  305. [bezier4Path addCurveToPoint: CGPointMake(47.06, 46.89) controlPoint1: CGPointMake(47.6, 46.88) controlPoint2: CGPointMake(47.35, 46.89)];
  306. [bezier4Path addLineToPoint: CGPointMake(45.23, 46.89)];
  307. [bezier4Path addLineToPoint: CGPointMake(45.23, 45.48)];
  308. [bezier4Path addLineToPoint: CGPointMake(47.09, 45.48)];
  309. [bezier4Path addCurveToPoint: CGPointMake(47.8, 45.59) controlPoint1: CGPointMake(47.35, 45.48) controlPoint2: CGPointMake(47.62, 45.49)];
  310. [bezier4Path addCurveToPoint: CGPointMake(48.11, 46.16) controlPoint1: CGPointMake(48, 45.7) controlPoint2: CGPointMake(48.11, 45.89)];
  311. [bezier4Path addCurveToPoint: CGPointMake(47.8, 46.76) controlPoint1: CGPointMake(48.11, 46.43) controlPoint2: CGPointMake(48, 46.64)];
  312. [bezier4Path closePath];
  313. [bezier4Path moveToPoint: CGPointMake(48.71, 47.55)];
  314. [bezier4Path addCurveToPoint: CGPointMake(49.45, 48.08) controlPoint1: CGPointMake(49.05, 47.67) controlPoint2: CGPointMake(49.32, 47.89)];
  315. [bezier4Path addCurveToPoint: CGPointMake(49.7, 49.23) controlPoint1: CGPointMake(49.66, 48.38) controlPoint2: CGPointMake(49.7, 48.67)];
  316. [bezier4Path addLineToPoint: CGPointMake(49.7, 50.47)];
  317. [bezier4Path addLineToPoint: CGPointMake(48.19, 50.47)];
  318. [bezier4Path addLineToPoint: CGPointMake(48.19, 49.68)];
  319. [bezier4Path addCurveToPoint: CGPointMake(47.95, 48.45) controlPoint1: CGPointMake(48.19, 49.3) controlPoint2: CGPointMake(48.23, 48.75)];
  320. [bezier4Path addCurveToPoint: CGPointMake(46.84, 48.17) controlPoint1: CGPointMake(47.73, 48.22) controlPoint2: CGPointMake(47.39, 48.17)];
  321. [bezier4Path addLineToPoint: CGPointMake(45.23, 48.17)];
  322. [bezier4Path addLineToPoint: CGPointMake(45.23, 50.47)];
  323. [bezier4Path addLineToPoint: CGPointMake(43.72, 50.47)];
  324. [bezier4Path addLineToPoint: CGPointMake(43.72, 44.17)];
  325. [bezier4Path addLineToPoint: CGPointMake(47.2, 44.17)];
  326. [bezier4Path addCurveToPoint: CGPointMake(49.01, 44.48) controlPoint1: CGPointMake(47.96, 44.17) controlPoint2: CGPointMake(48.52, 44.21)];
  327. [bezier4Path addCurveToPoint: CGPointMake(49.78, 45.87) controlPoint1: CGPointMake(49.48, 44.76) controlPoint2: CGPointMake(49.78, 45.16)];
  328. [bezier4Path addCurveToPoint: CGPointMake(48.71, 47.55) controlPoint1: CGPointMake(49.78, 46.88) controlPoint2: CGPointMake(49.11, 47.39)];
  329. [bezier4Path closePath];
  330. [bezier4Path moveToPoint: CGPointMake(50.61, 44.17)];
  331. [bezier4Path addLineToPoint: CGPointMake(55.64, 44.17)];
  332. [bezier4Path addLineToPoint: CGPointMake(55.64, 45.48)];
  333. [bezier4Path addLineToPoint: CGPointMake(52.11, 45.48)];
  334. [bezier4Path addLineToPoint: CGPointMake(52.11, 46.62)];
  335. [bezier4Path addLineToPoint: CGPointMake(55.55, 46.62)];
  336. [bezier4Path addLineToPoint: CGPointMake(55.55, 47.91)];
  337. [bezier4Path addLineToPoint: CGPointMake(52.11, 47.91)];
  338. [bezier4Path addLineToPoint: CGPointMake(52.11, 49.16)];
  339. [bezier4Path addLineToPoint: CGPointMake(55.64, 49.17)];
  340. [bezier4Path addLineToPoint: CGPointMake(55.64, 50.47)];
  341. [bezier4Path addLineToPoint: CGPointMake(50.61, 50.47)];
  342. [bezier4Path addLineToPoint: CGPointMake(50.61, 44.17)];
  343. [bezier4Path closePath];
  344. [bezier4Path moveToPoint: CGPointMake(40.46, 47.08)];
  345. [bezier4Path addLineToPoint: CGPointMake(38.51, 47.08)];
  346. [bezier4Path addLineToPoint: CGPointMake(38.51, 45.48)];
  347. [bezier4Path addLineToPoint: CGPointMake(40.48, 45.48)];
  348. [bezier4Path addCurveToPoint: CGPointMake(41.4, 46.25) controlPoint1: CGPointMake(41.02, 45.48) controlPoint2: CGPointMake(41.4, 45.7)];
  349. [bezier4Path addCurveToPoint: CGPointMake(40.46, 47.08) controlPoint1: CGPointMake(41.4, 46.8) controlPoint2: CGPointMake(41.04, 47.08)];
  350. [bezier4Path closePath];
  351. [bezier4Path moveToPoint: CGPointMake(37.02, 49.9)];
  352. [bezier4Path addLineToPoint: CGPointMake(34.71, 47.34)];
  353. [bezier4Path addLineToPoint: CGPointMake(37.02, 44.85)];
  354. [bezier4Path addLineToPoint: CGPointMake(37.02, 49.9)];
  355. [bezier4Path closePath];
  356. [bezier4Path moveToPoint: CGPointMake(31.05, 49.16)];
  357. [bezier4Path addLineToPoint: CGPointMake(27.35, 49.16)];
  358. [bezier4Path addLineToPoint: CGPointMake(27.35, 47.91)];
  359. [bezier4Path addLineToPoint: CGPointMake(30.65, 47.91)];
  360. [bezier4Path addLineToPoint: CGPointMake(30.65, 46.62)];
  361. [bezier4Path addLineToPoint: CGPointMake(27.35, 46.62)];
  362. [bezier4Path addLineToPoint: CGPointMake(27.35, 45.48)];
  363. [bezier4Path addLineToPoint: CGPointMake(31.12, 45.48)];
  364. [bezier4Path addLineToPoint: CGPointMake(32.77, 47.31)];
  365. [bezier4Path addLineToPoint: CGPointMake(31.05, 49.16)];
  366. [bezier4Path closePath];
  367. [bezier4Path moveToPoint: CGPointMake(43.01, 46.25)];
  368. [bezier4Path addCurveToPoint: CGPointMake(40.39, 48.36) controlPoint1: CGPointMake(43.01, 48) controlPoint2: CGPointMake(41.71, 48.36)];
  369. [bezier4Path addLineToPoint: CGPointMake(38.51, 48.36)];
  370. [bezier4Path addLineToPoint: CGPointMake(38.51, 50.47)];
  371. [bezier4Path addLineToPoint: CGPointMake(35.59, 50.47)];
  372. [bezier4Path addLineToPoint: CGPointMake(33.74, 48.39)];
  373. [bezier4Path addLineToPoint: CGPointMake(31.81, 50.47)];
  374. [bezier4Path addLineToPoint: CGPointMake(25.85, 50.47)];
  375. [bezier4Path addLineToPoint: CGPointMake(25.85, 44.17)];
  376. [bezier4Path addLineToPoint: CGPointMake(31.91, 44.17)];
  377. [bezier4Path addLineToPoint: CGPointMake(33.76, 46.24)];
  378. [bezier4Path addLineToPoint: CGPointMake(35.67, 44.17)];
  379. [bezier4Path addLineToPoint: CGPointMake(40.48, 44.17)];
  380. [bezier4Path addCurveToPoint: CGPointMake(43.01, 46.25) controlPoint1: CGPointMake(41.67, 44.17) controlPoint2: CGPointMake(43.01, 44.51)];
  381. [bezier4Path closePath];
  382. [fillColor2 setFill];
  383. [bezier4Path fill];
  384. //// Bezier 5 Drawing
  385. UIBezierPath* bezier5Path = [UIBezierPath bezierPath];
  386. [bezier5Path moveToPoint: CGPointMake(12.29, 65.13)];
  387. [bezier5Path addCurveToPoint: CGPointMake(10.13, 67.3) controlPoint1: CGPointMake(12.29, 66.33) controlPoint2: CGPointMake(11.38, 67.3)];
  388. [bezier5Path addCurveToPoint: CGPointMake(7.97, 65.13) controlPoint1: CGPointMake(8.88, 67.3) controlPoint2: CGPointMake(7.97, 66.33)];
  389. [bezier5Path addCurveToPoint: CGPointMake(10.13, 62.97) controlPoint1: CGPointMake(7.97, 63.94) controlPoint2: CGPointMake(8.88, 62.97)];
  390. [bezier5Path addCurveToPoint: CGPointMake(12.29, 65.13) controlPoint1: CGPointMake(11.38, 62.97) controlPoint2: CGPointMake(12.29, 63.94)];
  391. [bezier5Path closePath];
  392. [bezier5Path moveToPoint: CGPointMake(12.68, 65.13)];
  393. [bezier5Path addCurveToPoint: CGPointMake(10.13, 62.6) controlPoint1: CGPointMake(12.68, 63.73) controlPoint2: CGPointMake(11.54, 62.6)];
  394. [bezier5Path addCurveToPoint: CGPointMake(7.58, 65.13) controlPoint1: CGPointMake(8.72, 62.6) controlPoint2: CGPointMake(7.58, 63.73)];
  395. [bezier5Path addCurveToPoint: CGPointMake(10.13, 67.67) controlPoint1: CGPointMake(7.58, 66.54) controlPoint2: CGPointMake(8.72, 67.67)];
  396. [bezier5Path addCurveToPoint: CGPointMake(12.68, 65.13) controlPoint1: CGPointMake(11.54, 67.67) controlPoint2: CGPointMake(12.68, 66.54)];
  397. [bezier5Path closePath];
  398. [bezier5Path moveToPoint: CGPointMake(10.73, 64.61)];
  399. [bezier5Path addCurveToPoint: CGPointMake(10.37, 64.29) controlPoint1: CGPointMake(10.73, 64.31) controlPoint2: CGPointMake(10.52, 64.29)];
  400. [bezier5Path addLineToPoint: CGPointMake(9.66, 64.29)];
  401. [bezier5Path addLineToPoint: CGPointMake(9.66, 64.95)];
  402. [bezier5Path addLineToPoint: CGPointMake(10.32, 64.95)];
  403. [bezier5Path addCurveToPoint: CGPointMake(10.73, 64.61) controlPoint1: CGPointMake(10.54, 64.95) controlPoint2: CGPointMake(10.73, 64.9)];
  404. [bezier5Path closePath];
  405. [bezier5Path moveToPoint: CGPointMake(11.24, 66.29)];
  406. [bezier5Path addLineToPoint: CGPointMake(10.77, 66.29)];
  407. [bezier5Path addCurveToPoint: CGPointMake(10.7, 65.67) controlPoint1: CGPointMake(10.71, 66.11) controlPoint2: CGPointMake(10.7, 65.76)];
  408. [bezier5Path addCurveToPoint: CGPointMake(10.35, 65.32) controlPoint1: CGPointMake(10.7, 65.5) controlPoint2: CGPointMake(10.67, 65.32)];
  409. [bezier5Path addLineToPoint: CGPointMake(9.66, 65.32)];
  410. [bezier5Path addLineToPoint: CGPointMake(9.66, 66.29)];
  411. [bezier5Path addLineToPoint: CGPointMake(9.25, 66.29)];
  412. [bezier5Path addLineToPoint: CGPointMake(9.25, 63.92)];
  413. [bezier5Path addLineToPoint: CGPointMake(10.35, 63.92)];
  414. [bezier5Path addCurveToPoint: CGPointMake(11.15, 64.58) controlPoint1: CGPointMake(10.73, 63.92) controlPoint2: CGPointMake(11.15, 64.05)];
  415. [bezier5Path addCurveToPoint: CGPointMake(10.89, 65.12) controlPoint1: CGPointMake(11.15, 64.88) controlPoint2: CGPointMake(11.02, 65.02)];
  416. [bezier5Path addCurveToPoint: CGPointMake(11.11, 65.55) controlPoint1: CGPointMake(11, 65.18) controlPoint2: CGPointMake(11.09, 65.28)];
  417. [bezier5Path addLineToPoint: CGPointMake(11.12, 65.96)];
  418. [bezier5Path addCurveToPoint: CGPointMake(11.24, 66.16) controlPoint1: CGPointMake(11.13, 66.08) controlPoint2: CGPointMake(11.14, 66.1)];
  419. [bezier5Path addLineToPoint: CGPointMake(11.24, 66.29)];
  420. [bezier5Path closePath];
  421. [fillColor3 setFill];
  422. [bezier5Path fill];
  423. //// Cleanup
  424. CGGradientRelease(gradient);
  425. CGColorSpaceRelease(colorSpace);
  426. }
  427. @end