PathGenerator

Trait PathGenerator 

Source
pub trait PathGenerator {
    // Required methods
    fn generate_paths(
        &self,
        from_position: (usize, usize),
    ) -> Vec<(usize, usize)>;
    fn calculate_heuristic_cost(
        &self,
        position: (usize, usize),
        target: (Option<usize>, Option<usize>),
    ) -> usize;
    fn calculate_cost(
        &self,
        current_position: (usize, usize),
        next_position: (usize, usize),
    ) -> usize;
}

Required Methods§

Source

fn generate_paths(&self, from_position: (usize, usize)) -> Vec<(usize, usize)>

Source

fn calculate_heuristic_cost( &self, position: (usize, usize), target: (Option<usize>, Option<usize>), ) -> usize

Source

fn calculate_cost( &self, current_position: (usize, usize), next_position: (usize, usize), ) -> usize

Implementors§