gg: fix draw_rounded_rect_empty (fixes #19470) (#19552)

This commit is contained in:
Adam Oates 2023-10-11 19:18:42 -05:00 committed by GitHub
parent 02434807f3
commit 11e67a1a5f
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 38 additions and 4 deletions

View File

@ -343,11 +343,11 @@ pub fn (ctx &Context) draw_rounded_rect_empty(x f32, y f32, w f32, h f32, radius
sgl.v2f(rtx + r, rty)
sgl.v2f(rtx + r, rby)
// bottom
sgl.v2f(lbx, lby + r)
sgl.v2f(rbx, rby + r)
sgl.v2f(lbx, lby + r - 1)
sgl.v2f(rbx, rby + r - 1)
// left
sgl.v2f(sx, lty)
sgl.v2f(sx, lby)
sgl.v2f(sx + 1, lty)
sgl.v2f(sx + 1, lby)
sgl.end()
}

View File

@ -0,0 +1,34 @@
module main
import gg
import gx
fn main() {
mut context := gg.new_context(
width: 325
height: 275
window_title: 'Rounded Rectangles'
frame_fn: frame
)
context.run()
}
fn frame(mut ctx gg.Context) {
ctx.begin()
// these should be rounded rectangles
ctx.draw_rounded_rect_empty(10, 10, 50, 100, 5, gx.blue)
ctx.draw_rounded_rect_empty(25, 25, 50, 100, 15, gx.yellow)
ctx.draw_rounded_rect_empty(50, 50, 50, 100, 50, gx.red)
ctx.draw_rounded_rect_empty(75, 75, 50, 100, 100, gx.green)
ctx.draw_rounded_rect_empty(100, 100, 50, 100, 1000, gx.white)
ctx.draw_rounded_rect_empty(110, 10, 100, 50, 5, gx.blue)
ctx.draw_rounded_rect_empty(125, 25, 100, 50, 15, gx.yellow)
ctx.draw_rounded_rect_empty(150, 50, 100, 50, 50, gx.red)
ctx.draw_rounded_rect_empty(175, 75, 100, 50, 100, gx.green)
ctx.draw_rounded_rect_empty(200, 100, 100, 50, 1000, gx.white)
// this should be a perfect circle
ctx.draw_rounded_rect_empty(10, 200, 50, 50, 1000, gx.magenta)
// this should be a perfect square
ctx.draw_rounded_rect_empty(250, 200, 50, 50, 0, gx.cyan)
ctx.end()
}