#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.
|
1.3.8