Skip to content

Commit

Permalink
add rerun textlog
Browse files Browse the repository at this point in the history
  • Loading branch information
makeecat committed Nov 4, 2024
1 parent 873d140 commit b944302
Show file tree
Hide file tree
Showing 4 changed files with 28 additions and 12 deletions.
2 changes: 1 addition & 1 deletion Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -35,6 +35,6 @@ thiserror = "1.0.63"
serde = { version = "1.0.209", features = ["derive"] }
serde_yaml = "0.9.34"
env_logger = "0.11.5"
log = "0.4.22"
#log = "0.4.22" # use rerun::external::log
rayon = "1.10.0"
rand_chacha = "0.3.1"
Binary file modified config/peng_default_blueprint.rbl
Binary file not shown.
1 change: 1 addition & 0 deletions src/lib.rs
Original file line number Diff line number Diff line change
Expand Up @@ -22,6 +22,7 @@ pub mod config;
use nalgebra::{Matrix3, Quaternion, Rotation3, SMatrix, UnitQuaternion, Vector3};
use rand_chacha::ChaCha8Rng;
use rand_distr::{Distribution, Normal};
use rerun::external::log;
use std::f32::consts::PI;
#[derive(thiserror::Error, Debug)]
/// Represents errors that can occur during simulation
Expand Down
37 changes: 26 additions & 11 deletions src/main.rs
Original file line number Diff line number Diff line change
@@ -1,20 +1,28 @@
use nalgebra::Vector3;
use peng_quad::*;
use rerun::external::log;
/// Main function for the simulation
fn main() -> Result<(), SimulationError> {
env_logger::builder()
.parse_env(env_logger::Env::default().default_filter_or("info"))
.init();
let mut config_str = "config/quad.yaml";
let args: Vec<String> = std::env::args().collect();
if args.len() != 2 {
log::warn!("Usage: {} <config.yaml>.", args[0]);
log::warn!("Loading default configuration: config/quad.yaml");
println!(
"[\x1b[33mWARN\x1b[0m peng_quad] Usage: {} <config.yaml>.",
args[0]
);
println!("[\x1b[33mWARN\x1b[0m peng_quad] Loading default configuration: config/quad.yaml");
} else {
log::info!("Loading configuration: {}", args[1]);
println!(
"[\x1b[32mINFO\x1b[0m peng_quad] Loading configuration: {}",
args[1]
);
config_str = &args[1];
}
let config = config::Config::from_yaml(config_str).expect("Failed to load configuration.");
println!(
"[\x1b[32mINFO\x1b[0m peng_quad]Use rerun.io: {}",
config.use_rerun
);
let mut quad = Quadrotor::new(
1.0 / config.simulation.simulation_frequency as f32,
config.quadrotor.mass,
Expand Down Expand Up @@ -65,17 +73,23 @@ fn main() -> Result<(), SimulationError> {
params: step.params.clone(),
})
.collect();
log::info!("Use rerun.io: {}", config.use_rerun);
let rec = if config.use_rerun {
rerun::spawn(&rerun::SpawnOptions::default())?;
Some(rerun::RecordingStreamBuilder::new("Peng").connect()?)
let _rec = rerun::RecordingStreamBuilder::new("Peng").spawn()?;
rerun::Logger::new(_rec.clone())
.with_path_prefix("logs")
.with_filter(rerun::default_log_filter())
.init()
.unwrap();
Some(_rec)
} else {
env_logger::builder()
.parse_env(env_logger::Env::default().default_filter_or("info"))
.init();
None
};
log::info!("Use rerun.io: {}", config.use_rerun);
if let Some(rec) = &rec {
rec.log_file_from_path(config.rerun_blueprint, None, false)?;
}
if let Some(rec) = &rec {
rec.set_time_seconds("timestamp", 0);
log_mesh(rec, config.mesh.division, config.mesh.spacing)?;
log_maze_tube(rec, &maze)?;
Expand Down Expand Up @@ -181,5 +195,6 @@ fn main() -> Result<(), SimulationError> {
break;
}
}
log::logger().flush();
Ok(())
}

0 comments on commit b944302

Please sign in to comment.