simplify code by using new phantom node ctor
This commit is contained in:
		
							parent
							
								
									86d3556c6d
								
							
						
					
					
						commit
						e5f12347bd
					
				| @ -656,8 +656,9 @@ class StaticRTree | ||||
|         unsigned number_of_elements_from_big_cc = 0; | ||||
|         unsigned number_of_elements_from_tiny_cc = 0; | ||||
| 
 | ||||
| #ifdef NDEBUG | ||||
|         unsigned pruned_elements = 0; | ||||
| 
 | ||||
| #endif | ||||
|         std::pair<double, double> projected_coordinate = { | ||||
|             mercator::lat2y(input_coordinate.lat / COORDINATE_PRECISION), | ||||
|             input_coordinate.lon / COORDINATE_PRECISION}; | ||||
| @ -701,10 +702,12 @@ class StaticRTree | ||||
|                             pruning_bound.insert(current_perpendicular_distance); | ||||
|                             traversal_queue.emplace(current_perpendicular_distance, current_edge); | ||||
|                         } | ||||
| #ifdef NDEBUG | ||||
|                         else | ||||
|                         { | ||||
|                             ++pruned_elements; | ||||
|                         } | ||||
| #endif | ||||
|                     } | ||||
|                 } | ||||
|                 else | ||||
| @ -749,14 +752,8 @@ class StaticRTree | ||||
|                     projected_coordinate, foot_point_coordinate_on_segment, current_ratio); | ||||
| 
 | ||||
|                 // store phantom node in result vector
 | ||||
|                 result_phantom_node_vector.emplace_back( | ||||
|                     current_segment.forward_edge_based_node_id, | ||||
|                     current_segment.reverse_edge_based_node_id, current_segment.name_id, | ||||
|                     current_segment.forward_weight, current_segment.reverse_weight, | ||||
|                     current_segment.forward_offset, current_segment.reverse_offset, | ||||
|                     current_segment.packed_geometry_id, current_segment.component_id, | ||||
|                     foot_point_coordinate_on_segment, current_segment.fwd_segment_position, | ||||
|                     current_segment.forward_travel_mode, current_segment.backward_travel_mode); | ||||
|                 result_phantom_node_vector.emplace_back(current_segment, | ||||
|                                                         foot_point_coordinate_on_segment); | ||||
| 
 | ||||
|                 // Hack to fix rounding errors and wandering via nodes.
 | ||||
|                 FixUpRoundingIssue(input_coordinate, result_phantom_node_vector.back()); | ||||
| @ -784,6 +781,7 @@ class StaticRTree | ||||
|                 traversal_queue = std::priority_queue<IncrementalQueryCandidate>{}; | ||||
|             } | ||||
|         } | ||||
| #ifdef NDEBUG | ||||
| // SimpleLogger().Write() << "result_phantom_node_vector.size(): " <<
 | ||||
| // result_phantom_node_vector.size();
 | ||||
| // SimpleLogger().Write() << "max_number_of_phantom_nodes: " << max_number_of_phantom_nodes;
 | ||||
| @ -794,7 +792,7 @@ class StaticRTree | ||||
| // SimpleLogger().Write() << "inspected_elements: " << inspected_elements;
 | ||||
| // SimpleLogger().Write() << "max_checked_elements: " << max_checked_elements;
 | ||||
| // SimpleLogger().Write() << "pruned_elements: " << pruned_elements;
 | ||||
| 
 | ||||
| #endif | ||||
|         return !result_phantom_node_vector.empty(); | ||||
|     } | ||||
| 
 | ||||
| @ -915,13 +913,9 @@ class StaticRTree | ||||
|                     !osrm::epsilon_compare(current_perpendicular_distance, current_min_dist)) | ||||
|                 { | ||||
|                     // store phantom node in result vector
 | ||||
|                     result_phantom_node_vector.emplace_back( | ||||
|                         current_segment.forward_edge_based_node_id, | ||||
|                         current_segment.reverse_edge_based_node_id, current_segment.name_id, | ||||
|                         current_segment.forward_weight, current_segment.reverse_weight, | ||||
|                         current_segment.forward_offset, current_segment.reverse_offset, | ||||
|                         current_segment.packed_geometry_id, foot_point_coordinate_on_segment, | ||||
|                         current_segment.fwd_segment_position, current_perpendicular_distance); | ||||
|                     result_phantom_node_vector.emplace_back(current_segment, | ||||
|                                                             foot_point_coordinate_on_segment, | ||||
|                                                             current_perpendicular_distance); | ||||
| 
 | ||||
|                     // Hack to fix rounding errors and wandering via nodes.
 | ||||
|                     FixUpRoundingIssue(input_coordinate, result_phantom_node_vector.back()); | ||||
|  | ||||
		Loading…
	
		Reference in New Issue
	
	Block a user