| 1 | /**************************************************************************** | 
| 2 | ** | 
| 3 | ** Copyright (C) 2016 The Qt Company Ltd. | 
| 4 | ** Contact: https://www.qt.io/licensing/ | 
| 5 | ** | 
| 6 | ** This file is part of the test suite of the Qt Toolkit. | 
| 7 | ** | 
| 8 | ** $QT_BEGIN_LICENSE:GPL-EXCEPT$ | 
| 9 | ** Commercial License Usage | 
| 10 | ** Licensees holding valid commercial Qt licenses may use this file in | 
| 11 | ** accordance with the commercial license agreement provided with the | 
| 12 | ** Software or, alternatively, in accordance with the terms contained in | 
| 13 | ** a written agreement between you and The Qt Company. For licensing terms | 
| 14 | ** and conditions see https://www.qt.io/terms-conditions. For further | 
| 15 | ** information use the contact form at https://www.qt.io/contact-us. | 
| 16 | ** | 
| 17 | ** GNU General Public License Usage | 
| 18 | ** Alternatively, this file may be used under the terms of the GNU | 
| 19 | ** General Public License version 3 as published by the Free Software | 
| 20 | ** Foundation with exceptions as appearing in the file LICENSE.GPL3-EXCEPT | 
| 21 | ** included in the packaging of this file. Please review the following | 
| 22 | ** information to ensure the GNU General Public License requirements will | 
| 23 | ** be met: https://www.gnu.org/licenses/gpl-3.0.html. | 
| 24 | ** | 
| 25 | ** $QT_END_LICENSE$ | 
| 26 | ** | 
| 27 | ****************************************************************************/ | 
| 28 | #include "paths.h" | 
| 29 |  | 
| 30 | QPainterPath Paths::rect() | 
| 31 | { | 
| 32 |     QPainterPath path; | 
| 33 |  | 
| 34 |     path.moveTo(x: 45.885571, y: 62.857143); | 
| 35 |     path.lineTo(x: 154.11442, y: 62.857143); | 
| 36 |     path.cubicTo(ctrlPt1x: 162.1236, ctrlPt1y: 62.857143, | 
| 37 |                  ctrlPt2x: 168.57142, ctrlPt2y: 70.260744, | 
| 38 |                  endPtx: 168.57142, endPty: 79.457144); | 
| 39 |     path.lineTo(x: 168.57142, y: 123.4); | 
| 40 |     path.cubicTo(ctrlPt1x: 168.57142, ctrlPt1y: 132.5964, | 
| 41 |                  ctrlPt2x: 162.1236,  ctrlPt2y: 140, | 
| 42 |                  endPtx: 154.11442, endPty: 140); | 
| 43 |     path.lineTo(x: 45.885571, y: 140); | 
| 44 |     path.cubicTo(ctrlPt1x: 37.876394, ctrlPt1y: 140, | 
| 45 |                  ctrlPt2x: 31.428572, ctrlPt2y: 132.5964, | 
| 46 |                  endPtx: 31.428572, endPty: 123.4); | 
| 47 |     path.lineTo(x: 31.428572, y: 79.457144); | 
| 48 |     path.cubicTo(ctrlPt1x: 31.428572,ctrlPt1y: 70.260744, | 
| 49 |                  ctrlPt2x: 37.876394,ctrlPt2y: 62.857143, | 
| 50 |                  endPtx: 45.885571,endPty: 62.857143); | 
| 51 |     path.closeSubpath(); | 
| 52 |     return path; | 
| 53 | } | 
| 54 |  | 
| 55 | QPainterPath Paths::rect6() | 
| 56 | { | 
| 57 |     QPainterPath path; | 
| 58 |  | 
| 59 |     path.moveTo(x: 45.885571, y: 62.857143); | 
| 60 |     path.lineTo(x: 154.11442, y: 62.857143); | 
| 61 |     path.cubicTo(ctrlPt1x: 162.1236, ctrlPt1y: 62.857143, | 
| 62 |                  ctrlPt2x: 168.57142, ctrlPt2y: 70.260744, | 
| 63 |                  endPtx: 168.57142, endPty: 79.457144); | 
| 64 |     path.lineTo(x: 168.57142, y: 123.4); | 
| 65 |     path.cubicTo(ctrlPt1x: 168.57142, ctrlPt1y: 132.5964, | 
| 66 |                  ctrlPt2x: 162.1236,  ctrlPt2y: 140, | 
| 67 |                  endPtx: 154.11442, endPty: 140); | 
| 68 |     path.lineTo(x: 45.885571, y: 140); | 
| 69 |     path.closeSubpath(); | 
| 70 |     return path; | 
| 71 | } | 
| 72 |  | 
| 73 |  | 
| 74 | QPainterPath Paths::heart() | 
| 75 | { | 
| 76 |     QPainterPath path; | 
| 77 |     path.moveTo(x: 263.41570, y: 235.14588); | 
| 78 |     path.cubicTo(ctrlPt1x: 197.17570,ctrlPt1y: 235.14588, | 
| 79 |                  ctrlPt2x: 143.41575,ctrlPt2y: 288.90587, | 
| 80 |                  endPtx: 143.41575,endPty: 355.14588); | 
| 81 |     path.cubicTo(ctrlPt1x: 143.41575, ctrlPt1y: 489.90139, | 
| 82 |                  ctrlPt2x: 279.34890, ctrlPt2y: 525.23318, | 
| 83 |                  endPtx: 371.97820, endPty: 658.45392); | 
| 84 |     path.cubicTo(ctrlPt1x: 459.55244,ctrlPt1y: 526.05056, | 
| 85 |                  ctrlPt2x: 600.54070,ctrlPt2y: 485.59932, | 
| 86 |                  endPtx: 600.54070,endPty: 355.14588); | 
| 87 |     path.cubicTo(ctrlPt1x: 600.54070,ctrlPt1y: 288.90588, ctrlPt2x: 546.78080,ctrlPt2y: 235.14587, endPtx: 480.54070,endPty: 235.14588); | 
| 88 |     path.cubicTo(ctrlPt1x: 432.49280,ctrlPt1y: 235.14588, ctrlPt2x: 391.13910,ctrlPt2y: 263.51631, endPtx: 371.97820,endPty: 304.33338); | 
| 89 |     path.cubicTo(ctrlPt1x: 352.81740,ctrlPt1y: 263.51630, ctrlPt2x: 311.46370,ctrlPt2y: 235.14587, endPtx: 263.41570,endPty: 235.14588); | 
| 90 |     path.closeSubpath(); | 
| 91 |     return path; | 
| 92 | } | 
| 93 |  | 
| 94 |  | 
| 95 | QPainterPath Paths::body() | 
| 96 | { | 
| 97 |     QPainterPath path; | 
| 98 |     path.moveTo(x: 62.500000,y: 15.531250); | 
| 99 |     path.cubicTo(ctrlPt1x: 48.633197,ctrlPt1y: 15.531250, ctrlPt2x: 37.374999,ctrlPt2y: 26.789445, endPtx: 37.375000,endPty: 40.656250); | 
| 100 |     path.cubicTo(ctrlPt1x: 37.375000,ctrlPt1y: 54.523053, ctrlPt2x: 48.633195,ctrlPt2y: 65.781252, endPtx: 62.500000,endPty: 65.781250); | 
| 101 |     path.cubicTo(ctrlPt1x: 76.366803,ctrlPt1y: 65.781250, ctrlPt2x: 87.624998,ctrlPt2y: 54.523052, endPtx: 87.625000,endPty: 40.656250); | 
| 102 |     path.cubicTo(ctrlPt1x: 87.625000,ctrlPt1y: 26.789447, ctrlPt2x: 76.366802,ctrlPt2y: 15.531250, endPtx: 62.500000,endPty: 15.531250); | 
| 103 |     path.closeSubpath(); | 
| 104 |     path.moveTo(x: 54.437500,y: 65.812500); | 
| 105 |     path.cubicTo(ctrlPt1x: 35.184750,ctrlPt1y: 65.812499, ctrlPt2x: 19.687500,ctrlPt2y: 81.341002, endPtx: 19.687500,endPty: 100.59375); | 
| 106 |     path.lineTo(x: 19.687500,y: 155.68750); | 
| 107 |     path.cubicTo(ctrlPt1x: 19.687501,ctrlPt1y: 167.50351, ctrlPt2x: 25.539122,ctrlPt2y: 177.88308, endPtx: 34.500000,endPty: 184.15625); | 
| 108 |     path.lineTo(x: 34.500000,y: 254.03125); | 
| 109 |     path.cubicTo(ctrlPt1x: 34.499999,ctrlPt1y: 257.03306, ctrlPt2x: 46.990615,ctrlPt2y: 259.43748, endPtx: 62.500000,endPty: 259.43750); | 
| 110 |     path.cubicTo(ctrlPt1x: 78.009381,ctrlPt1y: 259.43751, ctrlPt2x: 90.468750,ctrlPt2y: 257.03307, endPtx: 90.468750,endPty: 254.03125); | 
| 111 |     path.lineTo(x: 90.468750,y: 184.15625); | 
| 112 |     path.cubicTo(ctrlPt1x: 99.429633,ctrlPt1y: 177.88307, ctrlPt2x: 105.28125,ctrlPt2y: 167.50352, endPtx: 105.28125,endPty: 155.68750); | 
| 113 |     path.lineTo(x: 105.28125,y: 100.59375); | 
| 114 |     path.cubicTo(ctrlPt1x: 105.28125,ctrlPt1y: 81.341000, ctrlPt2x: 89.784000,ctrlPt2y: 65.812500, endPtx: 70.531250,endPty: 65.812500); | 
| 115 |     path.lineTo(x: 54.437500,y: 65.812500); | 
| 116 |     path.closeSubpath(); | 
| 117 |  | 
| 118 |     return path; | 
| 119 | } | 
| 120 |  | 
| 121 |  | 
| 122 | QPainterPath Paths::mailbox() | 
| 123 | { | 
| 124 |     QPainterPath path; | 
| 125 |     path.moveTo(x: 355.22951,y: 136.82424); | 
| 126 |     path.lineTo(x: 332.03629,y: 112.56585); | 
| 127 |     path.lineTo(x: 325.71086,y: 57.501867); | 
| 128 |     path.cubicTo(ctrlPt1x: 325.71086,ctrlPt1y: 57.501867, ctrlPt2x: 410.12308,ctrlPt2y: 19.428758, endPtx: 427.45202,endPty: 29.094560); | 
| 129 |     path.cubicTo(ctrlPt1x: 444.78096,ctrlPt1y: 38.760366, ctrlPt2x: 443.62570,ctrlPt2y: 54.289660, endPtx: 443.62570,endPty: 54.289660); | 
| 130 |     path.lineTo(x: 443.62570,y: 100.11509); | 
| 131 |     path.lineTo(x: 355.22951,y: 136.82424); | 
| 132 |     path.closeSubpath(); | 
| 133 |  | 
| 134 |     return path; | 
| 135 | } | 
| 136 |  | 
| 137 |  | 
| 138 | QPainterPath Paths::deer() | 
| 139 | { | 
| 140 |     QPainterPath path; | 
| 141 |  | 
| 142 |     path.moveTo(x: 39.88,y: 31.658); | 
| 143 |     path.cubicTo(ctrlPt1x: 35.632,ctrlPt1y: 31.658, ctrlPt2x: 31.398,ctrlPt2y: 31.004, endPtx: 27.871,endPty: 32.82); | 
| 144 |     path.cubicTo(ctrlPt1x: 25.015,ctrlPt1y: 34.29, ctrlPt2x: 19.608,ctrlPt2y: 34.158, endPtx: 16.297,endPty: 34.158); | 
| 145 |     path.cubicTo(ctrlPt1x: 14.722,ctrlPt1y: 34.158, ctrlPt2x: 17.755,ctrlPt2y: 37.718, endPtx: 17.709,endPty: 38.922); | 
| 146 |     path.cubicTo(ctrlPt1x: 17.578,ctrlPt1y: 42.396, ctrlPt2x: 24.612,ctrlPt2y: 43.15, endPtx: 26.755,endPty: 44.058); | 
| 147 |     path.cubicTo(ctrlPt1x: 30.062,ctrlPt1y: 45.46, ctrlPt2x: 28.682,ctrlPt2y: 47.701, endPtx: 28.963,endPty: 50.574); | 
| 148 |     path.cubicTo(ctrlPt1x: 29.715,ctrlPt1y: 58.243, ctrlPt2x: 26.887,ctrlPt2y: 63.745, endPtx: 24.182,endPty: 70.589); | 
| 149 |     path.cubicTo(ctrlPt1x: 23.365,ctrlPt1y: 72.657, ctrlPt2x: 21.772,ctrlPt2y: 75.56, endPtx: 21.972,endPty: 77.866); | 
| 150 |     path.cubicTo(ctrlPt1x: 22.333,ctrlPt1y: 82.029, ctrlPt2x: 15.803,ctrlPt2y: 77.207, endPtx: 13.894,endPty: 76.535); | 
| 151 |     path.cubicTo(ctrlPt1x: 10.977,ctrlPt1y: 75.508, ctrlPt2x: 5.507,ctrlPt2y: 74.071, endPtx: 2.424,endPty: 75.331); | 
| 152 |     path.cubicTo(ctrlPt1x: -1.532,ctrlPt1y: 76.947, ctrlPt2x: 0.076,ctrlPt2y: 80.491, endPtx: 2.169,endPty: 82.806); | 
| 153 |     path.cubicTo(ctrlPt1x: 6.17,ctrlPt1y: 87.234, ctrlPt2x: 2.703,ctrlPt2y: 90.713, endPtx: 3.895,endPty: 95.363); | 
| 154 |     path.cubicTo(ctrlPt1x: 4.321,ctrlPt1y: 97.026, ctrlPt2x: 11.682,ctrlPt2y: 104.683, endPtx: 12.858,endPty: 103.668); | 
| 155 |     path.cubicTo(ctrlPt1x: 16.706,ctrlPt1y: 100.347, ctrlPt2x: 11.464,ctrlPt2y: 98.692, endPtx: 10.105,endPty: 96.164); | 
| 156 |     path.cubicTo(ctrlPt1x: 9.487,ctrlPt1y: 95.015, ctrlPt2x: 8.616,ctrlPt2y: 83.742, endPtx: 8.866,endPty: 83.759); | 
| 157 |     path.cubicTo(ctrlPt1x: 10.018,ctrlPt1y: 83.837, ctrlPt2x: 12.591,ctrlPt2y: 85.867, endPtx: 13.671,endPty: 86.392); | 
| 158 |     path.cubicTo(ctrlPt1x: 16.889,ctrlPt1y: 87.954, ctrlPt2x: 20.066,ctrlPt2y: 89.63, endPtx: 22.963,endPty: 91.741); | 
| 159 |     path.cubicTo(ctrlPt1x: 29.156,ctrlPt1y: 94.47, ctrlPt2x: 35.543,ctrlPt2y: 96.965, endPtx: 42.102,endPty: 98.676); | 
| 160 |     path.cubicTo(ctrlPt1x: 51.085,ctrlPt1y: 101.02, ctrlPt2x: 59.407,ctrlPt2y: 102.003, endPtx: 68.009,endPty: 106.005); | 
| 161 |     path.cubicTo(ctrlPt1x: 72.92,ctrlPt1y: 108.289, ctrlPt2x: 72.05,ctrlPt2y: 113.282, endPtx: 75.744,endPty: 117.004); | 
| 162 |     path.cubicTo(ctrlPt1x: 79.422,ctrlPt1y: 120.709, ctrlPt2x: 84.733,ctrlPt2y: 123.053, endPtx: 88.978,endPty: 126.053); | 
| 163 |     path.cubicTo(ctrlPt1x: 92.402,ctrlPt1y: 128.473, ctrlPt2x: 95.422,ctrlPt2y: 132.308, endPtx: 97.334,endPty: 135.998); | 
| 164 |     path.cubicTo(ctrlPt1x: 99.551,ctrlPt1y: 140.279, ctrlPt2x: 99.071,ctrlPt2y: 146.004, endPtx: 99.838,endPty: 150.674); | 
| 165 |     path.cubicTo(ctrlPt1x: 100.369,ctrlPt1y: 153.91, ctrlPt2x: 104.378,ctrlPt2y: 156.321, endPtx: 106.302,endPty: 158.859); | 
| 166 |     path.cubicTo(ctrlPt1x: 110.471,ctrlPt1y: 164.355, ctrlPt2x: 109.86,ctrlPt2y: 155.112, endPtx: 108.163,endPty: 154.412); | 
| 167 |     path.cubicTo(ctrlPt1x: 104.97,ctrlPt1y: 153.094, ctrlPt2x: 103.991,ctrlPt2y: 146.625, endPtx: 103.812,endPty: 143.439); | 
| 168 |     path.cubicTo(ctrlPt1x: 103.525,ctrlPt1y: 138.336, ctrlPt2x: 105.568,ctrlPt2y: 134.331, endPtx: 101.918,endPty: 130.346); | 
| 169 |     path.cubicTo(ctrlPt1x: 95.104,ctrlPt1y: 122.907, ctrlPt2x: 89.488,ctrlPt2y: 114.182, endPtx: 94.711,endPty: 103.742); | 
| 170 |     path.cubicTo(ctrlPt1x: 96.889,ctrlPt1y: 99.388, ctrlPt2x: 91.191,ctrlPt2y: 95.497, endPtx: 96.94,endPty: 94.368); | 
| 171 |     path.cubicTo(ctrlPt1x: 99.551,ctrlPt1y: 93.856, ctrlPt2x: 102.49,ctrlPt2y: 94.367, endPtx: 104.326,endPty: 92.034); | 
| 172 |     path.cubicTo(ctrlPt1x: 106.639,ctrlPt1y: 89.095, ctrlPt2x: 105.063,ctrlPt2y: 85.343, endPtx: 102.943,endPty: 82.798); | 
| 173 |     path.cubicTo(ctrlPt1x: 102.686,ctrlPt1y: 82.417, ctrlPt2x: 102.359,ctrlPt2y: 82.121, endPtx: 101.962,endPty: 81.909); | 
| 174 |     path.cubicTo(ctrlPt1x: 102.331,ctrlPt1y: 81.909, ctrlPt2x: 101.923,ctrlPt2y: 86.98, endPtx: 100.981,endPty: 87.628); | 
| 175 |     path.cubicTo(ctrlPt1x: 98.868,ctrlPt1y: 89.082, ctrlPt2x: 95.569,ctrlPt2y: 91.586, endPtx: 92.88,endPty: 91.672); | 
| 176 |     path.cubicTo(ctrlPt1x: 90.569,ctrlPt1y: 91.745, ctrlPt2x: 86.738,ctrlPt2y: 89.184, endPtx: 85.212,endPty: 87.658); | 
| 177 |     path.cubicTo(ctrlPt1x: 84.092,ctrlPt1y: 86.538, ctrlPt2x: 80.176,ctrlPt2y: 86.157, endPtx: 78.598,endPty: 85.83); | 
| 178 |     path.cubicTo(ctrlPt1x: 74.737,ctrlPt1y: 85.031, ctrlPt2x: 71.741,ctrlPt2y: 84.326, endPtx: 68.012,endPty: 82.806); | 
| 179 |     path.cubicTo(ctrlPt1x: 63.318,ctrlPt1y: 80.893, ctrlPt2x: 58.687,ctrlPt2y: 78.672, endPtx: 54.555,endPty: 75.71); | 
| 180 |     path.cubicTo(ctrlPt1x: 44.573,ctrlPt1y: 68.555, ctrlPt2x: 42.755,ctrlPt2y: 56.146, endPtx: 44.022,endPty: 44.495); | 
| 181 |     path.cubicTo(ctrlPt1x: 44.295,ctrlPt1y: 41.987, ctrlPt2x: 43.169,ctrlPt2y: 38.057, endPtx: 44.617,endPty: 35.915); | 
| 182 |     path.cubicTo(ctrlPt1x: 44.961,ctrlPt1y: 35.406, ctrlPt2x: 46.52,ctrlPt2y: 35.553, endPtx: 47.119,endPty: 35.024); | 
| 183 |     path.cubicTo(ctrlPt1x: 47.882,ctrlPt1y: 34.35, ctrlPt2x: 49.574,ctrlPt2y: 31.822, endPtx: 49.878,endPty: 30.792); | 
| 184 |     path.cubicTo(ctrlPt1x: 51.126,ctrlPt1y: 26.569, ctrlPt2x: 44.36,ctrlPt2y: 32.002, endPtx: 45.336,endPty: 31.938); | 
| 185 |     path.cubicTo(ctrlPt1x: 43.861,ctrlPt1y: 32.036, ctrlPt2x: 47.011,ctrlPt2y: 22.934, endPtx: 47.191,endPty: 22.574); | 
| 186 |     path.cubicTo(ctrlPt1x: 47.555,ctrlPt1y: 21.846, ctrlPt2x: 52.489,ctrlPt2y: 13.123, endPtx: 49.511,endPty: 13.222); | 
| 187 |     path.cubicTo(ctrlPt1x: 47.643,ctrlPt1y: 13.284, ctrlPt2x: 48.563,ctrlPt2y: 18.667, endPtx: 46.354,endPty: 18.227); | 
| 188 |     path.cubicTo(ctrlPt1x: 43.964,ctrlPt1y: 17.751, ctrlPt2x: 40.522,ctrlPt2y: 11.396, endPtx: 41.566,endPty: 9.011); | 
| 189 |     path.cubicTo(ctrlPt1x: 43.4,ctrlPt1y: 4.819, ctrlPt2x: 39.743,ctrlPt2y: 3.905, endPtx: 39.214,endPty: 7.564); | 
| 190 |     path.cubicTo(ctrlPt1x: 39.112,ctrlPt1y: 8.269, ctrlPt2x: 40.893,ctrlPt2y: 13.438, endPtx: 38.159,endPty: 12.665); | 
| 191 |     path.cubicTo(ctrlPt1x: 35.335,ctrlPt1y: 11.866, ctrlPt2x: 35.748,ctrlPt2y: -0.125, endPtx: 34.38,endPty: -8.0352391e-15); | 
| 192 |     path.cubicTo(ctrlPt1x: 31.991,ctrlPt1y: 0.219, ctrlPt2x: 34.074,ctrlPt2y: 10.836, endPtx: 33.361,endPty: 12.176); | 
| 193 |     path.cubicTo(ctrlPt1x: 33.144,ctrlPt1y: 12.584, ctrlPt2x: 29.68,ctrlPt2y: 8.66, endPtx: 29.459,endPty: 7.718); | 
| 194 |     path.cubicTo(ctrlPt1x: 28.48,ctrlPt1y: 3.558, ctrlPt2x: 28.031,ctrlPt2y: 5.106, endPtx: 26.87,endPty: 7.752); | 
| 195 |     path.cubicTo(ctrlPt1x: 25.333,ctrlPt1y: 11.254, ctrlPt2x: 37.159,ctrlPt2y: 17.423, endPtx: 39.292,endPty: 18.663); | 
| 196 |     path.cubicTo(ctrlPt1x: 40.993,ctrlPt1y: 19.651, ctrlPt2x: 42.39,ctrlPt2y: 20.504, endPtx: 42.973,endPty: 22.48); | 
| 197 |     path.cubicTo(ctrlPt1x: 43.482,ctrlPt1y: 24.205, ctrlPt2x: 44.098,ctrlPt2y: 26.568, endPtx: 42.926,endPty: 28.191); | 
| 198 |     path.cubicTo(ctrlPt1x: 42.092,ctrlPt1y: 29.346, ctrlPt2x: 39.88,ctrlPt2y: 29.982, endPtx: 39.88,endPty: 31.658); | 
| 199 |     return path; | 
| 200 | } | 
| 201 |  | 
| 202 |  | 
| 203 | QPainterPath Paths::fire() | 
| 204 | { | 
| 205 |     QPainterPath path; | 
| 206 |  | 
| 207 |     path.moveTo(x: 362.83759,y: 116.70426); | 
| 208 |     path.cubicTo(ctrlPt1x: 342.56574,ctrlPt1y: 131.59686, ctrlPt2x: 300.71403,ctrlPt2y: 161.23127, endPtx: 311.38454,endPty: 218.12635); | 
| 209 |     path.cubicTo(ctrlPt1x: 322.05506,ctrlPt1y: 275.02144, ctrlPt2x: 358.53432,ctrlPt2y: 301.66527, endPtx: 328.90674,endPty: 328.73285); | 
| 210 |     path.cubicTo(ctrlPt1x: 299.27916,ctrlPt1y: 355.80044, ctrlPt2x: 251.48877,ctrlPt2y: 339.59410, endPtx: 255.46042,endPty: 288.61972); | 
| 211 |     path.cubicTo(ctrlPt1x: 258.22374,ctrlPt1y: 253.15368, ctrlPt2x: 278.34141,ctrlPt2y: 205.10942, endPtx: 278.34141,endPty: 205.10942); | 
| 212 |     path.cubicTo(ctrlPt1x: 278.34141,ctrlPt1y: 205.10942, ctrlPt2x: 234.02455,ctrlPt2y: 233.13427, endPtx: 219.68939,endPty: 254.01270); | 
| 213 |     path.cubicTo(ctrlPt1x: 205.35424,ctrlPt1y: 274.89113, ctrlPt2x: 189.71452,ctrlPt2y: 330.07842, endPtx: 208.58356,endPty: 373.33974); | 
| 214 |     path.cubicTo(ctrlPt1x: 227.45261,ctrlPt1y: 416.60109, ctrlPt2x: 316.46286,ctrlPt2y: 456.33444, endPtx: 351.12048,endPty: 514.32780); | 
| 215 |     path.cubicTo(ctrlPt1x: 374.10258,ctrlPt1y: 552.78425, ctrlPt2x: 355.05815,ctrlPt2y: 613.59741, endPtx: 310.80422,endPty: 636.59310); | 
| 216 |     path.cubicTo(ctrlPt1x: 256.63287,ctrlPt1y: 664.74219, ctrlPt2x: 299.16588,ctrlPt2y: 580.49238, endPtx: 285.22551,endPty: 523.86186); | 
| 217 |     path.cubicTo(ctrlPt1x: 273.46790,ctrlPt1y: 476.09839, ctrlPt2x: 265.70022,ctrlPt2y: 445.12001, endPtx: 188.03132,endPty: 432.51681); | 
| 218 |     path.cubicTo(ctrlPt1x: 233.72591,ctrlPt1y: 465.34901, ctrlPt2x: 242.16068,ctrlPt2y: 495.04075, endPtx: 241.45928,endPty: 524.11772); | 
| 219 |     path.cubicTo(ctrlPt1x: 240.78648,ctrlPt1y: 552.00862, ctrlPt2x: 214.39595,ctrlPt2y: 634.57293, endPtx: 177.39967,endPty: 596.79021); | 
| 220 |     path.cubicTo(ctrlPt1x: 140.72642,ctrlPt1y: 559.33737, ctrlPt2x: 214.27071,ctrlPt2y: 512.68654, endPtx: 170.92945,endPty: 471.62081); | 
| 221 |     path.cubicTo(ctrlPt1x: 174.73284,ctrlPt1y: 501.40284, ctrlPt2x: 145.30515,ctrlPt2y: 514.98828, endPtx: 131.55318,endPty: 544.54392); | 
| 222 |     path.cubicTo(ctrlPt1x: 118.22673,ctrlPt1y: 573.18509, ctrlPt2x: 123.55251,ctrlPt2y: 610.30651, endPtx: 139.07596,endPty: 645.41379); | 
| 223 |     path.cubicTo(ctrlPt1x: 181.14122,ctrlPt1y: 740.38745, ctrlPt2x: 266.95518,ctrlPt2y: 726.23964, endPtx: 208.75321,endPty: 797.88229); | 
| 224 |     path.cubicTo(ctrlPt1x: 164.01134,ctrlPt1y: 852.95649, ctrlPt2x: 162.90150,ctrlPt2y: 907.45084, endPtx: 205.60384,endPty: 970.81121); | 
| 225 |     path.cubicTo(ctrlPt1x: 240.06795,ctrlPt1y: 1021.9479, ctrlPt2x: 371.11663,ctrlPt2y: 1060.7652, endPtx: 432.20697,endPty: 960.93460); | 
| 226 |     path.cubicTo(ctrlPt1x: 501.87852,ctrlPt1y: 820.00694, ctrlPt2x: 357.14883,ctrlPt2y: 780.33174, endPtx: 386.29974,endPty: 732.84721); | 
| 227 |     path.cubicTo(ctrlPt1x: 405.70205,ctrlPt1y: 701.24238, ctrlPt2x: 472.56601,ctrlPt2y: 668.86516, endPtx: 501.09199,endPty: 644.21233); | 
| 228 |     path.cubicTo(ctrlPt1x: 564.18184,ctrlPt1y: 587.55421, ctrlPt2x: 561.84437,ctrlPt2y: 497.32621, endPtx: 522.74229,endPty: 471.25817); | 
| 229 |     path.cubicTo(ctrlPt1x: 530.19030,ctrlPt1y: 501.05022, ctrlPt2x: 514.99952,ctrlPt2y: 542.79339, endPtx: 483.67099,endPty: 551.29691); | 
| 230 |     path.cubicTo(ctrlPt1x: 423.41173,ctrlPt1y: 567.65308, ctrlPt2x: 458.18351,ctrlPt2y: 411.79373, endPtx: 564.02075,endPty: 393.61925); | 
| 231 |     path.cubicTo(ctrlPt1x: 530.91135,ctrlPt1y: 366.44998, ctrlPt2x: 501.31413,ctrlPt2y: 367.33484, endPtx: 454.91711,endPty: 379.11707); | 
| 232 |     path.cubicTo(ctrlPt1x: 397.61736,ctrlPt1y: 393.57908, ctrlPt2x: 407.64322,ctrlPt2y: 315.40944, endPtx: 494.34643,endPty: 262.67861); | 
| 233 |     path.cubicTo(ctrlPt1x: 549.19500,ctrlPt1y: 229.32101, ctrlPt2x: 499.11573,ctrlPt2y: 147.63302, endPtx: 491.66772,endPty: 136.46100); | 
| 234 |     path.cubicTo(ctrlPt1x: 485.38713,ctrlPt1y: 213.93294, ctrlPt2x: 435.43515,ctrlPt2y: 233.35601, endPtx: 409.98053,endPty: 235.72292); | 
| 235 |     path.cubicTo(ctrlPt1x: 375.27049,ctrlPt1y: 238.95043, ctrlPt2x: 377.84554,ctrlPt2y: 214.33812, endPtx: 396.75003,endPty: 178.92950); | 
| 236 |     path.cubicTo(ctrlPt1x: 416.21172,ctrlPt1y: 142.47722, ctrlPt2x: 448.15395,ctrlPt2y: 89.429942, endPtx: 376.51366,endPty: 44.060977); | 
| 237 |     path.cubicTo(ctrlPt1x: 388.13560,ctrlPt1y: 71.270572, ctrlPt2x: 395.93673,ctrlPt2y: 94.012962, endPtx: 362.83759,endPty: 116.70426); | 
| 238 |     path.closeSubpath(); | 
| 239 |     return path; | 
| 240 | } | 
| 241 |  | 
| 242 |  | 
| 243 | QPainterPath Paths::lips() | 
| 244 | { | 
| 245 |     QPainterPath path; | 
| 246 |  | 
| 247 |     path.moveTo(x: 177.02257,y: 176.65905); | 
| 248 |     path.cubicTo(ctrlPt1x: 154.11895,ctrlPt1y: 176.65905, ctrlPt2x: 136.56711,ctrlPt2y: 174.32266, endPtx: 110.41800,endPty: 155.61729); | 
| 249 |     path.cubicTo(ctrlPt1x: 83.894106,ctrlPt1y: 136.64382, ctrlPt2x: 70.456540,ctrlPt2y: 123.78263, endPtx: 44.264608,endPty: 101.00195); | 
| 250 |     path.cubicTo(ctrlPt1x: 36.985036,ctrlPt1y: 94.670475, ctrlPt2x: 11.607987,ctrlPt2y: 76.421189, endPtx: 0.62503194,endPty: 72.562763); | 
| 251 |     path.cubicTo(ctrlPt1x: 22.778258,ctrlPt1y: 60.937514, ctrlPt2x: 46.738237,ctrlPt2y: 46.430325, endPtx: 55.325084,endPty: 40.325054); | 
| 252 |     path.cubicTo(ctrlPt1x: 79.128700,ctrlPt1y: 23.400628, ctrlPt2x: 99.203004,ctrlPt2y: 0.53294656, endPtx: 116.15033,endPty: 0.61582047); | 
| 253 |     path.cubicTo(ctrlPt1x: 129.59137,ctrlPt1y: 0.68308215, ctrlPt2x: 144.54744,ctrlPt2y: 18.524567, endPtx: 177.02257,endPty: 18.524567); | 
| 254 |     path.cubicTo(ctrlPt1x: 210.04060,ctrlPt1y: 18.524567, ctrlPt2x: 224.45379,ctrlPt2y: 0.68308215, endPtx: 237.89483,endPty: 0.61582047); | 
| 255 |     path.cubicTo(ctrlPt1x: 254.84216,ctrlPt1y: 0.53294656, ctrlPt2x: 274.91646,ctrlPt2y: 23.400628, endPtx: 298.72008,endPty: 40.325054); | 
| 256 |     path.cubicTo(ctrlPt1x: 307.30692,ctrlPt1y: 46.430325, ctrlPt2x: 331.26690,ctrlPt2y: 60.937514, endPtx: 353.42013,endPty: 72.562763); | 
| 257 |     path.cubicTo(ctrlPt1x: 342.43717,ctrlPt1y: 76.421189, ctrlPt2x: 317.06013,ctrlPt2y: 94.670475, endPtx: 309.78055,endPty: 101.00195); | 
| 258 |     path.cubicTo(ctrlPt1x: 283.58862,ctrlPt1y: 123.78263, ctrlPt2x: 270.15105,ctrlPt2y: 136.64382, endPtx: 243.62716,endPty: 155.61729); | 
| 259 |     path.cubicTo(ctrlPt1x: 217.47805,ctrlPt1y: 174.32266, ctrlPt2x: 199.38332,ctrlPt2y: 176.65905, endPtx: 177.02257,endPty: 176.65905); | 
| 260 |     path.closeSubpath(); | 
| 261 |  | 
| 262 |     return path; | 
| 263 | } | 
| 264 |  | 
| 265 | QPainterPath Paths::bezier1() | 
| 266 | { | 
| 267 |     QPainterPath path; | 
| 268 |     path.moveTo(x: 50, y: 50); | 
| 269 |     path.cubicTo(ctrlPt1x: 100, ctrlPt1y: 100, | 
| 270 |                  ctrlPt2x: 520, ctrlPt2y: 90, | 
| 271 |                  endPtx: 400,endPty: 400); | 
| 272 |     return path; | 
| 273 | } | 
| 274 |  | 
| 275 | QPainterPath Paths::bezier2() | 
| 276 | { | 
| 277 |     QPainterPath path; | 
| 278 |     path.moveTo(x: 200,y: 200); | 
| 279 |     path.cubicTo(ctrlPt1x: 200,ctrlPt1y: 125, ctrlPt2x: 500,ctrlPt2y: 100, endPtx: 500,endPty: 500); | 
| 280 |  | 
| 281 |     return path; | 
| 282 | } | 
| 283 |  | 
| 284 | QPainterPath Paths::random1() | 
| 285 | { | 
| 286 |     QPainterPath path; | 
| 287 |  | 
| 288 |     path.moveTo(x: 65.714286,y: 91.428571); | 
| 289 |     path.lineTo(x: 217.14286, y: 102.85714); | 
| 290 |     path.cubicTo(ctrlPt1x: 219.04762, ctrlPt1y: 106.66666, | 
| 291 |                     ctrlPt2x: 220.95238, ctrlPt2y: 110.47619, | 
| 292 |                     endPtx: 222.85714,endPty: 114.28571); | 
| 293 |     path.cubicTo(ctrlPt1x: 231.2679,  ctrlPt1y: 131.10723, | 
| 294 |                     ctrlPt2x: 214.72525, ctrlPt2y: 138.24185, | 
| 295 |                     endPtx: 211.42857,endPty: 151.42857); | 
| 296 |     path.cubicTo(ctrlPt1x: 207.25902, ctrlPt1y: 168.10676, | 
| 297 |                     ctrlPt2x: 213.24674, ctrlPt2y: 175.8441, | 
| 298 |                     endPtx: 217.14286,endPty: 191.42857); | 
| 299 |     path.cubicTo(ctrlPt1x: 221.088, ctrlPt1y: 207.20915, | 
| 300 |                     ctrlPt2x: 201.21538,ctrlPt2y: 205.71429, | 
| 301 |                     endPtx: 188.57143,endPty: 205.71429); | 
| 302 |     path.cubicTo(ctrlPt1x: 170.18303, ctrlPt1y: 205.71429, | 
| 303 |                     ctrlPt2x: 161.42918, ctrlPt2y: 197.50045, | 
| 304 |                     endPtx: 145.71429,endPty: 185.71429); | 
| 305 |     path.cubicTo(ctrlPt1x: 113.93441, ctrlPt1y: 161.87938, | 
| 306 |                     ctrlPt2x: 132.73699, ctrlPt2y: 182.37652, | 
| 307 |                     endPtx: 137.14286, endPty: 200); | 
| 308 |     path.cubicTo(ctrlPt1x: 140.37884, ctrlPt1y: 212.94392, | 
| 309 |                     ctrlPt2x: 128.50252, ctrlPt2y: 217.16009, | 
| 310 |                     endPtx: 117.14286, endPty: 220); | 
| 311 |     path.cubicTo(ctrlPt1x: 98.323209, ctrlPt1y: 224.70491, | 
| 312 |                     ctrlPt2x: 91.206108, ctrlPt2y: 205.41767, | 
| 313 |                     endPtx: 82.857143, endPty: 194.28571); | 
| 314 |     path.cubicTo(ctrlPt1x: 77.307286, ctrlPt1y: 186.8859, | 
| 315 |                     ctrlPt2x: 84.541768, ctrlPt2y: 158.97578, | 
| 316 |                     endPtx: 85.714286, endPty: 154.28571); | 
| 317 |     path.cubicTo(ctrlPt1x: 87.843677, ctrlPt1y: 145.76815, | 
| 318 |                     ctrlPt2x: 67.066253, ctrlPt2y: 132.78054, | 
| 319 |                     endPtx: 60       , endPty: 125.71429); | 
| 320 |     path.cubicTo(ctrlPt1x: 54.074503, ctrlPt1y: 119.78879, | 
| 321 |                     ctrlPt2x: 64.646395,  ctrlPt2y: 95.700137, | 
| 322 |                     endPtx: 65.714286,  endPty: 91.428571); | 
| 323 |     path.closeSubpath(); | 
| 324 |  | 
| 325 |     return path; | 
| 326 | } | 
| 327 |  | 
| 328 | QPainterPath Paths::random2() | 
| 329 | { | 
| 330 |     QPainterPath path; | 
| 331 |  | 
| 332 |     path.moveTo(x: 314.28571,y: 160); | 
| 333 |     path.cubicTo(ctrlPt1x: 434.28571,ctrlPt1y: 125.71429, | 
| 334 |                  ctrlPt2x: 505.71429,ctrlPt2y: 200, | 
| 335 |                  endPtx: 505.71429,endPty: 200); | 
| 336 |     path.lineTo(x: 454.28571, y: 305.71429); | 
| 337 |     path.lineTo(x: 337.14286, y: 302.85714); | 
| 338 |     path.cubicTo(ctrlPt1x: 337.14286, ctrlPt1y: 302.85714, | 
| 339 |                  ctrlPt2x: 308.57143, ctrlPt2y: 340, | 
| 340 |                  endPtx: 337.14286, endPty: 302.85714); | 
| 341 |     path.cubicTo(ctrlPt1x: 365.71429, ctrlPt1y: 265.71429, | 
| 342 |                  ctrlPt2x: 200,       ctrlPt2y: 420, | 
| 343 |                  endPtx: 300,       endPty: 291.42857); | 
| 344 |     path.cubicTo(ctrlPt1x: 400,       ctrlPt1y: 162.85714, | 
| 345 |                  ctrlPt2x: 254.28571, ctrlPt2y: 240, | 
| 346 |                  endPtx: 254.28571, endPty: 240); | 
| 347 |     path.cubicTo(ctrlPt1x: 254.28571,ctrlPt1y: 240, | 
| 348 |                  ctrlPt2x: 240,ctrlPt2y: 71.428571, | 
| 349 |                  endPtx: 288.57143,endPty: 134.28571); | 
| 350 |     path.cubicTo(ctrlPt1x: 337.14286,ctrlPt1y: 197.14286, | 
| 351 |                  ctrlPt2x: 314.28571,ctrlPt2y: 162.85714, | 
| 352 |                  endPtx: 314.28571,endPty: 160); | 
| 353 |     path.closeSubpath(); | 
| 354 |  | 
| 355 |     return path; | 
| 356 | } | 
| 357 |  | 
| 358 | QPainterPath Paths::bezier3() | 
| 359 | { | 
| 360 |     QPainterPath path; | 
| 361 |     path.moveTo(x: 295, y: 217); | 
| 362 |     path.cubicTo(ctrlPt1x: 364,  ctrlPt1y: 57, | 
| 363 |                  ctrlPt2x: 377,  ctrlPt2y: 34, | 
| 364 |                  endPtx: 456, endPty: 222); | 
| 365 |     return path; | 
| 366 | } | 
| 367 |  | 
| 368 | QPainterPath Paths::bezier4() | 
| 369 | { | 
| 370 |     QPainterPath path; | 
| 371 |     path.moveTo(x: 200, y: 125); | 
| 372 |     path.cubicTo(ctrlPt1x: 200, ctrlPt1y: 125, | 
| 373 |                  ctrlPt2x: 623, ctrlPt2y: 126, | 
| 374 |                  endPtx: 623, endPty: 126); | 
| 375 |     return path; | 
| 376 | } | 
| 377 |  | 
| 378 | QPainterPath Paths::heart2() | 
| 379 | { | 
| 380 |     QPainterPath path; | 
| 381 |     path.moveTo(x: 263.41570, y: 235.14588); | 
| 382 |     path.cubicTo(ctrlPt1x: 197.17570,ctrlPt1y: 235.14588, | 
| 383 |                  ctrlPt2x: 143.41575,ctrlPt2y: 288.90587, | 
| 384 |                  endPtx: 143.41575,endPty: 355.14588); | 
| 385 |     path.cubicTo(ctrlPt1x: 143.41575, ctrlPt1y: 489.90139, | 
| 386 |                  ctrlPt2x: 279.34890, ctrlPt2y: 525.23318, | 
| 387 |                  endPtx: 371.97820, endPty: 658.45392); | 
| 388 |     return path; | 
| 389 | } | 
| 390 |  | 
| 391 | QPainterPath Paths::rect2() | 
| 392 | { | 
| 393 |     QPainterPath path; | 
| 394 |  | 
| 395 |     path.addRect(x: 80, y: 80, w: 100, h: 100); | 
| 396 |  | 
| 397 |     return path; | 
| 398 | } | 
| 399 |  | 
| 400 |  | 
| 401 | QPainterPath Paths::rect3() | 
| 402 | { | 
| 403 |     QPainterPath path; | 
| 404 |  | 
| 405 |     path.addRect(x: 100, y: 40, w: 100, h: 100); | 
| 406 |  | 
| 407 |     return path; | 
| 408 | } | 
| 409 |  | 
| 410 |  | 
| 411 | QPainterPath Paths::rect4() | 
| 412 | { | 
| 413 |     QPainterPath path; | 
| 414 |  | 
| 415 |     path.addRect(x: 100, y: 0, w: 200, h: 200); | 
| 416 |  | 
| 417 |     path.addRect(x: 120, y: 20, w: 80, h: 80); | 
| 418 |  | 
| 419 |     return path; | 
| 420 | } | 
| 421 |  | 
| 422 | QPainterPath Paths::simpleCurve() | 
| 423 | { | 
| 424 |     QPainterPath path; | 
| 425 |     path.moveTo(x: 74, y: 160); | 
| 426 |     path.cubicTo( ctrlPt1x: 74, ctrlPt1y: 160, | 
| 427 |                  ctrlPt2x: 274, ctrlPt2y: 406, | 
| 428 |                  endPtx: 425, endPty: 166); | 
| 429 |     path.cubicTo(ctrlPt1x: 577, ctrlPt1y: -73, | 
| 430 |                   ctrlPt2x: 77, ctrlPt2y: 160, | 
| 431 |                   endPtx: 74, endPty: 160); | 
| 432 |     path.closeSubpath(); | 
| 433 |  | 
| 434 |     return path; | 
| 435 | } | 
| 436 |  | 
| 437 | QPainterPath Paths::simpleCurve2() | 
| 438 | { | 
| 439 |     QPainterPath path; | 
| 440 |     path.moveTo(x: 54, y: 140); | 
| 441 |     path.cubicTo( ctrlPt1x: 54, ctrlPt1y: 140, | 
| 442 |                  ctrlPt2x: 254, ctrlPt2y: 386, | 
| 443 |                  endPtx: 405, endPty: 146); | 
| 444 |     path.cubicTo(ctrlPt1x: 557, ctrlPt1y: -93, | 
| 445 |                   ctrlPt2x: 57, ctrlPt2y: 140, | 
| 446 |                   endPtx: 54, endPty: 140); | 
| 447 |     path.closeSubpath(); | 
| 448 |  | 
| 449 |     return path; | 
| 450 | } | 
| 451 |  | 
| 452 | QPainterPath Paths::frame1() | 
| 453 | { | 
| 454 |     QPainterPath path; | 
| 455 |     path.moveTo(x: 190.71429, y: 40.933613); | 
| 456 |     path.lineTo(x: 683.57141, y: 40.933613); | 
| 457 |     path.cubicTo(ctrlPt1x: 697.42141, ctrlPt1y: 40.933613, | 
| 458 |                  ctrlPt2x: 708.57141, ctrlPt2y: 52.083613, | 
| 459 |                  endPtx: 708.57141, endPty: 65.933613); | 
| 460 |     path.lineTo(x: 708.57141, y: 375.93361); | 
| 461 |     path.cubicTo(ctrlPt1x: 708.57141, ctrlPt1y: 389.78361, | 
| 462 |                  ctrlPt2x: 697.42141, ctrlPt2y: 400.93361, | 
| 463 |                  endPtx: 683.57141, endPty: 400.93361); | 
| 464 |     path.lineTo(x: 190.71429, y: 400.93361); | 
| 465 |     path.cubicTo(ctrlPt1x: 176.86429, ctrlPt1y: 400.93361, | 
| 466 |                  ctrlPt2x: 165.71429, ctrlPt2y: 389.78361, | 
| 467 |                  endPtx: 165.71429,endPty: 375.93361); | 
| 468 |     path.lineTo(x: 165.71429, y: 65.933613); | 
| 469 |     path.cubicTo(ctrlPt1x: 165.71429,ctrlPt1y: 52.083613, | 
| 470 |                  ctrlPt2x: 176.86429,ctrlPt2y: 40.933613, | 
| 471 |                  endPtx: 190.71429,endPty: 40.933613); | 
| 472 |     path.closeSubpath(); | 
| 473 |  | 
| 474 |     return path; | 
| 475 | } | 
| 476 |  | 
| 477 | QPainterPath Paths::frame2() | 
| 478 | { | 
| 479 |     QPainterPath path; | 
| 480 |     path.moveTo(x: 55.114286, y: 103.79076); | 
| 481 |     path.lineTo(x: 187.74288, y: 103.79076); | 
| 482 |     path.cubicTo(ctrlPt1x: 192.95048, ctrlPt1y: 103.79076, | 
| 483 |                  ctrlPt2x: 197.14288, ctrlPt2y: 107.88102, | 
| 484 |                  endPtx: 197.14288, endPty: 112.96176); | 
| 485 |     path.lineTo(x: 197.14288, y: 131.76261); | 
| 486 |     path.cubicTo(ctrlPt1x: 197.14288, ctrlPt1y: 136.84335, | 
| 487 |                  ctrlPt2x: 192.95048, ctrlPt2y: 140.93361, | 
| 488 |                  endPtx: 187.74288, endPty: 140.93361); | 
| 489 |     path.lineTo(x: 55.114286, y: 140.93361); | 
| 490 |     path.cubicTo(ctrlPt1x: 49.906687, ctrlPt1y: 140.93361, | 
| 491 |                  ctrlPt2x: 45.714287, ctrlPt2y: 136.84335, | 
| 492 |                  endPtx: 45.714287, endPty: 131.76261); | 
| 493 |     path.lineTo(x: 45.714287, y: 112.96176); | 
| 494 |     path.cubicTo(ctrlPt1x: 45.714287, ctrlPt1y: 107.88102, | 
| 495 |                  ctrlPt2x: 49.906687, ctrlPt2y: 103.79076, | 
| 496 |                  endPtx: 55.114286, endPty: 103.79076); | 
| 497 |     path.closeSubpath(); | 
| 498 |  | 
| 499 |     return path; | 
| 500 | } | 
| 501 |  | 
| 502 | QPainterPath Paths::frame3() | 
| 503 | { | 
| 504 |     QPainterPath path; | 
| 505 |     path.moveTo(x: 200,y: 80.933609); | 
| 506 |     path.lineTo(x: 682.85715,y: 80.933609); | 
| 507 |     path.lineTo(x: 682.85715,y: 446.6479); | 
| 508 |     path.lineTo(x: 200,y: 446.6479); | 
| 509 |     path.lineTo(x: 200,y: 80.933609); | 
| 510 |     path.closeSubpath(); | 
| 511 |     return path; | 
| 512 | } | 
| 513 |  | 
| 514 | QPainterPath Paths::frame4() | 
| 515 | { | 
| 516 |     QPainterPath path; | 
| 517 |  | 
| 518 |     path.moveTo(x: 88.571434,y: 206.64789); | 
| 519 |     path.lineTo(x: 231.42858,y: 206.64789); | 
| 520 |     path.lineTo(x: 231.42858,y: 246.64789); | 
| 521 |     path.lineTo(x: 88.571434,y: 246.64789); | 
| 522 |     path.lineTo(x: 88.571434,y: 206.64789); | 
| 523 |     path.closeSubpath(); | 
| 524 |  | 
| 525 |     return path; | 
| 526 | } | 
| 527 |  | 
| 528 | QPainterPath Paths::simpleCurve3() | 
| 529 | { | 
| 530 |     QPainterPath path; | 
| 531 |  | 
| 532 |     path.moveTo(x: 0, y: 0); | 
| 533 |     path.cubicTo(ctrlPt1x: 400,ctrlPt1y: 0, | 
| 534 |                  ctrlPt2x: 0,ctrlPt2y: 400, | 
| 535 |                  endPtx: 0,endPty: 0); | 
| 536 |     path.closeSubpath(); | 
| 537 |  | 
| 538 |     return path; | 
| 539 | } | 
| 540 |  | 
| 541 | QPainterPath Paths::rect5() | 
| 542 | { | 
| 543 |     QPainterPath path; | 
| 544 |  | 
| 545 |     path.addRect(x: 0, y: 0, w: 200, h: 200); | 
| 546 |  | 
| 547 |     return path; | 
| 548 | } | 
| 549 |  | 
| 550 | QPainterPath Paths::triangle1() | 
| 551 | { | 
| 552 |     QPainterPath path; | 
| 553 |  | 
| 554 |     path.moveTo(x: 0, y: 0); | 
| 555 |     path.lineTo(x: 60, y: 0); | 
| 556 |     path.lineTo(x: 60, y: 60); | 
| 557 |     path.closeSubpath(); | 
| 558 |  | 
| 559 |     return path; | 
| 560 | } | 
| 561 |  | 
| 562 | QPainterPath Paths::triangle2() | 
| 563 | { | 
| 564 |     QPainterPath path; | 
| 565 |  | 
| 566 |     path.moveTo(x: 0, y: 120); | 
| 567 |     path.lineTo(x: 60, y: 120); | 
| 568 |     path.lineTo(x: 60, y: 60); | 
| 569 |     path.closeSubpath(); | 
| 570 |  | 
| 571 |     return path; | 
| 572 | } | 
| 573 |  | 
| 574 | QPainterPath Paths::node() | 
| 575 | { | 
| 576 |     QRectF m_rect; | 
| 577 |     m_rect.setWidth(150); | 
| 578 |     m_rect.setHeight(100); | 
| 579 |  | 
| 580 |     QPainterPath shape; | 
| 581 |     shape.addRoundedRect(rect: m_rect, xRadius: 25, yRadius: Qt::RelativeSize); | 
| 582 |  | 
| 583 |     const int conWidth = 10; | 
| 584 |     const int xOffset  = 7; | 
| 585 |  | 
| 586 |     QRectF rect(xOffset, | 
| 587 |                 conWidth + 20, | 
| 588 |                 conWidth, conWidth); | 
| 589 |     shape.addEllipse(rect); | 
| 590 |     //shape.addRect(rect); | 
| 591 |  | 
| 592 |     rect = QRectF(m_rect.right() - conWidth - xOffset, | 
| 593 |                   conWidth + 20, | 
| 594 |                   conWidth, conWidth); | 
| 595 |     shape.addEllipse(rect); | 
| 596 |     //shape.addRect(rect); | 
| 597 |     return shape; | 
| 598 | } | 
| 599 |  | 
| 600 | QPainterPath Paths::interRect() | 
| 601 | { | 
| 602 |     QPainterPath path; | 
| 603 |     path.addRect(x: 132, y: 42, w: 1, h: 1); | 
| 604 |     return path; | 
| 605 | } | 
| 606 |  | 
| 607 | QPainterPath Paths::bezierFlower() | 
| 608 | { | 
| 609 |     QPainterPath path; | 
| 610 |     path.moveTo(x: 0, y: 0); | 
| 611 |     path.cubicTo(ctrlPt1x: 0, ctrlPt1y: 50, ctrlPt2x: -25, ctrlPt2y: 75, endPtx: -50, endPty: 100); | 
| 612 |     path.closeSubpath(); | 
| 613 |     path.moveTo(x: 0, y: 0); | 
| 614 |     path.cubicTo(ctrlPt1x: 0, ctrlPt1y: 50, ctrlPt2x: 25, ctrlPt2y: 75, endPtx: 50, endPty: 100); | 
| 615 |     path.closeSubpath(); | 
| 616 |  | 
| 617 |     path.moveTo(x: 0, y: 0); | 
| 618 |     path.cubicTo(ctrlPt1x: 0, ctrlPt1y: -50, ctrlPt2x: -25, ctrlPt2y: -75, endPtx: -50, endPty: -100); | 
| 619 |     path.closeSubpath(); | 
| 620 |     path.moveTo(x: 0, y: 0); | 
| 621 |     path.cubicTo(ctrlPt1x: 0, ctrlPt1y: -50, ctrlPt2x: 25, ctrlPt2y: -75, endPtx: 50, endPty: -100); | 
| 622 |     path.closeSubpath(); | 
| 623 |  | 
| 624 |     path.moveTo(x: 0, y: 0); | 
| 625 |     path.cubicTo(ctrlPt1x: -50, ctrlPt1y: 0, ctrlPt2x: -75, ctrlPt2y: -25, endPtx: -100, endPty: -50); | 
| 626 |     path.closeSubpath(); | 
| 627 |     path.moveTo(x: 0, y: 0); | 
| 628 |     path.cubicTo(ctrlPt1x: -50, ctrlPt1y: 0, ctrlPt2x: -75, ctrlPt2y: 25, endPtx: -100, endPty: 50); | 
| 629 |     path.closeSubpath(); | 
| 630 |  | 
| 631 |     path.moveTo(x: 0, y: 0); | 
| 632 |     path.cubicTo(ctrlPt1x: 50, ctrlPt1y: 0, ctrlPt2x: 75, ctrlPt2y: -25, endPtx: 100, endPty: -50); | 
| 633 |     path.closeSubpath(); | 
| 634 |     path.moveTo(x: 0, y: 0); | 
| 635 |     path.cubicTo(ctrlPt1x: 50, ctrlPt1y: 0, ctrlPt2x: 75, ctrlPt2y: 25, endPtx: 100, endPty: 50); | 
| 636 |     path.closeSubpath(); | 
| 637 |  | 
| 638 |     return path; | 
| 639 | } | 
| 640 |  | 
| 641 | QPainterPath Paths::clover() | 
| 642 | { | 
| 643 |     QPainterPath path; | 
| 644 |     path.moveTo(x: 50, y: 50); | 
| 645 |     path.lineTo(x: 100, y: 25); | 
| 646 |     path.lineTo(x: 100, y: 75); | 
| 647 |     path.lineTo(x: 0, y: 25); | 
| 648 |     path.lineTo(x: 0, y: 75); | 
| 649 |     path.lineTo(x: 50, y: 50); | 
| 650 |     path.lineTo(x: 75, y: 0); | 
| 651 |     path.lineTo(x: 25, y: 0); | 
| 652 |     path.lineTo(x: 75, y: 100); | 
| 653 |     path.lineTo(x: 25, y: 100); | 
| 654 |     path.lineTo(x: 50, y: 50); | 
| 655 |     return path; | 
| 656 | } | 
| 657 |  | 
| 658 | QPainterPath Paths::ellipses() | 
| 659 | { | 
| 660 |     QPainterPath path; | 
| 661 |     path.addEllipse(x: 0, y: 0, w: 100, h: 100); | 
| 662 |     path.addEllipse(x: 0, y: 20, w: 100, h: 60); | 
| 663 |     path.addEllipse(x: 0, y: 40, w: 100, h: 20); | 
| 664 |     return path; | 
| 665 | } | 
| 666 |  | 
| 667 | QPainterPath Paths::windingFill() | 
| 668 | { | 
| 669 |     QPainterPath path; | 
| 670 |     path.addRect(x: 0, y: 0, w: 100, h: 100); | 
| 671 |     path.addRect(x: 50, y: 25, w: 100, h: 50); | 
| 672 |     path.setFillRule(Qt::WindingFill); | 
| 673 |     return path; | 
| 674 | } | 
| 675 |  | 
| 676 | QPainterPath Paths::oddEvenFill() | 
| 677 | { | 
| 678 |     QPainterPath path; | 
| 679 |     path.addRect(x: 0, y: 0, w: 100, h: 100); | 
| 680 |     path.moveTo(x: 50, y: 25); | 
| 681 |     path.lineTo(x: 50, y: 75); | 
| 682 |     path.lineTo(x: 150, y: 75); | 
| 683 |     path.lineTo(x: 150, y: 25); | 
| 684 |     path.lineTo(x: 50, y: 25); | 
| 685 |     path.setFillRule(Qt::OddEvenFill); | 
| 686 |     return path; | 
| 687 | } | 
| 688 |  | 
| 689 | QPainterPath Paths::squareWithHole() | 
| 690 | { | 
| 691 |     QPainterPath path; | 
| 692 |     path.addRect(x: 0, y: 0, w: 100, h: 100); | 
| 693 |     path.addRect(x: 30, y: 30, w: 40, h: 40); | 
| 694 |     return path; | 
| 695 | } | 
| 696 |  | 
| 697 | QPainterPath Paths::circleWithHole() | 
| 698 | { | 
| 699 |         QPainterPath path; | 
| 700 |         path.addEllipse(x: 0, y: 0, w: 100, h: 100); | 
| 701 |         path.addEllipse(x: 30, y: 30, w: 40, h: 40); | 
| 702 |         return path; | 
| 703 | } | 
| 704 |  | 
| 705 | QPainterPath Paths::bezierQuadrant() | 
| 706 | { | 
| 707 |     QPainterPath path; | 
| 708 |     int d = 1; | 
| 709 |     for (int i = 25; i <= 85; i += 10) { | 
| 710 |         path.moveTo(x: 50, y: 100); | 
| 711 |         path.cubicTo(ctrlPt1x: 50, ctrlPt1y: i, ctrlPt2x: 50 + i* d / 2, ctrlPt2y: 0, endPtx: 50 + 50 * d, endPty: 0); | 
| 712 |         path.lineTo(x: 50 + 50 * d, y: 100); | 
| 713 |         path.closeSubpath(); | 
| 714 |     } | 
| 715 |  | 
| 716 |     return path; | 
| 717 | } | 
| 718 |  |