1use crate::graph::Edge;
2
3#[derive(Clone)]
4pub struct Node {
5 pub id: usize,
6 pub edges: Vec<Edge>,
7}
8
9impl Node {
10 pub fn from(id: usize, edges: Vec<Edge>) -> Node {
11 return Node {
12 id,
13 edges
14 };
15 }
16}
17
18pub struct Position {
19 pub x: f32,
20 pub y: f32,
21 pub z: f32,
22}
23
24impl Position {
25 pub fn zeroed() -> Position {
26 return Position {
27 x: 0.0,
28 y: 0.0,
29 z: 0.0,
30 };
31 }
32
33 pub fn from(x: f32, y: f32, z: f32) -> Position {
34 return Position {
35 x,
36 y,
37 z,
38 };
39 }
40}