Libosmium
2.22.0
Fast and flexible C++ library for working with OpenStreetMap data
|
#include <problem_reporter_ogr.hpp>
Private Member Functions | |
void | set_object (gdalcpp::Feature &feature) |
void | write_point (const char *problem_type, osmium::object_id_type id1, osmium::object_id_type id2, osmium::Location location) |
void | write_line (const char *problem_type, osmium::object_id_type id1, osmium::object_id_type id2, osmium::Location loc1, osmium::Location loc2) |
Private Attributes | |
osmium::geom::OGRFactory | m_ogr_factory |
gdalcpp::Layer | m_layer_perror |
gdalcpp::Layer | m_layer_lerror |
gdalcpp::Layer | m_layer_ways |
Additional Inherited Members | |
![]() | |
osmium::item_type | m_object_type = osmium::item_type::undefined |
osmium::object_id_type | m_object_id = 0 |
size_t | m_nodes = 0 |
Report problems when assembling areas by adding them to layers in an OGR datasource.
|
inlineexplicit |
|
inlineoverridevirtual |
Report a duplicate node, ie. two nodes with the same location.
node_id1 | ID of the first node. |
node_id2 | ID of the second node. |
location | Location of both nodes. |
Reimplemented from osmium::area::ProblemReporter.
|
inlineoverridevirtual |
Report a duplicate segments. Two or more segments are directly on top of each other. This can be a problem, if there is a spike for instance, or it could be okay, if there are touching inner rings.
Reimplemented from osmium::area::ProblemReporter.
|
inlineoverridevirtual |
Report a way that is more than once in a relation.
way | The way |
Reimplemented from osmium::area::ProblemReporter.
|
inlineoverridevirtual |
Report a way with role inner that has the same tags as the relation or outer ways.
way | The way. |
Reimplemented from osmium::area::ProblemReporter.
|
inlineoverridevirtual |
Report an intersection between two segments.
way1_id | ID of the first involved way. |
way1_seg_start | Location where the segment of the first way with the intersection starts |
way1_seg_end | Location where the segment of the first way with the intersection ends |
way2_id | ID of the second involved way. |
way2_seg_start | Location where the segment of the second way with the intersection starts |
way2_seg_end | Location where the segment of the second way with the intersection ends |
intersection | Location of the intersection. This might be slightly off the correct location due to rounding. |
Reimplemented from osmium::area::ProblemReporter.
|
inlineoverridevirtual |
Report a duplicate segments. Two or more segments are directly on top of each other. This can be a problem, if there is a spike for instance, or it could be okay, if there are touching inner rings.
Reimplemented from osmium::area::ProblemReporter.
|
inlineoverridevirtual |
Report an open ring.
nr | NodeRef of one end of the ring. |
way | Optional pointer to way the end node is in. |
Reimplemented from osmium::area::ProblemReporter.
|
inlineoverridevirtual |
Report a segment that should have role "inner", but has a different role.
way_id | ID of the way this segment is in. |
seg_start | Start of the segment with the wrong role. |
seg_end | End of the segment with the wrong role. |
Reimplemented from osmium::area::ProblemReporter.
|
inlineoverridevirtual |
Report a segment that should have role "outer", but has a different role.
way_id | ID of the way this segment is in. |
seg_start | Start of the segment with the wrong role. |
seg_end | End of the segment with the wrong role. |
Reimplemented from osmium::area::ProblemReporter.
|
inlineoverridevirtual |
Report a node/location where rings touch. This is often wrong, but not necessarily so.
node_id | ID of the node. |
location | Location of the node. |
Reimplemented from osmium::area::ProblemReporter.
|
inlineoverridevirtual |
In addition to reporting specific problems, this is used to report all ways belonging to areas having problems.
way | The way |
Reimplemented from osmium::area::ProblemReporter.
|
inlineoverridevirtual |
Report a way that is in multiple rings.
way | The way. |
Reimplemented from osmium::area::ProblemReporter.
|
inlineprivate |
|
inlineprivate |
|
inlineprivate |
|
private |
|
private |
|
private |
|
private |