Rename the Element structure to Sphere

This makes way for an `Element` trait. Some `Sphere` variables, like the
arguments of the sphere insertion methods, have been renamed to show
that they refer specifically to spheres. Others, like the argument of
`ElementOutlineItem`, have kept their general names, because I expect
them to become `Element` trait objects.
This commit is contained in:
Aaron Fenyes 2025-04-23 01:01:59 -07:00
parent 68abc2ad44
commit a1e23543cb
4 changed files with 41 additions and 41 deletions

View file

@ -4,7 +4,7 @@ use web_sys::{console, wasm_bindgen::JsValue};
use crate::{
engine,
AppState,
assembly::{Assembly, Element, InversiveDistanceRegulator}
assembly::{Assembly, InversiveDistanceRegulator, Sphere}
};
/* DEBUG */
@ -12,7 +12,7 @@ use crate::{
// built a more formal test assembly system
fn load_gen_assemb(assembly: &Assembly) {
let _ = assembly.try_insert_sphere(
Element::new(
Sphere::new(
String::from("gemini_a"),
String::from("Castor"),
[1.00_f32, 0.25_f32, 0.00_f32],
@ -20,7 +20,7 @@ fn load_gen_assemb(assembly: &Assembly) {
)
);
let _ = assembly.try_insert_sphere(
Element::new(
Sphere::new(
String::from("gemini_b"),
String::from("Pollux"),
[0.00_f32, 0.25_f32, 1.00_f32],
@ -28,7 +28,7 @@ fn load_gen_assemb(assembly: &Assembly) {
)
);
let _ = assembly.try_insert_sphere(
Element::new(
Sphere::new(
String::from("ursa_major"),
String::from("Ursa major"),
[0.25_f32, 0.00_f32, 1.00_f32],
@ -36,7 +36,7 @@ fn load_gen_assemb(assembly: &Assembly) {
)
);
let _ = assembly.try_insert_sphere(
Element::new(
Sphere::new(
String::from("ursa_minor"),
String::from("Ursa minor"),
[0.25_f32, 1.00_f32, 0.00_f32],
@ -44,7 +44,7 @@ fn load_gen_assemb(assembly: &Assembly) {
)
);
let _ = assembly.try_insert_sphere(
Element::new(
Sphere::new(
String::from("moon_deimos"),
String::from("Deimos"),
[0.75_f32, 0.75_f32, 0.00_f32],
@ -52,7 +52,7 @@ fn load_gen_assemb(assembly: &Assembly) {
)
);
let _ = assembly.try_insert_sphere(
Element::new(
Sphere::new(
String::from("moon_phobos"),
String::from("Phobos"),
[0.00_f32, 0.75_f32, 0.50_f32],
@ -67,7 +67,7 @@ fn load_gen_assemb(assembly: &Assembly) {
fn load_low_curv_assemb(assembly: &Assembly) {
let a = 0.75_f64.sqrt();
let _ = assembly.try_insert_sphere(
Element::new(
Sphere::new(
"central".to_string(),
"Central".to_string(),
[0.75_f32, 0.75_f32, 0.75_f32],
@ -75,7 +75,7 @@ fn load_low_curv_assemb(assembly: &Assembly) {
)
);
let _ = assembly.try_insert_sphere(
Element::new(
Sphere::new(
"assemb_plane".to_string(),
"Assembly plane".to_string(),
[0.75_f32, 0.75_f32, 0.75_f32],
@ -83,7 +83,7 @@ fn load_low_curv_assemb(assembly: &Assembly) {
)
);
let _ = assembly.try_insert_sphere(
Element::new(
Sphere::new(
"side1".to_string(),
"Side 1".to_string(),
[1.00_f32, 0.00_f32, 0.25_f32],
@ -91,7 +91,7 @@ fn load_low_curv_assemb(assembly: &Assembly) {
)
);
let _ = assembly.try_insert_sphere(
Element::new(
Sphere::new(
"side2".to_string(),
"Side 2".to_string(),
[0.25_f32, 1.00_f32, 0.00_f32],
@ -99,7 +99,7 @@ fn load_low_curv_assemb(assembly: &Assembly) {
)
);
let _ = assembly.try_insert_sphere(
Element::new(
Sphere::new(
"side3".to_string(),
"Side 3".to_string(),
[0.00_f32, 0.25_f32, 1.00_f32],
@ -107,7 +107,7 @@ fn load_low_curv_assemb(assembly: &Assembly) {
)
);
let _ = assembly.try_insert_sphere(
Element::new(
Sphere::new(
"corner1".to_string(),
"Corner 1".to_string(),
[0.75_f32, 0.75_f32, 0.75_f32],
@ -115,7 +115,7 @@ fn load_low_curv_assemb(assembly: &Assembly) {
)
);
let _ = assembly.try_insert_sphere(
Element::new(
Sphere::new(
"corner2".to_string(),
"Corner 2".to_string(),
[0.75_f32, 0.75_f32, 0.75_f32],
@ -123,7 +123,7 @@ fn load_low_curv_assemb(assembly: &Assembly) {
)
);
let _ = assembly.try_insert_sphere(
Element::new(
Sphere::new(
String::from("corner3"),
String::from("Corner 3"),
[0.75_f32, 0.75_f32, 0.75_f32],