mirror of
https://github.com/vlang/v.git
synced 2023-08-10 21:13:21 +03:00
examples: rename hot_code_reloading to hot_reload
This commit is contained in:
60
examples/hot_reload/graph.v
Normal file
60
examples/hot_reload/graph.v
Normal file
@ -0,0 +1,60 @@
|
||||
module main
|
||||
|
||||
import gx
|
||||
import gl
|
||||
import gg
|
||||
import time
|
||||
import glfw
|
||||
import math
|
||||
|
||||
const (
|
||||
Size = 700
|
||||
Scale = 50.0
|
||||
)
|
||||
|
||||
struct Context {
|
||||
gg *gg.GG
|
||||
}
|
||||
|
||||
fn main() {
|
||||
glfw.init()
|
||||
ctx:= &Context{
|
||||
gg: gg.new_context(gg.Cfg {
|
||||
width: Size
|
||||
height: Size
|
||||
use_ortho: true
|
||||
create_window: true
|
||||
window_title: 'Graph builder'
|
||||
window_user_ptr: ctx
|
||||
always_on_top: true
|
||||
})
|
||||
}
|
||||
go update() // update the scene in the background in case the window isn't focused
|
||||
for {
|
||||
gg.clear(gx.White)
|
||||
ctx.draw()
|
||||
ctx.gg.render()
|
||||
}
|
||||
}
|
||||
|
||||
[live]
|
||||
fn (ctx &Context) draw() {
|
||||
ctx.gg.draw_line(0, Size / 2, Size, Size / 2) // x axis
|
||||
ctx.gg.draw_line(Size / 2, 0, Size / 2, Size) // y axis
|
||||
center := f64(Size / 2)
|
||||
for x := -10.0; x <= 10.0; x += 0.002 {
|
||||
y := x * x + 1
|
||||
//y := (x + 3) * (x + 3) - 1
|
||||
//y := math.sqrt(30.0 - x * x)
|
||||
ctx.gg.draw_rect(center + x * Scale, center - y * Scale, 1, 1, gx.Black)
|
||||
//ctx.gg.draw_rect(center + x * Scale, center + y * Scale, 1, 1, gx.Black)
|
||||
}
|
||||
}
|
||||
|
||||
fn update() {
|
||||
for {
|
||||
gg.post_empty_event()
|
||||
time.sleep_ms(300)
|
||||
}
|
||||
|
||||
}
|
Reference in New Issue
Block a user