1# Version: 1 2# CheckVsReference: 5% (0 0 310 425) 3 4 5translate 10 10 6 7begin_block draw_lines 8 save 9 translate 50 50 10 11 save 12 setPen 0x7fff0000 13 drawLine 10 0 50 0 14 rotate 10 15 drawLine 10 0 50 0 16 rotate 10 17 drawLine 10 0 50 0 18 rotate 10 19 drawLine 10 0 50 0 20 rotate 10 21 drawLine 10 0 50 0 22 rotate 10 23 drawLine 10 0 50 0 24 rotate 10 25 drawLine 10 0 50 0 26 rotate 10 27 drawLine 10 0 50 0 28 rotate 10 29 drawLine 10 0 50 0 30 rotate 10 31 drawLine 10 0 50 0 32 rotate 10 33 drawLine 10 0 50 0 34 rotate 10 35 drawLine 10 0 50 0 36 rotate 10 37 drawLine 10 0 50 0 38 rotate 10 39 drawLine 10 0 50 0 40 rotate 10 41 drawLine 10 0 50 0 42 rotate 10 43 drawLine 10 0 50 0 44 rotate 10 45 drawLine 10 0 50 0 46 rotate 10 47 drawLine 10 0 50 0 48 rotate 10 49 drawLine 10 0 50 0 50 rotate 10 51 drawLine 10 0 50 0 52 rotate 10 53 drawLine 10 0 50 0 54 rotate 10 55 drawLine 10 0 50 0 56 rotate 10 57 drawLine 10 0 50 0 58 rotate 10 59 drawLine 10 0 50 0 60 rotate 10 61 drawLine 10 0 50 0 62 rotate 10 63 drawLine 10 0 50 0 64 rotate 10 65 drawLine 10 0 50 0 66 rotate 10 67 drawLine 10 0 50 0 68 rotate 10 69 drawLine 10 0 50 0 70 rotate 10 71 drawLine 10 0 50 0 72 rotate 10 73 drawLine 10 0 50 0 74 rotate 10 75 drawLine 10 0 50 0 76 rotate 10 77 drawLine 10 0 50 0 78 rotate 10 79 drawLine 10 0 50 0 80 rotate 10 81 drawLine 10 0 50 0 82 rotate 10 83 drawLine 10 0 50 0 84 restore 85 86 # and then draw the lines the other direction 87 save 88 setPen 0x7f0000ff 89 drawLine 50 0 10 0 90 rotate 10 91 drawLine 50 0 10 0 92 rotate 10 93 drawLine 50 0 10 0 94 rotate 10 95 drawLine 50 0 10 0 96 rotate 10 97 drawLine 50 0 10 0 98 rotate 10 99 drawLine 50 0 10 0 100 rotate 10 101 drawLine 50 0 10 0 102 rotate 10 103 drawLine 50 0 10 0 104 rotate 10 105 drawLine 50 0 10 0 106 rotate 10 107 drawLine 50 0 10 0 108 rotate 10 109 drawLine 50 0 10 0 110 rotate 10 111 drawLine 50 0 10 0 112 rotate 10 113 drawLine 50 0 10 0 114 rotate 10 115 drawLine 50 0 10 0 116 rotate 10 117 drawLine 50 0 10 0 118 rotate 10 119 drawLine 50 0 10 0 120 rotate 10 121 drawLine 50 0 10 0 122 rotate 10 123 drawLine 50 0 10 0 124 rotate 10 125 drawLine 50 0 10 0 126 rotate 10 127 drawLine 50 0 10 0 128 rotate 10 129 drawLine 50 0 10 0 130 rotate 10 131 drawLine 50 0 10 0 132 rotate 10 133 drawLine 50 0 10 0 134 rotate 10 135 drawLine 50 0 10 0 136 rotate 10 137 drawLine 50 0 10 0 138 rotate 10 139 drawLine 50 0 10 0 140 rotate 10 141 drawLine 50 0 10 0 142 rotate 10 143 drawLine 50 0 10 0 144 rotate 10 145 drawLine 50 0 10 0 146 rotate 10 147 drawLine 50 0 10 0 148 rotate 10 149 drawLine 50 0 10 0 150 rotate 10 151 drawLine 50 0 10 0 152 rotate 10 153 drawLine 50 0 10 0 154 rotate 10 155 drawLine 50 0 10 0 156 rotate 10 157 drawLine 50 0 10 0 158 rotate 10 159 drawLine 50 0 10 0 160 restore 161 162 # and now with a clip 163 save 164 setClipRect -30 -30 60 60 165 setPen 0x7f00ff00 166 drawLine 10 0 50 0 167 rotate 10 168 drawLine 10 0 50 0 169 rotate 10 170 drawLine 10 0 50 0 171 rotate 10 172 drawLine 10 0 50 0 173 rotate 10 174 drawLine 10 0 50 0 175 rotate 10 176 drawLine 10 0 50 0 177 rotate 10 178 drawLine 10 0 50 0 179 rotate 10 180 drawLine 10 0 50 0 181 rotate 10 182 drawLine 10 0 50 0 183 rotate 10 184 drawLine 10 0 50 0 185 rotate 10 186 drawLine 10 0 50 0 187 rotate 10 188 drawLine 10 0 50 0 189 rotate 10 190 drawLine 10 0 50 0 191 rotate 10 192 drawLine 10 0 50 0 193 rotate 10 194 drawLine 10 0 50 0 195 rotate 10 196 drawLine 10 0 50 0 197 rotate 10 198 drawLine 10 0 50 0 199 rotate 10 200 drawLine 10 0 50 0 201 rotate 10 202 drawLine 10 0 50 0 203 rotate 10 204 drawLine 10 0 50 0 205 rotate 10 206 drawLine 10 0 50 0 207 rotate 10 208 drawLine 10 0 50 0 209 rotate 10 210 drawLine 10 0 50 0 211 rotate 10 212 drawLine 10 0 50 0 213 rotate 10 214 drawLine 10 0 50 0 215 rotate 10 216 drawLine 10 0 50 0 217 rotate 10 218 drawLine 10 0 50 0 219 rotate 10 220 drawLine 10 0 50 0 221 rotate 10 222 drawLine 10 0 50 0 223 rotate 10 224 drawLine 10 0 50 0 225 rotate 10 226 drawLine 10 0 50 0 227 rotate 10 228 drawLine 10 0 50 0 229 rotate 10 230 drawLine 10 0 50 0 231 rotate 10 232 drawLine 10 0 50 0 233 rotate 10 234 drawLine 10 0 50 0 235 rotate 10 236 drawLine 10 0 50 0 237 restore 238 239 restore 240end_block 241 242save 243 translate 100 0 244 scale 2 2 245 repeat_block draw_lines 246restore 247 248translate 0 10 249 250save 251 translate 0 200 252 setRenderHint Antialiasing 253 repeat_block draw_lines 254restore 255 256save 257 translate 100 200 258 scale 2 2 259 setRenderHint Antialiasing 260 repeat_block draw_lines 261restore 262 263translate 320 0 264 265setPen black 0 solidline squarecap 266 267begin_block lines 268 269# 0 -> 45 degress 270drawLine 100 100 200 90 271drawLine 100 100 200 80 272drawLine 100 100 200 70 273drawLine 100 100 200 60 274drawLine 100 100 200 50 275drawLine 100 100 200 40 276drawLine 100 100 200 30 277drawLine 100 100 200 20 278drawLine 100 100 200 10 279 280# 45 281drawLine 100 100 200 0 282 283# 45 -> 90 284drawLine 100 100 190 0 285drawLine 100 100 180 0 286drawLine 100 100 170 0 287drawLine 100 100 160 0 288drawLine 100 100 150 0 289drawLine 100 100 140 0 290drawLine 100 100 130 0 291drawLine 100 100 120 0 292drawLine 100 100 110 0 293 294# 90 295drawLine 100 100 100 0 296 297# 90 -> 135 298drawLine 100 100 90 0 299drawLine 100 100 80 0 300drawLine 100 100 70 0 301drawLine 100 100 60 0 302drawLine 100 100 50 0 303drawLine 100 100 40 0 304drawLine 100 100 30 0 305drawLine 100 100 20 0 306drawLine 100 100 10 0 307 308# 135 309drawLine 100 100 0 0 310 311# 135 -> 180 degress 312drawLine 100 100 0 10 313drawLine 100 100 0 20 314drawLine 100 100 0 30 315drawLine 100 100 0 40 316drawLine 100 100 0 50 317drawLine 100 100 0 60 318drawLine 100 100 0 70 319drawLine 100 100 0 80 320drawLine 100 100 0 90 321 322# 180 323drawLine 100 100 0 100 324 325# 180 -> 225 326drawLine 100 100 0 110 327drawLine 100 100 0 120 328drawLine 100 100 0 130 329drawLine 100 100 0 140 330drawLine 100 100 0 150 331drawLine 100 100 0 160 332drawLine 100 100 0 170 333drawLine 100 100 0 180 334drawLine 100 100 0 190 335 336# 225 337drawLine 100 100 0 200 338 339# 225 -> 270 340drawLine 100 100 10 200 341drawLine 100 100 20 200 342drawLine 100 100 30 200 343drawLine 100 100 40 200 344drawLine 100 100 50 200 345drawLine 100 100 60 200 346drawLine 100 100 70 200 347drawLine 100 100 80 200 348drawLine 100 100 90 200 349 350# 270 351drawLine 100 100 100 200 352 353# 270 -> 315 degrees 354drawLine 100 100 110 200 355drawLine 100 100 120 200 356drawLine 100 100 130 200 357drawLine 100 100 140 200 358drawLine 100 100 150 200 359drawLine 100 100 160 200 360drawLine 100 100 170 200 361drawLine 100 100 180 200 362drawLine 100 100 190 200 363 364# 315 365drawLine 100 100 200 200 366 367# 315 -> 360 degress 368drawLine 100 100 200 100 369drawLine 100 100 200 110 370drawLine 100 100 200 120 371drawLine 100 100 200 130 372drawLine 100 100 200 140 373drawLine 100 100 200 150 374drawLine 100 100 200 160 375drawLine 100 100 200 170 376drawLine 100 100 200 180 377drawLine 100 100 200 190 378 379end_block 380 381 382setRenderHint Antialiasing 383setPen 0x7fff0000 384translate 0.5 0.5 385repeat_block lines 386 387setPen 0x000000 8 388translate 20 240 389drawText 0 0 "Steep slopes:" 390 391translate 0 10 392 393drawLine 0 0 -8 400 394translate 20 0 395drawLine 0 0 -7 400 396translate 20 0 397drawLine 0 0 -6 400 398translate 20 0 399drawLine 0 0 -5 400 400translate 20 0 401drawLine 0 0 -4 400 402translate 20 0 403drawLine 0 0 -3 400 404translate 20 0 405drawLine 0 0 -2 400 406translate 20 0 407drawLine 0 0 -1 400 408translate 20 0 409drawLine 0 0 0 400 410translate 20 0 411drawLine 0 0 1 400 412translate 20 0 413drawLine 0 0 2 400 414translate 20 0 415drawLine 0 0 3 400 416translate 20 0 417drawLine 0 0 4 400 418translate 20 0 419drawLine 0 0 5 400 420translate 20 0 421drawLine 0 0 6 400 422translate 20 0 423drawLine 0 0 7 400 424translate 20 0 425drawLine 0 0 8 400 426 427resetMatrix 428 429translate 20 450 430 431drawText 0 0 "Zero length lines:" 432 433translate 0 20 434drawText 100 10 "Square cap" 435save 436begin_block points 437setPen 0x000000 1 solidline squarecap 438drawLine 0 0 0 0 439setPen 0x000000 2 solidline squarecap 440drawLine 8 0 8 0 441setPen 0x000000 3 solidline squarecap 442drawLine 16 0 16 0 443setPen 0x000000 4 solidline squarecap 444drawLine 24 0 24 0 445setPen 0x000000 5 solidline squarecap 446drawLine 32 0 32 0 447setPen 0x000000 6 solidline squarecap 448drawLine 40 0 40 0 449setPen 0x000000 7 solidline squarecap 450drawLine 48 0 48 0 451setPen 0x000000 8 solidline squarecap 452drawLine 57 0 57 0 453setPen 0x000000 9 solidline squarecap 454drawLine 67 0 67 0 455setPen 0x000000 10 solidline squarecap 456drawLine 78 0 78 0 457end_block points 458restore 459 460translate 0 12 461setRenderHint Antialiasing off 462repeat_block points 463setRenderHint Antialiasing 464 465translate 0 20 466drawText 100 10 "Round cap" 467save 468begin_block points2 469setPen 0x000000 1 solidline roundcap 470drawLine 0 0 0 0 471setPen 0x000000 2 solidline roundcap 472drawLine 8 0 8 0 473setPen 0x000000 3 solidline roundcap 474drawLine 16 0 16 0 475setPen 0x000000 4 solidline roundcap 476drawLine 24 0 24 0 477setPen 0x000000 5 solidline roundcap 478drawLine 32 0 32 0 479setPen 0x000000 6 solidline roundcap 480drawLine 40 0 40 0 481setPen 0x000000 7 solidline roundcap 482drawLine 48 0 48 0 483setPen 0x000000 8 solidline roundcap 484drawLine 57 0 57 0 485setPen 0x000000 9 solidline roundcap 486drawLine 67 0 67 0 487setPen 0x000000 10 solidline roundcap 488drawLine 78 0 78 0 489end_block points2 490restore 491 492translate 0 12 493setRenderHint Antialiasing off 494repeat_block points2 495setRenderHint Antialiasing 496 497translate 0 20 498drawText 100 10 "Flat cap" 499save 500begin_block points3 501setPen 0x000000 1 solidline flatcap 502drawLine 0 0 0 0 503setPen 0x000000 2 solidline flatcap 504drawLine 8 0 8 0 505setPen 0x000000 3 solidline flatcap 506drawLine 16 0 16 0 507setPen 0x000000 4 solidline flatcap 508drawLine 24 0 24 0 509setPen 0x000000 5 solidline flatcap 510drawLine 32 0 32 0 511setPen 0x000000 6 solidline flatcap 512drawLine 40 0 40 0 513setPen 0x000000 7 solidline flatcap 514drawLine 48 0 48 0 515setPen 0x000000 8 solidline flatcap 516drawLine 57 0 57 0 517setPen 0x000000 9 solidline flatcap 518drawLine 67 0 67 0 519setPen 0x000000 10 solidline flatcap 520drawLine 78 0 78 0 521end_block points3 522restore 523 524translate 0 12 525setRenderHint Antialiasing off 526repeat_block points3 527 528resetMatrix 529translate -220 667.226 530drawText 230 -80 "Task 194266 (should see only one line):" 531setPen black 532drawRect 230.5 -70.5 122 12 533setRenderHint Antialiasing 534setPen red 535drawLine 236.842105263 -63.775117299 247.368421053 -63.775437504 536 537setRenderHint Antialiasing off 538resetMatrix 539translate 10 640 540setPen black 541drawText 0 -10 "Task 207147 (should see two lines):" 542drawRect 0.5 0.5 64 64 543setRenderHint Antialiasing 544setPen red 545 546drawLine 4.5 4.5 4.5001 60.5 547drawLine 4.5 4.5 60.5 4.5001 548 549setRenderHint Antialiasing off 550resetMatrix 551translate 10 730 552setPen black 553drawText 0 -10 "Task 229459 (should see one diagonal line):" 554drawRect 0.5 0.5 64 64 555setPen red 2 solidline flatcap 556 557setClipRect 2 2 63 63 558drawLine 1.5 1.5 33560000 33560000