@@ -11,8 +11,9 @@ move_base_flex:
1111 planners : ['mesh_planner']
1212 mesh_planner :
1313 type : ' cvp_mesh_planner/CVPMeshPlanner'
14- cost_limit : 0.95
14+ cost_limit : 2.0 # inscribed radius has inf values. so they will be avoided independent on how we select this value
1515 publish_vector_field : true
16+
1617 planner_patience : 10.0
1718 planner_max_retries : 2
1819 project_path_onto_mesh : false
@@ -31,39 +32,58 @@ move_base_flex:
3132
3233 mesh_map :
3334 # input
34- # mesh_file: '/home/amock/mesh_nav_ws/src/mesh_navigation_tutorials/mesh_navigation_tutorials/maps/parking_garage.ply'
35+ # In this examples, `mesh_file` is set dynamically from the launch file.
36+ # you can also set it statically:
37+ # mesh_file: '.../parking_garage.ply'
3538 mesh_part : ' /'
3639 # storage
3740 # mesh_working_file: 'parking_garage.h5'
3841 mesh_working_part : ' mesh'
3942
4043 # half-edge-mesh implementation
41- hem : pmp # pmp (default), lvr
44+ # pmp (default), lvr
45+ hem : pmp
4246
47+ # compute each layer's vertex costs in the following order
4348 layers : ['border', 'height_diff', 'roughness', 'inflation']
49+ # After computing the layers, a final combined vertex cost is determined by linearly combine all layers' vertex costs:
50+ # -> vertex_cost = layer1.combination_weight * layer1.vertex_cost + layer2.combination_weight * layer2.vertex_cost + ...
51+ # The lethal vertices are accumulated in a set along the layer list
4452
4553 height_diff :
4654 type : ' mesh_layers/HeightDiffLayer'
47- factor : 1 .0
55+ combination_weight : 0 .0
4856 threshold : 0.8
4957
5058 border :
5159 type : ' mesh_layers/BorderLayer'
52- factor : 1 .0
60+ combination_weight : 0 .0
5361 border_cost : 1.0
5462 threshold : 0.2
5563
5664 roughness :
5765 type : ' mesh_layers/RoughnessLayer'
58- factor : 1 .0
66+ combination_weight : 0 .0
5967 threshold : 0.8
6068
6169 inflation :
6270 type : ' mesh_layers/InflationLayer'
63- factor : 1.0
64- inflation_radius : 1.0 # outer ring
65- inscribed_radius : 0.5 # inner ring
71+ combination_weight : 1.0
72+ inflation_radius : 1.5 # outer ring
73+ inscribed_radius : 0.4 # inner ring
6674 lethal_value : 1.0 # is also inscribed value
6775 inscribed_value : 1.0
6876 repulsive_field : false
6977 cost_scaling_factor : 2.0
78+
79+ # An edge cost equals the total costs that are collected along a
80+ # triangle's edge by linearly interpolating the combined vertex costs
81+ # This factor defines the factor that is used for the final edge weight
82+ # -> edge_weight = edge_length + edge_cost_factor * edge_cost
83+ # This edge_weight is then passed to the global planner to search for
84+ # the best path
85+ # Note: Set this to 0.0 if you need the shortest path
86+ edge_cost_factor : 5.0
87+
88+ # debug function: enable this, for publishing text markers with edge costs
89+ publish_edge_weights_text : false
0 commit comments