SYMBOL INDEX (56 symbols across 4 files) FILE: src/main.rs constant VIEWPORT_FOV (line 18) | const VIEWPORT_FOV: f32 = 1.7; constant VIEWPORT_DISTANCE (line 19) | const VIEWPORT_DISTANCE: f32 = 0.1; constant TARGET_DURATION_PER_FRAME (line 20) | const TARGET_DURATION_PER_FRAME: Duration = Duration::from_millis(1000 /... constant MOUSE_SPEED_MULTIPLIER (line 21) | const MOUSE_SPEED_MULTIPLIER: f32 = 30.; constant INITIAL_DISTANCE_MULTIPLIER (line 22) | const INITIAL_DISTANCE_MULTIPLIER: f32 = 1.5; constant SCROLL_MULTIPLER (line 23) | const SCROLL_MULTIPLER: f32 = 0.03; constant PAN_MULTIPLIER (line 24) | const PAN_MULTIPLIER: f32 = 0.1; constant HELP_MSG (line 25) | const HELP_MSG: &str = "\ function graceful_close (line 43) | fn graceful_close() -> ! { function error_close (line 54) | fn error_close(msg: &dyn fmt::Display) -> ! { function main (line 62) | fn main() { FILE: src/model.rs type ObjParseError (line 6) | struct ObjParseError; method new (line 9) | fn new() -> ObjParseError {ObjParseError} method fmt (line 13) | fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result { method description (line 19) | fn description(&self) -> &str { type Model (line 25) | pub struct Model { method new (line 37) | pub fn new( method new_cube (line 50) | pub fn new_cube( method new_obj (line 91) | pub fn new_obj(path: &str, position: three::Point) -> Result three::Point { method world_bounds (line 239) | pub fn world_bounds(&self) -> (three::Point, three::Point) { FILE: src/screen.rs constant DEFAULT_TERMINAL_DIMENSIONS (line 9) | const DEFAULT_TERMINAL_DIMENSIONS: (u16, u16) = (80, 24); type Dim (line 12) | pub trait Dim { constant WIDTH (line 13) | const WIDTH: usize; constant HEIGHT (line 14) | const HEIGHT: usize; constant WIDTH (line 18) | const WIDTH: usize = WIDTH; constant HEIGHT (line 19) | const HEIGHT: usize = HEIGHT; type Pixel (line 23) | pub trait Pixel: Dim + ops::IndexMut + Clone { method new (line 24) | fn new() -> Self; method to_char (line 25) | fn to_char(&self) -> char; method new (line 31) | fn new() -> BlockPixel { [[false; BlockPixel::WIDTH]; BlockPixel::HEIG... method to_char (line 32) | fn to_char(&self) -> char { method new (line 56) | fn new() -> BrailePixel { [[false; BrailePixel::WIDTH]; BrailePixel::H... method to_char (line 57) | fn to_char(&self) -> char { type BlockPixel (line 29) | pub type BlockPixel = [[bool; 2]; 2]; type BrailePixel (line 54) | pub type BrailePixel = [[bool; 2]; 4]; type Point (line 78) | pub struct Point { method new (line 85) | pub fn new(x: i32, y: i32) -> Point { type Screen (line 91) | pub struct Screen { method new (line 99) | pub fn new() -> Screen { method fit_to_terminal (line 116) | pub fn fit_to_terminal(&mut self) { method write (line 130) | pub fn write(&mut self, val: bool, point: &Point) { method clear (line 139) | pub fn clear(&mut self) { method resize (line 146) | pub fn resize(&mut self, width: u16, height: u16) { method line (line 173) | pub fn line(&mut self, start: &Point, end: &Point) { method render (line 202) | pub fn render(&self) { FILE: src/three.rs type Point (line 5) | pub struct Point { method new (line 13) | pub fn new(x: f32, y: f32, z: f32) -> Point { type Camera (line 18) | pub struct Camera { method new (line 42) | pub fn new( method world_to_camera (line 56) | fn world_to_camera(&self, point: &Point) -> Point { method camera_to_screen (line 85) | fn camera_to_screen(&self, point: &Point) -> screen::Point { method plot_model_points (line 103) | pub fn plot_model_points(&mut self, model: &model::Model) { method plot_model_edges (line 110) | pub fn plot_model_edges(&mut self, model: &model::Model) { method write (line 120) | pub fn write(&mut self, val: bool, point: &Point) { method edge (line 128) | pub fn edge(&mut self, start: &Point, end: &Point) {