From 177f08e461eebc3067ff45b5ee2046a144074a89 Mon Sep 17 00:00:00 2001 From: Marc Planard Date: Thu, 8 Jun 2023 22:23:01 +0200 Subject: [PATCH 1/2] fancy example --- examples/simple_client.rs | 35 ++++++++++++++++++++++++++--------- src/main.rs | 3 +-- 2 files changed, 27 insertions(+), 11 deletions(-) diff --git a/examples/simple_client.rs b/examples/simple_client.rs index a62c4cc..3bc42cc 100644 --- a/examples/simple_client.rs +++ b/examples/simple_client.rs @@ -5,19 +5,36 @@ use redis::{ Connection, }; +use std::time::Instant; + fn do_something() -> redis::RedisResult<()> { let client = Client::open("redis://127.0.0.1/")?; let mut con: Connection = client.get_connection()?; - - /* do something here */ - //let val : String = con.get("/pl/0/0")?; - let _ = con.set("/pl/0/0", "[(150.0, 230.0, 65280), \ - (170.0, 170.0, 65280), \ - (230.0, 170.0, 65280), \ - (210.0, 230.0, 65280), \ - (150.0, 230.0, 65280)]")?; + let start = Instant::now(); - Ok(()) + loop { + let elapsed = start.elapsed(); + let time = 60.0 * elapsed.as_millis() as f32 / 1000.0; + + let mut v : Vec<(f32,f32,u32)> = vec![]; + + for i in 0..128 { + let a = (time + i as f32) / 128.0 * std::f32::consts::PI * 2.0; + let r = 1200.0 + (a*5.0).cos() * (500.0 * (time/5.0).cos()); + + let x = a.cos() * r; + let y = a.sin() * r; + let col = if i % 8 < 4 { + 0x000000ff + } else { + 0x00ff0000 + }; + v.push((x,y,col)); + } + // println!("{:?}", v); + let _ = con.set("/pl/0/0", format!("{:?}", v))?; + } + // Ok(()) } fn main() { diff --git a/src/main.rs b/src/main.rs index e52ef28..669642c 100644 --- a/src/main.rs +++ b/src/main.rs @@ -72,9 +72,8 @@ fn run_all() -> LJResult<()> { let frame = get_next_frame(&config, &transformers, &mut rs, order == Order::Black)?; - // For now, draw all the time - tracer.draw(frame, 1000)?; + tracer.draw(frame, 10_000)?; } info!("Exiting, stoping device."); From 015ef9871c15b3d3c4592e17e4294f90710bb765 Mon Sep 17 00:00:00 2001 From: Marc Planard Date: Thu, 8 Jun 2023 22:33:05 +0200 Subject: [PATCH 2/2] add command line --- examples/simple_client.rs | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/examples/simple_client.rs b/examples/simple_client.rs index 3bc42cc..c5fc083 100644 --- a/examples/simple_client.rs +++ b/examples/simple_client.rs @@ -1,3 +1,7 @@ +/// +/// $ cargo run --example simple_client +/// + use redis::{ //RedisResult, Client,