#include "gsl/gsl_rng.h"
#include "slap.h"
Go to the source code of this file.
Classes | |
struct | pmap_nbor_t |
Structure for neighborhood lookup table. More... | |
struct | pmap_scan_t |
Structure storing a single range scan. More... | |
struct | pmap_sample_t |
Structure describing a single sample. More... | |
struct | pmap_t |
Structure describing the map. More... | |
Defines | |
#define | PMAP_MAX_RANGES 401 |
Limits. | |
#define | PMAP_GET_SAMPLE(self, i) (self->samples + self->sample_set * self->samples_len + (i)) |
Sample access macros. | |
#define | PMAP_GRIDX(self, x) ((int) floor((x) / self->grid_res) + self->grid_sx / 2) |
Grid access macros. | |
Functions | |
pmap_t * | pmap_alloc (int num_ranges, double range_max, double range_start, double range_step, int samples_len, double grid_width, double grid_height, double grid_scale) |
Allocate object. | |
void | pmap_free (pmap_t *self) |
Free object. | |
void | pmap_init_nbors (pmap_t *self) |
Create neighborhood LUT. | |
void | pmap_set_pose (pmap_t *self, pose2_t pose) |
Set the initial robot pose. This must be called before the first call to pmap_update(). | |
void | pmap_update (pmap_t *self, double dtime, pose2_t odom_pose, int num_ranges, double *ranges) |
Update map. | |
void | pmap_apply_action (pmap_t *self, pose2_t delta) |
Apply the action model to the current sample set. | |
void | pmap_add_scan (pmap_t *self, double dtime, double *ranges) |
Add a scan to list. | |
void | pmap_add_scan_sample (pmap_t *self, int sample_index, double *ranges) |
void | pmap_apply_sensor (pmap_t *self, double *ranges) |
Apply sensor model to the current sample set. | |
void | pmap_apply_sensor_sample (pmap_t *self, int sample_index, double *ranges) |
Apply sensor model to a particular sample. | |
double | pmap_entropy (pmap_t *self, int scan_count) |
Compute entropy. | |
void | pmap_resample (pmap_t *self, int scan_count) |
Resample. | |
void | pmap_draw_scan (pmap_t *self, double *ranges) |
Draw the current range scan. | |
void | pmap_draw_samples (pmap_t *self) |
Draw all samples. | |
void | pmap_draw_sample (pmap_t *self, int sample_index) |
Draw a particular sample. | |
void | pmap_draw_map (pmap_t *self, double scale) |
Draw the current best map. | |
void | pmap_draw_sample_map (pmap_t *self, double scale, int sample_index) |
Draw a particular sample map. |
|
Allocate object.
|
|
Create neighborhood LUT.
For internal use only.
|
|
Apply the action model to the current sample set.
For internal use only.
|
|
Add a scan to list.
For internal use only.
|
|
Add a scan to a particular sample For internal use only.
|
|
Apply sensor model to the current sample set.
For internal use only.
|
|
Apply sensor model to a particular sample.
For internal use only.
|
|
Compute entropy.
For internal use only.
|
|
Resample.
For internal use only.
|
|
Draw the current best map.
|
|
Draw a particular sample map.
|