emarf_path_json/
pathjson_impl.rs

1use crate::pathjson::{Bin, Material, Pathjson, Plugin};
2
3impl Pathjson {
4    pub fn new() -> Pathjson {
5        Self::default()
6    }
7}
8
9impl Default for Pathjson {
10    fn default() -> Self {
11        Self {
12            plugin: Plugin {version: "".to_string(), platform: "".to_string()},
13            bins: vec![Bin {width: 1820.0, depth: 910.0}],
14            cost: None,
15            cut_sheet: None,
16            finish: None,
17            material: Material::default(),
18            mill: None,
19            nest_bbox: None,
20            nesting: None,
21            paint: None,
22            paths: Vec::new(),
23            screw: None,
24            screws: None,
25            tab: None,
26            thickness: 24.0,
27        }
28    }
29}
30
31impl Default for Material {
32    fn default() -> Self {
33        Self {
34            allowance: None,
35            jog_speed: None,
36            mill_ara: None,
37            mill_shiage: None,
38            path_height: None,
39            pocket_step: None,
40            price: None,
41            rotation_speed: None,
42            rotation_speed_3_d: None,
43            tab: None,
44            v_bit_path_height: None,
45            xy_speed: None,
46            z_speed: None,
47        }
48    }
49}