376: def rounded_rectangle(x, y, w, h, r)
377: x1 = x
378: x2 = x1 + w
379: y1 = y
380: y2 = y1 - h
381:
382: r1 = r
383: r2 = r / 2.0
384:
385: points = [
386: [ x1 + r1, y1, :line ],
387: [ x2 - r1, y1, :line ],
388: [ x2 - r2, y1, :curve ],
389: [ x2, y1 - r2, ],
390: [ x2, y1 - r1, ],
391: [ x2, y2 + r1, :line ],
392: [ x2, y2 + r2, :curve ],
393: [ x2 - r2, y2, ],
394: [ x2 - r1, y2, ],
395: [ x1 + r1, y2, :line ],
396: [ x1 + r2, y2, :curve ],
397: [ x1, y2 + r2, ],
398: [ x1, y2 + r1, ],
399: [ x1, y1 - r1, :line ],
400: [ x1, y1 - r2, :curve ],
401: [ x1 + r2, y1, ],
402: [ x1 + r1, y1, ],
403: ]
404: polygon(points)
405: move_to(x2, y2)
406: self
407: end