MCPcopy Create free account
hub / github.com/Notgnoshi/generative / main

Function main

tools/point-cloud.rs:105–144  ·  view source on GitHub ↗
()

Source from the content-addressed store, hash-verified

103}
104
105fn main() -> eyre::Result<()> {
106 color_eyre::install()?;
107 let args = CmdlineOptions::parse();
108
109 let filter = tracing_subscriber::EnvFilter::builder()
110 .with_default_directive(args.log_level.into())
111 .from_env_lossy();
112 tracing_subscriber::fmt()
113 .with_env_filter(filter)
114 .with_ansi(true)
115 .with_writer(std::io::stderr)
116 .init();
117
118 let seed = generate_random_seed_if_not_specified(args.seed);
119 let mut rng = StdRng::seed_from_u64(seed);
120
121 let num_points = if args.random_number {
122 // close enough to normal with integers
123 let n = args.points * 2; // changes mean
124 let p = 0.5; // changes skew
125 let dist = Binomial::new(n, p)?;
126 dist.sample(&mut rng)
127 } else {
128 args.points
129 };
130
131 tracing::info!("Generating {num_points} points with seed {seed}");
132
133 let points = generate(num_points as usize, args.domain, &mut rng);
134 let mut writer = get_output_writer(&args.output)?;
135 for point in points {
136 writeln!(
137 writer,
138 "POINT ({} {})",
139 point.x * args.scale,
140 point.y * args.scale
141 )?;
142 }
143 Ok(())
144}

Callers

nothing calls this directly

Calls 3

generateFunction · 0.85
get_output_writerFunction · 0.85

Tested by

no test coverage detected