1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34
use crate::{read_dict, read_int}; #[derive(Default, Debug)] pub struct Camera { name: String, dist: f32, rot: [[f32; 4]; 4], offset: i32, ortho: bool, } impl Camera { pub fn new(bytes: &mut Vec<u8>) -> Self { let length = read_int(bytes); let _dict = read_dict(bytes, length); // TODO: Research on how to parse byte array to float, float array, bool, etc // let name = get_value_string(&dict, "name"); // let dist = get_value_f32(&dict, "dist"); // let rot = get_value(&dict, "rot"); // let offset = get_value_i32(&dict, "ofs"); // let ortho = get_value_bool(&dict, "ortho"); // // Camera { // name, // dist, // rot, // offset, // ortho, // } Default::default() } }