1
0
Fork 0

fix for ogr-decode --line-width-column option.

When combined with the --line-width option, if the field is present, but has
no value, gdal returns 0.  Use the value from --line-width in this case.
This commit is contained in:
Peter Sadrozinski 2012-09-22 08:47:20 -04:00 committed by Christian Schmitt
parent cd0ee283c0
commit 55bfcd80e7

View file

@ -444,6 +444,9 @@ void processLayer(OGRLayer* poLayer,
int width=point_width;
if (point_width_field!=-1) {
width=poFeature->GetFieldAsInteger(point_width_field);
if (width == 0) {
width=point_width;
}
}
processPoint((OGRPoint*)poGeometry,work_dir,area_type_name,width);
break;
@ -453,6 +456,9 @@ void processLayer(OGRLayer* poLayer,
int width=point_width;
if (point_width_field!=-1) {
width=poFeature->GetFieldAsInteger(point_width_field);
if (width == 0) {
width=point_width;
}
}
OGRMultiPoint* multipt=(OGRMultiPoint*)poGeometry;
for (int i=0;i<multipt->getNumGeometries();i++) {
@ -465,7 +471,11 @@ void processLayer(OGRLayer* poLayer,
int width=line_width;
if (line_width_field!=-1) {
width=poFeature->GetFieldAsInteger(line_width_field);
if (width == 0) {
width=line_width;
}
}
if (texture_lines) {
processLineStringWithTextureInfo((OGRLineString*)poGeometry,work_dir,area_type_name,width);
} else if (seperate_segments) {
@ -480,7 +490,11 @@ void processLayer(OGRLayer* poLayer,
int width=line_width;
if (line_width_field!=-1) {
width=poFeature->GetFieldAsInteger(line_width_field);
if (width == 0) {
width=line_width;
}
}
OGRMultiLineString* multils=(OGRMultiLineString*)poGeometry;
for (int i=0;i<multils->getNumGeometries();i++) {
if (texture_lines) {